「井」の字です。

勉強ノート1-1

  • 文字書きロボット

名前の通り文字を書くロボットですね〜。まぁ、まずはプログラムを。

#define SWING 40    筆を上げ下げする時間です

task main()
{
 OnFwd(OUT_B);     筆を下ろします
  Wait(SWING);
   Off(OUT_B);
    Wait(50);


 OnFwd(OUT_A+OUT_C);  1画目です
  Wait(100);
   Off(OUT_A+OUT_C);
    Wait(50);

 OnRev(OUT_B);     筆を上げます
  Wait(SWING);
   Off(OUT_B);
    Wait(50); 

 OnRev(0UT_A);     2画目の開始点へ。
  OnFwd(OUT_C);     回転してます
   Wait(15);
    OnRev(OUT_C);     モーターCを逆回転にし、バックします
 Wait(130);
  OnFwd(OUT_A);     モーターAを純回転にし、先ほどとは逆に回転します
   Wait(15);
    Off(OUT_A+OUT_C);
     Wait(50);

 OnFwd(OUT_B);     筆を下ろします
  Wait(SWING);
   Off(OUT_B);
    Wait(50);

 OnFwd(OUT_A+OUT_C);  2画目です
  Wait(135);       1画目より長めにしてます
   Off(OUT_A+OUT_C);
    Wait(50);

 OnRev(OUT_B);     筆を上げます     
  Wait(SWING);
   Off(OUT_B);
    Wait(50);


 OnRev(OUT_A+OUT_C);  3画目の開始点へ
  Wait(140);
   OnFwd(OUT_A);     直角に回転します
    Wait(82);
     Off(OUT_A+OUT_C);
      Wait(50);

 OnFwd(OUT_B);     筆を下ろします
  Wait(SWING);
   Off(OUT_B);
    Wait(50);


 OnFwd(OUT_A+OUT_C);  3画目です
  Wait(100);
   Off(OUT_C+OUT_A);
    Wait(50);

 OnRev(OUT_B);     筆を上げます
  Wait(SWING);
   Off(OUT_B);
    Wait(50);

 OnFwd(OUT_A);     4画目の開始点へ
  OnRev(OUT_C);     回転します
   Wait(20);
    OnRev(OUT_A);
     Wait(130);
      OnFwd(OUT_C);
       Wait(20);
        Off(OUT_A+OUT_C);
         Wait(50);

 OnFwd(OUT_B);     筆を下ろします
  Wait(SWING);
   Off(OUT_B);
    Wait(50);

 OnFwd(OUT_A+OUT_C);  4画目です
  Wait(135);       やっぱり3画目より長めです。
   Off(OUT_A+OUT_C);
    Wait(50);

 OnRev(OUT_B);     最後に筆を上げて終わりです
  Wait(SWING);
   Off(OUT_B);
}

コメント

このプログラムは少し長さの違う平行線の組を直角にクロスさせたものです。

直角を見つけるのはそれほど労せず、字が単純ということもあり、このプログラムは大変ではなかったですね。

今回の苦労話はプログラムの作成よりもその後にあります。

自分のパソコンでプログラムを作成し、そのプログラムをホットメールに送信、学校のパソコンでロボットに転送をしていたのです。が、送信時に、何がいけないのかスペースが変な文字に変換されたり、改行がなくなってたり・・・。

パソコンについての知識が多くない自分にはどうしてそうなったのかわからず、がんばっておかしくなったところをキリキリ直しました。

コメントをおねがいします。

  • サブルーチン使用のプログラムもそうですが、task や sub の中身を字下げするとプログラムが見やすくなります。 -- 松本(教員)? 2006-12-01 (金) 08:55:48

リンク


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2006-12-08 (金) 16:16:29 (4639d)