中野島ロボット

小さなロボットの自作記事を書いています。

週刊中ロボ27 GR-LYCHEE ソフトウェア製造(その1)

はじめに

今週からGR-LYCHEEコンテストのソフトウェアを製造しています。

f:id:nakarobo:20181019072554j:plain

プログラムの製造といっても、何か手を動かして切ったり貼ったりして作る訳ではありません。パソコンの画面で開発ツールあるいは、ノートパットを開いてコードをコピペしたり、修正したりするだけです。特にArduino IDEの場合は、サンプルコードを探して貼り付ける作業がほとんどになります。

今回のロボットでもそれは同じで、GR-LYCHEE用の開発環境に、昔作った中野島ロボットで紹介してきた、Arduinoのコードをつなぎ合わせて行くだけになります。

 プログラムの製造を始める場合に特に重要なのが、コメントです。コメントを書いておかないと直ぐに、なんの処理だったか判らなくなってしまいます。人間は見えている範囲しか正確に記憶できないという特性があるので、コメントでアウトラインを書いて、コードの詳細は記憶できていなくても、コメントを覚えていれば、ソースコードがスクロールして画面の外に行ってしまっても、そこで何をしようとしていたかを頭の中で思い出しながらソースコードを書いて行く事ができるのです。

 

C/C++言語の場合のコメントは

 //コメント

としてこの一行コメントとするか

 /*コメント*/

として、スラコメ(/*)とコメスラ(*/)で囲んだ範囲をコメントとすることができます。

 

コーディング

では最初に詳細設計で設計した内容をコメントとして、記述して行きます。

 

 setup() // 初期化を行う

{
 // 初期化ではセンサ、サーボモータの初期化を行う。
 // センサの初期化
    // ROHMセンサー用のI2Cを初期化する。
  // サーボモータの初期化
 // 起動時にLEDとジングルを鳴らす。
  // LEDを点ける
  // ジングルを鳴らす。
}


loop() // 制御ループ
{

// 異常がない限り、制御ループからは抜けなくて良い。
 // 制御ループの中ではセンサ入力、サーボモータ駆動を行う。
   // センサから入力を行う
    // カメラ画像を入力する
    // 加速度センサーから入力する
    // 磁気センサーから入力する
   // センサの入力に応じて「処理」を行う。

   // センサから入力があってもすぐに動かずに、考えたふりをして動き出す。
   // サーボモータを駆動する
    // 足のサーボモータを動かして歩く
    // 手のサーボモータを動かす
 // 制御ループは10Hzとする。
  // 10Hzになるように時間を調整する。(または、10Hzのタイマー割り込みを使う)

 }

 f:id:nakarobo:20181021083832j:plain

つづく

次回は実際の吉野式二足歩行ロボットのコードから貼り付けて行きます。
 
購入品情報
C/C++言語を勉強するならこの本がおすすめです。
細かいことを忘れたりしたら、私もこの本を開いて確認しています。
中野島ロボットが使っているのは、第一版です。新人が来るとあげているので、たぶん今のは三冊目です。 
C++の絵本 第2版 C++が好きになる新しい9つの扉

C++の絵本 第2版 C++が好きになる新しい9つの扉