- 浏览: 12072 次
最新评论
可编程计算组件面向的客户要求比较高,但其主要目的是提供给软件制造企业在为客户提供解决方案时可通过动态编程的方式来耦合其业务逻辑。 有些应用系统中有部分业务数据需要通过现场实时数据进行相应的算法产生,这时编程计算组件可帮助您的应用系统和业务解耦,可编程计算组件适合:电力行业(SIS系统,实时系统) 、气象行业、航空行业、集团企业的数据集中化的应用解决方案等。 Apace计算服务支持单点、多点计算,包括对多个Apace数据库中的数据点进行综合计算。计算法则采用的是全编码式数据计算扩展接口,算法可以使用C#、VB.NET或Jscript三种语言进行编写。支持动态编译,每秒可对上万个数据点实时同步计算,每个计算法则的计算结果,可写入一个或多个数据点中。
支持引用自定义的程序集,让计算服务能处理更为复杂的计算法则成为可能,目前几乎已经可以完成任何所需的计算。
计算法则脚本编辑规范
以C#语言为例
1:,计算脚本代码必须写入GetAlgorithmValue()函数体内,函数体外禁止加入其它的函数,如需要使用自定义函数建议写入到"公用函数体"内,如下:
//必须的函数体GetAlgorithmValue,返回双精度结果 public Double GetAlgorithmValue() { McbData calcpoint= this.CurrentPoint; double calcvalue= calcpoint.PointValue; calcvalue += 1; return calcvalue ; } 2:建议在编译通过后将上部分代码改为: public Double GetAlgorithmValue() { try { McbData calcpoint= this.CurrentPoint; double calcvalue= calcpoint.PointValue; calcvalue += 1; return calcvalue ; } catch { //屏蔽异常 并返回double.NaN 标示此次计算结果失效。 Return double.NaN; } } 计算法则常用方法介绍
● 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 获取或设置点标签在数据流中的位置。 实例代码: PcmData pointinfo = this.CurrentPointInfo; string code = pointinfo.OperationCode; ● GetPoint(点名称)
描述:得到指定点信息;
返回类型:McbData
实例代码: McbData point = GetPoint("DDM.Apace.test123"); DataTime pointTime = point.Time; ● Apace.Client.NetClientManage.GetNetClient().GetPoi ntValue(点名称)
描述:得到指定点信息;
返回类型:McbData
实例代码: McbData point = Apace.Client.NetClientManage.GetNetClient().GetPoi ntValue("DDM.Apace.test123"); int pointTime = point.PointTime; 说明: 计算脚本可以使用Apace.Client程序集的所有方法,可以实现Apace客户端几乎所有的功能 ,详细方法调用请参见《Apace开发手册C#》版本; 2.5.7 计算法则实例
● 计算标签值自增 //必须的函数体GetAlgorithmValue,返回双精度结果 public Double GetAlgorithmValue() { McbData calcpoint= this.CurrentPoint; double calcvalue= calcpoint.PointValue; calcvalue += 1; return calcvalue ; } ● 计算标签随机值 //必须的函数体GetAlgorithmValue 值双精度 public Double GetAlgorithmValue() { Random random= new Random(); int value= random.Next(1, 10000); return (Double)value; } ● 计算两标签点累加值 //必须的函数体GetAlgorithmValue 值双精度 public Double GetAlgorithmValue() { McbData point1 = GetPoint("DDM.Apace.test123"); McbData point2 = GetPoint("DDM.Apace.test125"); If(point1!=null && point2!=null) { Double value= point1.PointValue + point2.PointValue; return value; } return Double.NaN; } ● 多点循环累加值 //必须的函数体GetAlgorithmValue 值双精度 public Double GetAlgorithmValue() { String[] points= new string[]{"DDM.Apace.test123", "DDM.Apace.test124", "DDM.Apace.test125", "DDM.Apace.test126", "DDM.Apace.test127", "DDM.Apace.test128"}; McbData[] pointvalues = Apace.Client.NetClientManage.GetNetClient().GetPoi ntValueCollect(points); Double value=0; Foreach(McbData only in pointvalues) { value += only.PointValue; } return value; } ● 根据计算点名查找匹配点累加值 //必须的函数体GetAlgorithmValue 值双精度 public Double GetAlgorithmValue() { McbData calcpoint= this.CurrentPoint; String currentPointName= calcpoint.PointName; PointRule rule = BaseConfig.GetPointRule(PointName); McbData[] pointvalues = Apace.Client.NetClientManage.GetNetClient().FindPo intName(rule.ServiceName, rule.DirName, currentPointName); Double value=0; Foreach(McbData only in pointvalues) { value += only.PointValue; } return value; }
发表评论
-
poj 3294 Life Forms 求n(n>1)个字符串的最长的一个子串 后缀数组
2012-07-06 09:52 953Description You may have wond ... -
Java 正则表达式使用心得
2012-07-06 09:46 581Greedy 数量词和Reluctant 数量词的区别。 ... -
纪念Rokon停止更新――从零开始用Rokon开发一个小游戏
2012-07-02 13:00 952懒骨头你给我听着:你有健康的家人~满意的工作~未知的女友~ ... -
adobe Air 小玩意程序:加载百度随便听听
2012-07-02 13:00 640今天,我承认会有一点偷懒,在写微博的程序的时候,忽然 ... -
flash player的重绘渲染机制
2012-07-02 13:00 610先简洁说下前人的研究成果。 一个是Tencent的Y ... -
Hello Android
2012-07-02 13:00 680虚心是知识的向导,恒心是知识的保管。 ... -
imx515 开发板Android源代码编译过程[开发日记]
2012-07-02 13:00 963Android requires the followin ... -
as连接fms
2012-07-01 10:33 676如果 ActionScript 3.0 SWF 文件需要与 ... -
WebService另一种轻量级实现―Hessian 学习笔记
2012-07-01 10:33 646最近和同事聊天,得知他们在使用一种叫做Hessian的We ... -
关于The serializable class XXX does not declare a static final serialVersionUID field of type long的警告
2012-07-01 10:33 658最近在研究Java与Flex用Json交换数据,也就是Ja ... -
Flex Socket编程
2012-07-01 10:33 601比较懒,比较少上csdn的,如果发现留言给我没有回复,望见 ... -
Flex4与java通信(二、与servlet通信)
2012-07-01 10:33 585说明:这里介绍使用URLRequest+URLLoader ... -
Flex学习笔记(1)
2012-06-30 16:56 573Flex学习笔记(1) 2010年06 ... -
Flex Ant编译模板
2012-06-30 16:56 687Flex Ant编译模板 2010年07月16日 Fl ... -
Flex mobile入门
2012-06-30 16:56 567Flex mobile入门 2010年12月 ... -
Flex编程学习基础
2012-06-30 16:56 573Flex编程学习基础 2010年11月08日 Flex是 ... -
flex RSL模式
2012-06-30 16:56 337flex RSL模式 2010年09月13 ...
相关推荐
在告警服务里,Apace首度提出了趋势拟合和波动拟合告警,这项技术让Apace实时数据库的告警能力得到了质的飞跃,可实现更为复杂的告警规则;在计算服务方面,计算规则可以采用C#、VB.NET或JScript语言进行编写,支持...
Apace实时历史数据库ApaceRDB是长沙软动信息科技有限公司自主研发的一套基于分布式事务型的通用实时数据库系统,它可以应用于现代工业企业,包括电力、石油、矿山、化工、钢铁、电信、航空等领域,为这些行业的SIS...
一个将Tab替换成空格使用的软件 虽简单,但是在科学计算数据文件出现问题是非常有用,对初学者是好用的,优化算例的数据流可能会用到
在告警服务里,Apace首度提出了趋势拟合和波动拟合告警,这项技术让Apace实时数据库的告警能力得到了质的飞跃,可实现更为复杂的告警规则;在计算服务方面,计算规则可以采用C#、VB.NET或JScript语言进行编写,支持...
Apache是普通服务器,本身只支持html即普通网页。不过可以通过插件支持php,还可以与Tomcat连通(单向Apache连接Tomcat,就是说通过Apache可以访问Tomcat资源。
apace geode 是一个开源的分布式数据库,目前12306在用,国内资料比较少,翻译官网部分文档。
非常有用的apache资料,图文并茂,对集成人员非常有用。
解决Apace2.4.x版本配置tomcat集群时启动apache报错:Cannot load modules/mod_jk.so into server: /apache/httpd/modules/mod_jk.so: wrong ELF class: ELFCLASS32
尝试使用了三元组数据库Apace Jena和原生图数据库Neo4j,并分别使用RDF结构化查询语言SPARQL和属性图查询语言Cypher,在知识图谱上进行查询。 知识抽取 基于之间构建的关系抽取数据集,利用deepke中提供的工具进行...
apace-cxf的资源jar
光束播种机 Minecraft种子查找器是为Apache Beam编写的,因此您可以在上面进行大量计算以查找种子的完整列表或查找非常稀有的种子。 这是基于L64的工作,他开发了仅使用种子的低48位来查找四联小屋(和其他结构)的...
apaceh-tomcat-6.exe及安装图解
尝试使用了三元组数据库Apace Jena和原生图数据库Neo4j,并分别使用RDF结构化查询语言SPARQL和属性图查询语言Cypher,在知识图谱上进行查询。 知识抽取 基于之间构建的关系抽取数据集,利用deepke中提供的工具进行...
肥皂网络服务使用Apache Axis的基于SOAP的Web服务这是一个用Apache Axis和Eclipse IDE Apache Axis编写的非常基本的基于SOAP的Web服务,是JAX-WS的参考实现。
本文档详细说明了如何交叉编译apache,以及如何移植到目标板,亲测可以移植到POWERPC芯片下的linux系统,测试可以正常运行
构建《海贼王》中各个实体之间关系的知识图谱知识存储尝试使用了三元组数据库Apace Jena和原生图数据库Neo4j,并分别使用RDF结构化查询语言SPARQL和属性图查询语言Cypher,在知识图谱上进行查询。知识抽取基于之间...
apache deltaspike0.5小例子 jpa jsf picketlink
apache,web服务器,适用于64位系统,附带补丁
以apace鍵結束: 若單字時,二個以上重碼,以shift,ctrl鍵結束,表使用第2,3個重碼 二字詞AB的取碼: 各取首次碼 (A1=A首碼,B2=B次碼,TB=B字型鍵) A1A2 B1B2 TB=R 顯示B是常用字,字根之片語...
commons-lang3-3.1 StringUtils字符串jar包 org.apache.commons.lang3.StringUtils的jar包