Node-RedからRaspberryPiでPythonスクリプトをトリガーする方法
IoTプロジェクト用にRaspberryPiでホストされているNode-Redを使用しています。
Node-RedからraspiにあるPythonスクリプトをトリガーするにはどうすればよいですか?Adafruit LCDシールドのテキストを更新するスクリプトを実行したいPiに座っています
どういうわけか、PythonスクリプトをWebサービスとして公開することを検討する必要がありますか?
Raspberry Pi B +を使用しています
Node-REDは、外部コマンドを呼び出すために使用できるコアセットの一部としてexecノードを提供します。これは、pythonスクリプトを呼び出すことができます。
使用方法の詳細は、コピーをキャンバスにドラッグしたときの情報サイドバーにあります。
または、スクリプトをWebサービスまたは単純なTCPソケットとしてラップすることもできます。どちらにも、それらを駆動するために使用できるノードがあります。
Exec nodeコマンドを使用して、引数を使用してPythonスクリプトを呼び出すことができます。
python ~/script.py arg1 arg2
Pythonスクリプトでは、sysモジュールで引数をキャッチできます。
import sys
var1 = sys.argv[1]
var2 = sys.argv[2]
sys.argv [0]は、スクリプト名用に予約されています。
- Pythonと一緒にred-nodeをインストールしていただければ幸いです。そうでない場合は、Power ShellまたはCMDのいずれかを使用してインストールします。npm install -g node-red-contrib-python3-function
- Node-redを起動した後、Node node-redのパネルにpythonshellノードがあります。ドラッグアンドドロップしてダブルクリックすると、「ノードのプロパティ」パネルが表示されます。Python.exeパスを入力してください。名前とPython Pyファイル内のファイル]をクリックし、[完了]をクリックします。
- Msg-payloadノードを接続してデプロイします。
- PythonShellノード入力をクリックすると、pythonプログラムが実行され、出力に表示されます。