УДК 621.385.06
LonWorks - технология систем управления распределенного интеллекта
В.А. Каекин
Рассмотрены и проанализированы основные особенности технологии LonWorks, раскрыты ее достоинства и недостатки. Main features of LonWorks technology are considered and analyzed, its advantages and disadvantages are outlined.
В основе технологии LonWorks лежит концепция реализации систем управления при помощи «распределенного интеллекта» - управляющей сети (Local Operating Networks - LON), которая имеет минимальное число уровней иерархии. В ней нет явно выраженного центрального решающего устройства (Master) [1]. Процессы управления распределяются среди узлов сети, между которыми осуществляются коммуникационные взаимодействия. Технология Lonworks похожа на нейронные и транспьютерные сети, широко известные специалистам по высокопроизводительным и интеллектуальным вычислительным системам. Так же, как и в этих системах, процессы коммуникации поддерживаются на аппаратном уровне. Делается это при помощи протокола LonTalk [2, 3].
Аппаратную основу управляющей сети составляет функционально-ориентированный микроконтроллер - Neuron Chip. Разработан язык Neuron C, в котором основное внимание уделено вопросам псевдопараллельного программирования, обмену информацией между узлами сети и синхронизации их состояний. В настоящее время во всем мире установлено более 30 миллионов узлов, функционирующих по технологии LonWorks. Все это позволяет говорить (по аналогии с Internet, представляющей собой огромную совокупность узлов (несколько миллионов), объединенных общим стандартным протоколом взаимодействия -TCP/IP) о появлении сетей Infranet, сети управления окружающей человека инфраструктурой.
К основным особенностям технологии LonWorks относится: открытость; совместимость; реализация всех семи уровней модели ISO/OSI; разнообразные сетевые структуры и шлюзы к различным сетям; событийный механизм обмена сообщениями между узлами; сегментация сетей с целью оптимизация трафика.
Открытость. В основе технологии лежит стандартизованный протокол LonTalk (EIA-709.1 -
Control Network Protocol Specification). Протокол предложен фирмой Echelon (США).
Совместимость. Создана независимая ассоциация производителей оборудования по технологии LonWorks - LonMark, которая вырабатывает стандартные виды представления информации, стандартные профили управления устройствами и системами, а также проверяет совместимость устройств и систем с выдачей соответствующего сертификата.
Реализация всех семи уровней модели ISO/OSI. Технология LonWorks предоставляет разработчику систем управления все семь уровней модели ISO/OSI, в отличие от других систем, где предлагаются только низшие уровни. На прикладном уровне в LonWorks доступны прикладной сетевой интерфейс и менеджмент, а на уровне представления данных - сетевые переменные, при помощи которых производится обмен.
Разнообразные сетевые структуры и шлюзы к различным сетям. Оборудование, функционирующее по технологии LonWorks, поддерживает различные сетевые топологии. К ним относятся шина, звезда, кольцо, а также широко распространенная смешанная топология. На рынке имеются несколько типов маршрутизаторов и шлюзов, которые обеспечивают подключение к различным промышленным (ProfiLon) или общественным (Internet, Intranet) сетям. Так, например фирмой Echelon и Cisco Systems реализована программа по объединению технологий Internet и LonWorks, которая позволила обеспечить управление Lon устройствами через Internet. Подобные разработки ведут многие другие производители.
На физическом уровне поддерживаются различные среды: витая медная пара; оптический кабель; радиочастоты; силовая сеть.
Событийный механизм обмена сообщениями между узлами, сегментация сетей с целью оптимизация трафика. LonWorks имеет модифицированный произвольный доступ с контролем
несущей (CSMA/CD). Для уменьшения нагрузки на сеть используется событийный механизм обмена сообщениями, т.е. данные передаются только тогда, когда произошли какие-либо изменения. Также для сокращения внутрисетевого трафика можно использовать сегментацию сети при помощи маршрутизаторов, которые выпускаются различными производителями.
В основе построения локальной сети в стандарте LonWorks лежит применение специализированных гибридных микросхем Neuron в качестве микроконтроллеров узлов локальной сети.
Микроконтроллер Neuron содержит три восьмиразрядных процессора, объединенных внутренней шиной со встроенными блоками общей, оперативной и энергонезависимой, памяти, а также периферийными устройствами (сетевым коммуникационным портом, таймерами, управляющими регистрами, портами ввода/вывода). Модель Neuron3150 также предусматривает использование и внешней памяти хранения программ. Несмотря на архитектурную симметричность внутренних процессоров, функциональное назначение каждого из них строго детерминировано. Два из них управляют сетевой передачей данных на основе многоуровнего сетевого протокола, а один предназначен для обслуживания прикладной части программного обеспечения узла. Синхронизация работы процессоров осуществляется за счет использования общих областей памяти данных. Уникальность адреса каждого из микроконтроллеров стандарта LonWorks может быть обеспечено благодаря наличию собственного 48разрядного идентификационного кода, записываемого в энергонезависимую память при их производстве.
Взаимодействие с внешними устройствами производит процессор прикладного уровня посредством 11-выводного порта ввода/вывода. Функциональное назначение выводов порта может быть задано прикладным программным обеспечением в зависимости от типов внешних устройств, обслуживаемых микроконтроллером.
В случае недостаточной вычислительной или функциональной мощности микроконтроллера Neuron для реализации функций узла по взаимодействию с внешними устройствами, в составе узла может быть применен дополнительный микроконтроллер, удовлетворяющий задаче сбора данных или управления. В этом случае порт ввода/вывода может быть использован для связи микроконтроллеров с целью организации обмена дан-
ными по параллельному интерфейсу, а сам микроконтроллер Neuron выполняет только коммуникационные функции.
Для реализации сетевых функций микроконтроллера служит пятивыводной коммуникационный порт, управляемый процессором, обслуживающим два нижних уровня сетевого протокола. С целью сопряжения микроконтроллера с физическим каналом связи, к коммуникационному порту подключаются приемопередатчики в соответствии с выбранным типом канала связи.
Основные характеристики микроконтроллеров Neuron Chip: число микропроцессоров в кристалле - 3, тип Motorola 6800; уникальный 48битный код (Neuron ID); Eeprom, Rom и Ram память; 11 двунаправленных линий ввода/вывода; два 16-битных таймера/счетчика; пять линий коммуникационного интерфейса.
Микроконтроллеры Neuron выпускаются в 64-выводном QFP (Neuron 3150) и 32 выводном SOIC корпусах (Neuron 3120xx ).
Промышленно выпускаемые в стандарте LonWorks приемопередатчики обеспечивают организацию следующих типов каналов связи: линейного, свободной топологии, RS-485, радиочастотного, элекросетевого и т.д. Скорость передачи данных в каналах, в зависимости от выбранного типа самого канала, обеспечивается в диапазоне 330 бит/с - 1,25 M6ht/c.
Для сопряжения каналов связи различных типов могут применяться специальные маршрутизаторы, построение которых основано на двух микроконтроллерах Neuron, связанных по параллельному интерфейсу порта ввода/вывода, и имеющих собственные приемопередатчики, соответствующие характеристикам типов сопрягаемых каналов. На программно-логическом уровне построения маршрутизатора, устройству могут быть предписаны различные функции по передаче данных между сегментами локальной сети.
Программное обеспечение микроконтроллеров Neuron составляется из трех разделов: системного программного обеспечения, прикладного, и программного обеспечения уровня связи данных.
Системное программное обеспечение является резидентным для каждого из микроконтроллеров. Его программный код либо прошивается во встроенный узел Rom моделей Neuron3120 на этапе производства микроконтроллеров, либо записывается в модуль внешней памяти моделей Neu-ron3150. На программно-логическом уровне системное программное обеспечение полностью реа-
лизует функции многоуровневого сетевого протокола LonWorks, планировщика задач для прикладного уровня программного обеспечения, и содержит код библиотеки программных функций для управления портом ввода/вывода микроконтроллера. На основе применения программных средств, предоставляемых системным программным обеспечением, на базе порта ввода/вывода возможна организация нескольких типов интерфейсов с внешними устройствами: дискретного, параллельного, I2C, RS-232, Microwire, и т.д.
Системная часть программного обеспечения также реализует полный набор операций для управления сетевым взаимодействием узлов системы. Реализация сетевым протоколом LonWorks функций управления конфигурацией сети, предоставляет возможность вынесения задач управления локальной сетью на отдельный уровень, обеспечиваемый, независимыми от особенностей построения отдельных узлов, аппаратно-программными средствами.
Прикладная часть программного обеспечения строится разработчиком узла и определяет набор задач по обслуживанию связанных с функционированием узла процедур регистрации данных и управления исполнительными устройствами. На нижнем уровне систем автоматизации, построенных по стандарту LonWorks, определяется набор входных и выходных сетевых переменных, необходимых для функционирования конкретного узла и реализации его сетевых функций. При проектировании прикладного программного обеспечения описание сетевых переменных отдельного узла определяется либо непосредственно в само-документированной секции энергонезависимой памяти микроконтроллера, либо описание их мнемонических имен, типов и разрядности записывается в специальный внешний файл описания интерфейса проектируемого узла. Описание сетевых интерфейсных функций узла применяется на этапе построения связей сетевых переменных.
При использовании в качестве микроконтроллера узла модели Neuron3150 и внешней памяти программ типа Flash, допускается загрузка прикладной части программного обеспечения узла по сети LonWorks. Данная функция предоставляет возможность гибкого управления узлом без его демонтажа из системы.
Разработка прикладного уровня программного обеспечения производится с применением специального языка программирования Neuron-C (специальной реализации языка C). C уровня при-
кладного программного обеспечения допускается использование вызовов всех функций, предоставляемых системной частью программного обеспечения.
Для разработки узлов, построенных на базе Neuron, применяются специальные аппаратнопрограммные отладочные комплексы LonBuilder и NodeBuilder, производимые фирмой Echelon.
LonBuilder представляет собой крейт, содержащий в себе блок питания, интерфейс для связи с компьютером, имеющий семь слотов для установки эмуляционных модулей. LonBuilder позволяет с помощью устанавливаемых в него модулей производить отладку:
- прикладного программного обеспечения модулей, разработанных пользователем на основе различных Neuron-контроллеров;
- объединять несколько эмуляционных модулей в сеть Echelon, для отладки взаимодействий;
- с помощью роутер-модуля осуществлять объединение действующей и проектируемой сетей;
- объединять узлы Echelon в сети различных типов, а также LonBuilder может быть использован, в качестве шлюза-маршрутизатора сети Echelon, с возможностью каскадирования отдельных крейтов LonBuilder.
Таким образом, LonBuilder является мощнейшим средством отладки не только непосредственно прикладного программного обеспечения конкретного модуля, но и полноценным эмулятором сети Echelon, а учитывая его широкие возможности при построении реальной сети его цена перестает быть столь пугающе высокой (от 24 тысяч долларов США в базовой поставке, состоящей из LonBuilder, двух эмуляторов Neuron3150, служебного модуля LonBuilder, роутера, РС-карты, программного обеспечения и проводов).
Уровень сопряжения узлов нижнего уровня системы автоматизации с устройствами верхнего уровня предполагает использование специализированного программного обеспечения для организации взаимодействия узлов микроконтроллерной сети. Как правило, устройство управления локальной сетью организуется на базе персонального компьютера, содержащего устройство сопряжения с сетью в стандарте LonWorks. С уровня подобного компьютера возможно обеспечить управление связыванием выходных и входных переменных отдельных узлов нижнего уровня локальной сети и осуществлять общие функции управления сетью, предусматривающие идентификацию узлов, определение и управление их статусом в локальной се-
ти, тестирование сетевых переменных каждого из узлов.
Структура связей сетевых переменных узлов локальной сети, и определенное при конфигурации сети состояние каждого из узлов, записывается как в энергонезависимую память узлов, так и в базу данных компьютера-конфигуратора сети.
Необходимо отметить, что протокол Lon-Works предусматривает специальные функции по защите данных и их кодированию при передаче между узлами сети. Эти функции обеспечивают надежность передачи информации и невозможность несанкционированной замены узлов локальной сети.
Для сопряжения нижнего уровня локальной сети, построенной на базе стандарта LonWorks, c уровнем компьютерных станций могут быть применены платы и автономные устройства, промышленно выпускаемые фирмами, поддерживающими данный стандарт. Так фирма IEC (США) производит автономный сервер данных (Datalogger), реализованный на базе PC-104 и оснащенный интерфейсной платой для взаимодействия с сетью, выполненной на базе микроконтроллера Neuron.
При организации работы станций верхнего уровня систем автоматизации, базируемых на стандарте LonWorks, может применяться как коммерческое, например, производимое фирмой IEC, так и специализированное программное обеспечение, разработанное отдельными пользователями для решения конкретных задач (например, MIMS, разработанное Sandia National Laboratories).
• Технология LonWorks имеет неоспоримые преимущества, к числу которых следует отнести: небольшая стоимость компонентов для реализации отдельного прикладного узла; очень простая конфигурация узла нижнего уровня; большая номенклатура устройств и приборов, выпускаемых промышленно в странах ЕЭС и США и имеющих встроенные узлы LonWorks для работы в составе сетей Echelon (большая распространенность стандарта в мире); большое число готовых процедур по адаптации типовой периферии в стандартной библиотеке Neuron; простота разработки прикладного программного обеспечения узлов. К недостаткам данной технологии относятся: чрезвычайно большая стоимость, хотя и весьма эффективных и удобных, отладочных средств; отсутствие узлов WDT, узла автоматического сброса при включении питания (требует использования внешнего супервизора) и возможности работы в «спящем режиме» у микроконтроллеров Neuron; крайне слабая поддержка данного стандарта дилерскими фирмами в России.
ЛИТЕРАТУРА
1. Сайт компании-прародителя технологии Lon Works®.
2. www.lonmark.org - сайт организации по стандартизации технологии LonWorks®.
3. www.nhs.ru/proiects/asu cat2001examp.shtml. Примеры применения технологии LonWorks®.
Поступила 29.12. 2007 г.