Лекция: Теоретические основы программирования стенда 3

 

Программирование стенда 3 основано на литературе [1…6] и имеет в основе базовый язык релейно–контактных символов систем управления на основе контроллеров Микродат. Программно–логическая модель стенда 2, который является имитатором управления током нагрузки, представляет следующее:

– на месте М06 установлен модуль КМ 5500, который является модулем аналого-цифрового преобразователя (АЦП), подключенного по нулевому каналу через преобразователь Е854 переменного тока в постоянный (2,5 А в 4…20 Ма) к нагрузке (лампе HL1), модуль не маскируется;

– на месте М07установлен модуль КМ 5401 цифро–аналогового преобразователя ЦАП, подключенного (с выходом 0–10 В) к блоку управления тиристором БУСТ, который через тиристор V1 управляет лампой HL1; модуль не маскируется. Схема стенда 3 показана на рис. 3.

 

М06-АЦП ПРЕОБРАЗОВАТЕЛЬ E854

       
 
0-канал 20Ма=4000ед.=2500 Мa.  
   
Входной ток-пер. 2,5A Выходной ток-пост. 4…20 Мa  
 

 


I HL1

       
 
   
 

 


М07-ЦАП БУСТ

0-канал 10,0 В=1000ед. Umax=10,0 В  
Блок управления тиристором.

U

V1

 
 

 

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

I -ток нагрузки; U-напряжение управления; Imax = 250 Ма,Umax = 10,0 В.

Базовая программа работы стенда 3 (название STEND3.fk) представлена ниже:

 

Алгоритм программы:

– программа конфигурирует модуль АЦП и в ячейке CURENT (003) формирует ток лампы в Ма ;

– одновременно в программе формируется задание ЦАП DAP (004) изменяющееся периодически от значения 0000 до 9999 и обратно, дискретность задания 0,01 В, то есть, напряжение U меняется от 0…10 В (что является максимальным заданием по управлению током лампы). Обращение и задание в ЦАП происходит по команде записи в регистр ЗПР071. Заданию DAP(004) =1000 соответствует напряжение подаваемое на БУСТ U = 10,0 В и ток измеренный на лампе CURENT = 250соответствующий 250 Ма.

 

//БАЗОВАЯ ПРОГРАММА СТЕНДА 3 (ФАЙЛ 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 // код канала АЦП (код 4000=2500мА)

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

еще рефераты
Еще работы по информатике