NOBのArduino日記!

NOBのArduino日記!

趣味は車・バイク・自転車・ラジコン・電子工作です。

ラジコンをArduinoで自動運転!その20(衝突回避!)

イメージ 1

 子供がアクセル全開でラジコンを壁に突進させても、ラジコンが自分で判断して全力でブレーキを掛ける、そんな夢の様なプログラムが完成しました!

 

1. 衝突回避

 子供は容赦なくラジコンを壁に衝突させて突っ込んだ後も笑いながらアクセルを緩めないのでおそろしいです
 そんな私の悩み事を解決する最近話題のPCS(プリクラッシュセーフティーシステム)が前回完成したプログラムに少し手を加えただけでラジコンに追加されました!
 以下修正した箇所です。

1.1 通常のスロットル処理

ThOut.write(Angle(2));

 
1.2 PCSの付いたスロットル処理!

byte MinimumDistance=200;//車を停止させる最小距離(200:25cm)
if(analogRead(0)>=MinimumDistance || analogRead(1)>=MinimumDistance || analogRead(2)>=MinimumDistance && Angle(2)<94){Back();}else{ThOut.write(Angle(2));}

前回の記事で載せたプログラム中に「void loop() 」関数が有り、その中の「//手動運転」中の1行(1.1参照)を4行(1.2参照)に変えるだけで完成です!

2. まとめ

 実際に部屋の壁に向かってアクセル全開でラジコンを走らせたところ寸止めで止まりました!セーフ!(嫁に見つかったら怒られる所でした)
 これで安心して子供にラジコンで遊ばせる事が出来ます!
 もちろんラジコンを他の人にぶつけてケガをさせてしまう心配も大幅減です!
 ラジコンの自動運転している動画をUPしたいのでやり方を調べ中です。そもそも家の激遅ADSLで動画をUP出来るか分かりませんが・・・期待しないでお待ちくださいませ。
 
イメージ 1 イメージ 3
励みになりますのでよければクリック下さい(^o^)/

↩【ラジコンをArduinoで自動運転!】目次に戻る