Я имел в виду применения микроконтроллера с функционалом и возможностями, достаточными для решения поставленой задачи, но например других брендов.
Вид для печати
Сам глаз на них положил, сейчас тестирую, но первые результаты не в их пользу, Атмел работает стабильней, сложилось впечатление, что st завышает характеристики, если поставить с запасом, то стабильность вроде- бы возрастает, но тогда не получается выгоды по цене, вот и думаю, продолжаю тестить, нужно подобрать для своего нового девайса оптимальный контроллер. Лет 15 работаю с Атмелом.
Что будет - в приемный сокет будут приходить пакеты каждые 2мс. А ответы уходить раз в 5 мс. Учитывая таймаут в мастере 1 мс уже первый ответ будет просроченный и мастер его откинет. С каждым новым запросом задержка будет расти и мастер будет принимать всё более и более старые ответы. В какой то момент либо мастер (если он умный), либо slave (по переполнению) пересоздаст соединение, но это не поможет, т.к. см. условия.
Валенок. Модбас мастер не может отправлять следующий запрос не получив ответ или таймаут от предыдущего. Или это не ModBus Master, а собрание в дурдоме.
И если кто-то, видя что сокет продолжает принимать данные начинает его спамить запросами - сам себе злобный буратино, т.к. не выполняет спецификацию ModBus.
Причем и Modbus TCP, и Modbus в общем.
Вы хотите сказать, гр. Валенок, что на ответственных объектах отклоняетесь от спецификации ModBus?
И заказчики в курсе этого пердимонокля?
P.S. очередь, это очередь запросов от РАЗНЫХ мастеров, коих в приборе может быть 4 шт., 2 ModbusTCP, USB и тучка.
Вместо троленья, Валенок, возьмите листик и нарисуйте как должен вести себя шлюз при приходе:
а) Большего числа запросов чем он может обработать по 485
б) нескольких подряд запросов от мастера (на которые шлюз не успел ответить)
P.S. таки в очередь в туалет все мастера стоят с 1 (ОДНИМ) запросом к шлюзу :D
Я уже сам запутался о чём речь? Очередь и в африке очередь. Modbus TCP имеет 2 вариации - Modbus TCP, где может существовать очередь запросов (по размеру вопрос к девайсу), средствами TCP, и Modbus RTU over TCP, где очереди не существует как таковой, т.к. подразумевается просто конвертирование Modbus RTU на пакеты TCP с логикой исходного RTU.