↑Raspberry PiでPythonプログラムを実行して温湿度センサーで測定したデータをCSVファイルに書き出したもの
Raspberry Piって中途半端
プログラミング学習は自己流で
前回は、温湿度が測れるところまではできましたが、定期的に計測し記録が残せるようでないとものたりません。CO2センサーでは、他人の経験をそっくりそのまま後追いしただけですが、そこまでは達成したわけですから。その後センサーが壊れて頓挫していますが(^_^)?
これ以上は、どうやら自分で見様見真似でもプログラミングするしか前にすすめそうになさそうです。そうなれば、プログラミング言語は何にするか決めなくてはなりません。CとPythonとから選ぶなら、インタプリンタ型言語でコンパイルの必要がないPythonが良いかも。
でも、Pythonを学ばないとプログラミングできません。どうしたものでしょう。
書籍は様々あっても読まなければどれが良いのかわからないし、いくらよい解説本でも読んだだけで何もかも理解できるほどわたしの頭はよくありません。実地に試すほうがわかりやすくて性に合っているのですが、センサーなど電子工作をともなうものは、キットでも買えば系統的に学べるのか、それも定かでなければ高い買い物をするわけにはいきません。
もう面倒なので、リファレンスを一瞥してPythonはどんなプログラミング言語なのかをおおよそ感じるようにし、注意点くらいは覚えておき、あとは闇雲にプログラミングに挑み、わからなければググりながら試行錯誤することで解決していくことにしたいと思います。これまでだってそうしてきたのですから、自分流もいたしかたない。
冒頭のスクリーンショットは、そうして実現したもの。日時と測定した湿度、摂氏と華氏での温度とをターミナル、ならびにCSVファイルに出力するようにPythonにてプログラムを記述し、まがりなりにも表示できたところを示しています。
microSDカードスロットがはがれそう
実は、ここに至るまでにとんでもないトラブルがありました。Raspberry Pi ZeroのmicroSDカードスロットが半分はがれかけてしまったのです。基板からカードが飛び出す構造上の欠陥で、ケーブルをつないだりする時についつい押さえてしまって、そりゃペキッとスロットのハンダ付け部分をはがしてしまいやすですよね。修理を何回か試みたのですが、すぐはがれて半分浮いた状態です。
そのせいか、CSVファイルの書き出し時は1セルしか表示されず、しかも文字化けしたようなわけのわから記号が表示されたり、microSDカードのコピーにも失敗するは、起動に時間がかかるのもあやしいところ。
Raspberry Pi 4では、スロットを壊す可能性はないものの、発熱がすごくて冷却ファン付きのケースが欠かせません。ファンのケーブルが邪魔してSDA、.SCLピンが挿せないのは、ケーブルの問題でしょうが、スタックしたりリボンケーブルをつけようとすると、ファン用の電源が取れなくなります。この欠陥により、Raspberry Pi 4はかなり中途半端なものになっていると思います。
OSがあり、複数のOSが使えて、Raspberry Pi はつぶしがきくので損はないように思うし、Raspberry Pi Zero Wだと小型な上、安価でWi-Fiも使えるところも気に入りなだけに残念です。せめて基板にファン用の電源がとれるようにならないものでしょうか。
ところでみなさんは、形状にもよりますがボックスケースにはいったRaspberry Pi 4にHATをスタックするときやリボンケーブルをGPIOピンに接続するときはどうされていますか。ピンソケットをスタックする他ないでしょうか。
プログラム
参考にしたPythonプログラムの手直しは、以下の通り。
1)現在日時の取得
2)CSVファイルへの書き出し
3)繰り返し
具体的には(sleepなど細かな点は省いています)
|
先のスクリーンショットでは、一見10秒毎に定期実行しているかに見えますが、それは偶然、よく見ると少しづつずれていっています。CSVファイルもコマンドを実行するたびに一から書き直しになっています。そこらをもう少しなんとかしたいものです。
<参考>





