- パーティクルアルゴンIoT開発ボード-ハードウェアの説明
- ArgonIoT開発ボードのプログラミング
- パーティクルIOのアルゴンキットをセットアップする
- WebIDEを使用したアルゴンボードのプログラミング
- アルゴン開発ボードでのTinker機能の使用
世界が自動化と人工知能に向かっているので、物事をよりスマートでスケーラブルにするために、さまざまなイノベーションが毎日行われています。モノのインターネットの時代では、すべてがインターネットに接続されており、IoT対応のボードが数多く市場に出回っています。以前、PIC IoT WG開発、STM32FNucleo-64開発ボードなどのいくつかのボードを確認しました。
IoT産業の急速な成長を観察することで、粒子雲のようないくつかの世界クラスのIoTプラットフォームのリーダーは3つのが導入されたRDなどの粒子アルゴン、キセノン、ホウ素、のような世代のIoTデバイスを
これらはすべて、非常に用途が広く強力なIoT開発キットです。これらのボードはすべてNordicnRF52840 SoCを中心に構築されており、1MBのフラッシュと256kのRAMを備えたARMCortex-M4Fが含まれています。このチップはBluetooth5とNFCをサポートしています。さらに、ArgonはEspressifのESP32でWiFiを追加します。BoronはubloxSARA-U260モジュールでLTEを実現し、XenonにはWiFiとCellularが付属しています。これらのキットは、IoTデバイスの拡張に役立つメッシュネットワーキングもサポートしています。
この取得開始チュートリアルでは、新しいUnboxのでしょうパーティクルアルゴンキットとその機能を見てのサンプルコードでこのキットのデモを行いますブリンキーLED。
パーティクルアルゴンIoT開発ボード-ハードウェアの説明
まず、箱の中を見てみましょう。キットを使い始めるためのOne Argon IoTボード、ミニブレッドボード、マイクロUSBケーブル、いくつかのLED、および抵抗器があります。
次に、以下のブロック図を使用して、アルゴンボードを理解します。
ブロック図でわかるように、ESP32とARMM4を備えたNordicnRFコアがあります。また、コードをプログラミングおよびデバッグするための外部フラッシュメモリとSWDコネクタも備えています。電源側には、LiPo充電回路があります。
上記のブロック図から、アルゴンボードの機能を一覧表示できます。
特徴
- Espressif ESP32-D0WD 2.4 GHzWi-Fiコプロセッサー
- ESP32用のオンボード4MBフラッシュ
- 802.11 b / g / nサポート
- 802.11 n(2.4 GHz)、最大150 Mbps
- ノルディックセミコンダクターnRF52840SoC
- ARM Cortex-M4F32ビットプロセッサ@ 64MHz
- 1MBフラッシュ、256KB RAM
- Bluetooth 5:2 Mbps、1 Mbps、500 Kbps、125 Kbps
- DSP命令、HWアクセラレーション浮動小数点ユニット(FPU)計算をサポート
- ARM TrustZoneCryptoCell-310暗号化およびセキュリティモジュール
- 最大+ 8dBmのTX電力(4dBステップで最大-20dBm)
- NFC-Aタグ
- オンボードの追加の4MBSPIフラッシュ
- 20ミックスドシグナルGPIO(6 xアナログ、8 x PWM)、UART、I2C、SPI
- マイクロUSB2.0フルスピード(12 Mbps)
- 統合されたLi-Po充電およびバッテリーコネクタ
- JTAG(SWD)コネクタ
- RGBステータスLED
- リセットボタンとモードボタン
- オンボードPCBアンテナ
- 外部アンテナ用U.FLコネクタ
したがって、Argonパーティクルボードの機能により、内蔵のARMプロセッサとRFチップを使用して複雑なIoTタスクを実行できることは明らかです。
それでは、アルゴンボードのピンマーキングとピンの説明を見てみましょう。
ピンマーキング
ピンダイアグラム
アルゴンボードの最大電源入力電圧は+ 6.2vです。
ピンの説明
- Li + =>ピンは内部でLiPoバッテリーコネクタのプラス端子に接続されています。
- EN =>デバイスイネーブルピンは内部でプルアップされています。デバイスを無効にするには、このピンをGNDに接続します。
3. VUSB =>ピンは内部でUSB(+ ve)電源に接続されています。
4. 3V3 =>オンボード3.3Vレギュレータの出力。
5. GND =>システムのグランドピン。
6. RST =>アクティブローシステムリセット入力。このピンは内部で引き上げられています。
7. MD =>このピンは内部でMODEボタンに接続されています。MODE機能はアクティブローです。
8. RX =>主にUARTRXとして使用されますが、デジタルGPIOとしても使用できます。
9. TX =>主にUARTTXとして使用されますが、デジタルGPIOとしても使用できます。
10. SDA =>主にI2Cのデータピンとして使用されますが、デジタルGPIOとしても使用できます。
11. SCL =>主にI2Cのクロックピンとして使用されますが、デジタルGPIOとしても使用できます。
12. MO、MI、SCK =>これらはSPIインターフェイスピンですが、デジタルGPIOとしても使用できます。
13. D2-D8 =>これらは汎用GPIOピンです。D2-D8はPWM対応です。
14. A0-A5 =>これらは、標準のデジタルGPIOとしても機能できるアナログ入力ピンです。A0〜A5はPWM対応です。
ArgonIoT開発ボードのプログラミング
パーティクルボードをプログラムする方法はたくさんあります。Web IDEを使用して、世界中のどこからでもコードを記述およびアップロードできます。この機能は、以前NodeMCUのプログラミングに使用したOver theAirプログラミングと呼ばれます。デスクトップIDEとコマンドラインを使用して、Aragonボードをプログラムすることもできます。IoTデバイスが現場で接続されている場合は、OTAを介してプログラムする必要があります。
すべての3番目の粒子の生成デバイスはブートローダーとティンカーと呼ばれるユーザ・アプリケーションを事前にプログラムしています。iOSおよびAndroidデバイスにParticleアプリをダウンロードして、ピンを切り替え、デジタルおよびアナログの読み取り値を取得できます。このブートローダーを使用すると、ユーザーはUSB、OTAを使用して、また出荷時設定へのリセットプロセスを介して内部的にボードをプログラムできます。
したがって、このチュートリアルでは、WebIDEを使用してParticleArgonIoT開発キットをプログラムします。また、ArgonキットでTinker機能を使用する方法についても説明します。
パーティクルIOのアルゴンキットをセットアップする
Argonボードをプログラミングする前に、AndroidまたはiOSのParticleアプリを使用して構成する必要があります。したがって、このアプリをダウンロードして、Argonボードが接続できるように、インターネット接続が機能していることを確認してください。
1.次に、付属のマイクロUSBケーブルを使用して、アルゴンボードをラップトップまたは任意のUSB電源に接続します。青いLEDが点滅しているのがわかります(リスニングモード)。青く点滅していない場合は、RGB LEDが青く点滅するまで、MODEボタンを3秒間押し続けます。さまざまなLEDステータスの意味について詳しくは、ParticleIOのこのドキュメントをご覧ください。
2.携帯電話でParticleIoTアプリを開き、アカウントを持っていない場合はアカウントを作成するか、Particle資格情報を使用してログインします。
3.ここで、Argonデバイスを追加するには、「+」ボタンを押してデバイスを追加します。 アルゴン、ホウ素、またはキセノンのセットアップの 前でもう一度「+」を押します。
4.アプリと通信するために、ArgonはBluetoothを使用するため、スマートフォンでBluetoothを有効にするように求められます。次に、アルゴンボードに印刷されているQRコードをスキャンして、デバイスをスマートフォンに接続します。
5.次に、アンテナを接続したかどうかを確認します。アンテナを接続している場合は、ボックスにチェックマークを付けて[次へ]をクリックします。これで、電話と正常にペアリングされます。
6.次に、メッシュネットワークに接続するように求められます。メッシュを使用していないので、[メッシュネットワークが あり ません]を押して、[次へ]をクリックします。
次に、Wi-Fiネットワークの資格情報をArgonに送信する必要があります。アプリでは、Wi-Fiネットワークをスキャンし、ネットワークを選択してパスワードを入力します。その後、ArgonボードがParticle Cloudに正常に接続され、ボード上でシアンの色がゆっくり点滅していることがわかります。
7.次に、アルゴンボードに名前を付けます。任意の名前を入力して、[次へ]をクリックします。
8.ラップトップでWebブラウザーを開き、リンクsetup.particle.io?start-buildingを入力します。これで、セットアップはほぼ完了しました。Argonがクラウドに正常に接続されていることを確認するには、[ SignalDevice ]ボタンをクリックします。アルゴンLEDの虹色が点滅します。
9.アプリを使用してデバイスに信号を送ることができます。ボードの名前をクリックして、以下に示すようにデバイスを開きます。アルゴンボードがオンラインになっていることがわかります。次の画面に、[ シグナル ]ボタンがあります。
10.これで、WebIDEを使用してArgonボードをプログラムする準備が整いました。
WebIDEを使用したアルゴンボードのプログラミング
1. Particle Consoleに移動し、ParticleApp内でログインした資格情報を使用してログインします。
2.ご覧のとおり、画面の左側には、新しいデバイスの追加、メッシュネットワークの作成、IFTTT、Microsoft Azure、WebIDEとの統合などの多くのオプションがあります。また、画面にデバイスが表示されます。
3.まず、WebIDEオプションをクリックします。以下に示すように、オンラインIDEで新しいタブが開きます。このIDEには、いくつかのサンプルコードを含むさまざまなセンサーとボード用のライブラリがあります。Arduino IDEに精通している場合は、非常に簡単で、プログラミング構造はArduinoIDEと同じです。
4.非常に基本的なサンプルコードを使用して LED を 点滅させ ます。したがって、そのサンプルコードをクリックします。
5.基本的な構造は、ArduinoのIDEと同じである使用し 、ボイドのセットアップ と 、ボイドループ のコードを記述するための関数を。
ここで、2つのLEDに対して2つの変数を宣言します。
int led1 = D6; int led2 = D7;
6. void setup()で、 両方のLEDの pinMode() 関数を使用して、ピンモードを出力として設定します。
void setup(){ pinMode(led1、OUTPUT); pinMode(led2、OUTPUT); }
7. void loop()で、 digitalWrite() 関数を使用して、以下に示すようにLEDをオンまたはオフにします。
void loop(){ digitalWrite(led1、HIGH); digitalWrite(led2、HIGH); delay(1000); digitalWrite(led1、LOW); digitalWrite(led2、LOW); delay(1000); }
このチュートリアルの最後に、デモビデオを含む完全なコードを示します。次に、左上のセクションにある[ 確認 ]ボタンをクリックして、このコードをコンパイルします。
コードにエラーがない場合は、画面の下部に コード確認済み メッセージが表示されます。
これで、コードをアルゴンボードでフラッシュする準備が整いました。ボードがラップトップまたはその他の電源に接続されていること、およびインターネットに接続されていることを確認してください。RGB LEDはシアン色でゆっくり点滅するはずです。これは、ボードがパーティクルクラウドに接続されていることを意味します。
次に、左上隅のフラッシュボタンをクリックしてコードをフラッシュします。以下に示すように、画面に「 フラッシュが成功し ました」というメッセージが表示されます。動作を確認するには、ピンD6とD7に2つのLEDを接続し、ボードをリセットします。
このようにして、独自のコードを記述し、OTA機能を使用してアップロードし、プロジェクトをよりスマートにすることができます。
アルゴン開発ボードでのTinker機能の使用
WebIDEにはTinkerと呼ばれる特別なコード例が1つあり ます。このコードをアルゴンボードにアップロードした後、ハードコーディングせずに一度に多くのピンを制御できます。また、コードでピンを指定しなくてもセンサーの読み取り値を取得できます。
1. Tinkerサンプルコードをフラッシュした後すぐに、示されているように、ArgonデバイスオプションでTinkerオプションが有効になっていることがわかります。ティンカーオプションをクリックします。
2.次に、出力または入力を取得するピンを選択します。クリックすると、あなたはをクリックするように求められます digitalWrite 、 digitalRead 、 analogRead と analogWrite 。この場合、 ピンD7とD6の digitalWrite をクリックします 。
機能を割り当てた後、ピンD7またはD6をクリックするだけで、LEDが点灯します。もう一度D7を押すと、LEDがオフになります。同様に、さまざまなピンでセンサーデータを取得し、同時にアプライアンスを制御できます。
ボードのさまざまな機能をよりよく理解するために、すべてのサンプルコードを試すことができます。
オンラインIDEを使用する以外に、オンラインIDEと同じ方法でコードを記述してフラッシュできるParticle DesktopIDEとWorkbenchをダウンロードできます。しかし、これらのIDEはオンライン開発ソフトウェアでもあります。パーティクルクラウドの詳細については、こちらの公式ドキュメントを確認してください。
デモンストレーションビデオを含む完全なコードを 以下に示します。