M220.2
^SMB.Error*
CP340®件抱址512
LKDDR
STATUS
LWO
错谏代两
農示发送奴it块地址対切弘阂1不能烦右—
DB_HO
叢示开始宇节号为D
gflDBBO.皆入范围WEi恥□——
DBB_W0
数据七度t范031~M2G皿
此虚为8个宇节DBS*DBDZO0—
LEH
程序段4
CKP>=1
MOVE
DBS.rm—
IJV1
1一
III
14——
IU2
程序段5
i
程序运行
II
程序段6调用FB2“P-RCV
EM
FB2
ENO
woon4
EN_R
NPR
"RC¥_Fin^hw
E
ERROR
iioon叫
"RCV.Error"
-to5心白IN
LADDR
LEN
孩咬旳Ts■■且长厦
DB_N0
STATUS
T
DEB_NO
LiIT丄
梢误代码
背景数据块
DE7
"切_亡強_1/
M220.3
Kead_Enable
中止接收故据——
CP34D硬件地址512——
表示接收数据块地址为D时8—
赛示开始宇节号为0
IpDBEO,输入范阖0〜£1如0——
P_RCV无参数检查,如出现无效参数,CPU将切换到STOP模式,必须先完成P_RCV功能块的CP_CPU启动机制,则CPU从STOP切换到RUN模式后,CP340才能接收到请求。
FC61协议处理子程序程序段1〜12
当DB5.DBW4
读对应仪表
仪表地址
DB5.DBB0
DB5.DBB1
DB5.DBB2
=1
1#进线
1
B#16#B6(182)
B#16#E8(232)
=2
2#进线
2
B#16#B6(182)
B#16#DB(219)
=3
2#机
3
B#16#B7(183)
B#16#A(10)
=4
5#机
4
B#16#B6(182)
B#16#BD(189)
=5
3#机
5
B#16#B7(183)
B#16#6C(108)
=6
4#机
6
B#16#B7(183)
B#16#5F(95)
=7
变频器
7
B#16#B6(182)
B#16#DB(142)
=8
?
8
B#16#85(133)
B#16#4B(75)
=9
6#机三相电压
15
B#16#85(133)
B#16#39(57)
=10
6#机三相电流
15
B#16#4(4)
B#16#FB(251)
=11
6#机有功/无功功率
15
B#16#84(132)
B#16#FC(252)
=12
6#机有功/无功电度
15
B#16#45(69)
B#16#18(24)
程序段13
若DB5.DBW4<8
MOVE
DB5.DBB0
B#16#3
B#16#F
B#16#9F
B#16#0
B#16#21
DB5.DBB1
DB5.DBB2
DB6.DBB0从站地址)
DB6.DBB1读寄存器指令03)
DB6.DBB2寄存器起始地址高位)
DB6.DBB3寄存器起始地址低位)
DB6.DBB4读取数据个数高位)
DB6.DBB5读取数据个数低位)
tDB6.DBB6(CRC!
环校验码高位)tDB6.DBB7CRCf环校验码低高位)
程序段14
若DB5.DBW4=8
MOVE
DB5.DBB0tDB6.DBB0从站地址)
B#16#3tDB6.DBB1读寄存器指令03)
B#16#0tDB6.DBB2寄存器起始地址高位)
B#16#0tDB6.DBB3寄存器起始地址低位)
B#16#0tDB6.DBB4读取数据个数高位)
B#16#21tDB6.DBB5读取数据个数低位)
DB5.DBB1tDB6.DBB6(CRC!
环校验码高位)
DB5.DBB2tDB6.DBB7CRCf环校验码低高位)
程序段15读6#机三相电流,寄存器地址40100〜40102
若DB5.DBW4=9
MOVE
DB5.DBB0tDB6.DBB0从站地址15)
B#16#3tDB6.DBB1读寄存器指令03)
B#16#0tDB6.DBB2寄存器起始地址高位)
B#16#64tDB6.DBB3寄存器起始地址低位,以十进制表示为100)
程序段16读6#机三相电压,寄存器地址40108〜40110
若DB5.DBW4=10
MOVE
DB5.DBB0tDB6.DBB0从站地址15)
B#16#3tDB6.DBB1读寄存器指令03)
B#16#0tDB6.DBB2寄存器起始地址高位)
B#16#6CtDB6.DBB3(寄存器起始地址低位,以十进制表示为108)
程序段17读6#机有功/无功功率,寄存器地址40116〜40117
若DB5.DBW4=11
MOVE
DB5.DBB0tDB6.DBB0从站地址15)
B#16#3tDB6.DBB1读寄存器指令03)
B#16#0tDB6.DBB2寄存器起始地址高位)
B#16#74tDB6.DBB3寄存器起始地址低位,以十进制表示为116)
程序段18读6#机有功/无功电度,寄存器地址40200〜40201
若DB5.DBW4=12
MOVE
DB5.DBB0tDB6.DBB0从站地址15)
B#16#3tDB6.DBB1读寄存器指令03)
B#16#0tDB6.DBB2寄存器起始地址高位)
B#16#C8tDB6.DBB3寄存器起始地址低位,以十进制表示为200)
程序段20(10〜12次数据读取共用)
若DB5.DBW4>=9
MOVE
B#16#0tDB6.DBB4读取数据个数高位)
B#16#6tDB6.DBB5读取数据个数低位)
DB5.DBB1tDB6.DBB6(CRC循环校验码高位)
DB5.DBB2tDB6.DBB7CRCf环校验码低高位)
程序段211#低压进线柜(地址1)
若DB8.DBW0=259(地址号1+功能号03=0000000100000011=28+3=256+3=259)
DB8.DBW21tDB5.DBW56(2#进线柜功率因数)
DB8.DBW29tDB5.DBW58(2#进线柜频率)
DB8.DBD3tDB5.DBD60(2#进线柜有功电度)
程序段232#机组(地址3)
若DB8.DBW0=771(地址号3+功能号03=0000001100000011=29+28+3=256*3+3=771)
MOVE
DB8.DBW63
TDB5.DBW64
(2#机组A相电压)
DB8.DBW65
T
DB5.DBW66
(2#机组B相电压)
DB8.DBW67
T
DB5.DBW68
(2#机组C相电压)
DB8.DBW43
T
DB5.DBW70
(2#机组A相电流)
DB8.DBW45
T
DB5.DBW72
(2#机组B相电流)
DB8.DBW47
T
DB5.DBW74
(2#机组C相电流)
DB8.DBW15
T
DB5.DBW76
(2#机组总有功功率)
DB8.DBW19
T
DB5.DBW78
(2#机组总无功功率)
DB8.DBW21
T
DB5.DBW80
(2#机组功率因数)
DB8.DBW29
T
DB5.DBW82
(2#机组频率)
DB8.DBD3
T
DB5.DBD84
(2#机组有功电度)
程序段24
3#机组
(地址5)
若DB8.DBW0=1027(以此类推)
MOVE
DB8.DBW63
T
DB5.DBW88
(3#机组A相电压)
DB8.DBW65
T
DB5.DBW90
(3#机组B相电压)
DB8.DBW67
T
DB5.DBW92
(3#机组C相电压)
DB8.DBW43
T
DB5.DBW94
(3#机组A相电流)
DB8.DBW45
T
DB5.DBW96
(3#机组B相电流)
DB8.DBW47
T
DB5.DBW98
(3#机组C相电流)
DB8.DBW15
T
DB5.DBW100
(3#机组总有功功率
DB8.DBW19
T
DB5.DBW102
(3#机组总无功功率)
DB8.DBW21
T
DB5.DBW104
(3#机组功率因数
DB8.DBW29
T
DB5.DBW106
(3#机组频率)
DB8.DBD3
T
DB5.DBD108
(3#机组有功电度)
程序段254#机组(地址6)
若DB8.DBW0=1283(以此类推)
MOVE
左地址同tDB5.DBW(112〜132)
程序段265#机组(地址4)
若DB8.DBW0=1539(以此类推)
MOVE
左地址同tDB5.DBW(136〜156)
程序段27变频器柜(地址7)
若DB8.DBW0=1795(以此类推)
MOVE
左地址同tDB5.DBW(160〜180)
程序段28电容器柜(地址8)
若DB8.DBW0=2051(以此类推)
MOVE
左地址同tDB5.DBW(184〜204)
程序段296#机组三相电压(地址15单位A,+100)
若DB4.DBW4=10且DB8.DBW0=384(地址号3+功能号03=0000111100000011=211+210+29+28+3=256*15+3=3843)
DB8.DBW3tI-DIt#UabtDI-Rt#Uab_1tDIV100tDB501.DBD62(”#机组数据块”.Uab)
DB8.DBW5tI-DIt#UbctDI-Rt#Ubc_1tDIV100tDB501.DBD66(”#机组数据块”.Ubc)
DB8.DBW7tI-DIt#UcatDI-Rt#Uca_1tDIV100tDB501.DBD70(”#机组数据块”.Uca)
程序段306#机组三相电流(地址15单位V,X80-1000)CT变比400/5
若DB4.DBW4=11且DB8.DBW0=3843(以此类推)
DB8.DBW3tI-DIt#IatDI-Rt#Ia_1tDIV1000t#Ia_2tMUL80tDB501.DBD74(”6#机组数据块”.Ia)DB8.DBW5tI-DIt#IbtDI-Rt#Ib_1tDIV1000t#Ib_2tMUL80tDB501.DBD78(”6#机组数据块”.Ib)
DB8.DBW7tI-DIt#ictDI-Rt#lc_1tDIV1000t#|c_2tMUL80tDB501.DBD82(”6#机组数据块”lc)
程序段316#机组有功/无功功率(地址15,整型数,单位KW和KVARX8-1000)
若DB4.DBW4=12且DB8.DBW0=3843(以此类推)
DB8.DBW3tI-DIt#WtDI-Rt#W_1tMUL0.08tDB501.DBD86(”6#机组数据块”.W)
DB8.DBW5tI-DIt#QtDI-Rt#Q_1tMUL0.08tDB501.DBD90(”#机组数据块”.Q)
程序段326#机组有功/无功电度(地址15,长整型数,单位KWH和KVARH十10)
若DB4.DBW4=13且DB8.DBW0=3843(以此类推)
DB8.DBW3tDI-Rt#WWtDIV10tDB501.DBD94(”6#机组数据块”.WW)
DB8.DBW7tDI-Rt#QQtDlV10tDB501.DBD96(”6#机组数据块”.QQ)
程序段332#进线有功电度(长整型数,单位KWH,+10000)
DB8.DBD60tDI-RtDB8.DBD212tDIV10000tDB5.DBD212
程序段342#机组有功电度(长整型数,单位KWH,+10000)
DB8.DBD84tDI-RtDB8.DBD220tDIV10000tDB5.DBD220
程序段355#机组有功电度(长整型数,单位KWH,-10000)
DB8.DBD132tDI-RtDB8.DBD224tDIV10000tDB5.DBD224
程序段363#机组有功电度(长整型数,单位KWH,+10000)
DB8.DBD108tDI-RtDB8.DBD?
tDIV10000tDB5.DBD?
程序段374#机组有功电度(长整型数,单位KWH,+10000)
DB8.DBD156tDI-RtDB8.DBD228tDIV10000tDB5.DBD228
程序段38变频器有功电度(长整型数,单位KWH,+10000)
DB8.DBD180tDI-RtDB8.DBD232tDIV10000tDB5.DBD232
程序段39电容柜有功电度(长整型数,单位KWH,+10000)
DB8.DBD204tDI-RtDB8.DBD236tDIV10000tDB5.DBD236
程序段40?
?
?
?
(长整型数,单位KWH)
DB10.DBD180tDI-RtDB5.DBD240