【3月5日】6分力計<HX711読み取り速度早くした>

HX711の仕様書では、https://cdn.sparkfun.com/datasheets/Sensors/ForceFlex/hx711_english.pdf
A-A+端子を使っている時は80Hzのサンプリング周波数のはずなのですが、現状では、7Chで300-500msecかかってますUSBserialでpc.printfのデータ転送部分が遅いのかと思って、115200bpsを倍の230400 bpsまで上げても変化なしだったので、HX711の読み込みルーチンが遅いということが判りました。
※2021年9月追加 HX711に代わるひずみゲージアンプをお勧めします。
2017年から2018年末までHx711を使用してましたが、速度が遅い点(数十Hz)、通信トラブル(SIOといいう旧式インターフェース)が多発する点で使い続けることを断念しました。その後、アナログデバイス製のAD7794,AD7194,AD7193と使ってきましたが、多CHで価格高い点とピン数が多い点でシンプルなICをさがしてきました。ようやく、ADS122U04という手ごろなアンプが見つかりました。ひずみゲージ測定をよく使われるか方なら、下記ADS122U04を使われたほうが、トータルした生産性とテーマの発展性にプラスとなると存じます。

【M5】M5Atomと2CHひずみゲージアンプADS122U04基板作った<小さな2CHひずみアンプ>

※2020年10月追記
=>信州MAKERSでは2019年以降HX711は使ってませんが、

HX711は、仕様上バグがあって、速度は40Hz程度が限界のようですので、Khzオーダーの測定が必要な場合は、アナログの計装アンプLT1167とか、500Hz以下ならアナログデバイス社のAD7193,AD7194等きちんとしたした品質が保証されたADCチップを使われたほうがいいです。

=>本ブログを訪れる大勢の方が、HX711にはまって苦労されてますが、ICメーカー側からすれば、体重計、スケール専用のICなので、サンプリングは10Hzもあれば十分なので、使用目的に合致したコストパフォーマンスが良いICですので、スケール、体重計に準じる使い方をすればいいです。
=>世の中で必要な力を測定するには、最低でも100-200Hzのサンプリング性能が必要です。振動計測の規格をみても100Hzまでは必要みたいです。更に、ADサンプリングの定理としてナイキスト法則があるので、測定したい上限周波数の倍以上のサンプリングが必要です。

仕様に無い謎の信号を発見されたココアシステム様に感謝いたします。

こちらのページにその他の方法を解説してあります。

【12月29日】ロードセル<変換モジュールHX711をいじりだした>

【PMD2018】基礎学習2回目<HX711とロードセル接続>

●Hx711ライブラリをみると
Hx711.cppでgetGram関数を使って読み込んでいるのですが
https://developer.mbed.org/users/Volt72/code/HX711/file/aa9794dcf489/HX711.cpp
averageValue(2)となっていたので、2回平均していたのを
averageValue(1)に直したら、

90msecまで早くなりました。




平均化処理の速度が相当時間を喰っていたと思います。
7Chで90msecなので1CHあたり13msecになったので、80Hz(12.5msec)の仕様値がでました。
これで、6分力7CHフル使用でも、人間の手の動き程度なら90msecサンプリングでデータを取得できるので、大丈夫だと思います。

 

●以後
データを校正して6分力に換算できるように校正作業をします。
しかし、今週末10日以降はロドバイクパワーメーターを東京で開発して荒川自転車道路で実走行する予定ですので、
6分力計は、9日までで出来るところまで、一時休止となります。

More from my site

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です