Arduino入門:オープンソース・ハードウエアの名機 Arduino

Arduino(アルドゥイーノ)は、ワンボードマイコンの一種で、オープンハードウエアとして設計データが公開されています。また、Arduino IDEと呼ばれる統合開発環境を誰でも無料で入手する事ができ、簡単に開発を始める事ができます。

Arduino Uno Rev.3
【Amazon】Arduino Uno

Arduinoとは?

Arduinoは、ハードウェアと開発用ソフトウェアで構成されるオープンソースの電子プロトタイピング・プラットフォームで、プロジェクトは2005年にイタリアで始まりました。元々は、アーティスト、デザイナー、ホビイスト、そしてインタラクティブな物や環境を作りたいと人を対象としていましたが、今日では、企業の技術者にも広く利用されています。

現在、主流のハードウエアは、Aruduino UNO(Rev.3)と呼ばれる基板で、開発環境の最新版は、1.0.6になります。その特長を簡単に整理してみましょう。

ハードウエアの特長
・Atmel社のマイコン、ATmega328Pを搭載したマイコンボード
・ピン位置が決まっており、シールドと呼ばれる拡張基板が接続可能
・USBシリアルでパソコンと通信可能
・USB経由で、ファームウエアの更新が可能
・Windows、Mac、Linuxに対応

ソフトウエア(開発環境)の特長
・Javaで開発されており、Windows、Mac、Linuxに対応
・プログラムはC言語風のArduino言語で記述し、Stetchと呼ばれる
・抽象化が進んでおり、初学者や未経験者でも短時間で習得可能

以上をまとめると、
(1)オープン・ハードウエアにして、シールド(拡張基板)の普及を容易にした点
(2)各OSで利用可能なフリーの開発環境
(3)高度に抽象化され習得が容易なプログラミング言語
(4)USB経由でファームウエアの書き込みができ、ライタが不要
などが支持されている大きな理由と言えます。

Aruduinoのメリットとデメリット

この様に元々、Arduinoは、エンジニアをメインターゲットにはしていませんでしたが、近年では企業の開発現場での利用も進んでおり、全体の利用者に占める企業の利用割合は、20%以上とも言われています。そこで、技術者が利用する際のメリットとデメリットを見ていきたいと思います。

ハードウエアのメリット
・シールドと呼ばれる多種多様な拡張基板が入手可能
・ライタ無しで開発可能
・3,000円程度で入手でき安価

ハードウエアのデメリット
・ATmega328P系のマイコンにターゲットが限定される

ソフトウエア(開発環境)のメリット
・Windows、Linux、Macの各OSに対応した開発環境が無料
・多数のドライバや設計リソースが公開されており入手可能

ソフトウエア(開発環境)のデメリット
・デバッガに未対応
・コンセプト上、複雑なシステムの開発には向いていない

まとめ

以上、Aruduinoについて特長などを説明してきましたが、趣味に留まらず開発現場においても、次の理由から、ラピッド・プロトタイピングに非常に役立つ開発アイテムになっています。

(1)多種多数のシールド(拡張基板)を利用が可能
実に豊富なシールド(拡張基板)が各社から販売され流通しており、一種のエコシステムを構成しつつあります。他社も、この状況を無視できなくないつつあり、LPCXpresso V2などでは、Arduinoシールドを利用できる互換ピンが配されています。センサーやモーター駆動、無線関連など様々な周辺デバイスを低コストで試せる事が大きな魅力と言えます。

(2)ドライバ等の設計リソースが利用可能
Sketch(Arduino言語)自体は、高度に抽象化されていますが、実際は、AVR GCC C/C++上に構築されています。これに、Wiringという電子プロトタイピング・プラットフォーム向け開発環境と、ArduinoのSketch記述用の関数群を加えてパッケージングしたものが、Arduino IDEとなります。この様に、Arduino言語自体は、フレームワーク的な要素が強いと言えます。それ故に、Arduinoでは、C言語の全構造と、C++の一部機能をサポートし、AVR Libcにリンクされており、その関数を利用する事が出来ます。 また各種ドライバ等のリソースも、C/C++で記述されているものも多く、C/C++言語ベースでの利用が可能となっています。つまりは、知識さえあれば、実質的に、GCC C/C++の開発リソースとして利用する事が可能です。

この様に、Arduinoは、開発現場のエンジニアにも利用価値が非常に高いものになりつつありますので、easy laboでは、使用方法やノウハウを今後、順次取り上げて行きたいと思います。
日本においては、Arduinoの一般的な知名度は未だ高くありませんが、世界的には最も成功したオープンハードウエアの一つとして認識されており、出荷台数も近年、大幅に増加しています。また今後は、その導入の容易さから、教育現場での採用も、更に加速していく事が予想されます。

→その他のArduino関連情報

Sponsored Link