お久しぶりです。 1回生のAshaです。

アドカレにてCanSat実習について書いた際には、まともな(?)話を一切しなかったので、今回はE班のCanSatについての技術的な背景について紹介したいと思います。

 

 

E班は「道案内をするCanSat」というミッションで、スマートフォン等を用いて呼び出したりをCanSatを、行き先を指定出来たら便利だよね。という観点・要求から、CanSatのIoT化のようなものに挑戦しました。

 

まず、CanSatがWi-Fiにつなぐために下図のようなESP32 CAMを用いました。カメラは正直要らなかったのですが、文献が比較多く、また非常に安かったのでこれにしました。

 

 

 
 
このESP32-CAMはAmazonで購入したのですが、技適が未認証だったので、総務省の技適未取得機器を用いた実験等の特例制度の申請を行って使用しました。
 
 

 

 

 

 

 

また、ESP32と通信する用のサーバーとして、Azure for StudentsでUbuntuのサーバーを立てました。

Azureのインスタンスを立てる際、UbuntuのOSイメージのバージョンが16.04LTSだったので、インスタンスを立ててから18.04LTS→20.04LTSとアップグレードをしました。AmazonのAWSやGoogleのGCPと違って、MicrosoftにはWindowsがあるので、AzureのUbuntuへのサポートはあまり良くないのかもしれませんね。

とは言え、VPSのようなクラウドサーバーを無料で使えるのは嬉しいです。

 

 

そして、このインスタンス上にOpenLiteSpeedとPythonのFlask使ってWebサーバーを立て、簡単なアプリケーションを作りました。CSSを書くのが面倒だったので外見はBootStrapで間に合わせていますが、javascript geolocationを用いて利用者の位置情報を取得し、Ajaxを用いて1秒ごとに送信する、といったまともな機能も持ち合わせています。

 

 

 

 

 

 

 

ここまで作ったIoT化用のシステムですが、メインマイコンであるNucleo F303k8とのSerial通信が上手くできず、実際に使用するには至りませんでした。ものづくりの難しさを実感したCanSat実習となりました。

 

 

E班は全員が投稿する予定なので、他の班員のアメブロも楽しみにしていてください。

ではまた。