编写S7-200PLC程序完成采样工作,要求每10ms采样

编程完成采样工作,要求每10ms采样一次。

分析:完成每10ms采样一次,需用定时中断,查表1可知,定时中断0的中断事件号为10。因此在主程序中将采样周期(10ms)即定时中断的时间间隔写入定时中断0的特殊存储器SMB34,并将中断事件10INT-0连接,全局开中断。在中断程序0中,将模拟量输入信号读入,程序如图下图所示。

 

 

 

 

1中断事件及优先级

优先级分组

组内优先级

中断事件号

中断事件说明

中断事件类别

通信中断

0

8

通信口0:接收字符

通信口0

0

9

通信口0:发送完成

0

23

通信口0:接收信息完成

1

24

通信口1:接收信息完成

通信口1

1

25

通信口1:接收字符

1

26

通信口1:发送完成

I/O中断

0

19

PTO 0脉冲串输出完成中断

脉冲输出

1

20

PTO 1脉冲串输出完成中断

2

0

I0.0上升沿中断

外部输入

3

2

I0.1上升沿中断

4

4

I0.2上升沿中断

5

6

I0.3上升沿中断

6

1

10.0下降沿中断

7

3

I0.1下降沿中断

8

5

I0.2下降沿中断

9

7

I0.3下降沿中断

10

12

HSC0当前值=预置值中断

高速计数器

11

27

HSC0计数方向改变中断

12

28

HSC0外部复位中断

13

13

HSC1当前值=预置值中断

14

14

HSC1计数方向改变中断

15

15

HSC1外部复位中断

16

16

HSC2当前值=预置值中断

17

17

HSC2计数方向改变中断

18

18

HSC2外部复位中断

19

32

HSC3当前值=预置值中断

20

29

HSC4当前值=预置值中断

21

30

HSC4计数方向改变

22

31

HSC4外部复位

23

33

HSC5当前值=预置值中断

定时中断

0

10

定时中断0

定时

1

11

定时中断1

2

21

定时器T32 CT=PT中断

定时器

3

22

定时器T96 CT=PT中断

主程序

LD I0.0

MOVB 10, SMB34 // 将采样周期设为10毫秒

ATCH INT_0, 10 // 将事件10连接INT_0

ENI // 全局开中断

中断程序0

LD SM0.0

MOVW AIW0, VW100 //读入模拟量AIW0