Mengontrol mobil dengan nodeMCU dan Arduino Uno
Oke, projek pertama akun ini akan membuat mobil remote dengan nodeMCU menggunakan aplikasi Blynk. Untuk aplikasi Blynk, bisa diunduh diplay store. Langsung aja ke proses pembuatannya! Mungkin pembaca bisa kunjungi blog emrizkis.wordpress.com juga hehe.
Perlengkapan:
Skematik:
Kita lakukan dua program, pertama program untuk nodeMCU dan kedua untuk Arduino Uno.
Berikut program untuk nodeMCU, bisa menggunakan example pada arduino IDE (jika sudah memasang library untuk Blynk).
#define BLYNK_PRINT Serial
#include
#include
char auth[] = "bakal ada di email kalian";
char ssid[] = "isi nama wifi kalian";
char pass[] = "password wifinya";
void setup()
{
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
}
void loop()
{
Blynk.run();
}
Udah upload program nodeMCU-nya. Sekarang ke settingan aplikasi Blynk-nya, berikut settingan di aplikasinya beserta pin yang dipilih untuk nodeMCU nya.
Berikut program untuk Arduino Uno:
#define Ki1 8
#define Ki2 9
#define Ka1 10
#define Ka2 11
const int maju = 4;
const int mundur = 5;
const int kiri = 6;
const int kanan = 7;
int kondisi1, kondisi2, kondisi3, kondisi4 = 0;
void setup() {
pinMode(Ki1, OUTPUT);
pinMode(Ki2, OUTPUT);
pinMode(Ka1, OUTPUT);
pinMode(Ka2, OUTPUT);
pinMode(maju, INPUT);
pinMode(mundur, INPUT);
pinMode(kiri, INPUT);
pinMode(kanan, INPUT);
}
void loop() {
kondisi1 = digitalRead(maju);
kondisi2 = digitalRead(mundur);
kondisi3 = digitalRead(kiri);
kondisi4 = digitalRead(kanan);
if (kondisi1 == HIGH && kondisi2 == LOW && kondisi3 == LOW && kondisi4 == LOW) {
digitalWrite(Ki1, HIGH);
digitalWrite(Ki2, LOW);
digitalWrite(Ka1, HIGH);
digitalWrite(Ka2, LOW);
}
if (kondisi1 == LOW && kondisi2 == HIGH && kondisi3 == LOW && kondisi4 == LOW) {
digitalWrite(Ki1, LOW);
digitalWrite(Ki2, HIGH);
digitalWrite(Ka1, LOW);
digitalWrite(Ka2, HIGH);
}
if (kondisi1 == LOW && kondisi2 == LOW && kondisi3 == HIGH && kondisi4 == LOW) {
digitalWrite(Ki1, LOW);
digitalWrite(Ki2, LOW);
digitalWrite(Ka1, HIGH);
digitalWrite(Ka2, LOW);
}
if (kondisi1 == LOW && kondisi2 == LOW && kondisi3 == LOW && kondisi4 == HIGH) {
digitalWrite(Ki1, HIGH);
digitalWrite(Ki2, LOW);
digitalWrite(Ka1, LOW);
digitalWrite(Ka2, LOW);
}
if (kondisi1 == LOW && kondisi2 == LOW && kondisi3 == LOW && kondisi4 == LOW) {
digitalWrite(Ki1, LOW);
digitalWrite(Ki2, LOW);
digitalWrite(Ka1, LOW);
digitalWrite(Ka2, LOW);
}
}
Sip selesai, tinggal jajal hehe. Selamat mencoba,