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

付费网站源码营销型网站建设步骤

付费网站源码,营销型网站建设步骤,wordpress 只有英文,景区网站建设策划电力通信规约-104实战 概述 104规约在广泛应用于电力系统远动过程中,主要用来进行数据传输和转发,本文将结合实际开发实例来讲解104规约的真实使用情况。 实例讲解 因为个人技术栈是Java,所以本篇将采用Java实例来进行讲解。首先我们搭建一…

电力通信规约-104实战

概述

        104规约在广泛应用于电力系统远动过程中,主要用来进行数据传输和转发,本文将结合实际开发实例来讲解104规约的真实使用情况。

实例讲解

        因为个人技术栈是Java,所以本篇将采用Java实例来进行讲解。首先我们搭建一个springboot的基础工程,引入如下依赖:

<dependency>
    <groupId>org.openmuc</groupId>
    <artifactId>j60870</artifactId>
    <version>1.7.2</version>
</dependency>

        搭建好的项目之后我们进行核心类的设计,整体结构如下图所示:

        接下来我将详细讲解一些这些核心类的作用和核心方法代码的说明,首先我们需要实现采集通信连接管理的功能,因为我这边使用的技术栈是spring boot,要实现在程序启动之后就能够初始化连接,这里我通过实现CommandLineRunner接口的方式来实现的。如下是采集通道类中的核心实现代码:

for (AppConfig.IEC104ChannelConfig config : appConfig.getIec104channels()) {try {configs.add(config);IDataChannel<AppConfig.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.dinnco.com/news/78140.html

相关文章:

  • 制作商城小程序费用开封seo推广
  • 网站怎么做搜素引擎百度手机助手下载
  • 外包公司做网站多少钱免费大数据查询平台
  • 最适合企业网站建设的cms系统企业文化培训
  • 宁波建设安全协会网站婚恋网站排名前十名
  • 门户网站的自身的特性东莞网站排名提升
  • 真人性做爰直播网站免费代理上网网站
  • 最好网站开发公司电话百度免费推广
  • 网站建设 qq业务网制作百度博客收录提交入口
  • 湘潭注册公司网站优化推广培训
  • wordpress后台二次开发seo优化服务公司
  • 网站标题特殊符号网站优化最为重要的内容是
  • 在线做简单的网站网站推广app软件
  • wordpress 多条件查询数据库网站功能优化
  • b2c购物手机优化大师哪个好
  • 官方网站建设方案图能打开的a站
  • 网站建设心得感想国外b站视频推广网站
  • php网站后台管理系统东莞市网站seo内容优化
  • 做神马网站优化快速排关键词搜索技巧
  • 微信小程序线上商城怎么做seo搜索引擎优化总结报告
  • 网站开发大数据关键词代发包收录
  • 彩票系统网站建设刷关键词排名seo软件软件
  • 电子商务行业发展趋势及前景持续优化完善防控措施
  • 网站自助平台免费网络项目资源网
  • 商会网站建设seo外链增加
  • 西安建站平台哪个好优化大师免安装版
  • 网站建设流程共有几个阶段天津优化公司哪家好
  • 网站站长是什么网络seo外包
  • 谁可以做网站厦门谷歌seo公司有哪些
  • 做外贸网站怎么设计seo推广专员工作内容