FC2ブログ

ぱぱっちの私事で恐縮ですが

ぱぱっちの日常の出来事で、何か皆さんのお役に立てそうなことがあったら、日記に書こうと思っています。

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
わんだほーのときに解説のアニメイダーさんはいつもよく見てくださっていて(ありがとうございます!)、今回もあまり活躍のないFUGAKUに対していつもと「コントローラーが違う、コントローラーが自作だ」と注目してくださいました。
そうです、今回からコントローラーをパソコン(キーボード)からタブレット(ゲームコントローラー)に変更しました。
しかしながら、わんだほー当日は作りかけでバグだらけだったのですが、このほどやっと次回大会用が出来上がりましたので、公開するとともに少し仕組みを説明します。

そのまえに、ここまでのコントローラーの経緯と選択の理由を少し。

そもそも、パソコンのキーボードで操作しようと思ったのはロボゼロを「プラレス3四郎」のプラレスラーに見立てたからですが、ロボゼロの場合この方式には合理的な理由があります。
1.コントローラー(パソコン)とロボゼロがちゃんと接続されたか、パソコン上に接続結果を表示できる
2.ゲームコントローラーの場合、どのボタンが押されているかをロボット側で判断・処理しなければならないが、ロボゼロの姫路CPUボードは処理速度が遅いので負担になる。パソコンをコントローラーにすると判断はパソコン側でできるので、ロボゼロの負担にならない。
3.キーボードならキーがたくさんあるので、多くのモーションを別々のキーに割当てられる。(格闘ゲームみたいに、コンボコマンドにしなくて良い。コンボコマンドはCPUボードの負担になる。)
一方デメリットは、
1.パソコン自体が大きくて重く、試合等では結構負担になる。(今までは駅弁販売方式だったり、カメラの三脚固定方式だったりしましたが、どれも一長一短でイマイチ。)
2.ゲームコントローラーの方がキーボードより直感的に操作できる。(私はゲームはあまりやらないしブラインドタッチができるので、そこそこキーボードが優ると思ったのですが、やっぱりゲームコントローラーの方がわかりやすい。)

なら、ゲームコントローラーとパソコンのイイトコどりを狙えば良いということで、パソコンをタブレットに置き換え、タブレットにゲームコントローラーを接続という発想になりました。
なづけて”ハイブリットコントローラー”です。
IMG_1311.jpg

新コントローラーの構成は
1.Windowsタブレット(Lenovo miix2 8)・・・8インチのタブレットです。


2.のびーるコントローラー

3.シェアウエアのJoyToKey

Windowsタブレット上のプログラムはMicrosoftのExcelで作成しています。(もちろんプログラム開発用の言語が一番良いのでしょうが、古い人間の私にとってはExcelのVBAが一番生産性が高いので。)

のびーるコントローラーにしたのには理由があります。
無線のゲームコントローラーはBluetoothの物が多いのですが、ROBO-ONEに出場する場合、電波は「日本国内で使用できるもの」となっていますので技適を取得しているものでないとダメですが、タブレット用のコントローラーは外国のもののばかりで技適が取得できているのか怪しい物ばかりです。
のびーるコントローラーは技適取得済です。
またWindowsタブレットは8インチまでです。10インチになるとのびーるコントローラーには大きすぎて挟むことができません。(9インチタブレットは売っているのを見たことがない。)

そしてなぜ”ハイブリット”と銘打ったかというと、のびーるコントローラーのボタン以外にタブレット上にボタンを表示して画面のタッチでも操作できるようにしたからです。
これでキーボードほどではないですが、画面にスペースがあるかぎりボタンを自由に増やすことができます。(もちろん配置も自由!)
また、画面上のボタンにはモーション名が記載できますので、普段あまり使わなくてボタン配置をおぼえていないモーションであっても画面を見て直感的に選択できます。

さて小技ですが、miix2 8はのびーるコントローラーに対して厚さが薄いので、発泡素材の板に表面加工がされたものの5mm厚のものをmiix2 8と同じ大きさに切ってのびーるコントローラーに一緒に挟みこむようにしました。
IMG_1312.jpg

また、のびーるコントローラーをWindowsにただつなげただけですとJoyToKeyでアナログコントローラーが片方しか割当てられないので、設定画面でアナログコントローラー2つを色々動かしながら別々の場所に割当てられるように設定し直す必要があります。

一方、タブレット側のプログラムですが、ひとつ未解決の困ったことがあります。
それはExcel VBAでは画面タッチで押しっぱなしを識別する方法がない(本当はあるのかもしれませんが、見つけられなかった。)ので、画面上のボタンを押しっぱなしにすることができません。(ちなみに、マウスボタンなら押しっぱなしはできます。)
ですので、押しっぱなしが必要なモーションや操作の確実性を求められるモーションはのびーるコントローラーのボタンに割当て、押しっぱなしが不要なモーションや落ち着いてゆっくり操作できる場合のモーションをタブレットのタッチ操作に割り当てるようにしています。
スポンサーサイト
わんだほーで動きがおかしかったロボゼロですが、電源周りのトラブルがいくつか起きているような気がしたので順番にいろいろ調べてみたところ、新パターンのトラブルがいくつかありました。

1.電池のショート
電池自体はロビ用を使用しているのですが、多分ロボゼロ用でも似たようなことが起きるのではないでしょうか。
特定の方向の姿勢をさせた時だけ電源が切れてCPUボードが再起動します。多分どこかでショートしているのでしょうがどこだかわかりません。
電池を交換すると起きる時と起きない時があるので電池側の問題だろうと予想して、思い切って電池を分解していみました。

※電池の分解は危険ですので自己責任でお願いします。
IMG_1307.jpg

電池から出ているコードのGND側の被覆が少し伸びて根本がむき出しになっています。(写真の上側の赤丸の部分)
どうもこの部分が下側の赤丸の部分(おそらく7.4V側)に接触してショートしているようです。
下側の赤丸の部分に絶縁用のゴムを張ってから電池を元通りに包装してプラテープで止めたところ再起動がなくなりました。

2.電源用コードの消耗??
修理した電池以外の電池でも極稀にCPUボードの再起動が発生します。安定化電源だと発生しません。
安定化電源接続用のコードは電池と選択式の二股になっているのですが、どうもこの電池側のコードが怪しいです。
テスターで測定しても通電しており断線した様子はありません。
思い返してみると簡単な動作の時は再起動が発生しませんが、サーボがたくさん動作している時に発生しているような気がしますので電流不足の可能性があります。
この怪しい方のコード(写真の下側)は実は3A用でして、もしかしたら消耗して抵抗値が変わっているもしくは完全に断線したわけてはないけれども実質的に細くなっている可能性があります。
これを6A用(写真の上側でとぐろを巻いているやつ)に交換したところ再起動が発生しなくなりました。
ただ、見て分かる通り6A用の方が太くて重くて柔軟性もないのでデメリットの方が多いのですが、安定稼働させるにはやむを得ないです。。。
IMG_1313.jpg

この他にも安定化電源用のコードのコネクタが断線しかかっていました。(これはモーション作成時に引っ張られて断線してしまうのであって、今までもよくありました。)
あと、やけにサーボが焦げ臭いなぁと思っていたら、ある日肘のサーボが動いたり動かなかったりしていたのでサーボを開いてみたところ、焦げ臭い(笑)信号線が断線しかかっていました。
ずいぶんサーボの配線には気をつけて断線しにくい取り回しにしたつもりなのですが、いつまでたっても断線は減りませんね。。。

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。