
- •С. П. Саханский основы разработки и программирования микропроцессорных систем автоматического управления на базе контроллеров рк5100 оглавление
- •2. Программирование лабораторных стендов на базе
- •Введение
- •1. Программирование и разработка систем автоматического управления на базе контроллеров рк5100
- •1.1. Основной состав программируемых контроллеров рк5100
- •Основные типы применяемых модулей озу (мозу), вставляемых в центральное гнездо модуля центрального процессора для ввода и отладки еще не отлаженной программы следующие (в скобках указан объем памяти):
- •Основные типы применяемых модулей пзу (мпзу), вставляемых в центральное гнездо модуля центрального процессора, для работы с отлаженной программой, следующие (в скобках указан объем памяти):
- •Примечание: в каркасах пк0-пк1, на месте 0 стоит модуль расширения
- •1.2. Виды систем исчисления контроллеров рк5100 Связь между десятичной d10, двоичной d2, восьмеричной d8 и шестнадцатеричной d16 системами исчисления показана в табл. 1.1.
- •Виды систем исчисления контроллеров рк5100
- •1.3. Структура памяти контроллеров рк5100
- •1.4. Система команд контроллеров рк5100
- •Список инструкций контроллера рк5100
- •Выходная инструкция «Переместить файл в модуль»:
- •[Унс{000…177}] (Номер сектора, если файл а не в 0 – странице),
- •Выходная инструкция. «Переместить из модуля в файл» :
- •Прс{0000…1777} (Нач. Адрес файла а из 0 – страницы),
- •Выходная инструкция. «Читать слово из файла»:
- •[Унс{000…177}] (Номер сектора, если файл а не в 0 – странице),
- •Выходная инструкция. «Записать слово в файл»:
- •Выходная инструкция. «Переместить файл»:
- •1.5. Пограммирование модулей ввода-вывода дискретных сигналов постоянного тока контроллера рк5100
- •1.6. Программирование модуля вывода непрерывных сигналов постоянного тока контроллера рк5100
- •1.7. Программирование модуля ввода непрерывных сигналов постоянного тока контроллера рк5100
- •1.8. Программирование модуля ввода импульсных сигналов контроллера рк5100
- •Формат регистра счетчиков каналов 1-2
- •Формат уставок
- •1.9. Основные положения по разработке дипломных и курсовых проектов на базе контроллеров рк5100
- •Листинг программы на ркс:
- •2. Программирование лабораторных стендов на базе контроллеров рк5100
- •2.1. Лабораторная работа по программированию стенда «управления конвейерной линией»
- •2.1.1. Теоретические основы программирования
- •2.2.2 Варианты лабораторных работ Вариант 1
- •Вариант2
- •Вариант3
- •Вариант4
- •Вариант5
- •Вариант6
- •Вариант7
- •Вариант8
- •Вариант9
- •Вариант10
- •Вариант11
- •Вариант12
- •Вариант13
- •Вариант14
- •Вариант15
- •Вариант16
- •Вариант17
- •Вариант18
- •Вариант19
- •Вариант20
- •Вариант21
- •2.1.3. Порядок выполнения лабораторной работы
- •2.2. Лабораторная работа по программированию стенда «управления температурой нагревателя»
- •2.2.1 Теоретические основы программирования
- •2.2.2 Варианты лабораторных работ
- •2.2.3. Порядок выполнения лабораторной работы
- •2.3. Лабораторная работа по программированию стенда «управления током нагрузки»
- •2.3.1 Теоретические основы программирования
- •2.3.2 Варианты лабораторных работ
- •2.3.3. Порядок выполнения лабораторной работы
2.3.1 Теоретические основы программирования
Программирование стенда основано на использовании базового языка релейно-контактных символов контроллеров Микродат. Программно-логическая модель стенда, который является имитатором управления током нагрузки, представляет следующее:
На месте М06 установлен модуль КМ5500, который является модулем аналого-цифрового преобразователя (АЦП), подключенного по нулевому каналу через преобразователь Е854 переменного тока в постоянный (2,5 А в 4 – 20 мА) к нагрузке (лампе HL1), модуль не маскируется.
На месте М07 установлен модуль КМ5401 цифроаналогового преобразователя ЦАП, подключенного (с выходом 0 – 10 В) к блоку управления тиристором БУСТ, который через тиристор V1 управляет лампой HL1, модуль не маскируется. Схема стенда показана на рис.2.3.
М06 АЦП ПРЕОБРАЗОВАТЕЛЬ E854
I HL1
М07 ЦАП БУСТ
U
V1
Рис. 2.3. Схема стенда управления током нагрузки:
I-ток нагрузки;U-напряжение управления;Imax = 250 Ма,Umax = 10,0 В
Алгоритм программы:
– программа конфигурирует модуль АЦП и в ячейке CURENT (003) формирует ток лампы в мА ;
– одновременно в программе формируется задание ЦАП DAP (004) изменяющееся периодически от значения 0000 до 9999 и обратно, дискретность задания 0,01 В, то есть, напряжение U меняется от 0 – 10 В (что является максимальным заданием по управлению током лампы). Обращение и задание в ЦАП происходит по команде записи в регистр ЗПР071.
Заданию DAP(004) = 1000 соответствует напряжение подаваемое на БУСТ U = 10,0 В и ток измеренный на лампе CURENT = 250 соответствующий 250 мА.
Базовая программа работы стенда (название STEND3.fk) представлена ниже, а варианты лабораторных работ приведены после листинга программы.
// БАЗОВАЯ ПРОГРАММА СТЕНДА (ФАЙЛ STEND3.FK)
#define maska0 0 0
#define maska1 0 0
#define maska2 0 0
#define maska3 0 0
#define Address 10022
#define Interrupt 0
#define Block 0
#define Scan 377
#define Period 0
var ATR_ADP 020
const 0005h // атрибуты конфигурирования каналов АЦП
var CONFIG_ADP 021
const 0001000011111111b // режим обработки циклический,
1 байт атрибутов, работа
var ZERO 000 // нулевое слово
var ZER_ 000.00 // нулевой бит
var STATUS_ADP 001 // слово состояния модуля АЦП
var TEST_ADP 001.04 // тест АЦП выполнен
var ADP 002 // код канала АЦП (код 4 000 = 2 500мА)
var CURENT 003 // ток нагрузки в мА
var DAP 004 // код канала ЦАП (1разряд = 0.01В)
var CH 005 // счетчик
var MUS 006 // промежуточное слово
var TIM 007 // таймер
var TIK 007.16 //
var C25 100 // константа 25d
var C40 101 // константа 40d
var C100 102 // константа 100d
[НСТ]00
[НБЛ]000
[СБС]ZERO
[СБС]DAP
[СБС]TIM
[КБС]0, [КБМ]25d, [ЗПС]C25
[КБС]0, [КБМ]40d, [ЗПС]C40
[КБС]0, [КБМ]100d, [ЗПС]C100
// читаем слово состояния АЦП
[ЧТР]060, [ЗПС]STATUS_ADP
// если тест выполнен, перейти на конфигурирование модуля АЦП
TEST_ADP=[ПБЛ]001
// - - - - - - - - - - - - - - - - - -
[НБЛ]001
// записать файл атрибутов в модуль АЦП
[СБС]CH, [ПФМ]CH[УНС]020[ПРС]ATR_ADP[ПРС]6022[ПРК]1[ПРК]1
// записать слово конфигурации в модуль АЦП
[СБС]CH, [ПФМ]CH[УНС]020[ПРС]CONFIG_ADP[ПРС]6000[ПРК]1[ПРК]1
[ПБЛ]002
// - - - - - - - - - - - - - - - - -
[НБЛ]002
// читаем данные АЦП
[ЧТР]062, [ЗПС]ADP, [УМН]C25[ПРС]MUS, [ДЕЛ]C40[ПРС]MUS,
[ЗПС]CURENT
[ТВД]TIM[ПРК]20d
TIK=[СБС]TIM, [ЧТС]DAP, [САС]C100, [ЗПС]DAP
// записываем данные в канал ЦАП
^ZER_=[ЧТС]DAP, [ЗПР]071
[БЛШ]DAP[ПРК]999d = [ПБЛ]003
// - - - - - - - - - - - - - - - - - -
[НБЛ]003
// читаем данные АЦП
[ЧТР]062, [ЗПС]ADP, [УМН]C25[ПРС]MUS, [ДЕЛ]C40[ПРС]MUS,
[ЗПС]CURENT
[ТВД]TIM[ПРК]20d
TIK=[СБС]TIM, [ЧТС]DAP, [ВАС]C100, [ЗПС]DAP
// записываем данные в канал ЦАП
^ZER_=[ЧТС]DAP, [ЗПР]071
[РВН]DAP[ПРК]0d = [ПБЛ]002
[НОП]
[НОП]
[НОП]
[КОН]00