Skip to content

个人工具库,包含日志类,异步网络通讯类,版本控制的类,注册码生成类,数据加密解密类,文件上传下载类,三菱,西门子,欧姆龙PLC访问类,modbus tcp服务器及客户端类。Personal tools library, including log class, asynchronous network communication class, version control class, registration code generation class, data encryption and decryption class, file upload and download class, Mitsubishi, Siemens, Omron PLC access class, …

License

Notifications You must be signed in to change notification settings

luoqiang110/HslCommunication

 
 

Repository files navigation

             ///\      ///\             /////////\              ///\
            //\\/      //\/           //\\\\\\\\//\            //\\/
           //\/       //\/          //\\/       \\/           //\/
          //\/       //\/           \//\                     //\/
         /////////////\/             \//////\               //\/
        //\\\\\\\\\//\/               \\\\\//\             //\/
       //\/       //\/                     \//\           //\/
      //\/       //\/           ///\      //\\/          //\/       //\   
     ///\      ///\/            \/////////\\/           /////////////\/
     \\\/      \\\/              \\\\\\\\\/             \\\\\\\\\\\\\/         Present by Richard.Hu

HslCommunication.dll

Build status NuGet Status NuGet Download Gitter NetFramework Visual Studio License status copyright status

HslCommunication.jar

Build status License status NetFramework JDK status IDE status copyright status

CopyRight

本组件版权归Richard.Hu所有 [ (C) 2018 Richard.Hu, All Rights Reserved ]

Version Declaration

Version 5.X 的计划:

  • 提升组件的稳定性,尤其是在高并发的情况下
  • 扩展其他的PLC和设备通讯支持
  • 文档手册的编写
  • Java版本的支持

License

使用请遵循LGPL-3.0协议说明,除了协议中已经规定的内容外,附加下面三个条款(与原协议如有冲突以附加条款为准):

  • 允许用户使用本工具库(从NuGet下载)集成到自己的项目中作为闭源软件一部分,只需要声明版权出处并出具一份LGPL-3.0的授权协议即可。
  • 禁止复制中间的代码及参考思路开发出类似的组件库。
  • 源代码仅作为个人学习使用。

Install From NuGet

说明:NuGet为稳定版本,支持在线升级,组件的使用最好从NuGet下载,此处发布的项目有可能为还没有通过编译的测试版,NuGet安装如下:

Install-Package HslCommunication

Environment

  • IDE: Visual Studio 2017 必须这个版本及以上,不然会语法报错
  • .Net Framework环境下:支持.Net 3.5及以上环境,功能最完善。
  • .Net Standard环境下:.Net 2.0以上,目前仅仅实现PLC读写,modbus tcp读写,日志记录。
  • java环境下:Intellij Idea 2018.1

Contact

Project Target

本项目的目标在于开发一个.Net及java下大多数软件系统都会包含了基础类库功能,实现一些常用的数据通信,日志记录等等类,以及版本类,网络通讯类,PLC数据访问类。并且实现C#和java无缝通信集成。

The goal of this project is to develop a .Net and java. Most software systems will include the basic class library functions, implement some common data communications, log records, etc., as well as version classes, network communications, and PLC data access classes. And to achieve seamless integration of C# and java communications.

HslCommunication.dll Summary

完整的项目介绍地址: http://www.cnblogs.com/dathlin/p/7703805.html

Detail Introduction

HslCommunication.jar Summary

本组件提供java版本,为.net版本的阉割版,除去了所有的服务器功能代码,保留了绝大多数的客户端功能代码,方便的和PLC,设备进行数据交互,和C#程序进行数据交互,本jar组件适用用安卓开发,方便搭建一个.net 服务器 + windows 客户端 + asp.net 客户端 + j2ee 客户端 + java 客户端 + android 客户端,未来可能支持python,目前的java功能代码如下:

Second Extensions Project (内含几个Demo)

  • 基于本组件开发的一个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等的通讯测试工具,方便的进行读写测试,不需要额外的编写代码。

  • HslSharp项目 基于本组件深度定制实现的OPC UA网关服务器,实现基于三菱,西门子,欧姆龙,modbus等HslCommunication支持的协议创建可配置的OPC UA服务器。下载地址:HSLSharp.zip

Contribution

热烈欢迎对本项目的代码提出改进意见,可以发起Pull Request,对于代码量贡献较多的小伙伴,会有额外的组件使用权,并在特别感谢里写明。

Thanks

  • 混合锁及可序列化异常类,读写锁,并发模型部分代码及思路参考《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.

打赏

HslCommunicationDemo

v5.2.0 function, support Picture

Controls

This library include some controls render upside picture. u can easily use them Picture

三菱测试界面 [ Mitsubishi PLC Communication ]

Using MC protocol, Qna 3E, Include binary and ascii Picture

西门子测试界面 [ Siemens PLC Communication ]

Using S7 protocol And Fetch/Write protocol Picture

欧姆测试界面 [ Omron PLC Communication ]

Using Fins-tcp protocol Picture

Modbus-Tcp 客户端服务器 [ Modbus-tcp Communication ]

Client, using read/write coils and register, read discrete input , read register input Picture

Server, you can build your own modbus-tcp server easily Picture

Simplify Net 测试演示 [ Based on Tcp/Ip ]

Communicaion with multi-computers , client can exchange data with server easily, include server side ,client side

Picture Picture

Udp Net 测试演示 [ Base on Udp/Ip ]

Communicaion with multi-computers , client can send a large of data to server, include server side ,client side

Picture Picture

File Net 测试演示 [ Base on Tcp/Ip ]

Communicaion with multi-computers , client can exchange File with server easily, include server side ,client side

Picture Picture

About

个人工具库,包含日志类,异步网络通讯类,版本控制的类,注册码生成类,数据加密解密类,文件上传下载类,三菱,西门子,欧姆龙PLC访问类,modbus tcp服务器及客户端类。Personal tools library, including log class, asynchronous network communication class, version control class, registration code generation class, data encryption and decryption class, file upload and download class, Mitsubishi, Siemens, Omron PLC access class, …

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 84.2%
  • Java 15.7%
  • Python 0.1%