web-dev-qa-db-ja.com

シリアルデータをタイムスタンプで記録する方法は?

Arduinoからシリアルデータをコンピューターに送信しています。シリアルコンソールを使用してデータを表示できます。しかし、私はそれをタイムスタンプで記録できるようにしたいです。

コードを大幅に変更したり、コードを変更したりすることなく、タイムスタンプ付きのシリアルデータを自動的に記録する既製のスクリプトまたはプログラムが必要です。

7
Ufoguy

moreutilstsプログラムを使用して、各行にタイムスタンプを追加できます。

{ echo foo; sleep 1; echo bar; } | ts
Dec 13 01:07:23 foo
Dec 13 01:07:24 bar

シリアルポートから読み取り、ファイルに出力するには:

ts </dev/ttyS0 >arduino.log

(置換/dev/ttyS0シリアルポートデバイスの正しいパスで。)

  • http://elinux.org/Grabserial をお勧めします。

  • そしてts出力のフォーマットはプラスであり、時間の精度を高めます。

    ts [%H.%M.%.S]

4
kikeenrique