ФЭА / АИТ / ЛАБОРАТОРНАЯ РАБОТА по дисциплине: «Моделирование систем» на тему: «Контроллер ADAM – 5510»
(автор - student, добавлено - 28-09-2017, 17:19)
Скачать:
Знакомство с ADAM – 5510 Целью настоящей работы является ознакомление с программируемыми контроллерами ADAM серии 5000, получение навыков их конфигурирования и программирования в системе UltraLogik32. Кроме того, в ней затрагиваются основные аспекты температурных измерений, а также использование встроенной в UltraLogik функции табличного преобразования. Теоретический материал Сферы применения и особенности контроллеров ADAM - 5510 и ADAM - 5511 ADAM-5510 представляет собой программируемый контроллер на базе микропроцессора AM188ES. Он обладает 256 Кбайт ОЗУ, 256 Кбайт флэш-ПЗУ и тремя последовательными портами. Контроллер совместим с любыми модулями ввода-вывода 5000 серии, сочетая в себе преимущества открытости архитектуры IBM PC и удобства классической модульной конструкции программируемых логических контроллеров. Его усовершенствованный аналог ADAM-5511 обладает также встроенной программной поддержкой протокола Modbus, увеличенным объемом flash-памяти и возможностями удаленной загрузки и запуска программ. Более поздняя версия контроллера, ADAM-5510M, обладает 640 Кбайт оперативной памяти и дополнительным последовательным портом RS-232/485. Как и в ADAM-5511, в нем имеется 512 Кбайт flash-памяти с поддержкой файловой системы, 400 Кбайт из которых доступно пользователю. Кроме того, пользователь может выделить до 512 Кбайт SDRAMдля сохранения своих данных в энергонезависимой памяти. Предусмотрена также утилита для загрузки программ в контроллер, работающая под управлением ОС Windows. Основной областью применения контроллеров ADAM-5510 является управление медленно меняющимися сигналами, например, температурой. Не уступая по производительности классическим PLC, благодаря своей низкой стоимости он находит применение в таких областях, в которых бывает зачастую экономически нецелесообразно использовать традиционные решения, в частности, для управления вентиляцией, отоплением, кондиционированием воздуха в современных зданиях. Хорошо подходит он и для решения наиболее простых задач. Так, к примеру, на ВДНХ ADAM-5510 используется для подсчета посетителей в турникетах. UltraLogik позволяет расширить рамки применение ADAM-5510, обеспечивая более высокое Качество программирования по сравнению с библиотеками от Advantech ставя, его, в один ряд с классическими контроллерами, используемыми для управления производственными процессами. Так, на алюминиевом производстве в Подмосковье ADAM-5510 применяется для управления системами «печь-ковш». Программирование ADAM-5510 с помощью UltraLogik позволяет добиться повышения эффективности трудозатрат с меньшими капиталовложениями. При этом Вам не придется покупать исполнительные модули для каждого контроллера, как это бывает при использовании других систем разработки в стандарте 1ЕС 61131-3. Создание программы для ADAM-5510 ADAM-5510, строго говоря, не является полностью совместимым с IBM PC контроллером. Несмотря на то, что в нем используется х86 совместимый процессор, организация работы с системными ресурсами в нем достаточно заметно отличается от принятой в IBM PC. Это обстоятельство несколько осложняет перенос программного обеспечения. Тем не менее, работа программ осуществляется в нем под управлением DOS. В этом смысле ADAM-5510 является DOS-совместимым контроллером. Фирма Advantech предоставляет разработчикам библиотеки для Borland C++ 3.0, с помощью которых можно создавать программы для контроллеров ADAM-5510 на языке С. При использовании UltraLogik все, что вам потребуется сделать для того, чтобы программа работала на ADAM-5510, это установить специальную модель «ADAM-5510» во вкладке «Конфигурация». При этом станут доступны все ресурсы контроллера. Ресурсы контроллера ADAM-553O располагает следующими ресурсами: перезапуск контроллера в случае «зависания» программы. •Последовательные порты СОМ1 (RS-232) и COM2 (RS-485) позволяют вести обмен данными с удаленными устройствами и компьютером верхнего уровня. Порт COM3 (Program Download Port) недоступен для пользователя и предназначен для загрузки программ. •Светодиодные индикаторы LED1..LED4 (они пронумерованы снизу вверх) доступны для пользователя. При этом LED1 (индикатор разрядки батарей) будет светиться только в том случае, если разряжена батарея питания. •Батарея питания питает часы реального времени и 64К статической памяти, которые можно использовать для сохранения данных на период отключения питания. Сделать это можно, написав небольшой внешний модуль на языке С, взяв за основу пример, прилагаемый к UltraLogik. .• DIP переключатель можно использовать для задания адреса, если в сети имеется несколько контроллеров с одинаковыми программами. •Flash памятьобеспечивает хранение образа диска, используемого для загрузки DOS и программ пользователя. Объем Flash-ПЗУ составляет 256Кбайт, из них 170 Кбайт доступно для пользователя. Загрузка программ Контроллер ADAM-5510 имеет специальный порт для загрузки программ, нуль-модемный адаптер для подключения не нужен. Для загрузки программы в контроллер необходимо создать образ flash-диска, с которого будет производиться загрузка контроллера. Для этого нужно переписать системные файлы и файлы программы в каталог C:\5510\ALLFILE (C:\5511\5511FILE для ADAM-5511) и воспользоваться программой ADAM5510.EXE. С помощью драйвера VDISK.SYS можно создать в оперативной памяти контроллера виртуальный диск, содержимое которого будет теряться при перезапуске. В этом случае загрузку программ на виртуальный диск можно будет производить с помощью функции «Terminal» программы ADAM5510 или любого другого эмулятора терминала, например, SmartLink. Для этого следует воспользоваться командой TRANSFER /R <имя файла>. Контроллер ADAM-5511 обладает увеличенным объемом flash-диска (400 Кб) с поддержкой файловой системы. Доступ к файловой системе обеспечивается с помощью диска D, на который можно загружать программы с удаленного компьютера. Для этого можно воспользоваться любым эмулятором терминала, в том числе SmartLink, и утилитой TRANSFER. Для загрузки программ в контроллер можно воспользоваться тем же методом, что и для ADAM-5510, с той лишь разницей, что программа загрузки называется ADAM5511 .ЕХЕ2 и файлы для загрузки должны находиться в папке 55 И FILE. При этом будет сформирован образ загрузочного, диска С, который не может быть изменен во время работы контроллера. Однако, существует более удобный способ работы. Чтобы им воспользоваться, нужно, чтобы при запуске контроллера загружалась резидентная программа ADAM5511.EXE (объем 58 Кбайт, не путайте её с самим пакетом конфигурирования), которая обеспечивает удаленную загрузку с помощью протокола обмена ModBus. Эта программа запускается по умолчанию. Загрузка и запуск программ с помощью ModBus осуществляется программой ADAM-5511 Utility. Для этого нужно настроить номер скорость обмена с помощью переключателей с стороны контроллера. Обмен возможен интерфейсу RS-485, так и по RS-232. В последнем случае нужно воспользоваться нуль-модемным адаптером. Программа поддержки ModBus осуществляет прямой доступ к модулям ввода-вывода и обмен данными с вышестоящим компьютером. Если управляющая программа написана на UltraLogik, необходимо учитывать, что UltraLogik использует собственные механизмы обмена с модулями, из-за чего возникают конфликты и данные иногда считываются неправильно. В этом случае, следует пользоваться поддержкой ModBus, встроенной в UltraLogik версии 1.04.026 и более поздние, отключив запуск резидентной программы ADAM551I.EXE в контроллере. Отключить запуск программы ADAM5511.EXE в контроллере ADAM-5511 проще всего следующим образом: установить все DIPпереключатели, кроме «СОМ1», в положение OFF. В таком случае программа ADAM5511.ЕХЕ после запуска автоматически завершит свою работу, и управление будет передано следующей программе, вызываемой после неё в файле AUTOEXEC.BAT, или интерпретатору командной строки ROM-DOS. Существует три основных метода преобразования температуры в цифровое значение для ввода в ЭВМ: с использованием термометров сопротивлений, термоэлектрических преобразователей (термопар) и полупроводниковых датчиков. Последний из них наиболее удобен, так как позволяет получать нормализованный электрический сигнал как в аналоговой, так и в цифровой форме. Однако, область применения этого метода ограничена температурным диапазоном работы полупроводниковых элементов и лежит в пределах примерно от -50°С до 150°С. Примером полупроводникового датчика может служить датчик, используемый в модуле ADAM-5018 для компенсации температуры холодного спая термопар. Этот датчик имеет на выходе токовый сигнал, пропорциональный его температуре. Измерение температуры при помощи термометров сопротивления Этот метод основан на зависимости сопротивления проводника от его температуры и позволяет достичь более широкого диапазона измерения, чем у полупроводниковых датчиков. Суть метода состоит в том, что для некоторых металлов или сплавов существуют температурные диапазоны, внутри которых сопротивление проводника из этого материала меняется почти линейно с ростом температуры. Как правило, материалом для датчика служит платина; применяются также медные и никелевые датчики. Характеристики термосопротивлений этих типов стандартизованы. Коэффициент выражающий зависимость сопротивления от температуры, называется температурным коэффициентом сопротивления (а) и является основной характеристикой датчика: где RO - сопротивление датчика при 0°С. В нашей стране чаще применяется коэффициент W1oo, выражаемый как отношение сопротивления датчика при 100°С к его сопротивлению при 0°С: Отсюда легко выразить соотношение между d и W1oo; Термосопротивления подключаются к измерительному преобразователю по мостовой схеме или схеме с токовым возбуждением. При этом для компенсации сопротивления соединительных проводников применяется трехпроводное или четырехпроводное подключение. Для ввода сигналов термосопротивлений можно использовать модули нормализации ADAM-3013, а также устройства аналогового ввода ADAM-6015, ADAM-4013 и ADAM-50I3. Измерение температуры при помощи термоэлектрического преобразователя (термопары) Термоэлектрический метод позволяет измерять температуру в очень широком диапазоне (от -100 до 2500°С), обеспечивая при этом достаточно высокую точность, и часто оказывается единственно возможным. Принцип измерения температуры с помощью термопары основывается на эффекте Зеебека, заключающемся в том, что в цепи, состоящей из двух разнородных металлических проводников, протекает электрический ток. При этом ЭДС, вызывающая этот ток (термоЭДС), зависит от разности температур между спаями: В случае, если один из спаев термопары находится при температуре 0°С, зависимость термоЭДС от температуры другого спая Е = F (Т£- 0°С) называется градуировочной характеристикой термопары. Эти характеристики стандартизованы для всех наиболее распространенных типов термопар. На стендах в учебном классе используется термопара типа J. На практике температура свободного (холодного) спая, как правило, не равна нулю, вследствие чего при измерении температуры с помощью термопары возникает необходимость в компенсации температуры холодного спая. Это становится возможным благодаря одному из свойств термопары - закону промежуточной температуры. Если в цепи индуцируется термоЭДС E1 при температурах контактов Т1 и Т2 и термоЭДС Е2 при температурах контактов Т2 и Т3, то при температурах Т1 и Т3 термоЭДС будет равна E1 + Е2: В нашем случае, обозначив температуры холодного и рабочего спаев как Тх и Тр, а термоЭДС, соответственно, Ех и Eизм, получим: где Еизм - измеренное значение ЭДС. Отсюда следует, что для компенсации температуры холодного спая нужно сложить измеренное значение ЭДС термопары и значение ЭДС компенсации, соответствующее термоЭДС, возникающей в термопаре при температуре холодного спая. Это можно сделать, зная температуру холодного спая, для измерения которой обычно применяются полупроводниковые датчики и терморезисторы. Найдем температуру рабочего спая Тр при известных Eизм и Тх: Как видим, чтобы преобразовать значение ЭДС в температуру, нам необходимо также иметь таблицу, обратную градуировочной таблице термопары. Такую таблицу легко получить путем перестановки столбцов. При измерении температур, достаточно близких к 0°С, можно воспользоваться тем, что градуировочная характеристика большинства термопар в этом диапазоне близка к линейной. В этом случае достаточно прибавить температуру холодного спая к температуре, вычисленной с помощью градуировочной таблицы: Модули аналогового ввода Ввод аналоговых сигналов, таких, как сигналы с термопар и термосопротивлений, осуществляется с помощью модулей аналогового ввода, которые строятся на основе аналого-цифровых преобразователей. Этаким модулям относятся ADAM-5013, ADAM-5017 и ADAM-5018. ADAM-5O13 представляет собой 16-битный трехканальный модуль для подключения термосопротивлений, поддерживающий трехпроводную и четырехпроводную схему подключения. Он создан на базе АЦП AD7711 фирмы Analog Devices и оснащен источниками тока для питания температурных датчиков. Соответствующая OEM библиотека UltraLogik позволяет получать готовый результат измерения в омах, на основании которого нетрудно, зная характеристику термосопротивления вычислить температуру, воспользовавшись функцией табличного преобразования, описанной ниже. ADAM-5017 и ADAM-5018 построены на базе АЦП AD7710 фирмы Analog Devices. При этом ADAM-5018 оснащен программируемым входным усилителем и полупроводниковым датчиком температуры AD590, что позволяет производить непосредственное подключение термопар и компенсацию температуры холодного спая. Во всех трех описанных модулях используются АЦП с сигма-дельта преобразователем. Принцип его действия основан на преобразовании аналоговой величины в бесконечную последовательность дискретных импульсов, которые затем поступают на вход цифрового фильтра. Время преобразования АЦП связано с первой частотой режекции этого фильтра, от которой зависит и точность преобразования. Чем выше частота режекции и меньше время преобразования, тем меньше соотношение сигнал/шум и тем хуже точность. В реальных условиях трудно получить отношение сигнал/шум лучше 90 дБ, что соответствует примерно 14 разрядам АЦП. Функция табличного преобразования Функция табличного преобразования служит для преобразования величины, поступающей с датчика, в инженерную величину. Если величина, выдаваемая датчиком, изменяется линейно в зависимости от измеряемой величины, используется калибровка по двум точкам. В случае нелинейной характеристики датчика преобразование осуществляется методом кусочно-линейной аппроксимации с помощью таблицы или- полиномиальной аппроксимации. Кусочно-линейная аппроксимация наиболее эффективна при отсутствии математического сопроцессора и дает тем большую точность, чем больше указано точек. При полиномиальной аппроксимации, по N точкам производится расчет коэффициентов полинома степени не выше N-1, который используется для вычисления. Можно использовать полиномы до 20 степени, но при этом следует помнить, что чем выше степень полинома, тем большее влияние оказывает на результат неточность вычисления коэффициентов. Данные для аппроксимации можно взять из документации на датчик или получить экспериментально. Вместе с UltraLogik поставляются градуировочные таблицы для большинства типов термопар. Описание стенда 3 контроллерах, установленных на наших стендах, используются следующие модули ввода-вывода: 5024: Четырехканальный модуль аналогового вывода с токовыми выходами и выходами О-10В. Выход АОО этого модуля соединен с вольтметром, а также поступает на терминальную плату ТВ-26, и далее на аналоговый вход контроллера 6040. 5051: 16-канальный модуль дискретного ввода. Модуль 5051, в отличие от 505IS, не обеспечивает гальваническую изоляцию входов. К нему подключены два переключателя SW1 (DIO) и SW2 (DI1) и выход одного из реле на плате TBR8 (DI2). 5056: 16 цифровых выходов с открытым -коллектором. К выходам DOO...D03 подключены индикаторы: желтые (DOO и DO1), красный (DO2) и зеленый (D03). К выходу DO4 подключен вентилятор. 5018: Семиканальный модуль для подключения термопар, оснащенный полупроводниковым датчиком температуры, предназначенным для компенсации температуры холодного спая. К первому входу этого модуля подключена термопара типа J. Указания к работе Конфигурирование контроллера и модулей ввода-вывода С помощью кнопки «Создать новый проект» создаем новый проект UltraLogik. Устанавливаем для него модель «ADAM-5510, Advantech». Устанавливаем тип компилятора «80x86 compatible simple compiler». В конфигурации контроллера, «Установленные модули ввода-вывода» перечислили модули, установленные в контроллере на стенде. Отметили также использование порта COM2. Для порта COM2 указали использование драйвера PLCNet Driver(slave) и задали номер узла 8, чтобы избежать конфликтов по адресам с другими участниками сети. Контроллер ADAM-5510 не может являться ведущим узлом (master) в сети PLCNet. Для этого необходимо иметь процессор не ниже 80386. Связали светодиоды процессорного модуля с переменными ВАТТ, СОММ, RUN и POWR. Настроили конфигурацию модулей ввода-вывода и задали привязку переменных к ресурсам контроллера. В свойствах модуля ADAM-5024 связали аналоговый выход 0 с сетевой переменной Volt. Для модуля ADAM-5051 связали входы 0 и переменными DIO и DI1. Связали выходы 0 и 1 модуля ADAM-5056 с переменными DOO и DO1, выходы 2 и 3 с переменными Green и Red, а выход 04 - с переменной Fan. В конфигурации модуля ADAM-5018 установили входной диапазон ±78мВ и первую частоту режекции фильтра 12.5 Гц, как показано на рисунке. Связали аналоговый вход 0 с сетевой переменной ТС типа Float, а вход 7 - с сетевой переменной CJC типа Float. После этого в переменной ТС будет сохраняться напряжение, измеряемое на рабочем спае термопары, а в переменной CJC -температура холодного спая в градусах Кельвина. Ввод и нормализация сигналов термопар Теперь, согласно нашей методике, преобразуем температуру холодного спая в ЭДС компенсации. Чтобы получить таблицу с зависимостью ЭДС компенсации от температуры, выделили диапазон градуировочной таблицы, в котором может изменяться температура холодного спая, и взяли из него значения напряжения, которые соответствуют точкам в этом диапазоне с некоторым шагом - например. 10 градусов. Это позволило нам, используя эту таблицу в качестве калибровочной таблицы для канала измерения температуры холодного спая, получили значение термоЭДС, соответствующее температуре холодного спая, и прибавили его к измеренному термопарой значению термоЭДС. Такая таблица в готовом виде находится на нашем сервере под именем F:\cjc.txt (\\Msk-Teacher\Classrооm\cic.txt): 273.15 О 283.15 0.000507 293.15 0.001019 298.15 0.001277 303.15 0.001536 313.15 0.002058 323.15 0.002585 Создали программу Temp, изображенную на рисунке. Функцию табличного преобразования «X/Y» можно найти на странице Analog контекстной панели инструментов. Первое преобразование будет осуществляться над температурой холодного спая для преобразования её в соответствующую ЭДС коррекции, которая затем прибавляется к измеренной термоЭДС. Следующий блок «X/Y» будет выполнять обратное преобразование ЭДС в температуру, которая сохраняется в переменной Temp. Значение температуры посредством масштабирования выведем на стрелочный индикатор, поставив напряжению 10В в соответствие 100°С. Затем с помощью нехитрой логики будем зажигать зеленый индикатор при температуре от 20 до 25 градусов, и мигающий красный индикатор при температуре более 25 градусов, включая одновременно вентилятор. С помощью двойного щелчка мышью на первом из блоков табличного преобразования мы попадем в программу задания табличной функции, В открывшемся диалоге «Интерполяция» нажмем кнопку «Загрузить данные из файла». Затем зададим тип файла «Text files *.TXT» и выберем файл F:\cjc.txt. Если сетевой диск F: не подключен к Вашему компьютер, нужно подключить его. найдя в сетевом окружении ресурс \\Msk-teacher\Classroom и выбрав в контекстном меню команду «Map network drive». В результате будет загружена таблица, показанная на рисунке. Градусам Кельвина в столбце аргумента соответствует термоЭДС в вольтах в столбце значений. Таким образом, для переменной CJC будет автоматически осуществляться пересчет в вольты с помощью табличной кусочно-линейной функции. Закроим окно «Интерполяция», ответив «Yes» на предложение системы сохраним введенную таблицу. В качестве таблицы преобразования для второго блока укажем градуировочную таблицу для термопары типа J. Для этого откроем файл с характеристикой J термопары c:\plcwin32\Tables\TCouple\j.dat. Укажем метод аппроксимации полиномом пятой степени. После нажатия кнопки «Просмотр» Вы должны увидеть график, изображенный на рисунке. Коэффициенты аппроксимации, рассчитанные программой, можно увидеть с помощью кнопки «С» в верхней части окна графика. Закрыли диалог «Интерполяция», ответив «Да» на предложение системы сохранить введенные настройки. Откомпилировали проект. Сохранив предварительно в файле ADAM_T.PLC. Похожие статьи:
|
|