S7-200 SMART CPU模块提供5VDC和24VDC电源:
CPU有一个内部电源,用于为CPU、扩展模块、信号板提供电源和满足其他24VDC用户电源需求。请使用以下信息作为指导,确定CPU可以为组态提供多少电能(或电流)。
请参见特定CPU的技术规范,确定24VDC传感器电源功率预算,CPU提供的5 VDC 逻辑预算,以及扩展模块和信号板5VDC功率要求。请参考计算功率预算来确定CPU可以为您的组态提供多少电能(或电流)。
CPU为系统中的所有扩展模块提供5 VDC逻辑电源。请特别注意系统配置,确保CPU可提供所选扩展模块要求的5VDC电源。如果组态要求的电源超出CPU提供的电源范围,则必须拆下一些模块。
如果超出CPU功率预算,则可能无法连接CPU允许的***大数量模块。
CPU还提供了24V传感器电源,该电源可以为输入点、扩展模块上的继电器线圈电源或其他需求提供24V电源。必须手动将不同电源的公共端(M)连接在一起。
如果需要外部24VDC电源,则确保该电源未与CPU的传感器电源并联。为提高电气噪声保护能力,建议将不同电源的公共端(M)连接在一起。
将外部24 VDC电源与CPU的24VDC传感器的电源并联会导致这两个电源之间有冲突,因为每个电源都试图建立自己的输出电压电平。该冲突可能导致一个电源或两个电源的寿命缩短或立即发生故障,从而导致PLC系统意外运行。意外运行可能导致人员死亡、重伤或设备损坏。CPU的直流传感器电源和任何外部电源应给不同点供电。允许将多个公共端连接到一起。
S7-200 SMART 系统中的一些24VDC电源输入端口是互连的,并且通过一个公共逻辑电路连接多个M端子。例如,在数据表中指定为“非隔离”时,以下电路是互连的:CPU的24VDC、EM的继电器线圈的电源输入或非隔离模拟输入的电源。所有非隔离的M端必须连接到同一个外部参考电位。
将非隔离的M端子连接到不同参考电位将导致意外的电流,该电流可能导致PLC和任何连接设备损坏或允许不确定。不遵守这些准则可能会导致设备损坏或运行不确定,而后者可能导致死亡、人员重伤和财产损失。务必确保S7-200SMART系统中的所有非隔离M端子都连接到同一个参考电位。
表1. S7-200 SMART CPU V1.0 版本供电能力
CPU型号 | 电流供应 | |
---|---|---|
+5 VDC | +24 VDC(传感器电源) | |
CPU SR20 | 740mA | 300mA |
CPU ST40 | 740mA | 300mA |
CPU SR40 | 740mA | 300mA |
CPU CR40 | -- | 300mA |
CPU ST60 | 740mA | 300mA |
CPU SR60 | 740mA | 300mA |
表2. S7-200 SMART CPU V2.0及以上版本供电能力
CPU型号 | 电流供应 | |
---|---|---|
+5 VDC | +24 VDC(传感器电源) | |
CPU SR20/ST20 | 1400mA | 300mA |
CPU SR30/ST40 | 1400mA | 300mA |
CPU SR60/ST60 | 1400mA | 300mA |
CPU CR40/CR60 | -- | 300mA |
CPU CR20/30/40/60 s | -- | -- |
表3. CPU上的数字量输入所消耗的电流
CPU上的数字量 | 电流需求 | |
---|---|---|
+5VDC | +24VDC | |
每点输入 | - | 4mA/每输入 |
表4. 数字扩展模块所消耗的电流
数字扩展模块型号 | 电流供应 | |
---|---|---|
+5 VDC | +24 VDC | |
EM DE08 | 105mA | 8*4mA |
EM DT08 | 120mA | -- |
EM DR08 | 120mA | 8*11mA |
EM DT16 | 145mA | 输入:8*4mA |
EM DR16 | 145mA | 输入:8*4mA |
EM DT32 | 185mA | 输入:16*4mA |
EM D*** | 180mA | 输入:16*4mA |
表5.模拟扩展模块所消耗的电流
模拟扩展模块型号 | 电流供应 | |
---|---|---|
+5 VDC | +24 VDC | |
EM AE04 | 80mA | 40mA(无负载) |
EM AE08 | 80mA | 70mA(无负载) |
EM AQ02 | 60mA | 50mA(无负载) |
EM AQ04 | 60mA | 75mA(无负载) |
EM AM03 | 60mA | 30mA(无负载) |
EM AM06 | 80mA | 60mA(无负载) |
表6. RTD、TC扩展模块所消耗的电流
RTD/TC扩展模块型号 | 电流供应 | |
---|---|---|
+5 VDC | +24 VDC | |
EM AR02 | 80mA | 40mA |
EM AR04 | 80mA | 40mA |
EM AT04 | 80mA | 40mA |
表7. 信号板和DP扩展模块所消耗的电流
模拟扩展模块型号 | 电流供应 | |
---|---|---|
+5 VDC | +24 VDC | |
SB AQ01 | 15mA | 40mA(无负载) |
SB DT04 | 50mA | 2*4mA |
SB RS485/RS232 | 50mA | 不适用 |
SB AE01 | 50mA | 不适用 |
EM DP01 | 150mA | 30 mA;通信端口激活时 60 mA;通信端口加90mA/5V负载时 180 mA;通信端口加120mA/24V负载时 |
客户:我这边是个S7-200的PLC系统,226 CN PLC的port0口做modbus主站,读取一个仪表的数据,数据能通信,但是读过来的数据不对。
工程师:根据您的描述,那么应该已经通信上了,我们可以后再排查程序问题。首先请检查接线,引脚3是信号+,引脚8是信号-。
另外,请问有核实两边的数据存储格式是否一致吗?因为西门子plc的数据存储格式是低位高字节,按照以VW0为例,就是高8位为VB0,低8位为VB1.如果仪表那边是高位高字节,即:高8位为VB1,低8位为VB0.那么两边正好相反,即便通信上了,数据对不上是可能的。西门子的低位高字节数据存储格式示意请参见:
客户:好,我先去核实一下。= = = = = =
客户:您好,modbus通信已经没问题了。PLC这边数据已经读取进来,我想问下读到的数应该是什么格式的。我这边一个数65500,PLC这边为什么是负数。
工程师:PLC在程序中监控和运算多是以有符号整数进行的,VW或者VD的高位是符号位,如果对于Word来说,大于32767后数据为负。
通过modbus通信过来的数都是负数是吗?刚才65500的数是多少?除了程序块监控外,状态表在线监控,数据格式选择无符号后数据读取是否正常。
客户:哦,都是大数才为负数,应该是都大于32767的。状态表里譬如VW100吧,无符号数是65500,有符号数是-35,数据格式选择无符号的就正确。
工程师:数据存储实际上都是按照二进制进行的,只是读取它时的数据格式不同而已,您可以在状态表中选择无符号数。
客户:不是啊,我就是要正数。关键是我把这个数转换成实数后还带着负号,我port1口连了第三方的触摸屏,触摸屏上选择的是实数连接,读上来后屏那边显示的是负数,不行啊。
工程师:嗯~,请问您是怎么进行编程转换的。
客户:我就是先用I_DI,再DI_R。不行啊,大数就错了,小数才不带符号。
工程师:您先别着急,按照正常的编程方式,您的思路是正确的,可对于负数来说就不行了。可以换种思路来考虑,对于word或者d-word的格式来说,数据的高位是符号位。那么我们开始转换成双字的时候,去掉符号就行了。
客户:我也试过,让这个数与16#7F相乘来去掉符号位,那就不对了,数就不对了。你这也不行啊
工程师:请先不要着急,我说的不是这个方法。在转换成双字的时候不要把高位当作符号位,如下图,先来了解符号位的定义:
通过I_DI的转化,实际上是将VW0-VD0,可是如果将VW0直接放在VW2上,同时VW0清0,直接去读取VD0是什么情况?原先VW0中的符号位,在VW2中,并不是VD0的高位即符号位,在VD0里就是数据了。而与此同时,我们去掉了负号是吗。
举例:VW0=65500(无符号整数),经过I_DI给VD10.
对比:VD0,双字转换后的VD10,和仅仅将VW0传送给VW6后的VD4,这几个数的比较,请参见下面的实验结果:
客户:我明白了,是我把问题想复杂了,原来简单的传送就可以解决问题了。