はじめに
2022 年から高等学校の教科「情報」は、必履修科目の「情報Ⅰ」と選択科目の「情報Ⅱ」に再編され、どちらにもプログラミングが含まれ、2025 年度からは大学入学共通テストで情報Ⅰが出題教科になります。
高等学校学習指導要領解説情報編には、高等学校の教科「情報」の学習内容は、中学校技術・家庭科技術分野の内容「D 情報の技術」の「計測・制御のプログラミング」や「ネットワークを利用した双方向性のあるコンテンツのプログラミング」などの項目との系統性を重視することが示されており、文部科
学省の情報Ⅰ・Ⅱの教員研修用教材や情報Ⅰ・Ⅱの教科書の一部にもその事例が示されています。これらの事例には、マイコンボードと呼ばれるハードウェア教材を使ったプログラミングが示されています。
一般的にマイコンは、汎用のパソコンのCPU とは異なり、組み込み用のマイクロコンピュータを指し、家電製品やゲーム機器、自動車、産業用機械などの装置に組み込まれ、センサ（検知器）やアクチュエータ（駆動装置）と連携してこれらの装置の計測・制御を行っています。
米 国 調 査 会 社のIDC（International Data Corporation）やICインサイツ（IC Insights）によると、2021 年のパソコンの世界出荷台数が3 億4880 万台に対して、マイコンの世界出荷量は309億個に達しました。身の回りのほとんどの装置に組み込まれているマイコンは、実にパソコンの100倍近い量が出荷されており、今や必要不可欠といっても過言ではありません。
中学校の技術科だけでなく、高等学校の情報Ⅰ・Ⅱにおいても、マイコンボードなどのハードウェア教材を使ってこれらの仕組みを学ぶことは極めて重要であると思います。
この資料では、株式会社アーテックのStuduino:bit（スタディーノビット）やArtecLogger（アーテックロガー）などのマイコンボードを使った活用事例が情報Ⅰ・Ⅱの学習項目に関連させて掲載されています。これらのマイコンボードは、教科横断的な探究学習であるSTEAM 教育を実践するための道具としても欠かせないものとなっています。STEAM 教育は、科学（Science）、技術（Technology）、工学（Engineering）、アート（Art）、数学（Mathematics）の5つの頭文字から作られた言葉で、文理の枠を超えて各教科での学習を実社会での学習に生かすとともに、新しい価値を創造する能力の育成をねらいとしています。
「日本の国力の低下」の一因となっている「デジタル化の遅れ」を取り戻すためにも、高等学校の情報Ⅰ・情報Ⅱをはじめとする小中高のプログラミング関連科目の着実な実施に向けた取り組みを推進していく必要があります。
本資料が先生方の授業のご参考になれば幸いです。
てんら

天良 和男
元都立高校物理科・情報科教諭
元東京学芸大学特任教授

Co nten ts
ページ中に以下のアイコンがあります: 関連動画あります

Computer
Science: テキストダウンロードできます

Programming
Technology

NetworkEngineering

DigitalArts

Data Science
Mathematics

はじめに����������������������������������

…1

序

高等学校「情報Ⅰ・Ⅱ」とマイコンボードの活用�������

…3��������������������

…7章

第 1 章 コンピュータの仕組み

マイコンボードでよくわかるコンピュータの働き
Pythonを動かしてみよう①〈環境構築〉

第 2 章 デジタル情報
要点図解
実

習

コラム

デジタル情報の仕組み

マイコンボードでよくわかるデジタル情報
Python を動かしてみよう②〈変数〉

第 3 章 プログラミング������������������������

コラム

コンピュータの仕組み���������������������
���������������
��������������������������

習�������������������������

実

�������������������
���������������
��������������������������

要点図解

Pythonを動かしてみよう③〈関数〉

���������������������
������������
���������������������

第 4 章 ネットワークの仕組み��������������������

実

習

コラム

要点図解
実

習

コラム

プログラミングの仕組み

マイコンボードでよくわかるプログラミングの基礎

ネットワークの仕組み�������������������
�������������
��������������������������

要点図解

マイコンボードでよくわかるネットワークの基礎
Pythonを動かしてみよう④〈WebAPI〉

第 5 章 データの活用

…8

1
…0
1
…2

… 13
…14
…16
…18
…19
…20
…22
…24
…25
…26
…28
…30

������������������
���������������
���������������������������
��������������������������

Pythonを動かしてみよう⑤〈グラフ描画〉

…31
…32
…34
…36

第 6 章 問題の発見と解決のために

…37

習

コラム

データの活用の基礎
マイコンボードでよくわかるデータの収集と活用①遠隔計測・制御システム（IoT)②安否確認システム（IoT）

���������������������
��������������������������
���������������������

実

������������������

要点図解③手書き数字認識システム（AI＋IoT）

������������������������

④顔認識ゲートシステム（AI＋IoT）

�������������������������������
�����������������������������������

参考資料
編集後記に代えて

…38
…40
…42
…44
…45
…46

表記について教科書と表記を統一するために一部、商品名やWebページ、各テキスト類と表記が異なる場合があります。例）コンピュータ、サーバ、モニタ、モータ、アクチュエータなど。

2

高等学校「情報Ⅰ・Ⅱ」と序章
マイコンボードの活用
2020 年度から小学校で「プログラミング的思考を育成する」授業が始まり、2022年度からは高校でもそれまでの「社会と情報」と「情報の科学」を統合した新科目「情報Ⅰ・Ⅱ」がスタートしました。
必履修科目とされる情報Ⅰでは、全員が「プログラミング」「 情報デザイン」「 データの活用」など、これからの時代に必要なインターネット、データサイエンス、AI、IoT などの基礎となる知識や技能を学ぶことができます。そしてそれらを使って「問題を解決する能力」を身につけることが求められます。
そのためには単なる知識だけでなく、実際のハードウェア教材を活用してより実践的な活動を踏まえた「生きた」知識・知能が必要となります。

Programming
Technology
3

風車をまわしてエネルギーをつくろう

小学校・中学校から連続する
プログラミング教育
高等学校の共通教科情報科の学習内容は、中学技術家庭科技術分野の内容「D 情報の技術」との系
統性を重視することが重要と明記されています。中学技術分野の「D 情報の技術」では、計測と制御
や、双方向の通信などの単元で、マイコンボード( ボード型コンピュータ）を使った授業が始まっています。一方、高校情報科ではこれまでハードウェアを使った実践事例はほとんど見受けられませんでした。しかし、文部科学省の「情報Ⅰ・Ⅱ」の教員研修用教材や、新しい「情報Ⅰ」の教科書の一部にはマイコンボードを活用した事例が示されるようになっています。すでに小学校・中学校で広く活用されているマイコンボードを通した実験や実習の高校への導入は、ハードウェアやシステムという目に

1て、IoT（モノのインターネット）や人工知能(AI）などの技術を使って新たな価値の創造や地球規模の章 序 章 高等学校「情報Ⅰ・Ⅱ」とマイコンボードの活用

第見えないものの理解を促すのに大いに役立つでしょう。これはデジタル社会が発展する現代におい問題解決ができる人材の育成に貢献するに違いありません。

図1

小学校、中学校、高校の学習内容比較
小学校

中学校

高等学校

2020 年度～

2021 年度～

2022 年度～

理科や算数、音楽、図工などの既存教科、総合
的 な 学 習 の 時 間などで体験を通してプロ
グラミング的思考を育成。

「計測・制御のプログラミング」「 ネットワークを利用した双方向性のあるコンテンツのプログラミング」の単元。

情報Ⅰ「コンピュータとプログラミング」の単元。
情報Ⅱ「情報システムとプログラミング」の単元。

・多角形を描く（算数）・電気の流れ（理科）・ロボットの制御（総合）・計測制御のプログラム・制御での問題解決
・ネットワークでの利用

・情報Ⅰ
・情報Ⅱ

計測制御のプログラム
WebサーバやMailサーバとの連携■技術分野内容「Ｄ情報の技術」の目標と、想定した学習過程
学習指導要領解説技術・家庭編
（以下
「解説」
）
では、
この内容の目標について、以下のように説明しています。

ここでは、情報の技術の見方・考え方を働かせた実践的・体験的な活動を通して、生活や社会で利用されている情報の技術についての基礎的な理解を図り、それらに係る技術を身に付け、情報の技術と生活や社会、環境との関わりについて理解を深めるとともに、生活や社会の中から情報の技術に関わる問題を見いだして課題を設定し解決する力、よりよい生活や持続可能な社会の構築に向けて、適切かつ誠実に情報の技術を工夫し創造しようとする実践的な態度を育成することをねらいとしている。
■高等学校情報科の目標
情報科では、情報に関する科学的な見方・考え方を重視。問題の発見・解決に向けて情報と情報技術を適切かつ効果的に活用するための知識および技能を身に付け、実際に活用する力を養うとともに、情報社会に主体的に参画する態度を養うことを目指す。

ワン
ポイント
4

情報活用能力情報及び情報手段を主体的に選択し、活用していくための個人の基礎的資質のこと（文部科学省）。
現学習指導要領では「言語能力」
や「問題発見・解決能力」
とともに、学習の基盤となる資質・能力の1つとされた。

風車をまわしてエネルギーをつくろう

問題解決力の育成を目指して、
情報Ⅰ・Ⅱの幅広い領域で使える実習例
本書には、中学校技術分野の「計測と制御」「 双方向の通信」の学習内容を基礎にしながらマイコン
ボードを使うことで、高校情報Ⅰ・Ⅱの主要な学習領域全般の学習活動に役立つ事例を掲載しました。
具体的には情報Ⅰの学習内容から「コンピュータ」「 デジタル情報」「 プログラミング」「 ネットワーク」「データの活用」の５つの領域について、それぞれの学習内容の解説と、それに対応するマイコンボー
ドの活用例が分かるように構成されています。また最終章は、全体のまとめとして、情報システムの設計・制作など「情報Ⅱ」の内容をふまえて、情報技術を生かした問題解決を含む活動例です。
本書全体を通して、プログラミングせずにハードウェアだけで学習する内容やソフトウェアによる

第ムまで、多彩な実験・実習例が掲載されています。

1

図2

章 序 章 高等学校「情報Ⅰ・Ⅱ」とマイコンボードの活用

2進数と10進数の変換から、小型カメラとネットワークを組み合わせたAIによる画像認識のシステ

情報Ⅰ・Ⅱの学習内容・単元表と本書の内容
本書第１章

コンピュータの仕組み

第4章

ネットワークの仕組み

第2章

デジタル情報第5章

データの活用

第3章

プログラミング第6章

問題の発見と解決のために

本書

情報Ⅰ

情報Ⅱ

第１章

（１）
情報社会の問題解決（１）
情報社会の進展と情報技術

第2章

（２）
コミュニケーションと情報デザイン（２）
コミュニケーションとコンテンツ

第3章

（３）
コンピュータとプログラミング（３）
情報とデータサイエンス

第4章

（４）
情報通信ネットワークとデータの活用（４）
情報システムとプログラミング（５）
情報と情報技術を活用した問題の発見・
解決の探究

第5章
第6章

（画像出典：文部科学省「高等学校情報科『情報I』教員研修用教材」
）

ワン
ポイント

情報Ⅰと情報Ⅱ「情報I」は、問題の発見・解決に向けて、事象を情報とその結び付きの視点から捉え、情報技術を適切かつ効果的に活用する力を育む。
「情報II」
では、「情報I」の基礎の上に、
情報システムや多様なデータを適切かつ効果的に活用する力や、コンテンツを創造する力を育む。

5

風車をまわしてエネルギーをつくろう

情報Ⅰ・Ⅱ の理解を深めるマイコンボード（ボード型小型コンピュータ）
本書では、EPS32 というCPU（中央演算装置）と、LED ディスプレイや電子ブザー、各種センサ、
ネットワーク機能などを一枚の基板に収めたマイコンボードStuduino:bit（ スタディーノビット）や
アーテックロガーを活用して、情報Ⅰ・Ⅱの基本概念を学習することを提案します。
マイコンボードはボード型コンピュータやワンボードマイコンなどとも呼ばれ、スタディーノ、
Arduino、micro:bit、Rasberry Piなどたくさんの種類があり、Studuino:bit はその中の一つです。
Studuino:bit は小学校、中学校ではプログラミング教材「アーテックロボ」シリーズとして人気の教材で、中学校技術科の代表的な教科書にも掲載され、年ごとに使った経験のある子どもたちが高校に

1

ラミング教材ですが、高校で学習するPythonなどのテキスト言語にも対応します。テキスト言語とし章 序 章 高等学校「情報Ⅰ・Ⅱ」とマイコンボードの活用

第入ってきます。低学年でもとっつきやすいScratch3.0と共通のビジュアル言語を取り入れたプログては、Python3と互換性のあるMicroPythonを使用します。プログラミングのためのソフトウェア
は、無料でWeb サイトからダウンロードして利用できます。

図3

Studuino:bitとアーテックロガー

マイコンボードStuduino:bitは、パソコンなどで書かれたプログラムを、有線または無線で受信する。
アーテックロガーはデータ収集のための専用マイコンボードで、プログラミングすることなく、センサからの情

図4Studuino:bitで使用できる
無料プログラミングソフト

スタディーノビットソフトウェア
Scratch3.0 互換で、キャラクターモードはソフト
単独でも使用可能。

報を無線でパソコンやタブレット端末のWebブラウザに表示することができる。
メインユニット

Muエディタ Studuino:bit対応
Python3互換MicroPython が書ける。単独でもPython のプログラムを作成できる。

ロボット拡張ユニット

Studuino:bit(スタディーノビット)

ワン
ポイント
6

情報Ⅰと大学入試

アーテックロガー

ソフトウェアのダウンロード方法は45 ページ

2024年度からの大学入学共通テストの出題教科に、国語、数学、英語等と同様の基礎的な教科として「情報」が追加される。
これを受けて国立大学協会は2024年度からの大学入試で「情報Ⅰ」を必須とし、
これまで、5教科7科目を、原則として6教科8科目に改めると発表された。

風車をまわしてエネルギーをつくろう

第1章 コンピュータの仕組み
コンピュータと聞くと、ノートやデスクトップ型のパソコンを連想します。またタブレット端末やス
マートフォンにも同じような仕組みが使われていることは想像できます。しかし現実の社会では、家庭や町の中でたくさんのコンピュータが働いています。それらに共通する仕組みを見てみましょう。

第
章 第

1

章 コンピュータの仕組み

1

情報Ⅰ「コンピュータとプログラミング」関連
文科省教員研修用教材 第3章学習11・学習12

Computer Science

ワン
ポイント

CPU

Central Processing Unit の略で、プロセッサともいう。普通のパソコンには1 個から数個が使われるが、スーパーコンピュータとよばれる理化学研究所の「富岳」の場合は、1台で15 万個以上ものプロセッサを使用する。

7

風車をまわしてエネルギーをつくろう

要点図解コンピュータの仕組み

コ ン ピ ュ ー タ は、命 令 に 従 っ て、自 動 的 に 計 算 や さ ま ざ ま な 処 理 を 行 う 機 械 と 言 え ま す。コ ン
ピュータは機械そのもの（ハードウェア、略してハード）と、それに関連するプログラムやデータなど情報をまとめた文書（ソフトウェア、略してソフト）からできています。コンピュータのハードウェア
は、①入力装置、②本体、③出力装置がつながって構成されています。パソコンでいえば、キーボード
タッチパネルやマウス、内蔵されたマイクなどが①、ディスプレイやスピーカ、外に接続するプリンタなどが③にあたります。本体②は①から入って来た命令やデータなどの情報を、ソフトウェアのプ
ログラムに従って計算や処理をし、その結果を③に出力します。コンピュータの②本体は制御装置と演算装置をもつCPU（中央処理装置）と、プログラムや計算前後のデータを保管する記憶装置（主記憶装置メモリ、補助記憶装置ストレージ）からできています。

第
章 第

1

章 コンピュータの仕組み

1●ハードウェア
ハードウェア（略してハード）には、ノート型やデスク●ソフトウェア

ハードウェアに対して、コンピュータに命令をトップ型のパソコンのほか、スマートフォン（タブレッ

出すための情報のことをソフトウェア（略してト端末や腕時計型端末なども含む）がある。マイコンソフト）といい、OS やアプリケーションソフト

ボードもハードの一つ。コンピュータ本体の機能は３つ（略してアプリ）がある。アプリは表計算や文書に分けられ５大装置と呼ばれることもある。

作成、ネット検索など特定の目的を持っている。

ハードウェアの５大装置プログラム、データの流れ
制御の流れ

中央処理装置(CPU)

制御装置
演算装置

入力装置

記憶装置

出力装置

①入力装置
●パソコン・スマートフォンの入力装置
パソコンにはキーボードやマウスのほか、マイクや② CPU などの本体●マイコンボードStuduino:bitの本体
一 枚 の 基 板 の 表 裏に入 力 装 置 のセンサ 類や、カメラが内蔵されている。スマートフォンでは、画面

CPU、記憶装置、出力装置のLED ディスプレイ

にタッチすることで操作や文字入力ができる。

やブザーが収められている。

●マイコンボードの入力装置
光センサ、温 度センサ などが基板上に取り付けられている。
キーボードが無いので、パソコンでプログラムを作成してマ
イコンボードに転送する。
ワン
ポイント
8

OS

Operating Systemの略で、基本ソフトともよばれる。
パソコンではWindowsやMacOS、
Chrome OSなどが、スマートフォンでは
iOSやAndroidが搭載されている。
応用ソフトは必ず土台となるOSの上にインストールして利用する。

風車をまわしてエネルギーをつくろう

コンピュータは「電子計算機」と呼ばれるように、何をするにも演算、つまり計算して結果を出します。たとえば、写真の画像データを読み込むと、CPU は複雑な計算をして、ディスプレイのどの位置にどのような色をどの様な明るさで表示するかを決めて命令を出します。CPU はたくさんのトランジス
タというスイッチの集合体で、最近のパソコンでは数億から数百億のスイッチが入っています。このス
イッチは、2進数の0と1で表されるオンとオフという2つの信号だけで複雑な計算をしています。CPUの中の複雑な計算回路も、単純な論理回路の組み合わせでできていて、たくさんの命令が実行できるよ
うになっています。
マイコンボードは見かけは違いますが、パソコンと同じようにCPU や記憶装置を積んだ②本体があり、キーボードの代わりに光や温度、動きなどのセンサ（①にあたります）からの情報に従って、LED第て、様々なものの動きをコントロールすることができます。こうして、たとえば暗くなると明かりのつ1

章 第ディスプレイやブザーで情報を表現したり、アクチュエータと呼ばれる外付けのモータなどを接続しく街灯や、障害物があるとブレーキのかかる車などを作ることができるのです。実社会では、さまざま

章 コンピュータの仕組み

1

な問題を解決するためにマイコンボードが広く使われています。
CPU＝頭脳本体＝CPUと記憶装置（主記憶装置・補助記憶装置）
本体を机に例えると、

主記憶装置（メモリ）＝机の上

データ処理作業

引き出しの記憶装置から情報を取り出したり、
し ま っ た り し な が ら、

ソフトウェアCPU は 机 上 で 計 算 し たり命令を出したりして
いる。

文書

音楽
補助記憶装置（HDD、SDDなど）
=引き出し

動画

③出力装置

（制御・演算・記憶装置）
・モニタ●パソコンの出力装置

・スピーカ
・プロジェクタ（外付け）
・プリンタ（外付け）
・LEDディスプレイ

●マイコンボードの
出力装置

ワン
ポイント

・ブザー
・サーボモータ（外付け）
・DCモータ（外付け）

記憶装置

主記憶装置はメインメモリと呼ばれ、CPU から直接高速にデータを読み書きできるが電源を切るとデータも消える。補助記憶装置はストレージと呼ばれ、電源を切っても大容量のデータを保管できるのが特徴。
HDD（ハードディスクドライブ）
やSSD（ソリッドステー
トドライブ）などが使われる。

9

風車をまわしてエネルギーをつくろう

実習

マイコンボードでよくわかる
コンピュータの働き

コンピュータの働きを理解するために、マイコンボードStuduino:bitを使って、データの入力、CPUでの演算や制御、データの出力の流れを体験してみよう。

実習1

サンプルプログラムを動かしてみよう

Studuino:bit には初めからサンプルプログラムが入っていますから、ボタンで選ぶだけで、光センサラ
イトや方位磁石などいろいろな働きをさせることができます。内蔵されている入力装置のセンサ類①~ ③や④エッジコネクタからデータが入ってくると、本体がプログラムに従って処理し、結果を出力装置の⑤

第
章 第

1

1

LEDディスプレイや⑥ブザーに、光や音として出力します。使う入力装置と出力装置の組み合わせでいろ
いろなことができます。
②温度センサ【プログラム3番】①光センサ【プログラム2番】

暗くすると輝く光センサライト

章 コンピュータの仕組み

基板まわりの温度を表示するデジタル温度計

Ａ
ボタン

Ｂ
ボタン

【プログラム7番】

端子を触ると音が変わる導電テスタ【プログラム５番】④エッジコネクタ⑤
LEDディスプレイ

動きや角度で音楽が変わるターンテーブル

♪

⑥ブザー

【プログラム6番】

矢印が北を指し示すデジタル方位磁石【プログラム8番】

傾きで点灯位置が変わる傾斜計③モーションセンサ（ジャイロ・方位・加速度の各センサ)
ワン
ポイント
10

モーションセンサ

モーションセンサは今やスマートフォンやタブレット端末には必ず搭載されるセンサで、端末の向きで画面を切り替えたり、方位磁石として必要な地図を正しい向きに表示したりできる。
Studuino:bitには、
ジャイロ、
方位、
加速度の3つのセンサが内蔵されている。

風車をまわしてエネルギーをつくろう
実習2

ソフトウェアで流れを確認しよう

実習1 の「光センサライト」を例として動きを見てみましょう。Studuino:bit が接続しているときに、付属のスタディーノビットソフトウェアの「センサーボード」メニューで見ると、光センサから本体に送られている情報（測定値）が、随時０から100までの数値で表されています。これをプログラ
ムが、「 もしセンサの数値がある数（たとえば20）より下がったら（暗くなったら）中央のLED9 個を白色で点灯しなさい」とStuduino:bit に命令しています。

入力装置・光センサ

→

本体

→

出力装置・LEDディスプレイ

第

光センサ

章 第

1

実習3

章 コンピュータの仕組み

1

モータをつないでみよう

エ ア コ ン の 中 に は マ イ コ ン ボ ー ド が 使 わ れ て い て、温 度 セ ン サ か ら 室 温 が あ る 一 定 の 温 度 になったという情報が伝わると、冷却器のモータを回して室温を下げることができます。同じように
Studuino:bit に出力装置としてモータを接続すると、入力装置の温度センサの値が一定の温度になった時に、ファンを回すといったモデルを作ることができます。この場合のモータのように、動きを出力するものをアクチュエータと呼びます。アクチュエータとしてモータや油圧機械がコンピュータから制御できることから、交通システムや工作機械、建築などにもマイコンボードが活用されています。
モータ●エアコンの仕組み●エアコンの動作手順

温度センサ

起動スイッチが押される

設定温度を読み取る
モータ

現在の温度を計測する
繰り返す

設定温度に近づくように送風する

コンピュータ●Studuino:bit にモータを接続したモデル※20ぺージの「作例動画2」を参照

ワン
ポイント

アクチュエータ（actuator）

コンピュータが出力した電気信号もしくは入力されたエネルギーを、物理的な運動に変換する仕組みをいう。

11

風車をまわしてエネルギーをつくろう

コラム

Ｐythonを動かしてみよう①〈環境構築〉

世界では今も様々なプログラミング言語で書かれたプログラムが動いています。しかし情報Ⅰの教科書では、あまり実際のテキスト言語には触れていない場合もあります。本書の各章末の本
コラムでは、今後AIやIoTを知るために役立つ代表的なテキスト言語Python（パイソン）の簡単な例をご紹介します。
Pythonのプログラムを作成し実行する環境はいくつかあります。いずれもプログラムを作成
しファイルに保存します。これをエディタ機能といいます。またデータを入力したり、プログラ
ムを実行した結果を表示したりする機能をシェル機能といいます。入力し、即座に解釈・実行する対話型の環境（REPL）もあります。
実行環境の第1は、PythonのWebサイトから、Python3のソフト一式をインストールし、付

1

エディタウィンドウでプログラムを書き、RunメニューからRun moduleを選ぶとシェルウィ

章 第第属するIDLE（統合開発環境）を利用する方法（45ページの7番を参照）。

章 コンピュータの仕組み

1

ンドウに実行結果が表示されます。本書の第6章まで進むためには必要な環境です。

第2に、本書でご紹介するStuduino:bitをMicroPythonで動かすために必要なソフトMu
エディタを使う方法（45ページの3番を参照）。
エディタ機能のほか、メニューからREPLモードを選ぶと、対話型でPythonが動く画面になります。ただしStuduino:bitを接続しておく必要があります。

第3に、ブラウザでPythonを動かすWebサイトを使う方法（45ページの8番を参照）。
ネット利用ならではの制限もありますが、ソフトをインストールする必要がなく、プログラムを
画面上で動かしてみるだけの学習には便利です。また複数行の命令も保存せずにそのまま実行できるのも特徴です。paiza.IOやGoogle Colaboratoryなどがあります。
環境ができたら、ためしにprint(3+4)と打って、実行しましょう。
答えが出ましたか？
ちなみにprint（ ）は（）の中身を表示しなさいという命令です。

18ページに続く
12

地震に強いタワーを建てよう

第2章 デジタル情報
デジタルの語源はギリシャ語の「指」で、指でかぞえられる数の意味に転じたと言われています。
コンピュータや情報通信ネットワークが発達した現代はデジタルの時代とも呼ばれます。デジタル化するとたとえば、これまで紙の文書やそれを綴じたファイルでしていた仕事が電子メールで瞬時にやり取りできたり、データの中身を一瞬で検索したりすることができます。デジタル信号はアナログ信号に比べて、データの量を少なくしたり、途中で情報が失われにくくしたりすることが可能です。

第章 デジタル情報

2

第
章

3

情報Ⅰ「コミュニケーションと情報デザイン」関連
情報Ⅱ「コミュニケーションとコンテンツ」関連
文科省教員研修用教材 第2章学習6・学習8
情報Ⅰ「コミュニケーションと情報デザイン」関連
情報Ⅱ「コミュニケーションとコンテンツ」関連
Digital Arts

ワン
ポイント

文科省教員研修用教材

第2章学習6・学習8

ビットとバイト
デジタルデータの量を表す単位。デジタルデータは2 進数で表されるので、0か1の1桁の情報量を1ビット、8桁分（256 通り＝
256 ビ ッ ト ）の 情 報 量 を1バ イ ト と い う。1バ イ ト の1024 倍 を1KB（ キ ロ バ イ ト ）、1024KB を1MB（ メ ガ バ イ ト ）、さ ら に
1024 倍ごとに1GB（ギガバイト）、1TB（テラバイト）という単位になる。

13

地震に強いタワーを建てよう

要点図解

デジタル情報の仕組み

長さや質量、温度、時間などのように連続して変化する量をアナログ量、一方ものの個数などのように、とびとびの値しか取らないような量をデジタル量と言います。情報もそれぞれの量による情報を、アナロ
グ 情 報、デ ジ タ ル 情 報 と 言 い ま す。デ ジ タ ル 時 計 や●文字のデジタル化

Hello!

・・・・・・ 文字コード
48 65 6c 6c 6f 21 ・
（16進数表示）72,101,108,108,111,33 ・
・
・
・
・
・
・ 文字列データ（10進数）

デジタル温度計の例を見るとよくわかります。コン
ピュータの内部では、電気信号がオンかオフかの2種

01001000,01100101,01101100,01101100,01101111,00100001
・
・
・
・
・
・
・ 文字列データ（2進数）

類の状態の組み合わせ（2 進数）によるデジタル情報
で、あらゆる情報を処理します。文字データ（テキスト
データとも言います）は、文字ごとに文字コードとい

Hello!

第う2 進数の数値が割り当てられており、その数値で文章 デジタル情報

2

字を表します。

半加算回路●２進数と半加算回路
コンピュータのCPUの中には論理回路というスイッチを組み合わせた回路が無数に入っている。そこでは１か０かの２種類Ａの信号を、2進数としてさまざまな計算を

第章

3

右図は、半加算回路といって、３種類の論
理回路の組み合わせで、2 進数の加算をし旗が上がっている時は自分の旗は下、下がっている時は上。

1

する。

ていく例を、旗の上げ下ろしで説明したも

1

S

和が

AND 回路1

ＡとＢのどちらか1つでも旗が上ならば自分の旗も上。

多量の情報を処理することができる。

データをデジタルに変換（デジタル化）しNOT 回路OR 回路

ジスタをたくさん集積することで、複雑でうためには、音声や画像などのアナログの

0

1

1

0

続すること、つまりスイッチとなるトラン

そしてコンピュータがあらゆる情報を扱

桁上がりが

B

数が多くなるが、このような回路を多数接C

0AND 回路の で あ る。2進 数 は10進 数 に 比 べ て、桁 の

1＋0 =0 1（2進数）

AとBが両方上のときだけ自分の旗は上。でなければ下。

１＋０が入力された場合

1＋1 = 1 0（2進数）

１＋1が入力された場合

Ａ

なければならない。

C

1

1

桁上がりが
AND 回路

B
1

1
OR 回路

ワン
ポイント
14

論理回路

1

0
NOT 回路0
AND 回路

S

和が0AND回路（論理積回路、入力がすべて1の時だけ１を出力）、NOT回路（論理否定回路、入力が1のとき出力0、入力が0のとき出力1）、OR回路（論理和回路、入力がどれかひとつが1のとき出力1）などがあり、この組み合わせで2進数の四則演算ができる。

地震に強いタワーを建てよう

音声や画像のアナログ情報は、標本化（サンプリング）→ 量子化 → 符号化（コード化）の手順によってデジタル化されます。カラーの画像はR、G、B の光の3原色ごとに分けて変換されます。画像をデジタ
ル化する時の標本のマス目を画素（ピクセル）といいます。画像の細かさを解像度といい、縦の画素数
×横の画素数で表します。
●音声のデジタル化

電圧

時間

第

映画やテレビの画面のように動いてみえる画像を動画と呼び、1枚1枚の静止画が連続することに章 デジタル情報

2より動いているように見えます。動画を構成するひとつひとつの画像はフレームと呼ばれます。元のアナログ情報に近づければ近づけるほどデジタル情報のデータ量は大きくなります。デジタル情報のデータの内容をできるだけ保ちながらデータの量を小さくすることを圧縮、元に戻すことを展開、データが圧縮された度合を圧縮率といいます。
●画像のデジタル化

Ｒ情報●動画のデジタル化

10 10 10 0 10 10 10
10 5 5 5 5 5 10

10 5 0 0 0 5 10

10 5 5 5 5 5 10

10 10 10 0 10 10 10

元画像

標本化

量子化

10 10 10 10 10 10 10
10 5 5 5 5 5 10

10 5 0 0 0 5 10
0 5 0 10 0 5 0

10 5 0 0 0 5 10
10 5 5 5 5 5 10
10 10 10 10 10 10 10

元画像

標本化

量子化

Ｂ情報

3

章

Ｇ情報

第

10 5 0 0 0 5 10

符号化して合成する

10 5 0 10 0 5 10

10 10 10 10 10 10 0

10 5 5 5 5 5 10

10 5 0 0 0 5 10
10 5 0 10 0 5 10

10 5 0 0 0 5 10
10 5 5 5 5 5 10

0 10 10 10 10 10 10

元画像

標本化

量子化

こうしてデジタル化された情報は、パソコンを通してモニタに表示されたり、プリンタで印刷されたり、他の人にデータとして送られたりします。モニタでは、画像や動画はもちろん、文字情報もパソ
コンで指定した大きさや書体（フォントといいます）で、画像として表示されます。モニタの表示能力も解像度で表されます。
ワン
ポイント

標本化

音声などのアナログ値の信号は、縦軸を音の振るえの値（電圧）として、横軸（時間）を一定の時間で区切り、この時間ごとの電圧を取り出す。1秒間に標本化する回数を標本化周波数といい、その数が大きいほどもとの信号に近くなるが、データは大きくなる。

15

地震に強いタワーを建てよう

実習 マイコンボードでよくわかるデジタル情報
ここではまずデジタルの基本となる2進数について学ぶとともに、デジタル情報の出力として、
5×5のLEDを制御して、文字情報の表示、加法混合による色の表示、アイコンを使った簡単なアニメの制作について紹介します。

実習1

10進数を2進数に変換
10進数を2進数に私たちが普段使っている10進数変換する計算では、0から9まで数えたあとは10、11、12 と桁が一つ上がりますが、2進数では0、1と数えたあとは10、11、100、101、110、111、1000と桁がどんどん増えていきます。
第プ ロ グ ラ ム を 使 っ て10 進 数 を章 デジタル情報

22 進数に変換してみましょう。変換
したい10 進数を聞かれたら、た と
え ば26を 入 れ る と、2 進数に変換され「11010」を表示します。

3

文字情報にはあらかじめ文字コードが決まっていて、入力

章

第

実習2

文字や文字列をLEDディスプレイに表示しようされたとおりにディスプレイに表示できます。プログラムで指定した文字をStuduino:bitのLEDディスプレイに表示しま
しょう。また「welcome」
や「Happy Birthday」のように長い文字列の場合は、流れるようにスクロールして全体を表示することもできます。
from pystubit.board import display
display.scroll('Welcome')

Welcome

ワン
ポイント
16

文字コード

最も基本的な文字コードに英語圏のASCIIコード、アジア言語も含めたUnicodeがある。また日本語文字コードにはEUC-JP、JIS、Shift_JISなどがあって、異なる文字コード間では正しく表示できないいわゆる「文字化け」が起こることがある。

地震に強いタワーを建てよう
実習3

色を表現しよう（加法混色）

スタディーノビットソフトウェアの画面上にある光の三原色の赤、緑、青のスライダ

作例動画1を動かすとStuduino:bit上の縦5 ×横5 ( 計25 個) のフルカラーLEDディスプレイにUSB ケーブルを通して赤、緑、青の輝度データが送られ、様々な色を表現することができます。この実験は、加法混色の仕組みを理解させる教材に利用できます。
https://youtu.be/
VHnHqlICjYw

パソコン

USBケーブル
フルカラー
LED

スライダー
赤

緑

0

赤

青

0

緑

0

青
第

Studuino:bit

章 デジタル情報

2

加法混色の実験

実習4

アイコンを作り、アニメーションのように動かしてみよう

ディスプレイ上にアイコンを描いてみましょう。25個のLED ひとつひとつの座標に色を指定してアイコンを描きます。

第次にもうひとつ、少しだけ動かしたアイコンを作り、2つのアイコンを交互に表示させると、たとえばカメが歩いているように見えます。これがアニメーションの原理です。パソコンのモニタ画面には、色を表

章3示する100 万個以上の素子があり、それによって動画やアニメを表現することができるのです。
●脚を動かすカメ●歩くイヌfrom pystubit.board import display,

Image

image1 = Image('00000:00100:11001:11110:01001')
image2 = Image('00000:01000:11001:11110:00110')
image1.set_base_color((31,

31,

0))

image2.set_base_color((31,

31,

0))

while True:
display.show(image1)
display.show(image2)

ワン
ポイント

00000:

00000:

00100:

01000:

11001:

11001:

11110:

11110:

01001:

00110:

加法混色と減法混色

加法混色はRGBの赤、緑、青。減法混色はCMYKのシアン、マゼンダ、イエロー、それぞれ3色を混ぜて色を表現する。RGBは混ぜると白に近づき、CMYKは黒に近づく。

17

地震に強いタワーを建てよう

コラム

Ｐythonを動かしてみよう②〈変数〉

Pythonのプログラムが書ける環境ができたら、次に簡単な計算をしてみましょう。
計算には、足し算+、引き算-、掛け算*、べき乗**、割り算/ などの記号を使います。これらを演算子といいます。足し算に対して掛け算が優先とか、（）の中の計算が優先というのは数学の計算と同じです。図1のようにエディタ画面に打ち込んで、消費税の計算をしてみます。実行すると３つの果物の価格を決めて、それぞれに消費税率をかけた値がシェルウィンドウに表示されます。
図2のように合計や文字列の表示の違いも試してみましょう。
図2 図1の5行目を変える

図1
1
2
3
4
5
第

tax=0.1
ringo=120*(1+tax)
mikan=150*(1+tax)
banana=250*(1+tax)
print(ringo,mikan,banana)

5 print(ringo ＋mikan ＋banana)【実行( R u n → R u n M o d u l e ) 】【実行(Run→Run Module)】

132. 0章 デジタル情報

2165. 0275. 0【実行(Run→Run Module)】
572.0
5 print("ringo ,""mikan ,""banana")
ringo,mikan,banana

Python のコードの基本①● 1行ごとにコードを書く● 任意の「箱＝変数」に数値を入れる● コメントを入れる時は#の後に

1
2
3

a= 1

＃a を1 とする

b= 2

＃b を2 とする

print(a＋b） ＃a+b を表示する【実行(Run→Run Module)】
3

任意の文字列tax は変数と呼び、はじめに10％つまり0.1であると宣言することで、後はこの変数を使って計算することができます。またprintというのは結果を表示しなさいという関数です。ちなみにprint(apple,orange,banana) の各文字を「’ ’」または「“ ”」で囲んで実行すると、計算結果でなく文字列そのものを表示します（変数については23 ページも参照）。

第では次に健康の指数とされるBMIを計算してみましょう。BMI は体重（㎏）を身長（m）の2 乗

章

3で割ったものなので、図3のようにして、変数に自分の数値をいれておけば計算できます。これをもとに図4のように打ち込んで実行してみましょう。float とinput で、コンピュータが身長、体重を聞いてくれるようになります。またformatと1fで小数点以下第1位までを表示させます。
図3
1
2
3
4

shincho=167/100
taiju=63.5
BMI=taiju/shincho*shincho
print(BMI)【実行( R u n → R u n M o d u l e ) 】>>> 22.76883359030442

図4
1
2
3
4

shincho=float(input("身長は何cmですか "))/100
taiju=float(input("体重は何kgですか "))BMI=taiju/(shincho**2)
print('あなたのBMIは、{:.1f}です。
'.format(BMI))【実行(Run→Run Module)】>>> 身長は何cmですか 167
体重は何kgですか 63.5
　　　　 あなたのBMIは、 22.8です。

さらに出た数字で肥満かどうかを判定するなどの発展が考えられますね。

24ページに続く
18

第3章 プログラミング
IT技術は日々進化していて、AIやロボット、仮想通貨などには新しいモデルが次々と登場してきています。これからますますIT技術の発展によって社会が変化していく中で、プログラミングについて知ることは、技術者を目指さない人にとっても重要になります。プログラミングは機械を手順よく動かすためのものですが、日常の仕事を早く正確に片づけるための考え方でもあるからです。2020年
から小学校でもプログラミング教育が始まっています。現在の高校生にはまだ未経験の生徒も多いと思われますが、「習うより慣れよ」です。是非プログラミングを体験してみてください。

第第章 プログラミング

3

章

2

情報Ⅰ「コンピュータとプログラミング」関連
文科省教員研修用教材 第3章学習11・学習12
Programming
Technology
ワン
ポイント

プログラミング言語と機械語
プログラミングとは人間が人間に分かる言葉でコンピュータへの命令や手順を設計し作成することだが、コンピュータは機械語という「言葉」しか理解できない。このため人間が書いたプログラミング言語は機械語に変換（コンパイルという）されてはじめてコンピュータに伝わる。

19

きれいな水ってどんな水？

要点図解

プログラミングの仕組み

ある問題や課題を解決するための計算や処理の手段をアルゴリズムといいます。そのアルゴリズム
を人にわかりやすく伝えるのがフローチャートやアクティビティ図で、コンピュータが処理できるように記述するのがプログラミングと言っていいでしょう。プログラミングのために考えられた専用言語がプログラミング言語で、それぞれの言語のルールで書かれた命令がソースコード（コード）です。
プログラムは「順次処理」「反復処理」「条件分岐処理」の3 つの要素が基本になって組まれます。ここでは、入力装置に温度センサ、出力装置にLED をマイコンボードに接続して、実物の動きをプログラムで制御する様子を見てみましょう。

作例

温度によって、点灯するLEDを切り換える

Studuino:bitに温度センサと2 色のLEDを接続して、室温の上昇に従い、30度以上

作例動画2

35度未満で黄色のLED、35度以上で赤のLEDを点灯させます。入力装置として温度
第センサ、出力装置として２色のLEDを本体に接続します。実際の動作は右のQRコー

3

章 プログラミング

ドから映像でも確認できます。
パソコン上のMuエディタを使ってリアルタイムに計測と制御の様子を確認した
り、作成したプログラムを本体の中の記憶装置に送り、本体のボタンを押してプログ

https://youtu.be/
XBnDEUUzKbU

テキスト

ラムが動くようにします。ここではテキスト言語を使いますが、スタディーノビッ
トソフトウェアを使えば、ビジュアル言語でもプログラミング可能です（詳しいセンサやLEDの接続の仕方やMuエディタの使い方はテキストを 参 照 し て く だ さ い ）。
次ページでは、手順を追ってプログラムの働きを見ていきます。

LED0

LED1

室温＜ 30℃

条件

消灯

消灯

30℃≦室温 <35℃

点灯

消灯

室温≧ 35℃

消灯

点灯

LED0

電池ボックス

LED1

抵抗

https://www.
artec-kk.co.jp/
dl/98072/
data/44484_
Python.pdf

Studuino:bit

温度センサ
LED・温度センサ・抵抗器

ワン
ポイント
20

Scratch米国マサチューセッツ工科大学メディアラボで開発されたビジュアルプログラミング言語。子供向けに開発されたが広い利用者層を持つ。スタディーノビットソフトウェアはScratch3.0をベースとして、さらにStuduino:bitを制御する独自のブロックが追加されている。

①温度センサのデータを数値に変えるプログラム
接続した温度センサーから送られてくるのはアナログの 数 値 な の で、こ れ を デ ジ タ ル の 温 度 の 数 値 に 変 換 し て、from pystubit.board import pin2,

display

while True:val =int(330 pin2.read_analog()/1023 - 60)
display.scroll(str(val)+'C' )print((val,))Studuino:bitのLEDディスプレイに表示させます。最後の1行を加えるとMuエディタに温度とグラフが表示されます。
1
2
3
4
5

②温度センサからの数値でLEDを点灯するプログラム
次にLEDを1個接続して、温度が30度を越えたら点灯するようにします。もし温度(val)が30 度より大きければ、pin番号０に接続したLEDを点灯する、でなければ点灯しないという条件分岐処理になっています。センサから読み込んだデータを変数valとし、ifとelseで条件を分けています（24 ページ参照）。
1

5

3

4
6
７
８

第

③温度センサからの数値で２つのLEDを切り替えるプログラム

2

番号０とpin 番号1に接続したLED を点灯または消灯するという条件分岐処理をさせます。

ifとelseとelifで条件を分けています（24ページ参照）。

章

さらにLED を２個接続して、温度によって切り替えるようにします。温度(val)が30度未満、30度
以上35度未満、35度以上の３つの条件で、pin

1
2
3
4
5
6
　７
８
９
１０
１１
１２
13

●ビジュアル言語とテキスト言語
Studuino:bit では、２つのアプリでビジュアル言語とテキスト言語の両方のプログラミングが可能です。ブロック型のアイコンで簡単にプログラムを作成できるScratch
では、初心者でも扱いやすい反面、複雑な処理の必要なゲームやシステムの開発には向いていません。
しかしいず
れの言語も３つの要素が基本になるのは同じです。
3種の条件をそれぞれの名前の関数にまとめています。
ワンポイント

Python

1991年にオランダで誕生したテキスト言語。特徴として、読みやすい簡潔なソースコード（プログラムに書かれた文字列のこと）を書くことができるため、初心者にも人気。数値演算が得意で、近年需要が高まっているデータ分析やAI（人工知能）のプログラム開発に向いている。

章 プログラミング

3

第

2

21

きれいな水ってどんな水？

マイコンボードでよくわかる
プログラミングの基礎

実習

プログラムの基本の「順次処理」「 反復処理」「 条件分岐処理」のわかりやすい例として、自動で定期
的に色の変わる信号機のプログラミングを紹介します。
またプログラムが複雑になってくると、同じ数値をいろいろなところで呼び出したり、なんの数値だったかわからなくなったりします。そのために数値などのデータを入れて名前を付けておき、後でいつでも呼び出せる変数やリスト（配列）という概念があります。
さらに1セットのプログラムを何度も使う場合には、ひとつの処理（関数）にまとめてしまうなど、
プログラムを効率的に作成する仕組みが各プログラミング言語にあります。
ここでは変数・リスト（配列）を使ったプログラミングの例として、Studuino:bitのボタンを押して数を数えるカウンタのプログラムを紹介します。なおテキスト言語Pythonでの変数や関数などについても、各章末のコラムでも簡単な例を紹介しています。
第3章 プログラミング

実習1

3つの処理を信号機の手順で考えてみよう

信号機にみたてたLEDディスプレイに、青信号 → 点滅 →ビジュアル版テキスト「ベーシック/アドバンス」

Python版テキスト「Python学習キット」

https://www.artec-kk.co.
jp/special/school_progra
mming/02juniorhigh.php

https://www.artec-kk.co.
jp/special/school_progra
mming/03high.php

赤信号というプログラミング手順どおりに実行させるのが「順次処理」、それを何度も繰り返しなさいという命令が「反復処理」です。

はじめ

さらに、実際にある信号機のように普段は赤信

赤信号を点灯
ボタンが
押された？

No

Yes
5 秒待つ
赤信号を消灯青信号を点灯
5 秒待つ
繰り返し

5回

青信号を点灯
0. ５秒待つ号でも、ボタンを押したときだけ青信号にする場
合は、「 もしボタンが押されたら」という条件を使った「条件分岐処理」になります。
順次処理→
赤信号を点灯↓条件分岐処理
もし
Aボタンが
押されたら

5秒間待って赤信号を消灯青信号を5秒点灯

青信号を5秒点灯
点滅周期（1秒）

青信号を消灯
0. ５秒待つ
繰り返し戻る

ずっと繰り返し

↑反復処理

ワン
ポイント
22

変数と配列

プログラミングで、変数とは文字列や数字などの値を格納する箱のようなもの。
また複数個のデータを順番に並べた構造を配列と呼び、変数の箱に対して、複数のデータを格納する棚にたとえられることもある。

実習2

変数でカウントダウン・カウントアップ

ボタンを押すたびに数字が表示される簡単なプログラムで、変数の使い方を見てみましょう。変数は「文字列や数字などを格納するための名前の付いた箱」といわれます。
①「a」という名前をつけた変数を作成し「a」に初期値0を代入します。
② のようにすると、Aボタンを押すたびに「a」の値は指定どおり変化します。
③では「a」の数値が9になったら０に戻す条件分岐になります。
このようにあらかじめ宣言した変数を使うことで、条件分岐の条件式の指定や反復の回収などの指定が簡単にできるようになります。
①変数の宣言②変数の参照③条件分岐処理変数

第第章 プログラミング

3

章

2

実習3

変数で長いプログラムもシンプルにボタンを押すたびにLEDを1個ずつ点灯させるプログラ①変数がないと②変数を使うとムを考えます。Studuino:bit のLED ディスプレイは縦5 個、横5個の番号がふられているので、左上の1個はX:0,Y:0で指定します。①のように25 個の全てを指定すると大変な長さのプログラムになります。
そ こ で、た と え ば「LEDX」「LEDY」と い う 変 数 を 宣 言 して、LEDX,LEDYの値が変化するようにプログラムを作成す
れば、とても短いプログラムで同じことができます。
このように、変数に代入した値を利用することを、変数の「参照」といいます。

それぞれのLED は以下のように、X:0 ～4,Y:0 ～4 で指定します
（例: 一番左上のLEDX=0,LEDY=0）。

赤信号を5秒点灯

ワン
ポイント

関数

プログラミングで、ある与えられたデータに、ある決まった処理を行い、その結果を返す仕組み。
定められた処理を繰り返し利用することができる。
一連の処理をひとまとめの関数にして名前を付けることもでき、あらかじめ用意されたものもある。

23きれいな水ってどんな水？

コラム

Ｐythonを動かしてみよう③〈 関数 〉

四則演算の次は、関数を利用した簡単なゲームをつくりましょう。ここではrandomというモジュール（関数をまとめたもの）の関数choice()を利用して「おみくじ」を作ります(図1）。
randomは、importという命令で初めに読み込んでおきます。そして運勢のリストをchoice()に渡すと、文字通りランダムにひとつ取り出してくれます。

1
2
3
4

図1

図2

import r andomu ran ai=[ " 大 吉 ", " 中 吉 " , " 小 吉 ", " 凶 "]omiku ji = r andom . choi ce( ur anai )prin t(om i k uj i )ライブラリ（標準ライブラリ・外部ライブラリ）パッケージ【実行 ( R u n → R u n M o d u l e ) 】

モジュール
関数

中吉

第

このようにPythonには、関数やモジュールがひとまとめになったライブラリという考え方が章 プログラミング

3あります。プログラムを全て自分で書くのではなく、関数やモジュールを利用して簡単に作ることができます。randomは標準モジュールといって初めからPythonに組み込まれています。
randomにはrandintという関数があり、指定した数字の範囲の中で、さいころのように毎回ランダムな整数を生成します。これを使って「条件分岐処理」をしてみましょう（図3）。
「 条件分
岐処理」はプログラミングの基本で、randint 関数の数値を、温度センサからの値に置き換えたのが20 ページからのプログラムといえます。
図3
1
2
3
4
５
6

import r andom
toku te n = r andom . r andi nt( 0 , 1 0 0 )if toku ten>=5 0 :# 得点が 50 以上であればprin t( f" あ な た は {tok uten} 点 で す 。 お め で と う ！ " )e lse :# そうでなければprin t( f" あ な た は {tok uten} 点 で す 。 残 念 ！ " )

図4
1
2
3
4
５
6
７

toku te n= float( i nput( " テストの 結果は何 点でしたか ? " ))if toku te n= = 1 0 0 :# 得点が 100 と等しければprin t ( " 評 価 は A で す ！ お め で と う ！ " )e lif 99> =tok uten>= 6 5 :# 得点が65点以上99点以下ならばprin t ( " 評 価 は B で す ！ 次 は 満 点 を 目 指 そ う ！ " )e lse :# そうでなければprin t ( " 評 価 は C で す ！ 頑 張 れ ！ " )【実行(Run→Run Module)】>>>　　あなたは15 点です。
残念！

Python のコードの基本②● 字下げ（インデント）で実行したいまとまりを指定する（if文など、「：」で終わった次の行は字下げしないとエラーとなる）。
●「条件分岐処理」では、（もし~ifならば）と、else（そ う で な け れ ば ）に 加 え て、elfを使って、いくつでも条件を増やせます。

【実行(Run→Run Module)】
テストの結果は何点でしたか ?

75>>>　　評価はB です！次は満点を目指そう！

30ページに続く
24「小さなSTEAM」活用アイデア集

第4章 ネットワークの仕組み
1990 年代、それまではデスクトップのコンピュータ同士のネットワークだったインターネットに、携帯電話やスマートフォンが接続され、手軽に持ち運べて「いつでもどこからでも」情報を検索したり、遠くの人に写真入りのメールを送ったりできるようになりました。そればかりか、自分のいる位
置の地図を表示したり、テレビのようにドラマや音楽を楽しんだり、切符の代わりに改札口でタッチするだけでバスや電車に乗ったり、クレジットカードの代わりにお店から商品を購入したりと、今やこうした情報ネットワークの仕組みが私たちの生活に欠かせないものになっています。

第４章

ネットワークの仕組み

第章

4

情報Ⅰ「情報通信ネットワークとデータの活用」関連
情報Ⅱ「情報システムとプログラミング」関連
文科省教員研修用教材

ワン
ポイント

第4章学習18・学習19・学習20

NetworkEngineering

インターネット
世界中の情報通信機器を接続した地球規模の情報ネットワーク。学校や家庭、企業などはそれぞれインターネット・サービス・プロ
バイダ（ISP）を介してインターネットに接続する。

25

「小さなSTEAM」活用アイデア集

要点図解

ネットワークの仕組み

コンピュータ同士が通信をして情報をやり取りする仕組みをコンピュータネットワークといいます。
その中でも学校や家庭など限られた範囲の小規模ネットワークをLAN、いくつものLAN 同士をつないだ
大規模ネットワークをWAN といいます。インターネットは、世界中のコンピュータが海底ケーブルなど
でつながったWANのひとつです。
学校や家庭のLANからインターネットにつなぐ中継基地をするのがルータです。ルータからハブを通してケーブルでつながっているものを有線LAN、ルータと電波でつながっているのが無線LANです。ス
マートフォンは通信会社の基地局と電波でつながりますが、家庭などのルータにWi-Fi接続するときは、
無線LAN接続になります。
インターネットで世界中のコンピュータの端末が通信できるために以下のような仕組みや取り決めがあります。通信の手順や取り決め（通信プロトコル）が TCP／IPという方法に決まっていること、
またインターネットの接続する世界中の端末には、それぞれIPアドレスというネット上の「住所」が第４章

ふられること、そして通信する時に情報をパケットという小さな単位に分割して、それぞれにヘッダ

ネットワークの仕組み（送り状）をつけて小口に送ることで、ひとつの通信が回線を独占しないようにするパケット通信という方法を使っていることです。

ISP(インターネット・
サービスプロバイダ )LAN とインターネット
図1

WAN

図2

●LANとWAN

それぞれ「ローカル・エリア・ネットワーク
Local Area Network」と「ワイド・エリア・

図1

LAN

一般家庭

ネットワークWide Area Network」の略。

一般家庭

図1が無線LAN接続。図2が有線LAN接続。

一般家庭
企業

図3
●IPアドレス（Internet Protocol address）と は、

4

トワーク上 の 機 器 に 割り当 てら れる
「住

章

第

インターネット・プロトコル(IP) において、通信の相手先を識別するための番号でネッ

図2192.168.0.2
PC所」。上の方の数字はISP に割り当てられ、

ISPへ

LAN の 中ではル ータが 一 番 最 後 の 番 号
を各端末に割り当てる。

PC●TCP/IP

インターネットなどで標準的に用いられる
通信プロトコル（通信手順）
で、TCP（Transmission Control Protocol）とIP（Internet
Protocol）
を組み合わせたもの。

ワン
ポイント
26

192.168.0.3

WWW

192.168.0.4
PC

ハブ

ルータ

192.168.0.1
図3World Wide Webの略。Webはクモの巣の意味である。世界中のサイト（Webサーバ）をハイパーテキスト（右ページ参照）でつなぐシステムを指す。
「インターネット」「サイト」とほぼ同じ意味で使われることも多い。

ーンタイ「小さなSTEAM」活用アイデア集

インターネット上ではさまざまな情報サービスがサーバという端末によって提供されています。
インターネット上で不特定多数に情報を発信するサービスをするのが、Web サーバ（WWW サーバ）
で、HTML という言語で書かれたいわゆるWebの情報があります。さらにその先で動画サーバやデータ
ベースサーバなどにつながって、動画を見たり、買い物をしたりすることができます。Web ページを見る
アプリをブラウザ、見るために打ち込むWebページの「住所」
をURL と言います。
また電子メールのやり取りをするソフトをメールソフトまたはメーラ、メールの送信元や宛先を電子
メールアドレスといいます。電子メールアドレスの＠マークの後ろがメールサーバーのアドレスで、メールを送ると自分のメールサーバから、送る相手のメールサーバ経由で相手にメールが送られます。
URLのドメイン名や電子メールのアドレスは、分かりやすいように普通の文字列になっていますが、実際は２進数で表わされるIPアドレスがふられていて、DNS（ドメインネームサーバ）という仕組みがそれぞれを変換しています。
●Webサーバ

URL①プロトコル③ホスト名⑤セカンドレベルドメイン⑥サードレベルドメイン ④トップレベルドメイン

図5⑧ファイル名https://www.artec-kk.co.jp/blog/marketing

図4

②スキーム

ドメイン名
インターネット

ーネッ
ト

Ｂさんに
メールを
送る

Ａさんの
メールサーバ●URLとドメイン名
Uniform Resource Locator の略で主に⑦ディレクトリ

インターネット上のリソース（データやサービス）の所在（インターネット上の住所）を特図6定するための表示方法。○○.co.jp のように組織などを表す部分がドメイン名。

メールを
取りに行く

メールの宛先を探して転送するＡさんのメールサーバネットワークの仕組み

図5

第４章

図4

Ａさんからの
メールを
受け取る

図6
●メールサーバ

ネットワーク接続を通してメールの送受信を行うサーバ。メールサーバは送信する役
割のSMTPサーバと、受信する役割のPOP

図7

サーバからなる。

Internet of Things

図7
●IoT

第

「Internet of Things」の 略 で モノの イン
ターネットと訳される。様々なモノがイン
ターネットに接続され、情報交換により相互章4に制御する仕組み。

インターネットに接続できるのはパソコンやサーバだけではありません。監視カメラや温度計、エアコ
ンや冷蔵庫、自動車など様々な機器の中にマイコンボードが組み込まれて、IP アドレスがふられています。それによって遠く離れたところのセンサやカメラから情報を取得したり、遠隔から道具や機械の動きをコントロールしたり、機器同士が通信したりできます。これが、いわゆるIoT（アイオーティ：モノのイン
ターネット）
で、空間的な距離の制約を超えた問題解決が可能になります。
ワン
ポイント

HTML

HTML（ HyperText Markup Language）は、Webサイトの情報を記述する言語。ハイパーテキストとは、文書のほか、画像、図表、音声、動画などを含む複数の文書を相互に関連付け、結び付ける仕組み。

27

「小さなSTEAM」活用アイデア集

マイコンボードでよくわかる
ネットワークの基礎

実習

Studuino:bitは、無線ネットワーク機能として、Wi-FiとBluetooth の機能を内蔵しています。これによってインターネットへの接続は勿論、Studuino:bit 同士での通信や、校内のネットワークの利用が難しい場合でも学習できるように設計されています。ここではネットワークでの基本的な活用法をみてみましょう。

実習1

インターネットに接続しよう

Studuino:bitをインターネットに接続するためには、アクセスポイント機能を持った無線ルータと接続
するほかに、
インターネットにつながったパソコンやスマートフォンと直接無線で接続できる場合があります。Windowsのパソコンでは「モバイルホットスポット」、MacOSでは「インターネット共有」
という機能
第４章

です。ただし使用するための条件を満たさないこともあります。

ネットワークの仕組み

Wi-Fi 接続確認

モバイルホットスポット

インターネット

Bluetooth
Wi-Fi 接続

実習2

ビジュアル言語でネットワーク接続

スタディーノビットソフトウェアには、Wi-Fi接続をは

4

外部のWeb サイトからデータを読み込んだり、その章

第じめ、ネットワーク対応のブロックが充実。ネット上の

無線

IoT

データを生かしたプログラミングが簡単にできます。

import network
wifi=network.WLAN(network.STA_IF)
wifi.active("up")aps=wifi.scan() # アクセスポイントの一覧を取得
for ap in aps: # アクセスポイントの情報を表示
print(ap)

ワン
ポイント
28

Bluetooth（ブルートゥース）

1対1での通信を想定してつくられた無線技術。通信速度・通信距離ともにWi-Fiと比べて弱いが消費電力が少なく、キーボードやマウス、イヤホンといった長時間使用する機器に使用される。

「小さなSTEAM」活用アイデア集
実習3

LANがなくてもStuduino:bitでネットワークが構築できる

複数のパソコンに、それぞれStuduino:bitを接続し、内蔵のネットワーク機能を使うことで、LAN がな
い環境でもWi-Fi 接続が可能になります。たとえば1台のパソコンをサーバ（サービスを提供するパソコン）とし、ほかのパソコンをクライアント（サービスを受けるパソコン）として、メッセージのやり取りをした
り、1台のセンサの情報を、離れた場所のもう1台のパソコンに伝えたりすることが簡単にできます。
チャットシステムの構築

防犯システムの構築

学習内容

学習内容

ネットワークの仕組み

実習4

第４章

チャットシステムを応用して、センサが反応したら離れた場所の警報器を鳴らすシステ
ムを構築し、IoT について学習する。

デバイス間通信を用いてPC 同士を接続し、PC間でメッ
セージのやり取りをするプログラムを作成する。

教室内LANにStuduino:bitを接続しよう

サーバやクライアントのスマートフォンとStuduino:bitをつなぐ場合は、パソコン

テキスト「IoT学習キット」のつながったハブに無線アクセスポイントを通して接続します。

ルータ

ハブ

教室内LAN や家庭内LAN をインターネッ
トに接続する装置。
ルータ(既存）https://www.artec-kk.co.
jp/special/school_progra
mming/03high.php

有線でパソコンやネットワーク機器を接続する装置。

第

ハブ

章

4

PC1(サーバ）

有線

Wi-Fi

Studuino:bit

ワン
ポイント

PC2(クライアント）

無線LANアクセスポイント(Wi-Fiルータ）

無線LAN
アクセスポイント

無線でスマートフォン、
ノートパソコン、ゲーム機などの複数の無線LAN（Wi-Fi）機能付きの端末を、校内や家庭内の有線LANに接続するための装置。

Wi-Fi (ワイファイ)

Wireless Fidelityの略。無線通信技術のひとつで、多くの端末が同時に円滑に接続できるように国際規格IEEE802.11によって定められた統一規格。

29

「小さなSTEAM」活用アイデア集

コラム

Ｐythonを動かしてみよう④〈WebAPI〉

インターネットに接続すると、Web上で提供されている機能を自分のプログラムから利用することができます。このしくみをWeb API(Application Programming Interface)といって、たとえば天気予報のデータや時報、地図、郵便番号の検索などを利用することができます。
WebAPIを 使 用 す る た め に は、requests、json、pandasな ど の 外 部 ラ イ ブ ラ リ や 外 部 モ
ジュールが必要になりますので、事前にインストールしておく必要があります(42ページ参照）。では郵便番号、標高、天気予報についてプログラム例を実行してみましょう。
●郵便番号から住所を調べる例（Zipcloud 郵便番号検索API）
1 import pandas as pd
2 json_url="http://zipcloud.ibsnet.co.jp/api/search?zipcode=
5810066"
3 df=pd.read_json(json_url)
4 print(df.results[0])【実行(R u n → R u n M o d u l e ) 】

第４章{'address1': '大阪府', 'address2': '八尾市', 'address3': '北亀井町', 'kana1':'ｵｵｻｶﾌ', 'kana2': 'ﾔｵｼ', 'kana3': 'ｷﾀｶﾒｲﾁｮｳ', 'prefcode': '27', 'zipcode':'5810066'}

このような外部データの呼び込
みには様々な応用が考えられます。たとえば天気予報のデータで、
降雨確率50％以上になったら、傘を持っていくように警告したり、
マイコンボードのディスプレイに

ネットワークの仕組み

予報を表すアイコンを表示したり●緯度経度から標高を調べる例（国土地理院）
import requests
import jsonlat = 35.36063 # 富士山頂三角点の緯度（10 進数表示）
lon = 138.72737 # 富士山頂三角点の経度（同）url = "http://cyberjapandata2.gsi.go.jp/general/dem/scripts/
getelevation.php" \"?lon=%s&lat=%s&outtype=%s" %(lon,lat, "JSON")
6 resp = requests.get(url)
7 data = resp.json()
8 print(" 標高＝ ",data["elevation"],"m")
1
2
3
4
5

【実行(R u n → R u n M o d u l e ) 】

するということも可能です。
便 利 なWebAPIで す が、デ ー タの使用に関して必ず条件があります。またデータを提供するホーム
ページ上のサービスは、常に変化しています。アドレスやページ内
容も変更があることにご注意くだ

標高＝ 3771.2

さい。

●今日の天気予報の例（世界気象機関WMO）

第章

4

1 import requests
2 url = "https://worldweather.wmo.int/en/json/183_en.json"
3 #183 は 東 京 の 都 市 コ ー ド , 札 幌 ("Sapporo"）181, 仙 台 ("Sendai"）182, 名 古 屋("Nagoya")355, 大阪 ("Osaka")184, 福岡 ("Fukuoka")185. 那覇 ("Naha"）186
4 res = requests.get(url)
5 data = res.json()
6 name = data["city"]["cityName"] # 都市名
７ date = data["city"]["forecast"]["forecastDay"][0]["forecastDate"] # 予報日
８ weather = data["city"]["forecast"]["forecastDay"][0]["weather"] # 気象
９ max_temp = data["city"]["forecast"]["forecastDay"][0]["maxTemp"] # 最高気温
10 min_temp = data["city"]["forecast"]["forecastDay"][0]["minTemp"] # 最低気温
11 yoho = "city:{}\ndate:{}\nweather:{}\nmax_temp:{}\nmin_temp:{}" # 表示の内容
12 yoho = yoho.format(name, date, weather, max_temp, min_temp)
13 print(yoho)【実行(Run → R u n M o d u l e ) 】

city:Tokyo
date:2022-09-18
weather:Rain
max_temp:29
min_temp:24

36ページに続く
30

「小さなSTEAM」活用アイデア集

第5章 データの活用
新しい情報I・Ⅱの学習内容の中でも、プログラミングと並んで重要視されるのがデータの活用分野
いわゆるデータサイエンス分野です。自然科学分野の研究開発をはじめ、大量の文書を使ったテキス
トマイニングや、ビッグデータを活用した政策の決定、企業の経営判断、自然災害の予測や医療福祉分野など、文系理系を問わずデータサイエンスを学び活用する重要性が今大変高まっています。

第５章

データの活用第章

4

情報Ⅰ「情報ネットワークとデータの活用」関連
情報Ⅱ「情報とデータサイエンス」関連
文科省教員研修用教材

第2章学習6・学習8

Data Science
Mathematics
ワン
ポイント

ビッグデータ
様々な方法で集めて蓄積された膨大な量のデータ。近年この大量のデータをコンピュータで分析し、今まで未知だった法則や傾向を見つけ出すことによって今後の予測や対策などのために活かすなど新たなど、新たな価値を創造するための研究が進んでいる。

31

「小さなSTEAM」活用アイデア集

要点図解

データの活用の基礎

情報Ⅰ・Ⅱでは、
まずテキストデータにもさまざまな形式があり、また内容的にも質的データと量的デー
タがありそれぞれに違う尺度があることなどを学びます。収集方法から見ると、データには、自分で集めた一次データと既に集計され利用できる二次データがあります。気象観測の例でいえば、自分で測定して集めたデータは一次データです。それに対して、気象庁が公開している全国の気象データが二次デー
タです。また国内外の過去100 年にも及ぶ全国の気象データは、WEB ページに公開されていて、二次データとしてみんなが活用できるようになっています。これをオープンデータといいます。
自分で計測した一次データでは、欠損値、異常値、外れ値を排除するなどの整理が必要です。また収集された数値のデータを整理し、分析するのには表計算ソフトが便利です。表計算ソフトでは集めた沢山のデータの順番を並べ替えたり、合計や平均値、標準偏差値などを求めることができます。さらに表を見やすく整える、数値を簡単にグラフ化して分析に利用する、表やグラフを他の文書に貼ってレポート文書やプレゼンテーション資料を作成するといった活用もできます。
第５章

データの活用図1

データ活用のステップ

1

2

目的・課題の設定

3

データの取得・収集

データ理解・可視化

・スクレイピング

・データの可視化
・比較検討

・データロギング
例）
1

地球規模の温暖化の傾向を分析し、日常の気象観測地域と比較する。

例）
2

気象庁のHPより、自分の住む地域の120 年間の気象データをスクレイピ
ング。

例）
3・4

スクレイピングしたデータを折れ線グラフにて可 視 化（ 表 計 算ソフトやPythonのライブラリの利用）。
データの可視化 …… 度数分布表示、ヒスト
グラム、散布図など

データの比較検討 …… 平均値、中央値、最頻4

データの数理モデル化 …… 回帰分析、主成分

章

第

値など

分析、分類・クラスタリングによる分類

気象庁のWeb サイトから取得した120 年間にわたるある地域の平均気温の表データと表計算ソフトで作成したグラフ。

ワン
ポイント
32

スクレイピング「Scrape」は「こする」「かき集める」といった意味を持つ言葉で、WebサイトからWebページのHTMLデータを取得し、見出しや写真といった特定のデータを抽出する技術。データの使用条件や著作権へ配慮する必要がある。

「小さなSTEAM」活用アイデア集

では表やグラフからどのようにデータを分析していくのでしょうか。まず度数分布表やヒストグラ
ム、散布図、平均値、中央値、最頻値などを利用する方法があります。またコンピュータを使って、回帰分析、主成分分析、分類・クラスタリングと呼ばれる方法があります。簡単な回帰分析の例として、気象庁からオープンデータとして公開されている世界の年平均の気温変化を見てみましょう。
公開されているテキストデータをダウンロードして表計算ソフトで読み込むか、Pythonなどのプログラムで読み込み（スクレイピング）、折れ線グラフにしてみます。細かいギザギザはありますが、

14

ほぼ直線を重ね合わせることができ、y ＝ax＋bと傾きaとして、切片bを求められます。このようにデータの傾向を読み取って数式化していくことを数理モデル化といい、求められるaやbをパラメー
タ、この先の予想や予測をすることをシミュレーションといいます。
現実の社会問題や自然界から得られるデータは複雑で、パラメータは何億個も必要とされることもあります。コンピュータがより多くのデータを集めて問題を解決するために、その大量のデータ（ビッ第５章

グデータといいます）から、パラメータを導き出しデータにあわせて改良していくことを、機械学習と言います。機械学習の流れは人間の知能で行うことに近づいているように見えるので、これは人工知

データの活用能（AI:artificial intelligence）のひとつであると考えられています。

4

大量のデータの加工・前処理6

5
機械学習モデルの作成

評価・テスト・
レポート作成・発表

欠損値、異常値、
外れ値の排除例）
5

データの数理モデル化。ここではパラメータ２つの一次関数ax＋bが求められ、10 年後、20 年後の予測の一つが成り立つ。
このように結 果となる数 値と要 因となる数 値 の 関 係を調 べて、それぞれの関係を明らかにすることを回帰分析といい、２つの数の関係を一次関数で近似した直線を回帰直線という。
Pythonのモジュールなど、こうした回帰直線を求めるためのパソコンのプログラムは多く存在する。

例）
6地域の気温の観測データにもこの予測が成り立つかどうかを、学校での実測データや気象庁にある地域の気象データと比較するしてまとめるなどの探究学習が可能である。また考察結果をまとめたり、表現するためにもプログラミングは有効である。下記はPythonのモジュールjapammapで県別のデータを、地図の色で表現したもの。

第y=a x＋b

章

ワン
ポイント

4

機械学習

データの分析方法の1つ。データから、コンピュータ（機械）が自動で「学習」し、データの背景にあるルールやパターンを発見する方法。学習した成果に基づいて「予測・判断」することも目的のひとつである。

33

「小さなSTEAM」活用アイデア集

マイコンボードでよくわかる
データの収集と活用

実習

ここではまず情報Ⅰ・Ⅱの「データの活用」の単元や探究学習に役に立つ、アーテックロガーによる自然科学分野のリアルタイムなデータの収集例と、Studuino:bitを使ったプログラミングによるアナログデータの収集やグラフ描画などデータ表現への活用例を示します。

実習1

アーテックロガーでリアルデータを収集しよう

アーテックロガーは、データロギング専用のマ
イコンボードです。リアルタイムに様々なデータ
を 計 測 し て そ の デ ー タ を 無 線 通 信（Bluetooth）
で、パソコンやタブレット端末に送ります。測定さ第５章れた気象や電流などのデータは、それぞれの端末

データの活用のWebブラウザにグラフ表示することができます。ソフトのインストールやプログラミングの必要はありません。センサは6種類で、最大3つまで同時に接続できます。

アーテックロガーのセンサ
気象（気温・湿度・気圧）
センサ

物理データ

超音波センサ

酸素濃度

酸素センサ

第

水温

水温センサ

4

水質
電気伝導度など

電圧センサ
電流センサ

章

気象データ

作例：振り子の運動↑気象センサを使った観測←超音波センサを使った実験

センサと天井との距離（センサの計測角度範囲内に振り子がないとき）

テキストデータとして出力同時測定可能測定したデータはグラフ画像データだけ
でなく、CSV形式での出力も可能。データの整理を表計算ソフトなどで行うことができる。

最大３つのセンサ値を同時に表示可能。気圧と湿度の関係などを簡単に調べることができる。
振り子がセンサに最も近づいたときの距離（振り子がセンサの真上を通ったとき）

ワン
ポイント
34

データロギング

常時リアルタイムのデータを測定して表示・蓄積することを言い、その測定する仕組みをデータロガーという。

「小さなSTEAM」活用アイデア集
実習2

Studuino:bitならアナログデータもデジタルにStuduino:bitでも、内蔵のセンサ（光、温度、加速度など）
や外付けのセンサ（赤外線フォトリフレクタ、
超音波など）
を接続することでデータロギングが可能です。またStuduino:bit にはADコンバータ（AD
変換する仕組み）を内蔵しているので、本体下のエッジコネクタにアナログの電圧の変化を伝えるとデジ
タル信号として表示や記録ができます。それによって風車に連動する発電機（モータを使用）から発生する電気エネルギーの大きさを計測したり、川の水の電気伝導度から水の汚れの度合いをグラフ化することもできます。

エッジコネクタUSB
接続

Studuino:bit

風力計測部

データの活用

実習3

第５章

データ表示部

グラフ表示のプログラミング

Studuino:bitでデジタルに変換された信号は、
スタディーノビットソフトウェアのキャラクターモードやMuエディタのプロッターモードで、グラフ表示ができます。変化がリアルタイムで表示・記録されていくので、理科の実験観察のツールとしても便利です。

from pystubit.board import pin2
import time

第while True:val = pin2.read_analog()
print((val,))time.sleep_ms(100)章

4

スタディーノビットソフトウェアのキャラクターモード
でグラフ表示ワン
ポイント

Muエディタのプロッターモードでグラフ表示

AD変換、DA変換

入力装置に入って来るアナログ値の信号は、デジタル値に変換し、また出力装置によってはデジタル値の信号を再びアナログ値に変換して出力する必要がある。これをそれぞれアナログとデジタルの頭文字を取って、AD変換、DA変換と呼ぶ。

35

「小さなSTEAM」活用アイデア集

コラム

Ｐythonを動かしてみよう⑤〈グラフ描画〉「データの活用」の学習にも、計算やグラフ描画などの機能をまとめた便利な外部ライブラリが存在します。そのうち特に有名なNumpyとMatplotlib（その中のpyplotという関数）をインポートして（読み込んで）グラフを描いてみましょう。通常長い名前のライブラリやモジュール・関数は短い別名（ここではpltやnp）にしてインポートします。なおインポートする前にパソコンに読み込んでおく必要があるのは24 ページと一緒です（45 ページ参照）。
たとえば、2次関数y ＝x2 のグラフを－1 ≦ x ≦1の範囲で描きたい場合や、三角関数でy=sinxとy=cosxを０≦x≦4πの範囲で描きたい場合、それぞれわずか数行で実行することができます。
1
2
3
4
5

import matplotlib.pyplot as plt
import numpy as np
x=np.linspace(-1,1)
plt.plot(x,x**2)
plt.show()【実 行 ( R u n → R u n M o d u l e ) 】

1
2
3
4
5
６

import matplotlib.pyplot as plt
import numpy as np
x=np.linspace(0,4*np.pi)
plt.plot(x,np.sin(x))
plt.plot(x,np.cos(x))
plt.show()【実行(Run→Run Module)】

第５章

データの活用

前章32 ページの気象データで使った、Pandas という外部ライブラリを使って外部データを読み込み、上記pyplot を組み合わせてグラフにすることができます。
データを読み込み、表で表示する
1 import pandas as pd
2 df=pd.read_csv("https://www.data.jma.go.jp/cpdinfo/temp/list/csv/an_wld.csv",encoding="SJIS")
3 print(df)【実行 ( R u n → R u n M o d u l e ) 】

第年 世界全体 北半球 南半球
0 1891 -0.78 -0.88 -0.68
1 1892 -0.89 -1.00 -0.74
2 1893 -0.94 -1.06 -0.79
3 1894 -0.86 -0.93 -0.77
4 1895 -0.82 -0.95 -0.67.. ... ... ... ...
126 2017 0.26 0.34 0.17
127 2018 0.16 0.19 0.13
128 2019 0.31 0.38 0.23
129 2020 0.34 0.51 0.16
130 2021 0.22 0.35 0.09

章

4[131 rows x 4 columns]【実行(Run→Run Module)】
1
2
3
4
5

36

import pandas as pd
データを読み込み、グラフで表示する
import matplotlib.pyplot as plt
df=pd.read_csv("https://www.data.jma.go.jp/cpdinfo/temp/list/csv/an_wld.csv",encoding="SJIS")
plt.plot(df["年"],df["世界全体"],"o-")plt.show()「小さなSTEAM」活用アイデア集第6章 問題の発見と解決のために本章では、情報Ⅰ・Ⅱの大きな目的、すなわち問題を発見し解決する力を育成し、情報技術が果たす役割を見極め、望ましい情報社会の構築を目指すために、マイコンボードを活かしたいくつかのヒントを紹介します。前章までは、中学校技術分野との関連を重視し、概ね情報Ⅰの範囲での学習を中心としてきましたが、本章では、情報Ⅱ「情報システムとプログラミング」の内容も含んだ実践例を紹介します。
「ICTを活用した問題解決」や「新たな価値の創造」のためのヒントとしてご活用ください。

第６章

問題の発見と解決のために

第章

4Computer
Science

ワン
ポイント

Programming
Technology

NetworkEngineering

DigitalArts

Data Science
Mathematics

X－Tech（クロステック）
IoTやAI など情報技術を様々な分野で活用することで、問題を解決し、今までになかった商品やサービスなどの価値を生み出す意
味の言葉。たとえばX の部分が教育ならEdtech（エドテック）、農業ならAgritech（アグリテック）、金融ならFintech（フィンテック）などと呼ばれる。それぞれ地域による教育格差をなくすためのオンライン授業の技術、センサやドローンを使った農業や物流の人手不足解消、インターネットを利用した便利なお金のやり取りなど、各種新しいサービスが生まれつつある。

37

「小さなSTEAM」活用アイデア集①遠隔計測・制御システム（IoT）
このシステムはWebブラウザ上からネットワーク経由で、遠隔地の

作例動画３

テキスト
「IoT学習キット」

https://youtu.be/tUOkzAvWS2Y

https://www.artec-kk.
co.jp/special/school_programming/03high.
php

温度を計測したり、LEDやDCモータのON・OFFを制御したりすることができます。第3章で紹介した温度計測のシステムを発展させた
このシステムは、IoTの仕組みの理解やハードウェアを伴う情報シス
テムの制作の教材に利用できます。

Studuino:bit

第６章

問題の発見と解決のためにLED・温度センサ・抵抗器

電池ボックスパソコン（クライアント）

ルータ

パソコン（Web サーバ）

ハブ

第
章

4

アクセス
ポイント
スマートフォン
（クライアント）

LED・温度センサ・抵抗器
Studuino:bit

ワン
ポイント
38

クライアントサーバシステム

クライアントサーバシステムコンピュータにサービスを受けるクライアントと、サービスを提供するサーバの役割を付与・分担させ、ネットワークに接続して運用する仕組み。

「小さなSTEAM」活用アイデア集

Pythonには標準モジュールとしてhttp.server があり、これを利用すると簡単にWeb サーバを構築することができます。たとえば、図1のように学校のパソコン教室の既存のLAN 内にある任意のコンピュータ（PC①）をWebサーバの役割をするコンピュータとし、http.server を稼働させます。そして、他のコンピュータ（PC ②、PC ③…）をクライアントの役割をするコンピュータとします。LAN 内のハブにWi-Fi アクセスポイントを接続し、これにStuduino:bitをWi-Fiで接続します。Studuino:bitには温度センサとLEDを接続します。これにより、クライアントのWebブラウザ上からネットワーク
経由でWebサーバにアクセスして、温度センサの周辺の温度を計測したり、LED の点灯・消灯を制御したりすることができます。
図1 遠隔計測・制御システム
PC①

PC②

ローカル
Web サーバ

温度：24℃
LED
ON

OFF（Webブラウザ）PC③
温度：24℃
LED

温度センサ

ON

OFF

スマート
フォン

を携帯電話回線と、Wi-Fi の中継の働きを問題の発見と解決のために

クライアントの役割をするPC

無線LANアクセスポイント

Studuino:bit

バに、PC②やPC③などをスマートフォンに、ルータ・ハブ・Wi-Fiアクセスポイント

ハブ

追加する装置LEDまたはDCモータ

PC①をインターネット上のWebサー第６章

サーバの役割をするPC

ルータするモバイルルータやスマートフォンのテザリングなどにそれぞれ変更すること
で、有線LAN のない部屋や屋外での実習も可能になります。

●Studuino:bitのプログラム例
from pystubit.board import lightsensor, display
from pystubit_iot import wifi_config, wifi_connect, wifi_ifconfig, get_request
import time
# Wi-Fiに接続する
wifi_config(ssid='Wi-FiルータのSSID', pwd=' Wi-Fiルータのパスワード')
res = wifi_connect(trytime=5)
wifi_ifconfig(('Ⓐ', 'Ⓑ', 'Ⓒ', 'Ⓓ'))# Studuino:bitに固定のIPアドレスを割り振る

while True:time.sleep(1)value = lightsensor.get_value()4章# センサ値の送信先の指定
url = 'http:// WebサーバのIPアドレス/cgi-bin/device.py/'

第

1
2
3
4
5
6
７
８
９
10
11
１２
１３
14
15
１６
17
18
１９
２０
21
22
23
24
25

# センサ値を取得# サーバにセンサ値を送信して、サーバからのデータ(ON/OFF)を受信する
response = get_request(url, {'sens':value})# 受信したデータ情報からStuduino:bitの動きを設定する
if not (response is None):
if response.splitlines()[0] == 'ON':
display.set_pixel(2, 2, (31, 0, 0))
else:
display.clear()
出典：アーテックテキスト「高校情報科Ⅱ・情報システムとプログラミング・IoT 学習指導書」より抜粋

ワン
ポイント

テザリング（tethering）

パソコンやゲーム機といったさまざまな機器を、スマートフォンやタブレットに接続することで、携帯電話回線を通してインター
ネットを利用する仕組み。接続方法にはWi-FiかBluetoothを使った無線接続と、USBケーブルを使った有線接続がある。

39

「小さなSTEAM」活用アイデア集②安否確認システム（IoT）
冷蔵庫内に設置した光センサが明るさの変化を検知することで、冷蔵庫のド作例動画４アが開かれたことをメールで通知し、一人暮らしの高齢者の安否確認をします。
このシステムも、インターネット上のメールサーバの利用も含めて、IoTの仕組みの理解やハードウェアを伴う情報システムの制作の教材に利用できます。

https://youtu.
be/8feQUq5Y7vg

第６章

問題の発見と解決のために

Studuino:bit

ルータ
Studuino:bit
ハブ

第
章

4

パソコン

ワン
ポイント
40

安否確認システム

アクセス
ポイント

スマートフォン

あったかいお茶をよく飲む習慣があるお年寄りの安否を、電気ポットの使用状況から、離れて暮らす家族にEメールで知らせる象
印マホービン(株)の「みまもりほっとライン」は、安否確認システムの先駆けとなった。

「小さなSTEAM」活用アイデア集

図2のように、光センサを接続したStuduino:bitを冷蔵庫内などに設置し、Wi-Fiアクセスポイント
経由でインターネット上のメールサーバ（Gmailサーバ）に接続します。冷蔵庫の扉が開かれると光センサの値（明るさ）が「暗」から「明」に変化しますが、この変化を検知すると、Studuino:bitはメールを発信します。これにより冷蔵庫の扉が開かれたことをメールで通知し、一人暮らしの高齢者の安否確認ができます。
Studuino:bit には光センサが搭載されているので、これを利用すれば外付けの光センサは不要になります。有線LANのない教室や屋外での実習も可能です。
●Studuino:bitのプログラム例
図2 安否確認システム
インターネット
Gmail メール
サーバ サーバ

ルータ

ハブ

追加する装置

ドアが
開きました

無線LAN
アクセスポイント

基地局
携帯
電話回線

光センサ
Studuino:bit

スマートフォン

# Wi-Fi の設定（SSIDとパスワード）
wifi_config(ssid='xxx', pwd='xxx')# メールサーバーの設定（ログイン名とパスワード）
smtp_config(username='xxx', password='xxx')
res=wifi_connect(trytime=5) # Wi-Fi と接続する問題の発見と解決のためにPCfrom pystubit_iot import *import time

第６章

ルータ

ハブ

1
2
3
4
5
6
７
８
９
10
11
１２
１３
14
15
１６
17
18
１９
２０
21
２２
23
24
25
26
27
28

# データ初期化
threshold=500 # 明るさの変化の閾値
prev_lv=lightsensor.get_value()
while True:# 検出開始# 明るさの変化量の取得
lv=lightsensor.get_value() # 現在の明るさ
diff=lv-prev_lv# 変化量の取得
prev_lv=lv# 現在の明るさを保存
if diff>threshold:# 変化量が閾値を超えた場合# メールを送る
sendmail(# 送信先アドレス'xxx@xxx.xxx',' 変化を感知しました '# メールタイトル' ドアが開きました ')# メール本文
time.sleep_ms(1000)
出典：天良和男、川瀬賢二「次世代教育用ワンボードマイコンの授業での活用（日本情報科教育学会第12回全国大会講演論文集）」より

第ここで使用した光センサを、他のセンサに代えれば、いろいろな応用を考えることができます。たと章

4

えば、傾きを検知できるジャイロセンサ（Studuino:bit にも内蔵されている）を使って、郵便受けに手紙が配達されたというメールを受信する「着信お知らせポスト」を作ることができるでしょう。スマー
トフォンならば、受信する時間も場所も選びません。このようにセンサをつけたマイコンボードをイ
ンターネットと組み合わせることによって、さまざまな道具やサービスを開発する大きな可能性が生
まれます。

ワン
ポイント

Gmailサーバ

Gmailを用いてメールを送信するプログラムには、Googleのアプリパスワードが必要となる。GoogleアプリパスワードはGoogleアカウントとは別だが、Googleのサイトから簡単に作成することができる。

41

「小さなSTEAM」活用アイデア集③手書き数字認識システム（AI＋IoT）

作例動画５

小型カメラで撮影した手書き数字をPython機械学習ライブラリscikit-learnで認識し、認識した数字をLEDディスプレイに表示します。このシステムは、AIを支える技術である機械学習やIoTの仕組みの理解、ハードウェアを伴う情報システムの制作の教材に利用できます。

https://youtu.be/lyB6IHxjzlo

Studuino:bit

カメラ→
第６章

サーボ
モータ

問題の発見と解決のために

ルータ

Studuino:bit

←カメラ

第

ハブ

章

4

パソコン（Web サーバ）

ワン
ポイント
42

AI＋IoT

アクセス
ポイント

AI（artificial intelligence）とIoT(Internet of Things)は互いに補完する関係にある。IoTがセンサからデータを取得し、AIがサーバに収集したデータを分析するなど、双方が連携して膨大なデータを有効活用できる。AIと絡めたIoTは、あらゆる分野で様々な利用方法が検討されており、今後開発の余地がある分野である。

「小さなSTEAM」活用アイデア集

Studuino:bitに小型カメラを接続し、無線LANアクセスポイントを経由して、前述のhttp.server
を 稼 働 さ せ たWebサ ー バ に 接 続 し ま す。Webサ ー バ に はPythonの 機 械 学 習 ラ イ ブ ラ リ で あ る
scikit-learn（サイキットラーン）を搭載します。

Studuino:bit は、接続した小型カメラで手書きの数字を撮影し、その画像ファイルをWebサーバに送信します。Webサーバ側のプログラムはscikit-learnを利用して画像ファイルから数字を予測し、その数値データをStuduino:bitに返します。それによってStuduino:bit は搭載しているLED
ディスプレイに予測した数字を表示することができます。

scikit-learnは無償で利用できるうえに、解説している書籍も多く、機械学習を学ぶ初学者には最適なライブラリです。
第６章

問題の発見と解決のために

scikit-learnによる手書き数字認識システム

追加する装置Studuino:bit

PC

小型カメラ

リクエスト
（画像データ）

手書きの数字を書いた紙

Webサーバscikit-learn

2

認識した数字を表示する

レスポンス（数値データ）
ハブ

ルータ

第

無線LAN
アクセスポイント章

4

このようにAIを使った画像認識や音声の認識の研究が進んでいます。実験できるものとしては、数
字などのほか、人のポーズを識別できたりする画像認識や、声や音を識別する音声認識があります。
次ページではビジュアル言語で実験できる画像認識の例を紹介します。

ワン
ポイント

scikit-learn（サイキット・ラーン）

Pythonで実装されたオープンソースの機械学習ライブラリで、分類、回帰、クラスタリング(グループ分け）などの様々なアルゴ
リズムを実装しており、機械学習モデルを作成する上で必要不可欠なライブラリである。

43

④顔認識ゲートシステム（AI＋IoT）
パソコンのカメラで登録した顔イラストをStuduino:bitで認識し、登録のある顔のときだけ開く
ゲートシステムです。スタディーノビットソフトウェアに実装されているAI対応の拡張ブロックを使い、ビジュアル言語だけでプログラミングできます。このシステムは、AIを支える技術である機械学習の理解やハードウェアを伴うセキュリティ・システムについて考えるための教材として利用できます。もちろんネットワークを経由させればIoTの教材にもなります。

●顔認証がOKなら、ゲートオープン！
Studuino:bit

サーボ
モータ

●顔認証がNGなら、ゲートクローズ！

ワン
ポイント
44

AI拡張ブロックスタディーノビットソフトウェアには、ベースとなるScratch3.0 の『ML2Scratch』と『TM2Scratch』という機械学習が可能な
AI拡張ブロックが実装されている。これらのブロックで画像認識や音声認識、ポーズの認識などがビジュアル言語でも可能になる。

参考資料
1．Studuino:bit のハードウェア仕様について「アーテックロボ2.0」は、Studuino:bit を中心にロボットパーツをセットにしたものです。Studuino:bitの仕様等は以下を参照してください。
→https://www.artec-kk.co.jp/artecrobo2/pdf/jp/artecrobo2_manual.pdf
2．スタディーノビットソフトウェアのインストール
Studuino:bit と「アーテックロボ2.0」で使用するスタディーノビットソフトウェアはScratch3.0 をベースに独自のブロックも加えたビ
ジュアル言語プログラミングソフトで、Windows・Macに加え、Bluetooth通信によりiOS、Android、ChromeOSでのプログラミングにも対応しています。OS別のダウンロードとセットアップマニュアルは以下です。
→ https://www.artec-kk.co.jp/artecrobo2/ja/software/
3．Muエディタについて
Studuino:bit などのマイコンボードで動作するPython は、普通のPython ではなく、MicroPython です。MicroPython はマイコンボード
で実行できるように実装されたPython 言語の処理系で、Python3.0 との間で高い互換性を有します。MicroPython を使ったプログラムはMu エディタなどを使って作成します。Mu エディタのダウンロード・インストールおよび使い方は以下のサイトに示されています。
→ https://www.artec-kk.co.jp/artecrobo2/ja/software/python.php
4．学校教育機関向けテキストについて
本冊子で紹介する実習例のいくつかについては、詳しい内容は以下にあります。
アーテック教育機関向けプログラミング事業ポータルサイト→ https://www.artec-kk.co.jp/special/school_programming/高校高校・高専・大学向けテキストダウンロード→ https://www.artec-kk.co.jp/special/school_programming/03high.php
5．電子部品の入手について
第3章の「実習3」（P.23）、第6章の「遠隔計測・制御システム」（P.38、P.39）で使用するStuduino:bit やセンサなどの電子部品、拡張コネクタ、ブレッドボード、ジャンパ線などの教材についての入手先は以下です。
→ https://www.artec-kk.co.jp/special/school_programming/
6．アーテックロガー
アーテックロガーの対応OS等、詳しい仕様や機能につきましては以下をご覧ください。
→https://www.artec-kk.co.jp/dl/arteclogger/
7．Pythonのインストールと付属のIDLEについて
Python のプログラムは、インストール不要のものもありますが、モジュールが対応していないプログラムは動作しないこともあり、Python
をインストールした時に付属しているIDLE（統合開発環境）を使って開発するのが最も簡単で確実です。
→https://www.python.org/（1）IDLE の起動方法
パソコンのスタートメニューからPython フォルダ内のIDLE を選択すると、シェルウィンドウが開きます。
（2）プログラムの作成
シェルウィンドウから「File」「New File」の順に選択すると、エディタウィンドウが開きます。
プログラムをエディタウィンドウに入力し、エディタウィンドウから「File」「Save As」の順に選択して名前を付けて保存します。
（3）プログラムの実行
エディタウィンドウから「Run」「Run Module」の順に選択すると、実行結果がシェルウィンドウに表示されます。
8．インストールの必要のないPythonの環境
paiza.IO → https://paiza.io/ja
Google Colaboratory → https://colab.research.google.com
いずれも代表的なモジュール等は既にインストールされているものもありますが、ないものもありますのでご確認ください。
9．情報Ⅰ・Ⅱに有用なPythonの外部モジュールについて

Matplotlib、Numpy、Pandas、scikit-lern、Requests、japanmap など外部モジュールのインストールは、Python3 がインストールされている状態で、Windows の場合、コマンドプロンプトより「pip install モジュール名」、MacOS の場合、ターミナルより「pip3 install モ
ジュール名」とコマンドを打ちます。

10．WebGPIサービス
郵便番号データ配信サービス「zipcloud」（株式会社アイビス運営） http://zipcloud.ibsnet.co.jp/
標高検索（国土地理院） https://www.gsi.go.jp/
世界の天気予報（世界気象機関WMO） https://public.wmo.int/en（英語サイト）
気象データ検索（気象庁） https://www.jma.go.jp/jma/
11.参考文献
高等学校情報科「情報Ⅰ」教員研修用教材・高等学校情報科「情報Ⅱ」教員研修用教材（文部科学省）
高等学校文部科学省検定教科書「高校情報ⅠPython」・「情報Ⅱ」（実教出版）
鎌田高徳、鹿野利春「高校情報科が1冊でしっかりわかる本」（かんき出版）
奥村晴彦、森本尚之「基礎からわかる情報リテラシー改訂第4版」（技術評論社）「情報」教員不足 際立つ地域差 2022.9.3 付 朝日新聞朝刊※なお、本冊子で紹介したソフトウェアやWeb サイトは2022年9月現在のもので、仕様、内容その他は予告なく変更されます。最新の情報をご確認ください。ソフトウェアの変更に伴ういかなる問題にも弊社は責任を負いかねます。

45

巻末対談・編集後記に代えて

情報Ⅰ・Ⅱ、IoTやAIを学び新たな価値の創造をてんら

天良 和男 × 本誌編集長 三宅 丈夫

三宅：情報Ⅰの教科書を拝見しましたが、プログラミン
グ特にIoTに繋がるハードウェアを使ったプログラミン
グについては記述が少ないですね。
天良：2021年度までの旧情報科では「社会と情報」と「情報の科学」のどちらかの選択科目でした。選択状況は前者が8 割で、プログラミングを含む内容の後者は2 割程

本書では、新しい情報Ⅰ
・Ⅱの内容のうち、プログラミ

度といわれていました。ソフトウェアの学習とはワープ

ングに関連する内容を概説し、それらの理解を助ける

ロや表計算ソフトの使い方を学ぶことだという時代もマイコンボードの活用法をご紹介しています。監修をあったので、多くの先生にとって、今回の必履修科目、情いただいた天良和男先生に、情報Ⅰ
・Ⅱの将来への可能

報Ⅰだけでも、かなりの部分が新しい内容になります。

性と現状の問題点について伺いました。

そうした背景があってか、実際教科書が出そろってみると、以前からの流れを重視した内容になっているという

三宅：天良先生は「情報Ⅰ・Ⅱ」の学習指導要領や教員感も否めません。この冊子は、既に情報の科学を担当さ用研修教材の作成に尽力されてこられました。必履修

れてきた先生方には、当たり前の内容にすぎないかもし

科目の情報Ⅰだけでも学ぶ内容が幅広いですよね。

れませんが、今回加わった新しい内容の部分を中心に構

天良：そうですね。プログラミング以外にも、データサ
イエンスの基礎、著作権法やコンテンツのデザインないですね。

ど幅広く、週2時間では足らないと思います。次期指導

三宅：もともと授業時間が少ない上に、入試科目にも要領では週4 時間くらい必要ではないでしょうか。まなって、ハードウェアを使った実習をする余裕がないとた高校になってから詰め込むのでなく、できれば中学の声もありますが。

校や小学校でも独立した教科になればと個人的には思

天良：私たちの身の回りを見てください。様々なセンサ

います。現在中学の技術分野では4本柱の一つでしかな
いし、小学校では理科や算数などの教科の中にプログ
ラミングの内容が散りばめられていて、学校によっても取り扱いにばらつきがあります。

が世の中を変えています。マイコンやセンサは便利で快適な生活に欠かせないものになっているのです。農場にセンサやAI が導入され、効率よく作物を栽培するためにはどうしたらいいのか、病気に強い品種をどう育て、い三宅：大学の入試科目にも決まった一方、先生が足りつ収穫したらいいかなど、センサからのデータをAI で解ないというのが時々ニュースにもなっていますね。

析することが、今後の食糧問題の解決につながります。

天良：これも困った問題で、最近の新聞記事でも情報の授業は、「非常勤講師頼み」（朝日新聞

2022 年9 月

3日「情報科教員15％が免許なし」）とあります。その調査の記事を読むと、さらに心配なのは地域差という問題です。2022 年5月現在、首都圏の高校で情報Ⅱの開設を予定しているのは情報Ⅰ設置校の約4割から5割超ありますが、これに対して、情報Ⅱの設置予定校
が0の県があり、また1校だけ設置予定という県が7県もあるのです。これには驚きました。情報技術は地域格差をなくすために発展してきた歴史があるわけですか
ら、地方こそIT 系の人材の育成が求められている時代
だと思います。ただまだスタートしたばかりですし、私は今後に期待しています。大学でも情報系の人気が高まっています。また、あと数年で、小中学校でプログラ
ミングを経験した「プログラミング・ネイティブ」の世代が高校に入ってきます。これから大きな変化が起こるでしょう。
46

成されていますので、ぜひ多くの先生に見ていただきた道路の渋滞の様子をセンサから情報を集め、AI が信号の間隔を制御することで住みやすい街になります。このようにプログラミング学習の重要なねらいはIoT（モノのインターネット）やAI で新たな価値を創造していくことです。そのためにもモノを使った実習は必要です。
どうか小学校・中学校のプログラミング教材を開発してこられたメーカーさんも、自信をもって高校にもどんどんアプローチしてください。たとえば先生方の研修に関しては学校の方からも要望が多くあります。特に地方での教員研修は地域格差を埋めるうえで重要だと思います。期待しています。
てんら

天良 和男
東京都立日比谷高等学校、小石川中等教育学校などの物理科、情報科の教諭を歴任。文部科学省「情報Ⅰ」「 情報Ⅱ」学習指導要領の解説書および教員研修資料、情報の教科書の執筆など。元東京学芸大学特任教授。
三宅 丈夫
株式会社アーテック顧問。学研グループを経て現職。

索引
英数字

あ-て

て-ろ

10進数… ………………………… 16
2進数……………………… 9/13/16
ADコンバータ… ………………… 35
AD変換…………………………… 35
AI… ……………………… 4/33/42
AI拡張ブロック…………………… 44
AND回路… ……………………… 14
ASCIIコード… …………………… 16
Bluetooth…………………… 28/34
CPU… …………………… 6/7/8/14
DA変換…………………………… 35
DNS… …………………………… 27
ESP32… ……………………………6
EUC-JP… ………………………… 16
Gmailサーバ………………… 12/41
Google Colaboratory……… 123
HDD… ………………………………9
HTML……………………………… 27
http.server… …………………… 39
IDLE… ……………………… 12/45
if,elif… …………………………… 24
Iot… ………………… 4/27/38/40
IPアドレス… ……………………… 26
ISP… ……………………………… 25japanmap… ……………… 33/45
JIS、Shift_JIS……………………… 16
Json… …………………………… 30
LAN… …………………………… 26
LED…………………… 6/11/23/39
LEDディスプレイ… ………… 6/9/10
Matplotlib… ……………… 36/45
MicroPython… ……………………6
Muエディタ… …… 6/12/21/35/45
NOT回路… ……………………… 14
Numpy……………………… 36/45
OR回路… ………………………… 14
OS… …………………………………8
pandas……………………… 30/45
paiza.IO… ………………… 12/45
Pip… ……………………………… 45
POPサーバ………………………… 27
print… …………………………… 12
Python… ………………6/12/21/45
random…………………………… 24
REPL… …………………………… 12
requests… ………………… 30/45
scikit-learn… ……………42/43/45
Scratch…………………… 6/20/44
SDD… ………………………………9SMTPサーバ……………………… 27
Studuino:bit…………………………6
TCP/IP… ………………………… 26
Unicode… ……………………… 16
URL………………………………… 27
WAN……………………………… 26
WebAPI… ……………………… 30
Webサーバ… ……………… 27/44
WWW… ………………………… 26
Wi-Fi…………………… 26/28/29
X-Tech… ………………………… 37

アーテックロガー… ……… 6/34/45
アクチュエータ… ………………… 11
アクティビティ図… ……………… 20
圧縮、圧縮率… …………………… 15
アナログ量………………………… 14
アルゴリズム……………………… 20
インターネット… …………… 25/26
インターネット共有… …………… 28
エッジコネクタ… …………… 10/35
演算装置… …………………………8
オープンデータ…………………… 32
温度センサ……………… 10/23/39
回帰直線… ……………………… 33
回帰分析…………………………… 33
解像度… ………………………… 15画素、画素数… …………………… 15
加法混色… ……………………… 17
関数… ………………… 18/23/24
記憶装置……………………………8
機械語… ………………………… 19
機械学習… …………… 33/42/44
技術・家庭科技術分野… ……………5
気象センサ………………………… 34
クライアント……………………… 29
クライアントサーバシステム… …… 38
計測と制御……………………………5
減法混色… ……………………… 17
コード……………………………… 20
コード化…………………………… 15
コンピュータ………………………7/8
サーバ……………………………… 29
サンプリング……………………… 15
シミュレーション… ……………… 33
出力装置… …………………………8
主記憶装置… ………………………8
順次処理… ……………………… 20
情報活用能力… ……………………4
条件分岐処理… …… 20/21/22/23
人工知能… …………………… 4/33
数理モデル化……………………… 33
スーパーコンピュータ… ……………7
スクレイピング…………………… 32
スタディーノビットソフトウェア…………………… 6/11/21/44/45
ストレージ……………………………8
制御装置… …………………………8
センサ…………………………………9
センサーボード………………………5
双方向の通信… ………………… 84
ソースコード… …………………… 20
ソフトウェア… ………………………8
ソリッドステイトドライブ……………9
大学入試共通テスト…………………6
中央処理装置… ……………………9
超音波センサ……………………… 34
通信プロトコル…………………… 26
データサイエンス………………… 31
データロギング…………………… 34
テキスト言語……………………… 21
テキストマイニング… …………… 31

テザリング………………………… 39
デジタル量………………………… 14
展開… …………………………… 15
電子メール………………………… 40
ドメイン名………………………… 27
トランジスタ…………………………9
入力装置… …………………………8
パケット通信……………………… 26
ハードウェア…………………………8
ハードディスクドライブ………………4
ハードウェア……………………… 13
配列………………………………… 22
バイト……………………………… 13
ハブ………………………………… 29
パラメータ………………………… 33
半加算回路………………………… 14
反復処理………………………… 20
光センサ…………………… 10/11/41
ピクセル…………………………… 15
ビジュアル言語…………………… 21
ビッグデータ……………………… 31
ビット……………………………… 13
標本化……………………………… 15
表計算ソフト……………………… 32
フォント…………………………… 15
符号化… ………………………… 15
ブザー……………………………… 10
ブラウザ…………………………… 27
フローチャート…………………… 20
プロセッサ……………………………7
プログラミング言語………… 19/20
プロッターモード………………… 35
変数… ………………… 18/22/23
ボード型コンピュータ… ……………4
補助記憶装置… ……………………8
マイコンボード… ……………………4
無線LAN… ……………………… 26
無線アクセスポイント… …… 29/39
メーラ……………………………… 27
メールサーバ………………… 27/41
メモリ…………………………………8
モジュール……… 24/30/36/39/45
モーションセンサ………………… 10
モータ……………………………… 11
文字コード…………………… 14/16
モジュール………………………… 24
文字列… ………………………… 16
モバイルホットスポット………… 28
ライブラリ……… 24/30/36/42/43
リクエスト………………………… 44
量子化… ………………………… 15
ルータ……………………………… 29
レスポンス………………………… 44
論理回路… ……………………… 14
論理積回路… …………………… 14
論理否定回路……………………… 14
論理和回路… …………………… 1447

研究指導・監修
てんら

天良 和男
元都立高校物理科・情報科教諭
元東京学芸大学特任教授
写真協力
photo AC / PIXTA
編集・著作
株式会社アーテック 企画室
詳しい製品情報はこちら
アーテックロボ2.0(スタディーノビット）

アーテックロガー

https://www.artec-kk.
co.jp/artecrobo2/ja/

https://www.artec-kk.
co.jp/dl/arteclogger/

教育機関向けプログラミング事業
ポータルサイトhttps://www.artec-kk.
co.jp/special/school_programming/

マイコンボードで100倍わかる 高等学校 情報Ⅰ・Ⅱ
2022年10月30日発行
発行人 藤原 悦
編集人 野田 みね
編集長 三宅 丈夫
編 集 AD：工藤 浩司
イラスト：平山 貴美子
発

行 株式会社アーテック〒581－0066
大阪府八尾市北亀井町3－2－21

お問い合わせ先 info@artec-kk.co.jp
本書の無断転載を禁じます。
第三者による電子データ化および電子書籍化は、私的使用を含め一切認められておりません。
本文中に記載のある社名および製品名は、それぞれの会社の登録商標または商標です。
・Arduino は、Arduino Holding の登録商標です。
・Android,Google Colaboratory,Gmail は、Google LLC の商標です。
・Bluetooth は、米国Bluetooth SIG, INC. の商標または登録商標です。
・iOS は、Apple Inc. のOS 名称です。IOS はCiscoSystems, Inc. またはその関連会社の米国およびその他の国における商標
または登録商標であり、ライセンスに基づき使用されています。
・Mac OS はApple Inc. の登録商標です。
・Micro:bit はMicro:bit Educatin Fandation の登録商標です。
・piaza はpiaza 株式会社の登録商標です。
・Python はPython Software 財団の登録商標です。
・Raspberry Pi はRaspberry Pi 財団の登録商標です。
・Scratch はScratch 財団の登録商標です。
・Studuino、Studuino:bit は、株式会社アーテックの登録商標です。
・Wi-Fi はWi-Fi Aliance の登録商標です。
・Windows は、
米国 Microsoft Corporation の米国およびその他の国における登録商標または商標です。
・みまもりほっとラインは象印マホービン株式会社の登録商標です。
本文中では ® および ™ を表記しておりません。
48

本書デジタル版の閲覧・ダウンロードはコチラ!（無料）
https://www.artec-kk.co.jp/special/school_programming/
マイコンボードで100倍わかる 高等学校情報Ⅰ・Ⅱ 098079 K1022