ロボットアームことはじめ ーロボットアーム自作への道1ー
やっぱりロボットが作りたい!ということで書籍を購入してみました。
以前もトライしたことあるのだけど、スキルと資金が足りなくて足しかできなかったのだ。
ここでは書籍を紐解きつつ新たな道を創設し、ロボットアームの自作を目指します。
思い通りにスムーズに動くアームを作りたいと思っています。
将来的にはアラレちゃんのような近眼のアンドロイドを作りたいです。
目次
構成
学習に用いるロボットアームをPWMサーボを3つ使用して組み立てます。
部品
- Arduno UNO
- サーボモータMG995
-
サーボモータDS3115
アームの作製
サーボモータDS3115の2つを縦方向、サーボモータMG995を首振り方向に使用しました。
MG995 サーボ追加!
魅力が増えた。
明日より逆運動ルーチンなるものを勉強したくMG995 デジタルサーボ を Amazon でチェック! https://t.co/HKJwEvfSAM pic.twitter.com/8JTJvYV88T
— HomeMadeGarbage (@H0meMadeGarbage) December 3, 2019
木で腕や土台を作製して机に固定してみました。
ロボットアームをお勉強する環境を整えました。ボクがんばります。 pic.twitter.com/f1JtNAIeER
— HomeMadeGarbage (@H0meMadeGarbage) December 4, 2019
Arduinoコード
簡単に動くコードを作成しました。サーボライブラリを使用しています。
setup()部で各サーボのデータピンを指定し、極力正確に0°、180°になるようにパルス幅を調整しています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
#include <Servo.h> Servo myservo1, myservo2, myservo3; int pos = 0; void setup() { Serial.begin(115200); myservo1.attach(9, 500, 2420); //MG995 myservo2.attach(10, 820, 2140); //DS3115 myservo3.attach(11, 820, 2140); //DS3115 } void loop() { for (pos = 0; pos <= 180; pos += 1) { // in steps of 1 degree myservo3.write(pos/2+40); myservo2.write(pos/3+20); myservo1.write(pos); delay(15); } for (pos = 180; pos >= 0; pos -= 1) { myservo3.write(pos/2+40); myservo2.write(pos/3+20); myservo1.write(pos); delay(15); } } |
参考
おわりに
さていつも隣にロボットアームがある状況を作れましたので、じっくり勉強を進めていきたいと思います。
それではまた。