Главная       Продать работу       Заказать работу       Блог       Контакты       Оплата       О нас       Как мы работаем       Регистрация       Вход в кабинет
Тех. дипломные работы
   автомобили
   спец. техника
   станки
   тех. маш.
   строительство
   электроснабжение
   пищевая промышленность
   водоснабжение
   газоснабжение
   автоматизация
   теплоснабжение
   холодильники
   машиностроение
   др. тех. специальности

Тех. курсовые работы
   автомобили
   спец. техника
   станки
   тех. маш.
   строительство
   детали машин
   электроснабжение
   газоснабжение
   водоснабжение
   пищевая промышленность
   автоматизация
   теплоснабжение
   ТММ
   ВСТИ
   гидравлика и пневматика
   машиностроение
   др. тех. специальности

Тех. дополнения
   Отчеты
   Расчетно-графические работы
   Лекции
   Задачи
   Лабораторные работы
   Литература
   Контрольные работы
   Чертежи и 3D моделирование
   Тех. soft
   Рефераты
   Общий раздел
   Технологический раздел
   Конструкторский раздел
   Эксплуатационный раздел
   БЖД раздел
   Экономический раздел
   Экологический раздел
   Автоматизация раздел
   Расчетные работы

Гум. дипломные работы
   педагогика и психология
   астрономия и космонавтика
   банковское, биржевое дело
   БЖД и экология
   биология и естествознание
   бухгалтерский счет и аудит
   военное дело
   география
   геология
   государство и право
   журналистика и СМИ
   иностранные языки
   история
   коммуникации
   краеведение
   кулинария
   культура и искусство
   литература
   экономика и торговля
   математика
   медицина
   международное отношение
   менеджмент
   политология
   музыка
   религия
   социология
   спорт и туризм
   таможенная система
   физика
   химия
   философия
   финансы
   этика и эстетика
   правознавство

Гум. курсовые работы
   педагогика и психология
   астрономия и космонавтика
   банковское, биржевое дело
   БЖД и экология
   биология и естествознание
   бухгалтерский счет и аудит
   военное дело
   география
   геология
   государство и право
   журналистика и СМИ
   иностранные языки
   история
   коммуникации
   краеведение
   кулинария
   культура и искусство
   литература
   экономика и торговля
   математика
   медицина
   международное отношение
   менеджмент
   политология
   музыка
   религия
   социология
   спорт и туризм
   таможенная система
   физика
   химия
   философия
   финансы
   этика и эстетика
   правознавство

Гум. дополнения
   Отчеты
   Расчетные работы
   Лекции
   Задачи
   Лабораторные работы
   Литература
   Контрольные работы
   Сочинения
   Гум. soft
   Рефераты

Рефераты
   Авиация и космонавтика
   Административное право
   Арбитражный процесс
   Архитектура
   Астрология
   Астрономия
   Банковское дело
   Безопасность жизнедеятельнос
   Биографии
   Биология
   Биология и химия
   Биржевое дело
   Ботаника и сельское хоз-во
   Бухгалтерский учет и аудит
   Валютные отношения
   Ветеринария
   Военная кафедра
   ГДЗ
   География
   Геодезия
   Геология
   Геополитика
   Государство и право
   Гражданское право и процесс
   Делопроизводство
   Деньги и кредит
   ЕГЭ
   Естествознание
   Журналистика
   ЗНО
   Зоология
   Издательское дело и полиграф
   Инвестиции
   Иностранный язык
   Информатика
   Информатика, программировани
   Исторические личности
   История
   История техники
   Кибернетика
   Коммуникации и связь
   Компьютерные науки
   Косметология
   Краеведение и этнография
   Краткое содержание произведе
   Криминалистика
   Криминология
   Криптология
   Кулинария
   Культура и искусство
   Культурология
   Литература : зарубежная
   Литература и русский язык
   Логика
   Логистика
   Маркетинг
   Математика
   Медицина, здоровье
   Медицинские науки
   Международное публичное прав
   Международное частное право
   Международные отношения
   Менеджмент
   Металлургия
   Москвоведение
   Музыка
   Муниципальное право
   Налоги, налогообложение
   Наука и техника
   Начертательная геометрия
   Оккультизм и уфология
   Остальные рефераты
   Педагогика
   Политология
   Право
   Право, юриспруденция
   Предпринимательство
   Прикладные науки
   Промышленность, производство
   Психология
   психология, педагогика
   Радиоэлектроника
   Реклама
   Религия и мифология
   Риторика
   Сексология
   Социология
   Статистика
   Страхование
   Строительные науки
   Строительство
   Схемотехника
   Таможенная система
   Теория государства и права
   Теория организации
   Теплотехника
   Технология
   Товароведение
   Транспорт
   Трудовое право
   Туризм
   Уголовное право и процесс
   Управление
   Управленческие науки
   Физика
   Физкультура и спорт
   Философия
   Финансовые науки
   Финансы
   Фотография
   Химия
   Хозяйственное право
   Цифровые устройства
   Экологическое право
   Экология
   Экономика
   Экономико-математическое мод
   Экономическая география
   Экономическая теория
   Этика
   Юриспруденция
   Языковедение
   Языкознание, филология

Главная > Блог


Программируемый логический контроллер фирмы Advantech ADAM-5510

В начале 1998 года фирма Advantech приступила к выпуску своего очередного продукта – ADAM 5510, продолжая линию интеллектуальных УСО ADAM 5000. К серии базовых блоков ADAM 5000/485 и ADAM 5000/CAN, ориентированных на работу с управляющей шиной верхнего уровня в режиме «вопрос – ответ» по одному из популярных промышленных интерфейсов, добавился еще один – программируемый.

ПЗУ данного контроллера не содержит ни какого специального firmware для работы с собственной периферией и для общения по каналу связи, однако отличается удвоенным по сравнению с другими контроллерами этой серии объемами ПЗУ и ОЗУ,  ROM DOS 6.22 и хорошее программное обеспечение в виде набора утилит, библиотек функций для популярных языков программирования с исходными текстами, примерами и документацией.

Одна из отличительных черт  ADAM-5510 является  открытым для пользователя, IBM PC совместимым контроллером, гибким и легко программируемым.

В истории Advantech уже был пример создания IBM PC совместимого контроллера для модулей ввода вывода серии ADAM-4000. Но ADAM 4500 не вызвал бурного интереса у пользователей и нашел гораздо меньший круг применения, чем все остальные модули серии ADAM-4000.

На рисунке 1 показан внешний вид модуля ADAM-5010

Все модули ввода вывода серии 4000 состоят из микроконтроллера с жестким «зашитым» в ПЗУ алгоритмом, коммуникационного интерфейса и собственно УСО. Пропускная способность канала связи на основе RS 485 составляет 1200-115 200бит/с, что соответствует примерно5 480 обменам в секунду по протоколу, принятому для модулей этой серии.

Контроллер ADAM 4500 предназначен для замены машины верхнего уровня в «цепочке» модулей серии 4000 и выполнения одновременно задачи опроса УСО и управления.

Однако такое решение оказалось не очень удачным. Заменить машину верхнего уровня полностью не удалось уже ввиду отсутствия дисковых накопителей для ведения архива, а уменьшить время реакции в цикле управления не получилось, так как все модули ввода вывода и процессор в модуле ADAM 4500 оказались соединенными «узким» интерфейсом RS 485.

Таким образом, все потенциальные возможности процессора 4500 оказались не раскрыты, и он нашел себе применение только в относительно медленных системах сбора информации и управления.

С серией ADAM 5000 все обстоит совершенно иначе. Базовый блок содержит процессор, аналогичный по всем параметрам процессору ADAM-4500 (рисунок 2).

Рисунок 2 – Структурная схема контроллера ADAM-4500

Однако он общается с модулями ввода вывода по локальной шине с пропускной способностью около 10 Мбайт/с. Это значит, что в реальной программе, написанной на языке низкого уровня, скорость опроса одного дискретного входа может достигать 1 МГц с учетом накладных расходов на обслуживание сторожевого таймера и последовательного интерфейса. Таким образом, узким местом в системе управления, собранной на основе ADAM 5000, становится внешний интерфейс. Даже при использовании интерфейса CAN на скорости 500 кбит/с частота сканирования одного канала не превышает 10 кГц. Появление модуля ADAM 5510 позволило расположить управляющую программу пользователя непосредственно в памяти контроллера, что сократило время реакции в контуре управления виртуально до 5-10 мкс. Этот факт впервые позволил применить системы на базе ADAM 5510 для решения задач «жесткого» реального времени, где ранее применялись «классические» PLC.

Структурная схема контроллера ADAM 5510 приведена на рисунке 3. 

Рисунок 3 - Структурная схема контроллера на базе ADAM-5510

Модуль процессора:

Источник питания

Условия эксплуатации

Соединив модемным кабелем свободный СОМ порт компьютера с консольным портом и запустив с прилагаемой дискеты программу Adam5510.exe, на экране монитора можно увидеть следующую картину (рисунок 4).

Рисунок 4 - Выбор COM порта

Для начала предстоит указать программе, какой СОМ порт следует использовать для связи с ADAM 5510.

Далее необходимо перейти к пункту меню Terminal и подайть напряжение питания на ADAM 5510.Через несколько секунд на экране появится примерно следующее (рисунок 5).

Рисунок 5 - Вид экрана при работе с ROM-DOS

Настройка выполнена в привычной среде MS DOS, где работают понятные команды. По умолчанию в системе есть два «диска», один из которых, D:>(емкостью 100 кбайт) образован утилитой VDISK.SYS из основной памяти. Для приложений остается лишь 130 кбайт, что вполне достаточно для большинства задач.

Для загрузки программ в электронный диск в области статической памяти достаточно нажать комбинацию клавиш <Alt T> и указать имя файла. При этом программа с минимальными затратами усилий оказывается в контроллере и может быть запущена из командной строки DOS. Это хороший способ для первого шага, но следует помнить, что в этом случае в программе необходимо предусмотреть возможность ее завершения по команде с консоли, ибо при нажатии кнопки RESET последует инициализация диска D:> и программа будет уничтожена. Соответственно, запись на диск D:> не подходит для отладки программ, использующих сторожевой таймер в режиме сброса.

Другой способ загрузки – это программирование флэш памяти (диск С:>). Для этого предназначен специальный пункт меню Program. Перед выполнением этого ответственного шага необходимо знать следующее.

  1. Директория ALLFILE, которая находится на поставочной дискете, содержит образцовые файлы, которые будут переноситься на флэш диск C:>.
  2. Файл DEMO DIS.HEX получается из файлов в директории ALLFILE в результате работы программы ROMDISK.EXE.
  3. Файлы ROM DOS.HEX и ADAMINI.HEX представляют собой образы ROM DOS 6.22 и мини BIOS, которые подстегиваются к файлу DEMO DIS.HEX программой HEXCAT.EXE и упаковываются в файл ADAM DEM.HEX, который, собственно, и загружается во флэш память.
  4. Все эти процессы начинаются при нажатии кнопки меню «Program» и являются обратимыми вплоть до появления на экране надписи «Now is programming FLASH …».

Таким образом, для записи программы на флэш диск 5510 ее нужно поместить в директорию ALLFILE и, если необходимо, указать ее в файле autoexec.bat из этой же директории.

Если программа требует более 130 кбайт оперативной памяти, необходимо удалить из файла config.sys упоминание о vdisk.sys. Затем запускается программа Adam5510.exe и выбирается пункт меню Program.

Существует еще один способ загрузки программ в ADAM 5510 для отладки – вообще их туда не загружать, а пользоваться удаленным отладчиком загрузчиком TDREMOTE.EXE, поставляемым в составе систем программирования фирмы Borland.

Для использования утили ты TDREMOTE необходимо приобрести или изготовить еще один кабель  – нуль модемный – и соединить им СОМ1 ADAM 5510 и один из СОМ портов вашей персоналки (рисунок 6).

Рисунок 6 - Соединение PC и ADAM-5510 нуль-модемным кабелем

Во вторых, необходимо переделать стандартный TDREMOTE в TDADAM с помощью специальной утилиты UPDATE.EXE, поставляемой вместе с контроллером.

Конфигурация контроллера ADAM 5510 несколько отличается от привычной РС архитектуры. Так как ни один из модулей ввода вывода не использует прерываний, в системе возможны только два типа прерываний: от таймера сторожа и от коммуникационных портов (таблица 1)

Таблица 1 – Доступные прерывания

Источник прерывания

Адрес вектора

Немаскируемое прерывание

02Н

Прерывание от СОМ1

0СН

Прерывание от СОМ2

0ЕН

Распределение памяти в контроллере показано в таблице 2.

Таблица 2 – Карта памяти ADAM-5510

0xF8000   – 0xFFFFF

Отладочный монитор

0xF6C00 – 0xF7FFF

Мини BIOS

0xCC000

Начальный адрес флэш диска (около 171 K)

0xC0000

Начальный адрес ROM DOS(около 48 K)

0x40000 – 0xBFFFF

Не используется

0x00400 – 0x3FFFF

ОЗУ, доступное для программ

0x00000 – 0x003FF

Системная область

0x003F8 – 0x003FF

COM1

0x002F8 – 0x002FF

COM2

0x00070 – 0x00071

Часы реального времени

Как видно, программирование устройства требует некоторого навыка и учета аппаратных особенностей.

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

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

Например, классическая тестовая задача опроса 64 цифровых каналов ввода на предмет подсчета поступающих импульсов написанная на ТС++ v.3.0 с использованием поставляемых библиотек, заняла около 10 кбайт кода и позволила делать около 1700 циклов в секунду.

Программист на Ultralogic может не знать ничего о внутреннем устройстве ADAM 5510. Для него важно понимать, какие модули ввода вывода присутствуют в его контроллере и на какие именно линии в них приходят те или иные сигналы. Эта информация задается при определении модели и на значении переменных (рисунок 7).

Рисунок 7 - Экран настройки параметров АЦП

После этого достаточно в поле редактора изобразить функциональную схему (в формате МЭК 1131.3), выражающую зависимость выходных переменных от входных, и нажать на кнопку «компиляция проекта».

Полученный в результате этого исполняемый модуль будет содержать вашу стратегию, а также поддержку сети на базе RS 485 и, если это нужно, таймера сторожа.  ADAM 5510 превращается в полный аналог PLC.

Для решения типовых задач управления Ultralogic содержит обширную библиотеку типовых «кубиков», таких как, например, ПИД регуляторы, нормализаторы ввода сигналов термопар, функции работы с таймером, триггеры, амплитудные ограничители, уловители фронтов, счетчики и т.п. Скорость создания работоспособных приложений при использовании Ultralogic оказывается на порядок выше, чем при программировании на языках класса С или Pascal. Важно, что в состав пакета входит мощный отладчик, который позволяет отладить ваш проект в эмуляторе без загрузки его в ADAM 5510.

Скорость выполнения задач, скомпилированных на Ultralogic, существенно превосходит скорость выполнения аналогичных задач, написанных на С++ с использованием поставляемых производителем библиотек. Так, например, описанная здесь тестовая задача по подсчету импульсов на 64 каналах показала производительность около 4500 циклов в секунду.

Дело в том, что при включении модели ADAM 5510 в Ultralogic программистами была проведена большая работа по оптимизации методов работы с аппаратурой и критическому переосмыслению библиотек, поставляемых производителем. Особых успехов удалось достичь в оптимизации драйверов работы с АЦП.

В результате этих работ программа, написанная на Ultralogic, может получать новые данные с аналоговых входов с интервалом от 10 до 100 миллисекунд (в зависимости от требуемой точности), причем занимаясь в это время другими делами. Для сравнения, при использовании стандартных библиотек цикл ввода с АЦП занимает 0,6с при полной занятости процессора. Отдельно стоит упомянуть и удобство подключения ADAM 5510, запрограммированного с помощью Ultralogic, или даже целой сети из них к компьютеру верхнего уровня. Существует специальная программа, оформленная в виде DLL модуля для связи с SCADA системой Genie, оставляющая последней только функции визуализации, в то время как решением задач сбора информации и управления занимается непосредственно ADAM 5510. Существует также DDE сервер, позволяющий подключать сеть из ADAM 5510 к другим SCADA системам, таким как Genesis фирмы Iconics.




Комментарии