- •1. Описание функциональных элементов структурной схемы:
- •1.1 Вычислительное устройство:
- •1.2 Цифро-аналоговый преобразователь:
- •1.3 Программируемый усилитель:
- •2. Расчёт коэффициентов разностного уравнения объекта управления
- •3. Расчёт элементов принципиальной электрической схемы
- •3.1 Расчёт rc-фильтра:
- •3.2 Расчёт операционных усилителей на входе ацп:
- •3.3 Расчёт операционного усилителя на выходе системы:
- •3.4 Расчёт светодиода:
- •4. Описание алгоритма работы системы
- •5. Программная реализация передаточной функции:
- •5.1 Код программы:
- •6. Моделирование в среде simulink
5. Программная реализация передаточной функции:
5.1 Код программы:
.PROGRAM TEST
#include C:\Softune\mb90V590.h
.EXPORT _main
.SECTION DATA, DATA, ALIGN=2
Y .DATA.W 0
Yp .DATA.W 0
X .DATA.W 0
Xp .DATA.W 0
a1 .DATA.W 0
a2 .DATA.W 0
.SECTION CODE, CODE, ALIGN=2
_main:
mov DDR8, #H'ff
movw TMCSR0, #H'0413
movw TMRLR0, #H'0500
mov ADER, #H'1 //test #H'1 too
mov ADCS0, #0
mov ADCS1, #0
mov ADCR1, #H'e8
movw a1, #H'01ea
movw a2, #H'00f4
movw Xp, #H'0000
movw Yp, #H'0000
_tf:
wbts TMCSR0:2
setb ADCS1:1
wbts ADCS1:6
//IN
movw RW2, ADCR0
call _DA
movw X, RW7
// end IN
clrb ADCR0
movw RW1, X
movw RW2, Xp
call _subtract // A = x[k]-x[k-1]
movw RW1, A
movw RW2, a1
call _multi // A = a1*(x[k]-x[k-1])
movw RW3, A
movw RW1, a2
movw RW2, Yp
call _multi // A = a2*y[k-1]
movw RW2, A
movw RW1, RW3
call _addition // A = a1*(x[k]-x[k-1]) + a2*y[k-1]
movw Y, A
// OUT
movw RW5, A
call _AD
mov PDR8, R1
// end out
movw A, X
movw Xp, A
movw A, Y
movw Yp, A
call delay
jmp _tf
RET
// In: RW1, RW2. SUB_Out: A=RW1+(-RW2), ADD_Out: A=RW1+RW2.
_subtract:
movw A, RW2
negw A
movw RW2, A
_addition:
movw A, RW1
addw A, RW2
RET
// In: RW1, RW2. Out: A=RW1*RW2
_multi:
movw A, RW1
mulw A, RW2
mov R0, #8
lsrw A, R0
mov R2, A
swapw
mov R3, A
movw A, RW5 //RW5 = R3 R2
RET
delay:
mov R6,#0x40
delay_loop:
DBNZ R6, delay_loop
RET
//In: RW2=0..255, Out: RW7=0..5B
_DA:
movw RW1, #H'0005 //0.0196
call _multi
movw RW7, A //RW7 - 0..5B */
RET
//In: RW5=0..5B, Out: R1=0..255
_AD:
mov A, #H'33 // #H'33 = 51
mulw A, RW5
mov R0, #8
ASRW A, R0 //round
mov R1, A //R1 - 0..255
RET
.END
6. Моделирование в среде simulink
Промоделируем передаточную функцию в программной среде MatLab Simulink, чтобы удостовериться, что график выхода соответствует полученным в ходе проверки программы осциллограммам.
(Рис. 6.1. Моделирование в среде Simulink)
(Рис. 6.2. График выхода при подачи на вход положительных единичных прямоугольных импульсов)
(Рис. 6.3. График выхода при подачи на вход единичного ступенчатого воздействия)
ВЫВОДЫ
В курсовом проекте была разработана и спроектирована принципиальная электрическая схема системы, программа, реализующая цифровой эквивалент непрерывной передаточной функции ; печатная плата цифровой системы, обрабатывающей сигналы с датчиков по разработанной программе.
Спроектированная система удовлетворяет всем заданным требованиям.
СПИСОК ЛИТЕРАТУРЫ
1. «Микропроцессорные средства систем управления», Б.Н Гаврилин, Е.И. Гуревич, В.А. Можаев, В.М. Шеленков.
2. «Аналоговая и цифровая электроника», Ю.Ф. Опадчий, О.П. Глудкин, А.И. Гуров.