*選んだ漢字 [#f4d176e0]
#ref(1434026659589.jpg,,30%)
(写真はロボットが実際に書いた文字)

*大変だった点 [#aa90b25c]
-筆圧をちょうどよい具合に調整したこと。

-文字の上半分と下半分のバランスを合わせること。

-書き順が手で書くときと同じなので、ロボットを動かす時間などを細かく計ったこと
*工夫した点 [#u29ece40]
-二画目の曲線部分

-文字の下半分の点の間隔

-ロボットを文字の右側から書かせることによって、動きを最小限にしたこと

-プログラミングで七〜十画目をリピートにすることで、プログラムを見やすくしたこと

-ロボットが筆を上げるときと下げるときで動かす時間を変えたこと
(可動域が決まっているので、その間を動く時間で上げるときはアームを縦にしても止まるように、下げるときは筆を叩き付けないように時間を計った)
*ロボットの説明 [#wa4d090b]
#ref(_25749.jpg,,35%)
#ref(_25745.jpg,,right,35%)
#ref(_25745.jpg,,35%)
#ref(_25744.jpg,,35%)
#ref(_25742.jpg,,35%)
今回作ったロボットは、前後、左右、筆の上下の動きをするモーターを1つずつ取り付けた。また、前後と左右の動きをするモーターに違う回転数の歯車を取り付けることによって、工夫した点で述べたような、きれいな曲線を描けるようにした。また、マーカーなどは方向転換に融通が利きにくかったので、筆ペンを使った。筆ペンは黄色のⅬ字型の部品に輪ゴムで取り付けた。左右の動きをする部分については、土台のところにローラーのような部品を取り付けて、スムーズに動くようにした。
*作成したプログラム [#c08cfec5]

 #define STOP Wait(100);
 #define SHITA OnFwd(OUT_A);Wait(010);Off(OUT_A);STOP;
 #define UE OnRev(OUT_A);Wait(011);Off(OUT_A);STOP;
 #define HIDARI(t) OnFwd(OUT_B);Wait(t);Off(OUT_B);STOP;
 #define MIGI(t) OnRev(OUT_B);Wait(t);Off(OUT_B);STOP;
 #define MAE(t) OnFwd(OUT_C);Wait(t);Off(OUT_C);STOP;
 #define USHIRO(t) OnRev(OUT_C);Wait(t);Off(OUT_C);STOP;
 #define NANAME OnFwd(OUT_BC);Wait(015);Off(OUT_BC);STOP;
#ref(1313.gif,,80%)
(書き順は画像の通り)
 #define STOP Wait(100);     //1秒止まる
 #define SHITA OnFwd(OUT_A);Wait(010);Off(OUT_A);STOP;     //筆を下に動かす
 #define UE OnRev(OUT_A);Wait(011);Off(OUT_A);STOP;     //筆を上に動かす
 #define HIDARI(t) OnFwd(OUT_B);Wait(t);Off(OUT_B);STOP;     //アームを左に動かす
 #define MIGI(t) OnRev(OUT_B);Wait(t);Off(OUT_B);STOP;     //アームを右に動かす
 #define MAE(t) OnFwd(OUT_C);Wait(t);Off(OUT_C);STOP;     //ロボット本体を後ろに動かす
 #define USHIRO(t) OnRev(OUT_C);Wait(t);Off(OUT_C);STOP;     //ロボット本体を前に動かす
 #define NANAME OnFwd(OUT_BC);Wait(015);Off(OUT_BC);STOP;     //アームを左に動かしながらロボット本体を前に動かす
 
 task main ()
 {
   SHITA;
   SHITA;     //一画目の動作始め,「烈」の上半分の左側書き始め
   USHIRO(015);
   UE;
   UE;     //一画目の動作終わり
   MAE(010);
   SHITA;
   SHITA;     //二画目の動作始め
   NANAME;
   UE;
   UE;     //二画目の動作終わり
   MIGI(009);
   USHIRO(022);
   SHITA;
   SHITA;     //三画目の動作始め
   USHIRO(009);
   NANAME;
   UE;
   UE;     //三画目の動作終わり
   MIGI(010);
   USHIRO(006);
   SHITA;
   SHITA;     //四画目の動作始め
   USHIRO(009);
   UE;
   UE;     //四画目の動作終わり,「烈」の上半分の左側完成
   USHIRO(018);
   MIGI(010);
   SHITA;
   SHITA;     //五画目の動作始め,「烈」の上半分の右側書き始め
   HIDARI(012);
   UE;
   UE;     //五画目の動作終わり
   MIGI(015);
   USHIRO(009);
   SHITA;
   SHITA;     //六画目の動作始め
   HIDARI(021);
   UE;
   UE;     //六角目の動作終わり,「烈」の上半分完成
   MAE(035);
   HIDARI(008);
   repeat(4)
  { SHITA;
   repeat(4)     //「烈」の下半分を書く動作
  { SHITA;     //七〜十画目の動作始め
    HIDARI(006);
    UE;
    UE;     //七〜十画目の動作終わり,
    MIGI(006);
    USHIRO(014);
  }
  }     //「烈」の完成
 
 }
*実際に文字を書いている動画 [#xb8a3268]
https://www.youtube.com/watch?v=TLkw-t6jUQ0
*制作を終えた感想 [#t52a92d4]
最初にもっと別のロボットを作っていて、全然うまくいかなかったので本当に文字が書けるのかな、と思っていたが、本体が曲がるという動作をなくしたところ、写真のような綺麗な文字が書けたので、その発想は良かった。次の課題などにも生かしていきたいと思う。



トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS