FC2ブログ
汎用ヒト型決戦遊具はじめました。
ROBOXERO(80) ゼロタンク2出撃
2012年10月31日 (水) | 編集 |

結局前日も貫徹で調整となりましたゼロタンクII。
10月28日に行われましたロボサバ14回大会に参加させていただきました。
th_CIMG1152.jpg




th_CIMG1170.jpg

ロボサバ第14回大会 参加機体

名称 :RMV-0.1 XEROTANK II(ゼロタンクII)
制作者:二名川
主武装:ミニ電動ガン UZI
動力 :タミヤ工作パーツ
CPU:Arduino Duemilanove
大きさ:全高:被弾センサまで220mm・弾倉まで275mm
重量 :1200g
バッテリ:単3エネループ×8本(本体)、単4エネループ4本(電動ガン)
     9V電池×2(カメラ用・arduino用)、3Vボタン電池(レーザポインタ用)
稼働時間:約20分
無線方式:2.4GHz VS-C1
カメラ :UHF アナログカメラ(車載用絶版品マルハマMCD-27T)

12回大会終了後、ロボサバ機としては評価の低かったゼロタンクを純粋なロボサバ車両として再設計した機体。
サーボノイドとしての機能を砲塔制御のみに限定し、ロボサバ機としての基本・再現性を優先して開発した。
上半身のサーボノイド機能をすべてオミットし、従来HSWB-4F経由で行っていた無線制御もarduino単体で行えるよう改良した。
無線リモコン制御・クローラー制御・砲塔サーボ制御・ガン制御のすべてを、
入手性・廉価性・取り扱いに優れたCPUであるarduino1枚に集約することができた。
ただし、カメラ部分はUHFアナログカメラ・被弾センサは公式設計のボードを用いている。
将来的には被弾センサもarduinoに内蔵する計画である。

電源スイッチは、カメラ・本体(CPU&動力用)・ガン主電源・レーザーサイト用と、4か所。
これまでのコネクタ抜き差し式に比べ、バッテリー交換・省エネ性(電源をこまめにオンオフできる)が若干向上しているが、ヒューマンエラーを防ぐにはスイッチ類は少なく、1カ所に集中している事が望ましく改善の余地がある。

初代機の名残として、縦長の機体となっており、登坂力・走破性に大きな課題を残す。
また、被弾センサが「高感度ノイズセンサ」として機能してしまい、自機の発するノイズで撃沈判定を出してしまうという致命的な欠陥があり、大会における戦果は皆無に等しかった。




「あれ、腕がなくなってるじゃん!」と、明らかながっかり感を呼びつつ、コンバットシューティングへ。
ガンと移動の同時押しさえなければ、被弾センサの誤動作はない、というハズだったのですが、なんだかんだで誤動作しまくります。
新たに設置された坂道の勾配も厳しく、縦型の機体であるがゆえにクローラー型の走破性が活かされず、すぐにひっくり返ってました。
驚いたのは、地面に貼りつけた1センチもないロープの障害も乗り越えられなかったことです。
乗り越えようとすると被弾判定・・・
モータへの急激な負荷変化でクローラーからノイズが出てるっぽいです。
もちろん、電源は別ものなのですが、電圧の変化がセンサの配線にも影響を出しているようです。




前回、謎のノイズ制御回路を作ってノイズがおさまったと喜んでいましたが、やっぱりガンからノイズが出てました。
もちろん、若干の効果はあったのですが、被弾センサ回路の直近でガンを撃つと被弾反応になってしまいます。

もしやと思い、ノイズキラーコンデンサを付け替えたところ、ノイズはほとんどなくなりました。
結論としては積層セラミックコンデンサの種類が間違っていました。
推奨の千石でも秋月でも売っている104という型を使えば問題なかったのですが、私が使っていたのはちょっと大きめの104Eというもの。どこで買ったか記憶にもない品です。
ガンのモーターを104に変更したところ、ノイズがほぼ完ぺきにおさまりました。
クローラーモーター用のコンデンサもこれに差し替えてみましたが、ノイズは若干ましになりました。




それでも数秒間クローラーを回し続けたり、ガンとクローラーを同時に数秒間、またはクローラーで障害物を連続で乗り越えようとすると、被弾センサが作動してしまいます。
これはモーターのスパークではなく、電流の変化によるノイズであると考えられます。

・容量の大きな電解コンデンサをモーターバッテリーの補助につける。
・センサーへはバッテリーから直接レギュレーター経由で電力を供給する。
・それでもダメならセンサーを別電源にする。

などなど、試してみたいと思います。




また、分散型センサはセンサ基盤までにどうしても距離が出てきます。
その配線がノイズを拾ってくる場合があるのですが、これは「シールド線」を利用することで押さえられると会場で教えていただきました。シールド線のシールドはGNDにつないでしまえばよいそうです。

なんだかんだで完成にまた一歩近づきましたが、被弾センサは(ロボサバメンバの中にはちゃんと問題なく動作させている人もいるだけに)中々のくせものです。

スポンサーサイト



ROBOXERO(79) ロボサバ公式被弾センサ5
2012年10月27日 (土) | 編集 |

試行錯誤の結果、リレースイッチを用いながら、ガンのノイズを制する事ができたようです。



使ったもの

【ガンのモーター】
・セラミックコンデンサ(104)×3

【リレースイッチ】
・3V1A小型リレースイッチ (Y14H-1C-3DS)
・電解コンデンサ(16V47μF)
・セラミックコンデンサ (104)
・接点保護用ダイオード(1N4007)
・コイル起電力消化用ダイオード(1N4007)
・arduino回路保護用ダイオード(1N4007)



どんな風に設置したか。
th_CIMG1143.jpg

(1)リレースイッチ(Y14H-1C-3DS)
(2)リレー接点保護用ダイオード(1N4007)
(3)コイル起電力消化用ダイオード(1N4007)
(4)電解コンデンサ(16V47μF)/セラミックコンデンサ (104)
(5・6)arduino回路保護用ダイオード(1N4007)

という感じです。
モーターのノイズキラーコンデンサをつけた後、
絶縁のためにリレースイッチを導入。
ノイズの発生でガンの発射にあわせて被弾センサから被弾信号が出る誤動作。
(4)(3)(2)という順番でつけてみましたが、それでもノイズは収まらず。

コイルの要素がGNDなどにいたずらをしているのでは?と思い立ち、
(5・6)のダイオードでノイズを増設して、パルスを封じ込めてみました。
逃げられなくなったパルスは、主に(3)のダイオードとリレースイッチ内のコイルで消化されているハズ。
という感じです。
試してみましたが、(5・6)は両方必要で、片方だけだとガンの発射で被弾センサが誤動作します。



リレースイッチの利点は、ミニガン用の別電源(単3×4本)がほとんどロスなくガンモーターに回るので効率がよいところです。
他の方法でも問題ないのかもしれませんが、私のところではこれでうまくいっているのでめでたいです。
(量産型ゼロタンクではミニガンを最小限の改造でarduino制御する予定なのです。)

Arduino回路保護用のダイオードの使い方は、どこかに書いてあったでしょうし、たぶん基本なのでしょうが、
いろいろ試してやっと到着できた解答です。

これで、arduinoなど5Vの信号線からミニガンを直接・ノイズレスで制御できるようになりました。
武装のモジュール化が課題のひとつであるRX計画に、また一歩便利な道具が加わったことになります^^



たくさんのヒントをくださったshiogigさんありがとうございました!

ROBOXERO(78) ロボサバ公式被弾センサ4
2012年10月23日 (火) | 編集 |

ゼロタンク2ですが、すべての機能を組み込み済みで、あとは微調整するだけ・・・
というところまで来たのですが、またも絶望的な壁です。




被弾センサ単体では、ほぼ完ぺき・正確に動作してくれてヨシヨシと思ったのですが、

ガンを打つと、被弾反応を示してしまうという・・・
さらに、場合によっては前後移動しただけでも被弾反応してしまうという・・・
しかも、必ず誤動作というわけではなく、どきおり正常に動作する場合もあるという・・・



ロボサバwikiにも、「センサーからの配線は、可能な限り短くし動力関係の配線から離してください。」と赤字で書かれているので、おそらく動力系のスパーク的なノイズを拾っているのでしょう。
たしかに、モーターの近くにセンサーを置いた時の方が、誤動作が多いような気がします。




まず、ガン。
ガンのDCモーター自体には、ノイズキラーコンデンサを装着済みです。
また、ノイズを恐れて、電源はガン用の独立電源にしています。
スイッチには小型のリレースイッチを使っています。
(で、すこし知恵がついた今から考えると、ノイズ的にいかにもマズそうなチョイスです。
 さらに接点容量が1Aなので、定格が足りてない可能性があります。)




現状の回路のまま、小手先でなんとかしようともがいています。
リレースイッチはコイルなので、ノイズキラーコンデンサを入れてみました。
また、「やってはいけない!モータ/リレー&パワー回路設計」を参考に、リレースイッチにダイオードを並列し、起電力の逃げ場と言うのも作ってみました。
誤動作が減ったような気がしますが・・・
正常動作したと思ったらまた誤動作したりするので、本当によくわかりません。




現在は、センサーの取り付け位置をなるべく孤立した場所にしようと画策しています。
被弾センサ正常動作に向けて、大会前日まであれこれと実験が続くことでしょう。




あのう。
電子回路に最も影響なく、かつ最小部品でスパーキーなブラシモーターを操作する方法(具体的にはarduinoの信号線で電動ミニガンの電源を操作する)があったら、どなたか教えてください・・・
今のところ、
・フォトカプラ&トランジスタ(フォトカプラは電気食いらしい)
・モータードライバーIC(熱くなるから避けたい)
ぐらいしか思いつきません。

ROBOXERO(77) 対疫魔迎春用特殊装備-1
2012年10月20日 (土) | 編集 |

怖くて計算していませんが、ロボゼロのベースだけで14万円。工具やロボサバその他を合わせれば20万円はとっくに投資してしまっていると思います。

そこまで投資してしまうと、
名目が汎用ヒト型決戦遊具とはいえ、いつまでも遊具としてだけ運用していてよいものか?という家庭内世論も当然沸き立ち始めます。
世論を放置しつづければ、いずれ「遊事費削減」という事態も余儀なくされ、最悪、RX計画自体が中止に追い込まれてしまいます。
この危機を打破するために、先手を打ち、その存在意義・実用性を世間に広くアピールする必要があります。




そこで急遽計画されたのが「対疫魔迎春用特殊装備 X-DIFENCER(形式番号 FXA-4.401)」です。
通常の装備では対応困難な疫魔を追い払い、家庭を防衛。よいお正月を迎えるためのシステムです。

飾るだけでも十分な威力を発揮できるこの装備を、
RXシリーズが装備し、さらに動力を供給することで、
これまでにない破魔効果・祝賀効果が得られるのです!

[READ MORE...]
クリエイティブ・コモンズ
2012年10月18日 (木) | 編集 |

UPするロボ動画の癒しBGMをなんとかしたいなと思います。
ロボ界の他のみなさんに迷惑をかけないためにも、著作権まわりはクリアにしておきたいところです。



曲のオリジナリティを重視しないとして、
手っ取り早い方法は2つ。

1)ガレージバンドのループを使う。
2)クリエイティブ・コモンズの曲を使う。


■ 1)ガレージバンドのループを使う。

Garage Bandを忘れるな」というブログにループ作曲の入門が掲載されていて便利です!
ロボっぽい素材もたくさんあるので、コツを覚えたら実用できそうです。


■ 2)クリエイティブ・コモンズの曲を使う。

「CC」のマークです。
ネットで自分の曲を広めたいというニーズにこたえつつ、著作権を尊重するためのルールのようです。

そんな曲がどこにたっぷり集まっているかといいますと、
たとえば http://www.jamendo.com/en

探した曲のページの下の方にCCマークが出ています。

で、マークの種類はこのへんで勉強できます。

YouTube動画のBGMに貼って安全なマークはどれかというと、
「=」の改変禁止マークがついていないもののようです。
改変OKということでかなり緩い基準のものです。

あとは気に入った曲を見つけるだけです!

ROBOXERO(76) ガンの取り付け
2012年10月18日 (木) | 編集 |

この時間に家に帰っても少し進めます。
ゼロタンクにガンをサーボで取り付けようと思うのですが、
今日は取り付け用のアルミ板を切っておしまい。



武装なしの状態でラジコン遊び。初代ゼロタンクに比べ、ゼロタンク2はかなり意のままに操作可能です。
たぶん10分ぐらいはボンヤリと操作して遊んでしまいました。
VS-C1の電波さえ混線せずに届けば、ちゃんとサバイバルゲームに戦力として参加できる機体になりそうです。

ROBOXERO(75) 刺繍ミシンがすごい
2012年10月16日 (火) | 編集 |

ロボゼロの追加装備について夢想しつつ伊集院光の「のはなし」を読んでいたら、
現代の刺繍ミシンがすごいことになっていると書いてありました。
1/200のプラモで遊んでいた時には刺繍は距離のあるホビーでしたが、ロボゼロぐらいのサイズとなると、布や刺繍・裁縫は視野に入れるべきマテリアルであり、技術となります。




検索してみて一番上に出てきたの記事がプロトタイパーズだったのも面白いですが、
もちろん記事も笑ってしまう内容です。電子回路を刺繍してます^^
http://pc.watch.impress.co.jp/docs/column/musashino_proto/20120117_504980.html




ミシンをプリンターとして考えたことが今までなかったのですが、すごい進化ですね。

現実的な選択肢として5万円程度から刺繍ミシンを買えるようですが、
さすがにインターフェイスが悪そうです。
http://www.brother.co.jp/product/hsm/embropc/fm800/index.htm

スマホ家電がもてはやされる昨今ですが、どのスマホ家電もイマイチ便利そうに見えない中、
刺繍ミシンがスマホと連携してくれれば、その効果はばつぐんだと思いました。
低価格ミシンで良好なインターフェイスを実装した刺繍ミシンが出た暁には、ミシン景気が訪れることでしょう!




とうことで、しばらく新型ミシンは買えませんが、ロボゼロ用の追加装備になりそうなアイテムをポチりました。
もういくつ寝るとお正月。

ROBOXERO(74) ロボサバ公式被弾センサ3
2012年10月15日 (月) | 編集 |

ロボサバのカメラ以外すべての要素をarduinoに搭載する予定でしたが、
やっぱり被弾センサのところがイマイチうまくいきません。



公式被弾センサは、太陽電池パネルからの電圧と、ボリュームからの電圧をコンパレータという電圧比較ICで比較しているという原理なので、
だったらarduinoで簡単にできる!と思ったのですが・・・

シリアルでモニタリングしながら挙動を逐一検証したところ、
前進・後退を行う際に、アナログピンの入力電圧値が何らかの影響を受けて下がってしまうという不具合が発覚してしいまいます。

モータードライバーICに接続しているモーター駆動用の電源は別電源を用意しており、
GNDの接続もメイン回路と接続・非接続の両方を試してみましたが、どうしても何らかの影響を受けてしまうようです。
現在の実力ではこの問題の回避方法が分からないので、
やはり公式被弾センサを作ることにしました。




th_CIMG1137.jpg
左が公式被弾センサの被弾パートを抜粋したもの。
ちょっとずつやって基盤にするのに延べ1週間ぐらいかかっています。
半田付けとそのやり直し(配線のデバッグみたいな作業)にも追加で2日かかってしまいました。
生まれて初めて「回路図を見て基盤に半田付けする」という貴重なプロセスを体験したので、
かなりの経験値を稼ぐことができました。

右がVS-C1をドッキングさせるためのarduinoシールド。
VS-C1は販売在庫もないようで、すっかり時代遅れになってしまった感があります。
デジタルピンの配線やりなおし等に、早速購入した『はんだシュッ太郎』が大活躍しました^^



th_CIMG1138.jpg
裏側の配線。汚いですが私の実力ではこんなものです。
けっこうパズル的で、パーツと配線を綺麗に並べようとする努力は、カルネージハートのチッププログラミングを思い出します。
綺麗に並べようとするのですが、結局最後は被覆ケーブルでエイッと強引に接続してしまってます。



th_CIMG1141.jpg
arduino とシールドのドッキング風景。
シールド基盤と被弾センサ基盤は、電源と信号線の3本線で接続する予定です。




VS-C1での遠隔操作、砲塔のサーボ動作まではなんとかシールド製作&プログラム組み込みができました。
スケッチは後ほど公開しようと思います。




部分部分はうまくいっているように思えても、いざ全体を組み合わせると予想外の問題が出てくること請け合いです。
予想外の問題への対処は、「解決に時間がかかることを見越して完成予定日を繰り上げる」という手法がありますが、大会までにロボットに使える予定だった時間は本業の都合でほぼ消滅してしまいました。あわわ。

ROBOXERO(73) リンクがわかりたい
2012年10月08日 (月) | 編集 |

前回の練習会の時に「トルクをあげるために」とか「リンク機構」とか「ギアで連結」云々の話が出ていました。
2つのサーボを機械的に協調させることで、パワーをアップできる、というイメージは湧くものの、
具体的にどうすればよいか分かってみたいと思います。




ロボゼロの足は、片足だけでピッチ軸が4つもあります。
すべてのサーボが協調すれば、たしかにトルクがアップしそうな気がします。
正直トルクの定義もよくわかっていませんが、腑には落ちるのでOKです。




まず、ギアで強化する件。
これはたぶん原理的にはこういう事かと思います。

ギア1
↑この図で青い棒と青いギアが固定されているとすると、
緑の軸に対して、一方の青い棒を曲げると、もう一方の青い棒もギアでリンクするので同じ角度だけ回る。


ギア2
ところで、ロボゼロの膝関節は二重関節。
灰色のパーツがサーボで、赤い部分がサーボの回転軸。


ギア3
サーボとギアを組み合わせれば、ロボゼロの二重関節は1個で足りてしまうことがわかります。
もちろん、2つの関節が常に同じ角度でしか動けないという制約はついてしまいます。
1個で足りるところを、2個のサーボの協調にすれば、トルクの向上が期待できます。
そして、サーボ一個あたりの負荷を分散できるので、ギアなしよりギアありの方がパワーが出る!
・・・ということだと思います。




次にリンク機構の件。
「平行リンク」というものを応用するのだと思いますが、
平行四辺形の動きと足の動きがどう関係するのかが頭の中でボンヤリとしています。

そこで実例を見てみる事にしました。

12.jpg
Robovie-nanoの例。一瞬??となりましたが、冷静に見るとわかりやすいリンク機構です。


次に、吉野のロボットさんのUNIのリンク機構。足の動きと平行四辺形の関係がより明快になっています。




つまり二足歩行で使われる「平行リンク機構」とは、

リンク1
こういう感じに、サーボ1個で平行四辺形を動かすしくみらしいことが分かります。
(下の青い棒はサーボケースに固定。左の緑の棒はサーボの回転軸に追従。)

リンク2
さらに、リンクとギアを組み合わせれば、
ロボゼロの4つのサーボを使っている足のピッチ軸の動きを、
サーボ1個でほぼ再現できてしまうことも分かります。
(あくまで理屈上の話で、本当にそうするとトルク不足になったりユパユパしたりするとは思います。
 そもそも、足を前に出せないので歩けなくなります。)

逆に言えば、ロボゼロのサーボ数をそのままにリンクさせてしまえば、
屈伸のトルクを大幅に向上させることができそうに思えます。




リンク機構の効果として、
・サーボの数を減らして軽量化・廉価化・省エネ化・IOポートの節約ができる。
・サーボの数を変えずに、または増やして、トルクやスピードの向上ができる。
という二つ効果が出る事がわかります。

リンク機構のデメリットとしては、
・機構を追加した分、重量が増える。
・サーボの協調をプログラムでしっかり制御しないと、サーボがロックして故障を招く。
・技術的なハードルが若干上がる。
ということが挙げられると思います。




ロボゼロにおける現実的なリンク機構のメリットとしては、
・リンクを使ってサーボ数を減らし、他の軸を追加する。
ということが挙げられると思います。
足のヨー軸追加という将来の野望には役立ちそうな気がします。
・・・いやむりかも。



「リンク機構」というと何となくロボでも上級者っぽいイメージがありましたが、
加工やプログラミングはさておき、理屈は結構シンプルな気がしました。
人間もリンク機構の外骨格的な長ロングブーツを履けば、無電源でパワードスーツっぽい効果が出るような気がしますし、そういうのをすでにどこかで見た気もします。




リンク機構の面白さに気づいたところで、
こんなに効率がいいのなら、自然界の中にもきっとあるだろうと思い、
人間の足の中もリンク機構になっているのかな?と想像してみたのですが、筋肉がのびたり縮んだりして動かしているので、たぶんリンク機構ではないっぽいというか、むしろリンク機構の逆です。




そういう目で見ると、パワーショベルの方が人間ぽいことに気づきます。
油圧らしき部分とアームの鉄骨部分の関係が、筋肉と骨の関係そっくりな感じです。





俄然「油圧」に興味が出てきてしまいます。
当然、奥深いラジコン界には油圧関連製品が山ほどあるに違いないと思い、
さっくり検索してみたところ、トップヒットは100万円のドイツ玩具でした!
LIEB HERR574 1/15 ドイツ究極の油圧

外を散歩していると、ついついパワーショベルに目がいくようになりました。
見かけるパワーショベルはどれもほぼ同じような機構になっていて、効率的にかなり定番化した形なんだなということも分かりました。

リンクの話のつもりが最後は油圧萌えという、妙な脱線をしてしまいましたが、
メカトロの分野も楽しいですね!

ROBOXERO(72) ユニバーサル物理コントローラ
2012年10月05日 (金) | 編集 |

子供の運動会シーズンで土日がロボに使えず、いろいろと滞っております。




ザクやジムの面白い点として、
装備をハンドにマウントすることで、ユニバーサルな規格を実現しているところが挙げられますが、
ホビーロボでも近いことができないかなと考えています。




ゼロタンクの当初の構想は、
右ハンドで掴んだジョイスティックでタンクの操作を行い、
左ハンドで握ったガンのグリップのスイッチでガンの発射を行うものでした。

オモチャとはいえ、ガンを扱うものなので、さすがに物理操作では安定性に不安が出ると思い、
電子信号式に決定したという経緯がありました。




ゼロタンクでは角度のコマンドをデジタルデータとしてarduinoに読み込み、
角度の数値によって分岐させ、キャタピラやガンを操作させていました。
ロボゼロから受け取った信号を、arduinoを通じて出力できるので、
「ユニバーサル化」はその時点で達成できているともいえます。




ホビーロボを使って、さらに、arduinoすら介さずに
ユニバーサルな情報のやり取りができたら面白かろうと思いました。

「角度による分岐」を利用して、
ハンドユニットによる物理入力ができないか、という考えです。




そうこう考えるうちに、
「ロボットによる物理入力を、再び電子信号に置き換える装置」
が一つあればよい、ということが分かってきました。
(すでに存在していたらすみません。)




その信号の方式なのですが、
今のところ夢想しているのが、
ハンドその1で自転車のブレーキのような形態のボリュームをコントロールし、
ハンドその2で入力を決定するという方式です。
初期のタイプライターが確か、ダイアルで選んで、プッシュして入力するタイプだったと思うので、それと同じです。
これならサーボで動くカニ状のハンドさえあれば使えます。
でもKHRシリーズにはたぶんカニハンドがなかったと思います。

・・・今日の夢想はこれまで。