ПЛК ELHART серии Alpha-X

Логотип серии ELHART LogicOn
Полноценный язык С++ для ПЛК Полноценный язык С++ для ПЛК
Среда разработки на базе Code OSS Среда разработки на базе Code OSS
Модули расширения: до 31 модуля на шине До 31 модуля на шине
Скорость интерфейсов до 256 кб/с Скорость интерфейсов до 256 кб/с
Компактный размер Компактный размер
Наименование Наличие Цена с НДС
Alpha-X CPU 01-1 00 ПЛК на ОСРВ FreeRTOS, CPU 32bit, 144 МГц; RTC; 4кБ RETAIN (EEPROM); 3х RS-485, USB Type-C; 4 вх.(PNP/NPN), 2 вых.(PNP, до 0,25А); Программирование на языке С++, адаптированном для ПЛК; Клеммник TB-PS в комплекте; Питание =24В
 В наличии 16 800 Купить

Описание ПЛК ELHART серии Alpha-X

Программируемый логический контроллер Alpha-X  — это современный ПЛК, управляемый средой исполнения AXCode и программируемый на языке С++. Предназначен для автоматизации и управления технологическими процессами в различных отраслях промышленности:

  • Системы автоматического управления локальными участками различных общепромышленных объектов, системы удаленного ввода-вывода и диспетчеризации.
  • Деревообрабатывающая промышленность — управление станками, сушильными камерами, транспортными системами.
  • Аграрная промышленность — автоматизация линий сортировки, климат-контроль в теплицах, управление зернохранилищами.
  • Инженерные системы зданий — автоматизация отопления, вентиляции, кондиционирования (HVAC), водоснабжения.
  • Производственные и испытательные стенды — управление процессами испытаний, сбор данных с датчиков.
  • Климатические камеры и установки – контроль и управление режимами работы, с измерением и поддержанием параметров.
  • Овощехранилища — автоматизированный контроль условий хранения продукции.
  • Пищевые производства — управление конвейерными линиями, дозирующими и фасовочными системами.
  • Компрессорные установки — контроль параметров, управление режимами работы компрессоров, интеграция со смежными системами.
  • Дозирующее оборудование — обработка сигналов датчиков и управление исполнительными механизмами.
  • Управление локальными механизмами — автоматизация работы различных исполнительных устройств.

Особенности ПЛК Alpha-X

Программные особенности ПЛК Alpha-X

  • Все возможности языка стандарта C++17 (за исключением работы с динамической памятью).
  • Современная среда программирования на базе открытого редактора Code OSS (VS Code).
  • Все стандартные функции ПЛК: подпрограммы, входы-выходы, таймеры, протокол Modbus, энергонезависимая память.
  • Операционная система реального времени (ОСРВ).
  • Удобная интеграция с системой контроля версий git.
  • Обновление прошивки по любому из доступных интерфейсов.

 

Аппаратные особенности ПЛК Alpha-X

  • Соответствие современным требованиям промышленной автоматизации: гальваническая изоляция интерфейсов, работа в условиях жестких электромагнитных помех.
  • Более 10 модификаций модулей расширения: дискретные, аналоговые, а также специализированные весовые и модули ПИД-регулирования.
  • Подключение до 31 модуля расширения по шине.
  • Компактные размеры ПЛК и модулей обеспечивают монтаж в условиях ограниченного пространства.
  • Полный цикл разработки и производства в России (Краснодарский край).
  • Испытания в соответствии с ГОСТ IEC 61131-2-2012 «Контроллеры программируемые, Часть 2. Требования к оборудованию и испытания».
Сравнение платформенных решений и ПЛК на языках МЭК с ПЛК Alpha-X
Платформенные решения
типа Arduino
ПЛК Alpha-X ПЛК на языках
стандарта МЭК
Графические языки есть возможность использования поддержка языков FBD / LD
по-умолчанию
Интеграция с системами контроля версий
Использование готовых библиотек большой выбор библиотек
в открытом доступе
библиотеки на C / C++ без
аппаратно-зависимого кода
только если была написана
специально для этого ПЛК
Операционная система реального времени возможно использовать
при наличии
соответствующих навыков
поддержка по-умолчанию
Поддержка промышленных дискретных и аналоговых сигналов требуются дополнительные
модули
поддержка по-умолчанию с заявленной точностью
Электромагнитная совместимость
Гальваническая изоляция интерфейсы RS-485, входы, выходы в зависимости от модификации
Работа в жестких промышленных условиях
Поддержка протокола Modbus RTU с помощью дополнительных
библиотек
поддержка по-умолчанию

 

Аппаратные возможности модулей CPU

CPU 01-1 00
  • Доступная память программы: не менее 64 кБ flash-памяти, не менее 32 кБ оперативной памяти;
  • 4 дискретных входа и 2 дискретных выхода транзисторного типа;
  • 3 гальванически изолированных интерфейса RS-485, максимальная скорость работы 256 кбит/с;
  • USB Type-C Device для загрузки и отладки программы;
  • Встроенные часы реального времени;
  • Энергонезависимая память 4 кБ.

ПЛК Alpha-X включает в себя линейку модулей расширения — более 10 модификаций для работы с различными типами дискретных и аналоговых сигналов. Допускается подключение до 31 модулей расширения к CPU. Модули, как и сам ПЛК, имеют компактную ширину 18мм, при этом модуль в зависимости от модификации может иметь до 16 дискретных и до 8 аналоговых каналов.

ПЛК в сборке с модулями расширения
Внешний вид ПЛК Alpha-X в сборке с модулями расширения

 

Среда программирования

В качестве среды программирования используется современный редактор Code OSS — open-source версия популярного редактора VS Code. Установка простая и не требует специальных знаний: файл установщика уже включает все необходимые драйвера, компилятор, сборщик и прочее. В данный момент есть версии под Windows 10-11 и Windows 7-8.1.

Редактор Code OSS является мощным инструментом для написания кода с множеством незаменимых функций: удобный поиск и переход в место объявления объектов, автоматическое завершение кода, горячие клавиши для минимизации использования компьютерной мыши, интеграция с git, сниппеты и широкие возможности для кастомизации. Всё это позволило Code OSS стать одним из наиболее популярных редакторов среди программистов всего мира.

 

Автодополнение и сниппеты

Функциональные блоки, предназначенные для настройки аппаратных средств, имеют готовые сниппеты, которые позволяют быстро указать все настройки без необходимости ручного прописывания полей.

Использование сниппетов на примере настройки ModbusMaster
Использование сниппетов на примере настройки ModbusMaster

 

Отладка

Для отладки программы платформа AXCode предусматривает 2 возможных варианта: использование классической для языка С функции printf, либо же использование расширения AXCode Monitoring. В этом расширении можно ввести наименование интересующей переменной, после чего наблюдать за её изменением в реальном времени. Расширение поддерживает работу с базовыми типами данных C++ и массивами.

Мониторинг переменных с использованием расширения AXCodeMonitoring
Мониторинг переменных с использованием расширения AXCodeMonitoring

 

Многострочное редактирование и разделение экранов

Code OSS поддерживает установку нескольких курсоров, если требуется написать или отредактировать код сразу на нескольких строках.

Многострочное редактирование и разделение экранов 1
Ctrl + Alt + ⬇️ установить дополнительный курсор на строке ниже / выше
Alt + ЛКМ - установить дополнительной курсор на новой строке

Дополнительно есть возможность разделения окна редактора на несколько.

Многострочное редактирование и разделение экранов 2
Комбинация Ctrl + \ разделяет активный редактор на два

 

Горячие клавиши

Одни из наиболее популярных сочетаний, которые позволяют минимизировать использование мыши. Полный список горячих клавиш .

Горячие клавиши 1
Alt + Shift + ⬇️ или Alt + Shift + ⬆️ - сделать копию текущей строки ниже / выше от данной строки
Горячие клавиши 2
Alt + ⬇️ или Alt + ⬆️ - переместить код на текущей строке вниз / вверх
Горячие клавиши 3
Ctrl + ⬇️ или Ctrl + ⬆️ - сместить окно редактора вниз / вверх
Горячие клавиши 4
Shift + / или Shift + Alt + A - закомментировать / раскомментировать участок кода

 

Магазин расширений

Code OSS имеет встроенный магазин расширений, где можно найти расширения на любой вкус: например Serial Monitor для связи с ПЛК через терминал, различные тайм-трекеры для отслеживания времени работы над проектами и прочее.

Wakatime
Wakatime — расширение для автоматического отслеживания времени работы над кодом проекта

 

Среда исполнения

Среда исполнения ПЛК — это аппаратно-программная платформа, в которой работает программируемый логический контроллер. Она обеспечивает выполнение пользовательских подпрограмм, управление вводом/выводом данных, обработку сигналов и взаимодействие с другими устройствами.

Среда исполнения ПЛК Alpha-X базируется на операционной системе реального времени (ОСРВ). Для написания кода используется шаблон программы пользователя — преднастроенный проект, который включает библиотеки со всеми доступными функциями ПЛК. Также шаблон программы пользователя содержит предсозданные подпрограммы, каждая из которых запускается в соответствии с индивидуально заданным периодом и имеет свой сторожевой таймер. Возможно создать до 16 таких подпрограмм, при этом для работы с ними пользователю не требуются специальных знаний по работе с ОСРВ.

В зависимости от кода подпрограмм при запуске ПЛК создаются соответствующие системные задачи, которые управляют аппаратными ресурсами ПЛК. Системные задачи спроектированы таким образом, что стандартные для ПЛК операции — управление входами-выходами, связь по интерфейсам, сохранение энергонезависимой памяти — происходят без активного участия пользователя и позволяют инженеру сфокусироваться на написании решения для технологической задачи.

Шаблон программы пользователя дополнительно включает в себя несколько стандартных библиотек, в том числе библиотеку ETL (embedded template library). Данная библиотека содержит множество стандартные контейнеры, алгоритмы и утилиты, спроектированные для применения во встраиваемых системах с низким потреблением ресурсов.

 

Разделение на подпрограммы

Разделение на подпрограммы

Пользователю доступно несколько подпрограмм, что позволяет эффективно разделять код на независимые логические блоки и повышает его читаемость и структурированность.

Период вызова каждой из подпрограмм настраивается индивидуально в зависимости от требуемой производительности для различных процессов.

 

Работа с входами и выходами

Работа с встроенными входами выходами, а также с входами и выходами на модулях расширения осуществляется с помощью специальных классов: DiscreteInput, DiscreteOutput, AnalogInput, AnalogOutput.

Работа с входами и выходами

 

Связь с терминалом

Терминал является классическим средством для отладки кода на C++. ПЛК может связываться с одной из терминальных программ типа PuTTY, Serial Monitor, MobaXTerm. Возможен как вывод отладочных сообщений в терминал с помощью функции printf, так и приём управляющих команд из терминала. Подключение к терминалу возможно по любому из доступных интерфейсов.

Связь с терминалом

 

Опрос устройств по Modbus RTU

Пользователю доступно два способа для работы с Modbus RTU: в ручном и автоматическом режиме.

В ручном режиме программист сам определяет, в какой момент следует отправить посылку.

В случае автоматического опроса пользователь указывает номера требуемых регистров и привязывает к ним переменные, после чего операционная система самостоятельно формирует очередь запросов. При изменении переменной система автоматически формирует соответствующую Modbus-посылку на запись. При работе в автоматическом режиме скорость опроса никак не зависит от количества подпрограмм и времени их выполнения, при этом автоматические и ручные запросы можно комбинировать.

Опрос устройств по Modbus RTU

 

Опрос устройств по нестандартным протоколам

ПЛК имеет возможность связываться с другими устройствами по протоколам, отличным от Modbus RTU. Для этих целей в распоряжении у пользователя имеется 3 функциональных блока: SerialPortRead для чтения посылок, SerialPortWrite для записи посылок, SerialPortWriteRead для записи с последующим чтением. Конец принимаемой посылки определяется системой в зависимости от настроек, заданных пользователем: по стоп-символу или их последовательности, по интервалу тишины, по переполнению буфера.

Опрос устройств по нестандартным протоколам

 

Энергонезависимая память

Для работы с энергонезависимой памятью используется ключевое слово retain. Достаточно указать это слово при объявлении переменной, после чего её значение будет сохраняться даже при снятии питания с ПЛК. Ключевое слово retain можно применять с базовыми значениями, а также массивами.

Энергонезависимая память

 

Встроенные примеры программ

Примеры для работы с основными аппаратными и программными средствами содержатся непосредственно в шаблоне программы пользователя в папке examples. Для того, чтобы воспользоваться примером, достаточно просто скопировать код в свою подпрограмму. Примеры демонстрируют как работать с встроенными входами-выходами, терминалом, функциями времени, модулями расширения, протоколом Modbus RTU и с прочими программными компонентами.

Пример задержки включения с помощью системного таймера
Пример задержки включения с помощью системного таймера
Ссылка на пример
GitHub
01 Примеры использования встроенных входов-выходов:
1. Изменение состояния выхода
2. Включение выхода по сигналу от входа
3. Импульсное реле
Ссылка на пример
GitHub
02 Примеры использования терминала:
1. Вывод в терминал
2. Прием сообщений из терминала
3. Вывод массива в терминал
Ссылка на пример
GitHub
03 Функции времени:
1. Задержка с использованием системного таймера
2. Задержка с использованием таймера TON
3. Задержка с использованием таймера TOF
4. Получение текущего времени и даты ПЛК
5. Установка даты в ПЛК
Ссылка на пример
GitHub
04 Примеры работы с модулями расширения:
1. Чтение аналогового входа модуля
2. Изменение дискретного выхода по аналоговому входу
3. On-off регулятор с аналоговым модулем
4. Настройка модуля дискретных входов во время выполнения программы
5. Настройка модуля аналоговых входов во время выполнения программы
6. Сброс модуля на заводские настройки во время выполнения программы
7. Использование выхода модуля в режиме ШИМ
8. Сохранение настроек модуля
Ссылка на пример
GitHub
05 Примеры работы по Modbus RTU в режиме Master:
1. Чтение одного регистра в ручном режиме
2. Запись одного регистра из терминала в ручном режиме
3. Считывание показаний измерительного входа ECD1
4. Опрос регистров прибора ECD2
5. Опрос регистров прибора ECV1
6. Пример автоматического опроса
Ссылка на пример
GitHub
06 Примеры работы по Modbus RTU в режиме Slave:
1. Настройки slave-регистров ПЛК
Ссылка на пример
GitHub
07 Примеры работы с энергонезависимой памятью:
1. Объявление переменных в энергонезависимой памяти
Ссылка на пример
GitHub
08 Примеры работа с произвольным протоколом:
1. Получение посылки произвольного протокола
2. Отправка произвольного сообщения
3. Отправка и получение сообщений произвольного протокола

 

Интеграция с системой контроля версий git

Большинство сред разработки для ПЛК не поддерживают интеграцию с системами контроля версий по типу git. Для небольших проектов это может быть не столь критично, однако это ограничение создает значительные трудности при работе над крупными или долгосрочными проектами, где требуется участие нескольких специалистов. В случае отсутствия системы контроля версий разделение задач происходит вручную, что увеличивает риск ошибок и дублирования работы, трудно отследить, кто и какие изменения внес, а также вернуться к предыдущим версиям программы.

В качестве удаленного репозитория можно использовать внутреннюю сервер предприятия (при наличии такового), либо воспользоваться сервисом GitHub или одним из его аналогов. Шаблон разработки доступен на  GitHub .

Для того, чтобы использовать функционал работы с GitHub, воспользуйтесь следующей инструкцией по интеграции с GitHub.

Интеграция с системой контроля версий git
Интеграция с системой контроля версий git

 

Сообщество программистов ПЛК на C++

Сообщество программистов ПЛК на C++

Телеграм-канал Hello, Alpha-X: место, где можно найти много информации как о контроллере Alpha-X, так и о мире ПЛК в целом:

  • примеры автоматизации процессов в разных отраслях,
  • полезные знания о ПЛК и его работе,
  • советы по программированию,
  • обзоры производства,
  • новости,
  • различные тесты и обзоры.

Технические характеристики ПЛК ELHART серии Alpha-X

Общие параметры
Номинальное напряжение питания =24 В
(диапазон =22…26 В)
Максимальное энергопотребление не более 3 Вт
Срок службы 10 лет
Условия эксплуатации
Рабочая температура воздуха -20…+50 °C
Относительная влажность воздуха 10…80 % (без образования конденсата)
Интерфейс RS-485
Поддерживаемые протоколы Modbus RTU (Master/Slave),
свободный протокол
Максимальная скорость обмена 256 000 6/с
Гальваническая изоляция 1500 В
Интерфейс USB
Интерфейс USB USB 2.0
Тип USB-Device
Гальваническая изоляция нет
Параметры дискретных входов
Типы подключаемых датчиков PNP/NPN
Максимальный ток потребления
одного входа
7,5 мА
Уровень логического 0
(выключен)
0…4 B
Уровень логической 1
(включен)
11…28 В
Параметры дискретных выходов
Тип выходов транзисторный, PNP
Падение напряжения 0,7 мА
Максимальное допустимое напряжение =28 В
Максимальный ток одного выхода 0,25 А
(активная нагрузка)
Максимальный ток группы выходов 0,5 А
(активная нагрузка)
Параметры часов реального времени
Тип батареи RTC CR2032
Срок службы батареи 10 лет
Погрешность счета времени 2 мин в месяц при +25 °C

Габаритные размеры ПЛК ELHART серии Alpha-X

Габаритные размеры ПЛК ELHART серии Alpha-X
Габаритные размеры ПЛК ELHART серии Alpha-X, мм

Схема подключения ПЛК ELHART серии Alpha-X

Схема подключения Alpha-X CPU 01-1 00
Схема подключения Alpha-X CPU 01-1 00

Монтаж ПЛК и модулей ввода/вывода ELHART серии Alpha-X

Монтаж модулей ввода/вывода ELHART серии Alpha-X
Монтаж модулей серии Alpha-X при помощи клеммников

Alpha-X предназначены для установки на DIN-рейку. При монтаже модули подключаются друг к другу с помощью клеммников TB-BUS, образуя группу, связанную единой шиной. Данная шина используется для подачи питания на все модули в группе, а также связывает их интерфейсы RS-485 в одну сеть. Одна группа может включать до 31 модулей. Клеммник TB-BUS входит в комплект и поставляется с каждым модулем.

Для подачи напряжения на шину, а также для подключения внешнего устройства с интерфейсом RS-485, используется клеммник TB-PS. На одну группу модулей потребуется один TB-PS. Данный клеммник входит в комплект поставки только ПЛК Alpha-X CPU, поэтому если планируется использовать модули ввода-вывода Alpha-X с другим ПЛК, клеммник TB-PS требуется приобрести отдельно.

Модули Alpha-X имеют съемные клеммники (TB-IO) для подключения входов-выходов, что добавляет удобство при монтаже. Эти клеммники всегда идут в комплекте с модулями.

Информация для заказа ПЛК серии Alpha-X

Alpha-X CPU - 00
Наборы интерфейсов / входов-выходов
3×RS-485, USB Type-C
4 дискретных входа, 2 дискретных выхода (транзисторные, PNP)
01 1
Язык программирования
C / C++ 00

Пример: Alpha-X CPU 01-1 00

Используя этот веб-сайт, Вы даете согласие на обработку файлов cookie, пользовательских данных в целях корректного функционирования сайта и проведения статических исследований.