新华XDPS工程师用户手册 b附录一 功能块.docx
- 文档编号:9723305
- 上传时间:2023-02-06
- 格式:DOCX
- 页数:113
- 大小:183.90KB
新华XDPS工程师用户手册 b附录一 功能块.docx
《新华XDPS工程师用户手册 b附录一 功能块.docx》由会员分享,可在线阅读,更多相关《新华XDPS工程师用户手册 b附录一 功能块.docx(113页珍藏版)》请在冰豆网上搜索。
新华XDPS工程师用户手册b附录一功能块
附录一XDPS预定义标准功能块说明
99.8.23
一、概述
XDPS的软件功能分DPU和MMI,MMI又包括OPU、ENG、HSU等,DPU又有VDPU、专用GTW等。
从C/S观点来看,DPU、VDPU、专用GTW、HSU等又是服务器,其它为客户。
所有软件功能可分解在不同的节点上实现。
XDPS的数据采集、报警检测、闭环控制、计算等必须在DPU上完成。
DPU的计算控制可由工程师组态修改和调试。
XDPS提供了符合IEC1131-3标准的控制算法语言,特别强化了其中的以功能块为基本的图形组态和调试语言,使组态和调试非常直观方便。
XDPS提供了各种常用的功能块,用户只需从这些功能块选出所需的,相互连接,就可实现DPU的图形组态,而无需了解编程语言。
用户还可用XDPS的工具生成自已特殊的功能块。
二、DPU简介
DPU称为分布式处理单元,是XDPS的控制器。
DPU是XDPS的一种功能,而并不具体到什么硬件。
我们往往将只实现DPU功能的软硬件一起称为DPU,将运行于MMI站上的DPU功能称VDPU,用于与外部设备接口的VDPU称为GTW。
每个DPU至少有一个节点号对应。
DPU通过实时网或内部路由器与其它DPU和MMI连接,实时网可以是冗余的,可以采用不同协议。
DPU可以通过I/O驱动与不同的I/O硬件连接。
但有的DPU(如只实现计算统计功能的DPU)可以没有直接的I/O连接,而是仅通过实时网与其它DPU交换数据。
DPU可以被冗余配置。
XDPS规定,冗余配置DPU的节点号占用1~20号和61~80号,相应的冗余DPU为21~40和81~100,即相差20。
而DPU以小号码对外标识。
如3号与23号DPU被认为是互为冗余的DPU,在发操作指令时,指明3号、23号也会接收。
对组态指令,则必须指明3号还是23号。
MMI的号取1~100中任一个号,但一般取在41~60之间。
单DPU或VDPU取1~100中任一号。
DPU运行后有三种状态,初始态、跟踪态和主控态。
其中跟踪态与主控态,DPU软件会跟踪自已的CPU状态、I/O状态作相应的自动切换,以便使主控机故障时,跟踪机可马上代替主控机。
另外,工程师调试工具也可请求或区别DPU的运行状态。
DPU刚启动时或组态的算法与主控DPU不同时,进入初始态,自检中以黄色标识。
DPU内部的数据分为DPU总体描述、页和功能块对象。
总体描述包含了DPU的说明信息和其中所有的页数。
每个页对象具有指定的执行周期。
而功能块对象只能存在于页中,同页中的功能块具有相同的计算周期。
页和功能块分别用页号和功能块号命名。
页和功能块具有执行序号,执行序号表达了它们在DPU中执行的次序。
具有较小执行序号的页和功能块先于具有较大执行序号的页和功能块执行。
用户可用在线调试工具更改页和块的执行序号,以调整执行次序。
但用户不可在线更改页号和功能块号。
三、DPU组态过程
XDPS的DPU组态工具有两个组态方式,离线和在线。
离线方式时,用户实质上仅打开一个数据文件,进行页、块功能的编辑、连接块的输入输出,然后存入这个数据文件。
在线组态方式时,用户必须先向被组态DPU登录,获得相关权限之后,才能对DPU读写。
用户可将离线生成的组态文件下装到DPU,也可将DPU运行的组态内容上装上来,进行写文件、修改和调试。
用户完全可以以在线方式对DPU页和功能块执行修改、删除、插入等等操作,同时可以看到DPU中的运行数据,进行直观的在线调试。
结束之后,用户须退出登录。
四、页
页Page,常用Pg或P表示。
页是XDPS中的一个基本对象。
功能块必须存在于页中。
页的实例中包含页号(名称)、执行序号、页状态、执行周期、最后修改日期时间和页的描述等属性,还包含了功能块对象实例。
页状态记录了页的工作状态,如是否被Disable等。
页状态只能被在线组态工具读取和修改。
执行周期表示了页被计算的周期。
周期通常取50ms、100ms、200ms、250ms、500ms、1s、2s、5s和0。
0表示本页不被周期计算,可能由特殊功能块按用户定义的方式调用计算。
页在计算时按页执行序号排序执行。
页描述记录了本页的功能、注释等与控制无关的信息。
五、功能块:
功能块FunctionBlock,常用FB或B来表示。
XDPS的功能块附合IEC-1131-3的标准。
功能块是XDPS中能被组态修改的最小对象。
几乎所有功能都需用功能块来实现。
功能块用户定义中包括三项内容:
输出、输入、参数。
功能块实例化后,还应包含功能块位号(即名称)、执行序号、状态、计算中间量。
XDPS以对象方式将所有数据封装在一起。
功能块之间传递的数据有三种类型:
布尔量(1字节)、浮点数(IEEE标准4字节)和长整型(4字节)。
但参数、中间量、状态等不受此限。
浮点与长整型统称模拟量,它们可以相互转递,功能块会自动转换,但用户需注意转换引起的精度损失。
布尔量只能传递给布尔变量。
功能块在计算时,输出量、状态、中间量都会更新,其它功能块可以取得其输出量的值,通过特殊功能块TQ也可间接取得其状态(转为n个布尔量),但不能取得其中间量的值。
输出量、状态、中间量的值不能被其它功能块改变,只能在其本身计算时有可能改变。
输出量可以为浮点、长整型、布尔量中的任何一种;状态为一个WORD,其中记录了本功能块处于Enable还是Disable状态(Disable时功能块不再被计算)、本功能块的输入是否有坏点而使本块输出变成不可信、本功能块接收的点是否超时(用于网络和I/O模块);中间量可以是任何软件允许的类型,与用户是无关的,它记录了功能块的计算状态。
每个功能块都有一个状态字,描述了本功能块在运行中的状态。
功能块的状态可安用户定义的方式传递。
除一些特殊的功能块之外,所有的功能块都可定义为不传递、OR传递、AND传递。
如一个功能块有3个输入,则这3个输入所属功能块的品质会以用户定义的方式传递到这个功能块的品质上,而且空脚不参与品质传递。
传递方式定义在方式字中,0—不传递,1—OR传递,2—AND传递,缺省为不传递。
在功能块被初始化时,输出量、状态、中间量都会被设置初始。
其中输出量的初值是用户可定义的。
参数定义了功能块行为的方式或范围。
参数可以是多种数据类型,用户不必关心。
在用户组态和在线修改时,用户可定义修改参数值。
参数一经设置,不会改变。
也就是说参数是用户设置的,不会被功能块本身改变。
功能块的输入定义可以是一个指针,也可以是一个立即常数。
说它是一种定义,表明是用户设置的,计算时不会被改变。
如定义为一个指针时,指向其它或本功能块的输出,以功能块号B、哪个输出I的形式表示。
指向的数据只能为浮点、长整型、布尔型三种类型。
布尔型的输出只能连到布尔型的输入上,浮点或长整型输出只能连到浮点或长整型的输入上。
同页内用B.I指针表示,P隐含为本页。
B.I为全1时为NULL指针,表示本输入点无可取数据。
页间引用必须通过特定的功能块实现,它们是PgAI和PgDI,被引用的必须为PgAO,PgDO或其它I/O模块。
输入也可被定义为一个立即常数,立即常数也必须为浮点、长整型、布尔型数据中的一种。
这样XDPS任何一个功能块的输入可被连接到常数上,使变量变为参数。
这个功能有很大灵活性,可变限的功能块都可用此特性实现。
简单地说,输入可以是指针、NULL(空指针)、立即常数。
功能块可以分为上下网I/O模块、硬件I/O模块、页间I/O模块、模拟函数、选择比较器、控制算法、逻辑运算、逻辑控制算法、操作器等等。
详见具体说明。
1、XDPS实时网I/O功能块
1.1模拟量下网功能块XNETAI,ID=100
图形表示:
无显式输入XNETAIY
─→
标记说明:
标记名
数据类型
缺省值
描述
输出Y
float
0.0
参数GID
word
FFFFH
模拟点全局ID
参数T
word
500
超时周期,取10~36000(x10ms)
算法说明:
本功能块将其它DPU上网的模拟点取下,存放在Y中,供其它功能块读取。
如果网上点为坏点,则本模块状态为坏状态。
如在指定超时时间内未收到点值,则本模块状态为超时状态并置为坏点。
后续模块可使用这些状态作为坏点标志。
1.2开关量下网功能块NETDI,ID=101
图形表示:
无显式输入XNETDID
─→
标记说明:
标记名
数据类型
缺省值
描述
输出D
bool
0
参数GID
word
FFFFH
开关点全局ID
参数T
word
500
超时周期,取10~36000(x10ms)
算法描述:
本功能块将其它DPU上网的胳点取下,存放在D中,供其它功能块读取。
如果网上点为坏点,则本模块状态为坏状态。
如在指定超时时间内未收到点值,则本模块状态为超时状态并置为坏点。
后续模块可使用这些状态作为坏点标志。
1.3模拟量上网功能块XNETAO,ID=102
图形表示:
─→
XXNETAO无显式输出
标记说明:
标记名
数据类型
缺省值
描述
输入X
float
null
以B.I方式表示的指针,或是立即浮点数/长整形
参数GID
word
FFFFH
模拟点全局ID
参数SH
word
0
是否被其它DPU共享标记,0=不共享
参数T
word
1s
上网周期,取0.5,1,2,5,10s(内部x100ms),同页周期
参数HH
float
0.0
报警高高限,如HH==LL,高高低低限对不存在
参数H
float
0.0
报警高限,如H==L,高低限对不存在
参数L
float
0.0
报警低限,应有HH>=H>=L>=LL
参数LL
float
0.0
报警低低限,否则需自动设相应的P>5
参数DB
float
0.0
报警死区,报警恢复时加入DB
参数Phh,Mhh
byte,byte
0,5H
高高报警优先级和缺省记录方式
参数Ph,Mh
byte,byte
0,5H
高报警优先级和缺省记录方式
参数Pl,Ml
byte,byte
0,5H
低报警优先级和缺省记录方式
参数Pll,Mll
byte,byte
0,5H
低低报警优先级和缺省记录方式
参数R
float
0.0
速率报警限,如==0.0,速率报警限不存在
参数Pr,Mr
byte,byte
0,5H
速率报警优先级和缺省记录方式
参数DB1
float
0.0
增量重复报警值,0.0=无此功能
参数DB2
float
0.0
减量重复报警值,0.0=无此功能
参数T1
word
0
延迟重复报警时间,0~36000(0.1秒),0=无此功能
算法说明:
本功能块将其它功能块的浮点和长整形变量广播到XPDS实时网上去,并作报警检查。
如果前续功能块为坏状态,则输出为坏全局点。
上网值等于输入值。
其中:
报警优先级:
取值0~5的数字,0为最低,5为最高。
缺省记录方式:
b0=显示,b1=打印,b2=记录。
b6=1时,报警复归时不自动确认报警。
b7=1时,本报警限不存在、不检查。
增量和减量重复报警是指超过最外报警限DB1或DB2时,再发一次报警信息。
延迟重复报警是指警维持时间大于T1时,再发一次报警信息。
本功能块需中间变量:
报警时间、复归时间、确认时间、未确认次数。
状态字中AlarmOn/Off是针对所有报警限的。
1.4开关量上网功能块XNETDO,ID=103
图形表示:
─→
ZXNETDO无显式输出
标记说明:
标记名
数据类型
缺省值
描述
输入Z
bool
null
以B.I方式表示的指针,或是立即布尔数
参数GID
word
FFFFH
开关全局ID
参数SH
word
0
是否被其它DPU共享标记,0=不共享
参数T
word
1s
上网周期,取0.5,1,2,5,10s(内部x100ms),同页周期
参数AA
wordt
0
报警定义,0=无报警,1=0报警,2=1报警
参数P,M
byte,byte
0,5H
报警优先级和缺省记录方式
参数T1
word
0
延迟重复报警时间,0~36000(x0.1秒),0=无此功能
算法说明:
本功能块将其它功能块的布尔变量广播到XPDS实时网上去,并作报警检查。
如果前续功能块为坏状态,则输出为坏全局点。
上网值等于输入值。
其中:
报警优先级:
取值0~5的数字,0为最低,5为最高。
缺省记录方式:
b0=显示,b1=打印,b2=记录。
b6=1时,报警复归时不自动确认报警。
b7=1时,本报警限不存在、不检查。
增量和减量重复报警是指超过最外报警限DB1或DB2时,再发一次报警信息。
延迟重复报警是指警维持时间大于T1时,再发一次报警信息。
本功能块需中间变量:
报警时间、复归时间、确认时间、未确认次数。
状态字中AlarmOn/Off是针对所有报警限的。
1.5模拟量输入功能块XAI,ID=104
图形表示:
补偿点─→
XXAIY
─→
标记说明:
标记名
数据类型
缺省值
描述
输出Y
float
0.0
输入X
float
null
补偿源测点,本点只在Cvt=CT类时有效
参数Addr
word
FFFFH
I/O地址(站号,板号,通道号)
参数Cvt
word
0
输入转换类型,缺省=线性
参数MaxAD
word
0F00H
与量程上限对应的AD值
参数MinAD
word
0300H
与量程下限对应的AD值
参数Av
float
0.0
RTD和TC时板的放大倍数,在MaxAD=MinAD=0时才用
参数R0
或I0
float
80.0
电桥式RTD采样电路时为电桥的标准电阻;
恒流源式RTD采样电路时为恒流源电流;
参数MaxY
float
100.0
量程上限
参数MinY
float
0.0
量程上限
参数Bias
float
0.0
零偏,用于较正零点,以工程量值表示
参数Flt
float
0.0
低通滤波的时间常数,单位秒。
0.0=无滤波功能
参数
按序捆绑XNetAO的所有参数
注:
Cvt输入转换类型
0-线性:
Y(n)=(MaxAD-MinAD)*AD(n)/(MaxY-MinY);参数Av,R0不用定义;
0~10V,0~5V,1~5V,0~10mA,4~20mA,-5V~+5V,测速值(=AD值)等都用此转换类型实现。
定义时需对I/O卡的AD范围有一定了解。
1-线性开方:
在以上基础上,最后开方。
如被开方值<0.0,则输出Y(n)=0.0。
2-直接浮点数转换:
Y(n)=输入的浮点数;参数MaxAD,、MinAD、Av,R0不用定义。
用于IEEE单精度浮点输入的场合。
10~19-RTD热电阻转换,具体定义了:
10=Cu50热电阻,11=Cu50热电阻(3mA恒流源),
12=Pt100热电阻,13=Pt100热电阻(3mA恒流源),
14=Pt10热电阻,15=Pt10热电阻(3mA恒流源),16=Cu53热电阻
20~25-CT热电偶转换,具体定义了:
20=K(EU)热电偶,,21=E(EA)热电偶,22=T热电偶,23=B热电偶
24=K(EU2)热电偶,,25=s热电偶
对于RTD和TC,必须定义量程限和与量程对应的MaxAD和MinAD值。
若MaxAD=MinAD=0,DPU将采用缺省的XDPS卡件的特定转换,此时量程限不参与转换,只用于判别越限故障;参数Av如填0.0,则DPU内部在Pt100时Av=20倍,在Cu50/Cu53时取Av=40倍,在TC时Av=200倍;参数R0(或称I0),只用于RTD的场合,电桥时为桥臂电阻;恒流源时为恒流源电流。
算法说明:
本功能块从一个I/O地址取得一个A/D值,进行转换,将工程值结果存放在Y中,供其它功能块读取。
如果I/O通道有故障,则本模块状态为坏状态。
后续模块可使用这些状态作为坏点标志。
转换时,如为TC,则作相应的冷端补偿;再在工程值加上Bias;所有类型在工程转换时,工程值限制在(MinY-量程*10%)到(MaxY+量程*10%)之间,超越或达到此限的,本功能块壮态将标识为溢出OFW,品质为Bad。
转换后,算法再进行低通滤波(如定义的话),滤波的传递函数为1/(1+TS),T即为参数Flt。
滤波后,进行捆绑的XNetAO处理。
1.6开关量输入功能块XDI,ID=105
图形表示:
无显式输入XDID
─→
标记说明:
标记名
数据类型
缺省值
描述
输出D
bool
0
参数Addr
word
FFFFH
I/O地址(站号,板号,通道号)
参数Cvt
word
0
输入方式,0=不求反;1=求反
参数TD_On
word
0
0->1,需延迟的周期数
参数TD_Off
word
0
1->0,需延迟的周期数
参数……
按序捆绑XNetDO的所有参数
算法说明:
本功能块从一个XDPSI/O地址取得一个bit,安是否取反定义Cvt,转换为bool值,再进行TD_On或TD_Off滤波,将结果存放在D中,供其它功能块读取。
最后,进行捆绑的XNetDO处理。
如果I/O通道有故障,则本模块状态为坏状态。
后续模块可使用这些状态作为坏点标志。
1.7模拟量输出功能块XAO,ID=106
图形表示:
─→
XXAO无显式输出
标记说明:
标记名
数据类型
缺省值
描述
输入X
float
0.0
以B.I方式表示的指针,或是立即浮点数
参数Addr
word
FFFFH
I/O地址(站号,板号,通道号)
参数Cvt
word
0
转换类型,0=输出AD,1=输出浮点数
参数MaxAD
word
0FFFH
与量程上限对应的AD值(20mA)
参数MinAD
word
0333H
与量程下限对应的AD值(4mA)
参数MaxX
float
100.0
量程上限
参数MinX
float
0.0
量程下限
参数Res
word
0
保留=0,用于设置I/O卡失电保护方式
参数……
按序捆绑XNetAO的所有参数
算法描述:
本功能块将其它功能块的模拟点送到XDPSAO输出端子上。
最后,进行捆绑的XNetAO处理。
在Cvt=0时,输出AD(n)=X(n)*(MaxAD-MinAD)/(MaxX-MinAD)
在Cvt=1时,输出=X(n),本类型主要用于通讯驱动场合,向其它系统直接输出IEEE单精度浮点数。
1.8开关量输出功能块XDO,ID=107
图形表示:
─→
ZXDO无显式输出
标记说明:
标记名
数据类型
缺省值
描述
输入Z
bool
0
以B.I方式表示的指针,或是立即布尔数
参数Addr
word
FFFFH
I/O地址(站号,板号,通道号)
参数Cvt
word
0
输出方式:
=0,不求反输出,=1求反输出
参数Res
word
0
保留=0,用于设置I/O卡失点保护方式
参数……
按序捆绑XNetDO的所有参数
算法说明:
本功能块将其它功能块的布尔点送到XDPSDO输出端子上。
最后,进行捆绑的XNetDO处理。
如果前续功能块为坏状态,则本功能块不输出bit值。
1.9脉冲量输入功能块XPI,ID=108
图形表示:
─→
RstXPIY
─→
标记说明:
标记名
数据类型
缺省值
描述
输出Y
float
0
累计的脉冲数x系数K
输入Rst
bool
0
复位开关量,以B.I方式表示的指针,或是立即数
参数Addr
word
FFFFH
硬件I/O地址(站号,板号,通道号)
参数MaxAD
word
FFFFH
硬件寄存器满度值
参数K
float
1.0
脉冲系数。
=0.0时,输出为增量型
参数……
按序捆绑XNetAO的所有参数
算法说明:
本功能块从一个XDPSI/O地址取得一个脉冲计数值,转换为long值乘以K,将结果存放在Y中,供其它功能块读取。
最后,进行捆绑的XNetAO处理。
输入开关量Rst由0变到1时,Y(n)=0.0。
在K!
=0.0时,输出Y(n)=Y(n-1)+((AD(n)-AD(n-1))modMaxAD)*K
在K==0.0时,输出Y(n)=((AD(n)-AD(n-1))modMaxAD)
DPU刚启动时,需跟踪一次AD值。
如果I/O通道有故障,则本模块状态为坏状态。
后续模块可使用这些状态作为坏点标志。
1.10页间模拟量输入功能块PgAI,ID=110
图形表示:
无显式输入PgAIY
─→
标记说明:
标记名
数据类型
缺省值
描述
输出Y
float
0.0
参数Page
word
FFFFH
被引用页的页号
参数Block
word
FFFFH
被引用的PgAO的功能块号
算法说明:
本功能块从一个XDPS本DPU中另外页的PgAO、XAI、XAO、XPI其中之一取得模拟值,将结果存放在Y中,供本页其它功能块读取。
本功能块传递被引用的功能块的状态。
如被引用模块不存在或被引用模块不是上述4个模块之一,则本功能块状态为坏,输出保持不变。
1.11页间开关量输入功能块PgDI,ID=111
图形表示:
无显式输入PgDID
─→
标记说明:
标记名
数据类型
缺省值
描述
输出D
bool
0
参数Page
word
FFFFH
被引用页的页号
参数Block
word
FFFFH
被引用的PgDO的功能块号
算法说明:
本功能块从一个XDPS本DPU中另外一页的PgDo、XDI、XDO其中之一取得开关值,将结果存放在D中,供本页其它功能块读取。
本功能块传递被引用的功能块的状态。
如被引用模块不存在或被引用模块不是上述4个模块之一,则本功能块状态为坏,输出保持不变。
1.12页间模拟量输出功能块PgAO,ID=112
图形表示:
─→
XPgAO无显式输出
标记说明:
标记名
数据类型
缺省值
描述
输入X
float
0.0
以B.I方式表示的指针,或是立即浮点数
算法说明:
本功能
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 新华XDPS工程师用户手册 b附录一 功能块 新华 XDPS 工程师 用户手册 附录