Arduino: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
Hutabalian (bicara | kontrib)
add a few articles
Etewe (bicara | kontrib)
Fitur saranan suntingan: 3 pranala ditambahkan.
 
(45 revisi perantara oleh 12 pengguna tidak ditampilkan)
Baris 1:
{{Orphan|date=April 2012}}
{{Infobox software
| name = Arduino Software
| logo = Arduino Logo Registered.svg
| screenshot = [[Berkas:Arduino IDE - v0011 Alpha.png|300px]]
| caption = Contoh program
Baris 15 ⟶ 14:
}}
[[Berkas:Arduino316.jpg|jmpl|Arduino dibandingkan dengan tangan manusia]]
'''Arduino''' adalah ''mikrokontroller /'' [[pengendali mikro]] dengan papan tunggal(''single board'') yang bersifatberfungsi [[sumber terbuka]] dan menjadi salah satudalam proyek [[Open-source_hardware|Openperangkat Sourcelunak Hardwaresumber terbuka]]. yangFungsi palingutama populer.dari DirancangArduino untuk memudahkan penggunaan elektronik dalam berbagai bidang. Perangkat kerasnyaArduino memiliki [[perangkat keras]] yang menggunakan prosesor '''''[[Atmel AVR|Atmel]]. Sementara [[Atmelperangkat AVR|AVRlunak]]''''' .yang dimiliki oleh SoftwarenyaArduino terdiri dari beberapa alat yakni [[Integratedlingkungan Developmentpengembangan Environmentterpadu]] (IDE), [[Penyuntingpenyunting teks|Text-Editor]], [[Compiler|Compilerkompilator]], Serial Monitor, dan Serial ISP [[Pemrogram|Programmer]].<ref>{{Citation|title=arduino/Arduino|url=https://github.com/arduino/Arduino|date=2020-08-12|accessdate=2020-08-12}}</ref>
 
'''Arduino''' juga merupakan [[Senarai (komputasi)|senarai]] perangkat keras terbuka yang ditujukan kepada siapa saja yang ingin membuat purwarupa peralatan elektronik interaktif berdasarkan hardware dan software yang fleksibel dan mudah digunakan. Pada aplikasi Arduino, Mikrokontroler diprogram menggunakan [[C (bahasa pemrograman)|bahasa pemrograman C]] atau C++, dengan [[Pustaka (perangkat lunak)|pustaka]] khas arduino. Karena sifatnya yang terbuka maka siapa saja dapat mengunduh skema hardware arduino dan membangunnya.
 
'''Arduino''' menggunakan keluarga mikrokontrolerpengendali mikro ATMega yang dirilis oleh Atmel sebagai basis, namun ada individu/perusahaan yang membuat ''clone'' arduino dengan menggunakan mikrokontroler lain dan tetap kompatibel dengan arduino pada level hardwareperangkat keras. Untuk fleksibilitas, program dimasukkan melalui bootloader meskipun ada opsi untuk mem-bypass bootloader dan menggunakan pengunduh untuk memprogram mikrokontrolerpengendali mikro secara langsung melalui port ISP.
 
== Sejarah Singkat ==
Semuanya berawal dari sebuah thesistesis yang dibuat oleh Hernando Barragan, di Institute [[Ivrea]], [[Italia]] pada tahun 2005, dikembangkan oleh Massimo Banzi dan David Cuartielles dan diberi nama ''Arduin of Ivrea''. Lalu diganti nama menjadi Arduino yang dalam [[bahasa Italia]] berarti teman yang berani.
 
Tujuan awal dibuat Arduino adalah untuk membuat perangkat mudah dan murah, dari perangkat yang ada saat itu. Dan perangkat tersebut ditujukan untuk para siswa yang akan membuat perangkat desain dan interaksi.
Baris 36 ⟶ 35:
Sifat Arduino yang Open Source, membuat Arduino berkembang sangat cepat. Sehingga banyak lahir perangkat-perangkat sejenis Arduino. Seperti DFRDuino atau Freeduino, sedangkan untuk lokal ada [https://github.com/adamalfath/sentsor-uno-plus SENTSOR Uno Plus] yang dibuat oleh SENTSOR Electronics Indonesia, CipaDuino yang dibuat oleh SKIR70, MurmerDuino yang dibuat oleh Robot Unyil, ada lagi AViShaDuino yang salah satu pembuatnya adalah Admin Kelas Robot.
 
Sampai saat ini pihak resmi, sudah membuat berbagai jenis-jenis Arduino. Mulai dari yang paling mudah dicari dan paling banyak digunakan, yaitu Arduino Uno. Hingga Arduino yang sudah menggunakan ARM Cortex, berbentuk Mini PC. Hingga saat ini sudah ada ratusan ribu Arduino yang digunakan di dunia sejak tahun 2011. Arduino juga sudah dipakai oleh perusahaan-perusahaan besar, contohnya [[Google]] menggunakan Arduino untuk Accessory Development Kit, [[Badan Penerbangan dan Antariksa Amerika Serikat|NASA]] memakai Arduino untuk prototypin, ada lagi Large Hadron Colider memakai Arduino dalam beberapa hal untuk pengumpulan data.
 
Salah satu komponen dari arduino (yakni ''text-editor'') dibangun menggunakan [[Java (Platform Perangkat Lunak)|Java]]. Hal ini mengakibatkan banyak yang mengira bahasa arduino adalah bahasa baru turunan dari Java. Arduino sebenarnya menggunakan bahasa C / C++, dengan ''compiler'' [[GNU_Compiler_CollectionGNU Compiler Collection|avr-gcc]] yang sama dengan yang dipakai pada avr-studio.<ref>{{Cite web|title=Arduino - UsingAVR|url=https://www.arduino.cc/en/Reference/UsingAVR|website=www.arduino.cc|access-date=2020-08-12}}</ref> Aturan proses kompilasi sudah disediakan oleh aplikasi Arduino, dimanadi mana [[Berkas komputer|berkas]] kode utama dengan ekstensi ''ino'' akan hubungkan dengan berkas-berkas lain. Telah disediakan pula rutin utama C++ (fungsi ''main'') yang memanggil fungsi ''setup'' dan ''loop'' dari file kode utama berekstensi ''ino''. Kombinasi ''[[Pustaka (perangkat lunak)|pustaka]]'' Arduino dengan aturan kompilasi (''[[Makefile|Makefile]] [[GNU_Compiler_CollectionGNU Compiler Collection|avr-gcc]]'') ini memudahkan siapa saja menggunakan Arduino tanpa harus faham tentang C++. Sehingga orang awam pun bisa menjadi [[seniman]] digital, bisa mempelajari Arduino dengan mudahnya. Plugin yang disediakan pada software Arduino memungkinkan komunitas untuk menambahkan bermacam [[Compiler|compiler]] lain selain avr-gcc, bahkan dukungan untuk prosesor lain selain Atmel AVR.
 
== Jenis-Jenis Arduino ==
Seperti Microcontroller yang banyak jenisnya, Arduino lahir dan berkembang, kemudian muncul dengan berbagai jenis. Diantaranya adalah:
 
'''a.=== Arduino Uno''' ===
Jenis yang ini adalah yang paling banyak digunakan. Terutama untuk pemula sangat disarankan untuk menggunakan Arduino Uno. Banyak sekali referensi yang membahas Arduino Uno. Versi yang terakhir adalah Arduino Uno R3 (Revisi 3), menggunakan ATMEGA328 sebagai pengendali mikronya, memiliki 14 pin I/O digital dan 6 pin input analog. Untuk pemprograman cukup menggunakan koneksi USB type A to To type B. Sama seperti yang digunakan pada USB printer.
 
Jenis yang ini adalah yang paling banyak digunakan. Terutama untuk pemula sangat disarankan untuk menggunakan Arduino Uno. Banyak sekali referensi yang membahas Arduino Uno. Versi yang terakhir adalah Arduino Uno R3 (Revisi 3), menggunakan ATMEGA328 sebagai Microcontrollernya, memiliki 14 pin I/O digital dan 6 pin input analog. Untuk pemprograman cukup menggunakan koneksi USB type A to To type B. Sama seperti yang digunakan pada USB printer.
 
'''b. Arduino Due'''
 
=== Arduino Due ===
Berbeda dengan saudaranya, Arduino Due tidak menggunakan ATMEGA, melainkan dengan chip yang lebih tinggi ARM Cortex CPU. Memiliki 54 I/O pin digital dan 12 pin input analog. Untuk pemprogramannya menggunakan Micro USB, terdapat pada beberapa handphone.
 
'''c.=== Arduino Mega''' ===
 
Mirip dengan Arduino Uno, sama-sama menggunakan USB type A to B untuk pemprogramannya. Tetapi Arduino Mega, menggunakan Chip yang lebih tinggi ATMEGA2560. Dan tentu saja untuk Pin I/O Digital dan pin input Analognya lebih banyak dari Uno.
 
'''d.=== Arduino Leonardo.''' ===
Bisa dibilang Leonardo adalah saudara kembar dari Uno. Namun banyaknya pin I/O digital, pin input Analog, dan input output PWM berbeda dari Arduino Uno<ref>{{Cite web|title=Leonardo {{!}} Arduino Documentation|url=https://docs.arduino.cc/hardware/leonardo|website=docs.arduino.cc|access-date=2022-06-17}}</ref><ref>{{Cite web|title=UNO R3 {{!}} Arduino Documentation|url=https://docs.arduino.cc/hardware/uno-rev3|website=docs.arduino.cc|access-date=2022-06-17}}</ref>. Hal ini dikarenakan Arduino Leonardo menggunakan pengendali mikro ATmega32u4.
 
BisaATMega32u4 dibilangini Leonardotelah adalahmemiliki saudarafitur kembarkomunikasi dariUSB Uno.yang Namunterintegrasi, banyaknyasehingga pinpada I/OArduino digital,Leonardo pintidak inputmemerlukan Analog,tambahan danpengendali inputmikro outputpengatur PWMkomunikasi berbedaUSB darike TTL Serial seperti yang terdapat pada board Arduino Uno yang menggunakan tambahan ATMEGA16U2 disamping ATMEGA328P <ref>{{Cite web|date=2022-06-15|title=LeonardoArduino {{!}}Uno ArduinoR3: Tech DocumentationSpecs|url=https://docs.arduino.cc/hardware/leonardouno-rev3|website=docs.arduino.cc|access-date=2022-0607-1730}}</ref>. Dengan ATMega32u4, memungkinkan Arduino Leonardo untuk berkomunikasi sebagai Keyboard/Mouse dengan protokol USB-HID menggunakan pustaka Keyboard <ref>{{Cite web|title=UNOKeyboard R3 {{!}}- Arduino DocumentationReference|url=https://docswww.arduino.cc/hardwarereference/en/language/functions/usb/keyboard/uno-rev3|website=docswww.arduino.cc|access-date=2022-06-17}}</ref>. Hal ini dikarenakan Arduino Leonardo menggunakan microcontroller ATmega32u4.
 
ATMega32u4 ini telah memiliki fitur komunikasi USB yang terintegrasi, sehingga pada Arduino Leonardo tidak memerlukan tambahan microcontroller pengatur komunikasi USB ke TTL Serial seperti yang terdapat pada board Arduino Uno yang menggunakan tambahan ATMEGA16U2 disamping ATMEGA328P <ref>{{Cite web|date=2022-06-15|title=Arduino Uno R3: Tech Specs|url=https://docs.arduino.cc/hardware/uno-rev3|website=docs.arduino.cc|access-date=2022-07-30}}</ref>. Dengan ATMega32u4, memungkinkan Arduino Leonardo untuk berkomunikasi sebagai Keyboard/Mouse dengan protokol USB-HID menggunakan pustaka Keyboard <ref>{{Cite web|title=Keyboard - Arduino Reference|url=https://www.arduino.cc/reference/en/language/functions/usb/keyboard/|website=www.arduino.cc|access-date=2022-06-17}}</ref>.
 
'''e. Arduino Fio'''
 
=== Arduino Fio ===
Bentuknya lebih unik, terutama untuk socketnya. Walau jumlah pin I/O digital dan input analognya sama dengan uno dan leonardo, tapi Fio memiliki Socket XBee. XBee membuat Fio dapat dipakai untuk keperluan projek yang berhubungan dengan wireless.
 
'''f.=== Arduino Lilypad''' ===
 
Bentuknya yang melingkar membuat Lilypad dapat dipakai untuk membuat projek unik. Seperti membuat amor iron man misalkan. Hanya versi lamanya menggunakan ATMEGA168, tapi masih cukup untuk membuat satu projek keren. Dengan 14 pin I/O digital, dan 6 pin input analognya.
 
'''g.=== Arduino Nano''' ===
Sepertinya namanya, Nano yang berukuran kecil dan sangat sederhana ini, menyimpan banyak fasilitas. Sudah dilengkapi dengan FTDI untuk pemograman lewat Micro USB. 14 Pin I/O Digital, dan 8 Pin input Analog (lebih banyak dari Uno). Dan ada yang menggunakan ATMEGA168, atau ATMEGA328.
 
Sepertinya namanya, Nano yang berukulan kecil dan sangat sederhana ini, menyimpan banyak fasilitas. Sudah dilengkapi dengan FTDI untuk pemograman lewat Micro USB. 14 Pin I/O Digital, dan 8 Pin input Analog (lebih banyak dari Uno). Dan ada yang menggunakan ATMEGA168, atau ATMEGA328.
 
'''h. Arduino Mini'''
 
=== Arduino Mini ===
Fasilitasnya sama dengan yang dimiliki Nano. Hanya tidak dilengkapi dengan Micro USB untuk pemograman. Dan ukurannya hanya 30&nbsp;mm x 18&nbsp;mm saja.
 
'''i.=== Arduino Micro''' ===
 
Ukurannya lebih panjang dari Nano dan Mini. Karena memang fasilitasnya lebih banyak yaitu; memiliki 20 pin I/O digital dan 12 pin input analog.
 
'''j.=== Arduino Ethernet''' ===
 
Ini arduino yang sudah dilengkapi dengan fasilitas ethernet. Membuat Arduino kamu dapat berhubungan melalui jaringan LAN pada komputer. Untuk fasilitas pada Pin I/O Digital dan Input Analognya sama dengan Uno.
 
'''k.=== Arduino Esplora''' ===
 
Rekomendasi bagi kamu yang mau membuat gadget sepeti Smartphone, karena sudah dilengkapi dengan Joystick, button, dan sebagainya. Kamu hanya perlu tambahkan LCD, untuk lebih mempercantik Esplora.
 
'''l.=== Arduino Robot''' ===
Ini adalah paket komplet dari Arduino yang sudah berbentuk robot. Sudah dilengkapi dengan LCD, Speaker, Roda, Sensor Infrared, dan semua yang kamu butuhkan untuk robot sudah ada pada Arduino ini.
 
Ini adalah paket komplet dari Arduino yang sudah berbentuk robot. Sudah dilengkapi dengan LCD, Speaker, Roda, Sensor Infrared, dan semua yang kamu butuhkan untuk robot sudah ada pada Arduino ini.
== Contoh program ==
<syntaxhighlight lang="c">
Baris 104 ⟶ 91:
{
digitalWrite (LED_PIN, HIGH); // menyalakan LED
delay (10002000); // Tunggu 12 detik (10002000 millisekon)
digitalWrite (LED_PIN, LOW); // matikan LED
delay (10002000); // Tunggu 12 detik
}
</syntaxhighlight>
 
== Contoh Pintu Otomatis Arduino & Sensor Ultrasonik ==
Di sini terdapat contoh teknologi microkontroller, yang mana arduino [https://trenpedia.com/pintu-otomatis-arduino-sensor-ultrasonik/ buka tutup pintu otomatis] arduino dan di tambahkan dengan sensor ultrasonik. Yang mana pintu otomatis menggunakan sensor ultrasonik ini dapat bekerja seperti pada pintu yang ada di dalam mall.
 
=== '''Pintu Otomatis Arduino''' ===
'''Alat Dan Bahan'''
 
Sebelum anda masuk pada rangkaian dan koding dari project buka tutup pintu otomatis, berikut alat dan bahan yang digunakan:
 
* Arduino Uno
* Micro Servo
* Kabel Jumper secukupnya
* Breadboard
* Sensor HC-SR04 (ultrasonik).
* LED merah dan biru
* Resistor 330 Ohm
 
=== Bentuk Rangkaian ===
Sebelum anda aplikasikan ke dalam bentuk pintu ada baiknya kita memahami bentuk rangkaian yang akan anda gunakan. rangkaian ini adalah rangkaian sedehana dan belum diaplikasikan ke dalam prototipe pintu. dapat di lihat pada [https://trenpedia.com/pintu-otomatis-arduino-sensor-ultrasonik/ gambar disini]
 
'''Keterangan konfigurasi kabel'''
 
* Pin 5v pada arduino dihubungkan ke VCC servo dan VCC sensor Ultrasonik
* pin GND pada Arduino dihubungkan ke GND servo dan GND Ultrasonik dan katoda LED
* pin 2 pada arduino dihubungkan ke LED Merah
* Pin 3 pada Arduino dihubungkan ke LED Hijau
* Pin 9 pada arduino dihubungkan ke kabel kuning servo.
* pin 12 pad arduino dihubungkan ke pin Trig pada sensor ultrasonic
* pin 13 pada arduino dihubungkan pada pin Echo pada sensor ultrasonik.
 
Setelah rangkaian telah sesuai dengan prototipe di atas maka sambungkan arduino pada pc/laptop dan jalankan software Arduino IDE.
 
Sebelum memasukkan koding kedalam arduino pastikan bahwa port arduino telah ter '''select.'''
 
* Pertama, Klik Tool -> Board -> Arduino Uno
* Kedua, Tool -> Port -> sesuaikan dengan port yang anda colokkan pada pc atau laptop anda.
* masukkan koding dibawah ini.
 
=== Kodingnya: ===
<syntaxhighlight lang="c">
//start koding
 
#include <NewPing.h> //Library untuk Sensor Ultrasonic
 
#include <Servo.h> //Library untuk Servo
 
#define trigPin 12 //Set Trigger HCSR04 di Pin digital 12
 
#define echoPin 13 //Set Echo HCSR04 di Pin digital 13
 
#define MAX_DISTANCE 500 //Set jarak maksimal
 
NewPing sonar(trigPin, echoPin, MAX_DISTANCE);
 
int LEDhijau = 3, LEDmerah = 2; //Set Pin LEDhijau dan LEDmerah
 
Servo myservo; //Buat object 1 buah motor servo
 
void setup() {
 
Serial.begin (115200); //Kecepatan komunikasi serial
 
pinMode(trigPin, OUTPUT); //Set pin Trigger sebagai output
 
pinMode(echoPin, INPUT); //Set pin Echo sebagai input
 
pinMode(LEDmerah, OUTPUT); //Set LEDmerah sebagai output
 
pinMode(LEDhijau, OUTPUT); //Set LEDhijau sebagai output
 
myservo.attach(9); //Set servo pada pin PWM 9
 
}
 
void loop() {
 
int duration, jarak,posisi=0,i;
 
digitalWrite(trigPin, LOW);
 
delayMicroseconds(2);
 
digitalWrite(trigPin, HIGH);
 
delayMicroseconds(10);
 
digitalWrite(trigPin, LOW);
 
duration = pulseIn(echoPin, HIGH);
 
jarak = (duration/2) / 29.1;
 
Serial.print(jarak);
 
Serial.println(” cm”);
 
if(jarak<=15) // Jarak (Cm) dapat anda sesuaikan
 
{
 
digitalWrite(LEDhijau, LOW); //LEDhijau mati
 
digitalWrite(LEDmerah, HIGH); //LEDmerah hidup
 
myservo.write(0); //Posisi servo pada 0 derajat
 
delay(1000); //Delay
 
}
 
else{ //Jika jarak lebih dari yang ditentukan
 
digitalWrite(LEDmerah, LOW); //LEDmerah mati
 
digitalWrite(LEDhijau, HIGH); //LEDhijau hidup
 
myservo.write(180); //Posisi servo pada 90 derajat
 
}
 
delay(1000); //Delay
 
}
</syntaxhighlight>
Berikut cara [https://trenpedia.com/pintu-otomatis-arduino-sensor-ultrasonik/ membuat pintu otomatis] arduino menggunakan kombinasi sensor ultrasonik.
 
== Papan yang kompatibel dengan Arduino ==
Baris 242 ⟶ 104:
* Freeduino MaxSerial
* Zigduino
* Panjerino
 
== Bacaan lanjutan ==
Baris 258 ⟶ 121:
* [http://arduino.cc Situs resmi Arduino]
 
[[Kategori:KomputerArduino| ]]