java调用iec61850_通过iec61850协议访问设备数据的一个例子-程序员宅基地

技术标签: java调用iec61850  

. 客户端程序参考example/iec61850_client_example1

. 服务器使用example/server_example3

数据定义参考simpleIO_sbo_control.icd文件;

客户端读取一个

使用函数IedConnection_readObject, 定义如下

MmsValue* IedConnection_readObject(IedConnection self,

IedClientError* error,

char* objectReference,

FunctionalConstraint fc);

1. objectReference构造规则为,

(参考对应的icd文件)

s1 =

s2 = AccessPoint->Server->LDecive inst="222"

s3 = LNodeType id="333"

s4 = LNodeType->DO name="444" type="???"

若type为struct, 则找到该struct定义处, 继续对其中某个项的引用

s5 = DOType name="???"->DA name="555"

最终的引用路径为

"111222/333.444.555"

2. fc属性

enum eFunctionalConstraint

具体指定时, 应与icd文件中对象读取项所定义的fc属性一致, 否则读取会不正确;

3. 代码示例

. icd定义部分

. coding

MmsValue *pv = IedConnection_readObject(con, &error, "TEMPLATELD1/LCSM1.HostTimeRef.stVal", ST);

if(pv != NULL) {

int32_t v = MmsValue_toInt32(pv);

printf("read int32 value: %d, type=%d\n", v);

MmsValue_delete(pv);

}

...

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39672979/article/details/114512721

智能推荐

修改Docker for mac的镜像仓库地址_mac docker 修改仓库_普通网友的博客-程序员宅基地

点击docker图标-Preferences进入设置在Registry mirrors下新增https://hub.daocloud.io/,该地址为DaoCloud道客网络的仓库重启docker后执行 docker info,看到 Registry Mirrors: https://hub.daocloud.io/ 表示已经配置生效直接 docker pull xxx 即可..._mac docker 修改仓库

[PTA] Hashing-程序员宅基地

#include<stdio.h>#include<stdlib.h>#include<math.h>int a[10010];int ans[10010];int prime[10010];int m,n;void GetPrime(){ int MAX=10010; int i,j; prime[0]=0,prime[1]=0...

quick3.3与quick2.2的区别(3)_quick 3stetap-程序员宅基地

关于cocostuido不得不说的话题 在2.2中,ccs里面读取出来的控件是widget 从3.3中可以读取出来是widget也可以是quick本身的控件。 cc.uiloader:load()读取出来的是quick控件, ccs.GUIReader:getInstance():widgetFromJsonFile 读取出来的是widget(这个和2.2兼容)若是用load读取的不存在to_quick 3stetap

面积等效原理-程序员宅基地

  面积等效原理:  冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同。冲量即指窄脉冲的面积。这里所说的效果基本相同,是指环节的输出响应波形基本相同。  目前能找到的出处:《电力电子技术 王兆安》  面积等效原理是PWM控制技术的重要理论基础。这里有一个名词:惯性环节。当输入量发生突变时,输出量不能突变,只能按指数规律逐渐变化,这便是惯性环节。惯性环节一般包含一个储能元件和一个耗能元件。RC充电电路便是一个典型的惯性环节。  如下图,当5V电压加在RC电路上时,其输出并不能立即达到5_面积等效原理

Web基本工作原理_web的工作原理在静态和动态页面中的体现方法-程序员宅基地

(1)Web的基本工作原理、HTTP协议和URL说明https://www.cnblogs.com/fwnboke/p/9114381.html_web的工作原理在静态和动态页面中的体现方法

随便推点

icoFoam代码解析-程序员宅基地

icoFoam代码解析icoFoam是OpenFOAM最基础的求解器之一,想要以OpenFOAM为基础进行二次开发的同学必须对icoFOAM的代码有所了解。关于此部分内容,由于篇幅限制,更多内容可以参考本博文对应的资源"OpenFOAM编程日志,单相不可压缩流动"或去本人的CSDN资源空间搜索下载。/*----------------------------------------------..._icofoam

java.lang.ClassCastException: 异常处理-程序员宅基地

java.lang.ClassCastException: libcore.net.http.HttpURLConnectionImpl cannot be cast to javax.net.ssl.HttpsURLConnection主要是因为HttpURLConnection与HttpsURLConnection不兼容导致。。

洛谷题单:【入门1】顺序结构_顺序结构 题目-程序员宅基地

(1) P1001 A+B Problem入门题,这题估计只是为了让大家熟悉洛谷这个平台吧!题目给定数据范围|a|,|b|都小于10e9,所以用int即可,因为int可以储存的最大值是2147483647,就是2*10e9多一点。如果题目数据稍微再大一点,就要用long来存储了。import java.util.Scanner;public class Main { public st..._顺序结构 题目

调用新浪接口查询IP地址-程序员宅基地

根据IP地址查询所在地

运行hadoop案例_mapreduce的时候warn io.readaheadpool: failed readahea-程序员宅基地

运行Grep案例创建input文件夹准备文件到input文件夹中执行share目录下的MapReduce程序./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar grep /data/tmp/input/ /data/tmp/output 'dfs[a-z.]+'结果:19..._mapreduce的时候warn io.readaheadpool: failed readahead on ifile

java 日期换算-程序员宅基地

public static void main(String[] args) throws ParseException { Calendar cal = Calendar.getInstance(); //日期格式化 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");// ...