2019年5月、 Arduino は、定評のあるArduino Nanoと同じフットプリントを備えた魅力的な新しいボード ラインを発表しました。Nano「クラシック」は、Unoとほぼ同じサイズと仕様を備えているため、ユーザーの マイクロコントローラ 学習プロセスの次のステップとして最適です。
これら4つの新しいバリエーション、Nano Every、Nano 33 IoT、Nano 33 BLE、Nano 33 BLE Senseは、優れたマイクロコントローラーのトレーニングの場を作り出します。彼らのデザインには、ハイブリッド城郭構造も特徴としています。この設計をより大きなボードにはんだ付けして、ブレッドボード(または「ラットのネスト」)回路では対応できなくなったときにモジュールとして使用できます。
今日は、より高度なボードの1つであるArduino Nano 33 IoTに焦点を当てます。このデバイスはBluetoothおよびWi-Fi経由の接続機能を備えており、角運動と直線加速度を検出する6軸LSM6DS3慣性測定ユニット (IMU) を搭載しています。LSM6DS3には温度センサーも組み込まれていますが、これがArduinoボード自体でどのように機能するかはすぐにはわかりません。ユーザーがより多くのことを学び、この新しいボードを理解するために時間を費やすにつれて、将来的にはさらに多くの例とドキュメントが公開されることを期待しています。
以下の情報を取り上げます。
- ボードを動作させた私の経験
- Nanoの加速度計の実験
- Wi-FiおよびBluetooth機能
- この新しいNanoをどのように使用すべきでないのか
3.3VDC使用
Nano 33をディスクリートIOでテストしたわけではありませんが、 技術仕様 では、デバイスは3.3V IOのみをサポートし、5Vには対応していないと記載されています。5Vで動作する一部の周辺機器に3.3Vを高信号として送信しても問題ないかもしれませんが、その電圧を33に戻すと深刻な問題が発生します。ボードの焼損を防ぐには、レベル シフター、抵抗器の設定、または3.3Vセンサーを使用します。
Arduino Nano 33 IoTのセットアップ
このボードにアクセスする方法については オンラインで説明されています 。Webエディタを使用するか、ArduinoデスクトップIDEをインストールする必要があります。私は後者のルートを選びました。完了したら、次の手順に従います。
1.デスクトップIDEを開き、 [ツール] メニューに移動します。
2.ボードに移動し、次に ボード マネージャーに移動します。
3.SAMDパッケージを表示するには、Arduino Nano IoTを検索します。
4.このパッケージをインストールすると、理論的にはボードとCOMポートを選択した後でファイルを転送する準備が整うはずです。
私の場合、これは機能しませんでしたが、ボードは差し込むと正常に点滅しました。IDEを再起動していくつかの更新を行った後、Nano 33 IoTが表示されましたが、スケッチをボードに転送しようとすると、コンパイル エラーが発生しました。イライラしながら、私は SAMDのインストールに問題があるかもしれないことを示すフォーラムの投稿 を見つけました。指示に従ってファイルを削除し、SAMDパッケージを再インストールしたところ、すべてが正常に動作し、問題なくスケッチを転送できました。
この問題が発生する場合と発生しない場合があります。以前にかなりの数の新しいボードとライブラリをインストールしていたため、何らかの理由でインストールが失敗した可能性があります。それ以来問題は発生していませんが、ボード マネージャー経由でインストールしたボードを削除する必要がありました。フォーラムの投稿者の役立つアドバイスがなければ、私は行き詰まっていたでしょう (あるいはIDE全体を再インストールしなければならなくなり、それはもっと苦痛だったでしょう)。
IMUの機能性が光る
キャプション: シリアルプロッターで観察された時間経過に伴う動き
内蔵のLSM6DS3チップを介したIMU機能は、このボードの最も使いやすい部分でした。
1.ライブラリ マネージャーを使用して、 Arduino_LSM6DS3 ライブラリをインストールしました。
2.どのボードの例でも、SimpleAccelerometerとSimple GyroscopeとともにArduino_LSM6DS3がポップアップ表示されます。
3.これらのスケッチのいずれかをロードし、シリアル モニターを開いて、どのように反応するかを確認します。ジャイロスコープのデータはボードの回転方法を扱い、加速度計のデータは直線加速度を測定します。
特に、ボードは常に一方向の重力による加速度を検出するため、一部のアプリケーションでは役立つ可能性があります。この動きを観察する1つの方法は、シリアル モニターの代わりにシリアル プロッターを開くことです。これにより、時間の経過に伴うデータ読み取りの線が表示されます。また、ほとんどの9軸IMUとは異なり、このデバイスには磁力計は搭載されていません。その機能が必要な場合は、LSM9DS1チップを使用した33 BLEおよび33 BLE Senseで見つけることができます。
Nano 33 IoT Wi-Fi接続
Nano 33 IoTをWi-Fi用に構成するために、ArduinoのWeb IDEと点滅の例を使用しました。私が実行した手順は次のとおりです。
1.create.arduino.cc に移動して「Getting Started」をクリックし、「Set up an Arduino Nano 33 IoT」をクリックします。
2.アカウントを作成し、ログインして、必要なプラグインをダウンロードしてインストールします (不思議なことに、このプラグインはセットアップ後にWindows 10のタスクバーで追加のアイコンを非表示にするニンジンの下に隠れていました)。
3.サイトではボードの名前を尋ねられ、Cryptoチップが構成されます。この手順には最大5分かかる場合がありますが、私の場合はそれよりずっと早く終わりました。
4.Wi-Fi情報を入力してください。
5.アップロード ボタンをクリックすると、その情報がボードに送信されます。
ボードが接続され、33 IoTの内蔵LEDを制御できる楽しいLEDアイコンとテキスト入力ボックスが表示されます。このプロセスは問題ありませんでした。ただし、取り外して外部USB電源に接続したときに、制御機能がすぐには機能しませんでした。その潜在能力を完全に発揮させるために、さらに実験してみることをお勧めします。
Nano 33 Iot Bluetoothの問題と回避策
Wi-Fiはいくつかの興味深いIoTアプリケーションを提供しますが、より「ローカルっぽい」制御には、Bluetooth Low Energy (BLE) が独自の可能性を提供します。GitHubにある ArduinoBLEライブラリ を使用するか、IDEで検索して、33 IoTと別のデバイスを接続できます。このテクノロジーについてさらに詳しく知りたい場合は、ArduinoにBLEに関する有益な 情報 も用意されています。
ライブラリをインストールし、セントラル モードとペリフェラル モードの両方でいくつかの例を試してみたところ、携帯電話 (Moto G XT1625) でNanoをBluetoothデバイスとして断続的にしか検出できませんでした。残念ながら、二人は結ばれることはなかった。第4世代iPadとの接続も試みましたが、うまくいきませんでした。この実験の後、ライブラリのGitHubページを確認したところ、Nanoには、Arduino NINA-W102ファームウェアv1.2.0以降を実行する、通信を処理するNINA W102 ESP32モジュールが必要であることがわかりました。
これが問題であれば、 モジュールを更新する必要があります。ビルドの最初のステップでは、ESP32ツールチェーンをダウンロードするように指示されています。残念ながら、 提供されたリンク は「ページが見つかりません」というWebページにつながります。ツールチェーン リンクによると、この記事の執筆時点ではこれらの手順は行き止まりになっているようです。
将来的には、Bluetoothを使用するためのボードの設定に関するさらなる開発が進むことを期待しています。私が入手したのはこのボードのごく初期のコピーであり、セットアップ プロセス中に何かを見逃した可能性も十分にあるため、このプロセスの結果は異なる可能性があることに注意してください。
BLEが主な焦点である場合、Nano 33 BLEがアプリケーションにとってより適切な選択肢となる可能性があります。33 BLEには、磁力計を備えたIoTよりも優れたIMUが搭載されています。
結論
結局のところ、Nano 33 IoTボードは、従来のNanoフォーム ファクターにワイヤレス通信とIMUを追加した、実に印象的なパッケージです。通常追加する必要がある周辺機器がなくても、IoTアプリケーションやロボット制御の可能性が広がります。
現時点ではBLEを動作させることはできませんが、前世代のNanoにはこれらの追加機能は搭載されていなかったことを考慮してください。Nano 33 IoTおよびその他の新しいNanoボードは、Arduinoの世界では非常に興味深い開発です。同社と世界中のハッカーたちがNano 33 IoTに取り組み続けるにつれ、大きな課題のいくつかを解決しながら、その機能がさらに拡大していくことを期待しています。