
これとは関係ない話だけれど、先日来、マイクロコントローラから送った信号を上手く受け取って保存する方法を考えていた。Facebookの人たちの知恵を借りていくつかやってみたのだけど、なかなか難しい。
1)Googleシートに直接書き込む。
APIを設定したりで面倒臭い感じがする。
2)同じ事をWebhookとIFTTT経由でやる。
手続きは簡単だけれど、なぜか送信できない。一度できたようで、Googleにファイルは作られたけれどそこから先に行かない。何度やってもそもそもIFTTTが反応してくれなくなった。もともとこれはリアルタイムにたくさんのデータを転送するには向かないとか。
3)ThingSpeakを使う方法。
まだやってないけれど、Ambientと似ているらしい。
4)Ambient。
これは前にやって成功しているが、10秒に1回しか送れない制限があるし、グラフの種類に制限がある。
5)Node-RED。
まだやってないが楽しそう。
と、そこまで考えてちょっと思った。普通にPCでPythonか何かで作ったユニバーサル・レシーバーを稼働していれば良いのではない?
データ送るって言っても、センサーの近くには必ずArduinoかMicroPythonがいるわけだから、送る時にデータのフォーマットを(ID, データ1, データ2,....)か何かで送って最初のIDで振り分ける。振り分けた先にファイルが無い場合はcsvで作り、ある場合は追記。日付が変わったら次の新しいファイルをまた作るとか。
それができればセンサーを勝手に新設してもレシーバー側は何もせずに対応可能。
でも、1つ問題はだ.... 自分がPythonのプログラムを書いた事がないって事だね。
でも大丈夫、コピペでやれば良いし、LAN内だからセキュリティ気にしなくてもだいたいOKだし。
追記
この後、コピペ+改造でプログラムを作った。
作る前にちゃんとPythonとPyCharmをインストールした。もちろんネットに書いてあった方法そのまま。もし書いてなかったらどれがPythonの正しいファイルかすらわからなくてダウンロードもできなかったろう。それでPyCharmも入れろと書いてくれてたし。しかもメニューの日本語化まで。親切な人が多いなぁ。
肝心のプログラムだけれど、これもほぼコピペ。解説を読みながら要らないところを消したり設定を書き換えてみたりしたら何だかわからないがデータのレシーバー側はPC上で動いた。
送信側はちょっと困った。参考にしたプログラムがPython用でMicroPython用じゃなかったし、MicroPython用のライブラリが探しにくかった。なのでだいぶ悩んだ。思いついたのは、動かなさそうな部分を使わない事。どうせテストだし。これに以前作ったネットワーク設定部分とネット時刻取得部分を混ぜて1つにした。そしたら、動いた。送信してレシーバー側にデータがちゃんと届いた。
明日はレシーバーにデータを振り分けるところを追加、csvファイルを作って追記する部分も足してみたい。
プログラミングの重要なスキルはコピペだ!
最新の画像もっと見る
最近の「マレーシアでニャー2019」カテゴリーもっと見る
最近の記事
カテゴリー
- 日本でニャー2025(52)
- 日本でニャー2024(344)
- 猫の治療(34)
- 猫の引越(17)
- 癌になる(25)
- 日本でニャー2023(333)
- 日本でニャー2022(98)
- マレーシアでニャー2022(244)
- マレーシアでニャー2021(355)
- マレーシアでニャー2020(277)
- マレーシアでニャー2019(280)
- マレーシアでニャー2018(238)
- マレーシアでニャー2017(241)
- マレーシアでニャー(321)
- 長いようで短い5年目マレーシア(5)
- どうにか4年目マレーシア(157)
- 3年目に突入マレーシア(358)
- 2年目のマレーシア(428)
- まさか、マレーシア!(409)
- 英語やるぞ!(140)
- いい歳して大学へ(13)
- 台湾-非観光的(78)
- 備忘録バリとインドネシア(24)
- Vespa? Yes, but LML !(218)
- カンガルーじゃないKangoo(108)
- Photo Photo(117)
- 日本脱出(140)
- 美食満腹(104)
- 映画って !(292)
- いろいろ雑記帖(394)
- これってスゴイ!(92)
- Puppy で Go!(20)
- ABCのAはArduinoのA(68)
バックナンバー
人気記事