マイコン類:Raspberry Pi Zero, Arduino nano
センサ類:温湿気圧センサ, 照度センサ, 9軸センサ, 体温センサ, GSRセンサ, 心拍センサ
その他:Respeaker 2-mics pi hat, microHDMIケーブル, モバイルバッテリーとmicro USB-typeb, ArduinoとRaspberry Piをつなぐケーブル(microUSB-typeb to miniUSB-typeb), ブレッドボード, イヤホン
Raspberry Pi Zero WHでも下記の通りに初期設定をすることができます.
もし特定のwifiにしか接続できない場合は以下を確認する。
1, LANや無線LAN等のインタフェースの設定ファイル
/etc/network/interfaces
2, 無線LANのSSIDやパスフレーズを設定するファイル
/etc/wpa_supplicant/wpa_supplicant.conf
3, IPアドレスの設定ファイル
/etc/dhcpcd.conf
以上のファイルの中身を書き換えることで、直すことができる。
sudo raspi-configすると画面が切り替わる.ここからはキーボードのカーソルキーで操作する.
sudo apt-get updateを入力するすると,アップデートが始まる.終了したら,
sudo apt-get upgradeを入力するすると,アップデートが始まる.この時続行するかを聞かれるので,Yと入力し続行する.終了したら,
sudo rebootで再起動する.
以下でパソコンでの遠隔操作ができるようにする。
まずはコンパイルに必要になるライブラリをインストールします。(python3.7.2の場合)
$ sudo apt update $ sudo apt upgrade $ sudo apt install libffi-dev libssl-dev openssl
次にソースコードのダウンロード
$ wget https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tgz
コンパイルしていきます。
$ tar zxvf Python-3.7.2.tgz $ cd Python-3.7.2 $ ./configure $ make $ sudo make install
エラー無くインストールできたらバージョンを確認します。
$ python3 -V Python 3.7.2
続いてpipのアップデートを行います。
$ sudo pip3 install --upgrade pip $ pip3 --version pip 19.0.3 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)
Raspberry Piのpythonは最初メインがpython2なので下記に従ってpython3へと変更する。
以下のコマンドを実行し、デフォルトで使用されるPythonのバージョンを確認します。
pi@raspberrypi:~ $ python --version Python 2.7.16 pi@raspberrypi:~ $
インストール直後は、以下のように、python 2.7とpython 3.7の両方のバージョンがインストールされています。
pi@raspberrypi:/usr/bin $ ls -l | grep python -rwxr-xr-x 1 root root 1056 Mar 4 2019 dh_python2 lrwxrwxrwx 1 root root 23 Oct 10 2019 pdb2.7 -> ../lib/python2.7/pdb.py lrwxrwxrwx 1 root root 23 Jul 25 14:03 pdb3.7 -> ../lib/python3.7/pdb.py lrwxrwxrwx 1 root root 31 Mar 26 2019 py3versions -> ../share/python3/py3versions.py lrwxrwxrwx 1 root root 7 Mar 4 2019 python -> python2 lrwxrwxrwx 1 root root 9 Mar 4 2019 python2 -> python2.7 -rwxr-xr-x 1 root root 2984816 Oct 10 2019 python2.7 lrwxrwxrwx 1 root root 9 Mar 26 2019 python3 -> python3.7 -rwxr-xr-x 2 root root 4275580 Jul 25 14:03 python3.7 -rwxr-xr-x 2 root root 4275580 Jul 25 14:03 python3.7m lrwxrwxrwx 1 root root 10 Mar 26 2019 python3m -> python3.7m lrwxrwxrwx 1 root root 29 Mar 4 2019 pyversions -> ../share/python/pyversions.py
上記の実行結果からデフォルトで使用されるPythonは、Python 2.7へのシンボリックになっています。デフォルトで使用するPythonをPython 3.7に切り替えるには、このシンボリックリンクをPython 3.7へのシンボリックリンクに変更します。
以下のコマンドを実行し、現在のPythonのシンボリックを削除します。
pi@raspberrypi:~ $ cd /usr/bin pi@raspberrypi:/usr/bin $ sudo unlink python
以下のコマンドを実行し、Python3.7へのシンボリックリンクを作成します。
pi@raspberrypi:~ $ cd /usr/bin pi@raspberrypi:/usr/bin $ sudo ln -s python3 python
Python 3.7へのシンボリックリンクが作成されていることを確認します。
pi@raspberrypi:/usr/bin $ ls -l | grep python -rwxr-xr-x 1 root root 1056 Mar 4 2019 dh_python2 lrwxrwxrwx 1 root root 23 Oct 10 2019 pdb2.7 -> ../lib/python2.7/pdb.py lrwxrwxrwx 1 root root 23 Jul 25 14:03 pdb3.7 -> ../lib/python3.7/pdb.py lrwxrwxrwx 1 root root 31 Mar 26 2019 py3versions -> ../share/python3/py3versions.py lrwxrwxrwx 1 root root 7 Oct 30 03:10 python -> python3 <-- ※ 作成したシンボリックリンク lrwxrwxrwx 1 root root 9 Mar 4 2019 python2 -> python2.7 -rwxr-xr-x 1 root root 2984816 Oct 10 2019 python2.7 lrwxrwxrwx 1 root root 9 Mar 26 2019 python3 -> python3.7 -rwxr-xr-x 2 root root 4275580 Jul 25 14:03 python3.7 -rwxr-xr-x 2 root root 4275580 Jul 25 14:03 python3.7m lrwxrwxrwx 1 root root 10 Mar 26 2019 python3m -> python3.7m lrwxrwxrwx 1 root root 29 Mar 4 2019 pyversions -> ../share/python/pyversions.py
デフォルトで使用されるPythonのバージョンがPython 3.7に変更されていることを確認します。
pi@raspberrypi:~ $ python --version Python 3.7.3
以上で終了です。
下記のプログラムを全てダウンロードする。
Arduinoの配線図を描けるフリーソフトがなかったので表にしました。
見にくくてすいませんorz
温湿度気圧センサ(左側がArduinoのピン名称、右側がそれぞれのピン名称)
| SDA-A4 | SCL-A5 | GND-GND | VIN-5V |
9軸センサ
| 上の一番左-5V | 下の左-GND | 下の真ん中-A4 | 下の右-A5 |
照度センサ
http://jkoba.net/prototyping/arduino/cds_practice.html
体温センサ
http://naritaku.hatenablog.com/entry/2016/04/05/230649
(*アナログピンだけA3、理由はほかのセンサのアナログピンがかぶるとおそらくセンサ値がバグるから)
心拍センサ
| 黒い線-GND | 赤い線-3.3V | 紫色の線-A0 |
GSRセンサ
https://wiki.seeedstudio.com/Grove-GSR_Sensor/
(*これもアナログピン被るからこれだけA2に変更)
完成図(見えにくいけど)
Arduino公式サイトから最新のArduino IDEをダウンロードする。(Linux arm 32bitを選択する)
USBメモリか何かを使ってダウンロードしたものをRaspberry Pi上のダウンロードフォルダ内に置く。
置いたら、右クリックここでファイルを展開する。
展開したら、arduino-1.8.13などarduino-バージョンといったフォルダが隣に出来上がる。
できたらターミナルを開き先ほどできたフォルダ内までいき以下を実行
./install.sh
Arduino IDEを開いて、ツール>ボードからArduino nano
プロセッサでATmega328P(Old Bootloader)を選択
この2つが正しく設定されるとシリアルポートが表示される。
Interruptはapp2のフォルダの中に入れて置き開かない。
app2の内容をArduino nanoに書き込む。(この時うまく書き込めなかったらここを参照,こっちでArduino nanoのつなぎ方を確認)
下記のURLを参考に初期設定を行う。
https://urashita.com/archives/28039
①サーバにログインしてprocessing_data_server2.pyを動かす
②Raspberry Pi上のsendata.pyを動かす
③Raspberry Pi上のnewsensa_all_tkd.pyを動かす(ここでセンサデータが1024個貯まるまで待つ)
④Raspberry Pi上のgasmic_tkd_1.pyを動かしてマイク入力を行う
⑤サーバ上のprocessing_data_server.pyを動かす
⑥決定木分析を行いたい場合にはサーバ上でstress_decision_tree.pyを動かす