編集履歴一覧に戻る
MOZIのアイコン画像

MOZI が 2021年02月23日10時09分37秒 に編集

初版

タイトルの変更

+

Arduinoでライントレースをしてみた!

タグの変更

+

Arduino

+

Arduino_Nano

+

ブレッドボード

+

ライントレーサー

+

秋葉原2021

メイン画像の変更

メイン画像が設定されました

本文の変更

+

皆さんこんにちはMOZI電子工作です。今回はライントレーサーを作っていきたいと思います。 # 構想 構想としてまず、モーターはこの秋月電子のサーボモーターの形をしたギヤードモータを使いたいと思います。 https://akizukidenshi.com/catalog/g/gM-14801/ そして、ラインの検知はLEDとフォトトランジスタを組み合わせたこのセンサを使いたいと思います。 こんなやつでも代用可能だと思います。 https://akizukidenshi.com/catalog/g/gP-04500/ また、車体自体はブレッドボードを使用しています。 # 回路 ブレッドボード図はこんな感じです。 ![回路図](https://camo.elchika.com/bd779a00289b9a49c84b611fa7436145363cd9be/687474703a2f2f73746f726167652e676f6f676c65617069732e636f6d2f656c6368696b612f76312f757365722f32353431346531372d323363332d346539322d616633352d3532663938633138613436332f34613662393237662d303932302d346632652d386433612d393331343036383365373334/) ぐちゃぐちゃですが、マイコンはArduinoNANO、電源は9VをDCDCコンバーターで降圧して5Vにして使っていますまた、モーターはNPN型トランジスタの2SC1815で制御しています。あとモーター電源は3Vで単三電池を二個つかっています。 実際配線した感じはこんな感じです。 @[twitter](https://twitter.com/MOZI_electric/status/1292360991980675077?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1292360991980675077%7Ctwgr%5E%7Ctwcon%5Es1_c10&ref_url=http%3A%2F%2Felectromozi.wp.xdomain.jp%2F2020%2F08%2F22%2FE383A9E382A4E383B3E38388E383ACE383BCE382B5E383BCE381AEE4BD9CE68890%2F) ブレッドボードに直接、両面テープでモーター(秋月電子のサーボモーター型のDCモーター)を取り付けています。単線タイプのジャンパー線を使って配線をしたので個人的にはすごくきれいにすっきりできたかと思います。 # 動かない! @[twitter](https://twitter.com/MOZI_electric/status/1292385977625792512?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1292385977625792512%7Ctwgr%5E%7Ctwcon%5Es1_c10&ref_url=http%3A%2F%2Felectromozi.wp.xdomain.jp%2F2020%2F08%2F22%2FE383A9E382A4E383B3E38388E383ACE383BCE382B5E383BCE381AEE4BD9CE68890%2F) テストとして、モーターをどちらも動かして前進するプログラムを書き込みました。 ただ、片方しか動かなかったです。確認してみるとモーター制御用のトランジスタの向きが間違っていました。 センサーなどは動いていました。 @[twitter](https://twitter.com/MOZI_electric/status/1292430082716311552?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1292430082716311552%7Ctwgr%5E%7Ctwcon%5Es1_c10&ref_url=http%3A%2F%2Felectromozi.wp.xdomain.jp%2F2020%2F08%2F22%2FE383A9E382A4E383B3E38388E383ACE383BCE382B5E383BCE381AEE4BD9CE68890%2F) 何とか原因を究明し配線を直しました。原因はさっき書いたようにトランジスタの向き間違いと電流不足でした。電源を一時的にACアダプタを使っています。 ただ、この時の配線はモーターの電源を5Vにしていたのでモーターのスピードがすごく早いです。ウィリーしています。 # 調整 @[twitter](https://twitter.com/MOZI_electric/status/1292438233729470464?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1292438233729470464%7Ctwgr%5E%7Ctwcon%5Es1_c10&ref_url=http%3A%2F%2Felectromozi.wp.xdomain.jp%2F2020%2F08%2F22%2FE383A9E382A4E383B3E38388E383ACE383BCE382B5E383BCE381AEE4BD9CE68890%2F) ACアダプタをなくし、モーターの電源を1.5Vに変更しました。高速になってしまったのでそれを調整しました。 # プログラム 今回のメインプログラムはこんな感じかなり単純なものでそこまで難しいものではありません ```arduino:ライントレーサー void setup() { pinMode(7,OUTPUT); pinMode(2,OUTPUT); } void loop() { if(analogRead(6) < 30 && analogRead(7) < 30){ digitalWrite(2,HIGH); digitalWrite(7,HIGH); }else if(analogRead(6) < 30 && analogRead(7) >= 30){ digitalWrite(2,HIGH); digitalWrite(7,LOW); }else if(analogRead(6) >= 30 && analogRead(7) < 30){ digitalWrite(2,LOW); digitalWrite(7,HIGH); }else{ digitalWrite(2,HIGH); digitalWrite(7,LOW); } delay(100); } ``` こんな感じです。 # 完成! @[youtube](https://youtu.be/7iYy1LIdF_A) 意外とあっさりと動かすことができました. # まとめ しっかり動いてくれてなんか動物みたいでかわいいです。 ライントレーサーって童心に戻った感じがしていいですね。 短かったかもしれませんが最後まで読んでいただきありがとうございました。