コンピュータを構築するとき、私はS100ボードのバッチを使用したことを覚えています。 これらは、ラックを取っても、プログラミングのためのトグルスイッチやライトの束を含むかもしれない8ビットマシンでした。 これらの日は、あなたの手に収まるボードを始めることができます。
三つのプラットフォームは、サポート、ソフトウェアとハードウェアのサポートの多くを意味する重要な以下を生成しています。 これらには、Arduino、Raspberry Pi、BeagleBoneが含まれます(図1)。 1). 右上の小さなボードは、Arduinoのためのワイヤレス拡張ボードです。 それはより大きいDigilent板対基本的なArduinoのプラットホームに類似している。 これらは、オープンソースソフトウェアでサポートされているオープンソースのハードウェアプラットフォームです。

各プラットフォームのハードウェアは、ソースの広い範囲から利用可能です。 ソフトウェアは、単純なシリアルポートからMicrosoft Kinectのような3Dセンサーにすべてをサポートするさらに多くのソースから入手できます。 これらのプラットフォームは、組み込み開発に慣れていない人や、アプリケーションを開発したり、最新のハードウェアをチェッ
目次
- Arduino
- ラズベリーパイ
- BeagleBone
- そして勝者は?
Arduino
Arduinoプラットフォームはかなり長い間存在しています。 It started with an 8-bit Atmel AVR processor but the platform has since expanded to include processors from Microchip’s 32-bit MIPS-based solution in Digilent’s chipKIT (Fig. 2) to the Arduino DUE (Fig. 3) is based on Atmel’s SAM3X8E Cortex-M3 microcontroller.


- Shielding Arduinos
- PIC32 Arduino Modules
The two things Arduino platforms tend to have in common are Arduino shields and the software development tools. 3つのプラットフォームのうち、Arduinoはディスプレイが必ずしもソリューションの一部ではないため、組み込みプラットフォームに最も近いものです。 同様に、ソフトウェアは、多くの場合、オペレーティングシステムの任意の種類なしでやって低レベルです。 当初、マイクロコントローラの性能はサポートできるものに制限されていましたが、Arduinoプラットフォームを支配する32ビットマイクロコントローラの最新の作物は、オペレーティングシステムを処理することができます。
標準のArduinoソフトウェア開発環境は、組み込みプログラミングを教えることを対象としています。 それはスケッチと呼ばれるソフトウェアとの独自の用語を持っています。 基本的には単純なIDEを備えたCですが、基本8ビットAVRと基本Cサポートから大幅に進歩しました。
ほとんどのプラットフォームは、マイクロコントローラベンダーとそのサードパーティのサポートからプロのツールを含む複数の開発ツールをサポートしています。 いくつかのツールは無料です。 課題の一部は、Arduino shieldsのほとんどのソフトウェアがArduino開発環境を対象としているため、ハードウェアサポートを管理することです。ほとんどのI/OはArduino shieldsを介して処理されます。 コネクターは板のほとんどを鳴らし、ほとんどの板がそれらを差し込むことによって使用されるようにします。 すべてのプラットフォームの課題の一部は、複数のボードが使用されているときにI/Oがどのようにマッピングされるかです。 たとえば、I2Cは多くのデバイスをサポートできますが、各デバイスには独自のI/Oが必要です。
Arduinoのシールドフォームファクタの数は、いくつかの独自の実際にあります。 初期のArduinoプラットフォームは、最も基本的なバージョンを定義します。 拡張されたバージョンでは、より新しいArduino互換プラットフォームで使用される高性能マイクロコントローラで利用可能なより多くのi/Oを公開すI/Oソフトウェアのサポートが問題になる可能性があります。
通常、Arduino開発環境では基本的なCサポートが提供されます。 ワイヤレスモジュールのようなデバイスのより高度なサポートは、よりホスト固有の傾向があります。 すべての組み合わせが一緒に動作するわけではありませんが、ハードウェア/ソフトウェアの組み合わせを考えることができれば、Adrduinoの組み合わせ
Raspberry Pi
Raspberry Piプラットフォームは、Element14のような企業から入手できます。 これは、Linuxを実行することができる低コスト、高性能プラットフォームであるように設計されました。
$35モデルB(図。 4)512メガバイトにメモリの量を倍にします。 700MHzのBcm2835にはARM1176JZF-Sコアが搭載されています。
- ホットラズベリーパイ
- OuyaはKickstarter経由で9 99ゲームコンソールをもたらします
ストレージ用のsdカードは、通常、raspian、arch、debian、Fedoraなどのlinuxバリアントの数のいずれかを実行します。 また、RISC OS、FreeBSD、NetBSDを実行し、誰かがPlan9を実行するようになりました。このボードはUSBと10/100Ethernet(Model B)をサポートしています。 それはHDMIの表示、コンポジットビデオまたはLCDのパネルを運転できる。 それはカメラの入力のためのCSIの関係を有する。 それはHDMIオーディオだけでなく、I2Sと3.5mmジャックを持っています。 これらのボードは、モデルAとBに対してそれぞれ5Vで300mAと700mAを必要とします。
ラズベリーパイは、GPIO、シリアルポート、SPI、I2C、I2S、3.3Vと5Vを持つ単一の拡張ヘッダを持っています。 Raspberry Piには2つの取り付け穴がありますが、他のほとんどのボードのようにコーナーにはありません。 あまりにも利用可能なケースの数があります。Raspberry Piの最大の利点の1つはソフトウェアです。 その低コストと可用性は、多くの関心と一致するソフトウェアの多くを生成しています。
BeagleBone
BeagleBoneプラットフォームはRaspberry Piに似ています。 これは、Linuxを実行し、その基本的なパッケージの一部として、イーサネット、USBおよびグラフィッ それは今BeagleBone Blackと呼ばれる新しい化身を持っています(図。 5). この$45バージョンには2Gbyte eMMCがあるため、すぐに使用できるソフトウェアが付属しています。 また、Raspberry Piや元のBe89BeagleBoneのようなmicroSDソケットもあります。 後者はMicrosdカードにArchLinuxが付属していました。

- SparkFunのエンジニアリングディレクターとのインタビュー
- Design Westのリトルボードとリトルモジュール
Beaglebone Blackは、テキサスインスツルメントのAm335X1ghz ARM Cortex-A8に基づいています。 3Dグラフィックスアクセラレータ、NEON浮動小数点アクセラレータを持ち、実際には32ビットマイクロコントローラであるプログラマブルリアルタイムユニット(PRU)のペアも含まれている。 Cortex-A8は、Raspberry PiのARM11と比較してパフォーマンスが優れているデュアルの問題、スーパースキャラプラットフォームです。 ボードには、イーサネット、HDMI、USBコネクタがあります。それは箱から出して動作する一つのプラットフォームであるため、私は全体的なBeagleBoneパッケージに本当に感銘を受けました。
必要なのは、USBと比較的新しいOSを搭載したPCだけです。 後者は、USB接続を介してRNDISネットワークサポートを提供するために必要とされます。基本的には、USBケーブルをPCとBeagleBone Blackに差し込みます。 BeagleBone BlackはUSBフラッシュドライブとして表示されますが、ネットワーク接続も行います。 これはBeagleBone Blackで実行されているwebインターフェイスを提供します。 PC上のwebブラウザは、フラッシュドライブ上のHTMLファイルで始まりますが、それはwebインターフェイスにリダイレク
webインターフェイスは、実際にはWEBベースのSSHインターフェイスに加えて、webベースのIDEとツールセットを提供します。 私はBeagleBone blackが提供するもののすべての詳細に入るわけではありませんが、それは印象的です。 これは、eMMCフラッシュを使用する利点です。
BeagleBone Blackは、元のBeagleBoneで利用可能なcapesとも呼ばれる拡張ボードと互換性があります。 これらはBeagleBoneの両側の46ピンヘッダーのペアを使用します。 これらは、CAN、SPI、I2Cを含むマイクロコントローラのI/Oへのアクセスに加え、USB-シリアルおよびUSB-JTAGインタフェースへのアクセスを提供します。 システムには4つの取り付け穴もあります。
そして、勝者は?
Okです。 私はワッフルし、選択はあなたの背景と要件に本当に依存していると言うつもりです。 あなたはCと組み込みプログラミングを学ぶために探しているなら、それはハードウェアの近くにあなたを置くので、Arduinoは良い選択です。 また、多くのベンダーがArduino拡張ボードを利用できるボードを提供しているため、マイクロコントローラを評価する良い方法も提供します。
Linuxやオペレーティングシステムで動作するソフトウェアが必要なものであれば、Raspberry Pi、BeagleBone、またはそれらの変種のいずれかがおそらくより良い選択です。 同様に、頑丈な表示か可聴周波雑用はこれら二つのプラットホームによってより容易に扱われる。ベースプラットフォームとして、私はBeagleBone Blackに向かって傾く。 オンボードのeMMCは高速で効率的です。 メモリは限られていますが、ほとんどのプロジェクトでは十分です。 私はまた、組み込みの開発ソフトウェアに非常に感銘を受けています。 いくつかのROS(robot operating system)の作業では、Raspberry Piのサポートが優れていることがわかりました。
最近本当に興味深いのは、これらのプラットフォームが他のデザインにどのように影響しているかです。 例えば、UDOO(図4)。 6)は、Arduinoの拡張フォームファクタとRaspberry Piの機能、そして本質的にBeagleBoneを組み合わせたKickstarterプロジェクトです。 これは、Arduino DueにあるAtmel Cortex-M3から始まるデュアルプロセッサソリューションです。 また、デュアルコアまたはクアッドコアフリースケールI.MX6を持っています。

あなたがシステムを使用する予定の作業の種類は、あなたが選択するプラットフォームに間違いなく影響します。 ソフトウェアとグラフィックスがあなたが望む場所にある場合は、NVidia Tegra3に基づいて、NVidia99Ouya(Kickstarter経由でOuyaがGame99ゲームコンソールをもたらす参照)のような他の代 これは、Androidを実行し、WiFiとイーサネットサポートを持っています。
コメントを残す