【IoT活用編】センサー値活用(1)

センサー値をWi-Fiで送信し、データ集計・グラフ化し、スマホで確認します。第1回目は、送信側でボタンを押すと、「ATOM」という文字を送信し、それを受け取った受信側で受け取った時間を追加して画面に表示する処理を行います。

送信側の環境は、マイコンに「ATOM Lite」、プログラミングは「UIFlow」(ブロック組立て型・Blockly)を使います。

受信側の環境は、マイコンに「Raspberry Pi」、プログラミングは「Thonny Python IDE」でPythonを使います。

通信はWi-Fiで、UDP通信を行います。

【ATOM Lite − Blockly/MicroPython(UIFlow)】

緑色のブロックは[ハードウェア]-[Network]に、水色のブロックは[高度なブロック]-[Socket]-[UDP Client]にあります。

①IPアドレスを取得します。
②ボタンAを押したときの処理を設定します。
③UDP Clientの準備をします。UDP通信で使用するアドレス(IP+Port番号)を指定します。
④送信側アドレスを固定します。
⑤受信側アドレスを指定してデータを送ります。相手側のIPアドレスは確認して入力してください。

表示を[Blockly]→[Python]に切り替えます。
MicroPythonに変換されて表示されます。ここで修正して実行することができます。ただし、保存はできません。

【Raspberry Pi − Python(Thonny Python IDE)】

UDP通信で受信するためのPythonプログラムです。
9行目に指定している受信元IPアドレスは、現在のIPアドレスを確認して入力してください。(送信側⑤で指定するものと同じ)

プログラムの実行

【送信側】ATOM Liteにプログラムを転送して実行
【受信側】Raspberry PiのThonny Python IDEで[Run(実行)]ボタンをクリックしてプログラムを実行

ATOM Liteの上面にあるボタンAを押すと、Thonny Python IDEの下側の「Shell」画面に受信したデータが表示されます。


次回は、「受信したデータをCSVファイルに書き込む」です。

コメントする