понедельник, 7 мая 2012 г.

MachineStruxure, SoMachine и все-все-все

Здравствуйте, друзья!
Сегодня я хотел бы начать серию публикаций о новом предложении Schneider Electric для автоматизации машин и механизмов - MachineStruxure.
MachineStruxure

Итак, что же такое MachineStruxure? Не смотря на то, что термин MachineStruxure скорее маркетинговое понятие нежели техническое, объединяет MachineStruxure вполне осязаемые элементы. Схематически все элементы MachineStruxure можно представить вот такой вот симпатичной пирамидкой:
Во-превых это единое программное обеспечение для автоматизации машин и механизмов - SoMachine. Во-вторых это семейство контроллеров, объединенных этим  самым программным обеспечением. И в третьеих, это готовые, тестированные  архитектуры систем автоматизации для машин и механизмов. Дальше очень кратко остановимся на программном обеспечении (так как все последующие статьи будут посвящены именно ему) и архитектурах и немного больше внимания уделим новым контроллерам.

SoMachine

SoMachine включает в себя 2 основных компонента - среда для написания кода для контроллеров  - CoDeSys 3.4 и среда для создания интерфейса панелей оператора Magelis - Vijeo Designer. Все это выглядит и работает как единый пакет с возможностью быстрого расшаривания переменных между контроллером и панелью, графическим конфигуратором проекта (плюс стандартное для CoDeSys представление проекта деревом), OPC-сервером и громадной библиотекой готовых к элементов использованию от Schneider Electric.

Готовые к использованию, тестированные архитектуры


В данном случае под архитектурой понимают архитектуру системы автоматизации машины либо механизма.
Архитектура включает в себя как минимум 6 элементов оборудования:
  • цепи питания;
  • управляющий контроллер;
  • панель человеко-машинного интерфейса;
  • коммуникационная шина;
  • устройства управления приводами;
  • устройства цепей безопасности.
Всего на данный момент существует 12 архитектур, которые реализованы во вполне себе реальном железе (собранные шкафы, работоспособность которых протестирована). Каждая архитектура снабжается комплектом подробной документации:

  • комплект чертежей в формате AutoCAD и Eplan;
  • System User Guide с подробным описанием применяемых компонентов и пошаговыми инструкциями по конфигурированию;
  • тестовый проект в SoMachine, который включает базовое управление всеми приводами и пуско-регулирующей аппаратурой, диагностику и базовый человеко-машинный интерфейс.
Семейство контроллеров

M238

M238 в линейке классических ПЛК, поддерживающих SoMachine, является младшим устройством.
В базовой комплектации без модулей расширения контроллер имеет на борту 14 дискретных входов и 10 выходов. В зависимости от напряжения питания (=24 В или ~220 В) часть дискретных выходов (промаркированые как Outputs) будут либо транзисторными либо релейными. Быстрые выходы (Fast Outputs) в любом случае являются транзисторными.
Для программирования контроллера вне зависимости от комплектации используется порт mini-USB, как впрочем и для других контроллеров входящих в MachineStruxure.
M238 предлагается в моделях с 2-мя уровнями функционала:

  • в минимальной конфигурации пользователю достанется устройство с 1 Мб оперативной памяти (для пользовательской программы доступно 500 кБ) и одним последовательным портом RS232/485;
  • в расширенной конфигурации доступно 2 Мб оперативной памяти (1 Мб доступно для пользовательской программы), 2 последовательных порта RS232/485 и 1 порт CANopen мастера.


Контроллер может быть расширен 7ю модулями расширения TM2 (да-да, теми же которые расширяются контроллеры Twido). Кроме того, если емкости установленных модулей не хватает, систему можно расширить модулями удаленного сбора информации по шине CANopen, но об этом как нибудь в другой раз.

M258

M258 как и следует из кодового обозначения является старшей моделью в линейке ПЛК, поддерживающих SoMachine.
На борту контроллер может нести 44 либо 66 дискретных входов/выходов + 4 аналоговых входа (опционально - зависит от модели). Питается устройство лишь от источника постоянного напряжения =24В.
Также устройство, в зависимости от модификации, может оснащаться двумя дополнительными PCI-слотами, в которые можно установить дополнительный коммуникационные модули - RS232/RS485 либо ProfiBus slave.
Интересной особенностью контроллера является наличие USB-host порта, который позволяет подключать внешние накопители и производить следующие операции:
  • обновление прошивки устройства (firmware);
  • обновление проекта;
  • любые операции с файловой системой -  загрузка/выгрузка произвольных файлов (логи, рецепты и т.д.).
Из коммуникационных интерфейсов, присутствующих на борту - совмещенный порт RS232/485, порт Ethernet и, в некоторых моделях, порт CANopen master.
По сравнению с M238, M258 обладает просто таки огромными вычислительными способностями. 
Во-первых это 2-х ядерный центральный процессор, одно из ядер которого целиком занято задачами коммуникаций, а второе крутит пользовательскую программу. Таким образом, как бы нагружено ни было коммуникационное ядро, пользовательская программа будет выполняться максимально быстро.
Во-вторых это 64 Мб оперативной памяти, что позволяет писать код для практически сколь угодно сложных задач с разветвленными алгоритмами.
Ну и в третьих это 128 Мб встроенной постоянной flash-памяти с поддержкой полноценной файловой системы, доступ к которой возможен также по FTP.
Несколько слов о масштабируемости М258. Естественно, базовый набор входов/выходов можно дополнить модулями дискретных (20 вариантов модулей) и аналоговых (13 вариантов модулей) входов/выходов, а также счетными модулями (5 вариантов). Общее количество модулей ограничено цифрой 255.
Существует 2 варианта модулей - так называемые Slice или Slim модули, состоящие из 3-х основных частей:
база распределения, собственно сам электронный модуль и съемный клеммный блок.
Благодаря такой конструкции модули поддерживают горячую замену (замена модуля при работающем ПЛК).
Второй вариант - это компактные модули (хотя выглядят они как раз больше предыдущих), которые представляют из себя блок объединенных Slice-модулей. 
В отличии от Slice-модулей, компактные являются не разборными. Т.е. клеммный блок снять можно, но база и электронные модули представляют из себя одно целое. Такой подход позволяет экономить на стоимости (по сравнению с аналогичным числом Slice-модулей до 40%), однако теряется возможность горячей замены.
Дальше интереснее :) Можете представить себе 255 модулей (пусть даже Slice) с контроллером в одном шкафу? И в правду, мало толку от такого количества модулей, если все они собраны в одном месте. Благо у М258 есть возможность построения сети с удаленными островами входов/выходов. Делается это очень просто. Есть контроллер, к которому добавлены все необходимые модули расширения. К контроллеру добавляется модуль передатчика (Transmitter). Берется экранированный кабель аналогичный тому, что используется в CANopen и ProfiBus и ведется на расстояние до 100м. На другом конце устанавливается модуль приемника (по совместительству модуль распределения питания) и устанавливаются нужные модули расширения. Таким образом можно построить систему с количеством островов до 25, распределенную на расстояние до 2500м. И все это, что называется look and feel как локальные модули контроллера с точки зрения программиста. Круто, правда? :)
Но это еще не все. Вместо островов, построенных на основе стандартных модулей М258 со степенью защиты IP20, можно использовать модули дискретных/аналоговых входов/выходов в исполнении IP67.
Таким образом можно получить систему вроде следующей:

Altivar IMC
Altivar IMC (Integrated Machine Controller) - контроллер, выполненный в форм-факторе карты расширения для ПЧ серий Altivar 61/71.
Устройство идеально подходит для задач, где центральным устройством является асинхронный привод и встроенных функции привода не хватает для того что-бы реализовать весь функционал. Типичные задачи - подъемно-транспортное оборудование и управление насосными станциями.
ATV IMC на борту несет 10 дискретных входов и 6 дискретных выходов, а также по 2 аналоговых входа и выхода.
Контроллер также может использовать дополнительные карты расширения входов/выходов ПЧ.
В плане коммуникации устройство обладает портом CANopen Master и Ethernet с поддержкой Modbus TCP, HTTP и FTP (как вообщем-то и любое другое устройство, имеющее встроенный Ethernet-порт и поддерживающее SoMachine). Уже стандартным является наличие mini-USB порта программирования. Кроме того контроллер при установке подключается к внутренней шине ПЧ. И таким образом может напрямую обмениваться данными с ПЧ без каких-либо внешних шин/сетей.
Производительность ATV IMC находится на уровне ПЛК M238. Пользователю доступен 1 Мб оперативной памяти (из 2 Мб, установленных в устройстве), 2 Мб flash-памяти с файловой системой, 64 кБ FRAM памяти для сохранения переменных при пропадании питания.

XBT GC
Еще одним достаточно специфичным устройством, поддерживающим SoMachine, является устройство, совмещающее в себе функции панели оператора и ПЛК.
Существует 2 типоразмера XBT GC - 3"8 и 5"7. Панель с диагональю 3"8 является наименее оснащенной - обладает монохромным дисплеем, USB портом и возможностью расширения 2мя модулями TM2 (снова модули от Twido :)) либо 1м модулем CANopen Master, также несет на борту 12 дискретных входов и 6 выходов. Устройство с диагональю 5"7 уже может похвастаться последовательным портом, портом Ethernet (XBTGC2330) и цветным экраном (XBTGC2330), а также возможностью подключения до 3х модулей TM2 либо все тот же модуль CANopen Master и обладает 16 входами и 16 же выходами.
В вопросах производительности устройство несколько уступает M238 (не говоря уже о M258), т.к. на одних и тех же вычислительных мощностях обрабатывается код, написанный пользователем, так и пользовательский интерфейс.


CANopen Master для панелей Magelis XBT GT/GK
Модуль XBTZGCANM является дополнением к существующим панелям оператора серий XBT GT и XBT GK и позволяет, используя вычислительные возможности панели, выполнять код SoMachine. Кроме того модуль добавляет к панели поддержку протокола CANopen. 
Такое решение является очень удобным, когда необходимо реализовать простое управление группой территориально распределенных приводов по CANopen.

На этом я, пожалуй, закончу. До скорого на страницах этого сайта :)