Eugene_VB 0 May 18 Posted May 18 · Report post Нужен совет тех кто имел дело с Linux в какой нибудь системе на производстве. Скажу сразу что я с Линуксом не дружу, возможно пока. Cтоит задача разработать контроллер: -Дисплей 320x240 монохромный, в основном для меню. Как вариант подороже - TFT 800x600. -RS485 modbus master ( активно опрашиваются до 10 устройств) -RS485 modbus slave (иногда опрашивается сторонним контроллером) -eMMC для лога -USB для флешки (firmware update или лог слить) -Сell modem (для отправки измерений на сервер, удаленные настройки, firmware update) -WiFi, Bluetooth, -Ethernet -Кнопки -Менюха довольно большая около 3000 строк в древовидном стиле. -Удаленный апдейт как для себя так и для подключенных устройств. Упрощенный вариант такого контроллера с эраном 20x4 до сих пор работает и продается хоть и построил я его лет 6 назад на PICе. Но запросы с тех пор выросли и контроллер надо апгрейдить. Рассматривается 2 варианта построения нового контроллера: 1) STM32F4 + RTOS (основной вариант) 2) Процессор + Linux (поступившая альтернатива ) Вариант 2 вызывает у меня недоверие в виду отсутствия знаний и опыта. Я конечно всегда с удовольствием пробую что то новое, но как то не хочется застрять с разработкой совсем на долго. Вопрос, стоит ли в моем случае заморачиваться с Linux при отсутствии опыта даже если сроки совсем не жмут и немного чешутся руки? Какие могут быть преимущества и проблемы? Сложность разработки печатной платы во внимание не берем. Рассматривается также вариант процессора на готовой плате + расширительная плата своей разработки. Из преимуществ Linux вижу только два: - можно будет запустить Python, посадить начинающего программера и пусть он менюшки лепит и другие хотелки заказчиков. - если дело дойдет до TFT дисплея 800x600, то проще строить полноценный графический user interface. Самое большое мое опасение в контроллере на Linux — удаленный апдейт. Quote Share this post Link to post Share on other sites More sharing options...
aaarrr 40 May 18 Posted May 18 · Report post 54 minutes ago, Eugene_VB said: Из преимуществ Linux вижу только два: А еще вот это все - 55 minutes ago, Eugene_VB said: -eMMC для лога -USB для флешки (firmware update или лог слить) -Сell modem (для отправки измерений на сервер, удаленные настройки, firmware update) -WiFi, Bluetooth, -Ethernet -Кнопки -Менюха довольно большая около 3000 строк в древовидном стиле. реализуется много проще и удобнее. 57 minutes ago, Eugene_VB said: Самое большое мое опасение в контроллере на Linux — удаленный апдейт. Проблемы как таковой нет, но для реализации потребуется некоторый опыт. Quote Share this post Link to post Share on other sites More sharing options...
krux 8 May 18 Posted May 18 · Report post USB и Ethernet этого достаточно чтобы linux выиграл в эту игру Quote Share this post Link to post Share on other sites More sharing options...
Eugene_VB 0 May 18 Posted May 18 (edited) · Report post Спасибо. Начну копать в направлении Линукса. Буду благодарен за ссылки на толковые доки. Edited May 18 by Eugene_VB Quote Share this post Link to post Share on other sites More sharing options...
EdgeAligned 21 May 18 Posted May 18 · Report post По аппаратной части второго варианта: плата микрокомпутера Raspberry Pi4 и дисплей хоть 1280х720. Ну и конечно повозиться придется с новой парадигмой программирования по сравнению с STM. Quote Share this post Link to post Share on other sites More sharing options...
xvr 12 May 18 Posted May 18 · Report post modbus у вас RTU или ASCII? Linux от рождения не RT система, с modbus RTU возможны сюрпризы (особенно если предполагается большая нагрузка) И второй момент - врямя загрузки. У Linux оно побольше будет, чем у RTOS. Из коробки вообще довольно приличное, даже после buildroot всё равно ощутимое. Quote Share this post Link to post Share on other sites More sharing options...
x893 19 May 18 Posted May 18 · Report post 2 hours ago, Eugene_VB said: Буду благодарен за ссылки на толковые доки. Толковые доки зависят от выбора SOC и версии linux. Quote Share this post Link to post Share on other sites More sharing options...
gerber 4 May 18 Posted May 18 · Report post Если можно обойтись без Линукса - нужно обойтись без Линукса. (с) моё Особенно если вы не ас в shell и не гуру в open source - технологиях. Можно утопнуть очень надолго в отладке всяких разных нюансов типа "почему иногда промаргивает дисплей" или "почему не всегда подхватывается USB-флэшка". 1 Quote Share this post Link to post Share on other sites More sharing options...
gosha-z 1 May 18 Posted May 18 · Report post 16 minutes ago, xvr said: modbus у вас RTU или ASCII? Linux от рождения не RT система, с modbus RTU возможны сюрпризы (особенно если предполагается большая нагрузка) И второй момент - врямя загрузки. У Linux оно побольше будет, чем у RTOS. Из коробки вообще довольно приличное, даже после buildroot всё равно ощутимое. Прочитал десять раз, ничего, относящегося к realtime, не увидел Quote Share this post Link to post Share on other sites More sharing options...
gridinp 2 May 18 Posted May 18 · Report post В 18.05.2023 в 22:20, gosha-z сказал: Прочитал десять раз, ничего, относящегося к realtime, не увидел ну если даже и оно надо, то для debian-а realtime ядро ставится прямо из репозитария Quote Share this post Link to post Share on other sites More sharing options...
xvr 12 May 18 Posted May 18 · Report post 1 hour ago, gosha-z said: Прочитал десять раз, ничего, относящегося к realtime, не увидел modbus RTU использует интервалы в передаваемом потоке в качестве элемента протокола. С не RT системой и без поддержки на нижнем уровне (в ОС или железе) могут быть неожиданные неприятные сюрпризы с замером этих самых интервалов. Это не значит, что ничего не будет работать, это значит, что надо это принимать во внимание, иначе система может навернуться где нибудь у пользователя в совершенно непредсказуемый момент. Quote Share this post Link to post Share on other sites More sharing options...
tonyk_av 15 May 19 Posted May 19 · Report post 6 hours ago, xvr said: Это не значит, что ничего не будет работать, это значит, С чего бы это вдруг? 14 hours ago, Eugene_VB said: Рассматривается 2 варианта построения нового контроллера: 1) STM32F4 + RTOS (основной вариант) У СТМ периферия имеет аппаратную поддержку Модбас именно в части отработки паузы для RTU и окончания приёма по символу для ASCII. Quote Share this post Link to post Share on other sites More sharing options...
sasamy 3 May 19 Posted May 19 · Report post On 5/18/2023 at 4:25 PM, Eugene_VB said: Скажу сразу что я с Линуксом не дружу, возможно пока. для начала вам надо попробовать а потом решать самому, если опыт нулевой - 100% вы ничего хорошего не сделаете на любой ОС. Самый близкий путь - тот который знаешь. Quote Share this post Link to post Share on other sites More sharing options...
uni 6 May 19 Posted May 19 · Report post 18 часов назад, Eugene_VB сказал: Самое большое мое опасение в контроллере на Linux — удаленный апдейт. Думается, что при малом опыте, опасением будет его администрирование и всё, что с этим связано. Многие не лезут в Linux, так как для обслуживания такого устройства, тем более при встраиваемом применении, нужно понимать "культуру" работы с Linux. Простота работы со стандартной периферией оборачивается сложностью сопровождения. Есть фирма starterkit.ru, у которой на сайте можно ознакомиться с документацией на производимые платы, где Linux используется. Советую почитать как они сопровождают свои процессорные модули и какие проблемы описывают пользователи на форуме. Quote Share this post Link to post Share on other sites More sharing options...
sasamy 3 May 19 Posted May 19 · Report post On 5/19/2023 at 11:24 AM, uni said: Многие не лезут в Linux, так как для обслуживания такого устройства, тем более при встраиваемом применении, нужно понимать "культуру" работы с Linux. просто надо иметь опыт работы с Linux и уметь пользоваться интернетом https://bootlin.com/blog/building-a-linux-system-for-the-stm32mp1-remote-firmware-updates/ On 5/19/2023 at 11:24 AM, uni said: Простота работы со стандартной периферией оборачивается сложностью сопровождения. чтобы иметь актуальную кодовую базу надо сразу смотреть есть ли поддержка процессора в ванильном ядре Quote Share this post Link to post Share on other sites More sharing options...