|
Beremiz, портирование под stm32 |
|
|
|
Dec 2 2015, 04:40
|
Местный
  
Группа: Свой
Сообщений: 321
Регистрация: 23-12-11
Из: Уфа
Пользователь №: 69 041

|
Доброго времени суток!
Несколько слов о том, что я делаю и что получается. Озадачился портированием вышеупомянутого ПО. Идея была такая: поскольку Beremiz компилирует входные исходники на языках IEC в Си, то эти исходники можно далее компилировать на чем угодно в том числе и под микроконтроллеры. Тогда я взял GCC под ARM embed (GNU Tools ARM Embedded), написал несложный рантайм (если это так можно назвать), который вызывает апи беремиза в задачах ртос. Делал по аналогии с тем как это сделано под платформу Xenomai (.\bremiz\targets\Xenomai). Далее организовал папочку STM32 в .\bremiz\targets c необходимыми питонячими файлами, задача которых прилинковывать при компиляции мой рантайм, плюс несколько несложных манипуляций над исходниками самого Beremizа, чтобы он при компиляции использовался gcc. Теперь в результате компиляции программы на IEC в Beremiz получаю hex готовый для зашивки в микроконтроллер.
Теперь собственно проблема. Для того, чтобы появилась связка между конкретным железом и программой, нужно в beremizу написать плагин и разместить его в папочке plugins, в котором и будет описание связки с "железом". Запустить эти плагины у меня так и не вышло. Я уже не раз видел упоминание Beremiza на этом форуме. Кто-нибудь писал эти плагины? Я бы был очень признателен, если бы мне ответили на несколько вопросов.
|
|
|
|
|
 |
Ответов
|
May 30 2017, 11:16
|
Группа: Участник
Сообщений: 13
Регистрация: 7-04-05
Из: Владимир
Пользователь №: 3 952

|
Уж простите новичка. Что-то не получается. Итак: 1. Патч скачал и наложил без проблем. 2. Modbus библиотеку клонировал и собрал, получил libmb.so3. Что дальше? Куда-то libmb.so нужно положить? Ничего похожего в каталоге Beremiz не нашел. В выпадающем меню дерева проектов появился компонент Modbus support Но клик по нему приводит к ошибке: Код Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx/_core.py", line 14665, in <lambda> lambda event: event.callable(*event.args, **event.kw) ) File "/home/master/Development/OpenPLC/beremiz/beremiz/BeremizIDE.py", line 1033, in AddConfNode self.CTR.CTNAddChild(ConfNodeName, ConfNodeType) File "/home/master/Development/OpenPLC/beremiz/beremiz/ConfigTreeNode.py", line 533, in CTNAddChild CTNClass = CTNClass() File "/home/master/Development/OpenPLC/beremiz/beremiz/util/misc.py", line 44, in fac mod=__import__(classpath.rsplit('.',1)[0]) ImportError: No module named modbus Насчет посмотреть YaPLC - это конечно резонно... Смотрю, пытаю, на моей Win7 наблюдаю катастрофические глюки GUI (это при том что чистый PLCOpen Editor вполне вменяем). Копать надо глубоко, а у меня задача - принять решение, рабочая такая задача, не хоббийная. Что посоветуете, камраде?
|
|
|
|
|
May 30 2017, 12:28
|
Группа: Участник
Сообщений: 13
Регистрация: 7-04-05
Из: Владимир
Пользователь №: 3 952

|
Цитата(Lost_byte @ May 30 2017, 15:16)  Уж простите новичка. Что-то не получается. Итак: 1. Патч скачал и наложил без проблем. 2. Modbus библиотеку клонировал и собрал, получил libmb.so3. Что дальше? Куда-то libmb.so нужно положить? Ничего похожего в каталоге Beremiz не нашел. В выпадающем меню дерева проектов появился компонент Modbus support Но клик по нему приводит к ошибке: Код Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx/_core.py", line 14665, in <lambda> lambda event: event.callable(*event.args, **event.kw) ) File "/home/master/Development/OpenPLC/beremiz/beremiz/BeremizIDE.py", line 1033, in AddConfNode self.CTR.CTNAddChild(ConfNodeName, ConfNodeType) File "/home/master/Development/OpenPLC/beremiz/beremiz/ConfigTreeNode.py", line 533, in CTNAddChild CTNClass = CTNClass() File "/home/master/Development/OpenPLC/beremiz/beremiz/util/misc.py", line 44, in fac mod=__import__(classpath.rsplit('.',1)[0]) ImportError: No module named modbus Насчет посмотреть YaPLC - это конечно резонно... Смотрю, пытаю, на моей Win7 наблюдаю катастрофические глюки GUI (это при том что чистый PLCOpen Editor вполне вменяем). Копать надо глубоко, а у меня задача - принять решение, рабочая такая задача, не хоббийная. Что посоветуете, камраде? Все-таки патч лег не ровно... Поведение вылечилось созданием папки modbus и переносом туда файлов: __init__.py __init__.pyc mb_runtime.c mb_runtime.h mb_utils.py mb_utils.pyc modbus.py modbus.pyc README ... после патча они почему-то оказались в корне. Теперь появляется интерфейс настройки modbus, с единственным редактируемым полем MaxRemoteTCPclients. Как-то не совсем то что ожидалось. Эх печаль.
|
|
|
|
|
May 30 2017, 14:23
|
Участник

Группа: Участник
Сообщений: 27
Регистрация: 30-09-09
Пользователь №: 52 655

|
Цитата(Lost_byte @ May 30 2017, 15:28)  Все-таки патч лег не ровно... Поведение вылечилось созданием папки modbus и переносом туда файлов: __init__.py __init__.pyc mb_runtime.c mb_runtime.h mb_utils.py mb_utils.pyc modbus.py modbus.pyc README
... после патча они почему-то оказались в корне.
Теперь появляется интерфейс настройки modbus, с единственным редактируемым полем MaxRemoteTCPclients. Как-то не совсем то что ожидалось. Эх печаль. А ты пробовал добавлять дочерние узлы к интерфейсу настройки modbus в дереве проекта? Вообще с вопросами лучше писать в список рассылки Beremiz. Лучше всего на вопросы по поводу этой библиотеки Modbus ответит её автор, который этот форум не читает. ;-) Цитата(Lost_byte @ May 30 2017, 14:16)  Насчет посмотреть YaPLC - это конечно резонно... Смотрю, пытаю, на моей Win7 наблюдаю катастрофические глюки GUI (это при том что чистый PLCOpen Editor вполне вменяем). Копать надо глубоко, а у меня задача - принять решение, рабочая такая задача, не хоббийная.
Что посоветуете, камраде? глюки GUI - что под этим конкретно подразумевается и у кого? Beremiz? YaPLC? Автор YaPLC, кстати, список рассылки Beremiz тоже читает. По поводу промышленного применения Beremiz: Вот список тех, кто его уже использует. У Smarteh вообще вся продукция основана на Beremiz. На сайте Beremiz только про один их контроллер написано, но с тех пор у них уже несколько линеек контроллеров и панелей на Beremiz вышло.
Сообщение отредактировал griabig - May 30 2017, 14:31
|
|
|
|
|
May 31 2017, 06:04
|
Группа: Участник
Сообщений: 13
Регистрация: 7-04-05
Из: Владимир
Пользователь №: 3 952

|
Цитата(griabig @ May 30 2017, 18:23)  А ты пробовал добавлять дочерние узлы к интерфейсу настройки modbus в дереве проекта? Вообще с вопросами лучше писать в список рассылки Beremiz. Лучше всего на вопросы по поводу этой библиотеки Modbus ответит её автор, который этот форум не читает. ;-) Пробовал, позднее чем написал этот пост. Да, видимо это то что надо. Насчет автора modbus - спасибо учту, но пока форум дал мне больше информации, и оперативнее. Цитата(griabig @ May 30 2017, 18:23)  глюки GUI - что под этим конкретно подразумевается и у кого? Beremiz? YaPLC? Автор YaPLC, кстати, список рассылки Beremiz тоже читает. Конечно YaPLC, контекст предложения однозначен. Конкретно: 1. Добавляю релейную диаграмму (Ladder); 2. Рисую схему 2 входа - один выход, монтажное-ИЛИ (да в общем то не важно); 3. При копировании элементов произвольно с экрана пропадают то оригиналы то копии; 4. При перетаскивании элемент зрительно остается на месте, появляется в новом (будто ьы обновление экрана) если кликнуть вне области редактирования. 5. Выделенные элементы бывает остаются выделенными "навсегда". Цитата(griabig @ May 30 2017, 18:23)  По поводу промышленного применения Beremiz: Вот список тех, кто его уже использует. У Smarteh вообще вся продукция основана на Beremiz. На сайте Beremiz только про один их контроллер написано, но с тех пор у них уже несколько линеек контроллеров и панелей на Beremiz вышло. Здорово, спасибо, да я уже "проехался" по этому списку, жаль что у Нуклерона нет в данный момент инфы о выпускаемых ПЛК, а ИЭУМ им. Брука не предлагает скачать свою сборку Beremiz. Есть предложение. А может сделать русскоязычную Wiki для Beremiz? Подозреваю что не я один такой интересующийся новичок. В целях популяризации проекта и роста сообщества толковых разработчиков стоило бы снизить порог входимости, например таким вот нехитрым способом. Сам я готов написать статью по результатам своих изысканий в части Modbus, ну и в общем поставить эдакий начальный "каркас" Wiki. Нужно решить вопрос с размещением ресурса. Наверное самое простое и бесплатное - прямо в битбакете. Вопрос, рядом с основным репозиторием или в отдельном? По опыту вики рядом с репозиторием разработки должны быть посвящены теме именно разработки а не практического использования.
|
|
|
|
|
Jun 1 2017, 06:57
|
Участник

Группа: Участник
Сообщений: 20
Регистрация: 18-07-16
Пользователь №: 92 595

|
Добрый день. Цитата(Lost_byte @ May 31 2017, 11:04)  Конечно YaPLC, контекст предложения однозначен. Конкретно: 1. Добавляю релейную диаграмму (Ladder); 2. Рисую схему 2 входа - один выход, монтажное-ИЛИ (да в общем то не важно); 3. При копировании элементов произвольно с экрана пропадают то оригиналы то копии; 4. При перетаскивании элемент зрительно остается на месте, появляется в новом (будто ьы обновление экрана) если кликнуть вне области редактирования. 5. Выделенные элементы бывает остаются выделенными "навсегда". У себя воспроизвести не могу, система Win 7 Pro 32bit. Как сказал griabig, YAPLC/IDE использует код Beremiz, по сути - это запускалка Beremiz с плагинами для, конфигурации, сборки проекта, связи. Сборка под win основана на https://bitbucket.org/skvorl/beremiz_public_dist
|
|
|
|
Сообщений в этой теме
yanvasiij Beremiz Dec 2 2015, 04:40 unkier немножко копнул беремиз. давай вместе подумаем. у ... Dec 8 2015, 16:05 yanvasiij Вытащил все из официального репозитраия и посмотре... Dec 9 2015, 14:31 unkier мне про matiec больше интересно. всё равно всё пот... Jan 5 2016, 16:24 yanvasiij Цитата(unkier @ Jan 5 2016, 21:24) мне пр... Jan 14 2016, 09:22 unkier точно, всё оказалось просто )
посмотрел вдумчиво ... Jan 16 2016, 20:38 voodoojah Извините, конечно, не в тему, но вопрос очень волн... Feb 17 2016, 07:38 yanvasiij Обнаружил багу в matiec. При использовании функцио... Apr 6 2016, 06:25 paulbell Цитата(yanvasiij @ Apr 6 2016, 11:25) Обн... Jul 18 2016, 06:33 yanvasiij После беседы в mailing list было "официально... Apr 6 2016, 12:04 yanvasiij Аналогичная ошибка при передаче массивов параметра... Apr 7 2016, 05:41 yanvasiij Нашел еще несколько очень неприятных ошибок в само... Apr 7 2016, 11:54 griabig Цитата(yanvasiij @ Apr 7 2016, 14:54) Наш... Apr 19 2016, 11:17 yanvasiij Цитата(griabig @ Apr 19 2016, 16:17) Пред... Apr 21 2016, 04:36 griabig Цитата(yanvasiij @ Apr 21 2016, 07:36) По... Apr 21 2016, 14:58 yanvasiij Нельзя, я писал об это лично Марио. Он мне ответил... Jul 18 2016, 11:41 paulbell Цитата(yanvasiij @ Jul 18 2016, 16:41) А ... Jul 19 2016, 05:59 yanvasiij Что касается matiec, там действительно все сложно.... Jul 19 2016, 06:15 paulbell Цитата(yanvasiij @ Jul 19 2016, 11:15) Ка... Jul 19 2016, 06:52 yanvasiij Цитата(paulbell @ Jul 19 2016, 11:52) Кст... Jul 19 2016, 07:02 paulbell Цитата(yanvasiij @ Jul 19 2016, 12:02) Я ... Jul 19 2016, 07:25 yanvasiij Только что сделал следующее:
Код..\..\m... Jul 19 2016, 07:57 paulbell Цитата(yanvasiij @ Jul 19 2016, 12:57) См... Jul 19 2016, 08:29 yanvasiij Кодiec2iec.exe -v
matiec version 0.1
changeset id... Jul 19 2016, 09:08 paulbell Цитата(yanvasiij @ Jul 19 2016, 14:08) Ко... Jul 19 2016, 09:52 yanvasiij Этот комит в моей сборке есть.
Ого! Вы правы... Jul 19 2016, 10:12 paulbell Цитата(yanvasiij @ Jul 19 2016, 15:12) Эт... Jul 19 2016, 14:56 yanvasiij Был еще один баг, но мы его исправили самостоятель... Jul 20 2016, 04:23 paulbell Цитата(yanvasiij @ Jul 20 2016, 09:23) Бы... Jul 22 2016, 07:39 yanvasiij Я добавлю issue и патч на днях; и по-поводу ... Jul 22 2016, 10:16 paulbell Цитата(yanvasiij @ Jul 22 2016, 15:16) Я ... Aug 19 2016, 05:33 yanvasiij Я если честно сам редко сижу в ирке, мне не очень ... Aug 21 2016, 05:32 paulbell Цитата(yanvasiij @ Aug 21 2016, 10:32) Я ... Aug 22 2016, 05:47 yanvasiij Цитата(paulbell @ Aug 22 2016, 10:47) Хор... Aug 22 2016, 07:38 griabig Цитата(yanvasiij @ Aug 22 2016, 10:38) Ну... Aug 24 2016, 08:09 bullit Всем Здрасте!
Сразу описание проблемы: в гене... Feb 6 2017, 10:14 yanvasiij Я эту проблему не решал. Но если я правильно все п... Feb 7 2017, 05:27 bullit Функции __publish и __retrive - используются для ... Feb 9 2017, 12:59 paulbell Цитата(bullit @ Feb 9 2017, 17:59) И у ме... Feb 17 2017, 05:31 yanvasiij ЦитатаФункции __publish и __retrive - используются... Feb 12 2017, 17:39 bullit Не удобно когда переменных много! Обновлять вс... Feb 14 2017, 05:39 bigmaxtor Приветствую всех! Сборка проекта matiec из реп... Mar 6 2017, 13:14 _Pasha Цитата(bigmaxtor @ Mar 6 2017, 16:14) При... Mar 10 2017, 06:48 yanvasiij Из какого репозитария Вы взяли Beremiz и matiec? В... Mar 8 2017, 16:07 bigmaxtor Цитата(yanvasiij @ Mar 8 2017, 21:07) Из ... Mar 9 2017, 08:25  griabig Цитата(bigmaxtor @ Mar 9 2017, 11:25) Ber... Mar 10 2017, 09:18   bigmaxtor Цитата(griabig @ Mar 10 2017, 14:18) Репо... Mar 12 2017, 19:28    griabig Цитата(bigmaxtor @ Mar 12 2017, 22:28) В ... Mar 13 2017, 07:19     bigmaxtor Цитата(griabig @ Mar 13 2017, 12:19) Опят... Mar 13 2017, 10:34      griabig Цитата(bigmaxtor @ Mar 13 2017, 13:34) Бл... Mar 13 2017, 10:44   bigmaxtor Цитата(griabig @ Mar 10 2017, 14:18) Репо... Mar 16 2017, 07:51    griabig Цитата(bigmaxtor @ Mar 16 2017, 10:51) Бл... Mar 16 2017, 10:09 bullit Может я чего не знаю или не понимаю. Вы хотите на ... Mar 9 2017, 09:15 bigmaxtor Цитата(bullit @ Mar 9 2017, 14:15) Может ... Mar 9 2017, 10:12 yanvasiij Репозитарий правильный, если быть точным это один ... Mar 9 2017, 09:21 bullit Наверное трабла в неподключенных либах.
может помо... Mar 9 2017, 10:34 bigmaxtor Цитата(bullit @ Mar 9 2017, 15:34) Наверн... Mar 10 2017, 05:58 yanvasiij Странные ошибки, он не жалуется на отсутствие паке... Mar 9 2017, 11:28 Ruslan.B Хотелось бы попробовать. Пока не понял как ставить... Apr 6 2017, 05:37 paulbell Цитата(Ruslan.B @ Apr 6 2017, 10:37) Хоте... Apr 6 2017, 07:43  x83 Цитата(paulbell @ Apr 6 2017, 12:43) Вот ... Apr 6 2017, 14:46   paulbell Цитата(x83 @ Apr 6 2017, 19:46) autorecon... Apr 7 2017, 04:54  psL Цитата(paulbell @ Apr 6 2017, 10:43) Вот ... Apr 6 2017, 14:50 x83 Цитата(paulbell @ Apr 7 2017, 09:54) Толь... Apr 7 2017, 05:14 paulbell Цитата(x83 @ Apr 7 2017, 10:14) Система u... Apr 7 2017, 05:30 griabig Цитата(x83 @ Apr 7 2017, 08:14) Система u... Apr 7 2017, 07:11  paulbell Цитата(griabig @ Apr 7 2017, 12:11) Все в... Apr 7 2017, 07:30 KelZen Стал изучать беремиз, скачал с beremiz.org "1... Apr 9 2017, 08:08 griabig Цитата(KelZen @ Apr 9 2017, 11:08) Стал и... Apr 10 2017, 06:52 griabig Цитата(KelZen @ Apr 9 2017, 11:08) Стал и... Apr 12 2017, 08:41 Lost_byte Приветствую коллеги.
Извините за наглый поверхност... May 30 2017, 07:08 griabig Цитата(Lost_byte @ May 30 2017, 10:08) Пр... May 30 2017, 10:18    griabig Цитата(Lost_byte @ May 31 2017, 09:04) Пр... May 31 2017, 06:51 Lost_byte ЦитатаУ себя воспроизвести не могу, система Win 7 ... Jun 1 2017, 11:43 griabig Цитата(Lost_byte @ Jun 1 2017, 14:43) У м... Jun 1 2017, 11:52  Lost_byte Цитата(griabig @ Jun 1 2017, 14:52) А где... Jun 1 2017, 11:59 Lost_byte ну вот захватил небольшой видос. Жаль что не нашел... Jun 1 2017, 13:17 paulbell Цитата(Lost_byte @ Jun 1 2017, 18:17) ну ... Jun 2 2017, 07:14 yanvasiij ЦитатаНасчет посмотреть YaPLC - это конечно резонн... Jun 2 2017, 07:42 Lost_byte Цитата(yanvasiij @ Jun 2 2017, 10:42) А п... Jun 2 2017, 08:03  griabig Цитата(Lost_byte @ Jun 2 2017, 11:03) Воп... Jun 2 2017, 08:10   Lost_byte Цитата(griabig @ Jun 2 2017, 11:10) Если ... Jun 2 2017, 08:28    griabig Цитата(Lost_byte @ Jun 2 2017, 11:24) Все... Jun 2 2017, 08:33     Lost_byte Цитата(griabig @ Jun 2 2017, 11:33) Да, в... Jun 2 2017, 08:40      griabig Цитата(Lost_byte @ Jun 2 2017, 11:40) Да,... Jun 2 2017, 08:56       Lost_byte Цитата(griabig @ Jun 2 2017, 11:56) Лучше... Jun 2 2017, 09:03        yanvasiij Цитата(Lost_byte @ Jun 2 2017, 14:03) Так... Jun 2 2017, 09:20        griabig Цитата(Lost_byte @ Jun 2 2017, 12:03) Дык... Jun 2 2017, 09:26         Lost_byte Цитата(griabig @ Jun 2 2017, 12:26) А вам... Jun 2 2017, 10:15          yanvasiij Цитата(Lost_byte @ Jun 2 2017, 15:15) Нет... Jun 2 2017, 11:00           Lost_byte Цитата(yanvasiij @ Jun 2 2017, 14:00) Не ... Jun 2 2017, 11:20          paulbell Цитата(Lost_byte @ Jun 2 2017, 15:15) - H... Jun 2 2017, 11:21        griabig Цитата(Lost_byte @ Jun 2 2017, 12:03) Дык... Jun 6 2017, 14:17 bullit Всем Здравствуйте!
Помогите разобраться с Ber... Dec 1 2017, 09:01 bullit Вопрос снят! Dec 4 2017, 08:05
2 страниц
1 2 >
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|