h1rohiromat
2024年12月10日 17時57分
==========
製品型番:Armadillo-IoT A6E
Debian/ABOSバージョン:3.20.3-at.4
カーネルバージョン:5.10.228-0-at #1-Alpin
3G/LTE モジュール情報 (Debianのみ):
その他:
==========
大変お世話になっております。
WindowsPCにATDEの開発環境を構築、さらにその上にNode-Redをインストール、
Armadillo本体にModbus機器(電力計)を接続して、データ取得を試みております。
添付写真の構成にて、Node-Red上でデータ自体は取得できているのですが、これをcsvファイルとして
出力する部分で行き詰っております。
ブログ:Armadillo-640:Node-REDを使ってModbus通信でデータを収集しグラフ化する
https://armadillo.atmark-techno.com/blog/10899/12179
の手順に従って、各種設定していますが、Write Fileノードのなかの出力先のパス
(/root/data.csv)がどこにあるのか?(どうやってファイルの場所に辿り着けるのか?)
が理解できておらず、投稿させて頂いた次第です。
ちなみに、
1)ATDEのrootディレクトリ、Armadilloのrootディレクトリにcsvファイルが出力されていないこと
2)同ディレクトリに予め、”data.csv”というファイルを準備して、動作させても、ファイルの中に
取得データが反映されないこと
3)ディレクトリ名を”HOME”などに変更し、1)、2)を試してもNGであること
までは確認しております。
素人の質問で恐れ入りますが、ご教授のほど、よろしくお願い申し上げます。
ファイル | ファイルの説明 |
---|---|
IMG_8619.jpg |
コメント
h1rohiromat
山崎様
大変お世話になっております。
早々にご回答ありがとうございました。
> このことから Node-RED はブログで紹介されている、set_node_red_serial.sh スクリプトを用いて、ATDE 上で動いていることと思います。
> 認識が間違っている場合はご指摘ください。
->上記のスクリプトは使用せずに、貴社マニュアル「armadillo-iotg-a6e_node-red-guide」のなかのp.33「3.7. Node-RED に接続する」
に記載してある、パソコンの Web ブラウザから、http://:1880/ にアクセスして使用しております。
> 一点確認です。
> 添付いただいた画像には debugノードが接続されていますが、デバッグメッセージには何か表示されているでしょうか?
> 例えば ATDE 上で実行した場合は atmark ユーザで実行しているはずなので、Node-RED に権限がなく、以下のようなメッセージが表示されると思います。
> "ファイルの追記処理が失敗しました: Error: EACCES: permission denied, open '/root/data.csv'"
> 上記が表示されている場合は、ファイルにアクセスできない状態だと思います。
->こちらについては、デバックメッセージとして、modbus機器から取得したデータが一定時間ごとに表示されるのみで、失敗しました、といった
エラーメッセージは特段表示されていないかったと思います。
> 2)
> data.csv を予め用意する必要はありません。ファイルがない場合は作成します。
> 存在する場合は追記します。
->承知しました。
> 3)
> "/home/atmark/data.csv" で試してみてください。
->確認ですが、ATDE上でset_node_red_serial.sh スクリプトを起動し、上記コマンドでファイルを開くという手順という意ですか?
以上、よろしくお願い申し上げます。
at_reika.yamazaki
お世話になっております。山崎です。
>->上記のスクリプトは使用せずに、貴社マニュアル「armadillo-iotg-a6e_node-red-guide」のなかのp.33「3.7. Node-RED に接続する」
> に記載してある、パソコンの Web ブラウザから、http://:1880/ にアクセスして使用しております。
「Node-RED 開発ガイド」をご使用いただいているのですね。ありがとうございます。
>> 3)
>> "/home/atmark/data.csv" で試してみてください。
>->確認ですが、ATDE上でset_node_red_serial.sh スクリプトを起動し、上記コマンドでファイルを開くという手順という意ですか?
こちらについては「Node-RED 開発ガイド」の手順を行っている場合は不要です。
追加で2点確認です。
1点目、
「Node-RED 開発ガイド」では 「3.2. インストールディスクを使用してセットアップを行う」という章で、A6E に Node-RED コンテナをインストールして使用しているのですが、こちらの手順は実行されましたか?
2点目、
「3.2. インストールディスクを使用してセットアップを行う」を実行している場合は、A6E 上で Node-RED が起動しています。
A6E 内のパス "/var/app/rollback/volumes/node-red/root/" というパスがあるか、またそのパスに data.csv が出来ているかをお確かめいただけますでしょうか?
以上、どうぞよろしくお願いいたします。
h1rohiromat
山崎様
> 追加で2点確認です。
> 1点目、
> 「Node-RED 開発ガイド」では 「3.2. インストールディスクを使用してセットアップを行う」という章で、A6E に Node-RED コンテナをインストールして使用しているのですが、こちらの手順は実行されましたか?
->はい、その手順でセットアップしました。
> 2点目、
> 「3.2. インストールディスクを使用してセットアップを行う」を実行している場合は、A6E 上で Node-RED が起動しています。
> A6E 内のパス "/var/app/rollback/volumes/node-red/root/" というパスがあるか、またそのパスに data.csv が出来ているかをお確かめいただけますでしょうか?
-> 該当ファイルがありました。こちらのパスに入るようになっているのですね。
テキストエディタ(vi)で開いてみましたが、データも反映されているようです。
お忙しい中、ご教示、ありがとうございました。
at_reika.yamazaki
お世話になっております。山崎です。
>該当ファイルがありました。こちらのパスに入るようになっているのですね。
> テキストエディタ(vi)で開いてみましたが、データも反映されているようです。
無事にファイルが確認できたということで良かったです。
こちらのファイルパスについて補足します。
Node-RED コンテナを起動させるための、コンテナ設定ファイルが A6E の "/etc/atmark/containers/node-red.conf" にあります。
このファイルの中に以下の記述があると思います。
add_volumes /var/app/rollback/volumes/node-red/root:/root
これは A6E 内の "/var/app/rollback/volumes/node-red/root" を Node-RED コンテナ内の "/root" として見えるようにボリュームマウントする記述になります。
この記述により、"/root/data.csv" に書いたファイルが、A6E 上の "/var/app/rollback/volumes/node-red/root/data.csv" に現れたという流れになります。
以上、どうぞよろしくお願いいたします。
at_reika.yamazaki
2024年12月10日 20時31分
お世話になっております。山崎です。
>WindowsPCにATDEの開発環境を構築、さらにその上にNode-Redをインストール、
このことから Node-RED はブログで紹介されている、set_node_red_serial.sh スクリプトを用いて、ATDE 上で動いていることと思います。
認識が間違っている場合はご指摘ください。
1)
write file ノードでは、「ファイル名」はフルパスで指定された場合はフルパスでアクセスします。そうではない場合は Node-RED プロセスの実行ディレクトリからの相対パスになります。
一点確認です。
添付いただいた画像には debugノードが接続されていますが、デバッグメッセージには何か表示されているでしょうか?
例えば ATDE 上で実行した場合は atmark ユーザで実行しているはずなので、Node-RED に権限がなく、以下のようなメッセージが表示されると思います。
"ファイルの追記処理が失敗しました: Error: EACCES: permission denied, open '/root/data.csv'"
上記が表示されている場合は、ファイルにアクセスできない状態だと思います。
2)
data.csv を予め用意する必要はありません。ファイルがない場合は作成します。
存在する場合は追記します。
3)
"/home/atmark/data.csv" で試してみてください。
以上、どうぞよろしくお願いいたします。