ESP32はArduinoより優れていますか

Esp32haarduinoyori Youreteimasuka



Arduino と ESP32 はどちらも、入力を受け取り、それに応じて出力を生成できるマイクロコントローラー ベースのボードです。これらのボードはどちらも、情報を処理するために CPU などの追加のハードウェアを必要としないため、学生や研究者の間で有名です。ポケットに収まり、タスクを簡単に実行できる小さなボードが必要なだけです。しかし、ESP32 は Arduino よりも優れているという疑問が皆の頭に浮かびます。

ESP32 対 Arduino

ESP32 は、低電力で動作する 32 ビット マイクロコントローラー チップを搭載した低コストのマイクロコントローラー ボードです。 ESP32 Wi-Fi とデュアル Bluetooth が統合されています。 Espressif システムによって作成されます。 ESP32 は、同じメーカーが作成した ESP8266 ボードの後継です。 ESP32 のコスト、サイズ、消費電力に基づくと、IoT ベースの DIY プロジェクトに最適です。 ESP32 チップが含まれています テンシリカ エクステンサ LX6 240MHz を超える周波数のデュアル コアおよびクロック レートを備えたマイクロプロセッサ。







一方、マイクロコントローラという言葉を聞いたとき、最初に頭に浮かぶ名前は アルドゥイーノ Arduino は、8 ビット Uno から 32 ビット 0 までの一連のさまざまなボードとともに幅広いサポートが利用できるため、長い間マイクロコントローラー ボードをリードしてきました。 Arduinoボードはに基づいています ATmega AVR マイクロコントローラ . Arduino ボードは、小規模プロジェクトに最適な nano から、54 個のデジタル入力/出力ピンのおかげで複数のデバイスを処理できる Arduino mega まであります。



ESP32はArduinoより優れていますか

はい 、ESP32はArduinoよりも優れた強力なマイクロコントローラーボードです。 ESP32 には、デュアル Wi-Fi と Bluetooth のサポートが組み込まれています。フルスタックのインターネット接続のための完全な TCP/IP サポートを備えています。 Wi-Fi モジュールのおかげで、アクセス ポイントとしても Wi-Fi ステーションとしても機能します。 32 ビットのマイクロコントローラーと最大 240MHz のクロック周波数により、Arduino よりもはるかに優れています。



以下のハイライトは、ESP32 が Arduino よりも優れている理由をよりよく理解するのに役立ちます。





  • ESP32 には 32 ビットのマイクロコントローラーがあります
  • デュアル Wi-Fi と Bluetooth のサポート
  • 低電圧レベル (3.3V) で動作
  • ESP32 には 18 個の ADC チャネルがありますが、Arduino Uno には 6 個しかありません。
  • ESP32 には 48 個の GPIO ピンが付属していますが、Uno には 14 個のデジタル入力/出力ピンと 6 個のアナログ ピンしかありません。
  • ESP32ボードはArduino Unoよりも安い

Arduino と ESP32 の比較を読むには、クリックしてください ここ .

ESP32、Arduino Uno、Arduino Megaの速度比較

以下は、マイクロコントローラ ボード ESP32、Arduino Uno、Mega のクロック周波数です。



アルドゥイーノワン: 16MHzの内部クロック

Arduino メガ: 16MHzの内部クロック

ESPルーム32: 80MHz~240MHzの間で調整可能。

マイクロコントローラーがクロックソースに依存していることは誰もが知っています。より強力なクロックは、命令を実行する時間を短縮します。上記の 3 つのマイクロコントローラー ボードすべての速度の違いを見てみましょう。

無署名 長いです Start_Time、Time_Taken ;
#ピンを定義 5 /* ピン 5 はその状態を変更するように定義されています*/
空所 設定 ( ) {
シリアル。 始める ( 9600 ) ; /*シリアル通信用に定義されたボーレート*/
  pinMode ( ピン、出力 ) ; /*ピン 5 を出力として定義*/
}
空所 ループ ( ) {
始まる時間 = ミリス ( ) ; /*開始時間はミリ秒カウンターに等しい*/
為に ( 整数 = 0 ; < 20000 ; ++ ) { /*for ループは 20000 回実行されます*/
デジタル書き込み ( ピン、HIGH ) ; /*ピン状態がHIGHに変化*/
デジタル書き込み ( ピン、LOW ) ; /*ピンの状態が LOW に変わります*/
}
Time_Taken = ミリス ( ) - 始まる時間 ; /*かかった時間を返すために計算された時間差*/
シリアル。 印刷する ( 'PIN 5 の状態を変更するのにかかった時間: ' ) ;
シリアル。 印刷する ( Time_Taken ) ; /*かかった合計時間が出力されます*/
シリアル。 println ( 'MS' ) ;
}

まず、2 つの変数を初期化しました 始まる時間 Time_Taken。 1 つは開始時間をミリ秒単位で格納し、2 番目はマイクロコントローラが HIGH と LOW の 2 つの状態を切り替えるのにかかった合計時間を格納します。

次に、コードのループ部分で for ループが使用されます。これは 20,000 回回転し、ピン 5 を交互に HIGH と LOW にします。次に、状態が HIGH から LOW に変化した時点で、現在の Millis との開始時間の差をとります。ここで、現在の Millis と以前の Millis の時間差は、ボードが状態を切り替えるのにかかる時間を定義します。

ESP32 出力

ESP32 は Uno や Mega よりもクロック周波数が高いため、状態が非常に高速に切り替わります。ここでの出力は、HIGH 状態から LOW 状態に切り替わるのに 5ms かかることを表しています。

Arduino Uno 出力

Arduino Uno ボードには 16MHz の外部クロックがあるため、ピンの状態を切り替えるのに 172ms かかります。

Arduinoメガ出力

Arduino Mega ボードは、状態を切り替えるのに 227ms かかります。

上記の結果から、ESP32 は Arduino Uno や Mega よりも高速であると結論付けました。

ESP32 と Arduino Uno と Arduino Mega の簡単な比較

ESP32 ボードと Arduino の競合他社である Uno および Mega との簡単な比較を次に示します。

特徴 ESP32 Arduino 1 アルドゥイーノ・メガ
デジタル I/O ピン 36 14 54
I/O ピンあたりの DC 電流 40mA 20mA 20mA
アナログピン 18人まで 6、10 ビット ADC 6、10 ビット ADC
プロセッサ Xtensa デュアル コア 32 ビット LX6 マイクロプロセッサ ATmega328P ATmega2560
フラッシュメモリー 4MB 32キロバイト 256キロバイト
SRAM 520キロバイト 2キロバイト 8キロバイト
EEPROM なし 1KB 4キロバイト
クロック速度 80MHz~240MHz 16MHz 16MHz
電圧レベル 3.3V 5V 5V
Wi-Fi 802.11 b/g/n なし なし
ブルートゥース v4.2 BR/EDR および BLE なし なし
I2C サポート はい (2x) はい はい
SPI サポート はい (4x) はい はい
ハードウェア シリアル ポート 3 1 1
USB接続 マイクロUSB USB-B USB-B

結論

最初のマイクロコントローラ ボードを購入するとき、または複数のボードで作業するときに、誰もが頭に浮かぶ質問は、どのマイクロコントローラ ボードが最適かということです。そのため、手頃な価格、低消費電力、WiFi と Bluetooth をサポートする超高速外部クロックにより、ESP32 は Arduino ボードよりも優れていると結論付けました。 ESP32 は、Arduino ボードよりも多くの機能を提供します。