ESP8266はArduinoを置き換えることができますか?


15

私は愛好家で、これまでArduinoをシンプルなプロジェクトに使用してきました。次に、アドレス可能なLEDを含むプロジェクトを作成し、ArduinoでLED用のいくつかのプログラムを作成し、携帯電話で実行するものを選択します。

ESP8266は、Arduinoと話すのに適した安価なソリューションであることがわかりました。ウェブ上で検索して動作するようになると、独自のmcuがあり、Arduino IDEでコードを記述してアップロードできることがわかりました!20kBのRAM、80MHz CPU、3MBの4MBのフラッシュ(ただし、これらの数値はわかりませんが、その4分の1でもすごいです)!! いくつかのGPIOだけが必要な場合、なぜArduino UNOを使用する必要がありますか?このモジュールは信頼できますか?


いいえ、ここで質問に答えるためにESP8266が何であるかを調べるつもりはありません。その上、タイトルからこれは明らかに意見に基づく質問であり、デザインではなく電子デバイスの使用に関するもののようです。それだけでなく、疑問を解消するために、「arduino」に言及します。

1
内部ESP8266プロセッサは、ユーザープログラムを実行できます。使用される言語は、アクセスできる対象によって異なります。LOAが一般的に使用されます。
ラッセルマクマホン

10
@OlinLathrop人々が「LM324」、「BC337」、1N4148などの用語を使用する場合、オペアンプ、バイポーラ低電力NPNトランジスタ、シリコン小信号ダイオードを含めることは理解に必要ではないことが十分に知られていることは一般に受け入れられています。| ESP8266ファミリは、単一のICにWiFi +プロセッサとプログラム用のコンパニオンメモリを備えた一連のモジュールです。これらは非常によく知られており、あなたがそれらに会ったことがないならば、非常に知る価値がある何かです。LM324のように(まだ)ユビキタスではありませんが、全体として最も一般的な「IOT」WiFiインターフェイスです。
ラッセルマクマホン

3
私は本当にこの質問が負に値するとは思わない
マラキ

3
@ linhartr22から引用www.lua.org/about.html:ポルトガル語で"月" "ルア"(顕著LOO-AH)手段。そのため、頭字語でも略語でもなく、名詞です。より具体的には、「ルア」は名前、地球の月の名前、言語の名前です。ほとんどの名前と同様に、最初の大文字、つまり「Lua」で小文字で記述する必要があります。「LUA」と書かないでください。「LUA」はいだけでなく、混乱を招くものです。これは、人によって意味が異なる頭字語になるためです。だから、「ルア」を正しく書いてください!
消え

回答:


11

さて、「Arduinoを置き換えることができますか?」という質問に対する答え-はい、多くの場合は可能です。
それが「Arduinoの殺人者」になるかどうか-私はそれを疑います。
自宅には複数のarduinoとESPがあり、オフィスには1〜2台のPCとともに、自作の(常に開発中の)スマートホームソリューションの一部として24時間365日稼働するESPがあります。その上に、ESPを含むいくつかの実験/未完のプロジェクトがあります。
私のそれほど制限されていない経験から、Arduinoと比較したESPの長所と短所を以下に示します。

++++インターネット接続が組み込まれています!
++より高速なクロックとより多くのメモリ。
+ 3V3(ほとんどのArduinoは5Vではありませんが)で実行されるため、レベルシフターなしで3v3デバイス(ほとんどのディスプレイモジュールと同様)を直接インターフェースできます。
+「基本的な」ESP-12Eは、Arduino nanoまたはpro microと同じくらいの費用がかかります。

-「基本的な」ESP-12Eは2.54mmではなく2.0mmピッチであり、作業するのに苦労します。
-プロトタイピングを簡単にするブレイクアウトがありますが、ブレッドボード/プロトボードのコストがかかり、スペースを取りすぎます。
-最も一般的なブレークアウト-NodeMCU-はより高価で、ピンが再マップされており、非常に煩わしいですが、Luaでプログラムしない限り、非常に単純なプロジェクトでのみ問題ありません。IMO、プロトタイピングのみに使用する必要があります。
-3v3で動作し、5Vモジュールとのインターフェース、ほとんどのMOSFETの完全なオンなどを困難にします

-送信していないときはArduinoよりもかなり多くの電力を消費し、送信しているときはさらに多くの電力を消費します。
-バッテリー駆動のプロジェクトではほとんど常に悪化します-3v3レギュレーター(静止電流が必要)、たくさんスリープする必要があり(そしてそのためにGPIO16が必要です)、1日の終わりにarduino + low -電力ラジオは、バッテリーでかなり長く持続しながら、同じ仕事をします。
-GPIOピンの数が少なく、起動時に設定電圧が必要なもの(GPIO0-高、GPIO2-高またはフローティング、GPIO15-低)、起動時にIOピンの一部を「小刻みに動かして」、使用できないことが多い多くのデバイス。
-ADCは1つしかなく、私の知る限り、すでに低速なArduino ADCよりも低速です。さらに、0-1.1V(内部リファレンス)でのみ使用できます。
-Arduinoライブラリの多くは、そのままで動作するか、すでに移植されていますが、多くは動作しません。自分で移植するか、誰かがそれを行うのを待つ必要があります。一般に、Arduinoコミュニティはより大きく、より成熟しているため、ほとんどの「noobフレンドリー」なチュートリアル、ライブラリなどがArduino向けに提供されています。

そうは言っても、ESP8266は依然として優れており、非常に便利です。Luaでさえ、迅速な小規模プロジェクトに役立ちます。インターネット接続が必要なほとんどの場合、それらは最良のソリューションであると思われます。他の多くの場合、ESPを使用するかArduinoを使用するかは実際には関係ありません。そして時々、Arduino(または小さなATTiny85)がより良い選択です。
いつものように、「仕事に適したツール」が道です。
またはツールの組み合わせ。


2
UARTインターフェースを備えたArduinoのセカンダリデバイスとしてESPを使用することは「まったく間違っている」ということに強く反対します。その理由をご自身で指摘してください。ESPにまだ移植されていないライブラリを使用する場合、Arduinoをプライマリデバイスとして使用し、ESPを使用して1つのジョブを実行してみませんか。または、8ビットAVRデバイスに精通しており、非常に有能なWiFiアドオンに5ドルの余裕がある場合は、それを試してみませんか?エンジニアリングでは、愚かさを除いて、それが機能する限り、正しい方法も間違った方法もありません-特定の課題に対して多少なりとも適切です。
-stefandz

2
arduino(またはattiny)をUART経由でESPに接続しても問題はありません。「間違っている」と感じるのは、ATコマンドを使用し、ArduinoにHTMLリクエストとレスポンスなどを解析させることです。確かに動作します(私はそれを実行しました)。 ESP)マスターとして機能し、特定のタスクをそれほど強力ではないチップにオフロードします。ほとんどの場合、Arduinoで解析するATコマンドをいじるのは楽でも効率的でもありません。はい、両方のチップをこの方法でプログラムする必要があり、これは不便です。
Mishony

1
この説明を含めるために回答を編集する価値があるかもしれません。
stefandz

1
答えの残りの部分は良いのですが、その最後の文は不明瞭で誤解を招きやすいためです。答えを求めている人を明確にすることは、なぜこれが悪い考えであるのかを理解していない人を助け、明確な推論なしに「ただ間違っている」というようなものがあるという考えから彼らを遠ざけます。しかし、答えはあなたのものです-明らかに、あなたが適切だと思うようにあなたは自由です。
stefandz

1
本当にArduinoとESP(ESPだけでなく)を使用する必要がある場合、シリアル通信を使用できますが、より高いレベルで-たとえば、ArduinoはESPにコード「temp = 26.5」を送信します。それを認識し、thingspeak.comなどにHTTPリクエストを送信します。これが機能するには、ArduinoとESPの両方をプログラミングする必要があります。これは少し不便ですが、ATコマンドをいじるよりも難しくありません。多くの場合、Arduinoを捨ててESPのみを使用できます。
Mishony

1

はい、いくつかのI / Oピンがあるので、理論的には、たとえば1つまたはいくつかのLEDを駆動したり、I / Oポートエクスパンダー(I2C)を使用したりできます。

そして、はい、ソフトウェアを開発し、それを低コストのモジュールにでもダウンロードできます。Arduinoのような角度は、これを行うための1つの方法にすぎません。信じられないかもしれないので、それはARMではありません。しかし、esp8266などにはgnuツールチェーンがあります。はい80または160MHz、32ビットRISC、フラッシュ、RAMがあります。


1

あなたがそれをプログラムできるなら、もちろんあなたのライトを直接制御することは実行可能です。Arduinoのような多数のI / Oピンはありませんが、仕事をするのに十分であれば、コスト、サイズ、電力要件を確実に下げます。


1
@Dowでは、ebay / aliexpressでさらに良い価格を見つけることができます。
ダルコ

1
私のアプリケーションでは1つのIOで十分ですが、ESP-12はいくつかのIO、10ビットADCなどを提供します。実際、ESP-01を1.78 USD(Aliexpressから)で購入しました!Arduino IDEでESPを使用するには、github.com / esp8266 / Arduinoを確認してください。あなただけのUSBシリアルコンバータが必要です。または、NodeMCUをgoogleして1つのボードですべて取得します。

1

Arduino UnoボードとESPモジュールは同じではありませんが、ESP8266のGPIOがアプリケーションに必要なハードウェアを提供する限り、動作します。

私の懸念の1つは認定です。製品はいくつかの認定を受けています。バージョンも認定されているかどうかを確認する必要があります。認可対象コードとして2AC7Zを入力することにより、FCC検索ページからメーカーの認定(およびいくつかのドキュメント)を検索できます。使用するボードはそれらに依存するか、独自の認定を必要とする場合があります。

お気づきのように、ボードタイプとしてArduinoツールに追加することができます。これにより、最も簡単にプレイできるようになります。

助成金を確認したところ、3つすべてでWiFiアンテナをすべての人の少なくとも20 cmに保つ必要があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.