PICマイコンとステッピングモーターを使ってスローアクションのNゲージ用ポイントマシンを作ろう・・として細々と準備してきたが、レイアウトの台枠が出来上がりつつあるのでボチボチ制御用の基盤とプログラムの準備も開始。
スマホで操作するPWMコントローラ
スマホ/PC/タブレットで操作するNゲージ用のPWMコントローラを作ってみた。
製作中のNゲージ固定式レイアウトは諸般の事情から設置場所を変更して工事進行中。
あっち、こっちと寄り道しながらなので中々完成の道筋が見えないが。
ということで、相変わらずの寄り道。
一応こちらが正面。
車両を動かすコントローラ(パワーパック)はこちらの面に取り付けている。
天板上はすべて見渡せるので運転/操作には支障がない。
で、こちらが背面側になる。
問題は下段ともいえるレイアウトの台枠の脚部分を周回する線路。
正面と背面側をつないだ単なる小判型のエンドレスである。
背面側にもコントローラを接続できるようにしたが、列車が反対側にいるときはどんな状態で走っているのか全く見えない。
音をたよりに脱線していないことを確認するしかない。
で、下段にはカメラを取り付けて走行状態を見られるようにするつもり。
まぁ、カメラはしょうがないにしても、コントローラをつなぎかえる手間はなんとかならんのか?
そもそもこのご時世、家庭内のエアコン、テレビ、照明、空気清浄機、果てはカーテンの開け閉めまでスマホで操作したり、アレクサなどを使って音声で指示できる。
我が家の家電操作、カーテンの開け閉めもほぼアレクサに頼っている。
となると、Nゲージの車両を動かすのもスマホでコントロールできんのか?と思って調べたらトレインテックというものがあった。
ただ、アプリはダウンロードできたが、肝心のハード「TRAIN TECH MFC マルチ・ファンクション・コントローラ」は現在では発売されていないようであった。
じゃ、自分で作ろう!!
PWMコントローラの製作記事をネットで見かけてから、自分なりに改修したバージョンのPWMコントローラをいくつか作ってきた。
これまで作ってきたPWMコントローラ
このPWMコントローラがスマホで操作できればいろんな角度から眺めながら車両を動かすことができる。
ブラウザ経由で操作するNゲージ用のPWMコントローラ
今回作ったブラウザ経由で操作するNゲージ用のPWMコントローラ。
これまで作ったものにはノッチの相当するものとしてロータリースイッチがあったが、今回のバージョンではそれすらもない。
前進/退行を切り替えるスイッチもない。
スマホの操作はWebサーバで受け付けることにした。
Webサーバはシングルボードマイコンであるラズベリーパイ上で動作する。
ちなみに、ポイントなどの転換を制御するコントロールパネルをすでに稼働させるようにしており、今回はそれに機能追加した形。
ラズパイとI2Cレベル変換モジュール
ラズパイはGPIOを経由してI2C通信でPWMコントローラを制御する。
ソフトウェア構成はこんな感じ。
PC上のPWMコントローラ制御画面。
・・動画編集中にプログラムを作り替えたので、この画面は若干違ってるが。
スマホで見るとこんな感じに見える。
これまで作ったPWMコントローラは停車位置を微調整することが難しかった。
そこで、最終的には単純にボリューム一つで微調整ができる市販のPWMコントローラに切り替えることにしていた。
今回のバージョンではスマホをもっていろんなところで操作できることを目指しているのに、停車時は微調整用のコントローラがあるところに戻って・・なんてことは面倒なので・・
停車位置の微調整などはスライダーバーで操作できるようにした。
動画
詳しくは、だらだらと説明している動画を見てください。
アッ!! アレクサ・・
ここまで出来て、フッと思った。
もしかして、これってアレクサからでも操作できるんじゃねぇ!?
アレクサ エコードット
現在、我が家にはアレクサが四人生息している。
SwitchBot ハブミニ。
Wi-fi経由で直接操作できない家電で、赤外線リモコンで操作できるものはこのSwitchBot ハブミニで操作できるようにしている。
SwitchBot ハブミニのリモコン手動登録画面。
テレビのリモコンを手動で学習することができる。
チャンネルは1~12まであるので、各ノッチをダイレクトに割り振ることができる。
チャンネルのアップ、ダウン操作はそのままノッチのアップ/ダウンに割り振ることができる。
電源ボタンを押したら非常ブレーキかな。
肝心のテレビのリモコンからはどんなフォーマットで赤外線がでているのか?
どうやら、このサイトが頼りになりそう。
・赤外線リモコンの通信フォーマット
・リモコンコードを総当たりする
参考にさせていただきます。
m(__)m
感じとしては、リモコンコードを総当たりで調べていけばよさそう。
とすれば、機能が少ないリモコンがよいだろう。
ということで、うちにあったボタンが少ないリモコンがこれ。
赤外線受光部のためのパーツ類は以前秋月電子で見かけたことがある。
おそらく、赤外線受光部を作ってフォーマットを調べ、そのままI2Cでサーバーに送るだけでアレクサから操作できるようになると思う。
あまり脱線しているとレイアウト製作が進まないので、プライオリティーはグッと低くなるが、そのうち・・
「アレクサ、上り線発車」
「アレクサ、上り線加速」
「アレクサ、下り線減速」
「アレクサ、下り線停車」
で、操作できるように・・なってるかも。
・・「アレクサ、ノッチ6」といったら機関車は走り出して、テレビのチャンネルはTBSに切り替わる
!?