Bisakah ESP8266 menggantikan Arduino?

15

Saya penggemar dan telah menggunakan Arduino sejauh ini untuk proyek-proyek sederhana. Sekarang saya ingin membangun proyek yang melibatkan LED yang bisa dialamatkan, saya ingin menulis beberapa program di Arduino untuk LED dan di telepon saya saya memilih yang mana yang akan dijalankan.

Saya menemukan ESP8266 sebagai solusi yang baik dan murah untuk berbicara dengan Arduino saya. Mencari di web untuk mempelajari cara kerjanya saya menemukan bahwa ia memiliki MCU sendiri di atasnya dan saya dapat menulis dan mengunggah kode saya di Arduino IDE! 20kB RAM, 80MHz CPU dan 4MB flash untuk 3 USD (Namun saya tidak yakin angka-angka ini tetapi bahkan seperempat dari itu hebat) !! Jika saya hanya perlu beberapa GPIO, mengapa harus menggunakan Arduino UNO? Apakah modul ini dapat diandalkan?

ahmadx87
sumber
Tidak, saya tidak akan mencari tahu apa ESP8266 untuk menjawab pertanyaan di sini. Selain itu, dari judulnya jelas ini adalah pertanyaan berbasis opini, dan tampaknya adalah tentang penggunaan perangkat elektronik daripada desainnya. Bukan hanya itu, tetapi untuk menghapus keraguan, Anda menyebutkan "arduino".
1
Prosesor internal ESP8266 dapat menjalankan program pengguna. Bahasa yang digunakan tergantung pada apa yang Anda akses. LOA umumnya digunakan.
Russell McMahon
10
@ OlinLathrop Jika orang menggunakan istilah seperti "LM324", "BC337", 1N4148 secara umum diterima bahwa mereka cukup dikenal bahwa dimasukkannya opamp, transistor NPN daya rendah bipolar dan silikon dioda sinyal kecil, masing-masing tidak diperlukan untuk memahami. | Keluarga ESP8266 adalah serangkaian modul dengan prosesor WiFi + dalam satu IC dan memori pendamping untuk program. Ini sangat terkenal dan sesuatu yang sangat berharga untuk diketahui jika Anda belum bertemu mereka. Meskipun tidak (belum) cukup di mana-mana seperti misalnya LM324 mereka sangat mungkin antarmuka WiFi "IOT" paling umum secara keseluruhan.
Russell McMahon
3
Saya benar-benar tidak berpikir pertanyaan ini pantas negatif
Maleakhi
3
@ linhartr22 Mengutip dari www.lua.org/about.html : "Lua" (diucapkan LOO-ah) berarti "Bulan" dalam bahasa Portugis. Dengan demikian, itu bukan akronim atau singkatan, tetapi kata benda. Lebih khusus lagi, "Lua" adalah nama, nama bulan Bumi dan nama bahasa. Seperti kebanyakan nama, harus ditulis dalam huruf kecil dengan modal awal, yaitu, "Lua". Tolong jangan menuliskannya sebagai "LUA", yang jelek dan membingungkan, karena kemudian menjadi akronim dengan makna yang berbeda untuk orang yang berbeda. Jadi, tolong, tulis "Lua" dengan benar!
pergi

Jawaban:

11

Nah, jawaban dari pertanyaan "Bisakah itu menggantikan Arduino" - ya, dalam banyak kasus bisa.
Apakah itu akan menjadi "pembunuh Arduino" - saya meragukannya.
Ada beberapa arduinos dan ESP di rumah saya dan 1 ESP di kantor saya yang beroperasi 24/7 sebagai bagian dari solusi rumah pintar saya yang dibuat sendiri (dan terus dalam pengembangan), bersama dengan 1-2 PC. Selain itu, saya memiliki beberapa percobaan / proyek yang belum selesai yang melibatkan ESP.
Jadi, dari pengalaman saya yang tidak begitu terbatas, berikut adalah pro dan kontra dari ESP dibandingkan dengan Arduino:

++++ Konektivitas internet bawaan!
++ Jam lebih cepat dan lebih banyak memori.
+ Berjalan pada 3V3 (sebagian besar, tetapi tidak semua Arduino 5V) sehingga dapat antarmuka perangkat 3v3 (seperti sebagian besar modul tampilan) secara langsung, tanpa level shifters.
+ ESP-12E "dasar" berharga sekitar Arduino nano atau pro mikro.

- The "basic" ESP-12E adalah pitch 2.0mm, bukan 2.54mm, membuatnya susah untuk digunakan.
- Ada berjerawat yang membuatnya lebih mudah untuk prototyping, tetapi mereka meningkatkan biaya dan mengambil terlalu banyak ruang pada papan tempat memotong roti / protoboard.
- Pelarian paling umum - NodeMCU - lebih mahal dan pin telah dipetakan, gangguan besar, kecuali Anda memprogramnya di Lua, yang hanya ok untuk proyek yang sangat sederhana. IMO, harus digunakan hanya untuk prototyping.
- Mereka berjalan pada 3v3, membuatnya sulit untuk antarmuka modul 5V, sepenuhnya mengaktifkan sebagian besar MOSFET, dll.
- Mereka sangat pemilih pada catu daya mereka.
- Mereka menarik daya lebih besar secara signifikan daripada Arduino saat tidak mentransmisikan dan lebih banyak lagi saat transmisi.
- Mereka hampir selalu lebih buruk untuk proyek yang dioperasikan dengan baterai - Anda memerlukan regulator 3v3 (yang memiliki arus diam), Anda perlu banyak tidur (dan Anda membutuhkan GPIO16 untuk itu) dan pada akhirnya arduino + rendah - Radio daya akan melakukan pekerjaan yang sama dengan daya tahan baterai yang jauh lebih lama.
- Mereka memiliki lebih sedikit pin GPIO dan beberapa dari mereka harus menetapkan voltase pada saat startup (GPIO0 - tinggi, GPIO2 - tinggi atau mengambang, GPIO15 - rendah), juga mereka "menggoyangkan" beberapa pin IO mereka pada startup, sering membuat mereka tidak dapat digunakan untuk banyak perangkat.
- Mereka hanya memiliki satu ADC, dan setahu saya ini lebih lambat dari ADC Arduino yang sudah lambat, plus Anda hanya dapat menggunakannya dengan 0-1.1V (referensi internal).
- Banyak perpustakaan Arduino bekerja di luar kotak atau sudah porting, tetapi banyak yang tidak. Anda harus porting sendiri atau menunggu seseorang melakukannya. Secara umum, komunitas Arduino jauh lebih besar dan lebih dewasa, sehingga sebagian besar tutorial, perpustakaan, dll yang ramah-noob ramah disediakan untuk Arduino.

Karena itu, ESP8266 masih bagus dan sangat berguna. Bahkan Lua berguna untuk proyek kecil cepat. Dalam kebanyakan kasus di mana konektivitas internet diperlukan, mereka tampaknya menjadi solusi terbaik. Dalam banyak kasus lain, apakah Anda akan menggunakan ESP atau Arduino sebenarnya tidak masalah. Dan terkadang Arduino (atau ATTiny85 kecil) adalah pilihan yang lebih baik.
Seperti biasa, "alat yang tepat untuk pekerjaan itu" adalah caranya.
Atau kombinasi alat.

Mishony
sumber
2
Sangat tidak setuju bahwa "salah" menggunakan ESP sebagai perangkat sekunder ke Arduino dengan antarmuka UART. Anda menunjukkan sendiri alasannya - jika Anda ingin menggunakan perpustakaan yang belum porting ke ESP, mengapa tidak memiliki Arduino sebagai perangkat utama dan menggunakan ESP untuk melakukan satu pekerjaan dengan baik? Atau jika Anda lebih terbiasa dengan perangkat AVR 8-bit dan mampu membayar $ 5 untuk addon WiFi yang sangat mumpuni, mengapa tidak melakukannya? Dalam rekayasa, tidak termasuk kebodohan, tidak ada cara yang benar atau salah, asalkan itu berfungsi - hanya lebih atau kurang sesuai untuk tantangan tertentu.
stefandz
2
Tidak ada yang salah dengan memiliki arduino (atau attiny) yang terhubung dengan ESP melalui UART. Apa yang terasa "salah" adalah menggunakan perintah AT dan meminta Arduino menguraikan permintaan dan tanggapan HTML, dll. Ini pasti berfungsi (saya sudah melakukannya), tetapi kedengarannya salah - cara "logis" adalah untuk chip yang lebih kuat ( ESP) untuk bertindak sebagai master dan membongkar tugas-tugas khusus ke chip yang kurang kuat, bukan sebaliknya. Sebagian besar waktu, ini juga cara yang lebih mudah - mengutak-atik perintah AT yang menguraikan Arduino tidak menyenangkan atau tidak efisien. Ya, Anda harus memprogram kedua chip dengan cara ini, yang tidak nyaman.
Mishony
1
Mungkin perlu mengedit jawaban Anda untuk menyertakan klarifikasi ini.
stefandz
1
Karena sisa jawabannya bagus, tetapi kalimat terakhir itu tidak jelas dan menyesatkan. Klarifikasi untuk mereka yang mencari jawaban akan membantu mereka yang tidak mengerti mengapa ini mungkin ide yang buruk - dan menjauhkan mereka dari gagasan bahwa ada yang namanya "salah" tanpa alasan yang jelas. Tapi jawabannya ada di tangan Anda - jelas Anda bebas melakukan apa yang Anda inginkan.
stefandz
1
Jika Anda benar-benar perlu menggunakan Arduino DAN ESP (bukan hanya ESP) maka Anda masih dapat menggunakan komunikasi Serial, tetapi pada tingkat yang lebih tinggi - misalnya Arduino mengirimkan "temp = 26.5" ke ESP, kode Anda pada ESP mengakui itu dan mengirimkan permintaan HTTP ke thingspeak.com atau apa pun. Agar ini berfungsi, Anda harus memprogram Arduino dan ESP, yang sedikit merepotkan, tetapi tidak terlalu sulit daripada mengutak-atik perintah AT. Dalam banyak situasi, Anda cukup membuang Arduino dan hanya menggunakan ESP.
Mishony
1

Ya ada beberapa pin I / O, jadi secara teori Anda bisa menggerakkan satu atau beberapa led atau menggunakan I / O port expander (I2C) misalnya.

Dan ya, Anda dapat mengembangkan perangkat lunak dan mengunduhnya ke dalam modul berbiaya rendah sekalipun. Sudut mirip Arduino hanyalah salah satu cara untuk melakukan ini. Ini bukan ARM karena orang mungkin dituntun untuk percaya. Tetapi ada toolchain gnu untuk esp8266, dll. Ya 80 atau 160MHz, RISC 32 bit, beberapa flash, beberapa ram.

old_timer
sumber
1

Jika Anda dapat memprogramnya, maka tentu saja layak untuk langsung mengontrol lampu Anda. Ini tidak memiliki sejumlah besar pin I / O seperti Arduino, tetapi selama Anda memiliki cukup untuk melakukan pekerjaan itu, itu pasti menurunkan biaya, ukuran, dan persyaratan daya.


sumber
1
@ Bagaimana Anda dapat menemukan harga yang lebih baik di ebay / aliexpress.
Darko
1
Untuk aplikasi saya satu IO sudah cukup, namun ESP-12 menyediakan beberapa IO, 10 bit ADC dan banyak lagi. Sebenarnya saya membeli satu ESP-01 seharga 1,78 USD (Dari Aliexpress)! Periksa github.com/ esp8266/Arduino untuk menggunakan ESP Anda di Arduino IDE. Anda hanya perlu konverter USB ke serial. Atau google NodeMCU untuk mendapatkan semuanya dalam satu papan.
1

Papan Arduino Uno dan modul ESP tidak sama, tetapi selama GPIO ESP8266 menyediakan perangkat keras yang Anda perlukan untuk aplikasi Anda, ia akan bekerja.

Salah satu kekhawatiran saya adalah sertifikasi. Produk telah menerima beberapa sertifikasi, Anda harus memeriksa apakah versi Anda juga bersertifikat. Anda dapat mencari sertifikasi pabrikan (dan beberapa dokumentasi) dari Halaman Pencarian FCC dengan memasukkan 2AC7Z sebagai kode penerima. Papan yang Anda gunakan mungkin bergantung pada mereka atau memerlukan sertifikasi sendiri.

Seperti yang Anda perhatikan, ini dapat ditambahkan sebagai jenis papan ke alat Arduino yang membuatnya lebih mudah bagi hobiest untuk bermain dengannya.

Saya baru saja memeriksa hibah dan ketiganya mengharuskan antena WiFi disimpan setidaknya 20 cm dari semua orang.

le_top
sumber