![Page 1: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/1.jpg)
Digital Control System
+Controller Plant
Sensor
ControlSignal
Command
Digital Computer
D/A
A/DT
Sampler
![Page 2: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/2.jpg)
Digital Controller Design
• Design by Emulation-Approximation–Euler’s Method–Tustin’s Method
• Discrete Design (Direct Digital Design)–Root Locus–Bode Plot
![Page 3: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/3.jpg)
Design by Emulation
![Page 4: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/4.jpg)
Design by Emulation
0 0
( ) 1( )( )
( ) ( ) ( ) ( )
( ) ( )
kT kT T kT
kT TkT
kT T
U s D sE s s
u kT e t dt e t dt e t dt
u kT T e t dt
−
−
−
= =
= = +
= − +
∫ ∫ ∫∫
![Page 5: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/5.jpg)
Backward Rectangular Rule (Euler’s Method)
1
1 1
1
1
( ) ( 1) ( )( ) ( ) ( )( ) 1( ) 1 1
( ) , ( )1
1
u k u k T e kU z z U z T E zU z TE z z z
T
a aD s D zzs a a
Tzs
T
−
− −
−
−
= − + ⋅
= + ⋅
= =− ⎛ ⎞−
⎜ ⎟⎝ ⎠
= =−+ +
−←
![Page 6: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/6.jpg)
Backward Rectangular Rule(Euler’s Method)
( ) ( )( ) ( )
( ) ( )( )
( ) ( ) ( )( ) ( ) ( )
E s sU se t u t
u t u t Te tT
u t u t T T e tu kT u kT T T e kT
==
− −≈
≈ − + ⋅≈ − + ⋅
![Page 7: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/7.jpg)
Forward Rectangular Rule (Euler’s Method)
1 1
1
1
( ) ( 1) ( 1)( ) ( ) ( )( ) 1
1( ) 1 1
( ) , ( ) 1
1
u k u k T e kU z z U z T z E zU z Tz T
zE z z zT
a aD s D z zs a aT
zsT
− −
−
−
= − + ⋅ −
= + ⋅
= = =−− − ⎛ ⎞
⎜ ⎟⎝ ⎠
= =−+ +
−←
![Page 8: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/8.jpg)
Forward Rectangular Rule(Euler’s Method)
( ) ( )( ) ( )
( ) ( )( )
( ) ( ) ( )( 1) ( ) ( )
( ) ( ) ( )( )( ) 1
E s sU se t u t
u t T u te tT
u t T u t T e tu k u k T e kzU z U z TE zU z TE z z
==
+ −≈
+ ≈ + ⋅+ ≈ + ⋅
= +
=−
![Page 9: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/9.jpg)
Tustin’s Method (Trapezoidal Rule, Bilinear Transform)
1 1
1
1 1
1
1
1
1
1
( ) ( 1) [ ( 1) ( )]2
( ) ( ) [ ( ) ( )]2
( ) 1 1( ) 2 1 1
2 1
( ) , ( )1
2 1
12 1
Tu k u k e k e k
TU z z U z z E z E z
U z T zE z z T z
za aD s D z
s a T z az
T zsz
− −
−
− −
−
−
−
−
−
= − + − +
= + +
⎛ ⎞+= =⎜ ⎟− ⎛ ⎞−⎝ ⎠
⎜ ⎟+⎝ ⎠
= =+ ⎛ ⎞−
+⎜ ⎟+⎝ ⎠⎛ ⎞−
← ⎜ ⎟+⎝ ⎠
![Page 10: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/10.jpg)
1st Order Digital Filter
1 1
( ) 1( )( ) 1 /( ) 1( )
1( ) 11
c
c
c
c
Y sG sU s s
TY zG zzU z T z
T
ωω
ωω
− −
= =+
= = =− + −+
![Page 11: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/11.jpg)
1st Order Digital Filter
[ ]
1
1
1
( 1 ) ( ) ( )
( 1) ( ) ( ) ( )1( ) ( ) ( )
( 1)1( ) ( 1) ( )
( 1)
c c
c c
cc
cc
T z Y z T U z
T Y z z Y z T U z
Y z z Y z T U zT
y k y k T u kT
ω ω
ω ω
ωω
ωω
−
−
−
+ − =
+ − =
⎡ ⎤= +⎣ ⎦+
= − ++
![Page 12: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/12.jpg)
2nd Order Dynamic System
2
2 2
( )( ) 2
n
n n
Y sU s s s
ωζω ω
=+ +
22 2
2 2 n n nd y dy y udt dy
ζω ω ω+ + =
1 22 2
2 1 2
1
( ) ( )
( ) ( ) 2 ( ) ( )( ) ( )
n n n
x t x t
x t x t x t u ty t x t
ω ζω ω
=
= − − +=
![Page 13: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/13.jpg)
2nd Order Dynamic System
1 2 0 2 2
2 1 2 0
( ) ( )
( ) ( ) 2 ( ) ( )
t
t
n n n
x t x d
x t x x u d
τ τ
ω τ ζω τ ω τ τ
=
⎡ ⎤= − − +⎣ ⎦
∫∫
1 1 2
2 22 2 1 2
( ) ( ) ( )
( ) ( ) ( ) 2 ( ) ( )n n n
x t x t T T x t T
x t x t T T x t T x t T u t Tω ζω ω
= − + ⋅ −
⎡ ⎤= − + ⋅ − − − − + −⎣ ⎦
![Page 14: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/14.jpg)
2nd Order Dynamic System
2 10,2 20nω π π= × ×
0.2 , 1ζ =
![Page 15: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/15.jpg)
Interrupt
Main ProgramInterruptServiceRoutine
![Page 16: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/16.jpg)
PC Interrupt
![Page 17: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/17.jpg)
PC Interrupt
![Page 18: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/18.jpg)
PC Interrupt
![Page 19: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/19.jpg)
AD Converter TimerIRQ5
PC bus AD board
Timer
AD Converter
IRQ
AD conversion start
AD conversion end
Interrupt Request
T(Sampling Period)
![Page 20: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/20.jpg)
AD Conver Board PCI-1711
![Page 21: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/21.jpg)
AD Conver Board PCI-1711
![Page 22: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/22.jpg)
AD Conver Board PCI-1711
![Page 23: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/23.jpg)
AD Conver Board PCI-1711
![Page 24: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/24.jpg)
DA Converter Board PCI-1720
![Page 25: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/25.jpg)
DA Converter Board PCI-1720
![Page 26: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/26.jpg)
DA Converter Board PCI-1720
![Page 27: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/27.jpg)
PCI Devices
![Page 28: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/28.jpg)
sine.c#include "C:\Tornado\target\h\fppLib.h“#include "math.h"
#define AD_BASE 0x1800#define AD_LOW_BYTE AD_BASE#define AD_HIGH_BYTE AD_BASE+1#define AD_RANGE AD_BASE+2#define AD_START_CHANNEL AD_BASE+4#define AD_STOP_CHANNEL AD_BASE+5#define AD_CONTROL AD_BASE+6#define AD_STATUS AD_BASE+7#define AD_CLEAR_INTERRUPTAD_BASE+8#define AD_CLEAR_FIFO AD_BASE+9#define DIO1 AD_BASE+16#define DIO2 AD_BASE+17
#define COUNTER0 AD_BASE+24#define COUNTER1 AD_BASE+26#define COUNTER2 AD_BASE+28#define COUNTER_CONTROL AD_BASE+30
#define DA_BASE 0x1840#define DA_CHANNEL0_LOW DA_BASE#define DA_CHANNEL0_HIGH DA_BASE+1#define DA_RANGE DA_BASE+8
![Page 29: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/29.jpg)
sine.c#define ONMASK 0xdf /* 1101 1111 Turn IRQ5 On */#define OFFMASK 0x20 /* 0010 0000 Turn IRQ5 Off */#define ONMASK2 0xfb /* 1111 1011 Turn IRQ10 On */#define OFFMASK2 0x04 /* 0000 0100 Turn IRQ10 Off */#define PICMASK 0x21 /* 8259 Mask Register */#define PICEOI 0x20 /* 8259 EOI Instruction */#define IRQ5 0x25 /* IRQ5 interrupt number */#define PIC2MASK 0xA1 /* 8259 Mask Register */#define PIC2EOI 0xA0 /* 8259 EOI Instruction */#define IRQ10 0x2A /* IRQ10 interrupt number *//* VxWorks 5.4 Programmer's Guide page 444 *//* By default, vector number 0x20 to 0x2f are mapped to IRQlevel 0 to 15 */
![Page 30: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/30.jpg)
sine.cvoid initialize_timer_interrupt(void){
unsigned short count;
/* Initilize the timer */count=100;sysOutByte(COUNTER_CONTROL,0x74); /* 0111 0100 */sysOutByte(COUNTER1,(count & 0xff));sysOutByte(COUNTER1,((count >> 8) & 0xff));count=50;sysOutByte(COUNTER_CONTROL,0xB4); /* 1011 0100 */sysOutByte(COUNTER2,(count & 0xff));sysOutByte(COUNTER2,((count >> 8) & 0xff));/* count=100,count=50 : 2KHz for 10MHz clock input : PCI-1711 */
sysOutByte(PICMASK,(sysInByte(PICMASK) & (ONMASK))); /* enable IRQ5 interrupt */
} /* initialize_timer_interrupt */
![Page 31: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/31.jpg)
sine.cvoid interrupt_service_routine(void){
fppSave(pFpContext);
int_counter++;x=sysInWord(AD_LOW_BYTE);x=x-2048;
y=204.8*2*sin(2.0*3.141592654*100.0*(float)int_counter/2000.0);
y=y+2048;sysOutWord(DA_CHANNEL0_LOW,y);
sysOutByte(AD_CLEAR_INTERRUPT,0); /* clears interrupt */sysOutByte(AD_CLEAR_FIFO,0); /* clears FIFO */fppRestore(pFpContext);sysOutByte(PIC2EOI,0x20); /* end of interrupt */
} /* interrupt_service_routine */
![Page 32: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/32.jpg)
sine.cvoid initialize_ad_converter(void){
sysOutByte(AD_START_CHANNEL,0); sysOutByte(AD_STOP_CHANNEL,0); sysOutByte(AD_RANGE,0x0); /* single-ended bipolar -10+10 */
sysOutByte(AD_CONTROL,0x12); /* AD conversion mode : Timer Trigger, Interrupt *//*sysOutByte(AD_CONTROL,0x01);*/ /* AD conversion mode : Software Trigger, No Interrupt */sysOutByte(DA_RANGE,0xff);
} /* initialize_ad_converter */
![Page 33: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/33.jpg)
sine.cvoid app( void ){
int i;initialize_ad_converter();connect_interrupt_service_routine();initialize_timer_interrupt();sysOutByte(AD_CLEAR_INTERRUPT,0); /* clears interrupt */sysOutByte(AD_CLEAR_FIFO,0); /* clears FIFO */
} /* application main */
![Page 34: Digital Control System - Hanyangccrs.hanyang.ac.kr/webpage_limdj/rt_lab/rtsim.pdf · Digital Control System + Controller Plant Sensor Control Signal Command Digital Computer D/A A/D](https://reader030.vdocuments.us/reader030/viewer/2022020109/5b8b063a7f8b9a5e7c8bd5eb/html5/thumbnails/34.jpg)
Two’s complement
0xfffff8000x0-10
………
0xffffffff0x7ff-10*(1/2048)
00x8000
0x000000010x80110*(1/2048)
………
0x000007ff0xfff10*(2047/2048)
Two’s complement(long integer: 4
bytes)
입력값입력전압