M5StickC
前にM5StickCという小さなコンピュータ(マイコン)を購入し、気温・湿度・気圧計を作ったり、Lチカ(LED点灯)させてみたりしました。
その際はブロックエディタ(UIFlow)という画面上でブロックを組み合わせてプログラミングしていました。
しかしどうも物足りない…というよりももっと細かいことをやろうと思ったら、やはりブロックエディタでは足りず、何らかのプログラミング言語で動かしてやる必要性があると感じました。
ちなみにM5StickCでは、ブロックエディタであるUIFlowの他、C/C++言語やArduino言語、MicroPython、JavaScriptが使えるようです。
3PySciでは主にPythonを扱ってきたので、MicroPythonでM5StickCを制御したいところですが、色々調べていくとMicroPythonでのプログラミング例が少なかったり、対応するライブラリが少ないようでした。
そしてメインで使われているのはArduino言語ということも何となくですが感じられました。
Arduino言語はC言語と似ていることから、C言語を使える人にとってはとっつきやすいようですが、私のようにPythonをメインとしている人間にとっては、C言語と言われるとちょっとハードルが高く感じられます。
しかしながらArduino言語を習得すればその名の通りArduinoを動かすことができるようになりますし、Micro:bitも同じように動かせるようです。
そしてどちらも使ったことがあるデバイス、つまり持っているわけです。
自分の中でPythonでのプログラミング処理はだいぶ上達してきたなと思うのですが、なにぶん”デバイスを動かす”というところはまだまだ弱く、そして今後もっと勉強していきたいところではあります。
そこで一念発起し、Arduino言語を勉強して、M5StickCを動かしてみようと思ったわけです。
ということでまずはArduino言語を使う環境設定から始めていきましょう。
Arduino IDEのダウンロードとインストール
まずはArduinoで開発するための開発環境ソフトウェア「Arduino IDE」をダウンロードしていきましょう。
こちらのArduinoのサイトにアクセスします。
画面上のメニューの「Software」をクリック。
Downloadsページに移動したら、自分のOSのリンクをクリックします。
私はMacOSなので、一番下の「Mac OS X」をクリックしました。
ダウンロードページにいきますが、寄付を求められます。
寄付したい方は金額を選択か、入力の上、「CONTRIBUTE & DOWNLOAD」をクリック。
今回はまずは試したいため、「JUST DOWNLOAD」で無料でダウンロードさせてもらいましょう。
「arduino-X.X.XX-macosx.zip」(Xの部分はバージョン)というファイルがダウンロードされますので、ダブルクリックで展開します。
展開すると「Arduino.app」というアイコンが出てきますので、これを「アプリケーション」フォルダに移動させておきましょう。
インストールはこれだけです。
ちなみに初めて起動する場合は、起動の確認とフォルダアクセスの確認が表示されますので、それぞれ「開く」と「OK」をクリックし、許可しておきましょう。
起動するとこんな感じの緑のメニューバーと白いエディタ画面が出てきます。
M5StickCを使うための環境設定
今回の目的はM5StickCをArduino言語でプログラミングすることです。
ということでM5StickCが使えるように環境設定をしていきます。
まずはメニューバーの「Arduino > Preferences」をクリックします。
するとArduinoの環境設定画面が表示されますので、「追加のボードマネージャのURL」に下記のURLを入力し、右下の「OK」をクリックします。
https://dl.espressif.com/dl/package_esp32_index.json
次にメニューバーの「ツール > ボード > ボードマネージャ」をクリックします。
ボードマネージャが開いたら、上の検索窓に「esp32」を入力します。
するとしたのエリアに「esp32 by Espressif System」という項目が現れるので、「インストール」をクリックします。
インストールが完了すると、「INSTALLED」が表示されます。
次に「ツール > ボード」をクリックします。
すると「ESP32 Arduino」という項目が追加されているのでクリックします。
その中にM5関連の項目がありますので、今回は「M5Stick-C」をクリックします。
これでM5StickCを使うことができるようになりました。
次にM5StickCで使うライブラリをインストールしていきます。
メニューバーの「スケッチ > ライブラリをインクルード > ライブラリの管理」をクリックします。
ライブラリマネージャが開いたら、検索窓にM5stickと入力し、M5StickCの項目のインストールをクリックします。
M5StickCのライブラリとして他のライブラリも必要だと言われた場合は、「Install All」をクリックしておけばいいと思われます。
ただ私の場合、最初「Adafruit SGP30 Sensor」のインストールがうまくいかずエラーで止まってしまいました。
そのためそれ以降のライブラリを一つずつインストールしました。
さらに後日「Adafruit SGP30 Sensor」のインストールをもう一度試してみたところ、問題なくインストールできました。
ということでとりあえずインストールに失敗したものが出てきたら、それ以降のものを一つずつインストールして、失敗したものに関しては後日再度インストールを試してみるというのがいいかもしれません。
これでM5StickCを使う環境が整いました。
とりあえず試してみる
ここまでできたら、とりあえず試してみたくなりますよね。
実はM5StickCで試せるプログラム例があるので、それを試してみましょう。
ちなみにArduinoの場合、プログラムのことを「スケッチ」と呼ぶようですので、スケッチ例ということになります。
メニューバーの「ファイル > スケッチ」をクリックします。
「M5stickC > Basics」をクリックします。
ここにあるのがM5StickCの基本的なスケッチ例です。
プログラミングとして初めてやるのはやはり「HelloWorld」だろうということで、「HelloWorld」をクリックしました。
すると新たなウインドウが開き、そこに何やらプログラムが書かれています。
現状ではArduino言語はさっぱりなので、内容はよく分かりませんが、このプログラムをM5StickCに書き込んで試してみましょう。
ということでパソコンとM5StickCをケーブルで接続します。
そしてメニューバーの「ツール > シリアルポート」をクリックします。
項目の中で「usbserial」という文字があるものを選択します。
これでM5StickCにUSBケーブルを使って、プログラムを書き込む準備が整いました。
エディタ画面に戻り、画面上の左から2番目の「→」マーク(マイコンボードに書き込む)をクリックします。
画面下の方に「スケッチをコンパイルしています」と表示されるので、じっと待ちます。
コンパイルというのは、人間が言語として書いたプログラムを機械語に変換することです。
このコンパイルは思ったよりも時間がかかるので、「あれ?おかしいな」とエディタ画面を閉じたりせず、じっと我慢して待ちましょう。
先ほどの左下の文章が「ボードへの書き込みが完了しました」になれば書き込み終了です。
これでM5StickCを見てみると、上の方に小さく「HelloWorld」と表示されています。
なかなか控えめな「HelloWorld」ですが、これでArduino IDEからM5StickCに書き込むための環境設定、そして書き込み方が分かりました。
ということで次回から少しずつArduino言語を勉強していきたいと思います。
ではでは今回はこんな感じで。
コメント