ラズパイで消費電力を取得する（１）

#目的
Raspberry Pi4とCTセンサーを用いて、消費電力を取得し、AWS IoT Core経由で、ElasticSearchに流し込むこと。

#方法
ざっくりの流れは以下の通りです。

1. ハードウェアの構築
1. 消費電力取得プログラムの作成
1. AWS環境の構築

###1.1　ラズパイのセットアップ

まずは、ラズパイ上で、Pythonのスクリプトが実行できるようにセットアップしていきます。

####1.1.1　必要なものを用意する

* Raspberry Pi 4（通称ラズパイ）
* USB-Cの電源（3.0A以上供給可能なもの）
* あらかじめRaspberry Pi OSがインストールされたmicroSDカード
* USBキーボード
* USBマウス
* モニター
* マイクロ HDMI-HDMIケーブル

**ラズパイのインターフェース**

<img width="500" alt="スクリーンショット 2021-10-21 15.53.31.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/920301/58e9ed01-2595-7a2d-ede8-f1fece5fbea9.png">

####1.1.2　microSDカードを入れる

<img width="500" alt="スクリーンショット 2021-10-21 15.54.23.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/920301/87ec29c6-eaa6-3234-ac7c-feb21caf504d.png">

####1.1.3　マウスとキーボードを接続する

<img width="500" alt="スクリーンショット 2021-10-21 16.01.32.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/920301/0d8721d9-0903-373f-cb8c-ba4c599a81b8.png">

####1.1.4　モニターをHDMI0に接続する

<img width="500" alt="スクリーンショット 2021-10-21 16.02.31.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/920301/cc165681-dcaa-cb80-71fa-4ced76dd2f4c.png">

####1.1.5　電源に接続する

<img width="500" alt="スクリーンショット 2021-10-21 16.03.24.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/920301/9248616e-d81e-d2f8-07de-37442cd03130.png">

電源に接続すると自動的に下記のようにラズパイが起動する。

<img width="500" alt="図1.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/920301/7bbe484a-9038-1418-cdd2-1bcae77d3242.png">

###1.2　OSのセットアップ

![スクリーンショット 2021-10-21 16.07.03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/920301/436e27ad-ba2c-2a03-7460-335c6c3e6172.png)

* Raspbian(推奨)とかかれたOSを選択する
* 右の画面が表示されるのでNextをクリック

<img width="500" alt="スクリーンショット 2021-10-21 16.08.05.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/920301/13cec2c0-02d8-94d2-dc1c-ec3d49ecb940.png">

* Country(国)からJapanを選択
* Language(言語)からJapaneseを選択
* Timezone(タイムゾーン)からTokyoを選択
* Nextをクリック

<img width="500" alt="スクリーンショット 2021-10-21 16.11.15.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/920301/2fd4c1d8-9069-f679-b7e0-605692ac7418.png">

* 新しいパスワードと確認用パスワードを入力
* 入力したらNextをクリック

<img width="500" alt="スクリーンショット 2021-10-21 16.13.51.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/920301/1f5105c4-e107-5e6c-208d-055ab30acf68.png">

* モニターの外枠付近に、何も表示されていない部分があれば、□This screen shows a black border around the desktopに✔️をしてNextをクリック

![スクリーンショット 2021-10-21 16.15.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/920301/7985d043-e655-4f7c-178e-aefe1b550893.png)

* 左の画面の青い枠線の中から接続するWi-Fiを選択し、Nextをクリック
* 右の画面が表示され、Wi-Fiのパスワードを求められるので入力し、Nextをクリック

![スクリーンショット 2021-10-21 16.16.28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/920301/829100de-3b84-8964-e860-d7e8afce934b.png)

* 左の画面でNextをクリックし、ソフトウェアのアップデートを行う
* 右の画面が表示されるのでRestartをクリックし、セットアップ完了

###1.3　システムのアップデート

![スクリーンショット 2021-10-21 16.19.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/920301/83fecb75-9ad0-d0d8-7046-75cc3609458d.png)

* ホームボタン ＞ アクセサリ から LXTerminal を選択し、起動する

LXTerminal上で下記コマンドを実行

```terminal
pi@raspberrypi:~ $　sudo apt update
```

下記のようにアップデートが始まる。

<img width="500" alt="図1.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/920301/e5e92c3c-8553-58a1-739c-62a306df8af8.png">

アップデート完了後、下記コマンドを実行

```terminal
pi@raspberrypi:~ $　sudo apt upgrade -y
```

アップグレードに数分かかる。
入力を受け付けるようになったら、下記コマンドを実行し、再起動する。

```terminal
pi@raspberrypi:~ $　sudo reboot
```

###1.4　Pythonの実行環境構築

* OSをインストールをした際にPython2系とPython3系がインストールされる
* ランタイム時のデフォルトのバージョンは　python --version　を実行することで確認できる

```terminal
pi@raspberrypi:~ $　python --version
python 2.7.16
```

現在は、python2.7.16となっているのが確認できる。
Python3系をデフォルトにしたいので、下記コマンドを順に実行する。

```terminal
pi@raspberrypi:~ $ cd /usr/bin
pi@raspberrypi:/usr/bin $ sudo unlink python
pi@raspberrypi:/usr/bin $ sudo ln -s python3 python
pi@raspberrypi:/usr/bin $ cd ~
pi@raspberrypi:~$ python --version
python 3.7.3
```


#まとめ
まずは、消費電力を取得するエッジデバイスとして用いるRaspberry PiでPythonが実行できるところまでセットアップしました。[次回の記事](https://qiita.com/shof0322/items/a7b6217bedd05f7edd9f)で続きを書いていきたいと思います。