LoginSignup
7
1

More than 1 year has passed since last update.

SORACOM 3G対応データ通信端末を利用した水やりIoTシステム

Last updated at Posted at 2021-08-24

背景

この前、ラズベリーパイを利用した水やりシステムを投稿しました。その時に、家のWifiと利用して、外から水やりシステムとの通信をしましたが、今回、家のWifiを利用せず、SORACOM 3G対応データ通信端末を利用して外部との通信を行うことにしました。

soracom.jpg

準備するもの

  • ラズベリーパイ3 x 1
  • SORACOM 3G対応データ通信端末 AK-020 X 1
  • Arduino ELEGOO UNO R3 x 1
  • Arduino USB コード x 1
  • 湿度センサー x 2
  • ブレイブボード x 1
  • マイクロウォーターポンプ x4
  • ポケットバテッリー
  • 単3形乾電池 x 4
  • プラスチックケース x 1
  • プラスチックケース(水貯める) x 1
  • プラスチックケース x 1ゴムパイプ x 4
  • 4Ch 5v リレー x 1
  • ジャンパワイヤ オス-オス 複数
  • ジャンパワイヤ オスーメス 複数
  • ジャンパワイヤ メスーメス 複数
  • ワニ口クリップコード 複数
  • ガムテープ

成果

動画

出来上がったもの

ハードウェア

開発途中.png
組み立て途中

341629680266_.pic.jpg
実際にベランダに置く感じ

詳細.jpg
配線詳細

ソフトウェア側

スクリーンショット 2021-08-22 16.46.43.png
flutterで簡単にアプリを作ることをできました。

ロジック

名称未設定.007.jpeg

1. 四つの水pumpは単三電池から電力を供給されています
2. 四つの水pumpスイッチはリレーにより直接コントロールされています
3. それぞれ四つのリレーのチャンネルはラズベリーパイのGPIOによりコントロールされています
4. ラズベリーパイはサーバーとして動いています、GPIOをコントロールするwebサーバーと湿度情報を送るGRPCサーバーが動いています
5. Arduinoの役割は二台の湿度センサからアナログデーターを取ります
6. ArduinoはUSB Serailから湿度データーをラズベリーパイに送っています
7. ラズベリーパイはSORACOMの通信デバイスを使ってWANに接続しています
8. ラズベリーパイにngrokが動いています、そのため、外部からwebサーバーにアクセスできるようになります

ソースコード

ご参考にできればと思います

インターネット浸透

flaskサーバーのポートは5000になっています

./ngrok http 5000

湿度grpcサーバー側のポートは5000になっています

./ngrok tcp -region jp 50051

Tips

SORACOM 3Gの通信端末からWIFI IPアドレスを特定します

SORACOM 3Gの通信端末を使うことによって、wifiがない時も外からコントロールすることが可能になります。
効率を求めるため、開発する時に、家のWIFIを使っていました。しかし、IPを固定できないため、いつもSORACOMのSSHからログインして、ifconfigでwifiのIPを探していました。それもSORACOM 3Gの通信端末を利用する一つのメリットだと感じました。

まずはSORACOMのconsoleにログインします
https://console.soracom.io/

スクリーンショット 2021-08-23 13.03.24.png

スクリーンショット 2021-08-23 13.03.40.png

スクリーンショット 2021-08-23 13.03.47.png

スクリーンショット 2021-08-23 13.04.00.png

スクリーンショット 2021-08-23 13.05.15.png
これでラズベリーパイのWIFIのIPアドレスも特定できます

関連記事

7
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
1