Armadilloフォーラム

X2での動作ログやコンソール出力へのログ出力コマンドについて

yuki_oda

2024年9月12日 18時50分

X2の下記の環境で動作ログやコンソール出力にログデータを出力するコマンドはありますでしょうか?
※ない場合は、リリース状態で各処理の動作ログを出力する方法がありましたらご教授ください。
 (可能であればUART、RC232C、USC、LANで出力する方法をご教授いただけると助かります。)

使用ボード:ArmadilloーX2
使用開発環境:VMware Workstation上のATDEのvs code環境
使用プロジェクト:pythonプロジェクト

コメント

at_satoshi.ohta

2024年9月13日 11時16分

太田です。

python でコンソールで出力するのであれば、print()でできます。
また、動作ログとしてファイルに出力するのであれば、/vol_data配下にログファイルを作成して、そのファイルに書き込めば良いと思います。
python 上でログファイルをopen()してwrite()で書き込む方法は python プロジェクトのサンプルプログラムでも行っていますのでご参考にしてください。
python プロジェクトのサンプルプログラムでは、/sys/class/thermal/thermal_zone0/tempを読み込んで得られたデータを/vol_data/log/temp.txtに書き込んでます。
また、ログファイルへの書き込みについてはloggingライブラリを使用するのも手かと思います。

https://docs.python.org/ja/3/howto/logging.html

ちなみにUART、RC232C、USB、LANなどから得られた値をログやコンソールに出力するという理解ですが、
具体的にはどのデバイスからデータを得ることをお考えでしょうか?

yuki_oda

2024年9月20日 11時10分

回答ありがとうございます。
下記に追加問い合わせをさせていただきますので、
回答をお願いいたします。

>python でコンソールで出力するのであれば、print()でできます。
pythonプロジェクトのサンプルプログラムのLEDをON/OFFする箇所にprint()でメッセージを出力するように変更し、
動作確認を行いましたが、コンソール(X2基板の[con6]ポート)からメッセージが出力されませんでした。
print()コマンドの記述方法に間違いがないかを、添付の記述個所の画像から確認をお願いいたします。
又、デフォルトのboot用のコンソールは特に設定などを変更していないのですが、ログ出力をコンソール(X2基板の[con6]ポート)
から行う場合は、何か別の設定が必要であれば、合わせてお教えいただくようお願いいたします。

>ちなみにUART、RC232C、USB、LANなどから得られた値をログやコンソールに出力するという理解ですが、
>具体的にはどのデバイスからデータを得ることをお考えでしょうか?
ログ出力の用途としては、Armadilloシステムで行った動作(演算結果やGUIのボタン操作情報など)を
UART、RC232C、USB、LAN等のデバイスで出力することを考えています。
(ファイル等に書き込む場合は、LANやUSB経由でログファイルを読みだしての確認する方法も検討しております。)
可能であれば現状はすぐに動作が確認できるコンソール(X2基板の[con6]ポート)かUSB(X2基板の[con17]ポート)
を使用してログ出力できればと考えています。

ファイル ファイルの説明
print()コマンド追加箇所.png