Arduino VS Raspberry Pi - Cara memilih Board yang tepat



Dua perangkat mendominasi dunia elektronik penghobi: Arduino dan Raspberry Pi. Keduanya dapat ditemukan di bengkel di seluruh dunia. Bagi yang belum tahu, mereka mungkin tampak serupa: mereka berdua papan sirkuit dengan resistor, kapasitor dan ICU disolder ke atas, dan koneksi tumbuh dari sisi.

Namun, jika dilihat lebih dekat, Arduino dan Raspberry Pi berbeda satu sama lain dalam hal arsitektur dan tujuannya. Kami telah menulis panduan ini untuk menjelaskan perbedaan-perbedaan ini dan membantu Anda memutuskan mana yang sesuai dengan tujuan Anda.

Apa itu Raspberry Pi?
Generasi pertama Raspberry Pi yang menaklukkan semua datang ke pasar pada 2012 dan dirancang sebagai alat pendidikan yang dapat membantu mengajar anak-anak untuk kode. Sejak itu, itu menjadi daya tarik di luar kelas; penemu amatir di seluruh dunia menggabungkan RPi ke dalam berbagai proyek .

Versi terbaru dari Raspberry Pi 3, Model B +, hadir dengan prosesor quad-core 1.4Ghz dan LAN nirkabel dual-band, bersama dengan output HDMI di mana Anda dapat menghubungkan monitor atau televisi Anda, dan berbagai input USB yang ' Saya akan menerima mouse, keyboard, dan charger ponsel Anda. Untuk mempelajari lebih lanjut tentang Raspberry pi, kunjungi posting kami Memulai dengan Raspberry Pi

Apa itu Arduino?
Arduino pertama kali diluncurkan pada tahun 2008 dan dipasarkan sebagai papan prototipe open-source untuk mikrokontroler Atmel. Mikrokontroler, seperti yang akan kita temukan, adalah sesuatu yang sangat berbeda dari mikroprosesor yang memberi daya pada Raspberry Pi.

Arduino dapat dengan mudah dihubungkan ke papan tempat memotong roti dan ditambah dengan papan ekspansi khusus yang disebut perisai. Karena perangkat keras Arduino adalah open-source, ada sejumlah varian untuk dipilih. Yang paling populer, UNO Rev 3, didasarkan pada ATmega328 dari Atmel. Termasuk semua yang diperlukan untuk terhubung ke MCU, bersama dengan komponen tambahan seperti LED, regulator tegangan, dan tombol reset.

Sekilas spesifikasi penting masing-masing perangkat adalah petunjuk pertama kami bahwa mereka sangat berbeda satu sama lain. Kami telah menggunakan contoh-contoh terbaru dari setiap baris, tetapi yang lain bisa dengan mudah menggambarkan poin:
  • Arduino UNO Rev3
  • Jam 16Mhz
  • Memori 32kb
  • Pin GPIO 14
  • Tegangan Pengoperasian 5V
  • Raspberry Pi Model 3 B +
  • Jam 1.4Ghz
  • Memori 1 GB
  • Pin GPIO 40
  • Tegangan Pengoperasian 5V
Hal pertama yang mungkin Jump Out pada Anda adalah bahwa Broadcom BCM2837 Raspberry Pi clock pada 1.4Ghz sedangkan mikrokontroler Atmel Arduino clock pada 16Mhz. Beberapa aritmatika sederhana harus memberi tahu Anda bahwa yang satu sekitar seratus kali lebih cepat daripada yang lain.

Anda akan menemukan perbedaan serupa di bidang lain. A Raspberry Pi menawarkan 1 GB RAM, sedangkan Arduino hanya menawarkan beberapa kilobyte. Arduino memiliki port USB tunggal, sementara Raspberry Pi memiliki beberapa, bersama dengan HDMI, konektor RJ45, dan konektivitas nirkabel built-in.

Jadi mengapa, Anda mungkin bertanya-tanya, apakah Arduino begitu populer ketika Raspberry Pi memiliki yang lebih baik di banyak bidang utama? Untuk menemukan jawabannya, kita perlu mengeksplorasi perbedaan antara mikroprosesor dan mikrokontroler.

Jadi apa perbedaan antara mikrokontroler dan mikroprosesor?
Seperti yang sebutkan, di pusat setiap Arduino adalah unit IC hitam yang disebut mikrokontroler. Baik itu paket DIP (dual-inline-pin) 28 pin yang lebih lama atau paket SMD (surface-mounted-device) yang lebih modern, chip kecil ini berisi semua yang diperlukan untuk benar-benar menghitung barang: ada mikroprosesor, timer, beberapa memori, dan port I / O yang melaluinya MCU berkomunikasi dengan dunia luar. Komponen inilah yang sebenarnya melakukan pekerjaan Arduino; sisa papan dan perangkat lunak Arduino ada untuk membantu Anda berinteraksi dengannya.

Raspberry Pi bekerja sangat berbeda, dan memiliki banyak kesamaan dengan PC desktop. Pada intinya adalah CPU Broadcom, yang terhubung ke RAM, penyimpanan eksternal dan porta lain di board. Ini menjalankan sistem operasi yang menangani fungsi dasar komputer, menjalankan program, mengontrol port HDMI, USB dan RJ45, dan membuat antarmuka grafis untuk ditampilkan kepada pengguna.

Arsitektur ini memungkinkan Raspberry Pi untuk melakukan hal-hal yang tidak dapat dilakukan oleh Arduino dan mikrokontrolernya. Tetapi untuk beberapa aplikasi, komputer lengkap semacam ini akan merepotkan dan tidak perlu. Pertimbangkan sirkuit di keyboard komputer Anda. Itu ada di sana untuk memantau serangkaian sakelar untuk aktivitas, dan melaporkan peristiwa keystroke ke komputer Anda. Anda akan menemukan banyak perangkat di sekitar rumah yang berisi unit mikrokontroler kecil yang, tanpa beban oleh fitur-fitur yang haus sumber daya seperti sistem operasi atau GUI (atau bahkan bootloader), dapat melakukan pekerjaan mereka dengan murah dan efisien.

Sistem operasi
Sebagai standar, Raspberry Pi menjalankan versi khusus Linux yang dikenal sebagai Raspbian. Ini telah dioptimalkan untuk Pi, dengan tujuan membuat penggunaan terbaik dari arsitektur papan dan dengan demikian memberikan pengalaman pengguna yang paling licin. Dengan demikian, tidak ada yang bisa menghentikan pengguna Pi kreatif untuk menginstal sistem operasi yang sama sekali berbeda ke unit mereka.Ada puluhan untuk dipilih, termasuk Ubuntu, OSMC dan RetroPie; dengan demikian, setiap unit Raspberry Pi hanyalah distro baru yang jauh dari menjadi konsol game atau pusat media.

Meskipun sekitar 2KB penyimpanan flash Arduino dikhususkan untuk sepotong firmware khusus yang disebut bootloader, ia tidak memiliki sistem operasi lengkap, dan karenanya tidak menjalankan program dengan cara yang sama seperti Raspberry Pi. Sebagai gantinya, itu akan boot dan melakukan instruksi yang Anda berikan menggunakan Arduino IDE, yang akan berjalan pada mesin berbasis Windows, Mac atau Linux (termasuk Raspberry Pi).

Akibatnya, Anda akan melakukan pemrograman yang sebenarnya pada mesin yang terpisah. Yang membawa kita ke pertimbangan penting lain: biaya!

Biaya
Dari segi biaya, kedua perangkat tersebut sebanding, dengan RPI terbaru yang berbobot sekitar 500 ribuan dan Arduino UNO datang dengan harga yang relatif ringan yaitu sekitar 80 ribuan . Namun, masing-masing keluarga perangkat relatif luas seperti Raspberry Pi terkecil, Raspberry Pi Zero, harganya hanya sekitar 70 ribuan.

Dalam kasus Arduino khususnya, investasi mungkin tidak akan berhenti di situ. Ambisi Anda mungkin mengharuskan pembelian satu atau dua perisai yang dapat ditumpuk, atau kumpulan resistor, sensor, kabel patch, dan unit IC. Terlebih lagi, segera setelah Anda menyelesaikan satu proyek dan mulai memahami kemungkinan yang terjadi di depan Anda, Anda mungkin akan memesan lebih banyak komponen, bersama dengan laci-laci kecil untuk menyimpannya dengan mudah. Selain itu, ada biaya perangkat yang mampu meng-hosting Arduino IDE.

Sebaliknya, pendekatan Raspberry Pi yang digerakkan oleh perangkat lunak hanya memerlukan beberapa komponen tambahan: Anda akan memerlukan monitor, mouse, dan keyboard, bersama dengan kabel yang diperlukan untuk menyatukan semuanya.

Membuat program pertama Anda ditulis
Sebelum Anda dapat menggunakan Raspberry Pi, Anda harus menginstal dan mengonfigurasi sistem operasi Anda. Untungnya, ada file zip praktis yang membuat melakukan ini dengan mudah: ini disebut, cukup tepat, NOOBS.

Untuk memulai dengan Arduino, Anda harus menginstal IDE di komputer atau tablet yang terhubung ke Arduino Anda melalui USB. Kemudian Anda akan dapat membuat proyek pertama Anda, yang mungkin akan melibatkan pembuatan flash LED. Anda akan menjejalkan kaki LED ke header dan mengkompilasi program yang akan membuatnya hidup dan mati. Untuk mencegah LED menyala, Anda dapat memasang resistor kecil dan papan tempat memotong roti.

Mengingat tujuannya sebagai alat pendidikan untuk calon pembuat kode, Anda akan mengharapkan Raspberry Pi untuk mendukung berbagai bahasa pemrograman yang sehat. Dan begitulah yang terjadi.

Untuk coders pertama kali, pilihan yang jelas adalah Python (dari mana 'Pi' di Raspberry Pi diambil). Ini tingkat tinggi dan intuitif, menawarkan sintaksis yang bahkan pemula dapat dengan mudah mengambilnya. Selain itu, ini adalah bahasa 'ditafsirkan', yang diterjemahkan saat berjalan (sebagai lawan dari bahasa 'dikompilasi' yang harus ditulis ke dalam kode mesin sebelumnya).

Raspbian hadir dengan IDE Python yang dikenal sebagai IDLE 3, yang cukup kuat untuk membuat program canggih. Ini bukan satu-satunya permainan di kota, namun: programmer yang sangat muda mungkin ingin memulai dengan Scratch (dengan huruf kapital S), sementara yang lebih berpengalaman akhirnya dapat membuat lompatan ke C, C ++ atau Java.

Karena Arduino tidak memiliki juru bahasa, kodenya harus ditulis, dikompilasi dan diunggah ke chip Atmel sebelum dapat dijalankan. Ketika Anda puas dengan kode Anda, Anda menekan unggah. IDE akan menjalankan pemeriksaan kesalahan sebelum mengkompilasi kode dan file pustaka yang dilampirkan dan mengirimkan hasilnya ke Arduino. Dalam perjalanan ke kompiler, kode Anda akan diproses untuk mengubahnya menjadi program C ++, dan kemudian instruksi yang dapat dibaca mesin.

Sifat interpretif dari sesuatu seperti Python membuat debugging tidak terlalu menyakitkan. Setiap kali kesalahan muncul, Anda akan dapat melihatnya secara real-time. Walaupun Arduino IDE hadir dengan alat-alat seperti Serial Monitor yang membantu mengidentifikasi bug, ia masih berpotensi menimbulkan frustrasi.Dalam kasus proyek Arduino yang kompleks, Anda mungkin menghabiskan waktu berjam-jam mencari titik koma yang hilang!

Tingkat tinggi versus tingkat rendah
Jika Anda baru mengenal dunia pemrograman, mungkin tidak jelas apa arti istilah 'tingkat rendah' ​​dan 'tingkat tinggi'. Mari luangkan waktu sejenak untuk mempertimbangkannya.

Saat Anda mencoba memvisualisasikan kejadian di dalam komputer, ada gunanya membayangkan hierarki abstraksi. Di bagian bawah, Anda akan menemukan kode mesin yang memungkinkan komputer bekerja. Di bagian atas, Anda akan menemukan antarmuka pengguna grafis yang dengannya pengguna dapat dengan mudah berinteraksi.

Di antara kedua ekstrem ini, Anda akan menemukan 'level' abstraksi imajiner, yang tingkat rendahnya dihuni oleh bahasa 'majelis' tingkat rendah, dan tingkat yang lebih tinggi memiliki bahasa yang lebih abstrak seperti Python. Arduino cenderung duduk di bagian bawah hierarki ini, sementara Raspberry Pi, dengan dukungannya untuk berbagai bahasa tingkat tinggi, berada lebih dekat ke atas.

Karena bahasa tingkat rendah lebih mendekati kode mesin, mereka cenderung lebih efisien. Tetapi ini datang dengan mengorbankan kemudahan pemahaman. Jika Anda benar-benar pendatang baru di dunia pemrograman, maka ini mungkin sesuatu yang perlu dipertimbangkan.

Dengan itu, itu tidak berarti bahwa Arduino tidak cocok untuk pemula absolut. Jika Anda memiliki sedikit kesabaran, pemahaman dasar tentang prinsip-prinsip pengkodean, dan Anda adalah tipe orang yang dapat merasa puas dalam menemukan dan menghilangkan masalah yang mengganggu itu, maka Arduino mungkin cocok untuk Anda.

Grafik
Memiliki lebih banyak sumber daya komputasi memungkinkan Raspberry Pi untuk menangani sejumlah besar data, dan menyajikan data tersebut dengan cara yang menarik. Jika Anda ingin menggambar bagan batang yang isinya terus berkembang, maka Raspberry Pi mungkin merupakan cara terbaik untuk melakukannya. Ini bahkan bagus untuk mengendarai mesin dunia nyata yang kompleks dengan banyak bagian yang bergerak.Jika proyek Anda melibatkan perhitungan kompleks, video, dan layar sentuh maka kemungkinan di luar kemampuan mikrokontroler bertenaga rendah seperti yang dimiliki Arduino.

Namun, jika kebutuhan pemrosesan data Anda lebih sederhana, maka Arduino mungkin lebih cocok untuk kebutuhan Anda. Itu akan dengan senang hati duduk dan membaca tegangan pada pin yang diberikan berulang-ulang sampai mencapai batas tertentu, hanya kemudian melakukan tindakan yang terkait. Untuk aplikasi seperti itu, sistem operasi dan tampilan grafis yang bagus terlalu berlebihan. Tetapi itu tidak selalu menyiratkan bahwa proyek-proyek bertenaga Arduino selalu kecil dan sederhana - dengan menyambungkan beberapa register geser, driver LED dan multiplexer, Anda dapat memperluas potensi penghubung dari Arduino yang rendah hati, dan membuatnya memenuhi semua jenis peran . Yang perlu Anda lakukan adalah menghubungkan pin dengan cara yang benar.

Konektivitas
Kedua sistem tersebut dilengkapi dengan array General-Purpose-Inputs and Outputs (atau GPIOs). Perangkat Raspberry Pi yang lebih baru hadir dengan empat puluh pin, sedangkan Arduino UNO menawarkan empat belas pin. Pin ini dapat diatur ke tinggi atau rendah, atau untuk membaca tegangan masuk. Pada setiap perangkat, pin tertentu dapat dikonfigurasi untuk menangani protokol serial tertentu, termasuk SPI, I2C, dan UART.

Anda bahkan dapat mensimulasikan tegangan antara 0 dan 5 dengan menginstruksikan pin untuk menyalakan dan mematikan dengan cepat. Teknik ini dikenal sebagai Pulse-Width Modulation. Dengan memodulasi panjang masing-masing sinyal 'on', Anda akan dapat secara digital mengontrol kecerahan LED yang jelas, atau kecepatan motor.

Raspberry Pi menawarkan modul konektivitas terpasang yang membuatnya cocok untuk proyek Internet-of-Things. Tidak perlu dipusingkan dengan ekspansi Bluetooth dan WiFi; semuanya tergabung dalam satu perangkat. Jadi, jika Anda ingin dapat menyalakan dan mematikan lampu dengan email (yang jelas-jelas ingin Anda lakukan), Raspberry Pi akan memungkinkan Anda melakukannya.

Dengan mengatakan itu, memotret pelindung WiFi yang dilengkapi ESP8266 ke bagian atas Arduino tidak terlalu sulit. Selain itu, ada varian Arduino yang menggabungkan internet nirkabel, seperti MKR1000, yang menggabungkan 2.4Ghz 802.11 b / g / n Wi-Fi dengan MCU berdaya rendah. Sejumlah produsen telah menciptakan perangkat Arduino khusus yang sesuai dengan hampir semua tujuan - dan begitu Anda menguasai Arduino pada salah satu dari mereka, Anda akan dapat menerapkan pengetahuan itu kepada yang lain.

Berapa banyak daya?
Konsumsi daya adalah masalah besar bagi banyak proyek. Jika Anda membuat mobil yang dikendalikan dari jarak jauh, misalnya, maka Anda akan memerlukan papan yang dapat menerima sinyal, mengaktifkan motor dan melakukan semua komputasi yang terkait tanpa bantuan adaptor dinding, dan yang tidak menguras baterai dengan rata. dalam beberapa jam.

Raspberry Pi 3 Model B + idle sekitar 1,7W. Jika Anda menggunakan Raspberry Pi Zero yang lebih kecil, maka ini turun menjadi sekitar 0,4W. Bandingkan ini dengan Arduino UNO, yang akan menjalankan kode sekitar 0.14W, dan Anda mulai melihat bahwa Arduino secara alami sesuai dengan proyek stripped-down yang digerakkan oleh baterai.

Perangkat apa pun yang Anda pilih, Anda akan dapat meningkatkan efisiensi energinya dengan beberapa cara.Tidak hanya ada beberapa varian Arduino dan Raspberry Pi untuk dipilih, tetapi Anda juga dapat menyesuaikan sistem Anda untuk efisiensi daya maksimum. Jika Anda tidak lagi membutuhkan tampilan pada RPI Anda, misalnya, maka Anda dapat menghemat daya dengan menonaktifkan port HDMI. Sesuaikan Raspberry Pi Anda dengan kebutuhan proyek Anda, dan mungkin berjalan jauh lebih lama pada baterai yang sama.

Komplikasi lain datang dalam bentuk gangguan daya. Ketika sistem operasi seperti Windows atau Raspbian ditolak daya tanpa peringatan, hasilnya dapat menjadi kode rusak dan masalah perangkat lunak. Jika Anda sedang menulis hingga ke lokasi memori tertentu dan daya tiba-tiba dihapus, hasilnya kemungkinan akan berantakan. Itu sebabnya sistem operasi desktop cenderung bersikeras untuk dimatikan dengan benar.Pembaca yang lebih tua mungkin mengingat teks oranye dengan latar belakang hitam yang memberi tahu kita semua saat aman untuk mematikan komputer.

Karena Arduino tidak menjalankan sistem operasi, ini bukan masalah. Ini hanya akan memulai kembali kode yang berjalan segera setelah dicolokkan kembali. Jika Anda ingin menjaga perangkat Arduino Anda terus-menerus dan tanpa kabel, Anda hanya perlu menghubungkan baterai 5v di permukaan tanah dan pin 5v. Anda dapat melakukan ini secara langsung, atau dengan bantuan pelindung paket baterai.

Akhirnya, kita juga harus mempertimbangkan bahwa proyek tidak cenderung ada secara terpisah. Jika Anda akan mengaktifkan motor servo Arduino Anda, atau mengendarai sejumlah LED, maka daya yang dikonsumsi oleh mikrokontroler akan pucat menjadi tidak berarti. Hal yang sama berlaku untuk Raspberry Pis yang terhubung ke televisi plasma besar.

Jadi yang mana yang terbaik?
Jika ada satu kesimpulan tunggal yang dapat ditarik dari semua ini, itu adalah bahwa sementara kedua perangkat berbagi karakteristik yang dangkal, mereka dibangun untuk mencapai tujuan yang sangat berbeda.

Mari kita pertimbangkan perbandingan analog: truk kontainer dan moped. Seperti Arduino dan Raspberry Pi, kendaraan ini memiliki kesamaan yang dangkal: keduanya datang dengan roda, dan keduanya dapat digunakan untuk mengangkut barang. Namun truk tersebut hadir dengan mesin yang lebih kuat, roda lebih besar, dan tangki bahan bakar yang sangat besar yang dibutuhkan untuk mengangkut barang-barang berat dari jarak jauh. Haulers yang ingin mengangkut puluhan bak mandi porselen melintasi ratusan mil mungkin akan mendukung kekuatan truk. Sebaliknya, restoran yang ingin mengirimkan selusin pizza ke selusin alamat pusat kota yang berbeda dalam jangka waktu yang singkat pasti akan lebih menyukai kegesitan relatif dari moped.

Tapi tidak ada arti bermakna di mana sebuah truk 'lebih baik' dari moped, tidak lebih dari Raspberry Pi 'lebih baik' daripada Arduino. Mereka masing-masing memiliki kekuatan relatif, yang sesuai dengan tujuan berbeda.

Secara umum, Arduino dibangun lebih untuk proyek-proyek yang berorientasi pada perangkat keras, sedangkan Raspberry Pi lebih diarahkan pada perangkat lunak. Jika Anda ingin mengontrol sirkuit, maka kesenangan langsung yang ditawarkan oleh Arduino sulit dikalahkan. Jika Anda ingin belajar kode, maka Raspberry Pi membuat pilihan yang lebih baik.

Mungkin saja proyek Anda membutuhkan daya pemrosesan data dan kontrol perangkat keras. Karena itu, tidak ada yang menghentikan Anda menggabungkan Raspberry Pi dan Arduino. Keduanya dapat bermain dengan baik satu sama lain dengan sedikit bujukan. Terlebih lagi, ada beberapa perangkat yang menjembatani kesenjangan di antara mereka. Keluarga UDOO dari komputer papan tunggal menggabungkan Raspberry Pi dan Arduino ke perangkat yang sama, sedangkan Beaglebone Black adalah saingan yang efektif untuk Pi yang dilengkapi dengan sejumlah besar pin GPIO.

Comments

  1. Informasi nya sangat bermanfaat, klo gw sih milih Arduino min

    ReplyDelete
  2. untuk kebutuhan sehari-hari cocoknya pake apa ya gannnnn.....

    ReplyDelete

Post a Comment

Popular posts from this blog

12 Jenis Mikrocontroller Arduino

Membuat user admin { Django-Framework }