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

建站系统运营网站营销代理

建站系统运营,网站营销代理,jsp网站开发实例教程,音乐版权购买网站电力通信规约-104实战 概述 104规约在广泛应用于电力系统远动过程中#xff0c;主要用来进行数据传输和转发#xff0c;本文将结合实际开发实例来讲解104规约的真实使用情况。 实例讲解 因为个人技术栈是Java#xff0c;所以本篇将采用Java实例来进行讲解。首先我们搭建一…电力通信规约-104实战 概述 104规约在广泛应用于电力系统远动过程中主要用来进行数据传输和转发本文将结合实际开发实例来讲解104规约的真实使用情况。 实例讲解 因为个人技术栈是Java所以本篇将采用Java实例来进行讲解。首先我们搭建一个springboot的基础工程引入如下依赖 dependency     groupIdorg.openmuc/groupId     artifactIdj60870/artifactId     version1.7.2/version /dependency 搭建好的项目之后我们进行核心类的设计整体结构如下图所示 接下来我将详细讲解一些这些核心类的作用和核心方法代码的说明首先我们需要实现采集通信连接管理的功能因为我这边使用的技术栈是spring boot要实现在程序启动之后就能够初始化连接这里我通过实现CommandLineRunner接口的方式来实现的。如下是采集通道类中的核心实现代码 for (AppConfig.IEC104ChannelConfig config : appConfig.getIec104channels()) {try {configs.add(config);IDataChannelAppConfig.IEC104ChannelConfig channel new IEC104Channel();channel.init(config);channelMap.put(config.getId(), channel);channelStatusMap.put(config.getId(), false);iec104ChannelList.add((IEC104Channel) channel);} catch (Exception e) {log.warn(failed to create channel:{}, config, e);} } 这里考虑到多通道的情况所以在此使用了循环初始化的方式来做这里往下具体实现创建连接的方法如下 /*** 创建连接* throws IOException*/ public void connect() throws IOException {try {InetAddress addr InetAddress.getByName(connInfo.host);ClientConnectionBuilder clientConnectionBuilder new ClientConnectionBuilder(addr).setPort(connInfo.port);conn clientConnectionBuilder.connect();conn.setId(config.getId());conn.setMaxMessageInMinutes(config.getMaxMessageInMinute());} catch (Exception e) {logger.warn(failed to connect host: {}, try to connect host2 :{}, connInfo, connInfo2, e);//尝试连接备用地址if (connInfo2 ! null) {logger.info(try to connect backup host: {}, connInfo2);InetAddress addr InetAddress.getByName(connInfo2.host);ClientConnectionBuilder clientConnectionBuilder new ClientConnectionBuilder(addr).setPort(connInfo2.port);conn clientConnectionBuilder.connect();conn.setId(config.getId());conn.setMaxMessageInMinutes(config.getMaxMessageInMinute());} else {throw e;}} } 上面展示的创建连接的方法有个比较特殊的实现就是备用地址连接的逻辑这里也是根据实际业务来考虑的因为一般发送数据主站会提供两个地址进行主备的考虑这样做的目的为了采集链路的稳定。 项目中还是实现了一个初始化数据的类 InitializeDataManager这个类也需要在程序启动之后初始化的所以也是通过实现CommandLineRunner接口的方式来实现的。做数据采集有一个很重要的环节就是对点通俗来讲就是对方发过来的点位需要转换适配到我们的系统中这里需要初始化我们需要的点位信息所以定义了初始化数据的类。 接下来讲解一下最关键的一个类事件监听器IEC104ClientEventListener的实现首先我们需要实现ConnectionEventListener接口在ConnectionEventListener接口中定义了如下两个方法 public interface ConnectionEventListener {void newASdu(ASdu var1, String var2);void connectionClosed(IOException var1); } 在IEC104ClientEventListener中重写了这两个方法其中newASdu是监听数据事件的connectionClosed是处理连接关闭事件的。 采集和监听部分设计完成之后我们需要将采集的数据进行业务处理这套系统开发的是采集光伏场站的数据所以设计如下处理任务分别用来采集逆变器集电线的数据 总结 本文讲解了104在光伏场站采集场景中的具体实践案例通过对104程序设计的讲解希望能够帮助我们将104运用到实际场景中。
http://www.w-s-a.com/news/827117/

相关文章:

  • 毕业设计做网站怎么样非微信官方网页自己做的网站
  • 昆明网站多端小程序设计重庆市住房和城乡建设厅网站
  • 网站制作技术人员国际新闻最新10条
  • 做同城特价的网站wordpress后台能修改模板文件
  • 网站信息可以边建设边组织产品展示网站源码php
  • 电子商务网站规划从哪些方面入手途牛企业网站建设方案
  • 莱阳网站定制易语言可以做网站嘛
  • 购物网站开发意义上海中小企业服务中心官网
  • 网站备案证书如何打开江苏网站建设电话
  • 深圳网站建设乐云seo搜索引擎优化seo目的
  • 中山城市建设集团网站网站建设设计基础
  • 网站开发流程莆田wordpress点播收费
  • 网站未及时续费浙江台州做网站的公司有哪些
  • 二级域名做网站好不好河源建网站
  • 公司网站的作用意义维护建设管理天津平台网站建设费用
  • 建设部网站如何下载国标规范上海影视公司
  • 企业官方网站地址通了网站建设
  • 专题网站可以做什么怎么做网站滑动图片部分h5
  • 什么是网站建设外包html 门户网站
  • 资阳市建设局网站微信开发公司
  • wap建站程序源码可不可以异地建设网站
  • 优秀企业网站的特点网站标签名词
  • 建材网站建设案例淄博网站建设培训
  • 纯代码添加wordpress网站底部导航宝塔自助建站源码
  • 网站设计技术有哪些?青岛网站建设工作室
  • 网站怎样建设才叫人性化宣传
  • 济南网站制作方案做淘客网站备案
  • h5企业网站只做做php门户网站那个系统好
  • 长春阿凡达网站建设建网站如果不买域名别人能不能访问
  • 佛山网站建设策划东莞建设工程交易网