XDPS系统标准功能块手册.docx
《XDPS系统标准功能块手册.docx》由会员分享,可在线阅读,更多相关《XDPS系统标准功能块手册.docx(116页珍藏版)》请在冰豆网上搜索。
XDPS系统标准功能块手册
XDPS系统标准功能块手册
精品汇编资料
前言
手册用途
本手册详细讲述了XDPS系统内的各种标准功能块的输入、输出、参数及算法说明。
本手册是工程师组态的必备工具。
手册内容
第一章概述
第二章XDPS实时网I/O功能块
第三章模拟函数
第四章时间过程函数
第五章控制算法
第六章逻辑电路
第七章操作器
第八章特殊功能块
手册的阅读对象
XDPS系统的使用、维护、管理人员
XDPS系统的工程项目开发人员
XDPS系统开发、技术改造的研发人员
相关手册
《XDPS工程师手册》
版本2.0
c0116011
第1章概述1
1概述1
2DPU简介1
3DPU组态过程2
4页2
5功能块3
第2章XDPS实时网I/O功能块5
1模拟量下网功能块XNETAI,ID=1005
2开关量下网功能块XNETDI,ID=1015
3模拟量上网功能块XNETAO,ID=1026
4开关量上网功能块XNETDO,ID=1037
5模拟量输入功能块XAI,ID=1048
6开关量输入功能块XDI,ID=10510
7模拟量输出功能块XAO,ID=10611
8开关量输出功能块XDO,ID=10712
9脉冲量输入功能块XPI,ID=10813
10页间模拟量输入功能块XPgAI,ID=11014
11页间开关量输入功能块XPgDI,ID=11114
12页间模拟量输出功能块XPgAO,ID=11215
13页间开关量输出功能块XPgDO,ID=11315
第3章模拟函数17
12输入加法器ADDID=117
2乘法器MULID=217
3除法器DIVID=318
4开方器SQRTID=419
5取绝对值ABSID=519
6五次多项式POLYNOMID=620
78输入数学统计器SUM8ID=720
812段函数变换F(X)ID=821
9贝塞尔函数BESSEL,ID=922
10指数/对数函数/求模POW/LOG/MODID=1022
11三角和反三角函数TRIANGLEID=1123
12热力性质计算PTCalID=1224
13温度场计算模块FDM,ID=1525
14区间代数基本性质iProp,ID=1626
15区间代数四则运算iBsc,ID=1726
第4章时间过程函数29
1超前滞后模块LEADLAGID=2029
2滞后模块DELAYID=2130
3微分模块DIFFID=2231
4时域统计模块TSUMID=2331
5数字滤波FILTERID=2432
6斜坡信号发生器RMPID=2533
7段信号发生器f(t)ID=2634
812段信号发生器F(t12)ID=2735
9时域开关量统计模块TSUMDID=2836
第5章控制算法37
1二选一选择器TWOSELID=3037
2三选一选择器THRSELID=3137
3无扰切换模块SFTID=3238
4高低限幅器HLLMTID=3340
5高低限报警HLALMID=3440
6速率限制器RATLMTID=3541
7速率报警器RATALMID=3641
8偏差运算DEVID=3742
9PID运算EPIDID=3843
10闭锁型偏差PID运算模块EPID2ID=3945
112输出平衡模块BALANCE2ID=4046
12八输入平衡模块BALANCE8ID=4148
13数字驱动伺服模块DDSID=4249
14查表式模糊控制器FTABID=4350
15慢信号保护模块SAIProID=4451
16史密斯预测器SMITH,ID=4552
第6章逻辑电路53
12输入与ANDID=5053
22输入或ORID=5153
3反相器NOTID=5254
4异或器XORID=5355
58输入数量或QOR8ID=5455
6RS触发器ID=5556
7定时器TIMERID=5656
8计数器CNTID=5758
9模拟比较器CMPID=5859
10循环定时器CYCTIMERID=5959
11步序控制器STEPID=6060
12软件脉冲列输出模块SPOID=6162
13开关量选择模块DSFTID=6263
14开关首出序号指示FIRSTID=6364
第7章操作器65
1键盘模拟量增减KBMLID=7165
2数字手操器DEVICEID=7266
3简单数字手操器D/MAID=7371
4电气数字手操器EDEVICEID=7572
5增强型模拟软手操器ES/MAID=7775
6模拟软手操器S/MAID=7076
7带开关输出的模拟软手操器ADS/MAID=7478
第8章特殊功能块79
1品质(状态)测试模块TQID=8079
2触发执行事件EVENTID=8179
316个布尔变量转换为长整形变量B16TOLID=8280
4长整形变量转换为16位布尔个变量LTOB16ID=8381
5长整型模拟变量含义转换器LTOFID=8482
6节点(状态)测试模块TDPUID=8583
7I/O卡件测试模块TCardID=8884
8I/O站测试模块TNodeID=8984
9时间处理模块TPROID=9085
10时间记录模块TRECID=9186
11时间转换模块TtoSID=9286
12时间转换模块StoTID=9387
13模拟量隐式选择AxSelID=9488
14开关量隐式选择DxSelID=9588
15修改参数模块ChgParaID=9789
16I/O站测试模块TNode2ID=9690
概述
概述
XDPS的软件功能分DPU和MMI,MMI又包括OPU、ENG、HSU等,DPU又有VDPU、专用GTW等。
从客户(Client)/服务器(Server)观点来看,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~120中任一个号,但一般取在41~60或101~120之间。
单DPU或VDPU取1~120中任一号。
DPU运行后有三种状态,初始态、跟踪态和主控态。
其中跟踪态与主控态,DPU软件会根据自已的CPU状态、I/O状态和网络状态作相应的自动切换,以便在主控机故障时,跟踪机可马上代替主控机正常工作。
另外,工程师也可使用调试工具请求切换DPU。
DPU刚启动时或组态的算法与主控DPU不同时,进入初始态,自检中以黄色标识。
DPU内部的数据分为DPU总体描述、页和功能块对象。
总体描述包含了DPU的说明信息和其中所有的页数。
每个页对象具有指定的执行周期。
而功能块对象只能存在于页中,同页中的功能块具有相同的计算周期。
页和功能块分别用页号和功能块号命名。
页和功能块具有执行序号,执行序号表达了它们在DPU中执行的次序。
具有较小执行序号的页和功能块先于具有较大执行序号的页和功能块执行。
用户可用在线调试工具更改页和块的执行序号,以调整执行次序。
但用户不可在线更改页号和功能块号。
DPU组态过程
XDPS的DPU组态工具有两个组态方式,离线和在线。
离线方式时,用户实质上仅打开一个数据文件,进行页、块功能的编辑、连接块的输入输出,然后存入这个数据文件。
在线组态方式时,用户必须先向被组态DPU登录,获得相关权限之后,才能对DPU读写。
用户可将离线生成的组态文件下装到DPU,也可将DPU运行的组态内容上装上来,进行写文件、修改和调试。
用户完全可以以在线方式对DPU页和功能块执行修改、删除、插入等等操作,同时可以看到DPU中的运行数据,进行直观的在线调试。
结束之后,用户须退出登录。
页
页(Page),常用Pg或P表示。
页是DPU组态软件的一个基本对象。
功能块必须存在于页中。
页的实例中包含页号(名称)、执行序号、页状态、执行周期、最后修改日期时间和页的描述等属性,还包含了功能块对象实例。
页状态记录了页的工作状态,如是否被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传递,缺省为OR传递。
在功能块被初始化时,输出量、状态、中间量都会被设置为初值。
其中输出量的初值是用户可定义的。
参数定义了功能块行为的方式或范围。
参数可以是多种数据类型,用户不必关心。
在用户组态和在线修改时,用户可定义修改参数值。
参数一经设置,不会改变。
也就是说参数是用户设置的,不会被功能块本身改变。
功能块的输入定义可以是一个指针,也可以是一个立即常数。
说它是一种定义,表明是用户设置的,计算时不会被改变。
如定义为一个指针时,指向其它或本功能块的输出,以功能块号B、哪个输出I的形式表示。
指向的数据只能为浮点、长整型、布尔型三种类型。
布尔型的输出只能连到布尔型的输入上,浮点或长整型输出只能连到浮点或长整型的输入上。
同页内用B.I指针表示,P隐含为本页。
B.I为全1时为NULL指针,表示本输入点无可取数据。
页间引用必须通过特定的功能块实现,它们是XPgAI和XPgDI,被引用的必须为XPgAO,XPgDO或其它上网模块。
输入也可被定义为一个立即常数,立即常数也必须为浮点、长整型、布尔型数据中的一种。
这样XDPS任何一个功能块的输入可被连接到常数上,使变量变为参数。
这个功能有很大灵活性,可变限的功能块都可用此特性实现。
简单地说,输入可以是指针、NULL(空指针)、立即常数。
功能块可以分为上下网I/O模块、硬件I/O模块、页间I/O模块、模拟函数、选择比较器、控制算法、逻辑运算、逻辑控制算法、操作器等等。
详见具体说明。
描述中用NULL表示空指针,内部表示用<65535.65535>。
布尔量在算法模块上用1/0表示真/假,内部用T/F表示真/假。
XDPS实时网I/O功能块
模拟量下网功能块XNETAI,ID=100
图形表示:
无显式输入XNETAIY
─→
标记说明:
标记名
数据类型
缺省值
描述
输出Y
float
0.0
取网上指定点的模拟量
参数GID
word
FFFFH
模拟点全局ID
参数T
word
500
超时周期,取10~36000(x10ms)
算法说明:
本功能块将其它DPU上网的模拟点取下,存放在Y中,供其它功能块读取。
如果网上点为坏点,则本模块状态为坏状态。
如在指定超时时间内未收到点值,则本模块状态为超时状态并置为坏点。
后续模块可使用这些状态作为坏点标志。
开关量下网功能块XNETDI,ID=101
图形表示:
无显式输入XNETDID
─→
标记说明:
标记名
数据类型
缺省值
描述
输出D
bool
F
取网上指定点的开关量
参数GID
word
FFFFH
开关点全局ID
参数T
word
500
超时周期,取10~36000(x10ms)
算法描述:
本功能块将其它DPU上网的开关量点取下,存放在D中,供其它功能块读取。
如果网上点为坏点,则本模块状态为坏状态。
如在指定超时时间内未收到点值,则本模块状态为超时状态并置为坏点。
后续模块可使用这些状态作为坏点标志。
模拟量上网功能块XNETAO,ID=102
图形表示:
─→
XXNETAO无显式输出
标记说明:
标记名
数据类型
缺省值
描述
输入X
float
Null
以B.I方式表示的指针,或是立即浮点数/长整形
参数GID
word
FFFFH
模拟点全局ID
参数SH
word
0
低字节为是否被其它DPU共享标记
高字节为报警复归时不自动确认报警标记
0=不共享且报警复归时不自动确认
1=共享且报警复归时不自动确认
256=不共享且报警复归时自动确认
257=共享且报警复归时自动确认
参数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
报警低低限
参数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=无此功能
算法说明:
本功能块将其它功能块的浮点和长整形变量广播到XPDS实时网上去,并作报警检查。
如果前续功能块为坏状态,则输出为坏全局点。
上网值等于输入值。
其中:
报警优先级:
取值0~5的数字,0为最低,5为最高。
缺省记录方式:
b7=1时,本报警限不存在、不检查。
增量和减量重复报警是指超过最外报警限DB1或DB2时,再发一次报警信息。
延迟重复报警是指报警维持时间大于T1时,再发一次报警信息。
开关量上网功能块XNETDO,ID=103
图形表示:
─→
ZXNETDO无显式输出
标记说明:
标记名
数据类型
缺省值
描述
输入Z
bool
Null
以B.I方式表示的指针,或是立即布尔数
参数GID
word
FFFFH
开关全局ID
参数SH
word
0
低字节为是否被其它DPU共享标记
高字节为报警复归时不自动确认报警标记
0=不共享且报警复归时不自动确认
1=共享且报警复归时不自动确认
256=不共享且报警复归时自动确认
257=共享且报警复归时自动确认
参数T
word
1s
上网周期,取0.5,1,2,5,10s(内部x100ms),同页周期
参数AA
word
0
报警定义,0=无报警,1=0报警,2=1报警
参数P,M
byte,byte
0,5H
报警优先级和缺省记录方式
参数T1
word
0
延迟重复报警时间,0~36000(秒),0=无此功能
算法说明:
本功能块将其它功能块的布尔变量广播到XPDS实时网上去,并作报警检查。
如果前续功能块为坏状态,则输出为坏全局点。
上网值等于输入值。
其中:
报警优先级:
取值0~5的数字,0为最低,5为最高。
缺省记录方式:
b7=1时,本报警限不存在、不检查。
延迟重复报警是指警维持时间大于T1时,再发一次报警信息。
状态字中AlarmOn/Off是针对所有报警限的。
模拟量输入功能块XAI,ID=104
图形表示:
补偿点─→
XXAIY
─→
标记说明:
标记名
数据类型
缺省值
描述
输出Y
float
0.0
取指定卡件模入的工程量
输入X
float
Null
补偿源测点,本点只在Cvt=CT类时有效
参数Addr
word
Null
I/O地址(站号,板号,通道号)
参数Cvt
word
0
输入转换类型,缺省=线性
参数MaxAD
word
3840
与量程上限对应的AD值
参数MinAD
word
768
与量程下限对应的AD值
参数Av
float
0.0
RTD和TC时板的放大倍数
参数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的所有参数
AV—缺省值:
对PT100为20;对CU50/CU53为40;对TC为200。
R0--缺省值:
对CU50/CU53为40;对PT100为80。
按序捆绑XnetAO的所有参数指XnetAO从GID到T1的22个参数。
注:
Cvt输入转换类型
0-线性:
K(n)=(AD(n)-MinAD)/(MaxAD-MinAD);R0为小信号切除限值,当K(n)的绝对值小于R0时,K(n)=0;
Y(n)=(MaxY-MinY)*K(n)+MinY;参数Av无意义。
0~10V,0~5V,1~5V,0~10mA,4~20mA,-5V~+5V,测速值(=AD值)等都用此转换类型实现。
定义时需对I/O卡的AD范围有一定了解。
1-线性开方:
K(n)=(AD(n)-MinAD)/(MaxAD-MinAD);R0为小信号切除限值,当K(n)的绝对值小于R0时,K(n)=0;
Y(n)=(MaxY-MinY)*SQR(K(n))+MinY;参数Av无意义。
如被开方值K(n)<0.0,则输出Y(n)=0.0,该输出点为坏点。
2-直接浮点数转换:
Y(n)=Av*输入的浮点数;Av为比例系数,缺省(Av=0)为1。
参数MaxAD,、MinAD、R0不用定义。
用于IEEE单精度浮点输入的场合。
3-16位带符号AD值直接转换:
Y(n)=Av*AD(n);Av为比例系数,缺省(Av=0)为1。
参数MaxAD,、MinAD、R0不用定义。
4-32位AD值二进制不变转换:
Y(n)=Av*f32;Av为比例系数,缺省(Av=0)为1。
参数MaxAD,、MinAD、R0不用定义。
用于交流采样卡中浮点数f32由相邻两个16位通道拼接而成的输入,低在前,高在后。
5-16位带符号AD值倒数转换:
Y(n)=Av/AD(n);Av为比例系数,缺省(Av=0)为1。
参数MaxAD,、MinAD、R0不用定义。
10~19-RTD热电阻转换,具体定义了:
10=Cu50热电阻,11=Cu50热电阻(3mA恒流源),
12=Pt100热电阻,13=Pt100热电阻(3mA恒流源)