Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам > CyberWrt

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 27.03.2015, 06:32   #1
cyberbot
Member
 
Регистрация: 10.03.2015
Сообщений: 40
Вес репутации: 0
cyberbot is an unknown quantity at this point
По умолчанию Re: Модуль "CyberBot-2"

Эх, если б так всё просто было ))) У меня не получается в модуле терминала данные принять.
cat /dev/ttyUSB0 - в браузере секунд 20 крутится типа обновление страничики, потом ничего не происходит - не вижу в терминале ничего, аналогично и вывод в файл - файл создается, но в него ничего не пишется. Т.е. не могу я получить данные с ардуинки.
cyberbot вне форума   Ответить с цитированием
Старый 27.03.2015, 09:51   #2
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Модуль "CyberBot-2"

Цитата:
У меня не получается в модуле терминала данные принять.
Если разговор про веб терминал, то не получится, в описании модуля об этом есть предупреждение
Используйте PUTTY
Admin вне форума   Ответить с цитированием
Старый 27.03.2015, 10:06   #3
cyberbot
Member
 
Регистрация: 10.03.2015
Сообщений: 40
Вес репутации: 0
cyberbot is an unknown quantity at this point
По умолчанию Re: Модуль "CyberBot-2"

О! Что такое putty я знаю)
А как подключиться? Достаточно будет адреса IP и стандартного порта 22? Логин/пароль какие-то должны быть еще наверное )
cyberbot вне форума   Ответить с цитированием
Старый 27.03.2015, 10:16   #4
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Модуль "CyberBot-2"

адреса IP и протокол telnet
Admin вне форума   Ответить с цитированием
Старый 27.03.2015, 11:01   #5
cyberbot
Member
 
Регистрация: 10.03.2015
Сообщений: 40
Вес репутации: 0
cyberbot is an unknown quantity at this point
По умолчанию Re: Модуль "CyberBot-2"

Спасибо. Попробую)
cyberbot вне форума   Ответить с цитированием
Старый 27.03.2015, 16:07   #6
stD
Senior Member
 
Аватар для stD
 
Регистрация: 02.04.2012
Адрес: Питер
Сообщений: 1,125
Вес репутации: 1312
stD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant future
По умолчанию Re: Модуль "CyberBot-2"

Цитата:
Эх, если б так всё просто было ))) У меня не получается в модуле терминала данные принять.
Причём тут cat /dev/ttyUSB0...

...
Вы спросили:
Цитата:
если отослать две строки по WWWW
Я ответил:
Цитата:
Призрак конца строки)
И написал как посмотреть буфер.
stD вне форума   Ответить с цитированием
Старый 27.03.2015, 20:14   #7
cyberbot
Member
 
Регистрация: 10.03.2015
Сообщений: 40
Вес репутации: 0
cyberbot is an unknown quantity at this point
По умолчанию Re: Модуль "CyberBot-2"

mebitek
А как я этот буфер смотреть-то буду со стороны роутера?

Я зашиваю свой скетч. С вашими изменениями. Ваши изменения - это просто данные читаются из буфера и отправляются обратно. Причем пачками по 8 байт.

Теперь я подключаюсь по telnet к роутеру.
В консоли ввожу: echo WWWWWWWW > /dev/ttyUSB0
Теперь я хочу посмотреть что обратно вернул роутер и набираю: cat /dev/ttyUSB0
И вижу что консоль висит с минуты две, потом появляется готовность ввода:
root@CyberWrt:/#. Где мои восемь восьмёрок обратно? КАК мне их увидеть на роутере? Если у меня это получится, то я сам могу все диагностировать.

В сериал мониторе все нормально. Отправляю два раза по WWWW и получаю обратно пакет из восьма штук W. Но не интересует сериал монитор - я в нем давно все отладил. У меня не получается принимать команды в веб морды именно от модуля CyberBot-2 (((
cyberbot вне форума   Ответить с цитированием
Старый 09.08.2015, 13:01   #8
Denimo
Junior Member
 
Регистрация: 24.07.2015
Сообщений: 5
Вес репутации: 0
Denimo is an unknown quantity at this point
По умолчанию Re: Модуль "CyberBot-2"

Цитата:
Сообщение от cyberbot Посмотреть сообщение
3 компа, планшет, два ноута. 1 переходник USB-RS232. На работе еще этих переходников штук 10 можно найти. Я понимаю, что будь у меня пара USB/RS232, то все делается) Просто на работе я появлюсь через неделю и боюсь, к тому времени меня заставят отлаживать совсем другое )))

Ничего! Разберемся аналитически!!!

***

Вообщем разобрался!
Итак, обмен с ардуиной происходит по определённому прооколу (как отметили выше).
1) При нажатии кнопки происходит отправка в UART пакета из 8 байт: 7 байт префикса (ASCII коды след. символов: tx_com=) и восьмой байт - ASCII код нажатой кнопки.
2) При отжатии кнопки происходит отправка в UART пакета из 8 байт: 7 байт префикса (ASCII коды след. символов: tx_com=) и восьмой байт (ASCII код символа: х).

Считаю, что эту информацию надо вынести в топ этой темы как важная техническая информация.

Прошлая схема приёма у меня была неудачна и плохо работала если вдруг появлялся мусор в обмене. Я изменил схему для большей помехозащищенности.

В качестве функций у меня загорается светодиод, кроме функции stop - тогда он гаснет. Т.е. я ожидаю: нажимаю кнопку - светодиод горит, отпускаю кнопку - светодиод гаснет.

Проверяю на роутере. Светодиод загорается, если я нажму кнопку W. И иногда гаснет, когда убираю палец с кнопки. Никак не пойму почему у меня фильтруется вторая команда, отжатия кнопки. Браузер firefox. Попробовал на Opera - все нормально )))

А почему на firefox такая ерунда получается? Это лечится?
Цитата:
Сообщение от cyberbot Посмотреть сообщение
mebitek
А как я этот буфер смотреть-то буду со стороны роутера?

Я зашиваю свой скетч. С вашими изменениями. Ваши изменения - это просто данные читаются из буфера и отправляются обратно. Причем пачками по 8 байт.

Теперь я подключаюсь по telnet к роутеру.
В консоли ввожу: echo WWWWWWWW > /dev/ttyUSB0
Теперь я хочу посмотреть что обратно вернул роутер и набираю: cat /dev/ttyUSB0
И вижу что консоль висит с минуты две, потом появляется готовность ввода:
root@CyberWrt:/#. Где мои восемь восьмёрок обратно? КАК мне их увидеть на роутере? Если у меня это получится, то я сам могу все диагностировать.

В сериал мониторе все нормально. Отправляю два раза по WWWW и получаю обратно пакет из восьма штук W. Но не интересует сериал монитор - я в нем давно все отладил. У меня не получается принимать команды в веб морды именно от модуля CyberBot-2 (((
Здраствуйте! Абсолютно согласен, что это важно! Дело в том что, когда шлешь команду из одного символа например "фары" это символ "V" из отладочной консоли ардуины на РС или из Терминала CyberWrt, то светодиод срабатывает и вспыхивает четко и без глоков. Выслал 2 символа VV светодиод мигнул но не загорелся шлешь 3 символа VVV светодиод загорелся. Все работает стабильно! Но начинаешь слать эти команды из Веб морды CyberBot-2 сразу замечаешь баги, команда выполняется ардуиной через раз. Думаю это напрямую связано с префиксом который непонятно откуда берется веб мордой CyberBot-2.

записал я в ардуину вот такой вот скетч...


int serialData = 0;
int serialRDYtoSend = 0;

void setup(){
// Open serial connection.
Serial.begin(57600);
}

void loop(){
serialRead();
serialWrite();
}

void serialRead(void) {
if (Serial.available()) {
// Read byte
serialData = Serial.read();
serialRDYtoSend = 1;
}
}

void serialWrite(void) {
if (serialRDYtoSend) {
// Write byte + \n
Serial.write(serialData);
Serial.println();
serialRDYtoSend = 0;
}
}

С Этим скетчем ардуина становиться эхом, все что ей приходит она отправляет обратно.
потом этой командой инициализировал запись символов по порту
cat /dev/ttyACM0 > /tmp/arduino.dat
Жму кнопки на Веб морде CyberBot-2
Захожу в файл и вижу....
t
x
_
c
o
m
=
V
это значит все команды с таким префиксом tx_com=V.
команда отмены tx_comx.
Шлю команды из терминала. приходят символы.
V
V
V
или что угодно! Без всяких префиксов.Зачем этот префикс?И как его убрать из веб морды?Без него ардуина управляется стабильнее и без глюков, с ним через раз.
Denimo вне форума   Ответить с цитированием
Старый 09.08.2015, 18:20   #9
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Модуль "CyberBot-2"

Цитата:
Сообщение от Denimo Посмотреть сообщение
Здраствуйте! Абсолютно согласен, что это важно! Дело в том что, когда шлешь команду из одного символа например "фары" это символ "V" из отладочной консоли ардуины на РС или из Терминала CyberWrt, то светодиод срабатывает и вспыхивает четко и без глоков. Выслал 2 символа VV светодиод мигнул но не загорелся шлешь 3 символа VVV светодиод загорелся. Все работает стабильно! Но начинаешь слать эти команды из Веб морды CyberBot-2 сразу замечаешь баги, команда выполняется ардуиной через раз. Думаю это напрямую связано с префиксом который непонятно откуда берется веб мордой CyberBot-2.

записал я в ардуину вот такой вот скетч...


int serialData = 0;
int serialRDYtoSend = 0;

void setup(){
// Open serial connection.
Serial.begin(57600);
}

void loop(){
serialRead();
serialWrite();
}

void serialRead(void) {
if (Serial.available()) {
// Read byte
serialData = Serial.read();
serialRDYtoSend = 1;
}
}

void serialWrite(void) {
if (serialRDYtoSend) {
// Write byte + \n
Serial.write(serialData);
Serial.println();
serialRDYtoSend = 0;
}
}

С Этим скетчем ардуина становиться эхом, все что ей приходит она отправляет обратно.
потом этой командой инициализировал запись символов по порту
cat /dev/ttyACM0 > /tmp/arduino.dat
Жму кнопки на Веб морде CyberBot-2
Захожу в файл и вижу....
t
x
_
c
o
m
=
V
это значит все команды с таким префиксом tx_com=V.
команда отмены tx_comx.
Шлю команды из терминала. приходят символы.
V
V
V
или что угодно! Без всяких префиксов.Зачем этот префикс?И как его убрать из веб морды?Без него ардуина управляется стабильнее и без глюков, с ним через раз.
Используйте CyberBot-3 там все баги устранены
Admin вне форума   Ответить с цитированием
Старый 09.08.2015, 22:25   #10
Denimo
Junior Member
 
Регистрация: 24.07.2015
Сообщений: 5
Вес репутации: 0
Denimo is an unknown quantity at this point
По умолчанию Re: Модуль "CyberBot-2"

Цитата:
Сообщение от Admin Посмотреть сообщение
Используйте CyberBot-3 там все баги устранены
Спасибо за ответы, я прислушался, удалоось забустить третью морду, а надо было всего то правильный порт прописать в конфиге.Пошли команды, зашиваю скетч с первой страницыCyberBot3. Тоже самое,... что и с Второй мордой. Команды ардуиной Уно выполняются через раз. Убираю в скетче проверку префикса, он уже другой.Потом чищю все файлы веб морды от того же префикса и в третьей веб морде это удается, получаю в итоге что хотел, команду из одного символа.Ардуина работает стабильно! Радость и эйфория.))) 3 дня муки прошли не напрасно. Незнаю почему, кажись при 128 битном буфере юарта ардуина теряет символы на обычном swich.Берет по байту на проверку и теряется, хотя на скетче выше эхо приходит четко. И ничего не терялось.Почему это происходит непонятно.Только догадки может что то с библиотекой.

Последний раз редактировалось Denimo; 09.08.2015 в 23:04. Причина: ошибки
Denimo вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 03:09. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика