シミュレーター上のほとんどのボードは、クリーンな信号を扱います。ピンがHighになり、LEDが点灯する。DFRobotのカタログは、もう一種類の電子工作です。心拍はクリーンではありません。ガレージのCO濃度、水槽のpH、「今この部屋に誰かいるか」という問いも同様です。これらこそが、DFRobotが知られるセンサーであり、このパートナーシップがVelxioにもたらすものです。すなわち、複雑な物理世界を測定するハードウェアであり、その複雑な物理世界も、コードの実行中にドラッグできるスライダーやコントロールとしてシミュレートされるのです。
これは、Velxioを支援する企業を紹介するシリーズの第4回目です。前回は Seeed Studio、M5Stack、Pimoroni を取り上げました。
まずはUNIHIKERから
UNIHIKER M10は、DFRobotの教育向けシングルボードコンピューターです。前面に2.8インチのタッチスクリーン、内部に完全なLinuxシステム、第一言語としてのPython、そしてブレッドボードなしで教室が部品をクリップで取り付けられるエッジコネクタを備えています。Velxioでは、それはそのまま、スクリーンを備えた小型Linuxマシンとして起動します。

velxio.dev/example/unihiker-system-time を開いて、Runを押してください。これはDFRobot自身のwikiにある「システム時刻」演習です。Pythonスクリプトが内蔵スクリーンに日付と時計を描画し、毎秒更新します。シミュレーター用に調整されたものは何もありません。重要なのは、教師がすでに使っているレッスンが、公開されたまま動作するということです。そこから、他のUNIHIKERの例は教室のニーズに沿って続きます。エッジパッド上の信号機、デジタルピアノ、触れる星空、そしてwikiで教えられている方法でSIoTダッシュボードにレポートするIoTスマートホームです。
プランに関する注意点が一つあります。UNIHIKERは完全なLinuxゲストOSを実行するため、ブラウザベースのボードよりも負荷が高く、有料のVelxioプランが必要です。この記事の他のすべて、つまりArduino UnoまたはESP32上のセンサーとHuskyLensは、無料プランで実行できます。
議論を呼ぶ心拍
Gravity ECGの例は、最初に見せるのに最適です。配線不要で、AD8232心拍数フロントエンドがUnoに接続され、すべてのRスパイクで点滅する赤いLEDがボード上で確認できるパルスを表示します。次に、BPMスライダーを40から180までドラッグすると、シリアルモニターが計算された心拍数を出力する間、LEDがそれに追従するのを確認できます。
このスライダーこそが、シミュレートされたセンサーの全体的なアイデアです。机の上で頻脈アラームをテストするには、心拍数が毎分180回の人物を見つける必要があります。Velxioでは、コントロールをドラッグすることを意味し、アラームの例はまさにそれを行います。しきい値、ヒステリシス、そしてこの種の回路が実用的になる前に実際に正しく理解しておく必要があるロジックです。
Gravityシリーズ、6つのセンサー

これらはそれぞれ、今日からコンポーネントピッカーに含まれており、それぞれに独自の物理コントロールがあります。
- C4001 mmWave人感センサー。 PIRではなくレーダーです。存在、距離、方向を認識します。例としては、存在の読み取り、ナイトライト、距離ゾーン、接近・離脱の検出があります。
- AD8232 ECG、上記の通り:シリアルプロッタトレースからアラームまでの4つの例があります。
- MQ7 一酸化炭素。 生の読み取りから、校正済みppm読み取り、3つのLEDによる空気質メーター、200 ppmアラームまで。
- アナログpHキット。 読み取り、水槽の範囲ガード、トレンド矢印、そして2ポンプの投与コントローラー。これは20行で実現する、本当に難しい制御問題です。
- 土壌水分プローブ。 しきい値による散水、棒グラフ付きの校正済みパーセンテージ、ヒステリシス付き自動灌漑、ESP32ミリボルト読み取り。
- DF2301Q オフライン音声認識。 クラウドを介さずに「ハローロボット」を聞き取るモジュール。音声制御ライトでは、フレーズを入力または選択すると、モジュールは実際のモジュールが聞くのと同じように反応します。
HuskyLens、学習するAIカメラ

HuskyLensは、ニューラルネットワークを搭載したDFRobotのカメラです。顔、物体、色、線を認識し、学習ボタンを押すことで教えることができます。Velxioでもその個性は維持されます。シーンを与えると、I2CまたはUART経由で認識したものを報告し、DFRobot自身のArduinoライブラリは変更なしで通信します。DFRobotの公式サンプル2つは、公開されたまま実行されます。ギャラリーはさらに、顔認識ドアグリーター、物体を追跡するパンサーボ、ライントレース用ステアリング信号で構成されており、ロボットを所有する前にロボットの大部分を体験できます。
DFRobotとの協業
DFRobotはこの作業を支援し、ハードウェアを提供してくれました。そして、彼らのドキュメント文化が残りの多くを成し遂げました。すべてのGravityモジュールには、プロトコルが詳細に記載された公開wikiページがあり、UNIHIKERのレッスンはステップバイステップで記述されています。企業がこれほど徹底的にハードウェアを文書化する場合、「シミュレーションをドキュメントに一致させる」ことはテスト可能な主張となり、彼らのライブラリが変更なしで実行されることがそのテストとなります。
ブラウザベースのシミュレーターを、自社ハードウェアが動作する本物の場所として扱ってくれたDFRobotチームに感謝します。センサーのようなテーマでは、これは通常以上に重要です。クラスはテーブルに液体を置かずにpHコントローラーを校正でき、C4001が自分のプロジェクトに適合するかどうかを検討している人は、ゼロコストで知ることができます。
物理ハードウェアは dfrobot.com に、これらの例が従うwikiは wiki.dfrobot.com にあります。
ギャラリーのすべてのDFRobotサンプル
各リンクは、実行可能なプロジェクトを開きます。
UNIHIKER M10 (有料プラン)
- スクリーン上のシステムクロック
- 内蔵スクリーンへのHello表示
- エッジピン2でLEDを点滅
- エッジパッド0/1/2の信号機
- ボタンA/B + ブザー
- デジタルピアノ
- 絵文字マスター
- 星空(スクリーンにタッチ)
- AI音声制御ライト
- 超音波距離計
- サーボモーター制御
- 温湿度モニター
- IoTスマートホーム (SIoT)
HuskyLens
- DFRobot公式I2Cサンプル
- DFRobot公式UTILITIESサンプル
- 検出オブジェクトの読み取り (I2C)
- 顔認識ドアグリーター
- 物体を追跡するパンサーボ
- ライントレース用ステアリング信号
- スクリーン制御:アルゴリズム、学習、カスタムテキスト
- TFカードへの写真とスクリーンショット
- UARTモード (TX0/RX0)
Gravityセンサー
- ECG:シリアルプロッタでのトレース
- ECG:心拍数の測定
- ECG:心臓の鼓動に合わせて光るLED
- ECG:頻脈/徐脈アラーム
- C4001:mmWave人感 (I2C)
- C4001:人感ナイトライト
- C4001:距離ゾーン
- C4001:接近または離脱
- MQ7:COレベルの読み取り
- MQ7:校正済みppm読み取り
- MQ7:3つのLEDによる空気質メーター
- MQ7:200 ppmでのCOアラーム
- pH:pH値の読み取り
- pH:水槽の範囲ガード
- pH:トレンド矢印付きスムーズな読み取り
- pH:2ポンプ投与コントローラー
- 土壌水分:散水しきい値
- 土壌水分:校正済みパーセンテージ + 棒グラフ
- 土壌水分:ヒステリシス付き自動灌漑
- 土壌水分:ESP32ミリボルト読み取り
UNIHIKERのピン配置と機能は、ボードリファレンスに記載されています:UNIHIKER M10。