内蒙古西门子代理商
(1)DO模板的功能
数字量输出模块SM322将S7-300内部信号电平转换成过程所要求的外部信号电平,可直接用于驱动电磁阀、接触器、小型电动机、灯和电动机启动器等。
(2)DO模板的类型
按负载回路使用的电源不同分为:
直流输出模块、交流输出模块和交直流两用输出模块。
按输出开关器件的种类不同分为:
晶体管输出方式、晶闸管输出方式和继电器触点输出方式。
(3)DI模板的特点
晶体管输出模块只能带直流负载,属于直流输出模块;
晶闸管输出方式属于交流输出模块;
继电器触点输出方式的模块属于交直流两用输出模块。
关于西门子输出模块输出问题分析
问题阐述:在现场使用的西门子输出模块为SM 322; DO 32 x DC24V/0.5A, (6ES7322-1BL00-0AA0),当强制输出模块上的任意一个点的时候,全部的输出模块的灯全亮了,当取消强制输出点时,模块的所有输出点就全灭了。
问题判断:首先我们判断可能是模块本身有问题,但是从临近的机架换一个好的输出模块,发现仍然有同样的问题,所以排除了模块本身的问题。然后我们查线的问题,发现,取消一个输出的线,输出点的LED灯灭一个,所以判断为接线问题。然后从新校线,接线。然后输出模块工作正常。问题解决。
问题分析:虽然问题解决了,但是我们分析为什么强制一点,所有的输出LED灯全亮。在正确的接线情况下,模块的接线应如下图1所示,24V电源的正直接进模块,然后从每个输出点接到负载再回到公共负端。
但是接线接错就是把公共端直接接到到一个输出点上,然后在模块的公共端上相当于接了两个负载,接线方式如下图2所示。
所以当上电强制一个输出点,相当于带了两个负载,目前我们假设两个负载的电抗是相同的,所以每个负载上分的电压是相同的,12V,他们的电压分布如下图所示,
所以在每个输出点上都有12V的电压,因为相当于在两个相同负载中间测的电压都是总电压的一半,在此为12V,所以由这12V电压驱动输出点的LED指示灯亮。有人会问了,那在正常接线情况下输出点没有电压吗?由上图1可以看出来的,当正常接线情况下如果输出点没有输出,那么输出点的电压和M点的电压是相同的,为0V。所以没有电压。至此解释完毕。
问题结论:经过以上的分析和处理,解决问题,现在模块工作正常
说明
S7-300 以太网模块在 Profinet 网络中既可以作为控制器也可以作为设备,当 Profinet 连接中断时,可以使用下面的方法来判断。本文以 CP343-1 作为控制器为例,如图1,两个设备分别为ET200SP和ET200M。
( 37 KB )
图01
Profinet 通讯中现场设备作为数据的提供者,会向控制器发送数据到 I 区。在发送的 PN 的报文中,按照槽位的顺序添加内容,输入模块槽位:输入数据+IOPS;输出模块槽位:IOCS。IOPS 表示 IO 数据的提供状态(数据是好的还是坏的);IOCS表示IO 数据的消费状态(Q 数据使用状况)。如图2,CP 的PN 通讯程序块 FC11 "PNIO_SEND"和 FC12 "PNIO_RCIV" 提供了IOCS/IOPS 的输出管脚,可以用于通讯状态的评估。
图02
IOCS/IOPS 的有效长度和通讯的数据长度有关,每个字节的输入/输出,对应一位IOCS/IOPS 输出。如图3,ET200SP 站点,输入地址0-7 8个字节,对应 IOPS 8位,即MB202;输出地址0,一个字节,对应IOCS 一位,即M200.0。
图03
如图4,ET200M 站点,输入地址8 ,1个字节,对应 IOPS 1位,顺序后延即M203.0;输出地址1,一个字节,对应IOCS 一位,顺序后延即M200.1。
图04
如图5-6,如果现场设备只是发生故障,通讯没有中断,例如 ET200SP AI模块被拔出,只有相应的 IOPS 位置位,即MB202。
图05
图06
如果此时现场设备和控制器的连接中断,则现场设备相应的所有 IOPS/IOCS 都会置位,如图7。此时,ET200M IOPS/IOCS 位全部置位,ET200M 此时可能掉站。
图07
地址寄存器指令说明见表。 表 地址寄存器指令说明 1.+AR1加累加器1至地址寄存器1(+AR1、+AR1<P#Byte. Bit>) 使用该指令是将地址寄存器AR1的内容加上作为地址偏移量的累加器1中低字的内容,或加上指令中的16位常数,结果在AR1( AR2)中。首先将整数(16位)扩展为符号正确的24位,然后将其加到AR1的低有效的24位(AR1中的相对地址的部分)。在AR1( AR2)中,区域ID的部分(第24~ 26位)保持不变。要加到AR1、AR2的内容中的整数(16位)由ACCU 1的低字中的值指定。允许值的范围为-32768~+32767。参数P#Byte. Bit(被加到AR1或AR2上的地址)的数据类型为指针常数。要加到AR1、AR2的内容中的偏移量由参数P#Byte,Bit地址指定。指令的执行与状态位无关,而且对状态位没有影响。 +AR1:加地址寄存器1中内容的整数(16位)通过累加器1低字中的数值定义,允许范围为-32768~+32767。 +AR1<P#Byte. Bit>:要加上的偏移量通过<P#Byte. Bit>地址定义。 编程示例1: L +300 说明:将数值装入累加器1低字中 +AR1 将累加器1低字中的内容(整数,16位)加到地址寄存器1 编程示例2: + AR1 P#300.0 说明:将偏移量300.0加到地址寄存器1 2.+AR2加累加器1至地址寄存器2*(+AR2、+LAR2<P#Byte. Bit>) 使用该指令,可以将语句中或累加器1低字中定义的偏移量加至地址寄存器2。首先将整数(16位)扩展为带有其正确符号的2位数,然后加到地址寄存器2的低有效24位(地址寄存器2中部分相关地址)。地址寄存器2中ID区部分(位24、25和26)保持不变。指令的执行与状态位无关,而且对状态位没有影响。 +AR2:加地址寄存器2中内容的整数(16位)通过累加器1低字中的数值定义,允许范围为-32768~+32767。 +AR2<P#Byte. Bit>:要加上的偏移量通过<P#Byte. Bit>地址定义。 L+300 说明:将数值装入累加器1低字中 +AR2 将累加器1低字中的内容(整数,16位)加到地址寄存器2 +AR2 P#300.0 说明:将偏移量300.0加到地址寄存器2 |