#1 2022-05-05 12:38:48

Cossack
Учасник
Зареєстрований: 2022-04-14
Повідомлень: 30

Помогите с кодом управления для дрона

Здраствуйте я делаю код управления  для двухколёсного дрона.
Але я не очень хорош в программировании.
Проблема в том что он работает не так как я думал.
Я хотел сделать так пока я держу кнопку он будет ехать и когда отпускаю ее он останавливается
но у меня не очень получилось его сделать.
Код пишется у меня для придложения для телефона.

Предложения которые я использую
"Bluetooth RC Car"
и также
"Arduino bluetooth controller"


int val;
int enA = 9;
int in1 = 6;
int in2 = 2;
int in3 = 4;
int in4 = 3;
int enB = 5;
void setup()
{
Serial1.begin(9600);
pinMode(enA, OUTPUT);
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
pinMode(13, OUTPUT); 
pinMode(enB, OUTPUT);
}

void acc(){
  for(int i=0; i<256; i++){
    analogWrite(enB, i);
    analogWrite(enA, i);
    delay(40);
  }
}

void dec(){
    for(int i=255; i>0; --i){
    analogWrite(enB, i);
    analogWrite(enA, i);
    delay(40);
}}
void(* resetFunc) (void) = 0;

void loop()
{
if (Serial1.available()) // проверка поданных команд
{
val = Serial1.read();
if (val == '8') //вперед
  {
digitalWrite(13, HIGH);
digitalWrite(in1,LOW);
digitalWrite(in2, HIGH);
digitalWrite(in3,LOW);
digitalWrite(in4, HIGH);
acc();
dec();
delay(40);
  }
if (val == '4') //ліво
  {
digitalWrite(13, HIGH);
digitalWrite(in1,HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3,LOW);
digitalWrite(in4, HIGH);
acc();
dec();
delay(40);
  }
if (val == '6') //право
  {
digitalWrite(13, HIGH);
digitalWrite(in1,LOW);
digitalWrite(in2, HIGH);
digitalWrite(in3,HIGH);
digitalWrite(in4, LOW);
acc();
dec();
delay(40);
  }
if (val == '2') //назад
  {
digitalWrite(13, HIGH);
digitalWrite(in1,HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3,HIGH);
digitalWrite(in4, LOW);
acc();
dec();
delay(40);
  } 
if(val =='1')
  {
resetFunc();
  }
}
}

Неактивний

#2 2022-05-05 18:52:08

ard125
Учасник
Зареєстрований: 2019-01-30
Повідомлень: 120

Re: Помогите с кодом управления для дрона

Cossack пише:

Предложения которые я использую
"Bluetooth RC Car"

Гугл? Не, не слышал.
Ты приложение то хоть настроил под свой код (или код под приложение)?

Неактивний

#3 2022-05-06 00:21:10

Cossack
Учасник
Зареєстрований: 2022-04-14
Повідомлень: 30

Re: Помогите с кодом управления для дрона

ard125 пише:
Cossack пише:

Предложения которые я использую
"Bluetooth RC Car"

Гугл? Не, не слышал.
Ты приложение то хоть настроил под свой код (или код под приложение)?

Да настраивал под "Arduino bluetooth controller"

Неактивний

#4 2022-05-06 13:22:55

ard125
Учасник
Зареєстрований: 2019-01-30
Повідомлень: 120

Re: Помогите с кодом управления для дрона

Cossack пише:

Да настраивал под "Arduino bluetooth controller"

Arduino bluetooth controller в отличии от Bluetooth RC Car не умеет "отпускать" кнопку

Остання редакція ard125 (2022-05-06 13:36:38)

Неактивний

#5 2022-05-06 13:42:22

Cossack
Учасник
Зареєстрований: 2022-04-14
Повідомлень: 30

Re: Помогите с кодом управления для дрона

ard125 пише:
Cossack пише:

Да настраивал под "Arduino bluetooth controller"

Arduino bluetooth controller в отличии от Bluetooth RC Car не умеет "отпускать" кнопку

Понятно
а так код будет работать как я хочу?

Неактивний

#6 2022-05-06 13:48:27

ard125
Учасник
Зареєстрований: 2019-01-30
Повідомлень: 120

Re: Помогите с кодом управления для дрона

Кто ж тебя знает чего ты хочешь. У тебя во всех твоих темах один и тот же код. То ты дрона собираешь, то машинку. Собери, проверь. Тебе уже практически все разжевали

Неактивний

#7 2022-05-06 15:42:56

Cossack
Учасник
Зареєстрований: 2022-04-14
Повідомлень: 30

Re: Помогите с кодом управления для дрона

ard125 пише:

Кто ж тебя знает чего ты хочешь. У тебя во всех твоих темах один и тот же код. То ты дрона собираешь, то машинку. Собери, проверь. Тебе уже практически все разжевали

Так у меня двухколёсный дрон

Неактивний

#8 2022-05-06 20:09:16

ard125
Учасник
Зареєстрований: 2019-01-30
Повідомлень: 120

Re: Помогите с кодом управления для дрона

Объясни назначение этих функций

acc();
dec();

Неактивний

#9 2022-05-10 21:30:02

zzz
Гість

Re: Помогите с кодом управления для дрона

Напиши ВОИД СТОП, в котором все движения обнуляются.
После каждого ифа направлений поставь элсе СТОП.
Только надо придумать чтобы другие элсе свои стопы не включали.

#10 2022-05-10 21:36:46

zzz
Гість

Re: Помогите с кодом управления для дрона

ard125 пише:

Объясни назначение этих функций

acc();
dec();

Это типа - нажал кнопку и один светодиод плавно включился а второй плавно погас.
И пока они зажигаются и гаснут ничего не работает. smile

#11 2022-05-10 21:49:44

ard125
Учасник
Зареєстрований: 2019-01-30
Повідомлень: 120

Re: Помогите с кодом управления для дрона

zzz пише:

Напиши ВОИД СТОП, в котором все движения обнуляются.
После каждого ифа направлений поставь элсе СТОП.
Только надо придумать чтобы другие элсе свои стопы не включали.

Не поможет. Причину см. в своем ответе #10

Неактивний

#12 2022-05-10 22:14:25

zzz
Гість

Re: Помогите с кодом управления для дрона

Эти функции ТСу надо в луп писать через милис. А не отдельно.
Эхх в простейшей дуине логики не хотят понимать. Для этих ньюансов даже не надо знать строения чипа.

Швидке повідомлення

Введіть повідомлення і натисніть Надіслати

Підвал форуму