可编程计算组件

    可编程计算组件面向的客户要求比较高,但其主要目的是提供给软件制造企业在为客户提供解决方案时可通过动态编程的方式来耦合其业务逻辑。 有些应用系统中有部分业务数据需要通过现场实时数据进行相应的算法产生,这时编程计算组件可帮助您的应用系统和业务解耦,可编程计算组件适合:电力行业(SIS系统,实时系统) 、气象行业、航空行业、集团企业的数据集中化的应用解决方案等。

Apace计算服务支持单点、多点计算,包括对多个Apace数据库中的数据点进行综合计算。计算法则采用的是全编码式数据计算扩展接口,算法可以使用C#VB.NETJscript三种语言进行编写。支持动态编译,每秒可对上万个数据点实时同步计算,每个计算法则的计算结果,可写入一个或多个数据点中。

支持引用自定义的程序集,让计算服务能处理更为复杂的计算法则成为可能,目前几乎已经可以完成任何所需的计算。

  

计算法则脚本编辑规范

C#语言为例

1:,计算脚本代码必须写入GetAlgorithmValue()函数体内,函数体外禁止加入其它的函数,如需要使用自定义函数建议写入到“公用函数体”内,如下:

  //必须的函数体GetAlgorithmValue,返回双精度结果

 

2:建议在编译通过后将上部分代码改为:

      

计算法则常用方法介绍

      this.CurrentPoint

描述:得到当前计算写入目标点信息;

返回类型:McbData

PointName

获取或设数据点标签名称格式:[ServiceName].[DirName].[PointName],总长度为20个字节其中包含.字符。

PointValue

获取或设置一个值,表示点标签的数据值,类型为双精度。

PointTime

获取或设置一个值,表示点标签时间戳,类型为整形。

Time

获取一个值,表示点标签时间戳,类型为DataTime

BindingName

获取绑定格式点名,也可理解为短点名:[PointName]

State

获取点标签状态,枚举类型 PointValueState

PointState

获取或设置一个值,表示点标签值状态,类型为Byte

PointDescribe

获取或设置点标签描述文本,总长度不能超过20个字节。

PointUnit

获取或设置点标签单位文本,总长度不能超过8个字节。

Position

获取或设置点标签在数据流中的位置。

ServiceDirName

获取点标签名称所对应的服务目录名:[ServiceName].[DirName]

实例代码:

  McbData calcpoint=  this.CurrentPoint;

  double calcvalue= calcpoint.PointValue;

 

      this.CurrentPointInfo

描述:得到当前计算写入目标点基本信息;

返回类型:PcmData

PointName

获取或设数据点标签名称格式:[ServiceName].[DirName].[PointName],总长度为20个字节其中包含.字符。

HighAlarm

获取或设置一个值,表示点标签的发生高报的界限值。

BosomAlarm

获取或设置一个值,表示点标签的发生中报的界限值。

LowAlarm

获取或设置一个值,表示点标签的发生低报的界限值。

AllowMaxValue

获取或设置一个值,表示点标签的有效值上限,当与AllowMinValue相等时界限值将不起作用

AllowMinValue

获取或设置一个值,表示点标签的有效值下限,当与AllowMaxValue相等时界限值将不起作用

OperationType

获取或设置点标签的业务类型,长度20个字节,如:锅炉专业点或气机专业点。

OperationCode

获取或设置点标签的业务代码, 长度20个字节。

DataShape

获取或设置一个值,表示点标签的数据形态,0: 动态 1:静态 2:自适应

StaticValue

获取或设置一个值,表示点标签静态时的值。

Precision

获取或设置一个值,表示点标签最大允许的精度值,255表示不做控制

HisStartTiem

获取或设置一个值,表示存放标签点历史数据的开始时间。

BindingName

获取绑定格式点名,也可理解为短点名:[PointName]

PointDescribe

获取或设置点标签描述文本,总长度不能超过20个字节。

PointUnit

获取或设置点标签单位文本,总长度不能超过8个字节。

Position

获取或设置点标签在数据流中的位置。

实例代码:

    

      GetPoint(点名称)

描述:得到指定点信息;

返回类型:McbData

实例代码:

   

      Apace.Client.NetClientManage.GetNetClient().GetPointValue(点名称)

描述:得到指定点信息;

返回类型:McbData

实例代码:

 

 

说明:

 计算脚本可以使用Apace.Client程序集的所有方法,可以实现Apace客户端几乎所有的功能 ,详细方法调用请参见《Apace开发手册C#》版本;

 

2.5.7 计算法则实例

     计算标签值自增

  

    计算标签随机值

   

    计算两标签点累加值

  

    多点循环累加值

 

    根据计算点名查找匹配点累加值

 

Apace是软动科技有限公司(以下简称“软动科技” )自主研发的一套基于分布式事务型的通用实时数据库系统,它主要应用于现代工业企业,包括电力、石油、矿山、化工、钢铁、电信、航空等领域。 Apace提供对实时时序数据的压缩、计算、存储、告警、分发、查询、统计功能,同时,为上层业务系统开发提供了丰富的应用接口。另外,Apace还拥有强大的组态图设计器以及Excel扩展报表插件。 系统引入了多种创新的技术和理念,各方面的指标在同类软件中都名列前茅。在实时数据采集方面,Apace可以在一台普通PC上稳定的承载30万点同步更新数据;在历史数据处理方面,我们在对多种压缩算法进行研究改进后,创造了Apace独有的压缩算法,对历史数据的压缩可达到平均35:1的高压缩比。同时,Apace独创的索引技术,可以实现检索的时间无关性,即可以从几十、上百年的历史数据中高效的检索任一时间点的数据;在告警服务里,Apace首度提出了趋势拟合和波动拟合告警,这项技术让Apace实时数据库的告警能力得到了质的飞跃,可实现更为复杂的告警规则;在计算服务方面,计算规则可以采用C#VB.NET或JScript语言进行编写,支持程序集动态引用技术,算法设计者可以使用自定义的第三方程序集,大大加强了计算服务的计算能力。
Apace实时历史数据库ApaceRDB是长沙软动信息科技有限公司自主研发的一套基于分布式事务型的通用实时数据库系统,它可以应用于现代工业企业,包括电力、石油、矿山、化工、钢铁、电信、航空等领域,为这些行业的SIS监控系统、仿真系统等提供数据保障。 Apace实时历史数据库Apace提供对实时时序数据的压缩、计算、存储、告警、分发、查询、统计功能,同时,为上层业务系统开发提供了丰富的应用接口,包括组态设计器以及Excel扩展报表插件。 Apace实时历史数据库系统引入了多种创新的技术和理念,各方面的指标在同类软件中都名列前茅。在实时数据采集方面,Apace可以在一台普通服务器上稳定的承载百万点的数据同步更新;在历史数据处理方面,在对多种压缩算法进行研究改进后,创造了Apace独有的魔方无损压缩算法,1万点1年的历史数据仅需5.8GB的空间。同时,Apace独创的索引技术,可以实现检索的时间无关性,即可以从几十、上百年的历史数据中高效的检索任一时间点的数据;在告警服务里,Apace首度提出了趋势拟合和波动拟合告警,这项技术让Apace的告警能力得到了质的飞跃,可实现更为复杂的告警规则;在计算服务方面,计算规则可以采用C#VB.NET或JScript语言进行编写,支持程序集动态引用技术,算法设计者可以使用自定义的第三方程序集(如VC动态链接库),强化了计算服务的计算能力。 Apace实时历史数据库Apace组态图设计器,可以轻松的设计出仿真式组态图、趋势图、报表等各种所需的组态图,Apace已经为用户提供了20多种基础元件,除了这些基础元件以外,用户还可以根据行业的需要来自定义新的元件;组态图支持客户端脚本编码,可对图中各个元件进行编码控制。在设计过程中,可以随时对组态图进行预览,以查看实际效果,设计完成后通过内置的发布功能,可随时发布到指定的服务器上以供使用。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值