Интерфейс пользователя между микроконтроллерной системой управления и параллельной моделирующей средой


Содержание
Введение
1. Актуальность
2. Цель и задачи исследования
3. Проектирование и работа датчика сопряжения
4. Особенности реализации программы-клиента
Выводы
Список источников

Введение

В наше время высоких технологий практически на любом большом предприятии, будь то область электротехники, металлургии или биотехнологий стоит вопрос об эффективном моделировании технологических процессов и управлении ими. Объект, на котором протекают исследуемые технологические процессы, представляет собой сложную динамическую систему, а ее моделирование позволяет получить наилучшее решение в вопросах управления и налаживании производственного процесса, а также избежать ситуаций, когда система выходит из строя [1].

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

Имея в своем распоряжении точную модель какого-либо процесса, пользователь-специалист предметной области или разработчик управляющей системы данным процессом могут выполнять различного рода эксперименты и исследования для достижения поставленных целей (например, для отладки разработанного оборудования) [2].

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

Клиент обеспечивает не только простоту, но и гибкость. Имея обновляемую базу данных кластеров, пользователь может выполнять моделирование на разных параллельных системах с разной вычислительной мощностью и спецификой работы [3]. Получаемый результат может обрабатываться и предоставляться в любой желаемой форме с возможностью хранения и анализа предыдущих опытов. Это позволяет значительно увеличить эффективность проводимых исследований и опытов, а также улучшить качество разрабатываемого оборудования для управления и анализа сложных производственных процессов.


Актуальность

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

Имея точную параллельную модель, можно построить систему автоматического управления или диагностики, имея средства для качественного тестирования и отладки. Чтобы связать систему управления и модель сложного динамического объекта, необходим интерфейс, о котором говорилось выше. Моделирование, в основе которого лежит три компонента: система управления, модель и интерфейс связи системы управления с моделью позволяет максимально приблизить условия тестирования к реальным, а само моделирование называется полунатурным.

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


Цель и задачи исследования, планируемые результаты

В последнее время в качестве систем управления набирают популярность микроконтроллерные системы управления (МКСУ). Чтобы связать МКСУ и параллельную модель сложного динамического объекта, на котором и выполняются модельные эксперименты, необходим специальный интерфейс сопряжения, который представляет собой набор аппаратно-программных решений для контроля эксперимента и наблюдения за ним. Аппаратным интерфейсом выступает так называемый датчик, обеспечивающий возможность передачи данных от МКСУ к компьютеру, где установлено разработанное программное обеспечение для обмена данными между МКСУ и параллельным моделирующей средой, а также имеются все необходимые средства для проведения экспериментов и их визуализации [7].

Во время разработки датчика планируется рассмотреть:
• Исследование протокола передачи данных от МКСУ к компьютеру;
• Внедрение и использование протокола в процессе обмена данными;
• Проектирование и сбор платы датчика со всеми необходимыми компонентами.

Во время разработки программы-клиента планируется рассмотреть:
• Исследование безопасного протокола передачи данных между компьютерами по сети;
• Создание дружественного и удобного интерфейса для работы с параллельной моделирующей средой;
• Обеспечение графических средств мониторинга и построения моделируемого объекта.


Проектирование и работа датчика сопряжения

Роль моста между МКСУ и управляемым объектом выполняет датчик. Рассмотрим принцип работы датчика на примере вентиляционной системы шахты. На рисунке 1 изображена структура системы автоматического управления расхода воздухом в одной ветви вентиляционной системы шахты.

Структура систем автоматического управления расходом воздуха

Рисунок 1. Структура систем автоматического управления расходом воздуха

Показанный на структуре датчик передает МКСУ некий параметр Q, величину которого необходимо контролировать. МКСУ анализирует полученные данные и выдает значение напряжения, которое через датчик подается на двигатель, регулируя тем самым уровень на который необходимо опустить штору, ограничив или увеличив тем самым поток воздуха в шахте. В качестве датчика выступает микроконтроллер, который с некоторой, установленной пользователем частотой принимает данные от датчика, обрабатывает их и выдает ответ в нужном направлении.

Во время полунатурного моделирования датчик помогает выполнять обмен данными между МКСУ и параллельной моделью на кластере. Непосредственно датчик связан только с микроконтроллерной системой управления. Для связи с моделью на кластере используется терминал. Пользователь должен иметь возможность тестировать систему с разными параметрами и получать результат, как в графическом виде, так и в численном. Роль такого терминала выполняет компьютер.

Аппаратная реализация датчика состоит из трех компонент:
• центральный микроконтроллер;
• COM - USB адаптер;
• плата с разъемами для подключения микроконтроллеров системы управления.

Центральный микроконтроллер - микроконтроллера серии PIC18F2550. PIC - это семейство микроконтроллеров Гарвардской архитектуры, которые разрабатываются компанией Microchip Technology Inc[5]. Данный микроконтроллер представляет собой высокомощный 8-битный контроллер, который включает в себя большой набор модулей: 10-битный АЦП, компараторы, ШИМ, драйвер ЖКИ, интерфейсы связи USB, CAN, I2C, SPI, UART (COM), Ethernet и т.д. Объем RAM 2 Кбайт, скорость процессора 12 MIPS, память для хранения программы 32 Кбайт. Диаграмма контактов PIC18F2550 изображена на рисунке 2.

Диаграмма контактов PIC18F2550

Рисунок 2. Диаграмма контактов PIC18F2550

Таким образом, данный микроконтроллер имеет все необходимые средства для качественного выполнения возложенной на него функции: анализ данных и обмен ими между компьютером (по последовательному COM-интерфейсу) и МКСУ.

Последовательный COM-интерфейс предназначен для обмена байтовой информацией, которая передается по одному биту[6]. Этот интерфейс еще обозначается как интерфейс стандарта RS-232. Применение интерфейса вытекает из его названия: «Интерфейс между терминальным оборудованием с обменом по последовательному двоичному коду». Раньше последовательный COM-интерфейс использовался для подключения терминала, позднее для модема или мыши. Сейчас он используется для связи с аппаратными средствами вычислительных систем, спутниковыми ресиверами и т.д.

Особенностью последовательного COM-интерфейса в сравнении с другими технологиями есть факт отсутствия каких-либо временных требований между передачей двух байт. Этот интерфейс является простым с точки зрения оборудования, широко распространен и имеет поддержку во многих языках программирования и аппаратных реализациях. Для того чтобы датчик мог отправлять и принимать информацию от компьютера используются UART выходы микроконтроллера 18 - RX (прием) и 19 - TX (передача).

Как правило, передача и прием по COM-интерфейсу на стороне компьютера должна выполняться через COM-порт [10]. Однако в наше время число персональных компьютеров имеющих соответствующий порт все меньше и меньше, поэтому следует предусмотреть передачу данных через интерфейс USB. Для этого используется специальный COM-USB адаптер, позволяющий на программном уровне работать с последовательным COM-интерфейсом, тогда как на физическом уровне использовать интерфейс USB. В основе адаптера лежит микросхема FT232R. Схема подключения FT232R изображена на рисунке 3.

Схема подключения FT232R

Рисунок 3. Схема подключения FT232R

Так как кроме компьютера датчик также будет соединяться с МКСУ, необходимо разработать плату с разъемами для подключения микроконтроллеров системы управления. Плата состоит из разъема для центрального микроконтроллера, разъема для FT232R адаптера, и шести разъемов к которым будут подключаться управляющие микроконтроллеру МКСУ [9]. Принципиальная схема платы изображена на рисунке 4. Разработанный датчик изображен на рисунке 5.

Принципиальная схема платы соединения датчика с МКСУ

Рисунок 4 - Принципиальная схема платы соединения датчика с МКСУ


Рисунок 5 - Изображение датчика с COM-USB адаптером (1), центральным микроконтроллером (2) и разъемами для МКСУ (3)



Особенности реализации программы-клиента

Программа-клиент, запущенная на компьютере позволяет выполнять моделирование сложного динамического объекта, работая с параллельной моделирующей средой и системой управление на микроконтроллерах. Перед началом моделирования необходимо подключить МКСУ к компьютеру и задать параметры ее работы. Дальше пользователю предлагается с помощью графического редактора схематически изобразить моделируемый динамический объект или использовать готовый из базы данных.

Следующим шагом необходимо запустить моделирование динамического объекта в параллельной моделирующей среде и обеспечить возможность обмена данными между средой и МКСУ. Параллельная моделирующая среда находится, как правило, на удаленном многопроцессорном кластере. Управление кластером и доступ к нему выполняется с помощью сервера, как правило, под управлением операционной системы Linux. Такой подход позволяет удаленно, по сети, получать доступ к ресурсам кластера широкому кругу пользователей, а значит, пользователь не должен находиться в непосредственной близости к кластеру. На рисунке 6 изображен процесс обмена данными во время моделирования.

Процесс обмена данными во время моделирования (Анимация: 6 кадров, задержка между кадрами 1.5 с, количество циклов 5, размер 500х300, 23.7 КБ)

Рисунок 6 - Процесс обмена данными во время моделирования (Анимация: 6 кадров, задержка между кадрами 1.5 с, количество циклов 5, размер 500х300, 23.7 КБ)

Однако необходим надежный и гибкий интерфейс, по которому будет предоставляться доступ к ресурсам кластера. Для этой цели очень часто используется сетевой протокол Secure Shell (SSH), который позволяет выполнять защищенное, удаленное управление компьютером и передачу ему данных. Формально SSH - это сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений (например, для передачи файлов) [4]. SSH протокол шифрует весь трафик, в том числе передаваемые пароли, с возможностью выбора алгоритмов шифрования. SSH-клиенты и SSH-серверы доступны для большинства сетевых операционных систем.

Операционная система Linux имеет установленный SHH-сервер, позволяющий получить доступ к системе при наличии пароля и логина. SSH также позволяет передавать по незащищенной среде практически любой другой сетевой протокол. Благодаря этому можно не только удаленно работать на компьютере через командную оболочку, но и передавать звуковой или видео поток. Протокол SSH состоит из трех основных компонент. Протокол транспортного уровня обеспечивает аутентификацию серверов, конфиденциальность и целостность[8]. Протокол аутентификации пользователей используется на сервере для проверки полномочий клиентов. Протокол соединения обеспечивает мультиплексирования шифрованного туннеля в несколько логичных каналов.


Выводы

На момент написания магистерской работы исследования, проводимые в ее рамках, носили не только теоретический характер, но и были подтверждены на программном и аппаратном уровнях. Была выполнена разработка и реализация датчика, после чего была написана часть программы-клиента с целью протестировать его работу. Кроме того был получен опыт работы с SSH протоколом. Тестирование выполнялось с подключением реальной микроконтроллерной управляющей системой. При написании данного реферата магистерская работа еще не завершена. Окончательное завершение: декабрь 2013 года. Полный текст работы и материалы по теме могут быть получены у автора или его руководителя после указанной даты.


Список источников
  1. Святний В.А. Паралельне моделювання складних динамічних систем // Моделирование - 2006: Международная конференция. Киев, 2006 г. - Киев, 2006. - С. 83-90.
  2. Святний В.А. Стан та перспективи розробок паралельних моделюючих середовищ для складних динамічних систем з розподіленими та зосередженими параметрами / В.А.Святний, О.В.Молдованова, А.М.Чут.
  3. Конспект лекций по курсу «Параллельные распределенные вычисления», В. А. Святный, 2010.
  4. Secure Shell [Электронный ресурс]
    Режим доступа: www.ru.wikipedia.org/wiki/SSH
  5. PIC микроконтроллеры [Электронный ресурс]
    Режим доступа: www.ru.wikipedia.org/wiki/PIC
  6. Последовательный COM-порт [Электронный ресурс]
    Режим доступа: www.en.wikipedia.org/wiki/Serial_port
  7. Святний В.А. Проблеми паралельного моделювання складних динамічних систем.
  8. SSH.NET Library [Электронный ресурс]
    Режим доступа: www.sshnet.codeplex.com
  9. PIC RS232 Serial Communication example [Электронный ресурс]
    Режим доступа: www.mcuexamples.com/PIC-Serial-Communication.php
  10. Serial Port in C# [Электронный ресурс]
    Режим доступа: www.msdn.microsoft.com/ru-ru/library/system.io.ports.serialport.aspx
© 2013, Saveli Bondini
Eng
Укр