![]() |
![]() |
#101 |
Junior Member
Регистрация: 03.10.2014
Адрес: Балашиха
Сообщений: 12
Вес репутации: 0 ![]() |
![]() Код:
#include <CyberLib.h> // Подключаем библиотеку #include <Servo.h> // Подключаем библиотеку сервоприводов Servo myservo1; Servo myservo2; long previousMillis; // Нужно для таймера int LedStep = 0; // Счетчик для LED int i; #define robot_go {D4_Low; D5_High; D6_High; D7_Low;} #define robot_back {D4_High; D5_High; D6_High; D7_High;} #define robot_stop {D4_Low; D5_Low; D6_Low; D7_Low;} #define robot_rotation_right {D4_Low; D5_High; D6_High; D7_High;} #define robot_rotation_left {D4_High; D5_High; D6_High; D7_Low;} #define LED_ON {D13_High;} #define LED_OFF {D13_Low;} #define Headlamp_ON {D8_Low;} #define Headlamp_OFF {D8_High;} #define Buzzer {tone(11, 494, 500);} #define init {D4_Out; D5_Out; D6_Out; D7_Out; D8_Out; D13_Out;} uint8_t inByte; void setup() { myservo1.attach(9); // Подключение сервоприводов к порту myservo2.attach(10); // Подключение сервоприводов к порту D11_Out; D11_Low; // Динамик Headlamp_OFF; // Фары выкл по умолчанию for(uint8_t i=0; i<12; i++) beep(80, random(100, 2000)); //звуковое оповещение готовности робота init; // Инициализация портов //Buzzer; // Инициализация портов динамика UART_Init(57600);// Инициализация порта для связи с роутером wdt_enable (WDTO_500MS); } void loop() { unsigned long currentMillis = millis(); // Обновление таймера if (LedStep == 0 && currentMillis - previousMillis > 500){ // Задержка 0,5 сек. previousMillis = currentMillis; // обновление таймер LED_ON; // Включить LedStep = 1; // Счетчик шагов } if (LedStep == 1 && currentMillis - previousMillis > 500){ // Задержка 0,5 сек. previousMillis = currentMillis; // обновление таймер LED_OFF; // Выключить LedStep = 2; // Счетчик шагов } if (LedStep == 2 && currentMillis - previousMillis > 500){ // Задержка 0,5 сек. LedStep = 0; // Счетчик шагов } if (UART_ReadByte(inByte)) //Еесли что то пришло { switch (inByte) // Смотрим какая команда пришла { case 'x': // Остоновка робота robot_stop; break; case 'W': // Движение вперед robot_go; break; case 'D': // Повопорт влево robot_rotation_left; break; case 'A': // Поворот вправо robot_rotation_right; break; case 'S': // Движение назад robot_back; break; case 'U': // Серво поднимается myservo1.write(i -= 20); break; case 'J': // Серво опускается myservo1.write(i += 20); break; case 'H': // Серво поворачивается влево myservo2.write(i += 20); break; case 'K': // Серво поворачивается вправо myservo2.write(i -= 20); break; case 'Y': // Серво поворачивается 85 myservo1.write(85); myservo2.write(85); break; case 'F': // Включить фары Headlamp_ON; break; case 'V': // Выключить фары Headlamp_OFF; break; case 'I': // Гудок Buzzer; break; } } wdt_reset(); } |
![]() |
![]() |
![]() |
#102 |
Junior Member
Регистрация: 03.10.2014
Адрес: Балашиха
Сообщений: 12
Вес репутации: 0 ![]() |
![]()
Код рабочий.Все прекрасно работало. Удаленно реагировал бес задержек.
Камеру купил не удачную Genius iSlim 2020AF Genius сильно тормозная и автофокус ужасный. А так в целом заработало сразу без бубнов, Использую Nano , Uno пока не смог подружить с этим кодом. |
![]() |
![]() |
![]() |
#103 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Скорость пробовали изменять?
|
![]() |
![]() |
![]() |
#104 |
Junior Member
Регистрация: 03.10.2014
Адрес: Балашиха
Сообщений: 12
Вес репутации: 0 ![]() |
![]()
Скорость честно говоря менять не пробовал , всегда работает то что пишешь в коде и стоит в настройках.
Буду пробовать снести все , а потом установлю все что доступно в разделе МОДУЛь |
![]() |
![]() |
![]() |
#105 |
Junior Member
Регистрация: 03.10.2014
Адрес: Балашиха
Сообщений: 12
Вес репутации: 0 ![]() |
![]()
Не сразу понял , сори, Вы имели введу понизить скорость ,пока не пробовал.
Буду пробовать . |
![]() |
![]() |
![]() |
#106 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Как проверите отпишитесь
Камеру лучше C270 покупать |
![]() |
![]() |
![]() |
#107 |
Junior Member
Регистрация: 03.10.2014
Адрес: Балашиха
Сообщений: 12
Вес репутации: 0 ![]() |
![]()
Фу , сам ни чего не понял. Четыре раза применял волшебную кнопку(галки везде),не помогало.
И о чудо следующая попытка увенчалась успехом. Все встало на свои места. Теперь о коде . Задуманное работает! Регулировка ползунка влияет на клавишу W т.е. вперед. На другие направления скорость осталась прежней. Повторюсь в программировании не силен, но я не вижу в коде задание для клавиш W A S D Я так понял что это шаблон ,который требуется пилить под себя .Верно? В любом случае огромное спасибо. |
![]() |
![]() |
![]() |
#108 |
Junior Member
Регистрация: 03.10.2014
Адрес: Балашиха
Сообщений: 12
Вес репутации: 0 ![]() |
![]()
Все, разобрался с кодом ,теперь все регулируется. Следующий этап вставить в код
сервы для камеры. УРА!!! |
![]() |
![]() |
![]() |
#109 |
Junior Member
Регистрация: 11.10.2014
Сообщений: 2
Вес репутации: 0 ![]() |
![]()
Здравствуйте Не могли бы вы добавить возможность посигналить Т.e отправить какую нибудь букву в arduino Например K Скетч допишу сам Заранее спасибо
|
![]() |
![]() |
![]() |
#110 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Добавил в репозиторий модифицированный модуль "CyberBot2"
|
![]() |
![]() |
![]() |
Здесь присутствуют: 4 (пользователей: 0 , гостей: 4) | |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|
|