реферат бесплатно, курсовые работы
 

Автоматизированная система мониторинга расхода топлива

Программные функции ПЛК

- Емкость: 2048 слов («M90-19-B1A»: 1024 слова)

- Язык: «Ladder»

- Битов памяти (катушки): 256

- Целые числа памяти (регистры): 256, 16 бит Биты памяти представлены в программе «M90» символом «MB»; целые числа памяти - «MI». Системные биты и системные целые числа привязаны к фиксированным значениям или функциям, и зарезервированы для использования их системой. Некоторые из них доступны для использования и в вашей программе. Системные биты представлены в программе «M90» символом «SB»; системные целые числа - «SI».

Программа HMI-интерфейса.

Можно создать до 80 дисплеев HMI-интерфейса. Переменные величины HMI-интерфейса могут изменяться в пределах, предусмотренных текстовым полем дисплея HMI-интерфейса. Эти переменные используются для вывода на экран значений следующих параметров системы: биты, целые числа, таймеры, время, даты, входы/выходы и текст из списка отображаемых текстов переменных. Типы сообщений, создаваемые программами HMI-интерфейса, могут быть сообщениями об ошибках, командами или запросами к оператору для ввода информации с клавишной панели «M90».

2. Разработка программно-аппаратного комплекса

2.1 Проект распределённой измерительной системы

Концепция предлагаемого технического решения состоит в максимальном использовании типовых электронных узлов со стандартными входными и выходными характеристиками.

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

Для определения уровня топлива используется емкостной датчик (например, Е 25ХИ) в комплекте со вторичным преобразователем ИСУ100И. Указанное оборудование имеет разрешение Ростехнадзора на применение и может использоваться на пожароопасных объектах (каковым является топливный бак).

Преобразователь ИСУ100И имеет релейные выходы для контроля крайних значений уровня (на схеме показана светодиодная индикация «Ёмкость полна» и «Ёмкость пуста»). Это позволяет капитану судна получать информацию о критических значениях уровня топлива даже при выходе из строя контроллера и/или компьютера.

Для измерения частоты вращения предлагается использовать наиболее простые и надёжные индуктивные датчики.

Обработка информации, получаемой с датчиков, осуществляется промышленным контроллером типа M90-19-1A, который встроенные аналого-цифровой преобразователь (для обработки сигнала уровня топлива) и часы реального времени (для определения частоты вращения).

Передачу информации с контроллера в офис Компании на первом этапе предлагается выполнять по существующему механизму.

Кроме этого, предлагается задействовать возможность сопряжения контроллера типа M90-19-1A с GSM-модемом. Это позволит получать информацию и осуществлять удалённое управление системой посредством СМС-сообщений в то время, пока судно находится в зоне покрытия сотовых сетей (например, при стоянке в портах, прохождении мимо крупных населённых пунктов и т.п.).

На рисунке 2.1 приведена общая схема организации распределённой измерительной системы.

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

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

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

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

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

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

В блоке управления вторичного преобразователя программируются две метки: верхняя и нижняя. При достижении уровня топлива, соответствующего верхней метке, происходит срабатывание первого реле. Аналогично работа организована с нижней меткой.

Выходной сигнал вторичного преобразователя уровня стандартизирован и нормирован. Для токовых сигналов (которые используются во взрывобезопасных приложениях) существует два диапазона нормирования: 0..20 мА или 4..20 мА. Большинство типов промышленного контрольно-измерительного оборудования поддерживает указанные диапазоны сигналов.

Диапазон 0..20 позволяет более точно провести передачу сигнала, поскольку диапазон изменения больше. Нужный диапазон задаётся непосредственно на вторичном преобразователе.

Контроллер производит оцифровку значения тока на аналоговом входе и вычисление уровня топлива.

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

Постоянная связь системы с диспетчерским пультом поддерживается с помощью терминала спутниковой системы Inmarsat. Терминал подключается в ПЭВМ также через последовательный порт. Управление сеансами связи производится программным модулем, работающим на ПЭВМ капитана судна.

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

Кроме этого, спутниковый терминал позволяет получать GPS-информацию: координаты судна, скорость, направление движения.

Рисунок 2.1 - Общая схема организации распределённой измерительной системы

Используемый в системе промышленный контроллер поддерживает передачу SMS-сообщений через GSM-модем.

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

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

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

2.2 Структура программного обеспечения распределённой ИИС

Программное обеспечение физически состоит из трёх компонентов: управляющая программа для контроллера, клиентское приложение на ПЭВМ капитана судна и серверное приложение на ПЭВМ диспетчера.

Структура взаимодействия компонентов ПО показана на рисунке 2.2.

Рисунок 2.2 - Структура программного обеспечения автономной распределённой ИИС

2.3 Линейная аппроксимация градуировочной характеристики

Градуировочная характеристика определяет зависимость между уровнем топлива в цистерне и его объёмом. Данная зависимость задаётся табличным способом. При этом характеристика для груженого состояния судна отличается от характеристики в балластном состоянии. Соответственно, имеется две градуировочные таблицы. Каждая из таблиц содержит по 300 отсчётов уровня. Данные таблицы приведены в приложениях А и Б.

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

Рисунок 2.3 - Усреднённая градуировочная характеристика

Для проведения линеаризации исходная характеристика была разбита на 9 линейных участков. Это позволяет занести в память контроллера только параметры линейных уравнений, что существенно сокращает объём управляющей программы [3, 4].

Параметры линейных уравнений приведены в таблице.

Таблица 2.1 - Параметры линейных уравнений

Номер линейного участка

Диапазон изменения уровня (см)

Коэффициент

Свободный член

Среднее значение относительной погрешности аппроксимации

нижняя граница

верхняя граница

0

50

3

-20

30,79

50

105

11

-430

4,66

105

152

17

-1050

0,89

152

222

24

-2128

0,58

222

275

28

-2997

0,11

275

342

31

-3853

0,23

342

410

32

-4197

0,09

410

416

24

-905

0,02

416

500

12

4105

0,09

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

На рисунке 2.4 показана расчётная градуировочная характеристика, полученная при помощи описанных выше уравнений.

Рисунок 2.4 - Расчётная градуировочная характеристика

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

Рисунок 2.5 - Абсолютная погрешность аппроксимации

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

Рисунок 2.6 - Относительная погрешность аппроксимации

Достигнутые значения погрешностей являются приемлемыми при данных условиях. Кроме этого, значения объёма, полученные с помощью указанных уравнений, являются приблизительными. Точные значения по полным градуировочным таблицам вычисляются в программном модуле диспетчера [5].

2.4 Структура управляющей программы микроконтроллера

Управляющая программа микроконтроллера разработана в редакторе Ladder, входящего в комплект поставки микроконтроллера.

Программа выполняется циклически, длительность цикла составляет 0,01 с. Алгоритм работы состоит из следующих этапов.

Линеаризация аналогового сигнала с датчика уровня. На этом этапе определяется значение уровня в сантиметрах из соотношения: 20 мА соответствует максимальному уровню 5метров. Операционная система имеет встроенную функцию линеаризации, которая доступна через системные переменные. Для этого операнды записываются в ячейки памяти, SI80-SI83, после чего для активизации функции устанавливается системный бит SB80. Соответствующий фрагмент программы представлен на рисунке 2.3.

Рисунок 2.7 - Фрагмент программы, выполняющий линеаризацию

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

Рисунок 2.8 - Фрагмент программы вычисления объёма топлива в цистерне

Масса топлива рассчитывается путём умножения объёма на коэффициент преобразования, который равен 0,84 тонн/кубометр.

Алгоритм работы программы вычисления объёма и массы топлива приведён на рисунке 2.9.

Вычисление частоты вращения валов двигателей. Контроллер осуществляет подсчёт количества импульсов, поступающих на цифровые входы №8 и №9 за единицу времени, после чего производится пересчёт полученного значения в значение с размерностью . Измерение интервала времени производится с помощью встроенного таймера. Отсчёт оборота производится по первому срезу входного импульса.

Фрагмент программы, иллюстрирующий вычисление частоты представлен на рисунке 2.10.

Рисунок 2.9 - Алгоритм работы программы вычисления объёма и массы топлива

Рисунок 2.10 - Фрагмент программы вычисления частоты вращения валов

Схема алгоритма программы подсчёта импульсов и вычисления частоты вращения валов представлена на рисунке 2.11.

Рисунок 2.11 - Схема алгоритма программы подсчёта импульсов и вычисления частоты вращения валов

2.5 Конфигурирование DDE-сервера UniDDE

Для реализации возможности обмена данными между контроллером и компьютером фирмой Unitronics разработано специальное программное обеспечение - DDE-сервер. С помощью данного ПО различные приложения могут производить обмен данными с контроллером.

Работа сервера организована следующим образом. В оперативной памяти ПЭВМ сохраняются копии значений внутренних переменных контроллера. Сервер по своему протоколу через последовательный порт производит синхронизацию и обновление данных через заданный интервал времени. Всем внешним приложения доступны сохранённые копии значений переменных через DDE-канал.

Для начала работы сервера и организации связи с контроллером, необходимо задать ряд параметров. Диалоговое окно сервера UniDDE, в котором показаны все введённые параметры, показано на рисунке 2.12.

Рисунок 2.12 - Диалоговое окно задания параметров сервера UniDDE

После того, как указаны все необходимые параметры, в основном окне сервера появится строка, отображающая список наблюдаемых переменных, вид которой представлен на рисунке 2.13.

Рисунок 2.13 - Окно сервера UniDDE со списком отображаемых переменных

Теперь сервер готов к использованию. Для начала работы необходимо запустить сервер нажатием на кнопку «Run».

2.6 Разработка клиентского приложения

Клиентское приложение устанавливается на ПЭВМ капитана судна и производит приём и обработку информации, поступающей от контроллера.

Оно содержит также модуль для работы с терминалом спутниковой системы Inmarsat.

Вид главного окна приложения приведён на рисунке 2.14.

Рисунок 2.14 - Главное окно клиентского приложения

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

Уровень топлива в сантиметрах считывается напрямую из памяти контроллера посредством DDE-сервера.

Для вычисления объёма топлива используется усреднённая тарировочная таблица, полученная путём усреднения таблиц для гружёного и балластного состояний. Масса топлива вычисляется в соответствии с заданным коэффициентом пересчёта объёма в массу. Обычно его значение равно 0,84.

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

В режиме реального времени в окне отображается информация о текущем местонахождении судна. Эта же информация в автоматическом режиме отправляется диспетчеру.

2.7 Разработка серверного приложения

Для серверного приложения, установленного на ПЭВМ диспетчера, выбран модифицированный MDI-стиль интерфейса. Особенность заключается в том, одновременно в главном окне может создаваться множество дочерних форм, однако в каждый момент времени видня только одна. Переход между дочерними формами осуществляется нажатиями на кнопки «Вперёд» и «Назад». Стиль панели инструментов выбран по типу приложения Internet Explorer.

При запуске приложения автоматически отображается окно с сообщениями, пришедшими от судов за сегодняшний день. Вид окна приведён на рисунке 2.15.

Рисунок 2.15 - Окно с сообщениями от экипажа судна «Волгонефть-53»

С помощью элементов интерфейса можно задать период, за который требуется отобразить сообщения с судов.

Аналогичным образом выводится информация с датчиков. Вид окна с данной информацией показан на рисунке 2.16.

Рисунок 2.16 - Окно приложения с информацией от датчиков судна

Для обновления отображаемой информации служит кнопка «Обновить» на панели инструментов.

При нажатии на кнопку «Домой» произойдёт переход к окну, отображающему информацию о сообщениях с судов за сегодняшний день.

При нажатии на ссылку «Сообщения» будут отображены все сообщения, пришедшие и отправленные за сегодняшний день.

Вид окна представлен на рисунке 2.17.

Рисунок 2.17 - Окно приложения с информацией от датчиков судна

2.8 Организация взаимодействия с базой данных

Для организации доступа к базе данных используется встроенный в операционную систему Windows провайдер баз данных Microsoft.Jet.OLEDB.4.0.

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

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

Рисунок 2.18 - Структура взаимодействия с базой данных

Применение показанной схемы имеет ряд преимуществ. Приведём основные из них.

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

Страницы: 1, 2, 3, 4, 5


ИНТЕРЕСНОЕ



© 2009 Все права защищены.