• 検索結果がありません。

BASIC 言語とドローンを用いた初学者向けプログラミング 教育 の 実践

N/A
N/A
Protected

Academic year: 2022

シェア "BASIC 言語とドローンを用いた初学者向けプログラミング 教育 の 実践 "

Copied!
3
0
0

読み込み中.... (全文を見る)

全文

(1)

-61-

BASIC 言語とドローンを用いた初学者向けプログラミング 教育 の 実践

岩佐 英彦

、本田 康子

、小野 朗子

Development of programming materials for beginners using BASIC language and drone

Hidehiko IWASA

, Yasuko HONDA

and Akiko ONO

Following the start of programming education in elementary and junior high schools, programming teaching materials for children are being actively developed. The main ones are those that use visual programming languages such as Scratch and those that use full-fledged languages such as JavaScript and Python. This paper introduces programming materials for operating drones using the BASIC language, which is an early programming language. The BASIC language has the advantage that even elementary and junior high school students can easily create programs as long as they understand the control structure of the program using IF statements and GOTO statements, and is suitable for programming learning for beginners.

Keyword BASIC, Programming education, Drone programming

1.背景

小中学校においてプログラミングが必修となったこと を受けて、様々なプログラミング学習のための教材が開発 されている。多くの教材においては、ScratchやMicrosoft

社のMake codeなどのように、コマンドや制御構造をブロ

ックに見立てて、それらをつなぎ合わせることによってプ ログラムを作成していくビジュアルプログラミング言語 が用いられている。ビジュアルプログラミング言語は、プ ログラミングに不慣れな初学者であっても簡単にプログ ラムが作成できるというメリットがある反面、プログラム の表記の方法が一般的なプログラミング言語と大きく異 なるため、次のステップに進むことが難しくなってしまう という課題がある。

一方で、JavaScriptやPythonなどの一般的なプログラミ ング言語を用いる場合、実行環境の準備が困難であること、

プログラミングを実行させる以前の文法習得のコストが 高いことなどが課題となる。また、中学校ではプログラミ ングの際に、ハードウェアの制御なども同時に学習する

ことが求められており、一般的なプログラミング言語を用 いるハードルが高くなっている。

そこで本稿では、1970年代から1980年代に盛んに用い られていたBASIC言語を用いたプログラミング教材を開 発し、その内容を紹介する。BASIC 言語は、インタプリ タ型の言語であり、学習者が対話的にプログラムを実行す ることが可能となっている。また、データ型や制御構造の 構文を理解していなくても、比較的容易にプログラムを作 成できるという特徴がある。

BASIC 言語を用いてプログラムを行うことにより、学

習者は逐次処理、分岐、反復といったプログラムの制御構 造を学ぶことができるため、JavaScriptやPyhtonなどの現 在一般的に用いられているプログラムへの橋渡しとして 適しているものと考える。また、本稿において紹介する IchigoDyhook、IchigoDakeといったハードウェアを用いる ことによって、簡単なBASIC言語のコマンドを理解する だけで、ドローンを制御するプログラムを作成できること を示す。また、これらの構成を用いて実際に中学校におい て実施したドローンプログラミング体験授業についても 報告する。

近畿大学工業高等専門学校

総合システム工学科 制御情報コース

61

(2)

-62-

2.%6,& 言語実行環境,FKLJR-DP と %$6,& 言語

IchigoJamは、2014年4月に発売を開始されたシングル ボードコンピュータであり、BASIC 言語が動作するファ ームウェアが提供されている。はんだ付けを自分で行って 組み立てるキットが1500円(税抜)という低価格であり、

キーボードさえ接続すれば、画面はテレビで良いという手 軽さから、多くの子供プログラミング教室などで使用され ている(1)。 全国にIchigoJamを用いて子どもプログラミ ングの普及を行っているPCN(プログラミング・クラブ・

ネットワーク)という組織があり、全国各地50か所以上 で活発にプログラミング教育が実践されている(2)。図1に シングルボードコンピュータ IchigoJamの外観を示す。

図1.シングルボードコンピュータIchigoJamの外観

IchigoJamにはBASIC言語の実行環境がファームウェア としてプリインストールされている。インタープリタ環境 において対話的にコマンドを実行したり、IchigoJam に備 えられているRAMに保存しておいたプログラムをロード して実行することが可能である。

3.ドローン制御のためのシステム構成

図.1に示したIchigoJamを使用するためには、キーボード、

電源、外部ディスプレイが必要となるが、小中学校の教室 などにおいてこれらを用意することは困難なために、

IchigoJam とキーボードと小型ディスプレイを一体化した

IchigoDyhookが販売されている。IchigoDyhookは乾電池で 動作するために児童・生徒数のコンセントを用意すること もなく、場所を選ばずにプログラミングを行うことができ る。IchigoDyhookにはIchigoJamのCPUとRAMの部分が 搭載されておらず、CPU とRAM を搭載したIchigoDake をUSBスロットに挿入して使用する。図2にIchigoDake の外観を、図3にIchigoDakeを装着したIchigoDyhookの 外観を示す。

IchigoDyhook を 用 い て 作 成 し た プ ロ グ ラ ム は

IchigoDakeに保存される。ドローンと通信する機能を有す

るFruitPunchと、IchigoDakeに格納されたプログラムを実

図2. IchigoDakeの外観

図3. IchigoDyhookの外観

図4. FutuitPunch(上)とDakeJacket(下)の外観

図5. ドローンの外観

62

(3)

-63- 行して、ドローンへ送信するコマンドをFruitPunchに転送 する機能を有するDakeJacketを用いることによって、ドロ ーンを飛行させることができる。図4にIchigoDakeを装着 したDakeJaket(下側)とFruitPunchの外観を、図5に制 御対象となるドローンの外観を示す。

4.ドローン制御のプログラム例 上記のシステム構成を用いて実際にドローンを制御す るプログラムの例を示す。本プログラムは、ドローンが右 回転、左回転、宙返り、後方宙返りをランダムに繰り返し ながら飛行し、後方宙返りが2回行われた時点で着陸する ものとなっている。

プログラムを見ればわかるように、ドローンというハー ドウェアを制御しているにもかかわらず、非常にシンプル なコードになっており、BASIC 言語の基本さえ理解すれ ば、小中学生であっても比較的容易に実践的なプログラミ ングを行えることがわかる。プログラム中の20行目と50 行目から80行目の各行の「?」は、その直後のダブルク ォート「”」で囲われたコマンドをドローンに送信するた めのものであり、「”」で囲われた内部の簡単なドローン制 御のためのコマンドを理解するだけでこのプログラムを 作成することができる。

10 ?"":CLV

20 ?"FP INIT":?"FP TO":WAIT500 30 C=0

40 D=RND(3)

50 IF C>=2 ?"FP N":?"FP LD":END 60 IF D=0 ?"FP TR":WAIT120 70 IF D=1 ?"FP TL":WAIT120

80 IF D=2 ?"FP S flip b":WAIT180:?"FP N"

90 IF D=2 C=C+1 100 GOTO 40

図6.ドローン制御プログラムの例

5.中学校でのプログラミング授業実践事例 図6に示したようなプログラムを作成してドローンを 飛行させることを目的とした授業を、伊賀市立柘植中学校 の3年生15名を対象として行った。時間は約90分であり、

30分程度のBASIC言語の説明を行ってから、ドローンを

操作するためのコマンド一覧表を参照させながらプログ ラミングを行わせた。

生徒の中にはプログラミングの知識を有する者が 1 名 いただけで、他の14名は一切のプログラミング経験がな かったにもかかわらず、60 分の体験授業の時間中に、自 らが設定した経路に沿ってドローンを飛ばすことを達成

できた。図7、図8に柘植中学校でのドローンプログラミ ング体験授業の様子を示す。

図7.体育館でのプログラミング講座の様子

図8.体育館でプログラミングをしてドローンを飛ばし ている様子

6.まとめ

本稿では、BASIC言語の実行環境であるIchigoJamとド ローンを用いた小中学校でのプログラミング授業に適し たシステムの構成と、それを用いたドローンプログラミン グの実践について報告し、非常に安価な構成とシンプルな プログラムによって効果的なプログラミング授業が実施 できることを示した。今後は近隣の小中学校を対象として プログラミング授業を実施し、学年やレベルに応じた様々 なプログラミング教材を開発していく予定である。

参考文献

1) IchigoJam について、https://ichigojam.net/

2) PCNについて、https://pcn.club/about/

63

参照

関連したドキュメント

The advantages (2) and (3) are also very attractive for the integration with array antennas such as beam steering array antenna, arrival angle sensing antenna, wide

Block-type visual programming language is suited to the teaching material of programming education for elementary or junior high school students as in many cases. However, even if

pated  in  the program  for three weeks in either  June  or  September, so  a  certain   amount of extensive reading might be needed  

Is extensive reading effective to motivate learners to read in remedial courses which consists of students with various proficiency levels.. Table 5 shows the

In a similar way that French or German seem difficult to English speakers learning them as a second language due to their systems of grammatically gendered nouns, but to French

Of Companion Planting in Junior High School Proposal of Teaching about the Cultivation of Crops that Take Advantage of the Controlling Effect. Tamotsu O NISHI *and Yusuke H ATAKEYAMA

Homemaking Course Textbook Analysis of the Security Symbol at Elementary School and Junior High School. Kikuko YAMAMOTO * , Asako SATOU ** , Mieko O TOMO *** and Yoshiko Y

The results of our research suggest that by applying neriage techniques, individual students are able to look back on their own problem solving processes and are encouraged