雅安地区西门子代理商
- 供应商
- 上海领国自动化科技有限公司
- 认证
- 品牌
- 西门子
- 中国
- 代理商
- 产地
- 德国
- 手机号
- 18800378001
- 联系人
- 袁工
- 所在地
- 上海市金山区枫泾镇环东一路65弄7号3959室
- 更新时间
- 2024-04-06 08:00
可编程序控制器(plc)的程序结构组成有哪些
s7-200cpu的控制程序由主程序、子程序和中断程序组成。
1.主程序
主程序(ob1)是程序的主体,每一个项日都**并且只能有一个主程序。在主程序中可
以调用子程序和中断程序。
主程序通过指令控制整个应用程序的执行,每次cpu扫描都要执行一次主程序。step7-micro/win32的程序编辑器窗口下部的标签用来选择不同的程序。因为程序已被分开,各程序结束时不需要无条件结束指令,如end、ret或reti等。
2.子程序
子程序是一个可选的指令的集合,仅在被其他程序调用时执行。同子程序可以在不同的地方被多次调用,使用了程序可以简化程序代码和减少扫捕时间。设计得好的子程序容易移植到别的项目中去。
3.中断程序
中断程序是指令的一个可选集合,中断程序不是被主程序调用,它们在中断事件发生时由可编程序控制器的操作系统调用。中断程序用来处理预先规定的中断事件,因为不能预知何时会出现中断事件,所以不允许中断程序改写可能在其他程序中使用的存储器。
存储器的数据类型与寻址方式
数据在存储器中存取的方式
1.位、字节、字和双字
sdnp二进制数的1位(bit)只有0和1两种不同的取值,可用来表示开关量(或称数字量)的两种不同的状态,如触点的断开和接通,线圈的通电和断电等。如果该位为1,则表示梯形图中对应的编程元件的线圈“通电”,其常开触点接通,常闭触点断开,以后称该编程元件为1状态,或称该编程元件0n(接通)。如果该位为0,对应的编程元件的线圈和触点的状态与上述的相反,称该编程元件为0状态,或称该编程元件off(断开)。位数据的数据类型为bool(布尔)型。
8位二进制数组成1个字节(byte,见图3-5),其中的*0位为*低位(lsb),*7位为*高位(msb)。两个字节组成1个字(word),两个字组成1个双字(见图3-6)。一般用二进制补码表示有符号数,其*高位为符号位,*高位为0时为正数,为1时为负数,*大的16位正数为7fffh,h表示十六进制数。字节、字和双字的取值范围见表3.1。
图 3-5 位数据的存放
表 3-1 数据的位数与取值范围
2.数据的存取方式
位存储单元的地址由字节地址和位地址组成,如i3.2,其中的区域标识符"i"表示输人(in-put),字节地址为3,位地址为2(见图3-5)。这种存取方式称为“字节.位”寻址方式。
输入字节ib3(b是bvte的编写)由13.0-13.7这8位组成。相邻的两个字节组成已个字,vw100表示由vb100和vb101组成的1个字(见图3-6),vw10中的v为区城标识符,w表示字(word),100为起始字节的地址。
图3-6字,字节和双字对同一地址存取操作的比较
a)vb100 b)vw100 c)vd100
vd100表示由vb100~vb103组成的双字,v为区城标示符,d表示存取双字(doubleword),100为起始字节的地址。
plc的基本工作原理
可编程控制器,英文称programmablelogiccontroller,简称plc。plc是基于电子计算机,且适用于工业现场工作的电控制器。它源于继电控制装置,但它不像继电装置那样,通过电路的物理过程实现控制,而主要靠运行存储于plc内存中的程序,进行入出信息变换实现控制。
plc基于电子计算机,但并不等同于普通计算机。普遍计算机进行入出信息变换,多只考虑信息本身,信息的入出,只要人机界面好就可以了。而plc则还要考虑信息入出的**性、实时性,以及信息的使用等问题。特别要考虑怎么适应于工业环境,如便于安装,抗干扰等问题。
1.1实现控制要点
输入输出信息变换、**物理实现,可以说是plc实现控制的两个基本要点。
输入输出信息变换靠运行存储于plc内存中的程序实现。plc程序既有生产厂家的系统程序(不可更改),又有用户自行开发的应用(用户)程序。系统程序提供运行平台,同时,还为plc程序**运行及信号与信息转换进行必要的公共处理。用户程序由用户按控制要求设计。什么样的控制要求,就应有什么样的用户程序。
**物理实现主要靠输人(input)及输出(output)电路。plc的i/o电路,都是专门设计的。输入电路要对输入信号进行滤波,以去掉高频干扰。而且与内部计算机电路在电上是隔离的,靠光耦元件建立联系。输出电路内外也是电隔离的,靠光耦元件或输出继电器建立联系。输出电路还要进行功率放大,以足以带动一般的工业控制元器件,如电磁阀、接触器等等。
i/o电路是很多的,每一输入点或输出点都要有一个i或o电路。plc有多i/o用点,一般也就有多少个i/o用电路。但由于它们都是由高度集成化的电路组成的,所以,所占体积并不大。
输入电路时刻监视着输入状况,并将其暂存于输入暂存器中。每一输入点都有一个对应的存储其信息的暂存器。
输出电路要把输出锁存器的信息传送给输出点。输出锁存器与输出点也是一一对应的
这里的输入暂存器及输出锁存器实际就是plc处理器i/o口的寄存器。它们与计算机内存交换信息通过计算机总线,并主要由运行系统程序实现。把输人暂存器的信息读到plc的内存中,称输入刷新。plc内存有专门开辟的存放输入信息的映射区。这个区的每一对应位(bit)称之为输入继电器,或称软接点。这些位置成1,表示接点通,置成0为接点断。由于它的状态是由输入刷新得到的,所以,它反映的就是输入状态。
输出锁存器与plc内存中的输出映射区也是对应的。一个输出锁存器也有一个内存位(bit)与其对应,这个位称为输出继电器,或称输出线圈。靠运行系统程序,输出继电器的状态映射到输出锁存器。这个映射也称输出刷新。输出刷新主要也是靠运行系统程序实现的。这样,用户所要编的程序只是,内存中输入映射区到输出映射区的变换,特别是怎么按输入的时序变换成输出的时序。这是一个数据及逻辑处理问题。由于plc有强大的指令系统,编写出满足这个要求的程序是可能的,而且也是较为容易的。