///\ ///\ /////////\ ///\ //\\/ //\/ //\\\\\\\\//\ //\\/ //\/ //\/ //\\/ \\/ //\/ //\/ //\/ \//\ //\/ /////////////\/ \//////\ //\/ //\\\\\\\\\//\/ \\\\\//\ //\/ //\/ //\/ \//\ //\/ //\/ //\/ ///\ //\\/ //\/ //\ ///\ ///\/ \/////////\\/ /////////////\/ \\\/ \\\/ \\\\\\\\\/ \\\\\\\\\\\\\/ Present by Richard.Hu
本组件版权归Richard.Hu所有
唯一官网:http://www.hslcommunication.cn/
使用请遵循LGPL-3.0协议说明,除了协议中已经规定的内容外,附加下面三个条款(与原协议如有冲突以附加条款为准):
- 允许用户使用本工具库(从NuGet下载)集成到自己的项目中作为闭源软件一部分,只需要声明版权出处并出具一份LGPL-3.0的授权协议即可。
- 禁止复制中间的代码及参考思路开发出类似的组件库。
- 源代码仅作为个人学习使用。
说明:NuGet为稳定版本,支持在线升级,组件的使用最好从NuGet下载,此处发布的项目有可能为还没有通过编译的测试版,NuGet安装如下:
Install-Package HslCommunication
- IDE: Visual Studio 2017 必须这个版本及以上,不然会语法报错
- .Net Framework环境下:支持.Net 3.5及以上环境,功能最完善。
- .Net Standard环境下:.Net 2.0以上,目前仅仅实现PLC读写,modbus tcp读写,日志记录。
- java环境下:Intellij Idea 2018.1
- python: Visual Studio Code
- 工业软件交流QQ群:592132877
- 邮箱地址(Email):hsl200909@163.com
- 技术支持VIP群(打赏超过100RMB可加入):838185568
本项目的目标在于开发一个.Net及java下大多数软件系统都会包含了基础类库功能,实现一些常用的数据通信,日志记录等等类,以及版本类,网络通讯类,PLC数据访问类。并且实现C#和java无缝通信集成。
完整的项目介绍地址: http://www.cnblogs.com/dathlin/p/7703805.html
- 日志记录功能
- 同步网络通讯功能 NetSimplify
- 文件管理引擎
- 异步网络通讯功能 NetComplex
- 三菱PLC以太网访问
- 三菱PLC串口访问
- 西门子PLC访问
- 欧姆龙PLC访问
- AB PLC访问
- 邮件功能使用
- 流水号生成器
- 软件注册码功能
- 数据订阅推送 NetPush
- ModBus 服务器开发,包含Tcp服务器和Rtu服务器
- ModBus Tcp客户端开发
- ModBus Rtu客户端开发
- 异形Modbus Tcp客户端开发,侦听模式客户端
- 多线程任务功能
- CRC16校验
- 常用控件库
- 连接池使用
本组件提供java版本,为.net版本的阉割版,除去了所有的服务器功能代码,保留了绝大多数的客户端功能代码,方便的和PLC,设备进行数据交互,和C#程序进行数据交互,本jar组件适用用安卓开发,方便搭建一个.net 服务器 + windows 客户端 + asp.net 客户端 + j2ee 客户端 + java 客户端 + android 客户端,未来可能支持python,目前的java功能代码如下:
- 三菱PLC的数据交互
- 西门子PLC的数据交互
- Modbus Tcp 客户端开发
- 同步网络通讯功能 NetSimplify
- 异步网络通讯功能 NetComplex
- 数据订阅推送 NetPush
- 基于本组件开发的一个CS架构的项目模版,该模版采用本组件进行开发,完成了账户管理,角色管理,个人文件管理,头像机制,自动升级,完善的日志等等功能。项目地址为:https://github.com/dathlin/ClientServerProject
- 基于本组件开发的一个局域网多人聊天的程序,支持在线客户端信息查看,服务器强制关闭客户端。https://github.com/dathlin/NetChatRoom
- 基于本组件开发的一个西门子PLC后台读取显示数据,并推送给在线客户端(包括window程序,asp.net网站,Android程序)显示实时曲线的示例项目。并实现远程操作。https://github.com/dathlin/RemoteMonitor
- ModbusTcpServer项目 基于本组件开发的一个Modbus Tcp服务器工具,可以方便的快速搭建一个性能可靠稳定的服务器。
- FileNetServer项目 基于本组件开发的一个文件管理引擎,实现服务器端文件存储,支持客户端进行文件上传,下载,删除,查看文件信息等等。
- HslCommunicationDemo项目 基于本组件开发的一个西门子,三菱,欧姆龙,Modbus-Tcp,SimplifyNet,ComplexNet,FileNet等的通讯测试工具,方便的进行读写测试,不需要额外的编写代码。
- SharpNodeSettings项目 数据网关项目,基于可配置的文件创建的数据中心,支持redis公开和opc ua公开。https://github.com/dathlin/SharpNodeSettings
热烈欢迎对本项目的代码提出改进意见,可以发起Pull Request,对于代码量贡献较多的小伙伴,会有额外的组件使用权,并在特别感谢里写明。
- 混合锁及可序列化异常类,读写锁,并发模型部分代码及思路参考《CLR Via C#》,感谢作者Jeffrey Richter
- 感谢 CKernal 推送的Qna兼容1E帧协议的三菱代码
- 感谢 ligihtdev 打赏支持
- 感谢 Wzhigang 打赏支持
- 感谢 Running... 打赏支持
- 感谢 生意王(2940280678) 打赏支持
If this library really helps you, you can support me by AliPay. Please choose the amount according to your actual ability.
This library include some controls render upside picture. u can easily use them
Using MC protocol, Qna 3E, Include binary and ascii
Using S7 protocol And Fetch/Write protocol
Client, using read/write coils and register, read discrete input , read register input
Server, you can build your own modbus-tcp server easily
Communicaion with multi-computers , client can exchange data with server easily, include server side ,client side
Communicaion with multi-computers , client can send a large of data to server, include server side ,client side
Communicaion with multi-computers , client can exchange File with server easily, include server side ,client side