HOME >> 鉄道模型自動運転システム >  システムの構成要素 コンピュータ

システムの構成要素 コンピュータ

 システムの構成要素として、制御の頭脳となるマイコンと呼ばれているコンピュータについて紹介する。 まず最初に、一口にマイコンと呼ばれているものに対して、Z80 時代の曖昧な知識しかなったので、この際に整理しておくことにした。

 

■ マイコンの種類

 ワンチップマイコン
マイコン(マイクロコンピュータ)の一種で、ひとつの IC チップ上に CPU から RAM、 ROM、各種入出力装置などを搭載した処理装置のこと。 ワンチップマイコンは、汎用的な処理を行うことはできないが、小さな IC 回路のみで特定機能の処理を一手に行うことができる。 このため、コンピュータ制御を必要とする装置の多くに組み込まれている。 炊飯器や自動車の制御システムに採用されていたり、あるいはマウスやキーボードにおける入力情報の制御などにもワンチップマイコンが用いられている。
 
 ワンボードマイコン
むき出しの一枚(ワン)のプリント基板(ボード)の上に、電子部品と最低限の入出力装置を付けただけの極めて簡素なマイクロコンピュータである。 汎用的な OS を搭載せず、Cや C++などの機械語に近い言語のコードをコンパイルして、マイコンに書き込む形態のものを指す。 Arduino などが有名である。
 
 シングルボードマイコン
ワンボードマイコンと同様の構成であるが、OS を搭載して軽量プログラミング言語が利用できる上に、グラフィカルユーザインタフェースが使え、ウェブブラウザなどが動作したりといった日常的なパソコンの用途に実用的に使える機能を有している。  さらに、GPIO などの I/O インターフェースを備え、高性能・高機能なワンボードマイコンとしての利用も可能である。 シングルボードコンピュータが広く認知されるようになったのは、2012 年登場の Raspberry Pi の大ヒットによる。 OS として主に Linux が採用されている。
 

■ Arduino を使う

  .

 アナログやデジタルなど、色々な入出力端子を備えたワンボードマイコンである。 センサやアクチュエータとは容易に接続できき、プログラムはパソコン上で記述し、USBを使ってArduino本体に転送して使用する。

 スケッチと呼ばれているプログラムは簡単な記述方法で、習得も容易である。 また、USBを取外した設定後では、汎用的なOS を搭載していないため、電源投入と共にすぐに始動するなど、鉄道模型の自動制御には取り扱いやすいマイコンである。

 

  .

 Arduino(アルドゥイーノ)は、AVRマイコン、入出力ポートを備えた基板、C++風のArduino言語とそれの統合開発環境から構成されるシステム。  Arduino LLC および Arduino SRL (イタリヤ)が設計・製造を行い、登録商標を持っている。

 種類は、ワンボードコンピュータ であり、プロセッサーとしてはAVRマイコンを搭載している。

 

 ハードウェア:

  .

 基板上には、Atmel AVR マイクロコントローラ(ATmega8, ATmega168, など)を中心とした回路があり、5Vシリーズレギュレータと水晶振動子、RS-232シリアル接続として使用するUSB、および、デジタルとアナログのI/O端子を持つ。 現在の主要モデルは UNO である。
 また、追加回路を構成するために、Arduino の上に積み上げて構成する基板をシールドと呼ばれているが、各種のシールドがArduino およびサードパーティーから発売されている。 外部との通信は、専用のシールドを使用して実施することも出来る。

 

 ソフトウェア:

 Arduinoの統合開発環境 Arduino IDE はクロスプラットフォームのJavaアプリケーションであり、エディター、コンパイラー、基板へのファームウェア転送機能などを含む。 その内部ではC言語のコンパイラーgccや、アップロードプログラムavrdudeが使用されている。 開発環境は Processing ベースで、ソフトウェア開発に不慣れなアーティストでも容易にプログラミングできるよう設計されている。 プログラミング言語は Wiring から派生したもので、C言語風の構文で制限の多い基板向けに最適化されている。 Arduinoではプログラムをスケッチと呼ぶ。パソコンにインストールしたArduino IDEを使用してプログラムを作成し、コンパイルしたデータを接続したUSBケーブルでArdunoに転送する。

 

■ PICマイコンを使う

  .

 一つの集積回路(IC)上に必要な機能が詰め込まれているので、小さなスペースでも組み込むことが可能なマイコンである。 コンパクトに構成できる反面、このPICを使いこなすには多少の勉強と努力が必要である。 通常は電子回路基板に組み込んで使用する。

 

 PIC(ピック)とは、Peripheral Interface Controllerの略称であり、マイクロチップ・テクノロジー社 (Microchip Technology Inc.) が製造している ワンチップマイコン 製品群の総称である。  PICにはCPUメモリ (RAM, ROM)、I/Oなどが1チップに収められており、ROMに書き込まれたプログラムにより制御される。8ビット、16ビット、32ビット系に加え、色々な命令体系があり、その種類は多様化している。


 開発環境:
 開発に必要な道具としてはパソコンとPICライタ、および開発環境ソフトとライタソフトが必要である。 ワンチップマイコンの開発環境は、電気メーカや自動車メーカなど専門メーカでは開発には必須の機器なので、高価で便利な機器を揃えている。 しかし、アマチュア工作には、簡単で安く揃えられるPIC専用の道具を揃えておくことをお勧め致します。

 まず、パソコンとつないで、プログラムをPICマイコンに書き込む道具として、マイクロチップ社から発売されている PICkit を使います。 現在のバージョウンは PICkit4 ですが、自分は PICkit3 を使用しています。 また、PICマイコン への書き込みは、オンボード書込みと言ってPICマイコンを基板に装着したままで書き込みも出来ますが、書込みアダプタとして発売されているものを使うので便利です。 多くの種類のPICマイコンに対応していることと、プログラム修正の場合には、PICマイコンをだけを装置から取り出し、パソコン環境に接続したこの道具を使ってプログラム修正が出来るので重宝しています。


     PICkit3 と書込みアダプタ                     PICkit3 と書込みアダプタを使ってPICマイコンに書き込んでいる状態

 プログラム修正は、多くの場合は、システムに合わせて閾値などの設定値を変更するチューニングと言われる作業が必要で、これによってシステムの完成度を高める作業を実施します。 このため設定値の調整のために頻繁に実施する作業で、PICマイコンの取外しと書込み作業が容易であることは必要な要件です。

 

 ソフトウェア :

 PICの開発環境としては、専用のソフトが用意されている。 統合開発環境と呼ばれているソフトウェア MPLAB IDE をマイクロチップ社から無料でダウンロードして使用します。 記述するプログラムは、アセンブラと呼ばれる記述方法と、C言語による記述方法があり、C言語を使用する場合には、C言語をコンパイルする Cコンパイラ ソフトが別に必要です。 

 鉄道模型の自動運転では、殆どがシーケンス制御なので、アッセンブラ言語による記述で容易に対応できます。 信号を HIGH または LOW にしなさいという実施命令、プログラムを飛ばしなさいという GO TO 命令、ある信号を判断して YES か NO の結果によって実施するプログラムを指定する判断命令などを組み合わせて記述して行きます。 従ってシーケンス制御のフローチャートが記述出来れば、プログラムは出来上がったようなものです。

 アッセンブラ言語はマイコンの基本的作動を理解する上でも参考になりますので、一度は挑戦してみる価値があります。

 ただし、掛け算や割り算などを含むプログラムの制御を実施する時は、これらを記述する命令が無いのでC言語での対応が必要となります。

 

ページトップへ戻る .


 2019/8/16 作成