日々の記録

ほどよく書いてきます。

RS232CシリアルからUSB HIDデバイス

2023年04月25日 21時31分23秒 | AVR

電子天秤など、読み取りボタンを押すと測定データをRS232Cから出力するものが結構ある。

便利な端子ではあるが、今どきだとUSB-RS232C変換ケーブルをさしてドライバをインストールして・・・面倒臭い。

ミツトヨのビッカース硬さ試験は読み取り値をPCに転送するとき、USB HID(Human Interface Device)のキーボードに扮してくれるので接続してすぐ使えるというメリットがある。

このモデルはすでにArduinoの標準にあるっぽい。
https://docs.arduino.cc/built-in-examples/usb/KeyboardSerial

マイコンにはUSB HIDに化けてくれるものがあるし、シリアル通信に対応したものがあるので、これ自分で作れるんじゃないか?というように思った次第。→作った

例えば電子天秤の場合、読み取った値をそのままHIDデバイスとして吐き出せばいいので、すが、

A&Dのフォーマットを見ていると標準だと、Stable, Unstableとかヘッダ、カンマ、測定値、スペース、単位、CRLFになっているようだ。面倒くさいな。

 

ただ、SIF TYPE4はNumericalフォーマットなのであろう、数字をバコーンと出すだけなので、液晶画面に表示サれている数字をそのまま吐き出すだけ。これなら、マイコンはシリアル通信で受け取った文字列をHIDデバイスとして吐き出して行けばいいだけである。

 

AandDの天秤は下記の状態がデフォルトの状態のようだ。
ボーレート:2400bps
ビットパリティ:7ビットEven
ターミネータ:CRLF
データフォーマット:A&D標準フォーマット(上記のST,+2.300000  g CRLF)

 

さて、データが7bitって何?って思ったのだが、アスキーコードが7bitなので、英語文字列を送るだけなら7bitで十分な様子。

ということは、マイコンのシリアルポートは、
Serial.begin(2400,SERIAL_7E1)

ということになる。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

PID制御

2023年04月12日 23時30分47秒 | その他雑記

恒温槽の温度が振動しているのを見かけた。

PID制御のパラメータ設定がだめなのだろうなと思ってとりあえずオートチューニングやってみたら結構いい感じに収まった。

もう少しパラメータを変更しても良いかもしれない。

 

しかし、出荷時にPIDの値を設定したり、納品時に一回オートチューニングやったらある程度の値が設定できそうだけど、設定しないのかな。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする