6ES7221-1EF22-0XA0型号大全
中断程序属于优先级别较高的,在运用中也相应的较为常用。欧姆龙PLC初学者难免会遇到诸多难题,这里讲解下欧姆龙PLC中断程序的编写,本文以欧姆龙CP1EPLC为例,希望能帮助初学者解决初学欧姆龙PLC中断程序编写的小难题。
我们需要打开欧姆龙软件CX-Programmer,建立新项目,单击文件里的新建选项或者单击新建按钮即可。
单击新建后弹出菜单,根据你现有的PLC进行选择,我们在这里选择的是欧姆龙PLC CP1ENA系列,记住需要正确选择你需要编程的PLC,不然无法通讯的。
选择好PLC型号后进入编程界面,这时候我们需要的是开启中断,我们要单击设置进入设置界面,进入设计界面后选择内置输入设置,在菜单下面有中断输入,选择我们需要开启的中断选项,将“普通”下拉改为”中断“,根据你自身需要进行选择。
设置完毕后关闭设置菜单,进入编程界面,右键单击程序选择插入新的梯形图,程序名称可以自行更改,在任务类型里选择中断任务,根据你自己所需要的选择,我们在设置里面开启的是中断任务2,在这里选择的任务类型为中断任务2选择完毕后在进入主程序编写,根据你自己所需要的进行中断条件编写,中断程序编写指令要注意了,根据你自己所选的中断任务进行编写,欧姆龙PLCCP1E系列大支持6路中断程序,我们以中断任务二为例,MSKS指令需要使用两次,一个是中断任务选择,一个是选择中断开启标示(上升沿或者是下降沿),个中断指令MSKS 102 #0000表示开启中断任务2,MSKS 102 #0001表示屏蔽中断任务2;第二个中断指令MSKS 112#0000表示上升沿开启中断,MSKS 112 #0001表示下降沿开启中断。
连接PLC,单击PLC,选择在线工作弹出确认菜单,选择“是”,连接PLC,再单击PLC选择传送到PLC,将程序导入PLC中,导入完成后将PLC断电10S左右再启动,一定要断电10S后再上电启动,不然可能会出现错误。
后,需要仿真模拟的话单击模拟,选择在线模拟即可。
为了满足工业逻辑控制的要求,结合计算机控制的特点,PLC的工作方式采用不断循环的顺序扫描工作方式。每一次扫描所用的时间称为扫描周期或工作周期。CPU从条指令执行开始,按顺序逐条地执行用户程序直到用户程序结束,返回条指令开始新的一轮扫描。PLC就是这样周而复始地重复上述循环扫描的。PLC工作的全过程可用图1所示的运行框图来表示。整个过程可分为以下几个部分:
部分是上电处理。PLC上电后对系统进行一次初始化,包括硬件初始化和软件初始化,停电保持范围设定及其他初始化处理等。
第二部分是自诊断处理。PLC每扫描一次,执行—次自诊断检查,确定PLC自身的动作是否正常。如CPU、电池电压、程序存储器、I/O和通讯等是否异常或出错,如检查出异常时,CPU面板上的LED及异常继电器会接通,在特殊寄存器中会存入出错代码。当出现致命错误时,CPU被强制为STOP方式,所有的扫描便停止。
图1 PLC运行框图
第三部分是通讯服务。PLC自诊断处理完成以后进入通讯服务过程。检查有无通讯任务,如有则调用相应进程,完成与其他设备的通讯处理,并对通讯数据作相应处理;进行时钟、特殊寄存器更新处理等工作。
第四部分是程序扫描过程。PLC在上电处理、自诊断和通讯服务完成以后,如果工作选择开关在RUN位置,则进人程序扫描工作阶段。先完成输入处理,即把输入端子的状态读入输入映像寄存器中,执行用户程序,后把输出处理结果刷新到输出锁存器中。
在上述几个部分中,通讯服务和程序扫描过程是PLC工作的主要部分,其工作周期称为扫描周期。可以看出扫描周期直接影响控制信号的实时性和正确性,为了确保控制能正确实时地进行,在每个扫描周期中,通讯任务的作业时间必须被控制在一定范围内。PLC运行正常时,程序扫描周期的长短与CPU的运算速度、与I/O点的情况、与用户应用程序的长短及编程情况等有关。通常用PLC执行l KB指令所需时间来说明其扫描速度,一般为零点几ms到上百ms。不同指令其执行时间是不同的,从零点几μs到上百μs不等,故选用不同指令所用的扫描时间将会不同。而对于一些需要高速处理的信号,则需要特殊的软、硬件措施来处理。
1、基本概况
S7-300的CPU用16位的二进制补码表示模拟量值。其中高位为符号位S,“0”表示正值,“1”表示负值,被测值的精度可以调整,取决于模拟量模块的性能和它的设定参数,对于精度小于15位的模拟量值,低字节中幂项低的位不用。
S7-300模拟量输入模块可以直接输入电压、电流、电阻、热电偶等信号,而模拟量输出模块可以输出0~10 V、1~5 V、-10V~10 V、0~20 mA、4~20 mA等模拟信号。
2、模拟量输入模块SM331
模拟量输入(简称模入(AI))模块SM331目前有三种规格型号,即8AI×l2位模块、2AI×l2位模块和8AI×l6位模块。
SM331主要由A/D转换部件、模拟切换开关、补偿电路、恒流源、光电隔离部件、逻辑电路等组成。A/D转换部件是模块的核心,其转换原理采用积分方法,被测模拟量的精度是所设定的积分时间的正函数,也即积分时间越长,被测值的精度越高。SM331可选四档积分时间:2.5ms、16.7 ms、20 ms和l00 ms,相对应的以位表示的精度为8、12、12和14。
SM331与电压型传感器的连接,如图1所示。
图1 输入模块与电压型传感器的连接
SM331与2线电流变送器的连接如图2a)所示,与4线电流变送器的连接如图2b)所示。4线电流变送器应有单独的电源。
图2 输入模块与2/4线变送器电流输入的连接
3、模拟量输出模块SM332
模拟量输出(简称模出(AO))模块SM332目前有三种规格型号,即4AO×l2位模块、2AO×12位模块和4AO×l6位模块,分别为4通道的12位模拟量输出模块、2通道的12位模拟量输出模块、4通道的16位模拟量输出模块。
SM332可以输出电压,也可以输出电流。在输出电压时,可以采用2线回路和4线回路两种方式与负载相连。采用4线回路能获得比较高的输出精度。
(1)整体式(箱体式)
将PLC的中央处理器单元、输入、输出部件安装在一块印刷电路板上,并连同电源一起装在一个标准机壳内,形成一个箱体。这种结构简单,体积小,重量轻,通过输入、输出端子与外部设备连接。一般小型PLC常采用这种结构,它适用于单机自动控制。
三菱FX系列
(2)机架模块式
把PLC的各个部分制成独立的标准尺寸的模块,主要有CPU模块(包括存储器)、输入模块、输出模块、电源模块以及其他各种模块直接插入机架底板的插座上即可。这种结构形式配置灵活,装配方便,便于扩展,用户根据控制要求灵活地配置各种模块,构成各种控制系统。一般大型、中型PLC采用这种结构。
西门子PLC S7-300
当程序下载至PLC后,可以用“程序状态”功能操作和测试程序网络。
1. 起动程序状态
1在程序编辑器窗口,显示希望测试的程序部分和网络。
2PLC置于RUN工作方式,起动程序状态监控改动PLC数据值。方法如下:
² ² 单击“程序状态打开/关闭”按钮 或用菜单命令“调试”→ “程序状态”,在梯形图中显示出各元件的状态。在进入“程序状态”的梯形图中,用彩色块表示位操作数的线圈得电或触点闭合状态。如: 表示触点闭合状态, 表示位操作数的线圈得电。
² ² 用菜单命令“工具” →“选项”打开的窗口中,可选择设置梯形图zhonggong能块的大小、显示的方式和彩色块的颜色等。
运行中的梯形图内的各元件的状态将随程序执行过程连续更新变换。
2. 用程序状态模拟进程条件(读取、强制、取消强制和全部取消强制)
通过在程序状态中从程序编辑器向操作数写入或强制新数值的方法,可以模拟进程条件。
² ² 单击“程序状态”按钮 ,开始监控数据状态,并启用调试工具。
(1)写入操作数:
² ² 直接单击操作数(不要单击指令),用鼠标右键直接单击操作数,并从弹出菜单选择“写入”。
(2)强制单个操作数:
² ² 直接单击操作数(不是指令),从“调试”工具条单击“强制”图标 。
² ² 直接用鼠标右键单击操作数(不是指令),并从弹出菜单选择“强制”。
(3)单个操作数取消强制:
² ² 直接单击操作数(不是指令),从“调试”工具条单击“取消强制”图标 。
² ² 直接用鼠标右键单击操作数(不是指令),并从弹出菜单选择“取消强制”。
(4)全部强制数值取消强制:
² ² 从“调试”工具条单击“全部取消强制”图标 。
强制数据用于立即读取或立即写入指令指定I/O点,CPU进入STOP状态时,输出将为强制数值,而不是系统块中设置的数值。
注意:在程序中强制数值时,在程序每次扫描时将操作数重设为该数值,与输入/输出条件或其他正常情况下对操作数有影响的程序逻辑无关。强制可能导致程序操作无法预料,可能导致人员死亡或严重伤害或设备损坏。强制功能是调试程序的辅助工具,切勿为了弥补处理装置的故障而执行强制。合格人员使用强制功能。强制程序数值后,务必通知所有授权维修或调试程序的人员。在不带负载的情况下调试程序时,可以使用强制功能。
3. 识别强制图标
被强制的数据处将显示一个图标。
(1)黄色锁定图标 表示显示强制:即该数值已经被“明确”或直接强制为当前正在显示的数值。
(2)灰色隐去锁定图标 表示隐式:该数值已经被“隐含”强制,即不对地址进行直接强制,但内存区落入另一个被明确强制的较大区域中。例如,如果VW0被显示强制,则VB0和VB1被隐含强制,因为它们包含在VW0中。
(3)半块图标 表示部分强制。例如,VB1被明确强制,则VW0被部分强制,因为其中的一个字节VB1被强制。
Ⅰ、程序状态监控
单击工具栏中的按钮,或执行菜单【调试】→【开始程序状态监控】选项,进入程序状态监控。启动程序运行状态监控后:① 当I0.1触点断开时,编程软件使用示例的程序状态如图1所示。② 当I0.1触点接通瞬间,编程软件使用示例的程序状态如图2所示。③ 当定时器延时时间10S后,编程软件使用示例的程序状态如图7—28所示。
在监控状态下,“能流”通过的元件将显示蓝色,通过施加输入,可以模拟程序实际运行,从而检验我们的程序。梯形图中的每个元件的实际状态也都显示出来,这些状态是PLC在扫描周期完成时的结果。
图1 编程软件使用示例的程序状态
图2 编程软件使用示例的程序状态
Ⅱ、状态表监控
可以使用状态表来监控用户程序,还可以采用强制表操作修改用户程序的变量。编程软件使用示例的状态表监控如图3所示,在当前值栏目中显示了各元件的状态和数值大小。
可以选择下面办法之一来进行状态表监控:
①执行菜单【查看】→【组件】→【状态表】。
②单击浏览栏的【状态表】按钮。
③单击装订线,选择程序段,单击鼠标右键,选择【创建状态图】命令,能快速生成一个包含所选程序段内各元件的新的表格。
图3 编程软件使用示例的状态表监控
Ⅲ、趋势图监控
趋势图监控是采用编程元件的状态和数值大小随时间变化关系的图形监控。可点击工具栏的按钮,将状态表监控切换为趋势图监控。