西门子模块6ES7222-1EF22-0XA0技术支持
目前,国内用户选用的可编程控制器(PLC)仍以国外产品为主,造成这种局面的一个重要原因是欧、美、日等发达工业国家掌握了高端PLC的核心技术,其硬软件技术对应用者来说完全是封闭的,使用者只能从应用的角度学习PLC,而不能参与PLC的开发[1-2]。近年来,IEC61131-3的颁布和实施为各PLC生产厂家提供了统一的软件开发准则,开放的高性能单片机技术的发展,为硬件开发提供了有效的物质基础[3]。在这样的背景下,研制开放的PLC系统无论对于科学研究还是促进PLC行业的发展都有积极的现实意义。
PLC是一种专用于工业控制的计算机,其硬件主要由中央处理器、存储器、输入/输出接口等组成[4],其硬件结构如图1所示。
1 开放式可编程控制器
开放式PLC硬件结构采用CPU+外围模块+接口构成,各个接口都按标准设计,大大提高了PLC的开放性,使其能方便地与大系统连接。编程语言遵循IEC61131-3,并将基于PC的编程软件作为PLC编程工具。系统硬件部分采用高性能51内核处理器STC89C51,其为模块化设计,采用滤波、隔离电路,以降低成本。主要电路有:微控制器STC89C51RC、开关量输入电路、继电器输出电路、晶体管输出电路、RS232通信接口电路、电源电路、时钟复位电路和USB通信接口电路等,PLC硬件系统框图如图2所示,软件采用Borland公司集成开发软件C++ Builder,通过集成平台对51内核处理器指令集进行解释、编译,使梯形图语言转换为能被51内核处理器识别的代码。
2 系统硬件设计
可编程控制器单片机部分电路图如图3所示。
USB通信部分选择Philips公司的PDIUSBD12[5]芯片作为系统的USB接口器件,片内集成了高性能USB接口电路、SIE、FIFO存储器、收发器以及电压调整器等,可与任何外部控制器或微处理器实现高速并行通信,其速率为2 Mb/s,完全能够满足设计所要求的数据传输速度。USB通信接口模块电路如图4所示。
3 系统软件设计
系统软件结构如图5所示。图中,系统编辑模块为用户提供编辑环境,接收用户的梯形图程序输入,并将其存储为相应的文件。梯形图语言为一种图形语言,要直接对其进行编译十分困难,因此并不是直接对梯形图程序进行编译,而是先将其翻译成指令语言的文本形式,再对指令语言进行编译。图形语言编译问题的解决,提高了代码的利用率[6-7]。通过提取数据结构中的数据,形成C语言程序文件,经过C51编译器、连接器、转换器的编译、连接、转换过程,生成能够在PLC硬件上运行的可执行文件。
S7-200 PLC采用的是自动分配型地址分配方式。CPU模块本身带有集成的I/O,这些I/O点具有固定不变的地址,地址从字节0开始分配;通过扩展模块,PLC可以增加I/O点,扩展模块布置在CPU模块的右侧。扩展模块的I/O地址决定于模块的类型与模块在扩展连接中的安装位置。
S7-200 PLC的地址分配的特点如下:
①S7-200 PLC采用的是自动分配型分配方式,地址连续、有序。
②开关量输入/输出的地址以字节为单位进行分配,当模块输入/输出点的数量不为整字节时,该字节多余的输入/输出点不可以再作为实际输入/输出点分配给后续的其他模块,但可以作为内部标志位使用。
③模拟量输入、模拟量输出的地址是以字为单位各自独立分配的,而且少需要分配2个字(即
使模块只使用1点模拟量输入/输出),如果模块本身无物理输入/输出与之对应,多余地址不但不可
以分配给后续模块,而且也不可再作其他用途。
2.地址分配实例
[例1]某配套S7-200 PLC的控制系统,采用CPU224模块,并选配一个4/4点输入/输出混合模块、一个8点输入模块、一个8点输出模块与两个4/1点模拟量输入/输出混合模块,其输入/输出地址的分配如图8-3.1所示。
(1)开关量输入地址的分配
CPU模块集成的输入点为14点,占用2个字节。其中,IO.O~I1.5为物理输入,可以连接外部输入信号;I1.6、I1.7为CPU模块占用的多余输入,既不可以连接输入信号,也不能分配给后续单元。
从CPU模块向右,PLC安装的个具有输入点的扩展模块为4/4点输入/输出混合模块,需要占用1个字节的输入地址,地址从I2.0开始进行分配。其中,I2.0~12.3为物理输入,可以连接外部输入信号;I2.4~ 12.7为CPU模块占用的多余输入,不能再分配给后续单元。
PLC安装的第2个扩展模块为8点输入模块,占用1个字节的输入地址,地址从I3.0开始进行分配,无多余输入。
(2)开关量输出地址的分配
CPU模块集成的输出点为10点,占用2个字节。其中,QO.O~Ql.l为物理输出,可以连接外部输出信号:Q1.2~Q1.7为CPU模块占用的多余输出,不可以连接外部输出信号,也不能分配给后续单元,但在PLC编程时可以作为内部标志位使用。
从CPU模块向右,PLC安装的个具有输出点的扩展模块为4/4点输入/输出混合模块,同样需要占用1个字节的输~址,地址从Q2.0开始进行分配。其中,Q2.O~Q2.3为物理输入’可以连接外部输出信号;Q2.4~Q2.7为CPU模块占用的多余输出 ,不能再分配给后续单元,但在PLC编程时同样可以作为内部标志位使用。
PLC安装的第2个具有输出点的扩展模块为8点输出模块,占用1个字节的输出地址,地址从Q3.0开始进行分配,无多余输出。
(3)模拟量输入地址的分配
CPU224模块无集成模拟量输入点,不占用模拟量输入地址。
从CPU模块向右,PLC安装的个具有模拟量输入的扩展模块为4/1点模拟量输入/输出混合模块,以字为单位,4点模拟量需要占用8个字节,地址从AIWO开始进行分配,依次为AIWO、AIW2、 AIW4、 AIW6。
PLC安装的第2个具有模拟量输入的扩展模块仍然为4/1点模拟量输入/输出混合模块,同样占用8个字节,地址从AIW8开始连续分配,依次为AIW8、AIWIO、AIW12、AIW14。
(4)模拟量输出地址的分配
CPU224模块无集成模拟量输出点,不占用模拟量输出地址。
从CPU模块向右,PLC安装的个具有模拟量输出的扩展模块为4/1点模拟量输入/输出混合模块,以字为单位,l点模拟量需要占用2个字节,但由于模拟量地址分配的小单位是2个字,因此,模块实际需要占用2个字(4个字节)。模拟量输出地址AQWO具有物理输出,AQW2被占用,不可以分配给后续模块,也不可再作其他用途。
PLC安装的第2个具有模拟量输出的扩展模块仍然为4/1点模拟量输入/输出混合模块,模块同样实际需要占用2个字(4个字节),地址从AQW4开始分配,AQW4具有物理输出,AQW6被占用,不可以分配给后续模块,也不可再作其他用途。
PLC是一种专用微机,但用它来实现继电接触控制系统的功能时,就勿须从计算机的角度去研究,而是将PLC的内部结构等效为一个继电器电路。在PLC内部的一个触发器等效为一个继电器,通过预先编制好并存人内存的程序来实现控制作用的,因此,对使用者来说,可以不去理会微机及存储器内部的复杂结构,而是将PLC看成是由许多继电器组成的控制器,但这些继电器的通断是由软件来控制的,因此称为“软继电器”。
任何一个继电器控制系统,都是由输人部分、逻辑部分和输出部分组成,如图4-4-3所示。
输人部分是由一些控制按钮、操作开关、限位开关、光电管信号等组成,它接收来自被控对象上的各种开关信息,或操作台上的操作命令。
逻辑部分是根据被控对象的要求而设计的各种继电器控制线路,这些继电器的动作是按一定的逻辑关系进行的。
输出部分是指根据用户需要而选择的各种输出设备.如电磁阀线圈、接通电机的各种接触器、信号灯等。
当将PLC:看成是由许多“软继电器”组成的控制器时,可以画出其相应的内部等效电器电路.如图4-4-4所示。
由图4-4-4可以看出,PLC的内部等效电路(如图中的大框线内所示)分别与用户输人设备和输出设备相连接。输人设备相当于继电器控制电路中的信号接收环节,如操作按钮、控制开关等;输出设备相当于继电器控制电路中的执行环节,如电磁阀、接触器等。
在PLC内部为用户提供的等效继电器有输人继电器、输出继电器、辅助继电器、时间继电器、计数继电器等。
输人继电器与PLC的输入端子相连接,用来接受外部输人设备发来的信号,它不能用内部的程序指令控制。
输出继电器的触头与PLC的输出端子相连接,用来控制外部输出设备,它的状态由内部的程序指令控制。
辅助继电器相当于继电器控制系统中的中间继电器,其触头不能直接控制外部输出设备。
时间继电器又称为定时器0个定时器的定时值确定后,一旦启动定时器,便以一定的单位(例10 ms)开始递减(或递增),当定时器中设定的是时值减为0(或增加到设定值)时,定时器的触头就动作。
计数继电器又称为计数器。每个计数器的计数值确定后,一且启动计数器,每来一个脉冲。计数值便减(或加)1,直到设定的计数值减为0(或增加到设定值)时,计数器的输出触头就动作。
值得注意的是,上述“软继电器”只是等效继电器,PLC中并没有这样的实际继电器,“软继电器”的线圈中也没有相应的电流通过,它们的工作完全由编制的程序来确定
1、安装环境的基本要求
不同厂家生产的PLC,其安装环境的要求有所区别,但总体来说,PLC的安装都应遵循如下的共同原则:
①安装必须牢固,避免在设备使用与运输过程中的跌落与振动。
②安装有PLC的电气柜,应尽量避免布置在有强烈振动与冲击的场所(PLC对振动与冲击的要求可见表7-5.1)。
③避免在周围有腐蚀性气体、可燃气体的场所安装。
④避免在周围有灰尘、导电粉尘、油雾、烟雾、盐雾的场所安装。
⑤避免在高温、多湿的场所或者低温的环境安装(PLC对温度与湿度的要求可见表7-5.1)。
⑥尽量避免PLC与高压电器设备(3000V以上)布置于同一电气柜内。
⑦尽量避免PLC与容易产生干扰的电气设备布置于同一电气柜内,以及使用同一电源,在不可避免时,应采取必要的措施。
⑧避免在周围有强磁场、强电场的场所安装PLC。
2.温度、湿度、振动、冲击的要求
PLC对使用环境的温度、湿度、振动、冲击方面的基本要求一般如下:
(1)温度
PLC使用时的环境温度一般应在0~55℃的范围内(保存时的温度为-20~70℃),同时应防止在阳光直接照射的场合使用。
当环境温度无法满足以上要求时,应采取相应的措施,如在电气柜上安装空调等,保证PLC的环境温度在允许的范围。
(2)湿度
PLC使用的环境相对湿度一般允许为20%~90%,应避免温度变化过快所造成的结露。
当环境湿度无法满足以上要求时,应采取安装自动除湿装置等措施。特别是冬天,在供暖装置有可能出现停止的场合,应采取必要的措施,防止温度变化造成的结露。
(3)振动
PLC对安装环境的振动有一定的要求,而且抗振动性能与PLC的型号(结构形式)与安装方式等因素有关。
在结构上,一般来说I/O点固定的一体化PLC,或是基本单元加扩展型PLC的基本单元,其抗振动的性能要优于模块化结构的PLC。在安装方式上,利用螺钉安装的PLC,其抗振动的性能要优于导轨安装的PLC。
通常情况下,利用螺钉安装的I/O点固定的一体化PLC,或是基本单元加扩展型PLC的基本单元,允许的振动强度为l9.6m/s2 (2G)左右,采用导轨安装时为9.8m/s2 (1G)左右。利用螺钉安装的模块化PLC,允许的振动强度为9.8nr/s2(lG)左右,采用35mm标准导轨安装时为4.9m/s2( 0.5G)左右。
(4)冲击
PLC对安装环境的冲击同样有一定的要求,而且冲击性能与安装方式等因素有关。
通常情况下,利用螺钉安装的安装PLC,允许的冲击强度为15~30G(147~294m/s2),采用导轨安装时为147m/s2左右。
在具有强烈振动与冲击的场合,应采取必要的防震措施。
对于SIEMENS公司生产的S7系列PLC,环境的具体要求如表7-5.1所示。
3.安装空间的要求
PLC安装空间直接影响到PLC的散热。PLC对安装空间的一般要求如下:
①PLC与其他电器间一般应保证垂直方向大于lOOmm、水平方向大于50mm的空间距离,并保证通风良好。
②PLC与其他电器或者电气柜门间的前后空间距离,一般应保证在50mm以上,并保证通风良好。
③在PLC的下部,应避免直接布置强发热元件(如加热器、变压器、能耗电阻等)。
④尽量采用垂直安装的方式安装PLC,水平布置直接影响到PLC的散热。
⑤PLC不应安装在电气柜的门、顶面、底面、侧面等部位。
⑥必须保持PLC通风窗的畅通,在使用前一定要取下通风窗的保护纸
三菱FX系列PLC中使用STL/RET指令程序的写法
近用三菱的FX2N PLC,想用一下它的步进功能指令(STL/RET)来做顺序功能控制。编程手册中对这两个指令的说明比较详细。下图是三菱FX系列编程手册中对于STL/RET指令的例程序。
但是我按照手册中的例程序完整照抄写的梯形图程序编译的时候出错。像下面这张图
修改程序,将RET指令直接连到左母线,编译通过了。
但是模拟程序的时候出了问题,M8002并没有置位初始状态位S0。
又找了几个类似的程序,结果都一样,要么编译出错,要么执行结果不正确。搞了好长时间没有搞明白问题出在哪里。终于,翻出了GX-Developer v8操作手册,找到了问题的根源。