概略



初めに

現在,私達は様々な電化製品に囲まれて生活しています.技術の進歩と共に電化製品は非常に便利になり,生活になくてはならない存在となっています.それらの機器はコンセントを入れてスイッチを押すだけで動きだし,さまざまな作業をしてくれます.しかし,なぜスイッチを押すだけで作業がなされるのでしょうか.

それは,多くの電化製品にはマイクロコンピュータ(マイコン)が組み込まれているからです.動作させたい内容をプログラムとして書き込んでおくことで,マイコンは様々な命令を機器に与え,仕事をさせます.例えば,このマイコンがどの様な製品に利用されているかというと

テレビ,炊飯器,エアコン,洗濯機,玩具 など,どこにでもある多くの製品です.

 本演習では実際に市販されている LEGO MINDSTORMS を使用した演習を行っていく中で,これらマイコンの周辺がどのように構成され,どのようなプログラムで動作するのかを学習していきます.

目的

本実験ではなぜ,マイコンについての実験するのでしょうか.

また, Information Technology (IT) といって皆さんが想像するのはどの様なことでしょうか. IT といって皆さんが想像するのはやはりプログラムを中心としたソフトウェアに関連することが多いでしょう.しかし, IT の定義は,「情報を管理,加工することに関連するコンピュータ技術やコミュニケーション技術をさす.特に研究施設・企業内の情報システム技術を意味することが多い.具体的には,コンピュータのハードウェアやソフトウェア,及びその利用技術をさす.」とされています.

つまり,これから行う実験のようにマイコンのプログラム作成や,はんだ付けは IT 技術に含まれているのです.本演習では,実験を行うことによりシステムにおける命令から実際に物を動かすまでのプロセスを把握し,また,ソフトウェアとハードウェアの関係について理解を深めることを目指しています.

一年次の体験演習では LEGO MINDSTORMS を使った演習を行いました. MINDSTORMS の使い方を学習し,実際に動かし,また,独自のデザインをするといったものでした.そのため,既製品を使用するのみといった基礎的な内容の実習でした.

本実験では代表的なマイコンのひとつである H8 チップの乗ったボードを使って LEGO MINDSTORMS の RCX コントローラに相当するロボットコントローラの作成を行います.そして,プログラムをマイコンに書き込みマインドストームを制御することで,マイコンの使い方と役割を学びます.そして,ソフトウェアとハードウェアの関係について理解を深めます.そのために,電子部品のはんだ付け,アセンブリ言語によるプログラムの作成,マイコンからモータの制御,マイコンによるセンサからの計測値の取り込み, MINDSTORMS を使用してロボット制作などを行います.

注意

  • 一回目の授業でははんだを使うので汚れたり焦げたりする可能性があります.それなりの格好をしてきましょう.また,はんだごてに髪の毛が絡まると髪の毛を焦がしますので,髪の毛にも気を配りましょう.
  • はんだごての金属部分は熱くなるので,やけどや周辺にある物を焦がしたりしないように注意しましょう.また,やけどをしないように備え付けの軍手,ゴーグルをしましょう.
  • 授業の始まりと終わりに工具箱の中身と部品リストを比べて部品の確認をして下さい.
  • 一人で実験を進めていくので,毎回出席することは必須です.欠席すると実験についていけなくなります.また,忘れ物をすると実験が出来ないので忘れ物をしないようにしましょう.

実験環境

 本実験では, MINDSTORMS を使用してロボット制作を行います.このロボットに動作をさせるために,家電製品などで使用されている H8 マイコンを使用します.この H8 マイコンは 16bit マイコンです.これは,プログラムを書き込むフラッシュ ROM128kB , RAM4kB ,データの入出力ポートである I/O ポート,アナログ値をデジタル値に変換する A/D コンバータ,その逆にデジタル値をアナログ値に変換する D/A コンバータ,モータ制御に使用するタイマユニット ITU , PWM などの多くの機能を持っています.

ロボットコントローラは H8CPU ボードとモジュールボードから構成されています. H8CPU ボードは上で説明した H8 マイコンの搭載された基板を使用します.モジュールボードはモータドライバモジュール,センシングモジュールから構成されていて,これを用いてモータとセンサの利用ができます.そして,アセンブリ言語でのプログラムの作成をパソコンで行います.作成したプログラムをパソコンから H8 に書き込みをすることで,周辺のモータなどに命令を出すことができるようになります.

これらの条件により LEGO MINDSTORMS の RCX コントローラとほぼ同じ機能を実現できるようになっています.ちなみに、実際の RCX コントローラも H8 チップを使っています。

実験

 実験を進めていく,おおまかな流れを説明します.本実験は一人で行います.最初に,電子部品のはんだ付けを行います.次に,アセンブリ言語によるプログラムの作成を行います.そして,最終的に MINDSTORMS を使用して作成するロボットの動作設計を行い,作品の発表をします.

電子部品のはんだ付け (1 回)

アセンブラのインストール (0.5 回)

アセンブリ言語によるプログラム作成 (3.5 回)

マインドストームによるロボット作成&実際に動かす (1.5 回)

発表 (0.5 回)

となっています.第一回目の実験は

  • 電子部品のはんだ付け

です.最初の週からすぐ始めますから,開始時間に遅れないように来てください.

毎回、WWWサイトに掲載されている教材を利用して講義を進めます。特に第二回目の最初に、アセンブリ言語でのプログラミングに必要なアセンブラとその関連のソフトウェアをインストールします。毎回LANケーブルを必ず持参してください。

実験

まず,最初に工具箱の中にあるものを工具箱の中にある工具リストを用いて確認をします.

工具箱に入っているもの (工具箱の中にあるソフトカードケースの部品表を参照)

はんだごて×2,こて受け×2,部品固定台×2,ゴーグル×2,ラジオペンチ×1,ワイヤストリッパー×1,ニッパー×1,ドライバ×1,デジタルマルチメーター×1,ワイヤ×1,マスキングテープ×1,はんだ×1,はんだ吸い取り線×1,

次に,パーツ用袋の中に表 1 . 1 にある機材・部品が用意されているかを確認します.表 1 . 1 の下の図 1 . 2 に部品図を載せているので,それを参照してください.なお,表および図中の用語(テクニカルターム)については,付録を参照してください.部品を照らし合わせ,欠損の有無を確認してください.

表 1.1 H8 CPU ボードセット部品表

・ H8CPU ボードの作成

図 1 . 6 は H8CPU ボード,図 1 . 11 は H8CPU ボード完成図,表 1 . 1 は H8CPU ボードセット部品表です.

表 1 . 1 の部品表と図 1 . 11 の完成図をよく見て付け間違いのないように気をつけて下さい.

ここでは,はんだ付け作業に便利なように表 1 . 1 を再度,掲載しています .

はんだ付けが終了したら,動作確認を行うため TA に確認作業をしてもらって下さい.

表 1.2  H8CPUボードセット部品表

>

品名

型番

員数

実装図・記号・番号

チェック欄

PCボード

15020010001

1

   

モータードライバ

TA8429H

4

DRV1,DRV2,DRV3,DRV4

 

3 端子レギュレータ

TA7805S

1

U4

 

LED( 緑Φ 3)

MPG3864X

1

LED3

 

LED( 赤Φ 3)

BR3864X

10

LED1,LED2,LED101-LED108

 

ダイオード(リード)

1SS133

9

D2,D4,D5,D6,D7,D8,D9,D10,D11

 

電源ジャック

J-184A

1

J1

 

ケーブルコネクタ

DF1B-3P-2.4DSA

5

J3,J8,J9,J10,J11

 

ケーブルコネクタ

DF1B-2P-2.5DSA

4

J4,J5,J6,J7

 

40ピンレセプタブル

秋月ピンソケット 40P

1

J12

 

プッシュSW( 赤 )

SKHHBYA010

1

SW4

 

プッシュSW( 黒 )

SKHHBVA010

4

SW0,SW1,SW2,SW3

 

トグルSW

秋月トグルSW

2

SW5,SW6

 

セラミックコンデンサ(リード)

RPEF11H104Z (0.1u/50V)

12

C7,C8,C18,C19,C21,C23,C25,C27,C29,C30-C32

 

電解コンデンサ(リード)

UVR1V100M (10u/35V)

6

C17,C20,C22,C24,C26,C28

 

カーボン抵抗 ( リード )

1kΩ(茶黒赤金)

1

R19

 

カーボン抵抗 ( リード )

2kΩ(赤黒赤金)

10

R11,R16,R101-R108

 

カーボン抵抗 ( リード )

10kΩ(茶黒橙金)

9

R1,R12,R13,R14,R15,R24-R27

 

LED ボード

 

1

   

40pin ヘッダ

秋月ピンヘッダ

1

J101

 


専用基板 AGU-IT-EXP-I 15201001A …1枚


DRV1-DRV4: モータドライバ(TA8429H) …4個

U2: 三端子レギュレータ (TA7805S) …1個

LED3: LED (緑)…1個

LED1, LED2, LED101-LED108: LED (赤)…10個

D2, D4-D11: ダイオード(透明黄帯)…9個

J1: コネクタ(電源用)…1個

J3, J8-J11: コネクタ(白・三本足)…5個


J4-J7: コネクタ(白二本足)…4個


: ピンソケット(40pin ) …1個


SW4: スイッチ(ボタン赤)…1個


SW0-SW3: スイッチ(ボタン黒)…4個


SW5,SW6: トグルスイッチ(切り替え)…2個

C7, C8, C18, C19, C21, C23, C25, C27, C29 - C32: 積層セラミックコンデンサ (0.1 μ F) (水色)…12個

C17, C20, C22, C24, C26, C28: 電解コンデンサ (10μF,35V) …6個

R19: 抵抗 (1KΩ) (茶黒赤金)…1個

R11, R16, R101-R108: 抵抗 (2KΩ) (赤黒赤金)…10個

R1, R12 - R15, R24 - R27: 抵抗 (10KΩ) (茶黒橙金)…9個

LEDボード…1枚

ピンヘッダ(24pin) …1個(40pinのものを切断して24pinにする)

図 1.2  部品図

抵抗値の読み方

ここでは,抵抗値の読み方を説明します.抵抗は見てわかる通り,本体に様々な色の線が 4 本印刷されています.抵抗はこの線によってその大きさと精度をあらわしています.これは,誰が見てもわかるように色ごとに約束を設けています.

 抵抗値の読み方は

  1. 抵抗の色帯の一番右側(第四色帯)を金,または銀にして見ます.
  2. カラーコードから,第一色帯と第二色帯で 2 桁の数字を決めます.
  3. 第三色帯の数字をかけて,桁を決めます.
  4. 第四色帯は誤差を表します.


茶黒橙金の場合

金の色帯があるので,これを一番右側(第四色帯)にして見ます.

第一色帯は茶,第二色帯は黒なので,それぞれ 1 , 0 を表します.よって, 2 桁の数字は 10 を表します.

第三色帯は橙なので,× 1000 を表します.よって, 10 × 1000 = 10000 Ω= 10 kΩと決まります.

第四色帯は金なので,誤差は 5 %とわかります.ここでの誤差範囲は 9.5 〜 10.5 kΩとなります.

茶黒 橙 金

↓↓ ↓

10×1000=10000Ω=10kΩ

表 1.2  抵抗値の読み方(カラーコード)

第一色帯

第二色帯

第三色帯

第四色帯

 

0

0

x1

-

 

1

1

x10

1%

 

2

2

x100

2%

 

3

3

x1000

-

 

4

4

x10000

-

 

5

5

x100000

-

 

6

6

x1000000

-

 

7

7

x10000000

-

 

8

8

x100000000

-

 

9

9

x 1000000000

-

 

-

-

-

5%

 

-

-

-

10%

エクササイズ 1

次の抵抗の値はいくらでしょう?


橙橙赤金

  1. 2.2Ω(精度 5% )
  2. 1kΩ(精度 10% )
  3. 3.3kΩ(精度 5% )
  4. 10kΩ(精度 5% )
  5. 77kΩ(精度 10% )

エクササイズ 2

200 Ω(精度 5% )の抵抗はどんな色が印刷されているでしょう?

  1. 茶緑黒金
  2. 赤橙青金
  3. 緑緑紫銀
  4. 赤黒茶金
  5. 白銀黄銀

ソフトウェアのインストール

ネットワーク上にアップしてあるソフトウェアをインストールします.第二回の授業でソフトウェアのインストールを行いますので.ノートパソコンと

LANケーブル

を忘れずに持ってきてください.

ソフトウェアの内容は,

  • アセンブリ言語でのプログラミングに必要なアセンブラとその関連のソフトウェア
    ( A38H.EXE , L38H.EXE , C38H.EXE )
  • ROM ライターソフトウェア( Writer フォルダ)
  • プログラミングの際に必要なターミナルソフト( Tera Term Pro )

です.


[山口研究室] <back | index | next >