電子工作

PIC, AVR, ARM...

2019年4月17日 (水)

無線制御なペンライト

先日、エヴェッサのゲーム会場で使われていた無線制御可能なLEDリストバンドの仕組みを考える。
汎用性を考慮してここではリストバンドをペンライト、ゲームやライブはコンサートと呼ぶ。
何の解析もせず、勝手に書いているだけなのでツッコミがあればどうぞ。

観客が持つペンライトは、音楽に合わせて明るさや色を変えられる。
エヴェッサのゲームやギャンパレのメンバーが使っていいるのは、リストバンド型になっている。

 

ギャンパレのメンバーが、これを効果的に使っているとは思えないのだが、まあいい。
最近のコンサートでは、観客席のペンライトも会場を盛り上げるツールとして使われている。
観客席が赤く染まっている中、他の色が点灯していると見苦しいから、私物のペンライトやサイリウムの持ち込みを禁じ、渡されたペンライトに限定していることもある。

▽(いい動画が見つかれば)あとで動画

ペンライトには、フルカラーLED以外に、バッテリー、単方向のRF通信モジュール、制御用のマイコンが載っていると思われる。
一つだけ違ったパターンで点灯するペンライトがあるとカッコ悪い。そこで受信したコマンドに応じたパターンで点灯した後、必ず消灯するようになっていると思われる。
何からの通信障害によって、コマンドを受信できない場合は消灯したままにすればよい。消灯しているだけなら障害も目立たない。
たとえばカバンに入れてコマンドを遮断すると、この写真のように消灯する。

▽あとで写真

そしてカバンから出しても消灯したままだ。次のコマンドを受け取るまで点灯しない。
ペンライトの色を個別に変えることも可能だ。ペンライトごとにIDを設定しておき、IDが4番のやつだけ赤く点滅というようにすればいい。
チケットごとに配布するリストバンドを決めれば、会場のエリアごとに制御することもできる。
ペンライトの個別IDが16桁あって、その4番目の数字が座席のエリアを表している。それが奇数だったら奇数秒、偶数なら偶数秒に青で点滅すればいい。

ところで今日は、GANG PARADEがメジャーデビューしてから初となるシングル発売日だ。
壮大なステマに付き合ってくれてありがとう。

 

2019年2月28日 (木)

DGPSお疲れ様

東海地方では、救急絆創膏のことをバンドエイドと呼ぶ。北海道ではサビオ、九州ではリバテープと呼ぶのが多数派らしい。

日本人は衛星測位システムのことをすべてGPSと呼んでいるが、これは本来、米国の測位システムの呼び名である。
※GPSはGlobal Positioning Satelliteの略である。
GPSネタがやたらと多いこのブログでは、みちびきに代表される準天頂衛星システムもGPSと呼んでいるが、正しくはQZSS(Quasi-Zenith Satellite System)と呼ぶべきらしい。

その話はおいといて、日本がGPSを利用し始めた当時は測位精度が低かった。
そこで日本では各地にDGPSと呼ばれる測位基準局を置いて、測位精度を上げる工夫をしていた。
近年、(米国の)GPSの精度が上がり、さらに2018年11月にはQZSS(みちびき)の運用も始まった。これによりDGPSは不要となった。
明日2019年3月1日で、DGPSは停止することになっている。今までお疲れ様。

 

2019年2月21日 (木)

ブレボのマイコン選び

私の仕事では、PCとArduinoNanoを接続し、Nanoでセンサからの入力をしたり、メカを制御したりしている。
だが今時のマイコンボードは性能も高くて機能満載。いちいちパソコンを使わなくても、たいていのことができる。
(やれと言われたので)今後に備えて、そういったマイコンボードについてまとめておきたい。
基準となるArduinoNanoは、メモリはROM32KB/RAM2KB、16MHz動作である。本物は高価だが、中華なバッタモンなら300円程度だ。
私はブレボ職人なので、基本的にブレボに載せるマイコンボードしか考えない。
ARM系マイコンのSTM32を搭載したNucleoシリーズは高速で高性能。ブレボ職人であれば、STM32F303K8一択である。メモリは64KB/16KB、72MHz動作だ。秋月で1,600円ほど。
これらではコスパが悪いという方は、中華製のBluePillがいい。ARM系のSTM32F103C8搭載で、メモリは64KB/20KB、72MHz動作と似たような性能だ。中国からの輸入で300円ほど。破壊的な値段である。
ただし書き込み器がオンボードではないし、回路に問題があって、砂粒ほどのチップ抵抗を交換しなければ使えない。趣味ならともかく、仕事で使うことは絶対にない。
メモリが欲しい時は、GR-CITRUSなんかがオススメ。Arduinoとして動作させることもでき、メモリはROM2MB/RAM256KB、96MHz動作である。秋月で2,200円ほど。国産だけあって、ボードがカッコいい。
WiFi搭載のESPシリーズも、Arduino化して使うことができる。Arduinoモードで使うなら、スイッチサイエンスのESPrDeveloperが便利だ。モジュールによって搭載されているメモリも異なる。
WiFiモジュールをハックしている関係上、搭載されているメモリをすべて使うことはできない。メモリはROM1MB/RAM80KBだと思って使うのがよさそうだ。スイッチサイエンスで2,000円ほど。
ただしESPrは幅が広いため、EIC0-102Bなどの一般的なブレボに載せられない。EIC-333とかEIC-364は二つのボードをまたぐように使うと非常に快適である。
ArduinoNano < STM32F303K8 < BluePill < GR-CITRUS < ESPr < RaspberryPi3(参考)
まあ、何でもRaspberryPiを使えば解決できるのだが、RPiは単体でPCみたいなものだから、ブレボ職人としてはちょっと違う気がする。

2019年2月20日 (水)

スイッチサイエンス

私は電子パーツのほとんどを秋月電子通商で買っている。
今まで他社で買うことはほとんどなかったが、ネタ探しにスイッチサイエンスをのぞいてみた。
なかなか楽しそうなモノが多い。
FRISK基板、ミンティア基板、ESP-WROOM-02ピッチ変換基板コンパクト、ESPrDeveloperなんかはよさそうだ。
こうやってパーツをリストアップしておくと、会社で買ってもらえることがあるし、ついでがあれば自分でも一緒に買いやすい。
パーツはジャンク箱に入れておき、いいネタがあった時に使う。何を作るかは後で決める。

2019年2月13日 (水)

ソレコンはまた来年

ソレコンにエントリーしようと思っていたが、たいしたモノは作れなかった。

手持ちのソレノイドはすべて6V品。今まで試してきたが、6Vで役立つメカを作るのは難しい。動作確認にはちょうどいいが、実用性があるものは作れなかった。

試しに12Vを入れて動作確認してみた。12Vでようやく、まともな力で動作させることができる。
ソフトウエアは6Vで開発し、メカに組み込んでから12Vというのがよさそうだ。

ソレコンを主催するタカハのwebサイトによると、6Vのソレノイドを電源12Vで使うのは定格外ではない。通電時間を1/4に抑えて使えば問題ないと記載されている。
まあ、それでも作るモノは思い浮かばないのだが。

2019年2月 9日 (土)

Arduinoにメモリ

Arduinoはひじょうによくできたマイコンボードだが、私がよく使うArduinoNanoだと、ROMは32KBほどしかない。
大きなデータを扱うためには、外部メモリを接続しなくてはならない。
Arduinoにメモリを増設することはできないが、回路上にSDカードスロットを用意すれば外部記憶と同じだ。いくらでもデータを読み書きできる。
秋月電子で販売されているSDカードスロットはなかなか安定しないが、そういう人は電源不足だ。別電源を用意すればちゃんと使える。ArduinoNanoは5Vで動作するため、SDカードを読み書きするには、3.3Vにレベル変換する必要がある。きちんとレベル変換モジュールを載せたい。

なんてことをやっていると回路規模が大きくなってブレボを圧迫する。
そんな時は、記憶容量が数MBでよければ、Flashメモリモジュールがオススメ。

▽あとで写真

これにL字型のピンを付けると、指でつまんで交換できる。

▽あとで写真

SDカードはWindowsからファイルを書き込むこともでき、マイコンからすぐに利用できる。だがFlashメモリモジュールだと、まずはFlashメモリモジュールを書き込みする装置を作らねばならない。

そんな装置を作る手間を考えたら、やっぱりSDカードの方が楽かもしれない。
だったら、そもそもArduinoではなく、もっとメモリが大きいマイコンモジュールを使えばいい話ではないのか。

…という問題を何とかしろと上司に言われたが、方針が決まらないまま、かれこれ半年が経過した。

2019年2月 3日 (日)

今年の恵方

今日は節分。日本では、商魂たくましい連中によって、節分の日に恵方巻を食べるという風習が広まりつつある。
恵方というのは、陰陽道(おんようどう)において、その年の歳徳神(としとくじん)のいる方角らしい。その方角は吉とされ…うん。ここまではなんと理解できる。だが、その続きがおかしい。
この日、寿司の太巻きを無言で食べると福が訪れる…だと?
何を言っているのだ。話が飛躍しすぎだ。まったくもって理解不能である。

まあいい。で、今年の恵方はどっちなんだ。
調べたところ、今年の恵方は東北東よりちょい東(※1)らしい。このアバウトな表現もおかしい。正確には75°である。
さっそく、75°の方角に向かって寿司を…て、どっちだよ。
スマホの恵方巻きアプリで確認すればいいだろうという人が多いが、いや、いや、いや、いや…。そのアプリは偏角に対応していますか? って話だ。

磁石のN極が示す方向が北だと思い込んでいる人が多いが、それは違う。磁北と真北(しんぽく)には大きなズレがある。これを偏角という。
偏角は場所によって異なり、場所によって方角を補正しなければならない。その場所の偏角は国土地理院の地図を見て確認するといい。

スマホのアプリはどうなっているのか。そのアプリがGPS機能をOFFにしても動作するなら、そのアプリは偏角を無視していると思われる。残念だったな。

あなたの恵方はズレている。

そんなわけで、正しい恵方を求める回路を作ることにする。はやぶさ君のプログラムを修正すればすぐにできるだろう。
親機のスイッチを押して起動すると恵方モードに入り、はやぶさ2の方角ではなく、その日の恵方を指すようようにした。
はやぶさ君に搭載されている地磁気センサは、磁北からのズレを検出するセンサだ。よってはやぶさ君も、その場所の偏角で補正している。
注意したいのは、角度の7°30'というのは7.30ではないということだ。角度は60進数なので、7°30'は、7.0+30/60=7.5°である。

というわけで、3分ほどで完成した。はやぶさ君に10行ほど追加すればおしまい。
今夜の我が家は、謎の電子回路を囲んで無言の夕食である。

※1. 恵方は中国古来の24分割の方角で表される。それを16分割で表そうとした結果である。

2019年1月23日 (水)

磁気センサの使い方

先日のニセモノ地磁気センサの動作が、どうも気に入らない。
HMC5883Lと書かれているのに、搭載されているのはQMC5883という詐欺モジュールのことだ。こいつはQMC5883用のライブラリを使えば正しく動作する。

出回っているライブラリと、そのサンプルコードを見ると、動作中にキャリブレーションもしているようだ。
私はチップの個体差に応じて手動で調整していたが、サンプルコードだと内部でキャリブレーションを行なうため、個体差は問題にならない。
これは便利そうだ。ライブラリをハックすることにした。

地磁気センサは、自分が向いている方向を磁北からのズレとして値を返す。
ノイズで値が安定しないことがあるが、数回スキャンして平均値を使うのが定番の対策だ。これはわかる。
センサの感度にはバラツキがある。手持ちのモジュールごとに感度を調整するために、センサの最小値と最大値を調べ、その値を360等分しているようだ。

解説があるわけではないので、私の勝手な推測である。
昔のスマホは、購入直後に一度、8の字に回す作業が必要だったが、あれと同じだ。
同じ処理を入れて、はやぶさ君に反映させたところ、どの詐欺モジュールでも正しく動くようになった。
詐欺モジュールをたくさん買ってしまったので助かった。

2019年1月 7日 (月)

GPSベース回路

ここのところ、GPSに関係する回路ばかり作っているのだが、部屋の中ではGPS信号を受信することが難しい。
展示場所によってはGPSの電波を拾うことができないため、ダミーのGPS信号で動かすしかない。
そこでGPSの回路だけを子機として分離した。
子機を窓際などに設置し、GPS信号を受信したら、それを無線で本体に送る。
こうすれば、運用できる場面が増えるはずだ。
はやぶさ君を改良する形で作っていく。

無線通信を行うための回路が追加されるだけだと思っていたのだが、なかなか手間がかかる。
まず送信側と受信側プログラム、二つのプログラムを扱うと混乱する。
そこで一つのソースコードを、フラグ一つで親機と子機の動作が切り替えられるようにした。

GPS信号を拾うために、毎回、子機を持って外に出るのは寒い。
そこでGPS信号を一度でも受信したら、その座標を保持することにした。
屋外に子機を持ち出し、GPS信号を得たら子機を持って部屋に戻る。
子機のスイッチを押すと、先ほど受信したGPS信号を親機に送信する仕組みにした。

はやぶさ2の方角については、どうしたものか迷っている。
グラフィックLCDで表示するのはとても簡単だが、親機のブレボの上はパーツでいっぱい。

Hayabusagps

左から、ArduinoNano+SPK、LED、電圧レベルコンバータ、LCD(仮), RF433MHz受信モジュール、スイッチ、ジョイスティック(未使用)となった。
写真で搭載しているLCDは、デバグ用のキャラクタLCDだ。
方角を示すには一回り大きな、グラフィックLCDが必要となる。

2019年1月 2日 (水)

下町ロケット

TBSのドラマ「下町ロケット」は、昨年末に最終回詐欺をやらかした。すっきりしない最終回の後、特別編と言う名で本物の最終回を放送した。
なんだこの手口は? TBSは本当に日本企業なのか?

まあいい。ふだんはテレビなんて見ないが、ドラマに登場する農業機械がGPSネタなので見ることにした。
あらすじはこんな感じ。

ストーリーはどうでもいい。私はドラマに出てくる技術のどこまでが実用化されているのかだけが気になっている。
そんなわけで、今日は技術担当者(※1)がいたので一緒に見た。
彼が言うには、ドラマで登場した技術のほとんどが実用化されているとのこと。ドラマの主役となっていた無人運転できるコンバインなどは市販されているとか。

2018年の11月、従来のGPSに加えて、QZSS=みちびき(準天頂衛星システム)の運用が開始された。
これによりGPSの測位精度が数cmにまで上がったのだが、11月だと稲刈り、すなわち該当部分の収録は終わっている。
ドラマの収録後であったが、大切な部分なので触れないわけにもいかない。とってつけたような種子島宇宙センターのシーンがそれ。打ち上げはCGで合成すればいいが、イモトは後で追加収録したものと思われる。もちろん推測だが。
最終回詐欺になってしまったのは、ここらへんにも原因があるのかもしれない。まあ、だとしてもTBSの番宣は悪質だと思うのだが。
みちびきを使い、地上に補正用基地局を置いた自動運転は特に精度が高い。こんなことさえもできてしまう。

基地局がない場合も、みちびきを使えば精度が上げられる。田植えは難しいが、刈り取りなら可能だろう。
たとえば水田の外周だけを人が運転し、その位置情報から水田の形を推測し、残りを自動運転で刈り取るなんてことも可能だ。

※1. ドラマの農業機械を作っている会社のプログラマである。

より以前の記事一覧

最近のトラックバック