mantech 48 28 сентября, 2022 Опубликовано 28 сентября, 2022 · Жалоба 1 час назад, uni сказал: С тех пор как некоторые ПЛК стали объединять с HMI панелями (последние лет 7), от народа требуют уже уметь не только алгоритмы рисовать, но и изобразительным искусством заниматься. Скажу вам, как разработчик именно такого ПЛК с HMI, в данном случае ПЛК - это просто контроллер с экраном, мощным процом и набором портов и интерфейсов. Разработку дизайна ведут на спец софте на ПК, ПЛК только выполняет то, что заложили в этой проге, в качестве среды исполнения - фреймворк на Си-подобном языке, для простоты написания, сейчас думаю над тем, чтобы добавить туда что-то стандартное из языков МЭК, т.к. АСУТПшники в сях как-то ни бум-бум, даже жутко упрощенных. Всякие "рисовательные алгоритмы" уже как-то не в моде, больше выбирают ST. Ну а на счет драйверов, то согласен, архивы никуда не денешь, причем сейчас не только на сд карту но и на удаленный сервер требуют... Лентяи везде, тут до сд карты еще добраться нужно))) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
uni 6 28 сентября, 2022 Опубликовано 28 сентября, 2022 (изменено) · Жалоба Я когда-то занимался адаптацией Codesys к семейству таких ПЛК, то есть проектировал SDK для прикладных программистов. Всё SDK было написано на объектном ST, который лет 5 уже даже в России "стандартизован". ГОСТ перевели. Программу выше, написанную на C++, я портировал на объектный ST под почти тоже железо, т. е. написал на Codesys 3.5. Но понять её мало кто мог, ибо ST-программисты в массе своей на ПЛК даже Delphi не знают, не то что Си. Они слабо соображают как вообще всем этим пользоваться. Тем более, когда нет кучи. Codesys позволяет всю разработку вести в одной IDE. Экранные формы и код - всё вместе. Есть такой кросс компилятор matiec, который может помочь в плане добавления мэковских языков. Он входит в состав Beremiz IDE. Изменено 28 сентября, 2022 пользователем uni Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 48 28 сентября, 2022 Опубликовано 28 сентября, 2022 · Жалоба 1 час назад, uni сказал: Они слабо соображают как вообще всем этим пользоваться. Тем более, когда нет кучи. Ну эт скорей не АСУТПшники, а какие-то интернетчики-сайтописатели видимо были. Я в основном работал все-таки с АСУТПшниками, у них ST в порядке вещей... 1 час назад, uni сказал: Я когда-то занимался адаптацией Codesys к семейству таких ПЛК, то есть проектировал SDK для прикладных программистов. Всё SDK было написано на объектном ST, который лет 5 уже даже в России "стандартизован". ГОСТ перевели. Вот тут чего-то мысль не уловил, на сколь помню, codesys SDK - это Сишная закрытая либа, которую встраивают в МК и обвешивают нужными драйверами. Сколь не пытался найти ее в открытом доступе, реверсированную, разумеется - так и не нашел. ST - программы пишутся в ИДЕ, она их компилит в код среды исполнения codesys, который уже выполняется на МК... 1 час назад, uni сказал: Он входит в состав Beremiz IDE. Ооо, это смотрел, темный лес, похоже даже для самих разработчиков))) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
uni 6 28 сентября, 2022 Опубликовано 28 сентября, 2022 · Жалоба Я когда-то и на заводе автоматчиком работал. Двух-ниточный прокатный стан горячего проката проволоки. Так вот LD там был основным языком, немного FBD. Это на S-400 было. Это правда лет 10 назад было. Весь завод от печки, до бухтоувязчика автоматизирован таким образом. Я всё это сопровождал. Не один конечно. Дежурных было двое. Около 4-х основных ПЛК было, без печки и бухтоувязчика если считать. Не дай бог сунешься туда в код. Вся автоматизация практически гейропейская. И автоматчик в этом случае - обслуживающий персонал. Что-то вроде обезъянок, которых белые люди учили что можно, а что нельзя. Документации на ПО не было, так как это ноу-хау. Да, ты смотришь на исходный код при обслуживании, но нет описания как он работает в целом. Это только, если отечественная разработка, то доки есть. Так что я знаю кто там сидит на заводах, сам таким был. И ibaPDA, о котором я упоминал, стащен с завода. Был ещё немецкий PLC Analyzer, хорошая софтина. До сих пор аналогов найти не могу. Codesys создали те, кто новый стандарт ввели, где ST стал ООП языком (с ограничениями). Это многокомпонентная современная система, которая работает на этом самом Linux'е, собранном с поддержкой real time. Они правильно сделали, абстрагировавшись от железа. У них есть куча портов их системы под разные железки, потому что портировать posix программы гораздо проще, чем велосипеды. Они предоставляют ядро - realtime часть системы, для которой делается некоторая адаптация под конкретный ПЛК. Я этим занимался. Адаптацией Codesys под железку. Делать это можно несколькими путями. Драйвера там можно писать как на Си, так и на ST объектном. Я проходил специальное обучение в единственном дилерском центре у нас в России. Это очень сложно. Не имеет смысла искать или реверсить эту систему. Она разная для каждого ПЛК. Можно купить Raspberry Pi и установить туда Runtime конректно для этого проца. Он будет бесплатно работать около 2 ч для кода и 30 мин для драйверов. Этот Runtime можно скачать с сайта Codesys. В Beremiz IDE нет ничего сложного, кроме того, что товарищи стали жертвой питономоды. Скрипты писать на нём можно ещё, но не интерфейс. Так вот кросс-компилятор matiec - это отдельная часть, он есть на github вроде. Ты на вход ему подаешь текст на мэк языке, а он возвращает исходники на Си, которые можно собрать целевым компилятором. Есть ещё один способ сделать поддержку мэк языков - реализовать клон Митсубиши ПЛК FX2N или FX3N. На радиокоте есть проект с исходниками, который частично покрывает набор команд. Тогда можно использовать родную среду для программирования такого ПЛК - GXWorks2. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 48 28 сентября, 2022 Опубликовано 28 сентября, 2022 · Жалоба 4 минуты назад, uni сказал: реализовать клон Митсубиши ПЛК FX2N или FX3N. На радиокоте есть проект с исходниками, который частично покрывает набор команд. Ссылочку можно? Глянул бы ради интереса, вспомнить старые увлечения ПЛК))) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
uni 6 28 сентября, 2022 Опубликовано 28 сентября, 2022 · Жалоба Мне лень искать, проще прикрепить то, что осталось у меня. Я посмотрю на днях. Там будет IAR под STM32F103. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
tonyk_av 42 29 сентября, 2022 Опубликовано 29 сентября, 2022 · Жалоба 7 hours ago, uni said: На радиокоте есть проект с исходниками Там глюкавый проект выложен. Рантайм содержит ошибки, поэтому не все команды будут исполняться правильно, более того, ещё и зависнуть может. 7 hours ago, uni said: реализовать клон Митсубиши ПЛК FX2N или FX3N Реализовали FX2N. В России мне известны три работающих ядра, совместимых с FX2N. Два из них у нас. ;) С FX3 сложнее. Япы о многом умолчали в доках, поэтому пока протокол работы с ПЛК не до конца изучен. Да и времени на эту работу нет. Всё делается на голом энтузиазме, в свободное время. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 48 29 сентября, 2022 Опубликовано 29 сентября, 2022 · Жалоба 3 часа назад, tonyk_av сказал: В России мне известны три работающих ядра, совместимых с FX2N. На них есть исходники? 3 часа назад, tonyk_av сказал: Да и времени на эту работу нет. Я прекрасно понимаю, у самого нет его(( 3 часа назад, tonyk_av сказал: FX2N или FX3N А в чем отличие? Хотя бы в 2х словах.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
tonyk_av 42 29 сентября, 2022 Опубликовано 29 сентября, 2022 · Жалоба 28 minutes ago, mantech said: На них есть исходники? Странный вопрос. А куда они делись? Разве что авторы пропили винчестер с ними. :))) Кстати, я немного ошибся. У одного автора есть два варианта: один на С, второй на ассемблере. У нас один вариант на С, второй на С++. У каждого варианта есть свои плюсы и минусы. 32 minutes ago, mantech said: А в чем отличие? Хотя бы в 2х словах.. Протокол обмена со средой программирования как минимум. Разная работа нескольких команд. Это сходу. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
tonyk_av 42 29 сентября, 2022 Опубликовано 29 сентября, 2022 (изменено) · Жалоба 7 hours ago, mantech said: На них есть исходники? Изменено 29 сентября, 2022 пользователем tonyk_av Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 48 30 сентября, 2022 Опубликовано 30 сентября, 2022 · Жалоба 14 часов назад, tonyk_av сказал: Ну эт я понял, что они есть в природе, посмотреть-то на них можно в открытом доступе? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
tonyk_av 42 30 сентября, 2022 Опубликовано 30 сентября, 2022 · Жалоба 3 minutes ago, mantech said: Ну эт я понял, что они есть в природе, посмотреть-то на них можно в открытом доступе? Нет. В открытом- нет. Пардон, но исходники рантайма ПЛК- это не фотки с клубничных сайтов, чтоб на них праздно смотрели все кому захотелось просто так на них посмотреть. Или 3S выложила исходники CoDeSys в свободный доступ, чтобы все могли на них смотреть? Хотите встроить в свой ПЛК или частотник- и покажем, и расскажем. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
uni 6 30 сентября, 2022 Опубликовано 30 сентября, 2022 (изменено) · Жалоба Вот тема: Open source plc STM32F103RBT6 source code Mitsubishi PLCFX1 Там есть архивы, но они не причёсанные. Постараюсь в выходные выложить свой компилируемый вариант. Может получится в CubeIDE перекинуть, посмотрю. В IAR там проблема с китайскими иероглифами (редактор IAR не может их переварить и портит свои настройки), я их почти все "перевёл", чтобы в IDE можно было нормально код смотреть и писать. Прикрепил старый вариант, который нашёлся, чтобы примерно видеть как код выглядит. Не помню какой IAR, лучше использовать последний (IAR ARM 9.30.1). GX Works 2 какой-то из последних тоже выложу потом. Он у меня на Windows 10 стоит. Кому интересно, покажу как обычно им пользуются. Ну и до кучи выложу то, чего трудно найти - ibaPDA, но старый, в виде виртуалки с WinXP. Там нужна 32-разрядная старая винда. С помощью этого анализатора можно удобно что-то тестировать по Modbus-RTU. PLC_20200603.7z Изменено 30 сентября, 2022 пользователем uni Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
tonyk_av 42 30 сентября, 2022 Опубликовано 30 сентября, 2022 · Жалоба 34 minutes ago, uni said: Прикрепил старый вариант, который нашёлся, чтобы примерно видеть как код выглядит Он уже да-а-а-авно не так выглядит. От китайцев давно уже ничё там не осталось, ни у imsushka, ни тем более у меня. Ты бы хоть предупредил народ, что выложенный архив это просто деобфусцированный (блин, во слово!) китайский проект, валяющийся на всех файловых помойках. Ограничение в 2000 регистров, исполняющиеся с ошибками команды, зависания рантайма, не правильно работающий мониторинг переменных, полное отсутствие обработки ошибок. И приколочено это всё гвоздями к STM32F103C8. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 48 30 сентября, 2022 Опубликовано 30 сентября, 2022 · Жалоба 5 часов назад, tonyk_av сказал: Нет. В открытом- нет. Пардон, но исходники рантайма ПЛК- это не фотки с клубничных сайтов, чтоб на них праздно смотрели все кому Так в том-то и дело, если уж платить бабосы, так там и кодесис есть и мастерскада и еще немало, тут вся и суть в опенсорсе, чтоб в перерывах между проектами занять мозги... 1 час назад, uni сказал: Вот тема: Open source plc STM32F103RBT6 source code Mitsubishi PLCFX1 Спасибо! 1 час назад, uni сказал: GX Works 2 какой-то из последних тоже выложу потом. Да, тоже бы не плохо... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться