AJ-Explains-It-All
Published © GPL3+

Wireless CopyBot

A leader and his follower.

IntermediateFull instructions provided3 hours637
Wireless CopyBot

Things used in this project

Software apps and online services

Arduino IDE
Arduino IDE

Story

Read more

Code

Untitled file

Arduino
#include <SoftwareSerial.h>
SoftwareSerial BT(10, 11); //TX, RX respetively
String COMMAND;
void setup() {
 BT.begin(9600);
 Serial.begin(9600); // setting baud rate to 9600
  pinMode (2, OUTPUT);
  pinMode (3, OUTPUT);
  pinMode (4, OUTPUT);
  pinMode (5, OUTPUT);
  pinMode (6, OUTPUT);
  pinMode (7, OUTPUT);
  pinMode (8, OUTPUT);
  pinMode (9, OUTPUT);
}
void loop() {
  while (BT.available()){   //Check if there is an available byte to read
  delay(10); //Delay added to make thing stable
  char c = BT.read(); //Conduct a serial read
  COMMAND += c; //build the string- “forward”, “reverse”, “left” and “right”
  }
  if (COMMAND.length() > 0) {
    Serial.println(COMMAND);
    if(COMMAND == “forward”)
  {
    digitalWrite(8, HIGH);
    digitalWrite (9, HIGH);
    digitalWrite(6,LOW);
    digitalWrite(7,LOW);
    digitalWrite(2, HIGH);
    digitalWrite (3, HIGH);
    digitalWrite(4,LOW);
    digitalWrite(5,LOW);
    delay(100);
  }
  else if(COMMAND == “reverse”)
  {
    digitalWrite(8, LOW);
    digitalWrite (9, LOW);
    digitalWrite(6,HIGH);
    digitalWrite(7,HIGH);
    digitalWrite(2, LOW);
    digitalWrite (3, LOW);
    digitalWrite(4,HIGH);
    digitalWrite(5,HIGH);
    delay(100);
  }
  else if (COMMAND == “right”)
  {
    digitalWrite(8, LOW);
    digitalWrite (9, HIGH);
    digitalWrite(6,LOW);
    digitalWrite(7,LOW);
    digitalWrite(2, LOW);
    digitalWrite (3, HIGH);
    digitalWrite(4,LOW);
    digitalWrite(5,LOW);
    delay (100);
  }
 else if ( COMMAND == “left”)
 {
   digitalWrite(8, HIGH);
    digitalWrite (9, LOW);
    digitalWrite(6,LOW);
    digitalWrite(7,LOW);
    digitalWrite(2, HIGH);
    digitalWrite (3, LOW);
    digitalWrite(4,LOW);
    digitalWrite(5,LOW);
   delay (100);
 }
 else if (COMMAND == “stop”)
 {
digitalWrite(8, LOW);
    digitalWrite (9, LOW);
    digitalWrite(6,LOW);
    digitalWrite(7,LOW);
    digitalWrite(2, LOW);
    digitalWrite (3, LOW);
    digitalWrite(4,LOW);
    digitalWrite(5,LOW);
   delay (100);
 }
COMMAND=””;}} //Reset the variable

Credits

AJ-Explains-It-All
12 projects • 10 followers
Experienced embedded firmware and software developer. I have a great affinity towards ARM cortex based MCU's.
Contact

Comments

Please log in or sign up to comment.