Мини-ПЛК: открытый проект
- ARV
- Автор темы
- Не в сети
- Администратор
Программируемый логический контроллер (ПЛК или, по-английски, PLC) — это, говоря своими словами, благодаря стараниям могучих фирм вроде SIEMENS, небольшой компьютер с модулями ввода-вывода стандартных сигналов промышленной автоматики, работающий по отдельно создаваемой программе и выполняющий автоматизацию технологических процессов. Спору нет — это очень хорошее, гибкое и удобное средство автоматизации, только вот слишком дорогое для решения небольших задач. Например, одно дело управлять автоматической сборочной линией или прокатным станом (тут тысяча-другая долларов никакой погоды не делает, важнее надежность), и совсем другое — автоматизировать полив, отопление и вентиляцию в небольшой теплице (у хозяина которой каждая копейка на счету, зато он готов в случае чего и вручную «подменить» сбойнувшую автоматику).
я не ленивый, я энергосберегающий...
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- maxxir
- Не в сети
- Осваиваюсь на форуме
Неплохая работающая среда для Ladder Logiс - LDMicro cq.cx/ladder.pl .
Распостраняется по лицензии GPL Version 3.
Прямая поддержка средой микроконтроллеров:
* PIC16F628(A)
* PIC16F88
* PIC16F819
* PIC16F877(A)
* PIC16F876(A)
* PIC16F887
* PIC16F886
* ATmega128
* ATmega64
* ATmega162
* ATmega32
* ATmega16
* ATmega8
Можно проводить СИМУЛЯЦИЮ(те. отлаживать проект) прямо в среде LDMicro
в поле релейной схемы.
Выход:
a) HEX для целового микроконтроллера
б) стандартный ANSI C под generic контроллер
в) интерпретируемый байт-код (интерпретатор имеется в исходниках)
Подкупает то, что в принципе система жестко не привязана к вышеуказанным типам контроллеров.
Можно внедрить последующий код и в AVR, и ARM7, и PIC12,16,24,32 и тд.. - главное наличие компилятора С для выбранного Вами типа микроконтроллера.
На форуме cq.cx/ladder-forum.pl я выкинул примерчик интеграции Ladder-диаграммы в С проект смотрите тему: "Add C code to HI-TECH C v9.70 for PIC12F629"
Неплохо бы "допилить" LDMicro до русского языка, и добавить в интерфейс панель инструментов - но в принципе для начала пойдет и такая версия
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- ARV
- Автор темы
- Не в сети
- Администратор
1. для изменения программы в управляющем контроллере обязателен компьютер
2. так же обязателен программатор и умение им пользоваться
лично я себе плохо представляю, как я иду с компьютером в подвал, где работает насос подкачки воды, управляемый контроллером. не думаю, что от идеи иметь ноутбук для работы в теплице будет в восторге дачник или мелкий фермер.
по поводу изобретения велосипеда я так же не согласен: почему бы не попробовать переплюнуть Ladder Logic по всем статьям? шанс есть... хотя бы для самоутверждения - мы что, хуже поляков?
я не ленивый, я энергосберегающий...
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- maxxir
- Не в сети
- Осваиваюсь на форуме
А зачем идти в подвал c компьютером, еcли можно
"заливать" код через bootloader - через CAN, USB, RS-232 и тд..
Или вставлять микросхему 24LC256 в панельку DIP8
с кодом интерпретируемой программы.
А каким способом Вы собираетесь менять алгоритм работы контроллера?
PS ARV - Поправьте URL вашего сайта в профиле - ссылка битая
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- ARV
- Автор темы
- Не в сети
- Администратор
я же написал в заметке и прилагаемом к ней файле-концепции, как предполагается менять логику работы контроллера: путем ввода простых формул. конечно, сначала придется на бумажке нарисовать логическую схемку и потом вручную "закодировать" ее формулами, и лишь после этого эти самые формулы вводить... но, например, изменить какую-то задержку или порог температуры в регуляторе можно будет даже без бумажки.
разумеется, какая-то IDE для облегчения составления формул была бы предпочтительнее, и, возможно, мы ее когда-нибудь сделаем, но пока делается ставка на некий "примитивизм". пока число активных участников проекта очень невелико, и это тормозит развитие проекта.
кстати, предложенная концепция не исключает возможности "заливки" управляющей программы в ПЛК по какому-либо интерфейсу, только пока эта возможность считается не основной, а дополнительной, т.е. отложенной на перспективу.
P.S. спасибо за указание на ошибку в профиле - исправил
я не ленивый, я энергосберегающий...
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- maxxir
- Не в сети
- Осваиваюсь на форуме
Предложенный Вами способ формирования алгоритма - возможно и подойдет одному-двум десяткам любителей у которых нет компьютера. Однако зададимся вопросом а у кого сейчас дома(на даче, на работе и тд..) нет компьютера ? - Я думаю таких людей уже практически не осталось.ARV пишет: ..Как предполагается менять логику работы контроллера: путем ввода простых формул. конечно, сначала придется на бумажке нарисовать логическую схемку и потом вручную "закодировать" ее формулами, и лишь после этого эти самые формулы вводить... но, например, изменить какую-то задержку или порог температуры в регуляторе можно будет даже без бумажки.
разумеется, какая-то IDE для облегчения составления формул была бы предпочтительнее, и, возможно, мы ее когда-нибудь сделаем, но пока делается ставка на некий "примитивизм". пока число активных участников проекта очень невелико, и это тормозит развитие проекта.
Зато стопроценто это отпугнет массу народа более технически грамотного и продвинутого. Писать алгоритм (или упаси бог пытаться редактировать - там такого можно наворотить по запарке ) тыкаясь в десяток кнопок в душном, темном, шумном подвале(или другом помещении) где стоят насосы (или другое оборудование), и щюрясь пытаться понять что там нарисовано на блеклом двухстрочном LCD? Я думаю это еще более неудобно и противоестественно. Молодежь точно - этим заниматься не будет. Профессионалы, и продвинутые любители подавно.
Вердикт - тема интересная и нужная , но вот при предложенном Вами способе ввода алгоритма работы ПЛК обреченная на провал. Профи и продвинутые любители пользоваться таким ПЛК не будут, т.е. те люди которые должны принимать участие в РАЗВИТИИ проекта.
Кто же тогда будет развивать Ваш проект ведь три десятка "фермеров" и "дачникиков" без ПК врядли смогуть продвигать креативную составляющую "Мини-ПЛК: открытый проект"?
PS (Мое личное ИМХО)
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- ARV
- Автор темы
- Не в сети
- Администратор
в том, что определенная потребность в этом устройстве есть, я уверен: мой проект многоканального таймера вполне пользовался спросом, множетсво разрозненных терморегуляторов, таймеров, автоматов и т.п. так же "бродит" по интернету... то есть отдельные реализации отдельных возможностей многих устраивает, я же предлагаю все отдельное совместить в универсальное
профи же вообще вряд ли посмотрят в сторону нашего проекта, т.к. проблемы такого уровня им явно неинтересны - они же профи!
и еще пару аргументов в защиту своего подхода.
простой пример: некто решил сделать регулятор для теплых полов. ему надо 2 или 3 датчика и управление краном горячей воды или еще чем-то. он взял наш ПЛК за основу, как-то уж (закрыто мраком) сделал его в корпусе на DIN-рейку или даже встроил в аккуратную коробочку на стене... а теперь вопрос: если ему понадобится изменить алгоритм регулятора, например, добавив лишний датчик или, наоборот, убрав его - что он должен делать? по-вашему - либо разбирать свою красоту, внимать микросхему памяти или плату ПЛК, топать к компу и там все это перепрошивать, либо заранее проложить проводку так, чтобы прямо из его мастерской можно было все изменить... а в моем варианте он 10 минут думает, а потом еще 5 минут вводит новые формулы - при этом ничего разбирать не надо, все чистенько и аккуратненько, жена довольна.
это так же мое ИМХО
я не ленивый, я энергосберегающий...
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- maxxir
- Не в сети
- Осваиваюсь на форуме
это же по габаритам не маленькое, а про корпус который
убирается в стену - диаметр стакана 60-65 - ваше
LCD туда не лезет
Так проект ВАШ или "Мини-ПЛК - открытый проект?"ARV пишет: а в моем варианте он 10 минут думает, а потом еще 5 минут вводит новые формулы - при этом ничего разбирать не надо, все чистенько и аккуратненько..
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- ARV
- Автор темы
- Не в сети
- Администратор
проект открытый, просто идея-то мояmaxxir пишет: Так проект ВАШ или "Мини-ПЛК - открытый проект?"
я не ленивый, я энергосберегающий...
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- digicat
- Не в сети
- Новый участник
- Сообщений: 3
- Спасибо получено: 0
Как вариант, обновлять софт с USB флешки.ARV пишет: лично я себе плохо представляю, как я иду с компьютером в подвал, где работает насос подкачки воды, управляемый контроллером. не думаю, что от идеи иметь ноутбук для работы в теплице будет в восторге дачник или мелкий фермер.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- ARV
- Автор темы
- Не в сети
- Администратор
вариант... но USB-host это задачка та еще...digicat пишет: Как вариант, обновлять софт с USB флешки.
я не ленивый, я энергосберегающий...
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- maxxir
- Не в сети
- Осваиваюсь на форуме
Тогда уж не с USB флешки, а с стандартной SD Card. PetitFs от (с)Chang c поддержкойARV пишет:
вариант... но USB-host это задачка та еще...digicat пишет: Как вариант, обновлять софт с USB флешки.
FAT12 и FAT32 - стек протоколов на чтение файлов, просмотр директорий занимает ~4 кбайт.
"Упихивается" даже в AtTiny85.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- MTh
- Не в сети
- Новый участник
А вот с обновлением ПО действительно проблемы. Ведь мы часто хотим спрятать все подальше и по возможности не возвращаться к данному вопросу (природная лень человека).
Мне кажется есть смысл сделать загрузчик, который будет читать SDCard... А загрузку на SDCard можно сделать непосрдественно на ПК. Такой подход позволит сделать программу находясь где угодно, а взяв с собой карточку пойти и обновится.
Другие методы (USB, Ethernet) требуют дополнительных микросхем или замены МК. Есть еще конечно USB bootloader - но это только при наличии ноута (его таскать можно). Флэшку не подключить.
Возможности использовать Ethernet позволят мониторить работу ПЛК в реальном времени, в каком бы углу дома оно не находилось, через браузер. НО! RS485 обходится дешевле, а дальность имеет большую. Правда требует либо спец написанные проги, либо терминал.
Установку на DIN рейку считаю оправданной и удобной. Корпуса сейчас есть такого типа что и на дин-рейку встанут и на стенку.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- ARV
- Автор темы
- Не в сети
- Администратор
привязка к ПК в плане программирования ПЛК так или иначе перечеркивает автономность, и в этом варианте мы получаем обычную Arduino...
я не ленивый, я энергосберегающий...
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- maxxir
- Не в сети
- Осваиваюсь на форуме
Как говорится хотелось лисе и рыбку съесть и на волчий хвост сесть Что-то таких чудес не встречал еще..MTh пишет: С выходами та же ситуация. Мне более интересно как сделать вход универсальным? Чтобы и 220 можно было подключить и что-нить низколвольтное и считать импульсы со счетчиков (свет, вода)...
Вариант с джамперами не прокатит - обязательно все перепутаете и "влупите" на 220в низковольтную часть.
Где такие корпуса ссылку дайте, мне нужно для HomeAutomation, счас "запиливаю" у себя в квартиреMTh пишет: Установку на DIN рейку считаю оправданной и удобной. Корпуса сейчас есть такого типа что и на дин-рейку встанут и на стенку.
<Умный Дом> на CAN bus.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.