IEC61850笔记--开源代码libIEC61850(二)

IEC61850标准学习和调试,测试的记录文档,主要参考了IEC61850标准文档,《IEC61850应用入门(第二版)》,开源代码libIEC61850及libIEC61850说明文档。

IEC61850标准内容参考IEC61850标准文档,以及IEC61850标准介绍文档《IEC 61850应用入门》。

代码分析

libIEC61850作为一个网络通信协议代码,遵循基本的网络通信协议构架,服务端包括socket,bind,listen,select,recv,send等操作。分别对这些操作在代码中的调用层次进行说明,介绍只涉及mms服务端的网络构架。

socket & bind
main
->IedServer_start
->MmsServer_startListeningThreadless
->IsoServer_startListeningThreadless
->setupIsoServer
->TcpServerSocket_create
->socket & bind


listen
main
->IedServer_start
->MmsServer_startListeningThreadless
->IsoServer_startListeningThreadless
->setupIsoServer
-> ServerSocket_listen
->listen


FD_SET
main
-> IedServer_start
-> singleThreadedServerThread(Thread_create)
-> IedServer_waitReady
-> MmsServer_waitReady

-> IsoServer_waitReady
-> Handleset_addSocket
-> FD_SET


select
main
-> IedServer_start
-> singleThreadedServerThread(Thread_create)
-> IedServer_waitReady
-> MmsServer_waitReady
-> IsoServer_waitReady
-> Handleset_waitReady
->select


recv
main
-> IedServer_start
-> singleThreadedServerThread(Thread_create)
-> MmsServer_handleIncomingMessages(select)
-> IsoServer_processIncomingMessages
-> handleIsoConnectionsThreadless
-> handleClientConnections
-> IsoConnection_handleTcpConnection
-> CotpConnection_readToTpktBuffer
-> Socket_read
->recv


send
main
-> IedServer_start
-> singleThreadedServerThread(Thread_create)
-> MmsServer_handleIncomingMessages(select)
-> IsoServer_processIncomingMessages
-> handleIsoConnectionsThreadless
-> handleClientConnections
-> IsoConnection_handleTcpConnection(recv)
-> CotpConnection_sendConnectionResponseMessage
-> sendBuffer
-> Socket_write
-> send

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
libiec61850-0.9.2.1是一种通信协议库,用于实现IEC 61850标准中所定义的通信功能。而数据对象引用是该协议中用于识别和访问特定数据对象的一种标识方法。 数据对象引用在IEC 61850中由四部分组成:充电桩UUID、逻辑设备名称、逻辑节点名称和数据对象名称。 充电桩UUID是一个唯一的标识符,用于区分不同的充电桩设备。逻辑设备名称用于标识充电桩设备所在的逻辑设备,通常用于区分不同设备之间的功能和数据。逻辑节点名称用于标识逻辑设备中的不同逻辑节点,每个逻辑节点对应不同的功能和数据。数据对象名称则用于标识逻辑节点中的不同数据对象,即具体存储和传输数据的实体。 通过组合这四部分的标识符,可以唯一确定某个充电桩设备中的特定数据对象。数据对象引用可以用于查询、读取和写入充电桩设备中的数据对象。通过有效的数据对象引用,可以实现对充电桩设备的远程监控、配置和控制等功能。 libiec61850-0.9.2.1库提供了相应的功能接口和方法,用于创建和解析数据对象引用。发人员可以使用该库提供的函数,根据需要构建和解析有效的数据对象引用,以实现对充电桩设备的操作和管理。 总之,libiec61850-0.9.2.1数据对象引用是一种标识和访问充电桩设备中特定数据对象的方法,通过组合充电桩UUID、逻辑设备名称、逻辑节点名称和数据对象名称等标识符,可以实现对充电桩设备的远程控制和管理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值