كل المشاريع

سيارة تُتحكم بالبلوتوث

سيارة روبوت تُقاد من تطبيق الهاتف عبر وحدة HC-05.

مبتدئ

صور وفيديو المشروع

نبذة عن المشروع

تستقبل لوحة الأردوينو حروفاً (F, B, L, R, S) من تطبيق البلوتوث على الهاتف وتترجمها إلى أوامر حركة عبر درايفر L298N. مشروع ممتاز لفهم الاتصال التسلسلي UART.

المكونات المطلوبة

كود Arduino IDE

#include <SoftwareSerial.h>

SoftwareSerial bt(2, 3); // RX, TX -> HC-05 TX, RX

#define IN1 4
#define IN2 5
#define IN3 6
#define IN4 7
#define ENA 9
#define ENB 10

int speedVal = 200;

void drive(bool a1, bool a2, bool b1, bool b2) {
  digitalWrite(IN1, a1); digitalWrite(IN2, a2);
  digitalWrite(IN3, b1); digitalWrite(IN4, b2);
  analogWrite(ENA, speedVal);
  analogWrite(ENB, speedVal);
}

void setup() {
  pinMode(IN1,OUTPUT); pinMode(IN2,OUTPUT);
  pinMode(IN3,OUTPUT); pinMode(IN4,OUTPUT);
  pinMode(ENA,OUTPUT); pinMode(ENB,OUTPUT);
  bt.begin(9600);
  Serial.begin(9600);
}

void loop() {
  if (!bt.available()) return;
  char c = bt.read();

  switch (c) {
    case 'F': drive(1,0,1,0); break;   // forward
    case 'B': drive(0,1,0,1); break;   // backward
    case 'L': drive(0,1,1,0); break;   // left
    case 'R': drive(1,0,0,1); break;   // right
    case 'S': drive(0,0,0,0); break;   // stop
    default:
      if (c >= '0' && c <= '9') speedVal = map(c - '0', 0, 9, 80, 255);
      break;
  }
  Serial.println(c);
}