カイワレスタイル

ゲーム、アニメ、プログラム、興味のあることをツラツラと。

スティックPCを省スペースな展示用動画再生機にする方法

11月13日のデジゲー博2016で、知人の会社の出展のお手伝いで動画再生環境の設営をした。

お手伝いした「株式会社タノシマス」のスマホシューティングゲーム「アカとブルー」
tanoshimasu.com

とそのPV
https://youtu.be/o83B-dm5JA8youtu.be

当日は割とひっきりなしに体験版をプレイしてる人がいたようで、盛り上がった模様。

現地では、上のPV動画の再生用にスティックPCを使った。 その際、設営がなるべく楽になるように色々工夫をしたので、備忘録的な意味を込めてまとめることにする。

続きを読む

自作全方向移動型ラジコン戦車完成までの記録 ~PWM制御系編~

自作全方向移動型ラジコン戦車完成までの記録の4回目。
今回はデジタル回路で出力電圧の調整を行うのによく使うPWM制御について書く。

前回はこちら

kaiware007.hatenablog.jp

PWMとは

詳しくは知らないが、PWMとは、Pulse Width Modulationの略で、その名の通りパルスの幅を調整して擬似的に電圧を調整する方法。
一定時間内に電圧オンの状態と電圧オフを切り替えて、そのオンオフの割合で電圧の高さを擬似的に変える。
時間あたりの平均で見るとオンが70%だったら元の出力の70%程度になるみたいなイメージ。

ウィーヴィルは、脚の三輪をPWM制御しているが、他にも砲塔や前照灯二つと尾灯二つのLEDの制御でもPWMを使用している。
これだけの部品のPWM制御を全てラズパイだけでやらせるのは無理(PWM制御できるGPIOが足りない)なので、下記の16chPWM制御可能なボードを使用した。

www.switch-science.com

このボードをラズパイと繋いでI2Cで通信して制御した。
そんでもってボードは下記のライブラリで制御した。

github.com

砲塔と各部LEDの制御

過去の日記でサーボとLEDの実装と制御について書いていたのでそちらを参照。

kaiware007.hatenablog.jp

kaiware007.hatenablog.jp

日記に書いてなかった問題点として、ゆっくり明滅させる等、常時PWM制御する処理を行うとボードが処理落ち(?)してサーボの動作速度が低下する。
LED制御は別のArduino基板とかに任せるようにできればよかったかもしれないが、前照灯のLEDがRGB三色を個別のLEDで表現しているため、LEDだけで前照灯(Rx2,Gx2,Bx2)、尾灯(Bx2)の計8ピンも必要になってしまい、ArduinoUnoではちょっと足りないっぽい。
Dueとかならいけたんだろうか?

過去の日記の日付が半年くらいまえで自分でも驚いている。
MFTの少し前に撮った動画はこちら。

電飾系の動作確認

砲塔の可動確認

ボードとラズパイの接続時の失敗

本番の数日前までしっかりLEDやサーボが動いていたのに、ある日突然まともに動かなくなって非常に焦った。
原因は、PCA9685ボードとラズパイの接触不良という単純なミスだった。
PCA9685ボードとラズパイには、フラットケーブル(またはリボンケーブル)を使用した。
フラットケーブルは、数本のケーブルを横に並べてくっつけてきしめんみたいにしたやつ。

www.marutsu.co.jp

今回初めて使ったが、1つの芯が複数の細い先を束ねているタイプの線だったため、ハンダ付けしても外力で線が少しづつちぎれて非常に接触不良が起きやすくなってしまった。
この手のケーブルは、コネクタでつなぐようにしたほうが良かったのだろうか?
一応ボードをつなぐ方はコネクタをつけたが、付け方が悪かったのかGND側が断線してしまった。
補強としてホットボンドを端子と線の周りにたっぷり塗りたくって固めた。 そもそもちゃんとボードを固定しておけば余計な力が加わることは無かったと思う。
今回外装はしっかりデザインしたが、中身は収まればいいや的な感じで固定とか全く考えていなかった。
次に何か作るときは内部の基板の固定などもちゃんと考えて設計したい。

過去記事

kaiware007.hatenablog.jp

kaiware007.hatenablog.jp

kaiware007.hatenablog.jp

自作全方向移動型ラジコン戦車完成までの記録 ~脚部駆動系編~

自作全方向移動型ラジコン戦車完成までの記録、3回目は脚部駆動系について。
全方向移動を実現するために欠かせないモータと、MFTでも知ってる人と知らない人の温度差が激しかったオムニホイールについて書く。
オムニホイールの説明は前回書いたので今回は書かない。

前回はこちら

kaiware007.hatenablog.jp

脚部のモーター、オムニホイールについて

全方向移動を実現するために、ギヤードモータとオムニホイールを使用している。
当初は、タミヤのハイパワーギヤーボックスHEと38mm径のオムニホイールを使用していたが、最終的にダイセンのロボサイトギヤモーター(1:60)と同じくダイセンのオムニホイール40mm径に変えた。

ハイパワーギヤーボックスHE

www.vstone.co.jp

www.vstone.co.jp

変えた理由は、組み立て時の問題だと思うが、ハイパワーギヤーボックスHEの回転速度の差が激しすぎてまっすぐ走れなかった為。
あるギアーボックスは、手で回すと空転するほどなめらかに回るのに、もう一方は硬くて回すのに力がいる感じ。
こちらがその当時の脚部の写真。

f:id:kaiware007:20160817005935p:plain

ギヤーボックスを板で挟み込む形でネジ止めしている。
コレのせいでゆがんでしまったのではないかと考えているが、結局原因は不明。
組み立て時にすでに歪んでいたかもしれない。

その点、ロボサイトギアモーターとオムニホイール40径は専用車軸セットで簡単に接続出来て個体差も生まれにくい。
下手にケチらずに最初からこっちを買えばよかった。
しかし、モーターとオムニホイールのサイズが変わった為、脚の内部のフレームを再設計することになってしまった。
再設計後の写真はこちら。

自作戦車組み立て中②

オムニホイールとモーターが大きくなったため、脚部の先端にオムニホイールが収まらず、内側にオムニホイールを配置する形になった。
このため、旋回時のトルクが落ちたが、脚と本体の接続部のゆるさからカカトが地面に擦れやすかった問題が解決されたのは怪我の功名。

モータードライバー回路

全方向移動を実現するためには、モーターの回転方向や回転速度を動的に切り替えられる必要がある。
今回はモーター制御にTA7291を使用した。

akizukidenshi.com

ラズパイのGPIOでTA7291を制御し、モーターの回転方向を切り替えられるようにした。
また、ラズパイからのPWM制御で回転速度も調整できるようにした。
モーターへの電力供給は、ラズパイのGPIOからではとても足りないので、単3電池4本で別途供給するようにしている。
三輪なのでモータードライバーも3つ必要になり、ユニバーサル基板に簡単な回路を設計した。

f:id:kaiware007:20160817010441p:plain

しかし汚い…。
ちなみに基板左側のコンデンサトランジスタは砲塔のミサイル発射ギミック用のミニモーターの回路。
この回路にさらに、I2C制御基板へのケーブルも追加されるのだが、ケーブルの選定をミスってかなり接触不良に悩まされる事になる。
それはまた次の話。

過去記事

kaiware007.hatenablog.jp

kaiware007.hatenablog.jp

自作全方向移動型ラジコン戦車完成までの記録 ~外装編~

自作全方向移動型ラジコン戦車完成までの記録、2回目は外装について。
今回は趣味丸出しのデザインと、3Dプリンタ造形物の表面処理のノウハウについて書く。

ちなみに1回目はこちら

kaiware007.hatenablog.jp

続きを読む

自作全方向移動型ラジコン戦車完成までの記録 ~動機編~

Maker Faire Tokyo 2016に「自作全方向移動型ラジコン戦車『ウィーヴィル』」を出展した。

www.nicovideo.jp

www.youtube.com

なんだかんだで完成するまで1年ほど掛かってしまったので、その記録を何回かの記事にして残すことにした。
今回は、作るきっかけについて書く。
よって技術的な話はほとんど出てこないと思う。

続きを読む

Maker Faire Tokyo 2016 おつかれさまでした!

Maker Faire Tokyo 2016 お疲れ様でした&見て頂けた方ありがとうございました!
当日は自作の全方向移動型ラジコン戦車を出展していたんですが、本当に直前まで本体の開発や動画の作成等をしていたため、全然告知が出来ませんでした。
それでもたくさんの方に見て頂けてとても嬉しかったです。

会場で上映していた動画をアップロードしたので貼り付けておきます。

www.nicovideo.jp

ラジコン戦車完成までの道のりは、別途当ブログでまとめていこうと思います。


youtube版はこちら

www.youtube.com

今更旧Raspberry Pi Zeroをセットアップした時のメモ

Maker Faire Tokyo 2016に向けて、もう一つ何かを作る必要が出てきたので、発売当初に買ったまま放置していたRaspberry pi Zero(以下、パイゼロ)のセットアップを行った。

現在のパイゼロは、カメラモジュール用の端子が付いているが、自分が買ったものはそれより古い初期バージョンなので端子は付いていない。

以下は、セットアップの際に行った作業のメモ書きである。

続きを読む