Simkin 0 15 июня, 2021 Опубликовано 15 июня, 2021 · Жалоба Здравствуйте . Подскажите, знающие люди, на основе чего реализовать UART удлинитель на скорости 115200 через сеть ? Объем данных для передачи по 128 byte за один сеанс связи в каждом направлении но с задержкой запрос - ответ не более 100 mc. Периодичность сеансов раз в 10 минут . Понятно что не напрямую между модулями а через сервер , скорее всего по TCP . MQTT не подходит из за медлительности . По крайней мере то что тестировалось на публичных бесплатных платформах такой как HiveMQ с SIM7000 в 4G сети дает задержку межу отправкой пакета от сервера до прихода к модулю и обратно к серверу минимум 1 сек. Какой собственно порядок действий должен быть ? Мне нужно арендовать сервер + статический IP где то территориально близко , затем установить там TCP сервер и уже по такой схеме коненктить модули через этот TCP ? Всё это для того что бы минимизировать временные задержки при передачи . Как то же реализуют малые значения пинга на игровых серверах . Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 11 15 июня, 2021 Опубликовано 15 июня, 2021 · Жалоба 22 минуты назад, Simkin сказал: Здравствуйте . Подскажите, знающие люди, на основе чего реализовать UART удлинитель на скорости 115200 через сеть ? Объем данных для передачи по 128 byte за один сеанс связи в каждом направлении но с задержкой запрос - ответ не более 100 mc. Периодичность сеансов раз в 10 минут . Для передачи 256 байт на скорости 115200 нужно минимум 22 мс. Если будет обертка из АТ-команд и промежуточный МК-шлюз, то будет еще медленнее, т.к. сначала данные нужно загрузить в шлюз, а потом ответ от GSM-модуля через шлюз получить. 22 минуты назад, Simkin сказал: Понятно что не напрямую между модулями а через сервер , скорее всего по TCP . MQTT не подходит из за медлительности . По крайней мере то что тестировалось на публичных бесплатных платформах такой как HiveMQ с SIM7000 в 4G сети дает задержку межу отправкой пакета от сервера до прихода к модулю и обратно к серверу минимум 1 сек. У меня быстрее чем 5 секунд устанавливать соединение не получалось (bgs2t). Иногда 30 секунд. 22 минуты назад, Simkin сказал: Какой собственно порядок действий должен быть ? Мне нужно арендовать сервер + статический IP где то территориально близко , затем установить там TCP сервер и уже по такой схеме коненктить модули через этот TCP ? Всё это для того что бы минимизировать временные задержки при передачи . Как то же реализуют малые значения пинга на игровых серверах . Сотовая связь очень не надежная. Иногда услуги GPRS просто может не быть (сколь угодно долго). Характерные времена там - секунды. Многое зависит от покрытия сигналом. Как вариант: можно держать соединение постоянно. Если сеансы 10 минутные, то за 30 секунд до сеанса устанавливаете соединение, затем в момент Х обмениваетесь с сервером и разрываете соединение на 10 минут. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Simkin 0 15 июня, 2021 Опубликовано 15 июня, 2021 · Жалоба 1. 115200 для старта , полагаю 921600 несколько форсирует события в цепи МК - GSM модуль 2. Соединение держим открытым , периодический посылая пакеты для продления сеанса в ожидании полезной нагрузки - резонно 3. Безусловно задержки со стороны сотовой сети принимаются во внимание . И там ни каких гарантий по пингу. MQTT в SIM700 и как надстройка над TCP вполне годная тема . Решает ли вопрос скорости платные тарифы от например того же Сloudmqtt или же радикально путь через аренду стат.IP ? Исследования на тему "Benchmark of MQTT servers" показывают от 10мс на мин нагрузках до 50мс при 100.000 сообщений в секунду. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Simkin 0 15 июня, 2021 Опубликовано 15 июня, 2021 · Жалоба Некоторые наблюдения сделанные на основе теста . Цель - сравнить скорость обмена пакетами Дано : Сloudmqtt брокер . К брокеру подключены два подписчика : 1) GSM модуль через 4G . 2) PC(Win) c MQTT Explorer . С доступом в сеть интернет через точку доступа WIFI включенную на смартфоне . который использует ту же сотовую сеть что и модуль (1) Итог : пакет 32 байта отображается в окне MQTT Explorer буквально мгновенно (извините за нецифровое значение). И только спустя минимум секунду модуль рожает этот же пакет через свой порт . Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Katatsuburi 0 17 июня, 2021 Опубликовано 17 июня, 2021 · Жалоба Как правило Ваша задача - "удлинитель UART", решается следующим образом, модуль конфигурируется для работы в качестве ТСР Клиента или Сервера (в зависимости от топологии конкретной здачи), далее переводится в "прозрачный режим" (ранее он находился в командном режиме), после чего, все данные поступающие в порт модуля отпрвляются в антенну, а данные из сети, соответственно передаются в порт. Ваша задача заключается лишь в том, что бы отлавливать ситуации, когда провайдер разорвет соединение (например сообщение "DISCONNECTED") Касательно задержек сети, никто ничего не гарантирует, по моим наблюдениям, пинги могут доходить до нескольких сотен миллисекунд. В реальных задачах, необходимо "общаться" с оборудованием, которое "понимает" вполне конкретные команды (посылки) в неразрывном виде, поэтому вторая задача, это принимать из сети как правило "рванные" части одного сообщения, и отправлять потребителю в неразрывном виде. Касательно статики, при решении практических задач сбора данных (управления) как правило, используется так называемая "серая" статика, которая существует внутри сети провайдера и выхода в интернет не предполагает, да он и не нужен. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Самоделкин 0 18 июня, 2021 Опубликовано 18 июня, 2021 · Жалоба On 6/15/2021 at 5:04 PM, Simkin said: Подскажите, знающие люди, на основе чего реализовать UART удлинитель на скорости 115200 через сеть ? Объем данных для передачи по 128 byte за один сеанс связи в каждом направлении но с задержкой запрос - ответ не более 100 mc. Периодичность сеансов раз в 10 минут . Один простой вопрос -у Вас устройство мобильное или стационарное ? трансляторов UART в сеть интернет продается огромное количество . Точно нужен модем ? Потому что скорость передачи будет очень зависеть от внешний условий. Дождь, снег итд. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Simkin 0 18 июня, 2021 Опубликовано 18 июня, 2021 · Жалоба 2 часа назад, Самоделкин сказал: у Вас устройство мобильное или стационарное ? Оба устройства стационарные . 17.06.2021 в 09:27, Katatsuburi сказал: модуль конфигурируется для работы в качестве ТСР Клиента или Сервера Если с подключением к серверу в качестве клиента \модуль 1\ все понятно . При условии что у сервера есть IP по которому можно зайти извне указав его в АТ команде . AT+CIPSTART=”TCP”,”IP”,port >> CONNECT OK Но как соединиться с модулем сконфигурированным как сервер \модуль 2\ ? APP note говорит следующее : - AT+CIPSERVER=1,1234 Start the TCP server, listening port:1234 - AT+CIFSR Get local IP address - AT+CIPSTATUS OK STATE SERVER LISTENING В ответ на AT+CIFSR оператор даёт локальный (внутрисетевой) IP для \модуль 2\. Но подставив этот IP в команду AT+CIPSTART для \модуль 1\ соединение ж не происходит Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Самоделкин 0 18 июня, 2021 Опубликовано 18 июня, 2021 · Жалоба 4 hours ago, Simkin said: Оба устройства стационарные . Тогда зачем вам "огород городить" ? Куча устройств решают эту проблему за очень разумные деньги. Moxa,Lantronix,NEC на любой кошелек и вкус. Там все есть уже готовое только подключить и подать питание. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbinger 10 20 июня, 2021 Опубликовано 20 июня, 2021 · Жалоба Так м.б. предполагается установка в местах, где никаких проводов не проложено, кроме питания. В этом случае со временем может вылезть другая проблема - некоторые операторы "банят" SIM-карты после длительного отсутствия перемещений абонента; стационарное размещение оговаривается отдельно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 235 20 июня, 2021 Опубликовано 20 июня, 2021 · Жалоба 49 минут назад, Harbinger сказал: некоторые операторы "банят" SIM-карты после длительного отсутствия перемещений абонента; стационарное размещение оговаривается отдельно. Т.е. - если человек сломал ногу и лежит в гипсе, то ему ещё и симку заблокируют?! Для полноты ощущений.... А если абонент - инвалид или просто - престарелый человек, который почти не выходит из дома? Неуэто им нужно менять тарифный план на "Инвалидский"? Это уже какая-то дискриминация получается. За такое и в суд подать можно. PS: Что-то странное рассказываете - не должно быть такого. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbinger 10 20 июня, 2021 Опубликовано 20 июня, 2021 · Жалоба Отголоски "войны со шлюзами". По IMEI ещё смотрели, обычные телефоны не отключали, естественно. В последние года 3, впрочем, за ситуацией не слежу - несколько сменилась тематика. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
smart_pic 7 20 июня, 2021 Опубликовано 20 июня, 2021 · Жалоба Делали модемы под конкретные задачи на SIM900, SIM 800C, SIM5300 лучшие результаты показал SIM5300. Модем еще нужно настроить , а вернее настроить ТСР соединение по которому будете отправлять. Нужно отключать Nagle ( Алгоритм Нейгла ) чтобы сеть сразу отправляла пакеты без ожидания оптимального заполнения данными. В этом случае работает лучше , но 100 mc - обеспечить не удастся. Скорее всего оборудование которое пытаетесь "удлинить" по СОМ порту не расчитано на работу через модем. А малая задержка отклика гарантирует , что чужие не пролезут Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться