Страница 3 из 4

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

Добавлено: Вс сен 29, 2019 4:29 pm
xor
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("хххх") использовать что-то, не проверяющее на равенство, а на вхождение подстроки?
может, там перевод каретки еще передается?

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

Добавлено: Вс сен 29, 2019 4:37 pm
StryzhakA
просто предположение -
может, вместо content.equals("хххх") использовать что-то, не проверяющее на равенство, а на вхождение подстроки?
может, там перевод каретки еще передается?
Хорошее предположение... А можете какой то пример привести?

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

Добавлено: Вс сен 29, 2019 5:15 pm
xor
StryzhakA писал(а): Вс сен 29, 2019 4:37 pm
просто предположение -
может, вместо content.equals("хххх") использовать что-то, не проверяющее на равенство, а на вхождение подстроки?
может, там перевод каретки еще передается?
Хорошее предположение... А можете какой то пример привести?
хе, не прожу под ардуино(

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

Добавлено: Вс сен 29, 2019 5:29 pm
xor
ok google arduino строка начинается с
https://www.arduino.cc/reference/en/lan ... tartswith/

не?

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

Добавлено: Пн сен 30, 2019 7:46 am
StryzhakA
И еще у меня одна серьезная проблема: связь с сериал портом ардуино время от времени пропадает. И после таких падений програма arduino_gw автоматически не востанавливает связь, а надо это делать вручную. В чем может быть проблема, может кто сталкивался с таким? Это програмный или апаратный глюк?
Спасибо
Получается что на езернет хоть и не стабильно работало но все же стабильней чем через сериал.

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

Добавлено: Пн сен 30, 2019 8:03 am
xor
Я в таких случаях перезапускал ее до установки связи

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


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

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

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

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

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


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

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

Отправлено с моего Redmi 4X через Tapatalk
Да, так и сделано. Для каждой ардуинки свой сериал порт, и для каждой отдельно запущена програма arduino_gw.

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

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

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

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