信州MAKERSでは、力を測定するためにひずみゲージ応用の6分力計、ロードバイクパワーメータを開発しております。現在使っているセンサ用信号処理(AnalogFrontEnd用途)のアンプですが2種使いわけてます。
HX711:ロードセル用24bitのAD変換器80Hzでサンプリングするので静的な力の測定で使います。 http://akizukidenshi.com/download/ds/avia/hx711.pdf
LT1167:振動に近い動的な力を測定するときは高精度計装アンプ http://www.analog.com/media/jp/technical-documentation/data-sheets/j1167fb.pdf
https://ja.wikipedia.org/wiki/%E3%83%9E%E3%83%AB%E3%83%81%E3%83%97%E3%83%AC%E3%82%AF%E3%82%B5
LT1167は、こちらの記事で原理説明してありますので、今回はHX711を学習します。
●HX711の構造と仕様
仕様書からダイアグラムをコピー拡大しました。
ひずみゲージブリッジから微小な電圧差信号がINA+とINA-に入力されます。
ひずみゲージのブリッジ回路:については、別途学習ページを作ります。
InputMUX:マルチプレクサといって複数信号を1本にまとめるICです。INAとINBの切り替えに使ってます
PGA:プログラマブルゲインアンプというオペアンプです。ゲインを32,64,128の3種類設定できます
ADC:AD変換器24bitもあります。
CQ出版にPDFに詳細解説がありました。http://www.cqpub.co.jp/hanbai/books/42/42041/42041.pdf
DigitalInterface:これでマイコンと接続しますが、HX711は、SIOというインターフェースです。RS232Cが一般的なのですがこれはもっと原始的なシリアル通信ですがこれがHX711で発生するのトラブルの元となってます。接続ソフトは、ライブラリがあるのでSIOを知らなくても大丈夫です。
東芝の解説がわかりやすいです。https://toshiba.semicon-storage.com/jp/design-support/e-learning/mcupark/village/serial-interface-2.html
AnalogSuplyRegurator:定電圧レギュレータ 3端子レギュレータだと精度が±5%程度なのでADCの基準電源にはなりません。そこでBGRが必要となります。
BandGapReference:電圧リファレンスIC、AD変換で基準電圧が変動してしまうとデータなのか電源変動なのかわからなくなってしまうので重要な機能として電圧リファレンスがあります。
解説記事は詳しい記事があります。http://eetimes.jp/ee/articles/1110/11/news007.html
ここも詳しいですhttp://ednjapan.com/edn/articles/1102/01/news110.html
http://ednjapan.com/edn/articles/1206/27/news050.html
下図のようにバンドギャップが周囲温度変化で発生する基準電源のドリフトを補正できるらしいです。
http://akizukidenshi.com/download/ds/akizuki/ae-hx711_rev1_20180129.pdf
基準電圧がどうなっているか秋月のHX711の周辺回路図をみてみます。
端子2,3,4,5,6で基準電圧が制御しているみたいですが私は未だ理解できてません。
●実際の結線
ロードセルとの結線ですが中華ロードセルは説明書がついてないので秋月の説明があります。
http://akizukidenshi.com/download/ds/sacc/SC133-2kg.pdf
赤線=+V 黒線=-V(通常はGND) 緑線(出力+) 白線(出力ー)
この結線をしっかりと記憶しておくことが重要です。
InB端子はゲイン32ですので、精度が劣りますので普通は使われません。
●配線のノウハウ
1CHだけなら、あまり気づかいはいりませんが、私はHX711を6CH使って多分力センサを作ってますので
CH信号に干渉ノイズは大きな課題となりました。
この後でノイズならシールド線でならいいかとおもってシールド線で作り直してみましたが
やはりダメでした。信号線の長さが短くないとノイズがなくならないのではと思って、ロードセルの
線を延長させてCPU基板の上に配置したHX711基板にしました。するとノイズが減りました。
「HX711のSIO信号線はCPUから数cmしか離してはいけない」みたいです。
●以後
上記2階建て回路でHX711の6個使いで、MFT2017,MFT2018を乗り切れました。
●プログラム
私はmbed NUCLEO F446REを使ってますが、ライブラリはmbedでいくつかあります。
Arduinoでもライブラリがあります。
秋月の説明書に紹介されてますが扱っているブログがたくさんありますが元祖はSPARKFUNです。
●以後
今回、ここ二年間つかいまわしてきたHX711の基礎を勉強して、ブラックボックスがグレイボックスくらいになったので、これからは、信号の精度なども気遣いながら使っていこうと思います。