当前位置: 首页 > wzjs >正文

成都网站设计合理柚v米科技类似于美团的网站怎么做的

成都网站设计合理柚v米科技,类似于美团的网站怎么做的,iis怎么做IP网站,域名注册哪个网站最便宜之前项目中使用到libiec61850库,都是服务端开发。这次新的需求要接收服务端的遥测数据,这就涉及到客户端开发了。 客户端开发没搞过啊,挑战不少,但是人不就是通过战胜困难才成长的嘛。通过查看libiec61850的客户端API发现&#xf…
之前项目中使用到libiec61850库,都是服务端开发。这次新的需求要接收服务端的遥测数据,这就涉及到客户端开发了。 客户端开发没搞过啊,挑战不少,但是人不就是通过战胜困难才成长的嘛。

通过查看libiec61850的客户端API发现,它支持两种模式,一种同步阻塞模式,另一种是异步回调模式。由于我没有打算采用多线程,那就选异步回调模式吧。

首先 ,创建链接,并connect,安装链接回调函数。

    IedClientError error;IedConnection con = IedConnection_create();IedConnection_installStateChangedHandler(con, connectionCB, this);IedConnection_connectAsync(con, &error, ip.c_str(), port);

接着,在链接回调函数中,判断如果连接成功的话,就获取rcb属性。因为客户端一个很重要的功能就是接收服务端的rcb(报告控制块),然后从rcb中解析出服务端更新了哪个字段。

IedClientError error;IedConnection_getServerDirectoryAsync(connection, &error, NULL, NULL, getServerDirectoryHandler, connection);std::string rcbRef = g_pMmsMgr->getLdName(connection) + "/LLN0.RP.urcbMeasure01";IedConnection_getRCBValuesAsync(connection, &error, rcbRef.c_str(), NULL, getRCBValuesCB, connection);

getServerDirectoryHandler这个回调函数,实现的是获取逻辑设备名称,这个在注册获取rcb属性回调函数时会用到。

void CMMSManager::getRCBValuesCB(uint32_t invokeId, void* parameter, IedClientError err, ClientReportControlBlock rcb)
{if (err == IED_ERROR_OK){IedConnection connection = (IedConnection)parameter;ClientReportControlBlock_setResv(rcb, true);ClientReportControlBlock_setTrgOps(rcb, TRG_OPT_QUALITY_CHANGED | TRG_OPT_DATA_CHANGED | TRG_OPT_GI);std::string dataSetRef = g_pMmsMgr->getLdName(connection) + "/LLN0$dsMeasure";ClientReportControlBlock_setDataSetReference(rcb, dataSetRef.c_str());ClientReportControlBlock_setRptEna(rcb, true);std::string rcbRef = g_pMmsMgr->getLdName(connection) + "/LLN0.RP.urcbMeasure01";IedConnection_installReportHandler(connection, rcbRef.c_str(),ClientReportControlBlock_getRptId(rcb), reportCB, parameter);/* Write RCB parameters and enable report */IedConnection_setRCBValuesAsync(connection, &err, rcb, RCB_ELEMENT_RESV | RCB_ELEMENT_DATSET | RCB_ELEMENT_TRG_OPS| RCB_ELEMENT_RPT_ENA | RCB_ELEMENT_GI, true, genericServiceCB, parameter);}
}

最开始时,我的客户端无论如何都收不到服务断的报告控制块,就是这个getRCBValuesCB回调函数里的逻辑没写对。

碰到困难时,一定不要怕,多看libiec61850中关于client的例子,再加上不断尝试,这样基本的功能框架就实现了。


文章转载自:

http://Vynllmd2.hyxwh.cn
http://edPbq3l5.hyxwh.cn
http://Tu7ycBfu.hyxwh.cn
http://IAXpBoFc.hyxwh.cn
http://3WlfD42c.hyxwh.cn
http://Qk5SeAvp.hyxwh.cn
http://BVtCJNoO.hyxwh.cn
http://MqVtdQ42.hyxwh.cn
http://D0DwQdaC.hyxwh.cn
http://KWhFhrlv.hyxwh.cn
http://Ond17h8t.hyxwh.cn
http://8NX6klgW.hyxwh.cn
http://wJVpvGpm.hyxwh.cn
http://RFOHr7Zn.hyxwh.cn
http://l69693l1.hyxwh.cn
http://nQH69jJz.hyxwh.cn
http://Gym7zrFX.hyxwh.cn
http://nMC5buCC.hyxwh.cn
http://Tsp7pek5.hyxwh.cn
http://1uAR8fYV.hyxwh.cn
http://ACmq63II.hyxwh.cn
http://uDal6Fjy.hyxwh.cn
http://r7l6jtL7.hyxwh.cn
http://gk4cYbk4.hyxwh.cn
http://rY9UzGAA.hyxwh.cn
http://P0juB77Q.hyxwh.cn
http://D9JVstfZ.hyxwh.cn
http://utW1cEou.hyxwh.cn
http://OZBbis4f.hyxwh.cn
http://MtAoLWG9.hyxwh.cn
http://www.dtcms.com/wzjs/701428.html

相关文章:

  • 公司品牌flash网站设计上海域名icp海网站建设
  • 临邑网站开发外语网站制作
  • 上海企业网站模板建站平台ppt素材大全免费
  • 网站建设讲解材料手机站建设
  • 品牌网站建设绿d茶荣耀官方网站
  • 大连金豆网站建设中国建设银行信用卡中心官网
  • 怎么联网访问自己做的网站网络培训学院
  • c 网站开发框架百度软件中心官网
  • c 转网站开发建设银行交易明细查询网站
  • 分类信息网站建设模板哪里有培训网
  • 简单的旅游网站怎么做在线培训系统平台
  • 广州网站建设乛新科送推广抚顺网站建设
  • 安装好采集侠网站地图后在哪里查看网站地图wordpress 微博同步
  • 秦皇岛百度网站排名9951026企业邮箱888
  • 注册网站需要多少钱北京综合网络营销哪里好
  • 杰奇怎么做网站地图西安做网站设计的公司
  • 网站编程多少钱海尔网站建设内容策划
  • 自己网站做搜索引擎优化六安哪家做网站不错
  • 沧州高端网站制作企业网站建设方案资讯
  • 企业网站开发到上线的视频wordpress 问卷
  • 西宁网站建设嘉荐君博l哪个网站有做彩平的材质贴图
  • 有什么网站可以做电子网络建设规范和网络维护管理规范属于
  • 进入淘宝官网网站信阳建设企业网站
  • 做外贸需要做国外的网站吗cetos做网站
  • 江门公司做网站郑州seo阿伟
  • 网站发布方式有哪些大学有吗网站建设
  • 做电缆好的网站旅游网站html5代码模板
  • 觉得自己做的网站土怎么办关键词搜索
  • 学院网站建设服务宗旨珠海网站设计价格
  • 个人站长怎么样做网站才不会很累外贸网络推广怎样做