西门子模块6GK7243-1EX01-0XE0方法说明
用二进制运算指令完成(250×8 – 1000)/50运算的例子。
分析程序功能
(1)当满足条件时,执行一次BSET指令将DM0000~DM0004清零,以备开始运算。
(2)当00001ON、00000OFF时,执行如下操作:
①执行@MOV指令将#00FA(十进250)传送到HR00中;
②执行@MLB指令将HR00的内容与#0008相乘,将结果的低位07D0(十进2000)存在DM0000中、结果高位0000存在 DM0001中;
③执行 @CLC指令将CY清零,以备相减运算。
④执行@SBB指令,DM0000的内容减去#03E8(十进1000),将结果#03E8存在DM0002中;
⑤执行指令@DVB,将DM0002的内容除以#0032(十进50),把商#0014(十进20)存在DM0003中、把余数#0000存在DM0004中。
执行各种指令和运算的结果如下
(1)用逻辑指令完成逻辑运算
(2)用逻辑指令进行通道清零
(3)用逻辑指令将通道中的某些位屏蔽
例如,欲保留HR00中的bit0、bit3、bit4、bit7、bit10的状态而屏蔽其余位的状态
可用#0499与HR00进行逻辑与运算来实现
( #0499:0000 0100 1001 1001)
逻辑运算指令举例
分析执行逻辑运算的结果
输出继电器用来把程序执行结果送到外部的执行元件,如电磁阀,接触器等。
从PLC输出到灯亮一般要15ms 左右。
(1)1:1 HOST bbbb
CPM1A没有RS-232C口,可通过外设端口,用适配器与上位机连接实现通信。
(2) 1:N HOST bbbb
上位机的功能:
工作状态跟踪监测、故障报警、采集系统中的某些数据等。
上位机可以在线修改PLC的某些设定值和当前值、改写PLC的用户程序等。
我厂KP8000t热模锻压力机铸造生产线,由5台OMRONC200H型可编程序控制器(PLC)控制。下面介绍我们对PLC一次CPU停机故障排除方法,以期同行指正。
1.故障现象
据值班电工反映,系统电源指示灯POWER亮,正常操作外部开关、按按钮时,CPU面板上ERROR报警指示灯亮,外部输出切断,当时刚好上午准备下班。下开机时,从CPU内部冒出一股浓烟,此时,PLC交流电压为247V左右。
2.故障分析及处理
当PLC控制出现下列优先级错误时会引起CPU停机:CPU WAIT’ G (CPU等待)、MEMORY ERR(存储器错误)、NO END INST(无结束语句)、I/O BUS ERR(I/O总线错误)、I/O SET ERR(I/O设置错误)、I/O UNIT ERR(I/O单元错误)、SYS FAIL FALS(系统出错)等。
用编程器读出出错信息如下:COU WAIT’ G、MEMORY ERR。拆下该CPU,经查看内部线路,发现CPU内部电源部分一集成件SI-9510A已炸开,显然,CPU不能运行。可能原因是当时电源电压高于OMRON产品给定电压高值(240Va.c)7V左右或该集成件本身质量欠佳造成的。更换同型号CPU,ERROR红灯仍亮,系统不能启动,用编程器读出的出错信息依然如故。
为了防止意外和查看问题方便,我们将备用的存贮器换上,因其RAM中无用户程序。此时,能引发CPU等待的错误主要有两个方面:特殊I/O单元等待及扩展I/O单元等待。首先,我们查看了扩展单元的各部分,其电源供给正常,发现连接电缆插头松动,插好,试机,PLC CPU依然停机,但无存贮器错误显示。由于系统未进行I/O地址登记,为查找原因方便,将扩展机架“离线”操作,直接检查主板特殊单元。存贮器中RAM为空白,只要拆下坏的模板后,CPU就应运行,其RUN指示灯亮(编程器置RUN或MONIT状态)。当拆下主板上OD215模板后,RUN亮,将备用的OD215进行状态设置,替换后也亮。此时,再将原来的存贮器换上,结果编程器上蜂鸣器马上声响,又出现MEMORY ERR出错信息,可见存贮器也被烧坏。只能用备用的存贮器,重新输入原始用户程序,分段检查、试车,后全部重新试车,系统正常,交付使用。
直此,笔者认为引起这次停机故障的可能原因是特殊I/O单元OD215损坏,又由于偶然因素如电压偏高,使CPU烧坏及存贮器损坏。
3.体会
(1)PLC控制系统设计时,其电源的稳压设计必须引起重视,以满足当地电压波动范围适合PLC规范要求,为此,我们正着手改进原电源线路
(2)程序需备份。设计者一般均有程序备份,用户手中也必须有正确的程序清单。
(3)平时应当注意何处可以购买到备件,以便及时修复机器。
块传送指令XFER (70 )/ @ XFER(70 )
N :通道数(BCD数 )
S :源数据块首通道 D:目的通道首通道
功能
在执行条件为ON时,将几个连续通道中的数据传送到另外几个连续通道中。
执行块传送指令时数据传送如下所示:
以下叙述的硬件/软件条件为:不带RS232串口的笔记本电脑、欧姆龙CPM2AH-60CDR型PLC、Cx-ProgrammerV5.0编程软件
根据通信错误信息“Modem已经被选中,要继续码?”,笔者找到了解决方法:在桌面上右击“我的电脑”,再点击“属性”——“硬件”——“设备管理器”,再双击“调制解调器”,再右击展开的调制解调器型号,点击“停用”就可以了。
另外,正确连接方法如下:在电脑没开机或(和)PLC没通电(否则带电拔插通信口可能造成通信口损坏(虽然这种几率不大,但你好不要去碰运气))的情况下连接好USB转RS232电缆、电脑与PLC的连接电缆,然后再通过Cx-Programmer连接电脑与PLC。
请注意:USB口也不是随便乱插就可以的,关键要保证设备管理器里的RS232口为COM1。笔者的电脑上时这种情况:初已将默认的RS232口从COM4口改为COM1口,但插下面的USB口却对应RS232的COM4口(COM1、COM3正在使用),无法连接电脑与PLC;插上面的USB口对应RS232的COM1口(COM2、COM4正在使用),可以连接电脑与PLC。
2.Cx-ProgrammerV5.0与PLC通信干扰:
如果Cx-Programmer在线,电脑和PLC已经连接,处于通信状态下,当每次设备停机时(将近20个交流接触器同时断开)Cx-Programmer将会出现通信错误,电脑和PLC连接中断。而当每次开机时(将近20个交流接触器同时吸合)却不会出现通信错误的情况。
解决方法:重新连接PLC。如果你是个完美主义者,可以在每个接触器线圈上加一个RC阻容模块(每个RC模块大概60个大洋左右),也许不会出现通信错误的情况(不过笔者没有试过哟...)。
3.电脑与PLC的连接电缆试验:
因为想到电脑与PLC的连接电缆(第1种常规的连接电缆)为2-2短接、3-3短接、5-5短接,所以考虑直接用USB←→RS232电缆将电脑和PLC连接起来,如果这样可以的话不就省了一条连接电缆了吗?下面是直接用USB←→RS232电缆将电脑和PLC连接起来的试验结果欧姆龙PLC通讯问题解析
导读: 以下叙述的硬件/软件条件为:不带RS232串口的笔记本电脑、欧姆龙CPM2AH-60CDR型PLC、Cx-ProgrammerV5.0编程软件
1.Cx-ProgrammerV5.0与PLC通信不稳定:
电脑与PLC的连接方式:电脑USB口(该电脑没有RS232串口)←→[USB转RS232电缆的USB插头←→USB转RS232电缆线(电脑已经安装驱动,且默认的COM4端口已经设置为COM1)中间部分←→USB转RS232电缆的RS232公头]←→[[电脑与PLC的连接电缆的RS232母头←→电脑与PLC的连接电缆线的中间部分←→电脑与PLC的连接电缆的RS232公头]]←→PLC的RS232母头。
上面单中括号内为USB转RS232电缆,双中括号内为电脑与PLC的连接电缆。电脑与PLC的连接电缆接线如下:(1).公头(用以连接PLC)的2、3、9分别与母头的2、3、5(用于连接电脑或USB转RS232连接线)短接,这是欧姆龙官方的连接方法;(2).公头和母头的2-2、3-3、5-5分别短接,这是RS232连接线的常规连接方法。后来经过实践证明:上面2种电脑和PLC的连接电缆都可以使用。第1种电缆通信稳定可靠。对于第2种电缆,当电脑和PLC之间通过VC应用程序进行通信时效果不好,容易丢帧(用串口调试助手可以看到),只有当电脑和PLC共用电源(共地)时才没有发现问题。所以,请尽量采用第1种连接电缆。
有时间电脑和PLC能正常通信,有时间却不行——显示“Modem已经被选中,要继续码?”故障(实际上“码”应当为“吗”),一旦出现该故障信息,就一定会出现以下故障信息: