Knowledge | ||||||
SANWA ProBo
三和電子さんが発売している、「新コンセプトのロボット専用コントローラー ProBo」の紹介と、H8/3664で解析するソフトウェアのサンプルです。 ボタン+スイッチ操作、そして無線の方は、27MHz帯12バンド全部内臓という、実はクリスタルをたくさん購入することを考えると、けっこうお買い得感があるコントローラです。
2005/04/27 |
静岡ホビーショー このリモコン、VSTONEさんの鉄人28号のコントローラにも採用されているものです。 値段は、VSTONEさんのホームページで確認したところ、税込み\31,500で(ここにあります。 なぜかオンラインショップの方から入ると表示できないような気が…)、8ch、クリスタル交換不要で12バンド対応ということを考えると、結構、お買い得な感じがあります。 27MHz、8chラジコンプロポベースにスティック操作ではなくキー操作になっており、12種類の周波数設定をクリスタル交換なしで行え、 シリアル出力ということで、何かと特徴があるリモコンでおもしろそうです。また、デザインも手になじみやすいデザインになっています。 SANWA
"ProBo" 操作は、操作面の上の方についているスイッチで行い、下の方についているスイッチはバンド切り替え用のものです。 LEDはブルーでなんだかかっちょいい!コントローラ形状も、全体的に丸みがあって手によくフィットします。 送信器
左上に8方向キー風のボタン、右上には4方向+真中風のボタン、中央には4つのスライドスイッチと電源スイッチがついています。 このスライドスイッチ、左側の2つは3ポジション、右側の2つは2ポジションになっています。 最初、「どうして右側のスライドスイッチは2ポジションなんだろう〜」って思っていたのですが、 キー操作割り当てを考えていた時に、理由を思いつきました(もし違っていたら、SANWAさん、ごめんなさい)。 左手は方向キーで、割と指を添えっぱなし、右手は比較的動かす方だと思います。 そうすると、ROBO-ONEで格闘時は、右手は右上ボタン以外の操作もやりやすいけど、左手はなるべく離したくないかなと。 そんなわけで、忙しく操作している時でもオペミスをしにくいシンプルな2ポジション(上か下にスライドさせるだけなので、オペミスしにくい)スライドスイッチを右側に配置し、 逆に、デモモード、トーナメントモードみたいな切り替えを行うような操作を左のスライドスイッチ割り当てるような使い方をすると、ちょうどよさそうです。 中ほどには、スイッチと液晶、LEDがついています。このスイッチはバンド切り替えをするためのスイッチで、 液晶には現在設定されている周波数等が表示されます。このセットだけで12バンド対応なのでクリスタルを購入する必要が無く、ありがたいです。また、電源を入れると、LEDがブルーに光ります。 また、アンテナは、脱着式で、ねじって装着します。厚みも、普通のプロポぐらいなので、スティックが無い分、収納性はいいです。
受信器 受信器も、かなり小型です。比較写真で、H8/3664と比較してみました。これで12バンド内臓とは恐るべし。 上面には、ロータリースイッチが2つと、3Pのピンヘッダが1つついています。 このロータリースイッチを回すことで、受信周波数が切り替わります。 また、3Pのピンヘッダは、「信号出力」、「+5V入力」、「グランド」となっており、サーボ等のピン配列と同じです。
さて、特徴としては、出力がシリアルなわけですが、シリアルといっても、いわゆるRS232Cのようなシリアルではありません。 1線で8ch分の信号出力を行うようになっています。受信器のFF回路前を解析したことがある方はご存知かもしれませんが、アレです。 0.4msのHIGH時間があって、その後、スティックの位置に応じた時間分だけLOWになり、CH1から逐次出力してくるものです。 Knowledgeのプロポをマイコンで制御にて解説している信号とよく似ていまして、 チャネル数が8になり、最後の0.4usの信号変化が無く、全体の周期が24msになったものになっています。 1つの信号最大長は1.9msなので、1.9ms*8 = 15.2msになります。 全体周期は24msですので、少なくとも約9msはアイドルな時間が存在することになり、プログラムでここを判別すれば割と簡単に信号取り込みできそうです。 そのため、マイコンのポートを1ポート使って時間をチェックするだけで解析をすることができます。マイコンのポートを1つしか使わないので、SIPHA COREにはうれしい仕様です。 ちょっと信号取り込みプログラムを作ってみたのですが、今までR/C受信機の信号取り込みプログラムを書いたことがある人なら全く問題無い感じです。 また、明日にでも、実際にどんな信号が出てくるか?という話をアップしますので、お楽しみに!
| |
2005/04/28 |
"ProBo"信号仕様
この絵でわかりますように、8ch分の信号を、パルス幅で表現してシリアルで出力しています。 要点をまとめると、以下のようになります。
キー操作とチャンネルの関係
という感じで、各キー操作が8ch分の信号になって出力されます。そんなわけで、この信号解析をするには、以下のようなアルゴリズムになると思います。 まずは、最初の図で言うところの右側の"L"が長い区間を検出します。 これを検出できたら、0.4msの"H"時間を確認し、後の"L"時間をカウントします。 これを8回繰り返して各ボタンの状態を作り出せばいいことがわかります。 "L"の長い区間の検出ですが、1信号あたり最小が1.1ms、最大が1.9msなので、区間最長ケースで 24ms - 1.1ms * 8ch = 15.2ms、最短ケースで、24ms - 1.9ms * 8ch = 8.8msとなります。 というわけで、これぐらいの期間、信号が"L"になっていたらそこを、この区間と判別すればよさそうですね。 これに加えて、各パルスの幅チェックをして、異常だったらまた「長い区間を探す」ような処理にしておき、さらに2回連続で入力された正とするような処理を入れたら、よりいい感じですね! 何はともあれ、これで、H8/3664の少ないI/Oポートを節約することができます。うれしいな〜、4chプロポを普通に繋ぐのと比べると、3つも何かコントロールできるようになります。 明日はいよいよサンプルプログラムです。 ROBO-ONE
DVD到着 こうやって映像で連続で見ると、いろいろ発見があります。 実際に会場でロボットの動きを見ていると、移動速度とか機動性の相対比較ってうまくできなくて、 「ああ、なんかあのロボット速かったな〜」ぐらいにしか感じ取れないんですが、こうやって連続で、しかも同じ視点で見ていると、その差がはっきりと見えてきます。 う〜ん、やっぱりG-Tuneは動きがまだまだだな〜。 スペックなどの基本的な問題もあるのですが、やっぱりしゃがみに近い状態で動き回っているのは、スピードの点ではマイナスですね。 次期G-Tuneのコンセプトとして「倍速G-Tune」というのを考えているのですが、動作コンセプトそのものも見直してみたいと思います。 よし、さらにDVDを見まくって研究だ!
| |
2005/04/30 |
AKI-H8/3664によるサンプルプログラム サンプルプログラムの処理手順は次のようになります。
サンプルプログラムは、ここからダウンロードしてください。 さ〜てと、どのキーをどの操作に割り当てようかな〜。
|
SISO-LAB Knowledge