РадиоКот :: PLC своими руками
РадиоКот >Чердак >PLC своими руками
PLC — это программируемый логический контроллер(ПЛК), управляющий промышленными процессами автоматизации, такой себе стабильный аналог ардуины. Управление, разумеется тоже специфичное — вместо С подобных операторов, ПЛК управлянется специальным таким языком LD (Ladder Diagram). Стоят подобные изделия весьма дорого.
С помощью ПЛК строят автоматические линии, промышленные станки с ЧПУ, следящие устройства автоматики и т.д.
Начнем.
Автор проекта — некий Тиаго Родригез Альвез(Thiago Rodrigues Alves).
А это непосредственно вид платы без корпуса (которого кстати нет вообще, лол) было бы прекрасно, если бы участники сообщества сделали это. Однако в целом устройство являет собой полностью готовый контроллер, готовый к установке в изделие.
Я люблю Open-Sorce Hardware за то, что мне дают возможность вдоволь изучить четрежи, в OSS такой возможности для меня нет, я думаю, что самое время обнажить эту часть проекта.
Платы построены в среде KiCad, автор изучил данную среду и настойчиво рекомендует её к использованию, она гораздо лучше Sprint-Layout.
Плата шины — аналог материнской платы для размещения блоков
Плата ввода — блок для входящих данных
Плата вывода — блок для выходящих данных
Плата процессора — блок логической обработки данных
Готово, вы великолепны, осталось прошить эти самые платы соответствующим ПО:
Плата ввода, платы вывода, плата процессора
Прошивка происходит посредством Arduino IDE v1.0.3. причем для блока процессора целью будет ARDUINO MEGA 2560, остальные же ARDUINO UNO.
Автором проекта разработаны среды для программирования и наладки устройства:
OpenPLC Ladder Software в котором осуществляется создание LD схем для работы устройства,
а также OpenPLC Configuration tool(необходима платформа .NET Framework 4.0).
от автора:
Я буду собирать это устройство, чтоб посмотреть его работоспособность и выложить мануал по сборке, настройке и отладке, статья со временем будет дописываться,
С уважением, kravc
оригинал взят с сайта Open Source Engineering
Все вопросы в Форум.
Как вам эта статья? | Заработало ли это устройство у вас? |
ПЛК
Программируемый логический контроллер (PLC) — микропроцессорное устройство, предназначенное для выполнения определенной программы. Как правило, ПЛК применяются в промышленности.
Обзор ПЛК фирмы SIEMENS
Дано описание линии ПЛК выпускаемых фирмой SIEMENS. Приведены краткие описание ПЛК, возможности расширения, сред разработки программ и HMI интерфейсов. Является отправной точкой в цикле статей посвященных ПЛК SIEMENS.
Автор: tvilsa
17 0 [0]Simatic S7-200 быстрый старт. Часть 1
Описаны основы работы с ПЛК SIMATIC S7-200. Установка соединения MicroWin с ПЛК. Написание простейших программ. Диагностика и отладка программы.
Автор: tvilsa
Похожие статьи:
S7-200 создание HMI интерфейса
Рассматриваются варианты создания HMI интерфейса для системы на базе ПЛК S7-200
Автор: tvilsa
3Simatic S7-200 быстрый старт. Часть 2.
Продолжение статьи по работе с ПЛК Siemens Simatic S7-200. В очередной статье мы рассмотрим основные операции выполняемые над входами выходами и аналоговыми данными, конфигурирование и использование таймеров и счетчиков, а также создание и работу с функциями.
Автор: tvilsa
15Похожие статьи:
Микро ПЛК. Обзор, функциональные возможности
Среди большого семейства программируемых логических контроллеров (ПЛК) есть небольшое подсемейство, специально созданное для малых локальных систем управления – микро ПЛК или программируемые реле.
Автор: alfix
6 0Программируемые логические контроллеры
ПЛК – программируемый логический контроллер, представляют собой микропроцессорное устройство, предназначенное для сбора, преобразования, обработки, хранения информации и выработки команд управления, имеющий конечное количество входов и выходов, подключенных к ним датчиков, ключей, исполнительных механизмов к объекту управления, и предназначенный для работы в режимах реального времени.
Автор: sulika
7Похожие статьи: 2012 г.
Программирование ПЛК
Как и было описано, в первой статье, ПЛК осуществляет циклическое чтение входов, выполнение прикладной программы и запись выходов. Потому написание программы для ПЛК отличается от традиционного написания программы для микроконтроллеров и ПК. К программам для ПЛК предъявляются жесткие требования по надежности, одно дело зависает текстовый редактор, а другое дело программа, управляющая ядерным реактором.
Автор: sulika
Похожие статьи:
Дешевый ПЛК на 16 входов и 16 выходов
Рассмотрен вариант замены промышленного ПЛК (программируемого логического контроллера) на самодельный с минимальными затратами.
Автор: sergej_shaggy
16Выравниватель рядов продукции на Siemens Logo!
Выравниватель рядов продукции на программируемом реле Siemens Logo. Приводится описание электрической схемы, кода программы на языке FBD, видео работы. Имеется исходник кода.
Автор: Evgeny G88
7 0 [0]Конструктор для сборки устройств автоматизации Tibbo Project System
Приветствуем вас, уважаемые читатели. В этой статье речь пойдет о разработке тайваньской компании Tibbo Technology – аппаратной платформе для создания устройств автоматики — Tibbo Project System. Если вы увлекаетесь электроникой, любите экспериментировать и разработка собственных устройств является для вас хобби, то эта статья будет вам интересна.
Автор: ikorposh
0маленький контроллер для «умного дома» / Хабр
Я занимаюсь разработкой программ для программируемых логических контроллеров(ПЛК) в промышленных автоматизированных системах управления технологическими процессами(АСУ ТП).Для тех, кто сталкивается с этим словом впервые, поясню. ПЛК это специальный мини-компьютер, который работает так:
1. Принимает входные дискретные (Di) или аналоговые (Ai) сигналы;
2. Обрабатывает эти сигналы по заданной программистом программе;
3. Выдает управляющий сигнал через дискретные (DO) или аналоговые (AO) выхода.
Дискретный — когда у сигнала может быть только 2 состояния: 0 или 1, «да» или «нет». Например, кнопка нажата или отжата, лампочка включена или выключена.
Аналоговый — когда значение параметра зависит от уровня электрического сигнала. Например, чем выше уровень сигнала (вольт или миллиампер) от датчика температуры, тем больше измеряемая температура.
Применяются ПЛК в основном в промышленности, станках, системах домашней автоматизации «умный дом» и т.д.
Естественно, в силу профессии меня интересует все, что касается ПЛК и другого оборудования, применяемого в АСУ ТП. Как-то, бродя по сети, я зашел на сайт американской компании Velocio, которая производит ПЛК серий Ace, Branch, Embeded.
Главные фишки этих контроллеров — маленький размер, всего 2.5» x 2.5», питание 5 вольт и цена от 49$ за модель с 6 дискретными входами и 6 дискретными выходами. Особенно впечатлил размер, такого маленького ПЛК я еще не встречал:
ПЛК меня заинтересовал, я связался с компанией Velocio и мне прислали контроллер модели Ace 3090v5. Хотелось бы вкратце рассказать об этом ПЛК и более широкой аудитории Хабра. Забегая вперед скажу, что ПЛК компании Velocio лучше всего подходят для «умных домов» и прочих систем домашней автоматизации.
Вот ко мне пришла посылочка с контроллером прям из города Хантсвилл, штат Алабама:
Состав посылки:
1. ПЛК Velocio Ace 3090v5, $179
2. Крепление на DIN-рейку, $5
3. Коннекторы сигнальных линий (3,4,8 pin, шаг 2.5 мм), 6 шт., $6*3
4. Отвертка плоская, жало 1.5 мм, бесплатно
5. Коннектор питания (2 pin, шаг 2.5 мм), $2
6. Кабель USB Am-miniB, $5
Кабель USB для программирования Ace не обязательно покупать в Velocio, это обычный кабель USB Am-miniB, который продается в любом компьютерном магазине. Коннекторы тоже можно поискать в другом месте, но крепление на DIN-рейку уникально и его нужно покупать вместе с контроллером.
Ожидания Ace 3090v5 оправдал, он действительно очень маленький:
Характеристики:
Название | Velocio Ace 3090v5 | |
Назначение | ПЛК для домашней и промышленной автоматизации | |
Кол-во DI | 6 | |
Кол-во DO | 18, транзисторные | |
AI | Кол-во, всего | 7 |
Кол-во AI 16 бит/ тип | 4/ Термопары J, K, T, N; ±0.256 V, ±0.512 V, ±1.024 V, ±2.048 V |
|
Кол-во AI 12 бит/ тип | 3/ 0…+5 V | |
Порты связи | Mini USB(может работать по Modbus), RS-232 | |
Протоколы передачи данных | Modbus RTU slave | |
Скорость передачи данных, bps | 9600, 19200, 38400, 57600 | |
Крепление | DIN-рейка | |
Питание | 5 V DC | |
Габариты | 63.5х63.5х12.7 мм | |
Температура эксплуатации | -40… 85°С | |
Степень защиты IP | IP65 | |
Среда программирования | Velocio vBuilder, бесплатная | |
Цена | 179 $ |
Конструкция
При своих размерах, контроллер в общей сумме имеет 31 вход и выход, порт последовательной связи RS-232 и порт Mini USB для загрузки программ и связи с внешними устройствами.
Спереди на корпусе видны светодиоды индикации питания и состояния дискретных входов и выходов:
Сзади на корпусе имеются выемки для монтажа крепления на DIN-рейку:
На боковых стенках корпуса находятся порты для подключения всех сигналов через разъемы. Порты маркируются литерами A, B, C, D, E, F:
Подключение проводов происходит через коннекторы COMBICON PTSM Series фирмы Phoenix Contact с шагом ножек 2.5 мм (0.098»):
Вставляются провода в коннектор с помощью идущей в комплекте с ПЛК отверткой так:
Дискретные выхода- транзисторные, на то есть такие причины:
- реле в корпус контроллера все равно не поместится
- для обеспечения большого быстродействия, например при управлении шаговыми двигателями
Естественно, для коммутации электрической сети 220 В транзисторные выхода не подходят и нужно после них ставить промежуточные реле. Можно купить модули с промежуточными реле там же у Velocio, при покупке ПЛК. А можно сэкономить и купить на ебее аналогичные китайские платы, как сделал я:
Аналоговые входа (Ai) в Ace 3090v5 разделены на 2 группы:
- 3 Ai с общей землей в порту A, диапазон входных сигналов 0… 5 V
- 4 Ai дифференциальных в порту F, подключение датчиков температуры(термопар) типа J, K, T, N, а так же милливольтных сигналов
Вот я подключил на вход Ai F1 термопару типа «К» от китайского тестера и вывел значение температуры на ноутбук:
Кстати, в этом примере я термопару в контроллере не калибровал. Тем не менее, показания температуры соответствовали значениям спиртового градусника, который выступал у меня в роли контрольного прибора.
Ace отличается маленьким энергопотреблением: 5 В при макс. силе тока до 0.3 А. То есть, в качестве блока питания можно использовать 5-вольтную зарядку для мобильника.
Программирование
Разработка программ осуществляется через бесплатную среду программирования vBuilder. В пакете установки находится так же драйвер виртуального COM-порта, необходимый для подключения контроллера к компьютеру:
Изучение vBuilder лучше начать с просмотра видеоуроков. Есть так же полная документация на английском языке под названием «vBuilder Manual» в несколько сотен страниц.
Разработка программ возможна на двух графических языках: языке релейной логики(Ladder Logic) и языке блок-схем(Flow Chart).
Язык релейной логики (Ladder Logic) это хорошо известный всем программистам ПЛК язык LD, который является одним из стандартизированных по стандарту IEC 61131-3 промышленным языком.
LD придумали специально для того, что бы на нем писали программы не только программисты, но и обычные электрики. Программа на LD и выглядит, как электрическая схема:
Это легкий для изучения и работы язык.
Язык блок-схем (Flow Chart) это графический язык, на котором программа создается в виде блок-схем:
Блок-схемы и принципы их построения многие помнят еще со времен информатики в школе. Например, я закончил 11 класс в 1999 году, в мрачные времена постсоветского компьютерного средневековья. Тогда фирма «Интел» уже торговала процессорами Pentium-II, Билл Гейтс продавал Windows 98, а в нашей школе стояли советские компы «Электроника» с черно-белыми экранами. Большую часть урока мы сидели за партой и рисовали программы в тетрадях именно блок-схемами. Потом переводили их на бейсик, садились за «Электронику» (по 4 человека на машину) и уже после вводили в компьютер. А в других школах вообще компьютеров не было.
Так что для начинающих язык Flow Chart даже легче, чем LD. При этом, по моему мнению, он нагляднее и позволяет создавать более сложные программы. Кстати, блок-схемы я часто использую и сейчас, работая с различными ПЛК. Когда мне нужно продумать какой-нибудь сложный алгоритм, я сначала рисую блок-схемы на листике, а потом уже перевожу их в программу на конкретном языке.
В обоих языках программирования доступны одни и те же программные блоки:
- сравнение(<, >,= и др.)
- присваивание с возможностью ввода формул
- копирование
- счетчик
- таймер
- часы реального времени
- цифровой фильтр
- чтение энкодеров
- управление шаговым двигателем
- ПИД-регулятор
- ШИМ
- плавный пуск/останов
- масштабирование
- побитовый сдвиг и «переворот» числа
- статистика
- управление com-портом для реализации собственных протоколов передачи данных
- вызов подпрограмм
В качестве «быстрого хэлпа» по программным блокам используется та же страница загрузки vBulder. Просто жмешь по пиктограммам соответствующих блоков vBuilder справа на странице и читаешь, как они работают:
Если с английским совсем туго, на помощь придет переводчик браузера Ghrome: правая кнопка мыши-> перевести на русский. Перевод технический, но смысл будет понятен.
Доступные возможности при программировании:
- создание собственных переменных (тэгов) типа bit, unsigned int 8/16 bit, signed int 16/32 bit, float;
- создание массивов;
- создание подпрограмм;
- причем, подпрограммы здесь это объекты по типу FB как в Step-7 и Codesys;
- каждому входу/выходу и тэгам можно назначить адрес для передачи их значений по Modbus;
- cвязь по Modbus с ПК, сенсорными панелями и др. по Modbus в режиме slave; возможно подключение по Modbus к 2-м мастер-устройствам одновременно;
- возможность реализовывать собственные протоколы передачи данных по RS-232;
- отладка программы по шагам.
Подключение Ace к компьютеру и сенсорным панелям
Для связи с внешними устройствами по сети в Ace 3090v5 имеется 2 порта: RS-232 и USB. Оба этих порта могут передавать данные по протоколу Modbus RTU slave. Одновременно к Ace могут быть подключены 2 мастер устройства. Например, компьютер по USB, а сенсорная панель по RS-232. Для управления с компьютера применяются специальные программы типа SCADA, но можно и на каком-нибудь визуал бейсике программу написать.
RS-232 это старый добрый COM-порт компьютера. Раньше в него мыши подключались. Для подключения компьютера к Ace я и нашел старую комовскую мышь с шариком, отрезал от нее хвост и подключил его к 3-пиновому разъему RS-232 Aсe вот по такой схеме:
Если в компьютере нет COM-порта, нужно купить любой преобразователь USB/RS-232 по цене около $8.
Варианты реализации обмена данными Ace с внешними устройствами:
- по внутреннему протоколу Ace для связи с компьютером, на котором установлена бесплатная SCADA vFactory;
- по универсальному протоколу передачи данных Modbus RTU для связи с компьютерами, сенсорными панелями и другими ПЛК;
- по собственному протоколу, реализованному программным путем в контроллере.
Бесплатная СКАДА vFactory работает только с ПЛК компании Velocio, потому что использует не Modbus, а внутренний закрытый протокол контроллеров. Документации на vFactory нет, чтобы ей овладеть, достаточно одного видеоурока. Очень простая СКАДА без скриптового языка и возможности ведения архивов. Панель инструментов невелика:
Зато, можно быстро сделать работающую программу без особых навыков программирования:
Если возможностей vFactory маловато, можно подключить по протоколу Modbus RTU любую другую SCADA. Например, в ролике с термопарой, я применил SCADA Trace Mode 6 Base.
Можно в Ace запрограммировать и собственный протокол передачи данных, этому посвящен отдельный видоурок.
ПЛК Ace в домашней автоматизации
Думаю, этот контроллер хорошо себя покажет в системе «умный дом». Плюсы контроллера: маленький размер, малое энергопотребление, питание всего от 5 В, множество дискретных выходов, возможность подключения термопар, 2 порта связи с внешними устройствами, легкость программирования, большое количество разных программных блоков.
Если контроллер Ace понравился, но 6 дискретных входов маловато, можно присмотреться к серии Branch — тот же Ace, только с возможностью подключения модулей расширения (до 450 входов/выходов). Впрочем, это уже без меня — мне пока хватит поиграться Ace.
OpenPLC открытый ПЛК — Электроника
В общем так
Попалась мне статейка на радиокоте этакая зарисовка по теме плк http://radiokot.ru/cherdak/60/
о проекте http://www.openplcproject.com/
Лирика:
Идею создания своего плк на основе открытых протоколов и спецификаций вынашивал наверно любой разработчик электроники.
Довели хоть до каогото логического конца очень немногие сумасшедшие.
И сделали это не на территории стран бывшего СССР.
Дискуссия была на сайте инженер инфо ingener.info. по поводу этой идеи.
И называл причины почему это не случится в рунете.
Смысл в том что у нас народ бедный, а уже как следствие жадный и увы вороватый. Тоесть выложить свои разработки это из жанра научной фантастики.
Как бы серьезные электронщики не смеялись над ардуиной, а ее продано по всему миру я думаю приличное количество, как оригинал таки копий. Но оно взлетело и работает.
Но это все лирика.
Теперь по делу:
Многие и стружкоделы и сочувствующие используют так или иначе автоматизируют свои поделки.
некоторые используют ардуины или самопал на меге/стм/ или каком то еще микроконтроллере.
Некоторые используют лог реле для небольших систем типа Logo, Zelio , ZEN и пр Овены.
Сравнительно реже используют симатики/ овны / ален бредли/ омроны и пр. серьезные ПЛК но тут уже как повезет, сейчас конечно попадается б/у по дешевке железо. но его время пройдет а купить новое уже будет проблематично, ибо цены там недетские. Кто в курсе темы знают сколько это стоит.
А учитывая свой опыт я много раз находил в изделиях серьезных заводов всякие платки на меге и прочих микроконтроллерах
от которых не то что исходник недостать, а и прошивку невыпросить, не проанализировать сбои, и вообще ничего не поменять, особенно если надо поменять технологию, в некоторых случаях надо вызвать заводского спеца, производителя.
А в случае смерти кристала, хоть плачь покупка меги не спасет ибо програмное обеспечение еще надо написать, отладить.
Лично на моем опыте с меня много раз пытались хотеть слупить цену превышающую все разумные пределы, на мои аргументы о том что за програму (прошивку) люди уже заплатили а при сгорании микросхемы ясен пень пропала и программа. Тоесть я согласен был оплатить мегу 8, время на ее программирование, зп программисту, и пр накладные расходы но не более того. Короче я плюнул и послал их лесом, за неделю написал и отладил программу, и отдал людям исходник и прошивку, и новую разводку платы с оптронами вместо резисторного делителя на порт МК, еще пару раз полыхало, но до оптрона мк выживал.
Теперь о самом проекте:
проект распостраняется по лицензии Creative Commons Attribution ShareAlike 4.0 International Licence
https://creativecommons.org/licenses/by-sa/4.0/deed.ru тут есть русский текст
Тоесть ее можно использовать и для коммерции но не вправе запретить распостранение по этой лицензии. нельзя изменять тип лицензии. Лицензия безотзывная. Тоесть если что-то вышло то уже не запретить. Тоесть автор не сможет передумать, пока не нарушаются действие этой лицензии.
Проект содержит описание шины, встроенного програмного обеспечения, чертежи схем и печатных плат. Среду программирования многим знакомую ldmicro.
Разводка выполнена в среде KiCAD.
Теперь репу чухаю собрать бы все это да потестить.
из того что мне непонравилось зачем такой 25 контактный разъем при том что уйма не используется?
Корпус, предстоит еще нам. Думаю если кто-то из китайцев сделает прессформу сможет даже заработать.
Работа, прежде всего, предназначена для моргания светодиодами, так же будет полезна подрастающему поколению, только вступившему на тернистый путь освоения электроники, ещё может использоваться при изучении работы не очень сложных микросхем, опять же, если срочно надо поменять микросхему, а под рукой ничего нет, можно эмулировать работу чипа, короче вещь в хозяйстве незаменимая)
Программа.
Программа писалась на VB6 в среде Windows XP. Для полного счастья необходимо скачать драйвера на сайте производителя чипа www.ftdichip.com/Drivers/D2XX.htm и запустить программу (если лень возиться с железом и драйверами, будет работать и так, но полного кайфа уже не получите).После запуска программы попадаем на вкладку Configuration.
Здесь, в правом верхнем углу нам показывают, что у нас подключены два девайса, именуемые А и В. Надо запомнить эти названия, потому, что после мы будем общаться с ними по имени. Ещё можно узнать, что чувствуют они себя отлично и главное, что с ними можно работать. С левой стороны у нас находятся два квадратика. Здесь мы должны определить, какие ножки будут работать на вывод, а какие на ввод. На верхнем квадратике конфигурируем канал А, на нижнем – В. Делается это просто: наводим мышкой на интересующий вывод, и нажимаем левую кнопку мыши, тем самым мы устанавливаем его функциональное назначение, IN/OUT, ввод/вывод, соответственно. Обозначения D7…D0 говорят о том, что в нашем распоряжении имеется аж по восемь ножек на каждом канале. Там ещё кнопочки есть, написано Apply, если устройство подключено, то они будут активны и их необходимо нажать, для того, чтобы прописать конфигурацию в чип. Остался последний квадратик справа внизу. На нем написано Timers, 0.1s это таймеры, их тоже восемь штук именуются они Т7…Т0, их тоже надо запомнить на всякий случай, может пригодится, и, если они нам понадобятся в текстовом поле указать интервал через который выбранный таймер сработает, дискретность интервала составляет 0,1 секунды или 100 миллисекунд. Максимальное число составляет 9999.
И так, смотрим еще раз на картинку, что мы имеем: все ножки канала А будут работать на ввод (IN), канала В – на вывод (OUT). Также я хочу использовать два таймера Т0 и Т1, для этого я написал 5 в соответствующих полях.
Переходим на закладку Program.
Начнем с не совсем чистого листа, большой белый холст вверху это то место, где вы будете творить ваши бессмертные произведения, т.е. поле для ввода программ. Справа в нижнем квадратике расположены кнопки для ввода и редактирования. Остановимся на них поподробнее. Видно, что по цвету, кнопки разделены на пять групп.
Зеленым цветом окрашены кнопки при помощи, которых мы будем обращаться к ножкам микросхемы, конфигурацию которых мы определили на предыдущей закладке, т.е. если надо посмотреть состояние D0 канала А жмём кнопку А0, или, к примеру надо вывести сигнал на пятую ножку канала В, смело давим на В5.
Синим цветом обозначены биты внутренней памяти М7…М0 её можно использовать для временного хранения данных.
Желтым цветом обозначены таймеры Т7…Т0, про них я уже немного писал.
Фиолетовые кнопки это логические операторы.
NOT — инверсия, операция НЕ, результат меняется на противоположный была 1, стал 0, и наоборот, в программе обозначается знаком ~.
AND – логическое И двух операндов, обозначается &.
OR – логическое ИЛИ двух операндов, обозначается |.
XOR — исключающее ИЛИ двух операндов, обозначается ^.
= — операция присваивания.
Красным цветом окрашены кнопки редактирования.
Open – открытие программ.
Save – сохранение программ.
INS – вставка команд.
DEL- удаление команд.
И, наконец, пробел, ничего не пишет, просто для наведения красоты.
Остались еще два квадратика обозначенные Force Channel A и Force Channel В.
Здесь будет отображаться состояние выводов чипа, синим цветом – логический 0, красным – 1, окрашиваются только во время выполнения программы. Ещё есть возможность принудительной установки бита в нужное нам состояние. Для этого щелкаем мышью интересующий бит, появится контекстное меню, где можно выбрать, что нам требуется от этого вывода, если бит форсирован, на нем появится буква F.
Force 1 – установит логическую 1.
Force 0 — установит логический 0.
Unforce – состояние вывода определяется программой или внешним сигналом.
И последнее, остались две кнопки с зеленым треугольником и красны квадратом, это соответственно запуск и остановка программы.
В следующем посте напишу непосредственно о программировании, и выложу доки на железо, а на сегодня хватит, Пасха все-таки)))
И ещё не судите очень строго, это первая проба пера.
В связи с распространением на просторах СНГ программируемых реле xLogic/x-Messenger фирмы EasyElectronics, многих интересует вопрос, как самому сделать кабель для их программирования.
Благодаря усилиям коллег, мы можем ответить на этот вопрос.
Сергей Кычкин, основываясь на оригинальной схеме кабеля ELC-USB, создал и проверил его аналог:
Как видно, Сергей использовал китайский USB/TTL преобразователь и самодельную плату для опторазвязки. Китайский преобразователь надо купить (на ебее стоит 2$), а плату сделать самому. Преобразователь USB/TTL подойдет любой, если нет времени ждать такой из Китая и негде купить у себя в городе, можно купить и переделать любой дата-кабель с микросхемой pl-2303 для мобилки. Таких кабелей полно в магазинах для мобилок и на радиорынках. Вот пример переделки дата-кабеля мобилки в USB/TTL преобразователь: http://plc-blog.com.ua/cable-zelio-sr2_sr3#usb_ttl
Плата в работе:
Конечно, EasyElectronics продают кабели для своих ПР дешевле конкурентов в 2-3 раза и оригинальный ELC-USB стоит всего 50$. Но зачем платить 50 баксов если можно уложиться в 5?
Простые устройства — Мини-ПЛК: открытый проект
Программируемый логический контроллер (ПЛК или, по-английски, PLC) — это, говоря своими словами, благодаря стараниям могучих фирм вроде SIEMENS, небольшой компьютер с модулями ввода-вывода стандартных сигналов промышленной автоматики, работающий по отдельно создаваемой программе и выполняющий автоматизацию технологических процессов. Спору нет — это очень хорошее, гибкое и удобное средство автоматизации, только вот слишком дорогое для решения небольших задач. Например, одно дело управлять автоматической сборочной линией или прокатным станом (тут тысяча-другая долларов никакой погоды не делает, важнее надежность), и совсем другое — автоматизировать полив, отопление и вентиляцию в небольшой теплице (у хозяина которой каждая копейка на счету, зато он готов в случае чего и вручную «подменить» сбойнувшую автоматику).
К сожалению, для такой «малой» автоматизации приходится использовать совершенно не связанные друг с другом независимые средства решения отдельных задач: таймер для полива по расписанию, терморегулятор (термостат) для поддержания температуры, а вот по поводу регулирования влажности уже совсем не просто, т.к. нужно управлять и открыванием окон для проветривания, и увлажнителем, и вентиляторами для принудительной вентиляции, а еще желательно обеспечить регулирование производительности этих вентиляторов (т. е. управлять инвертором). В итоге система получается громоздкой, неудобной, сложной в настройке и эксплуатации и, в конечном итоге, опять-таки дорогой. А недорогих, пусть даже не столь гибких, как «настоящие», ПЛК не существует вообще.
Мне могут возразить: ну так есть же ARDUINO и его клоны, и даже контроллеры с БЕЙСИКОМ внутри — чем не ПЛК? Да хотя бы тем, что они требуют наличия определенных навыков по программированию, которое к тому же осуществляется с отдельного компьютера, причем язык программирования не так уж и прост. В общем, не для «простого фермера» эти штуки. Не зря же производители ПЛК создают системы визуального проектирования для своих контроллеров, позволяющих создавать на дисплее компьютера можель автоматизируемого процесса из заранее подготовленных блоков-модулей: датчиков, исполнительных механизмов и вспомогательных «реле» и других блоков (так называемое FBD-проектирование). Все это делается для того, чтобы облегчить программирование ПЛК, сделать его более доступным лицам без специального «компьютерно-электронного» образования.
То, что потребность в таких простых устройствах на самом деле велика, подтверждается огромным количеством сообщений на форумах типа «термрегулятор для инкубатора», «умный дом своими руками», «термостат», «управление подкачкой воды», «автоматизация бойлерной» и т. п. Обычно всегда предлагаются узкоспециальные решения — сам не раз это делал по просьбам и по заказам. А ведь все эти проблемы могут быть решены конструктивно одним и тем же устройством!
Итак, очевидно, что имеется потребность в недорогом ПЛК для относительно несложных задач, например для таких, которые традиционно решаются «релейной» логикой. Этот мини-ПЛК должен быть недорогим, но достаточно гибким и универсальным, не должен требовать для своего программирования отдельного компьютера и наличия специальных знаний.
Низкую стоимость ПЛК может иметь за счет многих условий. Например, может иметь место простая «блочная» конструкция: если блок не требуется для решения задачи, он просто не устанавливается, при этом остальной функционал не ухудшается. ПЛК может выпускаться в виде небольших и недорогих модулей, собираемых в систему по принципу конструктора. Для еще бОльшего удешевления эти модули могут выпускаться в бескорпусном исполнении, т. е. в виде собранных печатных плат. Дальнейшее снижение затрат возможно при выпуске наборов для самостоятельной сборке каждого из модулей… Ну а последним шагом в этом направлении будет полная открытость проекта, т. е. доступность схем, чертежей и программ в исходных текстах всем желающим абсолютно бесплатно. Я говорю о проекте Open Source (сейчас еще есть термин Open Hardware), т. е. о полной открытости проекта.
Открытость подразумевает, с одной стороны, бесплатную доступность всех материалов для любого желающего самостоятельно изготовить любую часть проекта, в том числе и весь проект целиком, а с другой стороны, любой желающий может принять участие в собственно разработке проекта, т. е. в проектировании схем, плат, чертежей, написании и отладке программного обеспечения и документации. Общепринято, что не запрещается коммерческое производство любых частей открытого проекта при соблюдении некоторых условий, касающихся авторских прав и т. п. (это оговаривается лицензионным соглашением), но тем не менее производитель обязан предоставить всю информацию для того, чтобы его продукцию смог самостоятельно изготовить любой желающий.
Итак, теперь о главном.
Для начала проекта «мини-ПЛК» требуется команда энтузиастов. Общая концепция уже более-менее детально продумана (пока что только мною), остается лишь тщательно обсудить ее, выработать уточненную концепцию и приступить к схемотехническому и программному проектированию. В связи с этим требуются лица, способные разрабатывать и отлаживать электронные схемы (относительно несложные по определению), а так же разрабатывать программное обеспечение на GCC. Выбор программного инструментария не случаен: весьма непросто подобрать бесплатный компилятор, кроме GCC, а легальная бесплатность во всем — основной критерий открытых проектов.
Предвижу такую реакцию определенного круга любителей-электронщиков: «Последний кусок нашего хлеба хочет вырвать!», — такие опасения излишни! Вместо того, чтобы разрабатывать в тысячный раз какой-нибудь терморегулятор для очередного клиента, вы сможете принять участие в проекте «мини-ПЛК» и затем с полным правом использовать его для зарабатывания себе на хлеб с маслом: если ваши клиенты не могут сами разработать терморегулятор, они не смогут обойтись без ваших услуг и при использовании ПЛК. При этом вы поможете и другим, т. е. сделаете доброе дело.
Пока «костяк» группы разработчиков не оформится, все переговоры и обсуждения предлагается вести в почтовой переписке, ICQ, Skype и т. п. Когда все формальности будут завершены, предполагается создание форума по отдельным направлениям разработки, где и будут вестись дальнейшее, уже публичное, обсуждение и поддержка. В связи с этим, потребуются так же администраторы и модераторы форума, надеюсь, они найдутся среди основных участников проекта.
Все участники проекта по их желанию могут быть обеспечены специально для этого созданными почтовыми ящиками (ограниченного объема) вида Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. (прорабатывается возможность интеграции яндекс-почты в проект, чтобы иметь персональные адреса вида Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. или подобного). Пока вся «публичность» будет осуществляться через сайт Простые устройства, а когда проект разовьется достаточно, будет создан соответствующий отдельный тематический сайт, если это потребуется. Если найдутся «спонсоры», готовые поддержать проект материально — это будет просто здорово! Но пока что больше надежды на энтузиастов-любителей, студентов, а так же профессионалов, готовых из спортивного интересу потратить часть своего времени на общее благо.
По всем вопросам организационного характера, вытекающим из сказанного, прошу писать на Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра..
Файл | Описание | Размер файла: |
---|---|---|
ПЛК.pdf | Наброски концепции ПЛК — для ознакомления, критики и доработки | 125 Кб |