KepServerEX读写三菱PLC,车间现场测试记录,带你了解【数据采集的困境】的前世与今生
1.不了解KepServerEX 的鞋童,可以先了解一下OPC UA,OPC UA服务端。我们当前项目读写三菱PLC是自己写的类库,但我感觉调用不够方便灵活,工作之余用OPC UA方式尝试一下 2.数据采集的困境:理想很丰满,现实很骨感。 3.存在即是合理的,OPC UA的方式的本质是想以一种统一的方式,以结束现在这种,五门八门的协议采集,以降低采集成本,降低门槛,加快工业互联的脚步。 5.现在很多著名的设备大厂商纷纷也加入了OPC UA的队伍,让自家的新设备支持OPC UA的方式进行通信。但
初识Kotlin之集合
Kotlin的集合是让我为之心动的地方,丰富的高阶函数帮助我们高效开发。今天介绍Kotlin的基础集合用法、获取集合元素的函数、过滤元素的函数、元素排序的函数、元素统计的函数、集合元素映射的函数、集合的交差并补集的函数。还有一些工作中的经验。 初始化集合 和Java集合不同的是,Kotlin的集合分可变和不可变两种集合。同时也支持两种集合相互切换。 List集合 // 声明并初始化不可变List集合
val list: List<Any> = listOf<Any>(1, "2", 3)
//
java反射与注解结合使用(根据传入对象输出查询sql)
我们在项目开发中有很多地方使用到了注解,关于注解的定义与创建小伙伴可以参考我的文章《java注解》。有任何问题的小伙伴们可以在评论区指出哦,欢迎各位大佬指出问题。 今天我要说的是使用注解与反射结合使用,来使我们代码根据优雅,更加高大上(咳,装逼神器啊)。 注解使用@interface 来定义,辣么我们自定义的注解,该使用获取到并且指明该注解的作用呢?java提供了反射机制,通过类的类类型我们可以根据自己需要老操作该类。有管反射的知识,可以参考我的上两章博客。好了,废话不多说,我们上
collections模块学习之namedtuple
namedtuple collections.namedtuple(typename, field_names, *, rename=False, defaults=None, module=None) typename 创建的namedtuple返回的对象类型 field_names 创建的namedtuple每个元素对应的name,不然为啥叫namedtuple呢。这个参数传递的可以是一个列表,一个用空格或者","间隔开的字符串。 rename 如果为True,则对field_names中
【优秀易用的图形设计工具】Ezee Graphic Designer for Mac 2.0
【简介】 今天分享Ezee Graphic Designer 是一款Mac上优秀易用的图形设计工具,相比Adobe AI等软件更加简单易用,专注于快速的设计精美的图片公告、博客图片、小册子、名片、日历、传单、优惠券等,内置和在线提供多种精美的模板,很不错! 【功能特色】 1、拼贴的照片网格 从在线内容目录中选择所需的尴板,然后将图片拖放到所需的位置。所有网格均可自由调节。 2、智能形状 我们最热门的客户要求:每个SmartShape的尺寸,颜色和形状都可以轻松修改。 3、照片 此外,还提供大量
JDBC-用Java语句操作数据库
JDBC 1. Jdbc概述 问题:实际开发中,不可能用工具或者命令行操作数据库,数据库表中的数据最终要使用Java程序来操作,那么Java中如何操作数据库中的数据呢? 答 : 在Java语言中,有一个专门连接数据库的规范(JDBC),专门负责连接数据库进行数据操作的规范 JDBC只是SUN编写的一堆接口(规范的体现),SUN公司自己并没有实现 问题 : 为什么SUN只定义一个JDBC规范,而不实现呢? 答 : 因为市面上的数据库很多,每个数据库内部接口不会向外暴露,而且即便是暴露让SUN去实
二极管单向导电的理解
在常温下 半导体的原子由于热激发 会有电子脱离共价键成为自由电子,跑出一个自由电子就会生成一个 空穴,这个空穴会由其他的原子的电子来填充。在纯净的半导体中自由电子和空穴总是成对出现的。 如果加入磷元素之后,磷元素会替代一个Si元素的位置,由于磷元素最外层是5个电子,用其中4个电子和 Si元素形成共价键,剩下一个电子就成为了自由电子,每添加一个磷元素就会多出一个自由电子。所以自 由电子的数量会大于空穴的数量,由于自由电子是带负电的,所以用N来表示 N是negtive的意思。 所以加磷元素就相当于
linux内核中的数据结构
http://vinllen.com/linuxnei-he-zhong-de-shu-ju-jie-gou/ https://zhuanlan.zhihu.com/p/58087261 https://blog.csdn.net/wenqian1991/article/details/44515713 https://blog.csdn.net/ace_an/article/details/53813242 Linux中最重要最常用如下四种: LIST:链表 <linux/list.h> L
C++ 统计输入的句子有多少英文字母
// ConsoleApplication1.cpp: 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> #include <string> using namespace std; int countnubstr(string str) { int returnnum = 0; for (int i = 0; i<str.length(); i++) { if ((str[i] >= 'a' && str[i] <= 'z')
DataNode进程还在,但是50070Wed端显示DataNode状态为Dead
hadoop2.x中加yarn 一、关闭处于dead状态节点的datanode、nodemanager进程 hadoop-daemon.sh stop datanode yarn-daemon.sh stop nodemanager 二、重启dead状态节点的datanode、nodemanager进程 hadoop-daemon.sh start datanode yarn-daemon.sh start nodemanager
Sequelize与async联合使用关于warning:a promise was created but was not returned from it的思考
https://ybleeho.github.io/2019/05/18/sequelize-%E5%85%B3%E4%BA%8Ewarning-a-promise-was-created-but-was-not-returned-from-it/
bitcoinj 入门
bitcoinj的介绍: bitcoinj提供了一个与Bitcoin协议交互的类库。bitcoinj维护了一个钱包(wallet),以及发送/接收交易(transactions)的方法,此外还维护了许多其他的功能特点,将会在下面一一列举。 Feature 1: 高度优化的简单支付验证(simplified payment verification,既SPV)。在这种模式下,只有一部分区块链会被下载到本地,这允许了bitcoinj运行在一些轻量级的设备上,例如智能手机或者是个人虚拟网络中
JSP配置文件的使用
阅读本文章前建议先阅读:JSP中通过JDBC访问sqlserver数据库 一、使用原因:通过JDBC连接数据库时有时会需要连接不同的数据库,而jar包、连接url、用户名和密码等都是写定在程序中,不便修改,因此引入配置文件(key-value),可以通过key得到对应的value,即动态获取数据。 二、实现步骤 1.编写配置文件database.properties; 2.创建包com.yh.dao,编写类ConfigManager,读取属性文件; 3.修改连接数据库的参数。 三、代码示例 d
选择企业架构实践公开课的指导?TOGAF+ArchiMate+BangEA,EA工作者必学一门公开课
我发现身边越来越多人谈数字化、谈企业架构,但是感觉谈的总是IT?知道好像不对,但是又好像也无法告诉别人这和传统的IT架构有什么不一样?网上找资料,看了很多也摸不到门路,也不知道别人讲的对不对。对了还好,万一错了,那就错上加错。 如果你希望了解企业架构,但又苦于找不到中文资料,那么除了买我的中文讲义之外,还可以扫码访问我之前写的一些文章 关于我 大家好,我是周金根,IT帮创始人,2001年从浙江大学毕业进入一家建筑领域软件企业,在16年的工作中从程序员做起,从事过开发经理、项目经理、技术专家、系
mac下正确的建立mysql路径
网上的教程大部分不是对新手很是友好所以写了这个一些注意的地方。 首先在终端下输入: vi ~/.bash_profile 之后便进入编辑界面: vi中要记得esc退出编辑后 。输出:w(保存)q(退出) 最后在其他终端测试一下:
今日推荐
周排行