Xbee高速通信でのデータ落ち個数が多い件、HardWareフロー制御で1/3までへりましたが、まだまだ、USBシリアルのレベル(データ落ちゼロ)にはほど遠い(単四電源10万回中9千回発生)ので、Xbeeでの高速データ計測の信頼性が確保できてません。そこで、電源ノイズを可能な限り減らすトライをしました。
●電源ノイズの原因
単四電池2本で3Vを3.3Vに昇圧するために中華DCDCコンバータを使ってますが、これの性能が悪い点が原因です。
マイコンの電源は、中華DCDCよりはましですが、ノイズレベルは、100mVrms程度発生しているので、ノイズレベルをもっと下げられる電源をさがしました。
●電池専用のDCDC
TIが電池専用のDCDC ICチップを多種用意してあります。
左クランクに使っていて壊してしまった。TPS63000の性能はよいです。
http://www.ti.com/jp/lit/ds/symlink/tps63000.pdf
8ページに電圧波形の絵があって、Typical10mV以内でした
●手持ちの電源で検討
TPS63000電源基板1個壊してしまいました。プラスマイナス逆差しした瞬間に壊れてしまう仕様だそうで、その通り使って3日で壊してしまいました。
ストロベリーリナックスの900円のDCDC基板をこれからたくさん仕入れるのも、コスト的にも面白くないので手持ちの電池と電源で何とかXbee用ローノイズ電源ないかと探しました。
●3端子のほうがノイズが少なそうだ
WEB検索してみると詳しく実験されている方いらしゃいました。
http://www.easyaudiokit.com/bekkan/regulator/regulator.html
3端子で降圧電源のほうがいいみたいです。
●手持ちモバイルバッテリーを試す
LiPO京商droneRacerは、左クランク用ですが、アマゾン在庫切れでした。
TPS63000と組み合わせれば、ローノイズになるはずですが、現時点ではまにあいません。5Vのスマホ充電用のモバイルバッテリで実験してみました。
①IOT用モバイルバッテリー CHHEERO
これは、スマホ用と違って、電流が小さくなると自動オフする機能がついてないので、マイコンの微弱電流でも
オートオフすることなくずっと供給してくれるので、電子工作には便利です。
➁昔のENLOOP モバイルバッテリー LBC-L27D(生産中止)
https://panasonic.jp/sanyo-battery/p-db/KBC-L27D.html
スマホを充電するには容量不足で、劣化してしまったので、放置しておいたものを持ち出して、試験してました。
●Xbee高速転送データ落ち数測定結果
今回は、実際と同じセンサ類すべてつけて、プログラムも完成させて
みました。加速度センサの波形を10回移動平均をいれてTicker割り込み4msecでいれると、さすがに間に合わなくて送信エラーがでてだめだったので、6msecまで遅くした条件で測定しました。
バッテリー | 入力方法 | 測定時間/サンプル数 | データ落ち回数 |
LiPO 京商DR013 100mAH 6msec |
マイコン5Vピンに直接 4.2Vスタートで4VでNG |
開始20分 /20万データ | 40回/20万回=0.02% |
CHEERO IOTバッテリー 3200mAH 6msec |
マイコン5Vピンに直接 | 開始20分/20万データ | 9回/20万回=0.0045% |
Eneloop LBC-L27D
2700mAH 6msec |
マイコン5Vピンに直接 | 開始20分/20万データ | 2098回/20万回=0.2%
ぱらぱらと1回ずつ発生していて全体の影響を及ぼさない発生の仕方をしている |
●結論:
前回の単四2本+中華DCDCとマイコン電源(4msec)行った結果では、12000秒間でデータ落ち回数が1万回近かったのですが、発生分布が均一だとすれば、20分で1/10なので、1000近く発生するはずですが、LiPOダイレクトとCHEERO IOTバッテリーは2桁すくなくでてました。
CHEERO IOTは デカすぎてチェーンリングに収まるか問題ですが、トライしてみます。
EneLoopは、2098回と多かったのですが、古いバッテリのため、容量が少なかったのかもしれませんが、0.2%程度の発生確率ですので使えないレベルではないと思います。
新品でこのサイズのモバイルバッテリを探してみてみます。
ちなみに、Eneloopでのマイコン3.3V電源の波形をみると 20mV PPと低くでてました。
●以後
Xbee高速通信115200bps(サンプリング周期10msec以下)で、データ落ちを防ぐには
1:Xbee3.3V電源のばらつきを20mVP-P程度まで低ノイズ化必要
2:シリアル通信の条件をHardware Flow制御をいれる必要がある。
3:Xbeeのアンテナ,通信距離など、できるだけ電波が届きやすい条件に設定必要
4:1時間以降から、データ落ちが顕著に増えていく現象があるが
これは、電池の容量からくるものか、CPUのタイマー割り込みの特性からくるものか不明ですが、1時間以内の測定でやれば大丈夫だと思います。
電波の伝達の品質管理なので、アナログの塊ですので、まだ、まだ詰め足りない部分がありますが、試験走行を急がないといけませんので
CHEEROを何とか収納できるか、単四で実走行での実力、Eneloopでの
実走行での実力など、実走行で更に多くのパラメータが課題として抽出されるはずですので、次に急ぎます。週末は雨なので、ローラ台走行で課題抽出実験になるかもしれません。