Управление выходами Arduino через USB

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Аватара пользователя
xor
Сообщения: 2045
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 289 раз
Поблагодарили: 632 раза

Re: Управление выходами Arduino через USB

Сообщение xor » Вс сен 29, 2019 4:29 pm

StryzhakA писал(а):
Вс сен 29, 2019 4:10 pm
Здравствуйте друзья. Пожалуйста, помогите разобраться: использую приложение arduino_gw. На сервер МД передает данные отлично. А вот передать с МД в ардуинку не могу. Написал вот такую функцию на Ардуинке:

Код: Выделить всё

void serial() {
  if (Serial.available() > 0) {
       String command = Serial.readString();
        if ((command == "5ON") && (RelayPumpStatusNow == 0)) {
     RelayPumpStatusNow = !RelayPumpStatusNow;
     delay(100);
        }
        else if ((content.equals("5OFF")) && (RelayPumpStatusNow == 1)) {
     RelayPumpStatusNow = !RelayPumpStatusNow;
     delay(100);
     }
     else if ((content.equals("6ON")) && (RelayConvStatusNow == 0)) {
     RelayConvStatusNow = !RelayConvStatusNow;
     delay(100);
        }
        else if ((content.equals("6OFF")) && (RelayConvStatusNow == 1)) {
     RelayConvStatusNow = !RelayConvStatusNow;
     delay(100);
     }
     else {
      Serial.println("Error command");
     }
  }
Serial.flush();
}
если в панели монитора пишу 5ON или другую из команд - все срабатывает.
Если с МД через arduino_gw отправляю использую вот такой код:

Код: Выделить всё

getURL('http://localhost:8086/?5OFF',0);
Как результат:
29.09.2019 16:08:21 > 5ON
29.09.2019 16:08:21
Error command

29.09.2019 16:08:24 > 5OFF
29.09.2019 16:08:24
Error command

Я так понимаю что Арудинка как то не так интерпритирует эти команды?
Спасибо вам за помощь
просто предположение -
может, вместо content.equals("хххх") использовать что-то, не проверяющее на равенство, а на вхождение подстроки?
может, там перевод каретки еще передается?
StryzhakA
Сообщения: 97
Зарегистрирован: Сб янв 23, 2016 3:57 pm
Благодарил (а): 3 раза
Поблагодарили: 1 раз

Re: Управление выходами Arduino через USB

Сообщение StryzhakA » Вс сен 29, 2019 4:37 pm

просто предположение -
может, вместо content.equals("хххх") использовать что-то, не проверяющее на равенство, а на вхождение подстроки?
может, там перевод каретки еще передается?
Хорошее предположение... А можете какой то пример привести?
Аватара пользователя
xor
Сообщения: 2045
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 289 раз
Поблагодарили: 632 раза

Re: Управление выходами Arduino через USB

Сообщение xor » Вс сен 29, 2019 5:15 pm

StryzhakA писал(а):
Вс сен 29, 2019 4:37 pm
просто предположение -
может, вместо content.equals("хххх") использовать что-то, не проверяющее на равенство, а на вхождение подстроки?
может, там перевод каретки еще передается?
Хорошее предположение... А можете какой то пример привести?
хе, не прожу под ардуино(
Аватара пользователя
xor
Сообщения: 2045
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 289 раз
Поблагодарили: 632 раза

Re: Управление выходами Arduino через USB

Сообщение xor » Вс сен 29, 2019 5:29 pm

ok google arduino строка начинается с
https://www.arduino.cc/reference/en/lan ... tartswith/

не?
StryzhakA
Сообщения: 97
Зарегистрирован: Сб янв 23, 2016 3:57 pm
Благодарил (а): 3 раза
Поблагодарили: 1 раз

Re: Управление выходами Arduino через USB

Сообщение StryzhakA » Пн сен 30, 2019 7:46 am

И еще у меня одна серьезная проблема: связь с сериал портом ардуино время от времени пропадает. И после таких падений програма arduino_gw автоматически не востанавливает связь, а надо это делать вручную. В чем может быть проблема, может кто сталкивался с таким? Это програмный или апаратный глюк?
Спасибо
Получается что на езернет хоть и не стабильно работало но все же стабильней чем через сериал.
Аватара пользователя
xor
Сообщения: 2045
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 289 раз
Поблагодарили: 632 раза

Re: Управление выходами Arduino через USB

Сообщение xor » Пн сен 30, 2019 8:03 am

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

Отправлено с моего Redmi 4X через Tapatalk

StryzhakA
Сообщения: 97
Зарегистрирован: Сб янв 23, 2016 3:57 pm
Благодарил (а): 3 раза
Поблагодарили: 1 раз

Re: Управление выходами Arduino через USB

Сообщение StryzhakA » Пт окт 04, 2019 12:13 pm

Здравствуйте друзья! У меня еще одна проблема. Majo Domo обменивается по сериал порту с Ардуинками через юсб-хаб, и я заметил, что если работает одна Ардуинка - все хорошо, но если две вместе - это приводит к подвисанию и остановке отправки сообщений с ардуинки на МД, или одной или двух вместе. Может вопрос в каких то часовых ограничениях - может надо выставить задержки между отправкой сообщений ардуникой к МД? Но знаю что топология шини юсб, это вопрос решает. В чем проблема?
Спасибо вам
Аватара пользователя
xor
Сообщения: 2045
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 289 раз
Поблагодарили: 632 раза

Re: Управление выходами Arduino через USB

Сообщение xor » Пт окт 04, 2019 2:18 pm

StryzhakA писал(а):Здравствуйте друзья! У меня еще одна проблема. Majo Domo обменивается по сериал порту с Ардуинками через юсб-хаб, и я заметил, что если работает одна Ардуинка - все хорошо, но если две вместе - это приводит к подвисанию и остановке отправки сообщений с ардуинки на МД, или одной или двух вместе. Может вопрос в каких то часовых ограничениях - может надо выставить задержки между отправкой сообщений ардуникой к МД? Но знаю что топология шини юсб, это вопрос решает. В чем проблема?
Спасибо вам
Номера портов для каждой ардуинки должны быть разные и для каждой должен быть запущен экземпляр ардуиногв, так сделано?

Отправлено с моего Redmi 4X через Tapatalk

StryzhakA
Сообщения: 97
Зарегистрирован: Сб янв 23, 2016 3:57 pm
Благодарил (а): 3 раза
Поблагодарили: 1 раз

Re: Управление выходами Arduino через USB

Сообщение StryzhakA » Пт окт 04, 2019 6:20 pm

xor писал(а):
Пт окт 04, 2019 2:18 pm
StryzhakA писал(а):Здравствуйте друзья! У меня еще одна проблема. Majo Domo обменивается по сериал порту с Ардуинками через юсб-хаб, и я заметил, что если работает одна Ардуинка - все хорошо, но если две вместе - это приводит к подвисанию и остановке отправки сообщений с ардуинки на МД, или одной или двух вместе. Может вопрос в каких то часовых ограничениях - может надо выставить задержки между отправкой сообщений ардуникой к МД? Но знаю что топология шини юсб, это вопрос решает. В чем проблема?
Спасибо вам
Номера портов для каждой ардуинки должны быть разные и для каждой должен быть запущен экземпляр ардуиногв, так сделано?

Отправлено с моего Redmi 4X через Tapatalk
Да, так и сделано. Для каждой ардуинки свой сериал порт, и для каждой отдельно запущена програма arduino_gw.
Аватара пользователя
xor
Сообщения: 2045
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 289 раз
Поблагодарили: 632 раза

Re: Управление выходами Arduino через USB

Сообщение xor » Сб окт 05, 2019 11:01 am

StryzhakA писал(а):
xor писал(а):
Пт окт 04, 2019 2:18 pm
StryzhakA писал(а):Здравствуйте друзья! У меня еще одна проблема. Majo Domo обменивается по сериал порту с Ардуинками через юсб-хаб, и я заметил, что если работает одна Ардуинка - все хорошо, но если две вместе - это приводит к подвисанию и остановке отправки сообщений с ардуинки на МД, или одной или двух вместе. Может вопрос в каких то часовых ограничениях - может надо выставить задержки между отправкой сообщений ардуникой к МД? Но знаю что топология шини юсб, это вопрос решает. В чем проблема?
Спасибо вам
Номера портов для каждой ардуинки должны быть разные и для каждой должен быть запущен экземпляр ардуиногв, так сделано?

Отправлено с моего Redmi 4X через Tapatalk
Да, так и сделано. Для каждой ардуинки свой сериал порт, и для каждой отдельно запущена програма arduino_gw.
Ну, тогда не знаю. У меня несколько лет назад одно устройство было подключено, но, в итоге, отказался. Частые отвалы были. Перешёл на вифи мост через еспшку.

Отправлено с моего Redmi 4X через Tapatalk

Ответить