xvr 12 19 мая, 2023 Опубликовано 19 мая, 2023 · Жалоба 6 hours ago, tonyk_av said: У СТМ периферия имеет аппаратную поддержку Модбас именно в части отработки паузы для RTU и окончания приёма по символу для ASCII Отлично, осталось убедится что Линуксовый драйвер последовательного порта об этой поддержке знает и воспользоваться ею (это совет для ТС) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eugene_VB 0 19 мая, 2023 Опубликовано 19 мая, 2023 · Жалоба Про MODBUS. Используем RTU через RS485 или через TCP (но не одновременно). Контролируемые производственные процессы относительно вялотекущие, поэтому контроллеру реал тайм не нужен, +/- пару секунд это приемлемо. Так что ожидаемую паузу между пакетами можно и увеличить, если такая настройка доступна. Хотя количество данных может быть до 2Кбайт за раз с одного устройства на 9600 или 19200. Опрос раз в 10 сек. Время загрузки системы до 1 мин тоже пойдет. Оказалось что один из наших недавних программеров новобранцев имеет опыт с Линукс на Малинке хоть он сам и не гуру, но это намного больше опыта чем у меня сейчас 🙂 Продолжаю копать чтоб окончательно приянть решение. Спасибо всем откликнувшимся! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
xvr 12 19 мая, 2023 Опубликовано 19 мая, 2023 · Жалоба 1 hour ago, Eugene_VB said: Контролируемые производственные процессы относительно вялотекущие, поэтому контроллеру реал тайм не нужен, +/- пару секунд это приемлемо. Реалтайм желателен не вашим 'вялотекущим' процессам, а 'RTU через RS485' 1 hour ago, Eugene_VB said: Так что ожидаемую паузу между пакетами можно и увеличить Там пауза отделяет пакеты друг от друга, и при передаче от опрашиваемого устройства определяется устройством. Уточните этот момент ПЕРЕД тем как принимать окончательное решение о выборе Linux'а, а то может оказаться очень больно 😞 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 19 мая, 2023 Опубликовано 19 мая, 2023 · Жалоба 24 minutes ago, xvr said: Там пауза отделяет пакеты друг от друга, и при передаче от опрашиваемого устройства определяется устройством. Опрашиваемое устройство в modbus по своей воле ничего не передает. Поэтому отсутствие аппаратного тайм-аута может только несколько замедлить обмен. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eugene_VB 0 19 мая, 2023 Опубликовано 19 мая, 2023 (изменено) · Жалоба 1 hour ago, xvr said: Реалтайм желателен не вашим 'вялотекущим' процессам, а 'RTU через RS485' Я имел ввиду случай (если такой может быть) если Линукс вдруг тупит и разрвыает прием modbus пакета. Ну например из 16 отправленх ему байт сначала он принял 12 и сразу отдал это в аппликейшн на обработку, а оставшиеся 4 тоже сразу принял, но они зависли в каком нибудь промежуточном буффере, и переданы на дельнейшую обработку с задержкой. Увеличение таймаута для детектирования конца пакета может помочь, хотя это уже и не по стандарту. Ну и на передачу от Линукс к слейву может быть та же проблема. Я так понял что и сами таймауты могут быть измеряны Линуксом не верно. Изменено 19 мая, 2023 пользователем Eugene_VB Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dimka76 60 19 мая, 2023 Опубликовано 19 мая, 2023 · Жалоба On 5/19/2023 at 1:03 PM, xvr said: Отлично, осталось убедится что Линуксовый драйвер последовательного порта об этой поддержке знает и воспользоваться ею (это совет для ТС) при должном навыке драйвер можно и подправить. А можно и свой написать, раз уж железо позволяет. Я про STM, если что ))) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gridinp 3 19 мая, 2023 Опубликовано 19 мая, 2023 · Жалоба В 19.05.2023 в 21:00, Eugene_VB сказал: Я имел ввиду случай (если такой может быть) если Линукс вдруг тупит и разрвыает прием modbus пакета. ничего там не разрывает, если пакет идёт сплошной то драйвер его так одним буфером вам и передаст, используйте libmodbus, вроде как беспроблемная библиотека Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexunder 4 19 мая, 2023 Опубликовано 19 мая, 2023 · Жалоба 2 hours ago, gridinp said: используйте libmodbus, вроде как беспроблемная библиотека Поддержу насчёт libmodbus. Тоже применяем ее в своем проекте. Не нужно изобретать велосипед. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexunder 4 19 мая, 2023 Опубликовано 19 мая, 2023 · Жалоба On 5/18/2023 at 3:25 PM, Eugene_VB said: Нужен совет тех кто имел дело с Linux в какой нибудь системе на производстве. У меня небольшой опыт, год назад решали несколько похожую задачу. Требовалось опрашивать до 16 устройств Modbus (RS-485, либо TCP), вытаскивать данные из регистров, паковать данные в JSON-подобный словарь ключ-значение и отправлять облако через Azure IoT Hub. Делали на основе Beaglebone Enhanced , там стоит теперь уже не особо популярный чип от TI, но позволяет запускать подкастрированный Debian, т.е. довольно жирный и популярный дистрибутив Линукс. С Линукс работать удобно, многие вещи стандартизированы и хорошо задокументированы, но посидеть и поразбираться придётся, чтобы въехать в тему. Из недостатков конкретно упомянутой платы могу отметить падёж wifi, который вызывал перезагрузку ОС 🙂. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 20 мая, 2023 Опубликовано 20 мая, 2023 · Жалоба В 18.05.2023 в 17:53, krux сказал: USB и Ethernet этого достаточно чтобы linux выиграл в эту игру Смешно))) Скажем так, если при сегодняшних куче исходников по данным интерфейсам, вы не сможете их поднять на обычном МК, без всяких линуксов и пр, то может просто программирование МК - это не ваше? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 20 мая, 2023 Опубликовано 20 мая, 2023 · Жалоба 13 minutes ago, mantech said: Скажем так, если при сегодняшних куче исходников по данным интерфейсам, вы не сможете их поднять на обычном МК А поднимете на обычном МК, чтобы WiFi-свисток через USB-хаб работал? (ну, полудюжины моделей хватит) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 20 мая, 2023 Опубликовано 20 мая, 2023 · Жалоба Только что, aaarrr сказал: А поднимите на обычном МК, чтобы WiFi-свисток через USB-хаб работал? Поднимал, только потом отказался из-за надежности свистка, сделал выбор в виде роутера с вафлей и 4Г по эзернету - ни разу не пожелел... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 20 мая, 2023 Опубликовано 20 мая, 2023 · Жалоба 12 minutes ago, mantech said: Поднимал Полудюжину с хабом? 12 minutes ago, mantech said: роутера с вафлей и 4Г ...и Линуксом 🙂 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 20 мая, 2023 Опубликовано 20 мая, 2023 (изменено) · Жалоба 10 минут назад, aaarrr сказал: Полудюжину с хабом? Не понял, причем тут хаб? 10 минут назад, aaarrr сказал: ...и Линуксом 🙂 Наверно. По простому - я буду рекомендовать линукс только, если задача построить мощный файловый сервер, вэб-сервер, именно мощный, подразумевающий поддержку PHP, работу с SQL БД и пр, а не встроенный в какую-то железку для настройки ее конфига, для работы с видеопотоками, распознаванием образов и пр, причем в качестве железа будут мощные ПК или сервера. Для встраиваемых задач, подобных ТСовской и подобным все прекрасно поднимается на обычных МК и работает при правильном написании гораздо лучше и надежнее. Еще и учитывайте это - "Вариант 2 вызывает у меня недоверие в виду отсутствия знаний и опыта." Попробуйте переубедить... Изменено 20 мая, 2023 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 20 мая, 2023 Опубликовано 20 мая, 2023 · Жалоба 10 minutes ago, mantech said: Не понял, причем тут хаб? Потому что в большинстве самописных и цельнотянутых решений для МК сие устройство поддерживается никак. 10 minutes ago, mantech said: работает при правильном написании гораздо лучше и надежнее Десятки человеколет нужны на правильное написание и тестирование. 10 minutes ago, mantech said: По простому - я буду рекомендовать линукс только, если задача построить мощный файловый сервер, вэб-сервер, именно мощный, подразумевающий поддержку PHP, работу с SQL БД и пр, а не встроенный в какую-то железку для настройки ее конфига То есть роутер, например, пишем врукопашную? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться