マルツTOP > APPLICATION LAB TOPページ > おすすめ技術記事アーカイブス > 使いやすいArduino Starter Kitでメイカーの世界を体験しよう
使いやすいArduino Starter Kitでメイカーの世界を体験しよう
著者 Art Pini 氏
Digi-Keyの北米担当編集者 提供
2019-06-25
マルツ掲載日:2019-09-24
「メイカー」、すなわち周囲の環境を知覚し、そうした環境に対応するためのデバイスを構築する方法を学びたいと思っている人々に対して、実に多数のリソースが提供されています。つまり、エンジニアもそれ以外の人も対象とした創造性に富んだサブカルチャーが存在しており、そこでは誰もがエレクトロニクス、制御システム、マイクロコンピュータ、センサ、およびアクチュエータの世界について学習や指導に参加することができるのです。
この世界を初めて体験するのに最も簡単な方法の一つが、メイカーのアイコン的存在であるArduinoのスターターキットを利用することです。
Arduinoは、オープンソースハードウェアとソフトウェアコミュニティを対象に、マイクロコントローラボードおよび関連ソフトウェアを販売しています。これらの電子回路基板では、マイクロコントローラとそれをサポートするRAM、ROM、ICが組み合わされた、オープンソースのエレクトロニクス試作プラットフォームが、定評ある一連のメイカープロジェクトを完成するのに必要なあらゆるコンポーネントを使用して構成されています。
この記事では、執筆者(エンジニア)の個人的な経験を基に、Arduino Starter Kitについて紹介します。
Arduino Starter Kit
Arduino Starter Kitは、15のプロジェクトを稼働させるのに必要な内容がすべてそろっています(図1)。

図1:Arduino Starter Kitには、Arduino UNOマイクロコントローラボードと、厳選されたエレクトロニクスコンポーネント、そして、あらゆる人をインタラクティブなエレクトロニクスの世界へと案内するための、171ページの「Arduinoプロジェクトブック」が含まれています。(画像提供:Arduino)
このスターターキットでは、広く普及しているArduino UNOマイクロコントローラボードが使用されています。このマイクロコントローラボードは、Microchip TechnologyのATmega328Pマイクロコントローラ(図2)を基盤としています。

図2:Arduino UNOボードには、ATmega328Pマイクロコントローラをサポートするのに必要なすべてのエレメントが含まれています。(画像提供:Arduino、注釈はDigi-Key Electronicsによる)
Arduino UNOには、14のデジタル入/出力ピンがあります。そのうち6つは、LEDの明るさとサウンドの大きさを制御するパルス幅変調(PWM)に対応します。6つのアナログ入力ピンは、最大分解能における変換率が15kS/sで分解能10ビットの逐次比較型A/Dコンバータ(ADC)によってサポートされます。
内蔵のクロックは、そのクロック自体が16MHzの水晶振動子を備えています。コンピュータに簡単に接続できるように、USBポートが備わっています。電源は、USBポートを利用するか、オンボードの電源ジャックから供給することもできます。電源は自動的に選択されます。
UNOには通常のプログラミング用のブートローダが搭載されていますが、これはバイパスが可能なため、マイクロコントローラをインサーキットシリアルプログラミング(ICSP)ヘッダを使用してプログラムすることもできます。最後に、UNOボードにはリセットボタンがついており、必要に応じてデフォルトの状態に簡単に戻すことができます。
ATmega328Pプロセッサは低電力の8ビットマイクロコントローラであり、高度なRISCアーキテクチャ(図3)を使用します。RISCアーキテクチャでは、シングルクロックサイクルで実行される命令が使用されるため、極めて高い実行スループットが実現されます。

図3:Arduino UNOで使用される8ビットATmega328Pマイクロコントローラの機能ブロック図。これはシングルサイクルの命令を高速で実行する、RISCベースのアーキテクチャを備えています。(画像提供:Microchip Technology)
ATmega328Pの特長は、32KBのフラッシュプログラムメモリ、1KBのEEPROM、および2KBのSRAMなどの不揮発性メモリをセグメント形式にしたオンボードメモリです。
Arduino UNOのATmega328にはブートローダによりあらかじめプログラムが組まれており、ユーザーは外部のハードウェアプログラマを使わずに、ATmega328に新しいコードをアップロードすることができます。このブートローダは、フラッシュプログラムメモリで500バイトを占有します。チップには、UART、SPI、I2Cバスとも呼ばれる2線式インターフェースなど、複数のシリアルデータインターフェースが組み込まれています。
Arduino Starter Kitは、5か国語で利用できます。このスターターキットにはArduino UNOマイクロコントローラボードと、15の各種プロジェクトを実現するのに必要なすべての部品が含まれており、ユーザーは、171ページのArduinoプロジェクトブックの指示に従ってこれらのプロジェクトを進めていきます。このプロジェクトブックでは、Arduino UNOをすべてのプロジェクトの頭脳のように使用する、ハードウェアおよびソフトウェアの両方について説明しています。
デバイスおよび用語についてのわかりやすい説明
エレクトロニクスやプログラミングの世界を初めて探索する初心者がよく経験する問題の一つが、関連するデバイスや用語に不慣れであることです。Arduinoプロジェクトブックでは、最初にキットの各種パーツ(134の電子パーツとArduino UNOボードなど)について説明することで、この問題に対処しています。このセクションでは、各タイプの部品を図示し、その機能について説明しています。最後には、各部品の回路図シンボルが表示されています。
初心者は電子プロトタイピングボード(ブレッドボード)のことをよく理解していない場合があるため、このマニュアルには、内蔵のブレッドボードではんだ付けを行わずに部品がどのように接続されるかを説明するセクションがあります。このセクションでは、ブレッドボード上での導電バーのパターンを図示するほか、電源バスの稼働方法について説明しています。このセクションによって、キットのプロトタイピングボードを最初に使用するときの混乱を大幅に解消することができます。
このプロジェクトブックでは、一般的なパーツの説明の後にUNOボードのレイアウトの概要が続きます。この概要では、ボードの接続、インジケータ、および対話型スイッチを中心に取り上げています。このセクションでは、その後のセクションで使用されるハードウェアについての用語が定義されています。
次のセクションでは、Windows、Mac、LinuxのオペレーティングシステムにおけるArduinoソフトウェアの設定に関する基本的な手順について説明しています。使用される主要なソフトウェアはArduinoの統合開発環境(IDE)で、Arduinoのウェブサイトからダウンロードすることができます。このIDEは、Arduino UNOボードにアップロードできる実行可能コードを作成するのに使用されるソフトウェア環境です。
プロジェクトを開始する
IDEソフトウェアの読み込みの後、このガイドでは、USB接続を介してUNOボードとホストコンピュータ間の接続を確立するステップが順を追って説明されます。ユーザーにとって難しい点があった場合に備えて、ArduinoのトラブルシューティングセクションおよびIDEのリファレンスセクションへの参照リンクが用意されています。この時点から、ユーザーはプロジェクトを開始できます。
各プロジェクトには、必要な部品(各プロジェクト用に「材料」として図とともに具体的に指定されています)を選択する方法と、それらの部品をプロトタイピングボードで相互接続する方法についての詳細な指示が用意されています。たとえば、「宇宙船の操縦桿」と呼ばれるプロジェクト02では、スイッチと3つのLEDを接続して「制御盤」を作成し、スイッチを押したときのLEDの動作を決定します。
マニュアルにある各プロジェクトの紹介部分には、プロジェクト完了にかかる予測時間が記載されています。この場合は45分です。このプロジェクト02の材料リストには、押ボタンスイッチ、3つのLED、3つの220ohm(Ω)抵抗器、そして1つの10kΩ抵抗器が含まれています。この回路は、プレカットおよびストリップされたジャンパワイヤを使用して試作ブレッドボードに接続されています。このセクションでは、新しいユーザーが今後別個のプロジェクトに取り組む場合を考慮し、抵抗器のカラーコードの読み方について1ページを割いて説明しています。
図4は、プロジェクトブックと、接続された回路の画像です。このプロジェクトブックでは、配線が画像と回路図の両方で表示されています。この2つを比べることで、ユーザーは回路図の記号、部品の相互接続の解釈方法を素早く理解することができます。

図4:プロジェクトブックに掲載されている配線指示と、試作の実際の配線およびUNOボード。指示は、画像と回路図の両方で表示されています。(画像提供:Digi-Key Electronics)
プロセスの最終段階は、本プロジェクトのソフトウェア面です。Arduino UNOのATmega328Pのようなマイクロコントローラでは、機械語と呼ばれる非常に低水準のプログラミング命令が使用されます。機械語は、基本的には一連の2進数であり、内部ハードウェアを制御します。機械語を手動でコーディングする必要はありません。
プログラミングは高水準言語で行われています。高水準言語は、複数の手順を経てマイクロコントローラが理解できる2進数コマンドへと翻訳され、これによりプログラミングのプロセスが非常にシンプルになります。そのために使用されるのが、前述したArduinoに組み込まれているIDEです。
プロジェクト02では、ソフトウェアのコードに関する説明が続きます。このコードは、Arduinoでは「スケッチ」と呼ばれます。ここでは、スケッチで必要なすべての手順が取り上げられ、コードのステートメントの動作が説明されます(図5)。


図5:Arduino IDEのプログラムエディタに表示された、プロジェクト02のプログラム(スケッチ)。(画像提供:Digi-Key Electronics)
ユーザーは、コードを手動で入力することも、ファイルのプルダウンメニューからダウンロードすることもできます(図6)。

図6:Arduino IDEには、すべてのプロジェクトのスケッチが用意されています。ユーザーは、スケッチを選択することも、希望に応じてコードを手動で入力することもできます。(画像提供:Digi-Key Electronics)
コードの入力が完了したら、IDEのインターフェースにあるスケッチのプルダウンメニューから、[検証/コンパイル(Verify/Compile)]エントリを使用してコードをコンパイルすることができます。コンパイラにより、コードの構文やその他のエラーがチェックされます。コンパイルが完了すると、IDEインターフェースに完了の通知が表示され、コードがUNOボードのフラッシュプログラムメモリにアップロードできるようになります。
アップロード機能はスケッチのプルダウンメニューから開始することもできます。UNOボードがプログラミングされると、緑色のLEDが点灯します。押ボタンスイッチを押すと、緑色のLEDが消灯し、代わりに赤色のLEDが点滅します。
これらのシンプルな手順の背後には、さまざまなプログラミングの「マジック」が隠されています。たとえば、高水準のコマンドをバイナリコードへと変換してマイクロコントローラを実行するための、アセンブリ、リンク、ロードなどです。初心者がこの知識を身に付けるには時間と経験が必要ですが、この時点ではこうした知識を必要とせずに楽しむことができます。
ユーザーがスケッチを使用して実験できるようにするため、この段階でプロジェクトブックからユーザーに対してプログラムの変更方法に関するいくつかの質問が投げかけられます。プロジェクトが先に進むと、回路やプログラムはより複雑になり、ユーザーが経験や知識を広げることができるようになっています。
まとめ
オープンソースの試作プラットフォーム、さまざまな電子部品、そして使いやすいソフトウェアを備えたArduino Starter Kitには、エンジニアも、そうでない人もエレクトロニクスのメイカーの世界を体験するために必要なあらゆる内容がそろっています。
免責条項:このウェブサイト上で、さまざまな著者および/またはフォーラム参加者によって表明された意見、信念や視点は、Digi-Key Electronicsの意見、信念および視点またはDigi-Key Electronicsの公式な方針を必ずしも反映するものではありません。
免責条項:このウェブサイト上で、さまざまな著者および/またはフォーラム参加者によって表明された意見、信念や視点は、Digi-Key Electronicsの意見、信念および視点またはDigi-Key Electronicsの公式な方針を必ずしも反映するものではありません。
このページのコンテンツはDigi-Key社より提供されています。
英文でのオリジナルのコンテンツはDigi-Keyサイトでご確認いただけます。
Digi-Key社の全製品は 1個からマルツオンラインで購入できます

ODM、OEM、EMSで定期購入や量産をご検討のお客様へ【価格交渉OK】
毎月一定額をご購入予定のお客様や量産部品としてご検討されているお客様には、マルツ特別価格にてDigi-Key社製品を供給いたします。
条件に応じて、マルツオンライン表示価格よりもお安い価格をご提示できる場合がございます。
是非一度、マルツエレックにお見積もりをご用命ください。





