2024 年 3 月 26 日

【 2023 年度第 2 回トリリオンノード研究会 】

IoT・ロボット教育用教材の試作

大和無線電機株式会社

Ⅰ. 自己紹介
大和無線電機株式会社は電子部品の販売と、関連サービスの提供を行う電子部品の総合商社です。
私はお客様に製品を紹介するデモ機を作成しております。
２．概 要
新しい学習指導要領が、小学校では 2020 年度、中学校ではその翌年（2021 年度）から全面実施、高等学校では本年度（2023 年度）の新入生から実施されています。小学校では「プログラミング的思考」を育むことが求められています。高等学校では昨年 4 月から「情報Ⅰ」という新しい科目が始まり、2025年の共通テストから新しい科目として登場します。（参考 1）
教育概念のひとつである STEAM 教育は、数理的思考力を重視して子ども達が論理的思考力や問題解決能力を身に付けて、今後の ICT 社会に順応した競争力のある人材に育てていくための教育方針です。
2000 年代からアメリカで始まり日本では文部科学省が 2019 年 4 月の中央教育審議会諮問にて高等教育における STEAM 教育の推進について述べています。（参考 2）
SScience

科 学

TTechnology

技 術

EEngineering

工 学

AArts

芸 術・リベラルアーツ

M

Mathematics

数 学

企業などでも IoT やロボットの進展に伴いこれらの理解や活用のための教育が展開されています。
STEAM 教育や企業での教育に適した教材が求められています。今回は教材としても優れている Leafonyを使用したロボット教材を試作しました。試作に際しては、実際に製造・販売・活用できることを想定しました。教材は幅広く活用でき、安価であることが求められます。それを実現するために既存の製品を組み合わせることで早期の実現と開発期間の短縮、開発費、製品費用の低減を目指しました。
1３．教材に求められる条件
教材に求められる条件は以下のとおりです。


多様な使い方を提供できる

資料、事例が豊富である

製品価格（教材費）が安価である

3.1. 多様な使い方を提供
カリキュラムに応じて、多面的に柔軟に使用できることが求められます。授業の課題に沿った個々のテーマに多用できることにより、教材を効率的に使用できます。同時に費用対効果が高くなり教材予算を有効に活用することができます。
複数の教材を組み合わせることにより、それぞれの教材が持つ本来の使用方法で使用できると同時に、今回の試作品（基板）を追加することにより、新たに教材の活用の幅を拡げることができます。
3.2. 資料、事例が豊富
カリキュラムのデザインや副読本や参考資料の作成には、多くの資料や事例が必要になります。
Leafony や今回使用するロボット教材には、多くの資料や事例がすでにあり、それらを活用することができます。
3.3. 製品価格が安価
教材の予算は限られています。予算の負担を減らすために、製品価格が安価であることが望まれます。
今回の追加の基板は安価であり、Leafony や既存の教材をすでに持っている場合は、費用的に容易に導入することができます。製品価格の中には開発費や金型費用などの初期費用が含まれます。そのため、開発費を低減することにより製品価格も低減できます。また、開発を短期間で行えます。
４．使用した既存の製品
今回は Leafony と既存の製品を組み合わせています。詳細は以下のとおりです。
4.1．既存の製品を活用するメリット
既存の製品を組み合わせるメリットは以下のとおりです。
入手が容易である



製品として実績がある

製造・販売体制が確立済み

すでに製品として販売されているため、容易に入手できます。製品の品質がすでに確認され、市場での問題点の改善も行われています。安定した製品として流通しています。製造・販売する立場から見ると、すでに製造や販売が行われているため、その体制やサポートの方法を新たに作り立ち上げる必要がありません。
2

4.2．Leafony を教材として使用する
Leafony を教材として使用した場合のメリットは以下のとおりです。
すでに製品として販売されているため容易に入手できます。
実物（ハードウエア）に触れられる

多種のプログラミング言語に対応通信（BLE, USB, ･･･）を体験可能



事例やサンプルコードが豊富

資料が豊富

準備と後片付けが楽Fig. 1 Leafony BASIC KIT2

4.3．製造・販売体制が確立済み
Leafony は小型のボードコンピュータであり、パーソナルコンピュータ単体では難しい理科教育との接続や、実社会での多様な情報技術の利用への理解の増進などが期待できます。Arduino や C、C++、Python などの多くのプログラミング言語が使用できます。Leafony には USB Leaf（ボード）をはじめBLE Leaf などがあり通信を体験することができます。
事例やサンプルコードが豊富であり、説明資料やホームページ上の情報も多岐に渡っています。これらは副読本や参考資料を作成の手助けになります。また、受講者の立場では多くのコードや情報を検索、取得することができ、理解を促進することが期待できます。
Leafony はキットの状態で流通しているため、教室で多くの教材を使用したときの、部材配付の準備や後片付けなどが容易です。
4.4．ロボットは既製の教材を使用するロボットの機構部分はすでに製品として販売されている以下を使用します。（参考３）

株式会社 CRETARIA（ 京都府京都市 ）（参考４）プログラミングロボット「クムクム（ Qumcum ）」この教材は小学生向けプログラミング教材で、ロボットを Scratch や Python で動かすことによりプログラミングを習得することができます。概要は以下のとおりです。
可 動 部：

サーボモーターセ ン サ：

超音波距離センサ、（マイクロフォン、LED

発スピーカー

サ イ ズ：

14.5cm×7cm×18cm



電ニッケル水素充電池（単三型×4 本）



使用素材：

音：
源：７個*1）420g（電池未装着時）

プラスチック（アクリル、ABS、PC、PON）、アルミ、鉄（ねじ）*1：今回の試作品ではマイクロフォン、LED は使用していません。

3

この教材の以下を使います。
筐体（胴体、四肢、頭部）

駆動部分

センサ

スピーカー

電源（電池ボックス）
Fig. 2 既製の製品を活用（ 小学生向けプログラミング教材）

5．試作の概要
試作の概要は以下のとおりです。
5.1．新規に作成した部分
既製のロボット教材の機構部を使用して、制御基板部分を Leafony にします。
そのため、新規に作成する部分は双方をつなぐ部分（ブリッジボード）となります。

Fig. 3 Leafony と既製のロボット機構部をつなげる

5.2．ブリッジボードの概要
ブリッジボードの概要は以下のとおりです。
電子回路
3.3V 電源回路

DAC 出力回路（増幅器）

サーボモーター回路（7 軸）

デバッグ用のポート
ソフトウエア

Leafony に搭載する組み込みプログラム4構 成
回路構成は以下のとおりです。

Fig. 4 回路構成

新規に作成する部分は Leafony と周辺部品をつなぐ回路

MCU は STM32 Leaf です。電源はニッケル水素充電池（AA 4 本）を三端子レギュレータで Leafony用に 3.3V に降圧しています。電源スイッチは、ロボットに付属のものを使用しています。Leafony の DAC
出力は増幅器（OP アンプ）を介して既存のスピーカーに接続します。
サーボモーターは 5V 駆動のため、電源をそのまま印加して、制御線は STM32 が 5V トレラントのためプルアップとオープンドレイン出力で駆動します。ロボットに超音波センサがありますので、MCU に接続します。
実装は以下のとおりです。
Leafony を搭載するため、Leafony Bus に準拠したコ拡張部分ネクタ（パターン）を設置しています。なお、左図の右半分の緑色の部分は拡張部分です。
基板の概要は以下のとおりです。
4 層（部品は表面のみ）

61mm(W) × 71mm(H)金メッキ（Leafony Bus 接続のため）
既存のロボット教材は加工をしないでそのまま使用できることを前提としていますので、基板の外形寸法と取付穴位置などは、既存のロボットに合わせています。
Fig. 5 試作したブリッジボード（拡張部分あり）

5

機 能レイヤは以下のとおりです。

Fig. 6 階層図

機能フローは以下のとおりです。

Fig. 7 制御の流れ6初学者でも理解しやすいようにプログラミング言語は Arduino を使用しました。基本的な動作を行う制御を、サンプルプログラムとして提供できるようにしました。
この教材はヒューマノイド型のロボットです。二足歩行や、人に似た動きを実現するプログラミングにより以下を学ぶことができます。
基本的なプログラミング

重心の位置と移動（二足歩行）慣性（二足歩行・片足立ちなど）



動作の単位とその組合せ（歩行・日常的な動作）



身体による表現（ロボットダンス・音楽との連動）

複数のセンサやアクチュエータ（サーボモーター）を同時に扱う必要があるため、アプリケーションレベルで理解しやすく、容易に制御できる関数を用意しました。特にサーボモーターの同時制御は。大切な課題です。この部分はライブラリを使用せずに、コード記述により実現しています。
5.3．モーター制御の概要
モーター制御は複数の階層で実現しています。階層は以下のとおりです。


モーターの仕様に合わせたパルス幅制御



動作の組み合わせと順序の制御



操作に柔軟に対応できるしくみ

Fig. 8 モーター制御は階層に分かれる

A. モーターの仕様に合わせたパルス幅制御
モーター制御の最下位層です。
モーターの仕様に合わせた制御信号（パルス幅制御）を出力するためのプログラムです。モーターは77 軸ありますので、最大 7 個のモーターを同時に制御することが必要になります。この制御は連続で行うことが必要なため、負荷が片寄ると他に問題を生じます。そのため、分散して制御を行う仕組みにしました。
出力波形の生成は、正確なタイミングで出力することが必要になります。定時割り込みによる処理では分解能と処理のトレードオフが生じます。そのため、タイマ割り込みはパルス幅（ON/OFF デューティ）に応じて可変的に発生する方式にして、割り込み発生頻度を低減しています。
高速でモーターを駆動した場合、慣性が大きくなり転倒などを生じます。それを防ぐ目的と、より人らしい動作を表現するために、個々のモーターの速度（角速度）の制御を行っています。さらにこれらを向上させるために、加減速調整を可能として台形制御を導入しました。加減速期間を個別に設定できるようにして動作の多様性も高くしました。
B. 動作の組み合わせと順序の制御
二足歩行や多くの動作では個々のモーターが順序に従い、決められた操作量で動作する必要があります。それを実現するためにモーション・シーケンサを組み込みました。これも学習対象とするために
Arduino で記述しています。
個々のモーターが順序に従い決められた操作量で動作することをシーケンスと言います。シーケンスはプログラム（Arduino のコード）でなく、データとしてプログラムから独立しています。複数のシーケンスをあらかじめ記録しておくことにより、良く使う動作を簡略化すると同時に、アプリケーションでは上位の制御に集中することが可能となります。
シーケンスは個々のモーターの操作記述により構成します。個々のモーターの操作記述をシーケンスエレメントと呼びます。
シーケンスエレメント（シーケンスの構成単位）


操作の対象とするモーター

操作量



次の動作までの時間
シーケンスエレメントを時系列に記述したものがシーケンスです。実装では 4byte（テキストで 4 文字）です。これによりデータ量を圧縮するとともに、通信などの伝送にも柔軟に対応することが可能になります。
シーケンスエレメントには終了、繰り返し、他のシーケンスの開始などの指示が含まれます。そのため複数のシーケンスを関連付けて動かすことができます。
C. 操作に柔軟に対応できるしくみ
前項シーケンスの実行や通信による操作、シーケンスに依らずに個々のモーターを操作するなど、状況に応じて柔軟な制御が必要です。それを実現するためにモーションインタプリタを組み込みました。
8これも学習対象とするために Arduino で記述しています。
モーションインタプリタは前項 A の個々のモーターを個別に操作することと、前項 B のシーケンスで複数のモーターを秩序だって操作することができます。また、シーケンスを外部から書き込めるようにしています。これにより動的なシーケンスを実現できます。これ以外に全体の動作速度を設定する操作なども実装しています。
アプリケーションはもちろん、外部からもモーションインタプリタを操作することができます。この操作も文字列で行うことができます。
5.4．BLE との連携
今回の試作ではリモートコントロールとして、スマートフォンからの操作機能を搭載しました。スマートフォンとの連携は、Web Bluetooth API を使用しています。こちらは Leafony の事例である「STM32で Web Bluetooth を使った IoT アプリ入門」をベースにしています。
同サンプルプログラムのスマートフォン側の画面の中に SVG（ScalableVector Graphics）でグラフィカルな操作系を追加しました。
操作は画面上の上下（前後）左右の▶部のタップでおこないます。スマー
トフォンに搭載している加速度センサを使用してチルト（傾き）でも操作を行える機能を追加しました。
Fig. 9 リモコン画面

5.5．教材の全体像作成した教材の全体像は以下のとおりです。

Fig. 11 ロボットの全体像

Fig. 10 今回試作したブリッジボード

9６．拡張性の検討
今回の試作ではさらに機能を追加した拡張版を作成しました。拡張版で追加した機能は以下のとおりです。
Wi-Fi 通信機能

Bluetooth 通信機能



OLED 表示機能

複数の MCU の通信機能



省電力機能



デバッグポート

I2C 拡張機能

6.1．ESP32 の追加
Wi-Fi と Bluetooth の拡張は、ESP32 の追加実装で実現しています。入手のし易さと、多くの方が多用していることで事例も豊富であることが選定理由です。ESP32 は MCU であるため複数の MCU の連携も学習対象にすることができます。
6.2．省電力のくふう電池による 7 軸のモーター駆動のため、動作時間を長くするために省電力は必要です。特に Wi-Fi や
複数の MCU を動作させる場合は多くの電力が必要となります。動作状況に応じた省電力に配慮できる回路構成とプログラムの実装が必要になります。
回路構成は以下のとおり配慮しています。
Leafony のスリープ機能（Leafony の仕様）



ESP32 など他の MCU の外部抑制（スリープへの移行）



同電源系の制御（回路ブロックの電源断）

6.3．MCU の拡張と連携
拡張版では ESP32 を追加実装していますが、さらに外部に複数の MCU を追加できます。MCU 間はSPI で通信します。
SPI はマスタスレーブ方式と、ディジーチェーン方式があります。マスタスレーブ方式は事前にマスタ側とスレーブ側が決める必要があります。ディジーチェーン方式にした場合は、繋がる MCU の数により遅延が生じます。これらの問題点を解決して必要に応じてマスタスレーブ方式とディジーチェーン方式の切替え、マスタ側とスレーブ側の切替えを柔軟に行えるように MCU 間の通信制御回路を追加しました。
この通信制御回路により、MCU 間で柔軟な接続方式の選択と高速な情報伝達が可能になりました。
これは将来外部に追加接続した MCU にカメラを追加した場合に、高速で動画伝送することを想定しています。
10

6.4．デバッグ用ベンチ
アクチュエータを含む試作機の場合、デバッグ中にアクチュエータの不意な動作でトラブルが発生する場合があります。また、動く対象物の場合、対象物が移動してしまう場合もあります。
（車両では走って行ってしまう。ロボットでは歩いて行ってしまうなど）
これらの問題を防いで安全に安定的に開発を進めるために、開発台（ベンチ）の使用が望まれます。
今回はデバッグポートを兼ねたベンチを作成しました。

ESP32 UART / JTAGSTM32 SWD・電源ライン
ロボット搭載時
Fig. 12 デバッグ用ベンチ

今回作成したブリッジボードには STM32（Leafony）と ESP32（オンボード）が含まれます。これらの MCU で開発するときには以下のポートが必要になります。
STM32

USB（ USB Leaf で対応 ）STM32SWD



ESP32

UART（ USB 経由のプログラム書き込み ）ESP32

JTAG

これらのポートは日常的に使用するものでなく、また開発環境により選択的します。そのためブリッジボードには接続点（コネクタ）のみを実装しています。開発時にブリッジボードとツール間を接続するための追加回路とコネクタをデバッグ用ベンチに搭載しました。
11

7．将来に向けてロボットや IoT はこれからますます発展していくと思われます。また、他の技術とも連携して広がっていくことも想定できます。今回の試作では以下を想定しています。
A. 群制御多数のドローンを連携させて空間上で表現することが多く行われています。また FA では複数のロボットが状況に応じて連携して目的を達成するシステムが使われています。複数のロボット間で通信を行い連携する群制御を想定しています。

学習の場には複数の教材があり、群制御を行える前提条件があります。それらを活用した以下を想定しています。
教室のロボットで dancing（ 音楽との接続 ）

友だちのロボットと会話（ 国語との接続 ）

海外のロボットと SNS（ 英語（外国語）との接続 ）B. メタバース連携
メタバースの活用が進んでいます。今回使用した既製のロボット教材には Unity で作成された 3D ロボットがあります。Unity はメタバースと親和性が高いツールです。リアルのロボットとメタバース上のロボットの会話や連携、そこに学習者が含まれた場合の会話など「実体が伴う」メタバース連携を想定しています。

コロナ禍では学習もリモート環境になりました。リモート環境の活用により遠隔地でも同じ環境を得ることが可能になりました。遠隔地での学習などにも活用することが期待できます。
12

8．所感
プログラミングではパーソナルコンピュータの操作で完結する場合が少なくありません。そのパーソ
ナルコンピュータのキーボードの直下には、スイッチ回路があります。見ている画面の真裏にも表示用のデバイスがありそこには緻密な回路が敷かれています。目の前にハードウエアがあります。
IoT の中でもエッジ系はリアルで物理的な世界と接しています。常にハードウエアを意識する必要があります。センサはその境界面の接点です。モーターなどのアクチュエータも同様です。プログラムで表現された動きが実際の動きになる接点です。
ロボットは、センサとアクチュエータの両方を持っています。学習教材としてロボットは入出力の両方を学べます。二足歩行では重心や慣性を考えないとスムースな動作になりません。そこには物理や数学の考え方が必要になります。二足歩行を実現するとき「歩く」ということを再認識します。自らの日常の動作や行動を振り返ります。今回の試作を通じて教材を作ること自体が大きな学びになりました。
今回の試作は、Leafony が小型軽量で省電力であったので、小さな教材に搭載することが可能になりました。また、体系だった多くの資料や事例が、教材としての優位性につながりました。群制御やメタバースなどは、IoT の技術を必要とします。その様な面でも IoT デバイスである Leafony の親和性と拡張性は優れていると感じました。
この機会をいただいて Leafony とロボット教材のマリアージュを試すことができました。ありがとうございました。
9．連絡先・その他
著作権
この資料の著作権は原則として大和無線電機株式会社が所有しています。（資料に含まれる各引用の著作権は、各著作権者が保有しています。）掲載内容について著作権法上の「私的使用」や「引用」の範囲を超えて使用する場合、大和無線電機株式会社の使用許諾が必要となります。ご利用の際にはあらか
じめ当社にご連絡下さいます様、お願い申し上げます。（ 連絡先 eMail : YYamaya@daiwa-musen.co.jp山谷）
記載内容について
当資料の閲覧・使用につきましては、そのリスクは利用者が負うもので、大和無線電機株式会社及びその制作者は責任を負うものではありません。大和無線電機株式会社及びびその制作者は記載内容、特定目的に対する適合性、および権利侵害の不存在その他について明示であると黙示であるとを問わずに、一切の保証をするものではありません。当資料に記載している内容は、大和無線電機株式会社のサービス等の紹介のほか、Leafony の活用事例などに関する情報の提供を目的としたものです。

。
以上

13引用と参考資料
参考 1：文部科学省・新学習要領について
https://www.mext.go.jp/b_menu/shingi/chousa/shisetu/044/shiryo/__icsFiles/afieldfile/2018/07/09/14
05957_003.pdf
参考 2：文部科学省・TEAM 教育等の各教科等横断的な学習の推進
https://www.mext.go.jp/a_menu/shotou/new-cs/mext_01592.html
参考３：プログラミングロボット「クムクム（ Qumcum ）」https://qumcum.com/
参考４：株式会社 CRETARIA
https://cretaria.jp/
参考 5：STM32 で Web Bluetooth を使った IoT アプリ入門
https://docs.leafony.com/docs/examples/advanced/3_p/stm32/stm32_webbluetooth_iot/－・－
大和無線電機株式会社
https://www.daiwa-musen.com/
Leafony 専用サイト
https://daiwa-leafony.jp/

14