徒然なるままにMake:

Fusion360 3Dプリンタ 電子工作 面白そうなモノづくりをやっていくブログ

3Dプリンターでロボット作ってみる 多脚ロボット編 33 モーション作ります

 

前回

something-make.hatenablog.com

このロボットの3Dデータは下のリンクのものを使用しています

 

 

今日はモーションを作ります。

まず歩行のモーションですが、下のリンクを参考にします。

Make: Japan | Arduino搭載四足歩行ロボットのプログラム

 

まあ、このモーションの入力は以前やったので楽勝です。

something-make.hatenablog.com

しっかり歩くようになった際の記事はこれです。

something-make.hatenablog.com

www.youtube.com

 

さて、前進することができたら、後退はこれを逆にするだけなので簡単です。

 

ロボットを自由に動かすために、今度は旋回をプログラミングします。

上のリンクにあるクリープゲイツの応用で旋回させます。

黄色の矢印がロボット本体の向きを示しています。

 

1.まず左側の足を45度ずつ開き、右側の足を側面に平行に出します。

f:id:something-make:20181118211357p:plain

 

2.右後ろ足を持ち上げて、ロボットの後方90度に下ろします。

f:id:something-make:20181118211402p:plain

f:id:something-make:20181118211401p:plain

3.全ての足を左回りに45度回転させて、ロボット本体を右回りに45度回転させます。

 

f:id:something-make:20181118211403p:plain

f:id:something-make:20181118211410p:plain

4.左後ろ足を持ち上げて、ボディー側面に平行に下ろします。

f:id:something-make:20181118211405p:plain

5.左前足を持ち上げて、ロボットの前方90度におろします。

f:id:something-make:20181118211409p:plain

 

f:id:something-make:20181118211411p:plain

6.全ての足を左回りに45度回転させて、ロボット本体を右回りに45度回転させます

f:id:something-make:20181118211414p:plain

f:id:something-make:20181118211416p:plain

7.右前足を持ち上げて、ボディー側面に平行に下ろします。

これでロボットが右回りに90度回転しました。

f:id:something-make:20181118211422p:plain

f:id:something-make:20181118211421p:plain

左旋回は、右と左を逆にすればできます。

 

このモーションをロボットに入力すると、こんなふうに動くようになります。

youtu.be

前進、後退、右旋回、左旋回ができるようになったので、これでモーションの作成は完了です。

 

 

3Dプリンターでロボット作ってみる 多脚ロボット編 32 ちょっとした改良 滑り止めにはグルーガン

前回 基板完成しました

something-make.hatenablog.com

このロボットの3Dデータは下のリンクのものを使用しています

 

youtubeをうろついていると、似たようなロボットを作っている動画を見つけました。

 

www.youtube.com

このブログで作っているロボットの作者さんが公開しているデータを使ってロボットを作ってみたという動画です。

 

ちなみにこのロボットのデータは下のリンクにあります。

秋月電子通商でも取り扱っているSG-90を使用しているので作りやすいと思います。

www.thingiverse.com

 

この動画で目を惹いたのは、ホットグルー(ホットボンド)を足先に塗ることで、足先が滑らないようにしていることです。

早速やってみました。

f:id:something-make:20181117113002j:plain

 

 

少々形が歪ですが、これで歩かせてみると、明らかに足先の滑りがなくなりました。

 

3Dプリンターでロボット作ってみる 多脚ロボット編 31 遠隔操作編 Eagleで基板製作4 Seeedから基板届きました

前回 基板を製作業者のSeedStduioに注文しました。

something-make.hatenablog.com

このロボットの3Dデータは下のリンクのものを使用しています

 

なるべく早く届けて欲しかったのでDHL使いました。送料は15$。

データ送信して届くまで大体2週間くらいでした。

f:id:something-make:20181115132737j:plain

ずいぶん大きい袋です。中にさらに紙袋が入っています。

f:id:something-make:20181115132712j:plain

 

 

中身がこれです。ちゃんと基板ができています。

f:id:something-make:20181115124907j:plain

 

 

早速組み立ててみることにしました。

微妙かもしれなかったスイッチですが、問題無く嵌りました。

f:id:something-make:20181115124912j:plain

 

しかしここで大誤算が発生しました。

ピンヘッダが嵌りません!

このピンヘッダは自作したライブラリのものを使っているのですが、穴が小さくて嵌りません。

同じく自作したXBee変換基板は特に問題ありませんでしたが、

変換基板のピンとピンヘッダの太さが違うということに気付いていませんでした。

f:id:something-make:20181115124908j:plain

 

ライブラリ製作時の穴径はちゃんとピンの太さを測ってから設定するべきでした。

完全にやらかしました

でも、もう後戻りはできません。

2週間の時間を費やして作ってもらったのですから。

 

とにかくリカバーです。基板を修正します。

ちゃんと組み立てることができて、問題なく動けば問題ありません。

ピンヘッダの対角線が0.8mmなので、0.8mmのピンバイスでゴリゴリと穴を拡げます。

f:id:something-make:20181115132538j:plain

持ってて良かったピンバイス

ちなみに穴の数は3pin×サーボモーター12chで36個あります。

卓上ボール盤とか無いので手作業で片っ端から穴をあけます。

 かなり手間ですが、やるしかありません!

 

 

ちなみにこれをやると穴の周囲のパターンがほとんど剥げてしまいます。

これではハンダが付きません。

なので穴に繋がるパターンの保護層をヤスリの先っぽで削ります。

多分これで大丈夫です。

f:id:something-make:20181115132634j:plain

 

 

 

 

無事に穴が大きくなったので、ブレッドボードを利用してピンを並べてハンダ付けします。f:id:something-make:20181115124913j:plain

 

一時はどうなるかと思いましたが、無事ハンダ付けすることができました。他は特に問題なくハンダ付けすることができました。

f:id:something-make:20181115124914j:plain

 

他の部品もハンダ付けして基板製作は完了です。

これからはモーションの作成と遠隔操作のプログラミングをやります。

3Dプリンターでロボット作ってみる 多脚ロボット編 30 遠隔操作編 Eagleで基板製作3 Seeedに基板を発注してみる

 前回

something-make.hatenablog.com

このロボットの3Dデータは下のリンクのものを使用しています

 

 

最初はこの基板をFabLabの3Dルーターで作る予定でしたが、製作当事、基板製作業者のSeeed Studioが基板3枚1$というキャンペーンをやっていたので、Seeed Studioに発注をしてみました。

www.fusionpcb.jp

要はSeed Studioに製造に必要なファイルを送って、Paypalで支払いをすれば、完成品の基板が送られてくるわけです。

 

Eagleから製造用のガーバーデータ(基板の寸法、穴の位置、大きさ、プリントパターン)のデータをまとめたファイルを出力する方法は下のリンクを参考にします。

Eagleからガーバーファイルを出力する方法 – Feedback & Ideas for seeed

このガーバーデータというもの、なかなかのクセモノのようで、プリント基板製造業者によって、データ生成時の設定を変えてやったり、専用の設定ファイルを読み込ませる必要があったりするようです。

これは恐らく業者ごとの設備の差によるものでしょう。

しかし、現在Seeed StduioはEagleのサードパーティ業者として登録されているので、特にこれといった設定をせずにガーバーデータを出力することができます。

 

基板が完成したらCAM Processorをクリックします。

f:id:something-make:20181114202415p:plain

 

下の図のようにプルダウンリストからThird Party -> Seed Fusion -> Seed Fusion 2-Layerを選択します。

f:id:something-make:20181114202414p:plain

 

そのままProcess Jobをクリックすると、ガーバーデータのZIPファイルが生成されます。このファイルをアップロードすれば製造してもらえます。

f:id:something-make:20181114202416p:plain

 

ちなみに、製造時の設定がページ下にありますが、こういった単純な基板なら一番安いやつで問題なく製造してもらえます。

f:id:something-make:20181114204834p:plain

後はpaypalで支払いをすれば製造してもらえます。

 

ちなみに現在100mm×100mmの基板5枚で7.9$のセールをやっています。

これまたかなり安いのでオススメです。

 

3Dプリンターでロボット作ってみる 多脚ロボット編 29 遠隔操作編 Eagleで基板製作2

前回

something-make.hatenablog.com

このロボットの3Dデータは下のリンクのものを使用しています

 

今回は基板のパターンを製作します。

といっても、特別なことはしません。

  1. プリント基板の寸法をロボットに搭載できるように75×58mmにする
  2. 角から4mmのところにネジ用の穴をあける

  3. 部品が干渉したりしないように配置る

  4. Netclassで配線ルールを決める

  5. オートルーターで配線をする。

でこんな基板ができました。

f:id:something-make:20181114184312p:plain

 

配線ルールはこんな感じに設定します。

Edit -> Netclassから配線ルールを決めます。f:id:something-make:20181114185101p:plain

f:id:something-make:20181114184132p:plain

サーボモータに繋がる電源ラインとGNDは大電流が流れるのでpowerと名づけ、太めの1.5mmにします。サーボモータの動作信号や通信用のラインはsignalと名づけて一般的な0.5mm配線にしました。

ちなみに2mmだとオートルーターが配線を決めることができませんでした。太くすれば良いというものでもないようです。

 

配線ルールは次のように適用します。

回路図でinformationのボタンをクリックした後。緑の配線をクリックして、配線のプロパティを表示します。

f:id:something-make:20181114190705p:plain

 

Net Classのタブがあるので、これで配線ルールを設定してやります。

f:id:something-make:20181114190713p:plain

 

これで基板データが完成しました。

これを実際に製作するにはどうするかをやっていきます。

 

3Dプリンターでロボット作ってみる 多脚ロボット編 28 遠隔操作編 Eagleで基板製作1

 前回

something-make.hatenablog.com前回はコントローラーを作りました。

 

このロボットの3Dデータは下のリンクのものを使用しています

 

今回はロボットの基板を製作していきます。

まずは回路図の作成です。

Eagleのライブラリのどこに何があるのかをリストにしているサイトを見つけたので、下にリンクを貼っておきます。

工作-Eagleパーツリスト

さて、このロボットに必要な部品をリストアップしてみます

  1. 電源用ピンヘッダ(3ピン)×1
  2. サーボモータ電源安定用電解コンデンサ1000μF×2
  3. 秋月電子通商低ドロップ三端子レギュレーターセット×1
  4. ArduinoNano互換機×1
  5. 秋月電子XBee変換基板×1
  6. サーボモータ用ピンヘッダ(3ピン)×12
  7. 電源用トグルスイッチ×1

リストアップしてみるととくに数はありません。部品を必要なだけ入れていきます。

 

Eagle部品ライブラリ選択

1.電源用ピンヘッダ

電源のバッテリーを接続するためのピンヘッダです。

pinhead->PINHD-1X3というそのまんまのものがあるのでこれを使います。

f:id:something-make:20181112181709p:plain

 

 

2.サーボモータ電源安定用電解コンデンサ1000μF×2

rcl -> CPOL-EU -> CPOL-EUE5-10.5

右の説明にgrid 5.08 mm, diameter 10.5 mmとあります。

5-10.5は配線間隔5.08mm,直径10.5mmの電解コンデンサという意味だったわけです。

こういった電子部品は一定の規格で作られていることがわかります。

f:id:something-make:20181112195053p:plain

 

3.秋月電子通商低ドロップ三端子レギュレーターセット×1

レギュレータがどこにあるのかわからなかったのでライブラリを自作します。

ライブラリ自作の方法は過去の記事を

something-make.hatenablog.com寸法は秋月電子通商のデータシートから得ます。

akizukidenshi.com20分程て完成しました。

f:id:something-make:20181112212322p:plain

 

 

4.ArduinoNano互換機は

Autodesk Eagle

を検索すると出てきたのでこれを入れます。

 

5.秋月電子XBee変換基板×1

これは以前作ったものをそのまま使用します。

something-make.hatenablog.com

6.サーボモータ用ピンヘッダ(3ピン)×12

これもPINHD-1X3を使用すればいいように思いますが、今回の形式では使用してはいけません。今回、ロボットのサーボモータを接続する関係上、コネクタを横にならべるのですが、PINHD-1X3はPadが横に長いので、並べると干渉します。

左側のPadが重なっている部分が干渉しています。

f:id:something-make:20181112222429p:plain

これはパターンを細くしているので目立ちませんが、パターンを太くすると干渉したりするので、専用の3ピンのライブラリを作りました。

f:id:something-make:20181112222803p:plain

7電源用トグルスイッチ×1

switch ->  320-916が近いのでこれを採用します。

f:id:something-make:20181112230056p:plain

 

回路図

部品を接続して、下の図のような回路を作ります。

f:id:something-make:20181113000728p:plain

 

電源回路

低ドロップの5Vレギュレータを使うことで、バッテリーの6.6VからArduinoを安定して動かす5V電源を作ります。バッテリーをArduinoに直結して、Arduino内臓のレギュレータで電圧を変換しても動くかもしれませんでしたが、Arduinoに搭載しているレギュレータでは6.6Vのバッテリーからでは安定して5Vを作り出せない可能性があり、動作を安定させるためにレギュレータを別に搭載しました。この部分は秋月のキットに書いているものをそのまま使っています。

さらにサーボモータ動作時の大電流で電圧低下が起きないよう、2000μF分の電解コンデンサを搭載しました。

 

f:id:something-make:20181113000817p:plain

 

ピンヘッダ

3ピンのピンヘッダにバッテリーからの電源と、GNDとArduinoのデジタル端子を繋ぎます。数が多くてめんどくさいですが、地道にやっていきます。

f:id:something-make:20181113000838p:plain

 

通信機能

XBee変換基板のVCCに5V電源を接続し、GNDにGNDを接続します。

ArduinoのRX0にXBeeのDOUT

ArduinoのTX1にXBeeのDIN

を接続します。

 これだけでシリアル通信ができるようになるので簡単です。

f:id:something-make:20181113000854p:plain

 これで回路図ができたので、次回はパターンの製作に移ります。

 

3Dプリンターでロボット作ってみる 多脚ロボット編 27 遠隔操作編 XBeeとArduino互換機でコントローラ製作1

前回

XBeearduino同士の通信をしました。

something-make.hatenablog.com

このロボットの3Dデータは下のリンクのものを使用しています

 

XBeeArduino nanoの互換機をユニバーサル基板上に配置してコントローラをつくってみました。

f:id:something-make:20181009234918j:plain

   

このスイッチに

  1. 前進
  2. 後退
  3. 右移動
  4. 左移動
  5. 右旋回
  6. 左旋回

を割り当てることで、ロボットを遠隔操作できるようになります。

ちなみに裏面はこんな風になっています。

f:id:something-make:20181009234921j:plain

タクトスイッチはArduinoのデジタルピンとGNDに繋がっていて、プルアップでタクトスイッチの動作を読み取ることができます。

 

接続を確認したので、これでコントローラは完成です。

これからはロボットの基板の製作に移ります。