Паяльник

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Паяльник » Электроника - Hand Made » Управление шасси по Bluetooth


Управление шасси по Bluetooth

Сообщений 1 страница 3 из 3

1

Управление шасси по Bluetooth

Железо: акриловое шасси с али (можно вырезать самодельное), ардуино уно, драйвер двигателя L293D, 4 DC мотора колеса, блютуз модуль HC-05/06

Софт: программа с плеймаркета Bluetooth RC
Скетч для ардуино уно под видео

Для отладки мк без драйвера и двигателей к выводам LED1-LED4 цепляем светодиоды с резисторами по 220 Ом.
Питание раздельное для мк и драйвера двигателя по два аккум. 18650 li-ion

Код:
// Управление по Bluetooth

#include <SoftwareSerial.h>
// Bluetooth модуль HC-05/06 (пин код 1234) (Arduino pin 2,3)
#define rxPin 2 // Arduino in от tx HC-05 (прием данных от Bluetooth)
#define txPin 3 // Arduino out через делитель на rx HC-05 !!! (передача данных на Bluetooth) в нашем случае этот вывод не задействован

// Arduino - HC05/06
//   +3.3  -  Vcc
//   GND   -  GND
//   2pinRX -  TX

SoftwareSerial mySerial =  SoftwareSerial(rxPin, txPin); 

char cmnd;
int LED1 = 13; // A motor 1
int LED2 = 12; // B motor 1
int LED3 = 11; // C motor 2
int LED4 = 10; // D motor 2
int speedpinA=5; //enable motor 1
int speedpinB=6; //enable motor 2 

void setup()  
{
  Serial.begin(9600);
  mySerial.begin(9600);
  delay(5000);
  pinMode(LED1, OUTPUT);
  pinMode(LED2, OUTPUT);
  pinMode(LED3, OUTPUT);
  pinMode(LED4, OUTPUT);
  pinMode(speedpinA,OUTPUT);
  pinMode(speedpinB,OUTPUT); 
}

void reset_LED()
{
analogWrite(speedpinA,0);
analogWrite(speedpinB,0);
digitalWrite(LED1, LOW); // Мотор 1 стоп
digitalWrite(LED2, LOW);
digitalWrite(LED3, LOW); // Мотор 2 стоп
digitalWrite(LED4, LOW);
}

// Вперед
void forward() { 
    analogWrite(speedpinA,240);
    analogWrite(speedpinB,240);
    digitalWrite(LED4,LOW); // Мотор 1 вперед
    digitalWrite(LED3,HIGH);
    digitalWrite(LED2,LOW); // Мотор 2 вперед
    digitalWrite(LED1,HIGH); 
    delay(10);
}

// Назад 
void backward() { 
    analogWrite(speedpinA,240);
    analogWrite(speedpinB,240);
    digitalWrite(LED4,HIGH); // Мотор 1 назад
    digitalWrite(LED3,LOW);
    digitalWrite(LED2,HIGH); // Мотор 2 назад
    digitalWrite(LED1,LOW);
    delay(10); 
}

// Влево 
void left() { 
    analogWrite(speedpinA,240);
    analogWrite(speedpinB,240);
    digitalWrite(LED3,HIGH); // Мотор 1 вперед
    digitalWrite(LED4,LOW);
    digitalWrite(LED1,LOW); // Мотор 2 назад
    digitalWrite(LED2,HIGH);
    delay(10);  
}

// Вправо 
void right() { 
    analogWrite(speedpinA,240);
    analogWrite(speedpinB,240);
    digitalWrite(LED3,LOW); // Мотор 1 назад
    digitalWrite(LED4,HIGH);
    digitalWrite(LED1,HIGH); // Мотор 2 вперед
    digitalWrite(LED2,LOW); 
    delay(10); 
}

void loop()
{

  if (mySerial.available())
   {
     cmnd = (char) mySerial.read();
     Serial.print(cmnd); // Смотрим что пришло в порт в мониторе
    
    // При команде "F" включаем 1 светодиод
   if (cmnd == 'F')
   {
    
    forward();
   }

   // При команде "B" включаем 2 светодиод
   if ( cmnd == 'B')
   {
    
    backward();
    }
   // Команда "L" включаем 3 светодиод
   if ( cmnd == 'L')
    {
    
    left();
    }
   // При команде "R" включаем 4 светодиод
   if (cmnd == 'R')
   {
   
   right();
   } 
   // При команде "S" выключаем все
   if (cmnd == 'S')
   {
   
   reset_LED();
   } 
    
   }    
    
  if (Serial.available())
  { 
    while(Serial.available())
    {
      mySerial.write(Serial.read());
    }
    mySerial.println();
  }
}

0

2

Здорово, респект автору
тоже загорелся такое же сделать.
Глянул, на али сколько стоит шасси, решил что лучше выпилю сам, из подручных средств, сразу просьба автору, отсканируйте пожалуйста в масштабе 1:1 пластину шасси.
Размеры можно отправить в личку. Моторы и все остальное закажу на али.
Еще... , не плохо бы сделать что то, наподобие парктроников, чтобы авто останавливалось перед препятствием.

0

3

Нужно сделать полный привод, управляемость лучше будет, еще продумать алгоритм вращения колес при повороте

0


Вы здесь » Паяльник » Электроника - Hand Made » Управление шасси по Bluetooth


создать форум