[[2015a/Member]] 目次(書道ロボ) [#zc6fca63] #contents * 課題 [#nef986b4] 書道ロボを製作し、自身の氏名の中で、七画以上の漢字を書くこと。 私の場合は、「和」を書くことにした。 * ロボット本体の説明 [#x4ee2ec6] 3つのモーターの用途 -車体の前後方向移動 (モータA,C) -車体の旋回 (モータA,C) -ペンの上下 (モータB) 写真 車体を旋回、前進、後退、アームを上下させることで字を書ける。 蛍光ペンで書いたため、文字が薄く、見えにくい。 * 製作上の問題点 [#m5b4dcfc] ** アームの上下運動の調整 [#s99155c5] 単純な構造のため、上下運動が激しくなり、特にアームを下したときに、ペンが弾み、無駄な点を書いてしまった。 ** アームの位置の維持 [#zca08cdd] 線を書きたくないときに、自然とアームが下りてきて、余計な線が引けてしまった。 ** モーターの回転時間 [#k922c7e2] 車体の動きに完全に依存した形式で文字を書いたので、旋回の角度などを決める際に、モーターの回転時間を微調整するのに苦労した。 *改善した点 [#ef5825b3] ** アームの位置の維持 [#h6403ff4] 長い間、車体を動かしている時に、アームが下りてきたので、その途中にアームを上げる動作を追加した。 それにより、余計な線を引かずに済んだ。 * 工夫した点 [#jded75f2] ** アームの調整 [#m6b8db29] 車体にアームを取り付けるだけの単純な構造にしたことで、アームの位置を簡単に調整することができた。 [#mc0807d0] ** 分解と組立の容易性 [#m8349dc2] 前述したとおり、アーム部と車体に分解できるので、簡単に持ち運びができる。 * プログラムの説明 [#s473aabf] ** 「和」を書くプログラム [#bf38655e] #define go(t) OnFwd(OUT_AC);Wait(t);Off(OUT_AC);//前進 #define back(t) OnRev(OUT_AC);Wait(t);Off(OUT_AC);//後退 #define rturn(t) OnFwd(OUT_A);OnRev(OUT_C);Wait(t);Off(OUT_AC);//右旋回 #define lturn(t) OnFwd(OUT_C);OnRev(OUT_A);Wait(t);Off(OUT_AC);//左旋回 #define up OnRev(OUT_B);Wait(9);Off(OUT_B);//筆を上げる #define down OnFwd(OUT_B);Wait(9);Off(OUT_B);//筆を下げる task main() { //和の三画目 down; go(140); up; //四画目 back(30); rturn(40); down; back(70); up; //五画目 go(70); lturn(75); down; back(70); up; //二画目 go(100); lturn(75); up;//アームが自然と下りたので back(55); down; back(65); up; //一画目 rturn(210); up;アームが自然と下りたので back(170); down; back(60);// up; //七画目の縦部分 rturn(15); lturn(105); down; back(20); go(120); up; //八画目 go(70); rturn(110); back(95); down; go(55); up; //六画目 go(80); rturn(109); back(95); down; go(110); up; //七画目の横部分 go(85); rturn(110); back(75); //105 down; go(55); //yoko7 up; }