●( IOM )オムニ4輪 実装@【 まとめ 】
●試行錯誤の繰り返しで、どのように仕上げたのか ? ・試運転後に … 追加した機能などを、まとめながら、振り返ります。
・ ・ ・ ●オムニ( 4輪 )駆動の軌道イメージ ・ ・
●( 前後 ・ 左右 ) 移動 ・ 旋回 などのアクション
→ オムニホイール特性 ( 斜め・平行 ) 移動機能を取り除いています。
・ ●各送信機の基本操作イメージです。 ・ ・ @ スマートホーン ・ A PS2 コントロ−ラ ・ B PS3 コントロ−ラ ・ C テレビ リモコン ・ D 赤外線リモコン
@ スマートホーン *Webブラウザを使用しますので、パソコンからも利用できます。
【フルオペ】……… フルオペレーション
・ ・ ●下部へ、各操作パネルが続きます。 ・ ・ ・ボタン押下で … 先頭位置から表示されます。 ・
●【MP3】ボタン … MP3プレイリスト![]()
・ ・ ●他に、用途に応じた … ・ ・ コントローラの操作パネルがあります。 ・
●システムパラメータ指定で、選択ができます。
【砲塔なし】……… 砲塔操作(なし)パネル 【スタンダード】… 砲塔・MP3操作(なし)パネル 【シンプル】……… 汎用操作パネル
・ ・ ・ ●【SYS】ボタン … システムパラメータ ・ ・
●物理的なDIPスイッチからの設定が増えましたので 大半の設定をスマホ画面から入力できるようにしました。→ 設定値は、EEPROM領域に書き込みます。
●システムパラメータの設定です。 *Taka袋式コントローラは、接続予定です。![]()
・ ・ ●PSコンローラに ・ ・ 「 かんたん操作 」モードの機能を新設しました。 ・
●孫に、操作させましたが … ・操作途中で、反応しなくなりました。 (原因) ・スマホ操作切り替えボタン【 SELECT 】を押下して スマホへ操作権が移ったからです。 この機能は、ブログラミングの勉強が 目的でしたので廃止することにしました。 ・ゲーム感覚で、スティックとボタンを押下して 動作反応を観て、操作方法を取得しているようでしたので お手軽な「 かんたん操作 」ができるようにしました。 ■当該機能の選択は、スマホ画面から設定できます。
@フルオペ …(ボタン・スティック)操作できる。 Aかんたん … スティック操作のみできる。
・ ・ ・ ●IOT接続での … 操作画面パネルです。 ・ ・
●パソコンのWebブラウザー(Microsoft Edge)で表示しています。■パソコンのモニターでは、両画面が使用できます。 【左側】の大きめな 画面は … パソコンで使用します。 【右側】の小さめな 画面は … スマホで使用します。
●最下段に … 新たな ボタンを付け加えたパネルです。
→ テレビ(リモコン)のボタンですが …
・ ・ ・ ●コントロ−ラ と リモコン です。 ・ ・
A PS2 コントロ−ラ
→ VS-C3(PS2非互換)ですが … プロトコルは、PS2仕様に類似していました。
B PS3 コントロ−ラ
→ VS-C3(PS2非互換)のコントローラと同じ使い方にしています。
C 赤外線リモコン( NECフォーマット ) 【 オブトサプライ赤外線リモコン OE13KIR 】
・出力信号形式は … 「 NECフォーマット 」準拠です。
D 赤外線リモコン( 自宅で使用 )
・ ・ ・ ●スマホ操作指示の仕様 ・ ・
![]()
●車体の直進方向位置の見直しに伴う … GPIOピンの出力パターンです。![]()
・ ・ ・ ●プログラムの主要項目 ・ ・
//******************************************************** //【Taka袋(IOM)ネット】●オムニ4輪【A】実装@プログラム // ESPマイコン(ESP32): ESP32-OMNI4-IOM-A-07 //********************************************************
■ESP-WROOM-32 開発ボード(秋月電子) ■Taka袋(IOM)ネット ・インターネット ・イントラネット ・無線LAN ■通信 ・Wi-Fi通信 ・Bluetooth通信 ( BLE:Bluetooth Low Energy ) ・赤外線通信 ・SPI通信 ・UART通信 ■プログラム言語 ・Sketch ( C/C++ をベース ) ・HTML ・PHP ■開発環境 ・Arduino IDE ( Windows 10、11 ) ■コントローラ ・スマホ ( Web ブラウザー ) ・パソコン ( Web ブラウザー ) ・ゲームパッド *1 ・テレビリモコン *1 *1 インターネット接続時は、IOM電文(書込み)支援機器を使用する。
●ESP32本体のMACアドレスについて(5種類) (サンプル) *1 @DEFAULT = 48:E7:29:A3:C0:5C … ディフォルト *1 AWI-FI STATION = 48:E7:29:A3:C0:5C … WI-FI ステーション BWI-FI SOFTAP = 48:E7:29:A3:C0:5D … WI-FI アクセスポイント *2 CBLE(BT) = 48:E7:29:A3:C0:5E … BLE(BT) DETHERNET = 48:E7:29:A3:C0:5F … イーサネット ------------------------------------------------------------------ ■通信方式に合わせて、該当のMACアドレスを使用する。 *1 … WI-FI通信、ESP-NOW通信 *2 … Bluetooth通信 ( BLE:Bluetooth Low Energy )
・ ・ ・ ●PS3コントローラのスティック仕様 ・ ・
![]()
・ ・ ・ ●システム・パラメータ仕様 ・ ・
![]()
![]()
・ ・ ・ ●システム・パラメータ一覧 ・ ・
![]()
■DIPE 設定画面表示 ・物理スイッチ(入力)対応したので … EEPROMの値は、適用しない。 ■DIPF 赤外線(放射先) ・新規機能で使用予定です。
・ ・ ・ ・ ・
●【 ESP-WROOM-32 開発ボード 】GPIOピンの用途です。 … クリックすれば、拡大します。![]()
・ ・ ・ ・ ・
●配線図です。……… クリックすれば、拡大します。![]()
●「 オムニ4輪独立駆動車 」の搭載回路です。……… クリックすれば、拡大します。![]()
・ ・ ●色々な機能を、組み込みましたので … ・ ・ 全体的な電気消費量が、増えそうです。 ・
●電源投入時とWi-Fi接続時に、電力消費が大きいかも? ・Wi-Fi待機時 (160mA) ・Wi-Fiアクセス時(300mA) ・リセットの瞬間(600mA) ・他に、ギミックやモーター4個を同時に稼働など …
特に、瞬間的に大きな電力を消費する感じで 電源投入時の突入電流が2A超の可能性もあり 電力供給方法や消費設定に工夫しました。
・ ・ ●電力供給の方法を工夫しました。 ・
●LIPOバッテリー ( 7.4 V ) を直接接続する。 5V・電源( 19ピン )経由のレギュレーター( AMS1117-3.3 )は 「 電圧 - 入力 ( 最大 12V ) 」ですので LIPOバッテリー ( 7.4V ) を直接接続しています。
・ ・ ●電力供給量を増やしたいので、工夫しました。 ・
●(3.3V・1A)レギュレーター経由の電力と並列接続する。 LIPOバッテリーから(3.3V・1A)レギュレーター経由で 3V3・電源(1ピン)に接続して供給を増量(+1A)しています。 【接続構成】![]()
●ESP32本体へスケッチを書き込む時に … 邪魔な接続になるので、取り除きました。
・ ・ ●電源(ON)時の自動起動について ・
●GPIO-0 ピンが … 内部的にプルアップされているので ・電源(ON)すれば、自動的に起動されます。
●当該基板の構成では … NGです。 ・当該基板のGPIO-0 ピンは、テレビリモコンの接続利用により 「 プルアップされていない 」条件下になっており → 自動起動されない環境になっています。 ( 対応策 ) ・RSTボタンを押下して、再起動させています。
・ ・ ●電力消費量を減らしたいので、工夫しました。 ・
●電源投入後の起動が不安定なので … ■事象 … ESP32搭載回路で発生 ・バッテリー駆動での試行回路の実装時に、電源投入後の初期起動ができない場合は EN(リセット)ボタンを押下して、起動させていましたが この操作でもスムーズに起動せず、不安定な状態になりました。 ■原因 ・バッテリー駆動の回路に、新たな電力供給回路のDCコンバータ(5V-0.5A)を 増設したことにより、起動時に必要な電力需要量が増加していますので 許容値を超えたのが要因と想定されます。 ■対応 … 低電圧駆動できる設定にする ・バッテリーからの電力供給を増量させる方法もありますが 現状の回路のままで、コンパイル時の設定を変更します。 ・【 Flash Fraquency 】 … フラッシュメモリの周波数
→ ( 80MHz → 40MHz ) 変更する。
*最低2.3Vでも、低電圧駆動ができるようです。 また、起動後は(1.55V)での動作ができそうで、乾電池(2本・3V)での使用も、いいかも
・ ・ ●システム設定画面の表示(ボタン)SWを新設しました。 ・ ・ ・スマートホーン(コントローラ)操作時のみ使用できます。 ・
●専用(黄色)ボタンを押下しながら … プログラム起動すれば、設定画面が表示されます。
■プログラム起動の方法は ・電源(ON)する。 または ・プログラム起動中に … 【赤】RSTボタンを押下します。
●システム設定画面のみ … 表示されます。 基板のLEDが高速点滅して、ボタン入力できる状態です。
→ 続きは … 下にスクロールして表示させます。
(メモ) ・各画面の【SYS】ボタン、スマホ(ショートカット)からも システム設定画面が呼び出せます。
・ ・ ●システム パラメータ(設定)ツール ・
@初期の設定値を …(書き込み)する専用プログラムです。 //******************************************************** //●システムパラメータ(SET)… オムニ4輪駆動設定用G // ESP32マイコン(Arduino): ESP32-EEPROM-PUT-08-06 //********************************************************
Aスマホ画面から … 入力(修正)する専用プログラムです。 //******************************************************** //●システムパラメータ(画面入力修正)… オムニ4輪駆動設定用@ // ESP32マイコン(Arduino): ESP32-EEPROM-GAMEN-UPDATE-01-06 //********************************************************
・ ・ ●IOM接続の場合 ・
■入力タイプ選択( DIPスイッチC <2> )… BIOM ・DIP入力
●操作指示が … 「 LINE 」に、通知されます。
【 LINE Messaging API 】
//******************************************************** //【Taka袋(IOM)ネット】●オムニ4輪【D】実装@プログラム // ESPマイコン(ESP32): ESP32-OMNI4-IOM-D-01-03 //-------------------------------------------------------- //・システムパラメータ(SET)… ESP32-EEPROM-PUT-05 //-------------------------------------------------------- //●LINEツール変更対応 // ・廃止 … LINE Notify // ・新設 … LINE Messaging API //********************************************************
●起動すれば … 「 Gmail 」で、通知されます。
【 Gmail (Google) 】
・ ・ ・ ●Taka袋式コントローラも使えます。 ・ ・
●通信方式は … ESP-NOW通信です。
■組み込んでいるプログラムは … 「 ESP32-TBV-CONTROLLER-01 」です。 ・接続選択( C )… ESP-NOW通信の接続で操作できます。 【 接続選択 】 @ PS4コントローラ → IOM(電文)出力処理 A 赤外線リモコン → IOM(電文)出力処理 B Taka袋式コントローラ → IOM(電文)出力処理 C Taka袋式コントローラ → ESP-NOW・無線接続 D スタンドアローン(当機)・(APA)起動 -------------------------------------------------------------------- ■IOM系の … 各種コントローラ( @ A B )接続を指定すれば インターネット経由での操作もできます。 ・IOM接続された時に 当該Taka袋式コントローラから …「 Gmail 」で、通知されます。
【 Gmail (Google) 】 -------------------------------------------------------------------- ■また、IOM 電文( 書込み )支援機器も同様で ・IOM接続された時に 当該支援機器(変換器)から …「 Gmail 」で、通知されます。
【 Gmail (Google) 】
●PS3 コントロ−ラの設定要領を流用しました。![]()
![]()
・ ・ ・ ●サーボを使用した場合の … ・ ・
●【 ESP-WROOM-32 開発ボード 】GPIOピンの用途です。![]()
・ ・ ・ ●感想 ・ ・
■この筐体自体のクセに合わせた … 結果オーライ的な、設定になりましたが ・動く模型的な … シンプルな操作で動かすことができます。 ・また、各軌道走行パターンに合わせた、それぞれのオムニホイール駆動力の 微妙なバランス調整を設定すれば、当初の想定軌道での走行ができたのでは … ・ホイールの軸止めネジが緩むのは … しっかり、締めなければ ! ■私のようなシルバーマン(高齢者)が … スマホをコントローラにできました。 ・日頃、夜中トイレでの懐中電灯や目覚まし時計として使用しているなど 生活の中に溶け込んでいる「 七つ道具 」の … 身近なスマホを 動く模型の送信機的なコントローラにできましたので、とても感動しています。 ■日常生活で、身近にあるリモコンやコントローラも … ・動く模型の送信機にできました。… ここまで、できるとはビックリです。 @ スマートホーン A PS2 コントロ−ラ B PS3 コントロ−ラ C テレビ リモコン D 赤外線 リモコン E Taka袋式 コントローラ *インターネット接続での操作では …「 PS4 コントローラ 」が使えます。 ・自分好み的な感覚では … 「 PS3 コントロ−ラ 」の操作感が合っています。 ■パソコンからも操作できます。 … Webブラウザー(Microsoft Edgeなど)使用 ・動く模型の指令室的に使えそうです。 … 別途、モニター画面表示できるなど ■Taka袋式コントローラも使えます。 ・Taka袋式の独自仕様でのコントローラです。 … 特定の筐体に組み込めます。 ■「 家ルータ(AP)に接続 」する場合 ・ルータの【SSID】が複数起動していますが、送信側と受信側の接続【SSID】が 合わなくても、双方間で通信接続できいるようで、普通の操作で動きました。 ・同じアクセスポイントのセグメント内であれば、いいのかしら ? ■Taka袋の動く模型(マイコン)に係わる … 基本プロダクトができました。
・ ・ ・ ●最新版 ・ ・
//******************************************************** //【Taka袋(IOM)ネット】●オムニ4輪 プログラム @ // ESPマイコン(ESP32): ESP32-TBV-OMNI4-IOM-01-00 //-------------------------------------------------------- //●システムパラメータ(SET)… ESP32-TBV-EEPROM-PUT-01 // *キャタピラ駆動2輪用 ( ESP32-TBV-EEPROM-PUT-01-DMD ) //-------------------------------------------------------- //●バックアップファイル …… ESP32E-01-8M-DATA-01.bin // *キャタピラ駆動2輪用 ( ESP32E-01-8M-DATA-02.bin ) //********************************************************
●DIPスイッチC選択の用途![]()
・ ・ ・ ・ ・