V1.0 2021/8/19

抜粋版
ＵＰＳ電源開発キット～ソーラーパネル＋ポータブル電源を使ってＵＰＳ電源化し、自宅のパソコンで常用、ＣＯ２排出削減に貢献～

実践編

AWS IoT
スペクトラム・テクノロジー株式会社
https://spectrum-tech.co.jp
sales@spectrum-tech.co.jp
all rights reserved 2021 spectrum technology co.

1

ＵＰＳ電源開発キット 目次

Pi運用マニュアルページ

ＡＷＳ ＩｏＴ開発ページ

1.
2.
3.
4.

①
②
③
④

RaspberryPiについてLinux基本コマンド
基本操作
日常運用（ウイルススキャン、更新）

3
4
5
6

メニュー
ＡＷＳ設定
ＡＷＳ ＩｏＴ設定
ＵＰＳ電源

8916

• 全体構成• 接続構成• 単体試験• AWS IoTルール設定• プログラム設定• IoT折り返し試験• iot総合試験• ＤｙｎａｍｏＤＢ確認• リアルタイム表示設定、確認• ＩＡＭユーザ追加• CSVデータ取得• Ｃｌｏｕｄｗａｔｃｈ使い方

293032333945464749515557

all rights reserved 2021 spectrum technology co.

抜粋版のためページと一致しません

2

RaspberryPi運用マニュアル
1. Raspberry Piについて既に全世界で1000万台以上販売された手のひらサイズのコンピュータです。
ＬｉｎｕｘベースのＲａｓｂｉａｎＯＳで動作しております。

2. Linux基本コマンド① システム関係• 起動：電源を入れると自動で起動します。
• 再起動：$ reboot
又は、menu>shutdown>reboot；左上のメニューから• 終了：$ shutdown
又は、menu>shutdown>shutdown；左上のメニューから• ログアウト $ exit
又は、menu>shutdown>logout；左上のメニューから• 日本語／英語の入力切替：キーボードのＣＴＬとｊを同時に押します（コントロール：左下とｊ）

all rights reserved 2021 spectrum technology co.

3

RaspberryPi運用マニュアル
2.

Linux基本コマンド② ディレクトリ操作、コピー、移動、削除
pi@raspberrypi:~$ cd /home/pi/Documents ディレクトリの切り替え
pi@raspberrypi:/home/pi/Documents$ ls
ファイルとディレクトリの表示（表示したら操作したいファイルを右クリックでコピペして操作します
pi@raspberrypi:~$ cp ファイル名 ディレクトリ
配下のディレクトリのファイルを別のディレクトリへコピー
pi@raspberrypi:~$ mv ファイル名 ディレクトリ
配下のディレクトリのファイルを別のディレクトリへ移動
pi@raspberrypi:~$ sudo rm ファイル名
ファイルの削除
便利な機能
rm –help
コマンドのオプションが分からない場合は、ヘルプで問い合わせる。すべてのコマンド共通(マイナスを２個とhelp)③ ユーザ権限、プロセス他
pi@raspberrypi:~ $ su スーパーユーザ（root)に切り替え、パスワードを入力
pi@raspberrypi:~$ ps a
現状の動いているプロセスを表示
pi@raspberrypi:~$ kill
特定のプロセスを強制終了
pi@raspberrypi:~$ sudo apt-get install pkg
パッケージのインストールなどに使用
pi@raspberrypi:~$ date
日付、時間の設定を行います。
pi@raspberrypi:~$ sudo leafpad /etc/network/interfaces
インタフェースに記述してい内容を変更します。Viよりも使いやすいです。

④ モジュール、usb、メモリ、ＨＤＤなどの表示
pi@raspberrypi:~$ lsmod
pi@raspberrypi:~$ lsusb
pi@raspberrypi:~$ free –mt
pi@raspberrypi:~$ df

linuxのモジュールリスト表示
usbのデバイス表示
メモリ使用状態表示
ＨＤＤ（マイクロＳＤ）の使用状態表示

all rights reserved 2021 spectrum technology co.

4RaspberryPi運用マニュアル
デスクトップ上によく使うコマンド.txtがあります。
コピペして使ってください

3. Raspberry Piの基本操作① 表示画面と内容トップ画面（上段のタスクバーで選択）• メニュー• ブラウザ• ファイルマネジャ• ターミナル• マルチ画面選択

••
•
••
•
•

ＶＮＣ
日本語入力
ＢＬＥWiFi
音量
ＣＰＵ使用率時刻

all rights reserved 2021 spectrum technology co.

5RaspberryPi運用マニュアル
4. 日常運用①

セキュリティ対策（アンチウイルス更新、スキャン）• アンチウイルス対策として無料のclamAVをインストールしてます。
• 手動での運用を基本としてます。
パターンファイル更新

手動スキャン時に更新されます
手動でスキャン
$ sudo clamscan --infected --remove --recursive
自動化可能ですが、バックグランドで重くなる可能性大。コマンド入力後約５分位かかります。

all rights reserved 2021 spectrum technology co.

6RaspberryPi運用マニュアル
4. 日常運用②

インストール済パッケージの更新リスト、アップグレード• Linuxの場合は、頻繁に更新が発生します。アップグレードを定期的に実施してください。
• 更新前には、バックアップを取ることをお勧めします。特にアップグレードはまれに動作不良、戻せない状態が発生します。自己責任で実施してください。

更新リスト取得$ sudo apt-get update
アップグレード実施$ sudo apt-get upgrade

all rights reserved 2021 spectrum technology co.

7

ＡＷＳ ＩｏＴ開発①．メニュー• ＡＷＳ設定ＡＷＳ ＩｏＴを実施するためのＡＷＳの設定
ＡＷＳの詳細説明は以下のＵＲＬへ
https://aws.amazon.com/jp/cloud/?nc2=h_l2_cc• ＡＷＳ ＩｏＴ設定
ＡＷＳ ＩｏＴのデバイス、証明書、ポリシー、ルールなどの設定を行います。
開発者ガイトは以下のＵＲＬへ
https://docs.aws.amazon.com/ja_jp/iot/latest/developerguide/what-is-awsiot.html（参考）• Ｇｉｔｈｕｂなど• https://github.com/aws/aws-iot-device-sdk-python3（一部のプログラムはＴＬＳエラーで動きません）• https://github.com/eclipse/paho.mqtt.python3• ＭＱＴＴ• https://www.ibm.com/developerworks/jp/iot/library/iot-mqtt-why-good-for-iot/（ＩＢＭの資料でわかりやすい）all rights reserved 2021 spectrum technology co.

8

ＡＷＳ ＩｏＴ開発②．ＡＷＳ設定• 手順１：アカウントの作成• https://aws.amazon.com/jp/register-flow/• 必要なメールアドレス、パスワードなどを入力します。

all rights reserved 2021 spectrum technology co.

9ＡＷＳ ＩｏＴ開発②．ＡＷＳ設定• ＡＷＳトップ画面• 利用する場合に、地域を意識して設定してください。地域毎に料金が変わったり、利用できるサービスが限定されている場合があります。

all rights reserved 2021 spectrum technology co.

10

ＡＷＳ ＩｏＴ開発③．ＡＷＳ ＩｏＴ設定

AWS IoT Core

• 画面説明１• ＡＷＳトップ画面からＡＷＳ ＩｏＴのサービスを選択します。
• モニタリング：接続状況がひとめで分かりますall rights reserved 2021 spectrum technology co.

11

ＡＷＳ ＩｏＴ開発③．ＡＷＳ ＩｏＴ設定

AWS IoT Core

• 画面説明２• オンボード：特に使用しません• 管理：モノall rights reserved 2021 spectrum technology co.

12

ＡＷＳ ＩｏＴ開発③．ＡＷＳ ＩｏＴ設定

AWS IoT Core

• モノの登録２• 単一のモノを作成するを押します。

all rights reserved 2021 spectrum technology co.

13

ＡＷＳ ＩｏＴ開発③．ＡＷＳ ＩｏＴ設定

AWS IoT Core

• 証明書確認• モノ＞作成したモノ＞• 証明書タグでアクティブになっていることを確認

all rights reserved 2021 spectrum technology co.

14

ＡＷＳ ＩｏＴ開発AWS IoT Core

④ ＵＰＳ電源 全体構成
UPS電源開発キット＋AWS IoT開発キット
ina219IoT MQTT
protocolBATT 電圧監視AWS IoT Core Amazon DynamoDB

shutdown

ソーラパネル
AC100Vパソコン

ソーラパネル＋ポータブル電源
all rights reserved 2021 spectrum technology co.

リアルタイムグラフ

ポータブル電源のバッテリ電圧、電流データをINA219センサで収集し、ＡＷＳ ＩｏＴに送信し、ＤｙｎａｍｏＤＢに確保します。Ｄｙｎａｍｏ
ＤＢの値を外部からリアルタイムのグラフ表示します。
ＵＰＳ電源化の基本機能として、バッテリ電圧の低下状況により、使用中のパソコンを自動停止させます。
15

ＡＷＳ ＩｏＴ開発④ ＵＰＳ電源AWS IoT Core$ cd /home/pi/Documents/solar$ python3 ina219_simpletest.py

ina219単体試験• Ｐｉコンソールでina219_simpletest.pyを動作させます。
• 電圧電流が出力されます。
• 出力されない場合は、Ｉ２Ｃの設定を確認。0ｘ40に値が表示されれば正常。
$ i2cdetect -y 1

all rights reserved 2021 spectrum technology co.

16

ＡＷＳ ＩｏＴ開発④ ＵＰＳ電源AWS IoT CoreAWS IoTのルール設定• ＡＷＳ ＩｏＴのコンソールからＡＣＴ＞ルール• ルール作成を押します。

all rights reserved 2021 spectrum technology co.

17

ＡＷＳ ＩｏＴ開発AWS IoT Core

④ ＵＰＳ電源
mqtt_subscribe_json.pyのプログラム設定••

Windows PCにさくらエディタなどをインストール
Ｗｉｎｄｏｗｓネットワークからｒａｓｂｅｒｒｙ ｐｉをクリックしてpi>documents>solar• mqtt_subscribe_json.pyをｗｉｎｄｏｗｓのローカルにコピペします。
• エディタでローカルのmqtt_subscribe_json.pyを開きます。
• 電子証明書などの情報を設定します。5-14行

MQTT_TOPIC = “pi3” ａｗｓ ｉｏｔルールのトピック

エンドポイントページ参照

MQTT_HOST = “xxx.amazonaws.com"エンドポイントの値を入れます
CA_ROOT_CERT_FILE = "root-CA.crt"
THING_CERT_FILE = “xxx-certificate.pem.crt"電子証明書番号
THING_PRIVATE_KEY = “xxx-private.pem.key”電子証明書番号•秘密鍵のペアである公開鍵は使用しません•

証明書をフォルダにアップロード• 最初にダウンロードした証明書のうち• root-CA.crt, xxx-certification.pem.crt,• Xxx-private.pem.keyの３個を• pi>documents>solarのフォルダにアップロード
書き換えたmqtt_subscribe_json.pyをアップロード
all rights reserved 2021 spectrum technology co.

18

ＡＷＳ ＩｏＴ開発AWS IoT Core

④ ＵＰＳ電源ＡＷＳ ＩｏＴ総合試験•••

Ｐｉのコマンド画面からsubscriber, publisherのやりとりを実施
subscribe側に電圧、電流のデータが受信できていればＯｋ
Battの最低動作電圧を設定し、総合試験 $ cd /home/pi/Documents/solar$ python3 mqtt_subscribe_json.py 受信側を先に立ち上げ
別のウインドを開き$ python3 ina219_mqtt_publish_ups.py 送信側立ち上げ
Windows pcにshutdownコマンドが送信されたことを確認。
Windows pcに何分後にシャットダウンと表示されます

all rights reserved 2021 spectrum technology co.

19

ＡＷＳ ＩｏＴ開発④ ＵＰＳ電源AWS IoT Core

リアルタイム表示• ＩｏＴ．Ｋｙｏｔｏ様の利用＞グラフ• Ｄｅｖｉｃｅｉｄ：ina219（python3で書き込み済）• 表示対象をチェックすると自動で表示されます。

all rights reserved 2021 spectrum technology co.

20