2012a/Member 目次

課題1 似顔絵を書くロボット

[製作者]萩原孝幸 北西崇良

ロボット本体

まず失敗作を2つ紹介したいと思います。

その1 NXT本体を横向きにしてつけてみたところバランスが崩れ、曲がるときに倒れてしまいました。

1・ロボット本体

その2 2011b/A4/課題1(2011年後期の先輩のレポート)

:http://yakushi.shinshu-u.ac.jp/robotics/?2011b%2FA4%2F%B2%DD%C2%EA%A3%B1%B1%A6

去年の先輩のロボットを参考に前後左右に動くロボットを作りました。

ただこのアームでは筆圧が安定せずまたもやロボットが倒れてしまいました。

2・ロボット本体

上記の欠点を改善した完成作品

ロボット本体

完成作品のポイント

/綫ペンの利用により、より軽い筆圧でも書けるようにしました。

▲◆璽爐離好肇奪僉爾砲茲蝓▲撻鵑隆き込みを防ぎ、転倒防止と筆圧安定に成功しました。

アームを中央に設置しシンメトリー(左右対称性)にすることで全体の安定性を確保しました。

ロボット本体

プログラム

 

 #define age OnRev(OUT_C,30); Wait(0300); Off(OUT_B); Wait(1000);//ペンを上げる
 #define sage OnFwd(OUT_C,50); Wait(0200); Off(OUT_B); Wait(1000);//ペンを下げる
 #define go OnFwd(OUT_A,40);OnFwd(OUT_B,40);
 #define turn_left OnFwd(OUT_A,75);OnRev(OUT_B,75);Wait(0250);
 task main ()
 { 
 //左目を書く
 age;//ペンを上げる
 go;//前身
 Wait(0210);
 Float(OUT_AB);
 Wait(2000);
 sage;//ペンを下げる
 go;//前身
 Wait(0340);
 Float(OUT_AB);
 Wait(2000);
 //右目を書く
 age;
 go;
 Wait(0200);
 Off(OUT_AB);
 Wait(2000);
 sage;
 go;
 Wait(0340);
 Float(OUT_AB);
 Wait(2000);
 age;
 go;
 Wait(1450);
 Float(OUT_AB);
 Wait(2000);
 //口を書くため移動
 OnFwd(OUT_B,50);
 OnRev(OUT_A,30);
 Wait(1100);
 Off(OUT_AB);
 Wait(1000);
 go;
 Wait(0230);
 Float(OUT_AB);
 Wait(2000);
 OnFwd(OUT_B,50);
 OnRev(OUT_A,30);
 Wait(1100);
 Off(OUT_AB);
 Wait(1000);
 //口を書く
 age;
 go;
 Wait(1400);
 Float(OUT_AB);
 Wait(2000);
 sage;
 go;
 Wait(0600);
 Float(OUT_AB);
 Wait(2000);
 age;
 go;
 Wait(1500);
 Float(OUT_AB);
 Wait(2000);
 //輪郭を左から書く
 OnFwd(OUT_A,30);
 OnRev(OUT_B,50);
 Wait(1185);
 Off(OUT_AB);
 Wait(1000);
 go;
 Wait(0500);
 Float(OUT_AB);
 Wait(2000);
 OnFwd(OUT_A,50);
 OnRev(OUT_B,30);
 Wait(1185);
 Off(OUT_AB);
 Wait(1000);
 go;
 Wait(0300);
 Float(OUT_AB);
 Wait(2000);
 OnFwd(OUT_A,50);
 OnRev(OUT_B,30);
 Wait(1200);
 Off(OUT_AB);
 Wait(1000);
 go;
 Wait(0600);
 Float(OUT_AB);
 Wait(2000);
 //左顔
 sage;
 go;
 Wait(1300);
 Float(OUT_AB);
 Wait(2000);
 OnFwd(OUT_B,50);
 OnRev(OUT_A,30);
 Wait(1190);
 Off(OUT_AB);
 Wait(1000);
 //頭部
 go;
 Wait(1400);
 Float(OUT_AB);
 Wait(2000);
 OnFwd(OUT_B,50);
 OnRev(OUT_A,30);
 Wait(1190);
 Off(OUT_AB);
 Wait(1000);
 //右顔
 go;
 Wait(1000);
 Float(OUT_AB);
 Wait(2000);
 OnFwd(OUT_B,50);
 OnRev(OUT_A,30);
 Wait(0600);
 Off(OUT_AB);
 Wait(1000);
 //右あご
 go;
 Wait(0800);
 Float(OUT_AB);
 Wait(2000);
 OnFwd(OUT_B,50);
 OnRev(OUT_A,30);
 Wait(1050);
 Off(OUT_AB);
 Wait(1000);
 //左あご
 go;
 Wait(0800);
 Float(OUT_AB);
 Wait(2000);
 }

(萩原の作品)

ロボット本体

感想

摩擦が一番の問題で解決策を最後まで思いつくことができなかったのが残念でした。

この完成作品も10枚に1枚は書けないと思います。

ロボット製作に時間をかけた分プログラムも長くなってしまいました。

次回の課題ではもっとうまく関数を利用しスッキリさせたいです。

う〜ん。悔しい!

コメント欄 コメントは以下のフォームによろしくお願いしますm(_ _)m

  • コメント欄テスト -- 萩原? 2012-05-20 (日) 17:16:50
  • ・・・ -- (´・ω・`)? 2012-05-20 (日) 21:25:03


添付ファイル: fileNXT.gif 70件 [詳細] fileIMAG0257.jpg 175件 [詳細] fileIMAG0250.jpg 160件 [詳細] fileIMAG0219.jpg 163件 [詳細] fileIMAG0199.jpg 170件 [詳細] fileIMAG0249.jpg 187件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2012-07-09 (月) 01:09:41