![]() |
![]() |
#21 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Могу дать пример на PHP без либы
PHP код:
|
![]() |
![]() |
![]() |
#22 |
Senior Member
Регистрация: 06.11.2012
Сообщений: 153
Вес репутации: 0 ![]() |
![]()
спасибо, а кнопочки добавляются на Jscript ?
|
![]() |
![]() |
![]() |
#23 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Можно и html
PHP код:
Код для Arduino PHP код:
|
![]() |
![]() |
![]() |
#24 | |
Senior Member
Регистрация: 06.11.2012
Сообщений: 153
Вес репутации: 0 ![]() |
![]()
а вот обнаружил еще такое..
у меня в скетче в setup есть вывод строчки, в которой я указываю версию скрипта: Цитата:
Serial.println("y ver 0.15"); то после инита # stty -F /dev/ttyACM0 raw speed 115200 -crtscts -hupcl и открытия порта # cat /dev/ttyACM0 оно не только прочитает то что было в порту - то есть строчку эту, но и ВЫПОЛНИТ команду и серв отработает: root@OpenWrt:~# cat /dev/ttyACM0 y ver 0.15 Yes! почему так ? что ему говорит что нужно прочитанные символы из порта обратно загнать в порт ? если там будет серия символов-команд, то оно их выполнит по очереди, уже проверял.. |
|
![]() |
![]() |
![]() |
#25 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Я привел сырой пример обмена данными
Для посылки команды нужно индетефицировать устройства как минимум по трем символам Или обмен данными по протоколу |
![]() |
![]() |
![]() |
#26 |
Senior Member
Регистрация: 06.11.2012
Сообщений: 153
Вес репутации: 0 ![]() |
![]()
ну это для совсем крутых )
мне непонятно почему при чтении ИЗ порта происходит запись этих данных В этот же порт ? или как это еще можно объяснить.. |
![]() |
![]() |
![]() |
#27 | |
Senior Member
Регистрация: 06.11.2012
Сообщений: 153
Вес репутации: 0 ![]() |
![]()
обнаружил еще одну проблему - arduino самостоятельно устанавливает положение сервов при запуске.
оказалось, что при открытии порта, чтобы передать ей команду, она зачемто выставляет на обоих сервах 93 градуса.. тестовый скетч: Цитата:
# screen /dev/ttyACM0 115200 и после нажатия кнопки t получаю такой вывод ttYes! 0 hr1 93 vr1 93 ну а последующие нажатия t приводят к ожидаемому: ttYes! 0 hr1 50 vr1 60 ttYes! 0 hr1 50 vr1 60 почему он вначале центрирует сервы ? как это отключить ? UPD: даже если открыть порт по другому: tail -f /dev/ttyACM0 или cat /dev/ttyACM0 я вижу что сервы устанавливаются в свои центральные значения - камера, что установлена на них направляется на одну точку.. Последний раз редактировалось d00m; 09.12.2012 в 01:38. |
|
![]() |
![]() |
![]() |
#28 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
А что делает h_servo.read(); и vr = v_servo.read();
Я так понимаю эти функции считывают из буфера последния значения положения сервомоторов Так вот у тебя сначала считываются значения которые установлены по умолчанию, а только потом записываются новые значения И только на втором цикле уже считываются новые значения и т.д. |
![]() |
![]() |
![]() |
#29 |
Senior Member
Регистрация: 06.11.2012
Сообщений: 153
Вес репутации: 0 ![]() |
![]()
http://arduino.cc/en/Reference/ServoRead
присваивают переменным последние значения положения сервов. |
![]() |
![]() |
![]() |
#30 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Присваивают h_servo.write(); и w_servo.write(50);
Читай предыдущее сообщение попробуй вот так PHP код:
|
![]() |
![]() |
![]() |
Здесь присутствуют: 5 (пользователей: 0 , гостей: 5) | |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|
|