obnizでもプラレールを動かしたい!

obnizでもプラレールを動かしたい!:

これはObniz Advent Calendar 2018の9日目の記事です

2018年7月7,8日に金沢にてNT金沢というイベントが開催されていました

togetterにて雰囲気がまとめられています[ ここ ]

私もESP8266を複数台使用して子どもに大人気のプラレールを自動制御をしたものを展示していました

クリックするとYoutubeへとびます↓




さて本題ですが、obnizでも簡単にプラレールハックができるのではいか?ということで、obnizを使ってプラレールを制御してみました


作ってみた

ということで作ってみたものが以下の動画になります

車両は一方向のみ走行するようにし、駅は島式ホームにしてみました

クリックするとYoutubeへとびます↓




本当はNT金沢で展示したように立体交差させたかったのですが、レールを作るのに時間が要するのと制御が複雑化するので今回は単純なものにしました

また自動でのプラレール制御は行っていません

obnizはweb上でマイコンを制御できるところが長所だと思うため、自動化よりは自分で制御したほうが良いと判断しました


材料

最低限必要な材料です

下の材料の他にもレールの改造と短いレールを作るために3Dプリンタを必要とします

  • R-01 直線レール 10本
  • R-03 曲線レール 11本
  • R-08 ストップレール 2本
  • R-11 ターンアウトレール L 2本
  • R-11 ターンアウトレール R 2本
  • J-14 ブロック橋脚 3個 (任意)
  • J-17 ニュー踏切 1本 (直線レールでも代用可)
  • デジタル・マイクロサーボ(SG90) 4個
  • obniz 1個
  • ブレッドボード
  • ジャンパーワイヤ
  • お好きな車両


レールの改造


ターンアウトレール

サーボモータでターンアウトレールを制御できるように改造をします

ターンアウトレールの裏側にペットボトルの切れ端を下記の画像のように接着剤等で貼り付けます



DSC_2840.jpg


こうすることでバネのようにポイントが切り替えが可能となります



つぎにサーボモータをターンアウトレールに固定するために、3Dプリンタで固定するものを作ります

githubにてモデルデータを公開しているため、ダウンロードして印刷すれば完成します



servo2.JPG


ダウンロード先

印刷後、サーボモータをネジで固定し、糸などでターンアウトレールとサーボモータの羽をくくりつければ改造完了です



asdfa.jpg



ストップレール

ターンアウトレールよりは簡単で、サーボモータをネジ等で固定し、ポイントとサーボモータの羽を固定すれば改造完了です



DSC_2839.jpg



自家製プラレール

ターンアウトレールにてレールを並行分岐させるとレールが少し足りない事態になります

今回作成したものは2本の自作レールが必要になります

1本目が通過線のすぐ横にあるレールです

1/4直線レールよりも少し小さいレールでないとはまりません

トミカからそのようなレールは現在のところ販売されていない(2018/11/21現在)ため、3Dプリンタで作ります

もちろんこのデータもgithubに公開済みですので、ダウンロードして印刷すれば完成します



rais1.JPG


ダウンロード先



2本目が駅にて一番外側にあるレールです

レールというよりはレールとレールを接続するためのコネクタというべきでしょうか



DSC_2837.JPG


もちろんトミカからそのようなレールは現在のところ販売されていない(2018/11/21現在)ため、3Dプリンタで作ります

このデータはgithubにはありません(ゴメンナサイ)

しかし、githubにて"レールと繋がる部分(rail_down.stl)、レールの長さの部分(rail_middle.stl)、レールと繋げる部分(rail_top.stl)"と、レールを各パーツごとに公開しています

レールパーツ

ThinkerCad等の3Dモデルソフトまたはアプリにて各パーツをインポートしくっつけて作成をしてください


プログラム

プログラムはobnizのリポジトリところで公開をしています

プラレールコントロール.html

サーボモータとobnizの接続は以下のようになっています

0pin -- vcc 
  1pin -- gnd 
  3pin -- レールの一番外側にあるストップレールのサーボモータのsignal 
  4pin -- レールの一番外側から二番目にあるストップレールのサーボモータのsignal 
  5pin -- ストップレールを分岐させるためのターンアウトレールのサーボモータのsignal 
  6pin -- 通過線とストップレールの分岐をさせるためのターンアウトレールのサーボモータのsignal 
レールを組み立て、レールの改造し、obnizとサーボモータを接続し、プログラムを起動すると以下のような画面になります

マニュアルモード お手軽モード


Screenshot_20181121-094645.png


Screenshot_20181121-094659.png
マニュアルモードお手軽モードの2つを表示しています

マニュアルモードでは各ストップレールやターンアウトレールを制御していくものです

車両が一台であれば容易に制御できますが2台以上になるとかなり難しいです

次にお手軽モードですが、停止させたい駅や通過させたい駅へ簡単に誘導してくれます

マニュアルモードよりも容易に制御することができます

また、お手軽モードでは駅へ停止命令を出したときにデフォルトでは10秒経過後に自動で発車をします



操作画面にて、すこし技術的な話をすると、レイアウトはbulmaというCSSライブラリで作っています

軽量でかつjavascirptの依存がないためobnizが読み込んでいるjqueryにも影響がでないと判断してこのライブラリを使用しました

トグルスイッチについてもbulmaで書かれているbulma-switchというライブラリで実現しています

ライブラリをつかいつつJavaScriptでいい感じにプログラムをかき、いろいろ微調整して完成をしました



DSC_2836.JPG



まとめ

obnizを使ってプラレールをスマートフォン等の端末で操作できるものを作ってみました

obnizのおかげでマイコンのプログラムとWebアプリを同時に作ることができるのため、短時間でスマホで動かすおもちゃが作れるので便利です(しかし、ネット環境がないと動かせないのがネックですが・・・)



最後に宣伝です

いつもはブログにて活動をしています

http://www.autumn-color.com/

obnizだけでなくARに挑戦したり、いろいろ作ってみた記事を掲載しています

それでは良いお年を

コメント

このブログの人気の投稿

投稿時間:2021-06-17 22:08:45 RSSフィード2021-06-17 22:00 分まとめ(2089件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)