Arduino Bluetooth Car එකක් හදමු

අද අපි හදන්නේ smart phone එකකින් control කරන්න පුලුවන් car එකක්. මේකෙදී Arduino board එක, Motor driver එක, Bluetooth module එක plug කරන්න වෙනම PCB එකක් හදලා තියනවා. එතකොට ගොඩක් පිළිවලට අපිට මේක හදාගන්නත් පස්සේ upgrade කරගන්නත් පුළුවන්.

අපිට මේකට මේ දේවල් අවශ්‍ය වෙනවා

  1. Arduino Board එකක් Buy
  2. HC-06 Bluetooth Module එකක් Buy
  3. Motor & Wheel x 4Buy
  4. Battery & Wire
  5. ඔක්කොම සම්බන්ධ කරන්න අවශ්‍ය ප්‍රමාණයක ප්ලාස්ටික් හෝ ලී කැබල්ලක්

* මම ගත්තේ nano board එකක්. වෙන ඕනම board එකක් පාවිච්චි කරන්නත් පුලුවන්
* HC-05 Bluetooth Module එකක් පාවිච්චි කරන්නත් පුළුවන්
* PCB එකක් නැතුව wire වලින් component ටික සම්බන්ධ කරගන්නත් පුළුවන්

මේ තියෙන්නේ circuit එකේ schematic diagram එක. මේකේ තියන component ගැන වීඩියෝ එකේ විස්තර කරලා තියනවා.

මේ විදියට තමයි PCB එක design කර ගත්තේ.

කාර් එක හැදුවට පස්සේ අපිට තියෙන්නේ මේකට program එක ලියන එක. මම Motor Controlling ගැන, Motor Speed Controlling ගැන සහ Bluetooth වලින් වැඩ කරන විදිය ගැන කියලා දීපු වීඩියෝ බැලුවානම් ඔයාට තනියම program එක ලියාගන්න පුළුවන්. බැලුවේ නැත්තම් මේ වීඩියෝ තුන බලන්න. උපරිම try කරන්න තනියම program එක කියාගන්න. ඒකෙන් ඔයාගෙ programming skills වැඩි කරගන්න පුලුවන්

මම පල්ලෙහා example code එකකුත් දාලා තියනවා.

# define leftMfront 6
# define leftMback 9
# define rightMfront 10
# define rightMback 11
# define frontL 2
# define backL 4
# define horn 7
int mSpeed = 255;
char data;

void setup() {
  pinMode(leftMfront, OUTPUT);
  pinMode(leftMback, OUTPUT);
  pinMode(rightMfront, OUTPUT);
  pinMode(rightMback, OUTPUT);
  pinMode(frontL, OUTPUT);
  pinMode(backL, OUTPUT);
  pinMode(horn, OUTPUT);
  Serial.begin(9600);
}

void loop() {

  if (Serial.available()) {
    data = Serial.read();
    Serial.println(data);

    if (data == 'F') {
      goFront();
    }
    else if (data == 'B') {
      goBack();
    }
    else if (data == 'R') {
      goRight();
    }
    else if (data == 'L') {
      goLeft();
    }
    else if (data == 'G') {
      forwardLeft();
    }
    else if (data == 'I') {
      forwardRight();
    }
    else if (data == 'H') {
      backLeft();
    }
    else if (data == 'j') {
      backRight();
    }
    else if (data == 'S') {
      Stop();
    }
    else if (data == '1') {
      mSpeed = 100;
    }
    else if (data == '2') {
      mSpeed = 110;
    }
    else if (data == '3') {
      mSpeed = 130;
    }
    else if (data == '4') {
      mSpeed = 150;
    }
    else if (data == '5') {
      mSpeed = 170;
    }
    else if (data == '6') {
      mSpeed = 190;
    }
    else if (data == '7') {
      mSpeed = 210;
    }
    else if (data == '8') {
      mSpeed = 220;
    }
    else if (data == '9') {
      mSpeed == 230;
    }
    else if (data == 'q') {
      mSpeed == 250;
    }
    else if (data == 'W') {
      analogWrite(2, HIGH);
    }
    else if (data == 'w') {
      analogWrite(2, LOW);
    }
    else if (data == 'V') {
      analogWrite(4, HIGH);
    }
    else if (data == 'v') {
      analogWrite(4, LOW);
    }
    else if (data == 'X') {
      analogWrite(7, HIGH);
    }
    else if (data == 'x') {
      analogWrite(7, LOW);
    }
  }
}


void goFront() {
  analogWrite(leftMfront, mSpeed);
  analogWrite(leftMback, 0);
  analogWrite(rightMfront, mSpeed);
  analogWrite(rightMback, 0);
}


void goBack() {
  analogWrite(leftMfront, 0);
  analogWrite(leftMback, mSpeed);
  analogWrite(rightMfront, 0);
  analogWrite(rightMback, mSpeed);
}


void goRight() {
  analogWrite(leftMfront, mSpeed);
  analogWrite(leftMback, 0);
  analogWrite(rightMfront, 0);
  analogWrite(rightMback, 0);
}


void goLeft() {
  analogWrite(leftMfront, 0);
  analogWrite(leftMback, 0);
  analogWrite(rightMfront, mSpeed);
  analogWrite(rightMback, 0);
}


void forwardLeft(){
  analogWrite(leftMfront,mSpeed * 1/3);
  analogWrite(leftMback, 0);
  analogWrite(rightMfront, mSpeed);
  analogWrite(rightMback, 0);
}


void forwardRight(){
  analogWrite(leftMfront, mSpeed);
  analogWrite(leftMback, 0);
  analogWrite(rightMfront, mSpeed * 1 / 3);
  analogWrite(rightMback, 0);
}


void backLeft(){
  analogWrite(leftMfront, 0);
  analogWrite(leftMback, mSpeed * 1 / 3);
  analogWrite(rightMfront, 0);
  analogWrite(rightMback, mSpeed);
}


void backRight(){
  analogWrite(leftMfront, 0);
  analogWrite(leftMback, mSpeed);
  analogWrite(rightMfront, 0);
  analogWrite(rightMback, mSpeed * 1 / 3);
}

void Stop() {
  analogWrite(leftMfront, 0);
  analogWrite(leftMback, 0);
  analogWrite(rightMfront, 0);
  analogWrite(rightMback, 0);
}


මේ PCB 15ක් මම ඔයාලට දෙනවා Giveaway එකක් විදියට. විස්තර ඔක්කොම YouTube video එකේ description එකේ තියනවා

13 thoughts on “Arduino Bluetooth Car එකක් හදමු

  1. Lassanata pahadiliwa uganwanawa arduino ha wenath Electronic pilibada danuma. aiiyata bohoma sthuuthee me dewal uganwanawata idiriyatath meewa saarthakawa karanna wasanawa labewaa ❤️👍

      1. Aiya mama me dawaswala thama oyage videos balanna gaththe..mama mula idalama baluwa..thamath balanawa…aththatama oya nam supiriyatama arduino kiyala denawa sir kenek wage…niyamai..oyata thawa digu kaalayak meka karagena yanna mama suba pathanawa……good luck….

  2. Nisal aiye aththatama oyata godak pin oyage thiyena danuma apita denawata mama godak asai me wage dewal igena ganna eth mata godak danuma na mama oyage videos balanawa podi podi dewal tikak karala baluwa… mata thawa igena ganna godak dewal thiuenawa mama asai oyata puluwannm apita igena ganna thawath pahasu kamramayak hadala denna clz ekk hari karala…oyata suba pathanawa api wage ayata me dewal kiyala denawata puluwannm mata car bluetooth pcb ekk denna mama genna baluwa ඩිසයින් kara eth loku ganak yanawa aiye puluwannam ekk denna bs

Leave a Reply

Your email address will not be published. Required fields are marked *