●DMD( VS−RCV3用 ) 実験 超信地旋回版
はじめに・・・ 「 TBV型メーサー 66式殺獣光線砲タンク 」での試行が、いい感じでしたが、 別の筐体へ向けて、試行プログラムでの基板を組み込んで実験する事にしました。 【 学研 大人の科学シリーズ メカモ・センチピード 】本体のみ
→ 古いものですので……… 動くかしら (^^?
・ ・ ・ ・ ・
●使用PIC(16F819)のSPI通信ピン配置です。 【 PIC16F819 】(マスタモード) ●:SPI通信ピン ___________________ _____________________ | V | | | 【左】MP4212G<-+ 1 RA2 PORTA(BIT2) | PORTA(BIT1) RA1 18 +->【右】MP4212A 【左】MP4212E<-+ 2 RA3 PORTA(BIT3) | PORTA(BIT0) RA0 17 +->【右】MP4212C 【左】MP4212C<-+ 3 RA4 PORTA(BIT4) | PORTA(BIT7) RA7 16 +->【右】MP4212E -+ 4 RA5 PORTA(BIT5) | PORTA(BIT6) RA6 15 +->【右】MP4212G 0V -+ 5 Vss (-) | (+) Vdd 14 +- 3〜5V+ 【左】MP4212A<-+ 6 RB0 PORTB(BIT0) | PORTB(BIT7) RB7 13 +- DAT->シリアルデータ・イン >-+ 7 SDI●PORTB(BIT1) | PORTB(BIT6) RB6 12 +- CMD<-シリアルデータ・アウト<-+ 8 SDO●PORTB(BIT2) | PORTB(BIT5)●RB5 11 +->スレーブセレクト-SS -+ 9 RB3 PORTB(BIT3) | PORTB(BIT4)●SCK 10 +->シリアルクロック-CLK | | +------------------------------------------+
・ ・ ・ ・ ・
●配線図です。……… クリックすれば、拡大します。![]()
・ ・ ・ ・ ・
●DMD(VS−RCV3レシーバ用)実験版 試行プログラムです。 多足型駆動は、超信地旋回が似合いそうです。 -------------------------------------------------------------------------------- ・VSC3DMD03( VER 0300 ) ( ●超信地旋回あり X信地旋回なし ●旋回あり ) → VSC3DMD02を流用して機能変更しました。 -------------------------------------------------------------------------------- ・VSC3DMD04( VER 0400 ) ( ●超信地旋回あり ●信地旋回あり X旋回なし ) --------------------------------------------------------------------------------
・ ・ ・ ・ ・
●この試行プログラムで、様子をみます。 -------------------------------------------------------------------------------- ・VSC3DMD05( VER 0500 ) ( ●超信地旋回あり ●信地旋回あり ●旋回あり ) 何故か、この段階で、プログラム内でのテーブルサーチが不安定になった感じで、 フリーズ事象が発生しましたので、該当のプログラム内テーブルを取り除いて、 この処理機能部分を通常のプログラム文法記述に切り替えました。 → プログラムステップ数は増えましたが… 仕方ないですね (^^; --------------------------------------------------------------------------------
●DMD操作指示エリアです。… クリックすれば、拡大します。![]()
・ ・ ・ ロボット専用コントローラ [VS-C3]からの操作方法です。 ・ ・
●ステイックとボタンの使い方です。 ------------------------------------------------------------------------------ ・アクセル・ギヤ ………………【左側】ステイック ・前 進 : 上方向 ・停 止 : 中央 【 ニュートラル 】 ・後 進 : 下方向 ------------------------------------------------------------------------------ ・ステアリング …………………【右側】ステイック ・(右)超信地旋回 : 右方向 (最右端) ・(右)信地旋回 : 右方向 ・(右)旋回 : 右方向 ・直 進 : 中央 【 ニュートラル 】 ・(左)旋回 : 左方向 ・(左)信地旋回 : 左方向 ・(左)超信地旋回 : 左方向 (最左端) ------------------------------------------------------------------------------ ・自動走行 ………………………【前側】ボタン ・前進【自動】(ON) : L1 ボタン……(左) ・後進【自動】(ON) : L2 ボタン……(左) ・走行【自動】(OFF): R1 ボタン……(右) OR R2 ボタン……(右) ------------------------------------------------------------------------------ *プログラムからの設定により、強制的にアナログモードで固定します。
●ステイック操作
・ ・ ・ 使用する ボタン情報(2バイト)、 ステイック情報(4バイト)です。 ・ ・
●ボタン情報(2バイト) ------------------------------------------------------------------------------ ・バイト4: 未使用 ………【左側】エリア・【中央】エリア ------------------------------------------------------------------------------ ・バイト5 DAT応答電文 ボタン区分 ボタン 'FF' → 50 : 押下なし ………【右側】エリア・【前側】エリア 'EF' → 55 : R1 ……………【前側】エリア 上段(右) 'DF' → 56 : L1 ……………【前側】エリア 上段(左) 'BF' → 57 : R2 ……………【前側】エリア 下段(右) '7F' → 58 : L2 ……………【前側】エリア 下段(左) ------------------------------------------------------------------------------
●ステイック情報(4バイト) 現状のLSBでは設定が難しいので、MSBへ変換(上下位ビットの入替)してから処理する。 DAT応答電文(MSBへ変換後) ステイック情報 ------------------------------------------------------------------------------ ・バイト6 : 最左端(0)〜中央〜最右端(255) @【右側】水平(左右)軸 ・バイト7 : 未使用 ・バイト8 : 未使用 ・バイト9 : 最上端(0)〜中央〜最下端(255) C【左側】垂直(上下)軸 ------------------------------------------------------------------------------
・ ・ ・ ・ ・
●自動(前進・後進)走行機能を組み込みました。 この機能により、長い直進走行などで、手放し操作ができますので便利になります。 ------------------------------------------------------------------------------ ●自動走行 ……………【前側】ボタン ・前進【自動】(ON) : L1 ボタン……(左) ・後進【自動】(ON) : L2 ボタン……(左) ・走行【自動】(OFF): R1 ボタン……(右) OR R2 ボタン……(右) ------------------------------------------------------------------------------ ●自動走行モードの基本的な考え方 ・自動走行モードの実行(ON)は……… ・疑似的に、前進または後進のステイック操作の状態にする。 ・解除(OFF)されるまで適用される。 ・停止ギヤ(ステイック位置)の状態下のみ、 自動走行モードの実行(ON)ボタン操作で適用される。 (留意点) ・自動走行モードの実行(ON)が適用されている状態でも……… → ステイック操作(前進・後進)が最優先され動作する。 ------------------------------------------------------------------------------ ・自動走行モードの解除(OFF)は……… ・自動走行モード(ON)を、解除(OFF)した状態にする。 ・実行(ON)されるまで適用される。 ・停止ギヤ(ステイック位置)の状態下のみ、 自動走行モードの解除(OFF)ボタン操作で適用される。 ------------------------------------------------------------------------------ ギヤ 疑似的なステイック位置 自動走行モード 区分 (アクセル・ギヤ) 1 …………………… 前進 ……………… 1:実行(ON) 0 …………………… 停止 ……………… 0:解除(OFF) 2 …………………… 後進 ……………… 1:実行(ON) ------------------------------------------------------------------------------
・ ・ ・ ・ ・
【感想】 生き物のような複雑な動きで、32本の足を駆動させて動作しました。(^^)
・ ・ ・ ・ ・