[techaday:0005] 小型ロボットに使いやすい表面実装ブザー

[techaday:0005] 小型ロボットに使いやすい表面実装ブザー

1粒400円((((;゚Д゚))))

はじめに

ロボットの基板にLEDを載せてデバッグ出力をするというのは多くの方が実施されているかと思います. もう1つの方法として,音が最も使いやすい出力方法だと思います.今回はそれに使える電子部品の紹介です.

Read More

Share Comments

[techaday:0004] Fresnel積分と緩和曲線

[techaday:0004] Fresnel積分と緩和曲線

アメリカのテキサス州ダラスにあるHigh-Fiveというインターチェンジ

はじめに

突然ですが,**「高速道路のインターチェンジや線路のカーブを作ってください」**と言われたとするとあなたならどうしますか? ほとんどの人は,まず一番オーソドックスな円弧を考えると思います. しかし,少しだけ考えてみてください.直線と円弧のつなぎ目は連続で1階微分可能でこそあれ,微分した結果は不連続になり,2階微分は不可能ですね. これはつまり,カーブに差し掛かった時に急ハンドルを切らなければならないということに相当します.このままではあなたが設計した道路は事故多発地点になってしまいます. それでは一体どのようにカーブを作ればよいのでしょうか?というのが今日の話題です.

前提知識

  • 微積分の計算ができる
  • 高校物理の力学がわかる

効能

  • 車両ロボットなどの軌道・経路計画をする際に慎重になる
  • 数学がちょっと役立てられている場面を知ることができる

Read More

Share Comments

[techaday:0003] latexmkで楽々LaTeXコンパイル

[techaday:0003] latexmkで楽々LaTeXコンパイル

はじめに

第3回です.皆さんは文書を書くときに何を使っていますか? Wordを使っているという方は今すぐお帰りください.何も得する情報はありません. LaTeX を使っているという方,素晴らしいですね.ぜひお友達になりましょう.どうやってコンパイルしていますか? … コマンド平打ち?シェルスクリプト?Makefile? それってとてもめんどくさいですよね.毎回やることは決まってるわけですし,保存してプレビューするたびに make とか打つのはナンセンスです. かといって,私みたいに慣れたテキストエディタがある場合は,わざわざTeXだけのために専用の執筆環境をインストールして使うのもまどろっこしいです.

というわけで,TeXのコンパイルに関わる処理をよしなにやってくれる latexmk という便利なコマンドラインツールがあるのでご紹介します. ついでに,プレビュー時のコンパイル時間を短縮するためのコツについても書きます.

前提知識

  • シェルが最低限使える
  • TeX が書ける
  • TeX のコンパイルってめんどくさいなーと思ったことがある

効能

  • ちょっとだけ時間の節約になる
  • 頻繁にプレビューするときのコツがわかる

Read More

Share Comments

[techaday:0002] C言語での構造体とアライメントについて

[techaday:0002] C言語での構造体とアライメントについて

はじめに

「1日1技シリーズ」第2回は,構造体とアライメントについてです. 構造体は複数のデータをひとまとめにして扱えるため,みなさんも様々なプログラムで多用しているかと思います. また,マイコンプログラミングではメモリが数kB〜数十kBと制約がシビアになるため,1bitで済むフラグや値が小さいことがわかっている変数を,構造体の拡張機能であるビットフィールドを使って複数固めて使用することがあります. しかし,使い方によってはかえってメモリを食いつぶしてしまう場合があります.今回はそれと回避方法について書いていきます. この手の話について大変詳しく知っているわけではないので誤りが含まれているかもしれません.その場合は躊躇なさらずご指摘ください.

前提知識

  • C言語の構造体・共用体が使える

効能

  • ビットフィールドや構造体を使うときに気をつけるようになる
  • どうしても使いたい時の容量節約方法が分かる

Read More

Share Comments

[techaday:0001] C言語での符号とビットシフトについて

[techaday:0001] C言語での符号とビットシフトについて

はじめに

「1日1技シリーズ(別名techadayも併用することにします)」記念すべき第1回は,整数型の符号とビットシフトに関する話題です. ビット演算は特にマイコンプログラミング等において,IOを使用するためだけでなく高速化やメモリ節約のためにも頻繁に使用されます. 今回と次回はそんなビット演算について,知らないとハマりやすいポイントについて書いていきます.

前提知識

  • C言語の基礎的文法がわかる
  • ビット演算についてイメージできる

効能

  • signed な整数型変数と unsigned な整数型変数でのビットシフトの処理の違いがわかる
  • 異なる処理をわざわざ行う理由が分かる
  • unsigned char と書くべきところをうっかり char と書いて闇に落ちてしまうのを防止できるようになる

Read More

Share Comments