ハードウェアの基礎:マイクロコントローラーとは正確には何ですか?

基本的なレベルでは、マイクロコントローラーはほんの小さなコンピューターです。

しかし、「小さなコンピューター」であることは、私たちに多くを教えてくれません。それでは、さらに深く行きましょう。多くの人がマイクロコントローラーをArduinoと関連付けています。ただし、Arduinoはマイクロコントローラーではないことを指摘することが重要です。Arduinoは、ソフトウェアとハ​​ードウェアにまたがる完全なプラットフォームです。

ArduinoはArduinoUnoのようなデバイスを製造しています:

ArduinoUnoもマイクロコントローラーではありません。これは、AtmelATmega328Pマイクロコントローラーをベースにしたブレイクアウトボードです。

Atmelマイクロコントローラーは次のようになります。

初心者として、Atmelマイクロコントローラーだけを持っているとしたら、それはあまり役に立ちません。これがブレイクアウトボードの出番です。

ブレイクアウトボードは、マイクロコントローラーのピンをより大きなデバイス(Arduino Unoなど)に「ブレイクアウト」します。この大きなデバイスにより、マイクロコントローラーが使いやすくなります。

Arduino Unoの場合、ブレークアウトボードを使用すると、USBコードを挿入したり、電源を入れたり、デバイスをプログラムしたりすることができます。

ブレイクアウトボードがなければ、初心者にとって、これは困難な作業になります。この問題がArduinoが存在するまさにその理由です—ハードウェアについて非常に簡単に学ぶことができるようにするためです。

ああ、それはラズベリーパイのようなものですか?

まあ、完全ではありません。ArduinoとRaspberryPiはどちらも、定義上、依然としてコンピューターです。しかし、RaspberryPiはシングルボードコンピューターと見なされます。シングルボードコンピューターは、単一の回路基板上に構築された完全なコンピューターです。

ラップトップも技術的にはシングルボードコンピューターであり、強力なコンピューターです。Raspberry Piは、ラップトップにある同じハードウェアのシンプルなバージョンです。ラップトップがオペレーティングシステム(Windows、Mac、またはLinux)を実行しているのと同じように、RaspberryPiはLinuxオペレーティングシステムを実行します。

ここで、マイクロコントローラーに戻ります。マイクロコントローラーはオペレーティングシステムを実行できません。マイクロコントローラーには、ほとんどのシングルボードコンピューターと同じ量の計算能力やリソースもありません。

マイクロコントローラは、完全なオペレーティングシステムではなく、1つのプログラムだけを繰り返し実行します。我々は、彼らが唯一の二つの機能を必要とするので、Arduinoのプログラムでこれを見ることができますSetuploopSetup一度loop実行され、無期限に実行されます。

それで、マイクロコントローラーとは何ですか?

マイクロコントローラは、低メモリでプログラム可能な入力/出力周辺機器を備えた小型コンピュータです。

入力/出力

ご存知かもしれませんが、コンピューターのすべては、最終的にはバイナリ(0または1)で始まります。

入力は、マイクロコントローラーがバイナリーを読み取ることを意味します。入力の例はセンサーです。

出力は、マイクロコントローラーがバイナリを送信することを意味します。出力の例は、モーターまたはLEDを制御することです。

なぜマイクロコントローラーが必要なのですか?

さて、今日あなたが知っているコンピューターのアイデアにたどり着く前は、これらは「コンピューター」でした。一部のコンピューティングタスクは非常に簡単で、単純なロジックを必要とするため、マイクロコントローラーは立ち往生しています。たとえば、スイッチを切り替えたり、LEDライトなどの小さなコンポーネントを制御したりする場合、メールの送信などの日常的なタスクに必要なリソースと同じリソースは必要ありません。

低電力で低メモリで低コストになるため、今日使用しています。マイクロコントローラーは、モノのインターネットが今日可能で成功している理由の一部です。

どうすれば入手できますか?

どのマイクロコントローラーを入手するかは、解決する問題によって異なります。オンとオフを切り替えたり、センサーを読み取ったりするなど、簡単なことをしている場合は、ほとんどすべてのマイクロコントローラーで実行できます。

ゲームをプレイしたり、より複雑なアイデアを持ちたい場合は、より多くの計算能力が必要になるため、RaspberryPiなどのシングルボードコンピューターに移行する必要があります。

AdafruitとSparkfunの両方に、すばらしいキットとハードウェアがたくさんあります。彼らのチュートリアルを利用することもできます。

Losantにはいくつかのクールなキットもあります。独自のドアセンサーを構築することもできます—ドアが長時間開いたままになっているときに通知されます。

解決したい特定の問題がない場合は、ハードウェアをいくつか入手して試してみてください。

始めるために購入できるものは次のとおりです。

1.NodeMCUと呼ばれるボード。

NodeMCUは、ESP8266マイクロコントローラーをベースにしたボードです。このボードは安価でWiFiが有効になっているので特別です。アマゾンでは約8.79ドルで、イーベイではさらに安くなります。

すべてのマイクロコントローラーがWiFi対応であるわけではありません。これがこのデバイスで構築できる多くのプロジェクトへの扉を開くという事実。たとえば、データを収集してクラウドに送信できます☁️。

2.いくつかのセンサーが必要になります

センサーなしでハードウェアを持つことはできません。センサーはあなたにあなたの周りの環境と世界を検出する能力を与えます。また、学習のための優れたツールでもあります。

3.ブレッドボードとジャンパーワイヤーが必要です。

センサーとマイクロコントローラーを一緒に接続するには、それらをブレッドボードに接続し、ジャンパー線を使用して接続する必要があります。

覚えておいてください:eBayとAliExpressではすべてが安いです。発送まで数週間待つ必要があります

何を作ればいいですか?

繰り返しになりますが、これを十分に強調することはできませんが、プロジェクトを念頭に置いて開始する方がはるかに簡単です。マイクロコントローラーとは何か、そしてマイクロコントローラーの入手方法を理解したところで、あなたの周りの世界を別の視点から見てみましょう。あなたは何をコントロールできますか?何を自動化できますか?これらの質問に答え始めると、プロジェクトが見つかります。

プロジェクトについて考えている間、ハックスターはあなたの親友です。Hacksterには大量のESP8266プロジェクトといくつかのクールなArduinoプロジェクトがあります。

たとえば、子供の頃の夢を生きることができます。

ロボットを作ることもできます。

重要なのは、アイデアが必要なだけです。

現実世界のプログラミングは、仮想世界のプログラミングよりも楽しい場合があります。

次は何ですか?

マイクロコントローラーはほんの始まりに過ぎません。探索するハードウェアの世界があります。ハッピーハッキング??

参考文献:

Arduinoの絶対初心者ガイド

仕事からのクリスマス休暇の間、私は何か新しいことを学びたかった。私はしばらくの間Arduinoに注目してきました、そして… forefront.io

Taron Foxworthは、ハードウェアハッカーであり、Losantの開発者エバンジェリストです。彼の目標は、人々が学び、愛し、刺激を受けるためのテクノロジーを翻訳することです。