北海道地区

教育システム情報学会 2019年度学生研究発表会

中学生向け協働学習型機器制御アルゴリズム実習システムの開発
Development of Collaborative Learning System to Study Control Algorithm
Using Industrial Hardware for Middle School Students
山田 哲大*1, 千田 和範*1
Tetta YAMADA*1, Kazunori CHIDA*1*1 釧路工業高等専門学校*1 Institute of Technology, Kushiro College
Email: chida@kushiro-ct.ac.jp
あらまし：2021 年度実施の中学校新学習指導要領では，従前の内容に加え計測制御システムを構想する必要がある．加えて問題解決能力の育成や主体的・対話的で深い学びの実現を求めている．しかし生徒は順次，分岐，反復を組み合わせたアルゴリズムの実現を苦手とする場合が多い．そこで本研究では認知度が高い産業機器を題材に，グループで討論しながらフローチャートブロックを組み合わせて，制御アルゴリズムを実現する導入教材の開発を行う．
キーワード：ビジュアルプログラミング，プログラミング学習，計測と制御，学習教材，協働学習

1.

課題解決アルゴリズムを
フローチャートブロックを使ってグループ検討

はじめに

現在の日本は，グローバル化や技術革新等により，社会構造や雇用環境は急速に変化しつつある．それに対応するため 2021 年度は中学校で新学習指導要領が全面実施される．中学校では新学習指導要領における技術分野の中の「プログラムによる計測・制御」は「計測・制御のプログラミングによる問題の解決」(1)へと改訂されることになり，この改訂により従来の学習内容に加えて計測制御システムを構想する必要がある．加えて問題を見出して課題を設定し，解決する力（問題解決能力）の育成や主体的・対話的で深い学びの実現が求められている．一方でプログラミング初心者は与えられた課題に対し，順次，分岐，反復を組み合わせてアルゴリズムを実現すればよいか見当を付けられないことが多い．また各学習者が PC で個別に作業を行うため，気軽に討論できない環境もプログラム学習の難しさに影響を与えている．そこでグループワーク等の協働学習によって学べる環境を実現し，学習者にとって動作が分かりやすい産業機器の制御を課題とし，プログラム入力が容易で実行結果の即時確認が可能とすることで，プログラミング学習の効果向上が期待できる．
本研究では，グループで討論しながらフローチャートブロックを組み合わせて，制御アルゴリズムを実現するビジュアルベースの非言語型プログラミン
グによるアルゴリズム学習教材の開発を行う．

2.

処理ブロック

QRコードによるプログラム入力

実機模型による動作検証

入力が容易
コード解析／制御用マイコン
即座に確認

反復ブロック分岐ブロック

検討しやすい（修正／再検討）

図 1．協働学習型機器制御アルゴリズム実習システム

るための産業機器模型によって構成される．以下のこれらの項目の概要を説明する．
2.1 フローチャートブロック
ビジュアルプログラミング言語はテキスト記述型言語に比べ，構文エラーがないため初学者にとって使いやすい言語と考えられている(2). 一方で，従来の一般的なプログラミング学習では PC を使った個人作業となる場合が多い．したがって行き詰ったりすると学習に対する動機づけが著しく低下する．そこ
で，グループで協働しながらアルゴリズムを検討することを容易とするために，実環境下でビジュアルプログラミングを行うための図 2 に示すアクリルプレート製の FT ブロックを新たに導入する．
この FT ブロックはアルゴリズムを検討する際の基本となる分岐，反復，処理をブロック化し，これらのブロックを組み合わせて接続することで順次構造を表す．また初学者を対象とするため，各 FT ブ
ロックはテキスト記述型言語の命令文に相当する様な汎用的なブロックとはせず，例えば図 2 の処理ブ
ロック「指定した色を点灯する」の様に課題解決に必要な要素をある程度含んだ形でブロック化する．
これによって初学者であっても課題解決のためのアルゴリズムの検討が容易になる．また FT ブロック

機器制御アルゴリズム実習システム

本学習システムは，次の 4 つのユニットで構成される．まず，PC レスで協働学習を行いながら課題のアルゴリズムを検討するための，フローチャートブロック（以下，FT ブロック），ブロックの組み合わせによって実現されたプログラムを入力するためのQR コードリーダー，QR コードを解析し，機器を制御するための組込みマイコン，そして動作を確認す

21

北海道地区

教育システム情報学会 2019年度学生研究発表会

プログラムコード蓄積用リスト

処理

内容A

分岐

条件

処理

リストに順次追加

FTブロック

内容B

図４．読み取ったＱＲコードのリスト追加処理

で初学者であっても動作がイメージしやすい課題とすることを考える．これによって学習者はどのようなアルゴリズムで構成されているのか，把握しやすくなる．また間違えていたとしても，実際の動きとプログラム結果の比較が容易なため，アルゴリズムの問題点も気が付きやすい．今回は誰でもわかる動作内容であり，処理，分岐，反復がアルゴリズムに含まれる信号機制御を課題とする．図 3 は実習シス
テムの全体構成となる．

図２．フローチャートブロックの例
RaspberryPi 3B+

QRコードリーダー

産業機器模型（信号機）

3.

QR コードの機器制御プログラムへの変換

4.

まとめ

QR コードリーダーによって読み取られた QR コードは，組込みマイコンによって図 4 の様に QR コードの入力順に追加される．
プログラム終了の FT ブ
ロックが入力された後，プログラム実行の FT ブロックが示されると，リストの先頭から順次命令の解析を行う．たとえば，読み出したリストが「処理：指定色点灯」であれば，次のリストを読み出し，色情報を取得する．次いで，その指定色を点灯させる命令を信号機制御用マイコンに送信する．

フローチャートブロック群

図３．実習システムの全体構成の使い方を説明無しに使える様に，各 FT ブロックは異なる形状のはめ合い部を有する．これにより学習者はブロックの間違った組み合わせによる構文ミスに悩まされることなく，アルゴリズムの検討に専念することができる．合わせて各ブロックの識別はブロックに貼り付けた QR コード（3）によって行う．
2.2 プログラム入力用 QR コードリーダー
学習者が FT ブロックで表したプログラムの動作を実機模型によって検証するためには，一度実機模型制御用マイコンに取り込む必要がある．この時，学習者の本人起因の間違い以外の動作不良は学習者の学習意欲を低下させる．したがって FT ブロックを確実に識別する必要があるが，ここでは QR コードを用いることで，読み取りミスを回避することにした．また QR コードは社会でもなどで良く用いられることになったことから，学習者にも違和感なく扱えると考えている．今回は QR コードリーダーとして Honeyweel 製 Genesis 7580g を用いた．

本研究では QR コードを入力の媒体としてアルゴ
リズム学習に用いた中学生向けの「計測と制御」の導入用教材の開発を行った．そして製作した FT ブ
ロックを組み合わせて実機の制御を行い信号機表示灯の点灯，消灯を決められた順序で実行する順次機
能，秒数による動作の分岐機能，一定期間の動作を繰り返す反復機能を実装することができた．及び実装した機能を用いたブロックを組み合わせて実際の信号機と同様の動きが再現できることを確認した．
今後は 2 月中旬の中学校の出前授業で実際に利用し有効性を検討する．
参考文献(1) 【技術・家庭編】中学校学習指導要領解説
文部科学省（2017）p12（2020 年 1 月 17 日確認）
https://www.mext.go.jp/component/a_menu/education/mic
ro_detail/__icsFiles/afieldfile/2019/03/18/1387018_009.p
df(2) 松澤芳昭，酒井三四郎：ビジュアル型言語とテキスト記述言語の併用によるプログラミング入門教育の試
みと成果，情報処理学会研究報告，Vol2013-CE-119-2,
pp.1-11 (2013)(3) QR コード®とは,DENSO WAVE
（2020 年 1 月 17 日確認）
QR コード(株)はデンソーウェーブの登録商標である
https://www.densowave.com/ja/system/qr/fundamental/qr
code/qrc/index.html

2.3 プログラム解析／機器制御用組込みマイコン
本実習システムは協働学習で用いられる関係上，様々な実施場所で運用されることが想定できる．そこで可搬性を考慮し，液晶モニタを付加した
RaspberryPi model 3B+を用いている．また解析／制御プログラムは Python3 によって実装している．
2.4 動作確認用産業機器模型
プログラミング学習において，初学者が直面しやすい問題の一つに，課題に対しアルゴリズムを適用しやすい内容に分解できない点があげられる． そこ22