Spresenseのコンテスト
ソニーのSpresenseというマイコンボードがあります。
存在自体は時々で目にするので知ってはいたのですが、実物を見たことも触ったこともありませんでした。
そんな中、elchikaさんで「2022年 SPRESENSE活用コンテスト」が開催されるとの情報を聞きつけました。
内容を読むとアイデアが通ったらモニター提供が受けられると書いてあります!
プレゼントとか無償提供とか大好きな私、このモニター募集が始まった7月に早速アイデアを応募しました。
アイデア応募
Spresenseで何ができる?
アイデアを出すにはどんなことができるのか調べるところから。
全くSpresenseのことを知らないので、まずは本を買ってみました。
わかりやすい書籍でした。SpresenseではエッジAIが比較的簡単にできそうです。
実は「エッジAI」興味はあるのですが一歩踏み込んでやってみたこと、ありません。M5StickVを持ってるのでエッジAIやってみようと思ってはいるのですが・・。
息子くんの方に関してはJetsonNanoとか動かしていてAIは好きなジャンルのひとつですが、エッジAIはやったことないと思います。
でも作品アイデア出すならエッジAIだな〜と思っていたところ、地震をはじめ防災情報にとても興味がある息子くんがSpresenseで「災危通報」を受信してみたいと言いました。
災危通報
Spresenseでは衛星から情報を受信することができます。中でも「みちびき」という衛星から受信することもできて、「災危通報」が受け取れるということでした。
▼ みちびきの災危通報について
災害・危機管理通報サービス「災危通報」|みちびきとは|みちびき(準天頂衛星システム:QZSS)公式サイト - 内閣府
ならばこれを使ったアイデアにして製作メイン担当を息子くんにしたチームで応募しようと決定!
途中で気が変わって「作らない!」と言い出した時は私が引き継いで頑張って作って出せばいいし、と。
(気まぐれ息子くん気が変わって作りたくなくなって辞退という経験が今までに数件あるので超警戒体制)
それからドキドキしながら待っていたらアイデア審査通過〜。
やったー!
— とり子 (@siroitori0413) 2022年8月8日
Spresenseのモニター通った〜🎶 pic.twitter.com/Si5xgNsYh2
▲ 息子くんのホワイトボード。この後も色々書いてましたが写真とってなかったです。
そして壊す
喜びも束の間、SDカードが認識しないという問題発生。
息子くんが「どうもSD認識しないんだよね」といって困っていたので私の方で引き継いで調べてみました。
ネットで調べると、ほとんどの場合嵌合が甘い(しっかりはまっていない)ということだったので「きっとそれだ」と思い込んだのが悪かったです。
抜き差しを繰り返すうち・・・見事壊してしまいました。
最終的に壊したのは息子くんではなく私。
そう、私ハードウェア壊す才能がハンパないんですよねえ。変な電磁波みたいなの出してるんじゃないかと思います。超能力。
泣く泣く購入しました。
で書い直してもうまくいかないわけです。
それはそうです。嵌合が問題じゃなかったので…
Spresense新しいのが届いたのですが
— とり子 (@siroitori0413) 2022年8月25日
やっぱりSD認識できない、、
Spresenseお使いの皆様、どうやったら認識できますか?教えてください(涙)
UsbMscのスケッチ例を書き込んで動かすと、
while (!SD.begin()) {
でぐるぐるしたっきり先に進みません。
嵌合は甘くないと思います、、多分
上記の件は解決しました。
ツイートのリプにも書いたのですがスケッチ例のサンプルコードが違っていたというまさかなオチでした。
公式FAQで「SD.begin()」のところを参考にしました。
それは置いといてもSDカードのフォーマット(というか使用するSDカード)がダメだったようで。2重トラップでした。
それからはサクサク製作
その後は息子くんにより比較的サクサクと開発が進みました。
▼ センシティブな内容と出てますが…センシティブな内容は含みません。
息子氏の進捗
— とり子 (@siroitori0413) 2022年8月27日
カメラ画像をWiFi経由で自分のPC(サーバー)にPOSTするというのをやってました。
1枚転送するのに結構時間かかっててESP8266にはこれが限界みたい。
てか机の上、汚ッ#Spresense pic.twitter.com/qAx9imURpF
息子氏進捗
— とり子 (@siroitori0413) 2022年8月31日
ベランダでずっと衛星からの災危情報を待機してるSpresenseくん。
やっぱり外じゃないと受信できなくてしかもベランダでも屋根のないところが一番よく受信できるけど雨が心配‥
昨日は場所を色々変えながらそれでも100通くらい受信できた!(重複IDはプログラムで省いたとのこと) pic.twitter.com/X89dSgcB6a
息子さんの進捗
— とり子 (@siroitori0413) 2022年8月30日
Spresenseで取得した災危情報、メールを送るようになってた!楽しい! pic.twitter.com/TXu4kdxdU5
息子氏の進捗
— とり子 (@siroitori0413) 2022年9月6日
Spresenseで受信した災危情報、レシート出力されるようになってた😆 pic.twitter.com/sYfkqBa0IN
今回使ったもの
- Spresenseメインボード(前述の通りモニター品を壊したので購入)
- Spresense拡張ボード(モニター品)
- Spresenseカメラボード(モニター品)
- SPRESENSE用Wi-Fi add-onボード ESP8266搭載 (スイッチサイエンスで購入)
あと衛星受信のためベランダにSpresenseを出しておくため長い5メートルのUSBケーブルを買いました。長いのあると何かと便利ですね!
- USBケーブル(MicroUSB)
そしてこちらが出来上がり
elchikaにまとめました。
elchika.com
息子くんは文章を書いたりするのが苦手なので聞き取ってまとめました。
しかし私にうまく通じない部分があり(説明がうまくないのと私の理解が悪いのと…)「伝わらない!ソースコード読んで自分で理解して!」とキレられることもしばしば(苦笑)
elchika記事中に書いたのですが、大きく2つの機能を同時に実装しようと思ったのですが制限のため実装できずで別々のものとして記述しました。
さいごに
楽しい開発ができました。
さすがSpresenseよく出来ていると思いました。
今度はエッジAIや省電力を活かした開発をしてみたいと思います。
おまけ
今日の息子氏
— とり子 (@siroitori0413) 2022年9月13日
自宅に埋もれて未開封だったこちら発見、おおーSpresenseと同じ「みちびき」って書いてあるー!と喜んでラズパイに繋げて遊んでた。
GPSの位置情報受信できたらしい。
けど、みちびきから受信するといっても危災通報も必ず受信できるわけではないのね〜 pic.twitter.com/RvHuYKl614
息子くん、GPSなかなか楽しくてこれからも色々作りたくなったようです。