|
Промышленны nano-PLC на ATmega 128 16AU, Контроллер Миллениум3 фирмы КРУЗЕТ (Франция) |
|
|
|
Dec 2 2007, 08:59
|
Участник

Группа: Новичок
Сообщений: 42
Регистрация: 2-12-07
Пользователь №: 32 888

|
Промышленный nano-PLC фирмы КРУЗЕТ (Франция) на ATmega128-16AU Люди добрые, поможите чем сможите... Признаюсь сразу - я не программер железа (говорила мне мама -"Учи ассемблер" ), а системный интегратор, инженер АСУТП. В наличии имеется прелестная французкая коробочка под милым названием - ПЛК (программируемый логический контроллер) Миллениум3 и всё необходимое ПО для работы с контроллером. Проблема - всё устраивает в ентой штуке акромя возможности самостоятельно добавить в библиотеку свои FBD (функциональные блоки). Фирма выпускает допбиблиотеки оформленные в виде DLL файлов, но я не шарю в этом, тем более там нужны знания программирования как под Винду так и под АВР... Может кто подсабит? Нужно либо создать порядка пяти недостающих мне FBD-блоков (ждать когда КРУЗЕТ разродится бесполезно - знаю по опыту что от производителей можно ждать выпускать дополнений несколько лет), или есчо лучше какой-нето инструментик для создания своих дополнений. Что могу предложить взамен - полный комплект ПО, фотки внутренностей контроллера, и рекомендации по организации ПО для данных типов контроллеров (имеется опыт использования nano-PLC на протяжении пяти лет). Может кто захочет выпускать аналоги. Данный сегмент рынка очень слабо развит, и есть достаточно большая ниша... Фотки данного чуда можно взять здесь - http://ip.ifolder.ru/4175601
|
|
|
|
|
 |
Ответов
|
Dec 9 2007, 07:41
|
Участник

Группа: Validating
Сообщений: 64
Регистрация: 16-06-05
Пользователь №: 6 073

|
SasaVitebsk Тут просто нужен специалист в области реверсинжиниринга и исследования чужих программ.
Некоторые файлы *.bm3 с дополнительными функциями довольно короткие, и я думаю что те, кто программируют AVR на ассемблере, смогут в них разобраться.
|
|
|
|
|
Dec 9 2007, 15:36
|
Гуру
     
Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521

|
Цитата(AlexG @ Dec 9 2007, 11:41)  SasaVitebsk Тут просто нужен специалист в области реверсинжиниринга и исследования чужих программ.
Некоторые файлы *.bm3 с дополнительными функциями довольно короткие, и я думаю что те, кто программируют AVR на ассемблере, смогут в них разобраться. Честно говоря, не владею данным вопросом. Но если бы я делал такое изделие, то совершенно не понимаю причём здесь проги на AVR? Мой бы подход был следующим (с точки зрения AVR) 1) Я бы реализовал интерпретатор элементарный и описал бы хранение/передачу параметров. 2) Реализовал бы необходимые интерфейсы связи. 3) Я реализовал бы максимально возможное число вылизанных функций разного уровня. Вплоть до самых низкоуровневых. Чем забил бы флэш до предела. Таким образом программа на PC выглядела бы как алгоритм составленный из этих функций и хранилась бы в ОЗУ либо подгружалось любым из предусмотренных способов. Наличие низкоуровневых блоков позволяло бы в принципе создавать более высокоуровневые на PC, которые на самом деле расспадаются на более мелкие. Но всё это никаким образом к самому процессу программирования AVR либо другого процессора не имеет. Наоборот это позволяет использовать общее ПО на PC для ПЛК разработанных на разных процессорах и имеющих разные возможности. Например время реакции, колличество входов/выходов, объём ОЗУ (что определяет максимальный размер проги/данных) и т.д. Таким образом, если бы вы исследовали моё изделие, то Вы бы ничего там не дизасемблировали. Для того чтобы разобраться в этих блоках, надо было бы знать набор микрокоманд/микроблоков и структуру хранения/передачи данных. Насколько я понимаю, именно это и описано одним из стандартов IEC 61131–3. Хотя я могу и серьёзно заблуждаться. Я с этим не имел дела и, пока, к сожалению, времени на изучение совершенно нет. Мне бы довести до конца то, что я уже задумал и начал.
|
|
|
|
|
Dec 9 2007, 23:06
|
Гуру
     
Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521

|
Цитата(АндрейХ @ Dec 9 2007, 22:59)  SasaVitebskОписываемый вами подход естесно не нов, например он реализован в ЯВУ ФОРТ. В Форте можно даже на ассемблере вставки писать и тут-же проверять без всякой нуторной компиляции, линковки и чёрт знает чего (на древних машинах даже простенькая программа убивала уйму времени). Эх... это было давным давно, в прошлом тысячелетии, когда машины были большие, а память маленькая... По поводу КРУЗЕТа я и хотел узнать у спецов насколько возможно создавать свои ФБД блоки именно низкоуровневые на уровне ассемблера, потому как нужные мне макроблоки я давно сбацал, но они выходят весьма избыточными по коду (приходится извращаться что-бы сделать НЧ-фильтр и уж тем более интегратор), а хочется покомпактнее что-бы попусту не тратились и так ограниченные ресурсы...  Вот я ставлю себя на место разработчиков и отвечу Вам просто. Я бы такие возможности не закладывал. Поясню почему. 1) Вы плохо себе представляете ассемблер. Там, абсолютные адреса. Таким образом созданный Вами блок надо расположить в конце (к примеру) уже готового ПО (Вы же просто хотите дополнить) при этом необходимо перекомпилировать его на конкретный адрес. А если таких блока вы два добавили? 2) Надо отслеживать исполнения. Так как конечный адрес может находится в произвольном месте. 3) Необходимо предусмотреть переход на ваши блоки или их вызов из основной программы, при этом не зная их адреса на момент написания. Безусловно написать можно всё, но, я думаю, что это излишне сложный, и главное совершенно избыточный путь. Я уверен, что пошли моим путём. При чём здесь FORTH? Форт - универсальный язык использующий синтаксис. Здесь это не надо. Здесь уже готовый оттранслированный язык. Например принимаю что операция состоит из 4 байтов. где 2 байта код комманды 2 байта адрес параметров. Например команда вывода в порт 0001. При этом значение порта (например 1) это не самостоятельное значение порта (к примеру PORTA для AVR), а это порт отмеченный на вых. разъёме как порт 1 (на самом деле это может быть PORTD). Такая реализация скрывает от Вас внутреннее устройство самого изделия. Вам ведь и не гарантируется, что следующее закупленное изделие будет тоже на базе atmega128. Вам гарантируется, что Ваша прога будет работать ИДЕНТИЧНО. Естественно Вам самим не надо набирать 00010001 Это от Вас скрыто. Кстати при такой реализации возможный объём свободного места под программы будет больше, чем при прямой реализации. С другой стороны, при правильном написании, эффективность будет не хуже чем в 10 раз. Таким образом, выбранное Вами время отклика 100мс соответствует 1.6 млн операций, что будет примерно соответствовать 160 000 микроопераций. Естественно чем крупнее блоки, тем короче прога, но медленнее исполнение. Поэтому я и пушу, что я бы забил всю имеющуюся память блоками разного уровня абстракции. Чтобы найболее часто используемые блоки можно было бы сразу применить, а уникальные - самому сваять из низкоуровневых. В принципе здесь где-то отвечал разработчик (насколько я понял) таких изделий. Можно подробности у него спросить.
|
|
|
|
|
Dec 10 2007, 02:07
|
Участник

Группа: Validating
Сообщений: 64
Регистрация: 16-06-05
Пользователь №: 6 073

|
Цитата(SasaVitebsk @ Dec 10 2007, 05:06)  Вот я ставлю себя на место разработчиков и отвечу Вам просто. Я бы такие возможности не закладывал. Поясню почему. 1) Вы плохо себе представляете ассемблер. Там, абсолютные адреса. Таким образом созданный Вами блок надо расположить в конце (к примеру) уже готового ПО (Вы же просто хотите дополнить) при этом необходимо перекомпилировать его на конкретный адрес. А если таких блока вы два добавили? 2) Надо отслеживать исполнения. Так как конечный адрес может находится в произвольном месте. 3) Необходимо предусмотреть переход на ваши блоки или их вызов из основной программы, при этом не зная их адреса на момент написания. Тем не менее, такие возможности в Millenium 3 заложены. Я не знаю как, но разработчики решили эти проблемы. Можете посмотреть сами, вот одна из дополнительных функций и одна из прошивок контроллера:
func.zip ( 13.9 килобайт )
Кол-во скачиваний: 173
firmware.zip ( 27.01 килобайт )
Кол-во скачиваний: 185
Сообщение отредактировал AlexG - Dec 10 2007, 02:09
|
|
|
|
Сообщений в этой теме
АндрейХ Промышленны nano-PLC на ATmega 128 16AU Dec 2 2007, 08:59 anpilog Ой!
Где-то я это чудо уже видел 8)
Зачем Вам з... Dec 2 2007, 09:15 АндрейХ Возьмите другой PLC с возможностью нормального (IE... Dec 2 2007, 10:02  prottoss Цитата(АндрейХ @ Dec 2 2007, 17:02) ...а ... Dec 2 2007, 10:46   АндрейХ prottoss
Отвечаю - для данных типов ПРОМЫШЛЕННЫХ к... Dec 2 2007, 11:50    anpilog Хмм....
Мне казалось что цена этих контроллеров не... Dec 2 2007, 19:34     АндрейХ anpilog
Отвечаю - Миллениум3 26 I/O: 10 дискр.вход... Dec 2 2007, 21:47    oran-be Цитата(АндрейХ @ Dec 2 2007, 15:50) Отвеч... Dec 3 2007, 05:31     alexander55 Цитата(oran-be @ Dec 3 2007, 08:31) ... Dec 3 2007, 08:39      oran-be Цитата(alexander55 @ Dec 3 2007, 12:39) 5... Dec 3 2007, 11:49       alexander55 Цитата(oran-be @ Dec 3 2007, 14:49) ... Dec 3 2007, 12:33 oran-be Интересная железка - ПЛК на МЕГЕ. До этого попадал... Dec 2 2007, 10:57 SasaVitebsk А вам не кажется, что низкая цена - как раз и есть... Dec 3 2007, 00:47 АндрейХ SasaVitebsk
Естественно что функциональность уреза... Dec 3 2007, 13:57  SasaVitebsk Цитата(АндрейХ @ Dec 3 2007, 17:57) SasaV... Dec 3 2007, 21:16   AlexG Цитата(SasaVitebsk @ Dec 4 2007, 03:16) Е... Dec 4 2007, 00:29 AlexG АндрейХ
Каких именно функциональных блоков вам не ... Dec 3 2007, 08:08 anpilog Хммм....
Цена на КРАУЗЕР действительно интересная.... Dec 3 2007, 10:18 AlexG Цитата(anpilog @ Dec 3 2007, 16:18) Лучше... Dec 3 2007, 10:31  anpilog Цитата(AlexG @ Dec 3 2007, 13:31) А почем... Dec 3 2007, 10:35 amusin АндрейХ,
Непонятно, что вы имеете в виду под ... Dec 4 2007, 04:59 AlexG Цитата(amusin @ Dec 4 2007, 10:59) У меня... Dec 4 2007, 05:25  amusin Цитата(AlexG @ Dec 4 2007, 10:25) Российс... Dec 4 2007, 08:57   alexander55 Цитата(amusin @ Dec 4 2007, 11:57) Какие ... Dec 4 2007, 09:09 АндрейХ amusin
Я имею ПО среды разработки (80 мегов) к Мил... Dec 4 2007, 08:52 АндрейХ Как я понимаю здесь тусуются в основном разработчи... Dec 5 2007, 09:41 anpilog Пиши ещё!
Так как тема действительно актуальна... Dec 5 2007, 10:57  amusin Цитата(anpilog @ Dec 5 2007, 15:57) Так к... Dec 5 2007, 11:32   AlexG Цитата(amusin @ Dec 5 2007, 17:32) Буквал... Dec 6 2007, 14:49    amusin Цитата(AlexG @ Dec 6 2007, 19:49) Был на ... Dec 7 2007, 04:48 alexander55 Цитата(АндрейХ @ Dec 5 2007, 12:41)
В... Dec 5 2007, 11:45 oran-be Цитата(АндрейХ @ Dec 5 2007, 13:41) Вывод... Dec 5 2007, 13:34  АндрейХ oran-be
Я же не с бухты-барахты открыл эту тему, п... Dec 5 2007, 16:12   zltigo Цитата(АндрейХ @ Dec 5 2007, 18:12) Отпус... Dec 5 2007, 16:40   oran-be Цитата(АндрейХ @ Dec 5 2007, 20:12) oran-... Dec 5 2007, 19:20    АндрейХ oran-be
Фотки для того чтобы показать как могут ис... Dec 5 2007, 20:18 АндрейХ amusin anpiloq
Предлагаю сузить тему ПЛК до nano-P... Dec 5 2007, 12:08 anpilog Цитата(АндрейХ @ Dec 5 2007, 15:08) amusi... Dec 5 2007, 12:26 alexander55 Цитата(АндрейХ @ Dec 5 2007, 15:08)
Идея... Dec 5 2007, 12:39  anpilog Цитата(alexander55 @ Dec 5 2007, 15:39) Е... Dec 5 2007, 12:47 АндрейХ Возвращаясь к вопросу по нано-ПЛК Миллениум3
Вс... Dec 5 2007, 17:37 sensor_ua Не знаю, nano или как, но вот собрался сделать одн... Dec 6 2007, 05:54 АндрейХ sensor_ua
Знакомо сие чудо... Это не нано-ПЛК, а п... Dec 6 2007, 08:37 sensor_ua Цитатанормальный ПИ-ПИД регулятор никогда не сдела... Dec 6 2007, 09:16 AlexG Скачал я Крузетовский софт... сдается мне что файл... Dec 6 2007, 19:22 АндрейХ AlexG
Скачал я Крузетовский софт... сдается мне чт... Dec 6 2007, 20:04 sensor_ua ЦитатаЕсть возможность сваять свои FBD-блоки? Есть... Dec 6 2007, 21:24 АндрейХ sensor_ua
Естественно меня интересует только ... Dec 6 2007, 22:57 AlexG amusin
Вопрос серьезный и интересный. Странно что ... Dec 7 2007, 06:37 amusin Цитата(AlexG @ Dec 7 2007, 11:37) amusin
... Dec 7 2007, 09:43  AlexG Цитата(amusin @ Dec 7 2007, 15:43) про во... Dec 7 2007, 10:04   amusin Цитата(AlexG @ Dec 7 2007, 15:04) А что з... Dec 7 2007, 11:40 АндрейХ AlexG
Сам лично с КРУЗЕТ не связывался, а вот чере... Dec 7 2007, 14:15 АндрейХ Все таки может кто нибудь из знатоков подскажет ка... Dec 8 2007, 20:20 anpilog Цитата(АндрейХ @ Dec 8 2007, 23:20) Все т... Dec 8 2007, 20:38 SasaVitebsk Цитата(АндрейХ @ Dec 9 2007, 00:20) Наско... Dec 8 2007, 21:38  АндрейХ anpilog SasaVitebsk
Вот в том-то и проблема что об... Dec 8 2007, 22:23 anpilog Интересно насколько будут отличаться суммы для дор... Dec 9 2007, 12:29  АндрейХ anpilog
Интересно насколько будут отличаться суммы... Dec 9 2007, 14:00    mse Цитата(SasaVitebsk @ Dec 10 2007, 02:06) ... Dec 10 2007, 08:09 khach Если это полная незашифрованная прошивка- то ИдаПр... Dec 10 2007, 06:52 AlexG Работы будет несколько больше, каждый плагин имеею... Dec 10 2007, 07:20 АндрейХ Господа, а зачем гадать на кофейной гуще
Скачивает... Dec 10 2007, 10:24 khach Цитата(АндрейХ @ Dec 10 2007, 13:24) Госп... Dec 10 2007, 12:33  AlexG Цитата(khach @ Dec 10 2007, 18:33) Ну тут... Dec 10 2007, 12:56  АндрейХ khach
Один из трех файлов, которые я выкладывал - ... Dec 10 2007, 13:38 SasaVitebsk Тогда всё понятно. Просто стоит bootloader, а сама... Dec 10 2007, 11:16 AlexG АндрейХ
Кстати, вы смотрели на контроллеры фирмы С... Dec 10 2007, 15:50 АндрейХ AlexG
Сегнетикс? Смотрел, не устраивает. Я перебра... Dec 10 2007, 17:12 Denisvak Цитата(AlexG @ Dec 10 2007, 18:50) Андрей... Dec 10 2007, 18:43  AlexG Цитата(Denisvak @ Dec 11 2007, 00:43) Я и... Dec 10 2007, 19:51   АндрейХ AlexG
В SMH2010 много всего разного, интересного и... Dec 10 2007, 21:13    AlexG Цитата(АндрейХ @ Dec 11 2007, 03:13) Deni... Dec 11 2007, 01:59    Denisvak Цитата(АндрейХ @ Dec 11 2007, 00:13) Alex... Dec 12 2007, 04:39     АндрейХ Denisvak
Я конечно не хочу спорить, но например Си... Dec 12 2007, 09:12 АндрейХ Что-то тема подзаглохла
Или народ подзадумался о... Dec 17 2007, 14:35 SasaVitebsk Цитата(АндрейХ @ Dec 17 2007, 18:35) Что-... Dec 17 2007, 16:41  anpilog Я бы точнее не сказал Dec 17 2007, 16:44 AlexG Цитата(АндрейХ @ Dec 17 2007, 20:35) Что-... Dec 17 2007, 16:48  АндрейХ AlexG
На безрыбье и рак рыба...
Альтернативы ИП3... Dec 17 2007, 21:21   AlexG Цитата(АндрейХ @ Dec 18 2007, 03:21) Кста... Dec 18 2007, 04:10    АндрейХ AlexG
Как ни крути а меню съедают от 20 до 50% рес... Dec 18 2007, 10:02     AlexG На картинке ничего нового для себя я не увидел, но... Dec 18 2007, 11:24      АндрейХ AlexG
Естественно ничего нового не придумаешь, дык... Dec 18 2007, 13:05   SasaVitebsk Цитата(АндрейХ @ Dec 18 2007, 01:21) Sasa... Dec 18 2007, 12:13 АндрейХ Серфингируя по просторам интернета наткнулся на ан... Dec 20 2007, 14:06 АндрейХ Вот нарыл еще одну интересную вещицу - MODBUS cons... Dec 21 2007, 17:11 АндрейХ Нашел программу с открытыми ресурсами для PIC и AT... Dec 23 2007, 12:23 Denisvak Цитата(АндрейХ @ Dec 23 2007, 15:23) Наше... Dec 23 2007, 18:05  АндрейХ [/b]Denisvak[b]
ПО на этом сайте имеет простенький... Dec 23 2007, 20:08   AlexandrY Вцените в таком случае http://www.pro-sign.de/htm... Dec 23 2007, 22:20    SasaVitebsk Цитата(AlexandrY @ Dec 24 2007, 02:20) Вц... Dec 25 2007, 10:40     АндрейХ SasaVitebsk
Похоже Millenium пошёл по пути iCon-L.... Dec 25 2007, 19:38 amusin Цитата(АндрейХ @ Dec 23 2007, 17:23) Наше... Dec 24 2007, 07:39  АндрейХ amusin
Если ты любитель покурить Явку то тебе помо... Dec 24 2007, 14:46
2 страниц
1 2 >
4 чел. читают эту тему (гостей: 4, скрытых пользователей: 0)
Пользователей: 0
|
|
|