自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (3)
  • 收藏
  • 关注

原创 基于C#开发OPC DA客户端——基于OPCDAAuto

自动化接口中共定义了6类对象:OPCServer对象、OPCBrowser对象、OPCGroups对象、OPCGroup对象、OPCItems对象、OPCItem对象。

2024-03-01 21:47:33 1181

原创 基于C#开发OPC DA客户端——搭建KEPServerEX服务

OPC DA (OLE for Process Control Data Access) 是一种工业自动化领域中的通信协议标准,它定义了应用程序如何访问由OPC服务器提供的过程控制数据。OPC DA标准允许软件应用程序(客户端)从OPC服务器读取实时数据或向服务器写入数据,从而实现对工业设备或系统的监控和控制。OPC DA标准的核心是OPC数据访问规范,它定义了一组COM(Component Object Model)接口,这些接口允许OPC客户端应用程序与OPC服务器进行通信。

2024-03-01 21:46:45 1277

原创 MQTT协议格式详解

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议)是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议。MQTT协议特点包括轻量、简单、开放和易于实现,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)中已广泛使用。MQTT最大优点在于,。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。。

2024-02-27 21:03:04 1997

原创 三菱MC协议及报文格式详解

三菱MC协议是指三菱电机公司(Mitsubishi Electric)使用的一种通信协议,用于在三菱PLC(可编程逻辑控制器)和其他设备之间进行数据交换和通信。

2023-11-02 09:43:04 6540

原创 西门子S7协议及报文格式详解

S7Comm(S7 Communication)是西门子专有的协议,是西门子S7通讯协议簇里的一种。S7通信协议是西门子S7系列PLC内部集成的一种通信协议,是S7系列PLC的精髓所在。它是一种运行在传输层之上的(会话层/表示层/应用层)、经过特殊优化的通信协议,其信息传输可以基于MPI网络、PROFIBUS网络或者以太网S7在TCP连接上后还需要进行两次握手S7协议的TCP/IP实现依赖于面向块的ISO传输服务。

2023-09-20 12:48:11 16625 1

原创 倍福ADS通讯(三)——ADS通讯协议包格式

ADS在传输层上使用的是TCP协议,同样在数据通讯时需要TCP的三次握手。1.数据包格式数据包大小描述AMS/TCP Header6 bytes包含了ADS Data的长度。AMS Header32 bytes此处包含了通讯的发送方和接收方地址,以及ADS错误代码、ADS命令代码和其他一些信息ADS DataN bytes此处包含了一个ADS命令的参数。参数的数据结构由ADS命令所决定,一些ADS品令也可以没有附加的数据。2.AMS Header主体包

2022-04-12 17:14:02 8161 8

原创 倍福ADS通讯(二)——TwinCat ADS通讯方式

TwinCat ADS通讯方式(同步和异步两种方式)★ 异步方式(Asynchronous)★ 同步方式(Synchronous)读取方式——变量名句柄方式读取方式——变量地址方式不同方式的读取优缺点★ 异步方式(Asynchronous)ADS 客户端向ADS 服务器发送ADS 请求,同时客户端继续自己的工作。ADS 服务器处理请求后,把响应以Call-back 函数方式发给客户端。优点:不会造成系统堵塞缺点:不能确保每次请求都有返回★ 同步方式(Synchronous)ADS 客户端向ADS

2022-04-12 16:53:34 6933 4

原创 倍福ADS通讯(一)——ADS通讯简介

ADS通讯简介(一)简介(二)ADS通讯协议概述(三)ADS通讯协议的设备标识(四)使用TwinCAT.Ads中间件(一)简介在Beckhoff TwinCAT 系统中,各个软件模块(如TwinCAT PLC、TwinCAT NC、Windows 应用程序等)的工作模式类似于硬件设备,它们能够独立工作,各个软件模块之间的信息交换通过TwinCAT ADS 而完成。因此各个ADS 设备之间都能够交换数据和信息。(二)ADS通讯协议概述ADS通讯协议位于网络通讯协议的应用层(三)ADS通讯协议的设

2022-04-12 16:27:31 12880

原创 欧姆龙 Omorm FINS通讯实例C#

根据对MODBUS TCP跟RTU之间通讯协议封装后写了一个通讯的DEMO例子,界面是参考的HSL软件的布局,主要是针对线圈寄存器和保存寄存器的多读写。在这里插入图片描述主要的功能:Omron FINS两种通讯方式BOOL类型线圈寄存器的多读写保存寄存器各种数据类型的写入读取通讯时发送和读取到的字节数据日志主要逻辑:首先是跟串口或者TCP通讯,其次是数据类型的写入,根据不同数据类型的字节长度读取跟写入对应的寄存器长度。Fins协议在Socket通讯成功后还需进行一次握手通讯,在握

2021-08-05 14:59:24 1838 1

原创 MODBUS RTU/TCP通讯实例C#(附源码)

根据对MODBUS TCP跟RTU之间通讯协议封装后写了一个通讯的DEMO例子,界面是参考的HSL软件的布局,主要是针对线圈寄存器和保存寄存器的多读写。主要的功能:MODBUS TCP/RUT两种通讯方式BOOL类型线圈寄存器的多读写保存寄存器各种数据类型的写入读取通讯时发送和读取到的字节数据日志主要逻辑:首先是跟串口或者TCP通讯,其次是数据类型的写入,根据不同数据类型的字节长度读取跟写入对应的寄存器长度。目前主要是针对数据的写入跟读取做一个简单的DEMO,扩展可以在这个之上进行扩

2021-06-26 17:35:58 13190 15

原创 MODBUS RTU/TCP协议及常用功能码详解

一、简介ModBus是Modicon公司为其PLC通讯而开发的一种通讯协议。如今Modicon公司已经被施耐德收购成为了施耐德旗下品牌。从1979年问世至今,已经成为工业通讯领域的业界标准。ModBus具有两种串行传输模式,ASCII 和 RTU。它们定义了数据如何打包、解码的不同方式。支持 Modbus 协议的设备一般都支持 RTU 格式。通信双方必须同时支持上述模式中的一种。MODBUS寄存器分类寄存器种类读写状态数据类型功能码PLC地址线圈寄存器读/写位(bit)

2021-06-23 23:27:01 27603 6

原创 关于MariaDB的中文乱码问题

cmd命令进入Dos窗口使用CD 切换到MariaDB的BIn文件目录CD C:\Program Files\MariaDB 10.5\bin使用mysql -u root -p后输入密码进入mysql服务中使用use mysql;切换到mysql服务先查看自己数据库的默认字符集show variables like “%character%”;show variables like “%collation%”;看到了默认的基本都是GBK和latin1。SHOW CHARSET;命令能查

2021-04-21 11:17:32 955

原创 c#的Socket实现多人聊天室(附源码)

在计算机通信领域,socket 被翻译为“套接字”,它是计算机之间进行通信的一种约定或一种方式。通过 socket 这种约定,一台计算机可以接收其他计算机的数据,也可以向其他计算机发送数据套接字之间的连接过程可以分为三个步骤 :(1)服务器监听。(2)客户端请求。(3)连接确认 。c#的Socket通讯实现聊天室,支持消息与图片发送c#实现的主要步骤:1:第一步创建一个开始监听的Socket2:第二步创建Ip地址和端口号对象3:第三步让监听的Socket绑定Ip地址跟端口号4:第四步

2021-01-02 13:05:53 6630 14

原创 c#Base64编码与图片相互转换

图片转换成Base64编码 /// <summary> /// 图片转Base64 /// </summary> /// <param name="ImageFileName">图片的完整路径</param> /// <returns>返回base64码</returns> public static string ImgToBase64(string I

2020-11-09 15:05:53 435

原创 c#串口通讯详解(附源码)

串口通讯 串口通讯是计算机传输数据的一种通讯方式,只不过是以比特位来传输数据的串口通讯的相关参数波特率:波特率的大小代表每秒钟可以传输多少个二进制位,如波特率是9600,能每秒传输9600二进制位起始位、停止位数据包从起始位开始,到停止位结束。起始信号用逻辑0的数据位表示,停止信号由0.5、1、1.5或2个逻辑1的数据位表示,只要双方约定一致即可。标识这本次通讯单元的结束数据位起始位之后便是传输的主体数据内容了,也称为有效数据,其长度一般被约定为5、6、7或8位长。表示一次通讯真正的要发.

2020-11-03 16:26:32 14284 10

原创 一篇文章彻底理解Base64编码原理

Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。Base64不是加密算法,它是一种编码的格式加密:是把明文变成不可解的密文,提高识别难度编码:是换一种体现形式,以便以传输,提高可读性什么情况下使用Base64呢URL特殊字符,转码,转义,嵌入图片 src=“Base码”Base64就是使用64个可打印的字符来表示二进制数据的方法Base64的编码规则把3个八位字节(38=24)转化成4个6位的字节(46=2

2020-10-28 17:14:42 363

原创 字符编码讲解:ASCII、GB2312、GBK、Unicode、UTF-8关系

字符编码讲解ASCIIGB2312GBKGB18030Unicode(万国码)UTF-8ASCII标准的ACSII码是用一个字节中的7个二进制位,最高位0或者作为校验位,可以表示2^7即0000 0000~0111 1111 共128个字符。扩展的ASCII码当欧洲国家使用时128个符号是不够的,于是,一些欧洲国家就决定,利用字节中闲置的最高位编入新的符号,用满了一个字节的8个二进制位,可以表示2^8即256个字符GB2312当中国也开始使用计算机的时候,因为中国文化博大精深,象形文字多啊,256

2020-10-28 12:34:57 2656

原创 ACSII码详解

计算机以二进制的形式存储和处理数据,因此字符必须按特定的规则进制二进制编码才能进入计算机ASCII(American Standard Code for Information Interchange:美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统ACSII 是对一套西文字符(字母,数字,符号)进行二进制编码的体系编码方式:用一个字节来表示控制字符,数字,字母,英文标准点符号标准的ACSII码是用一个字节中的7个二进制位,最高位0或者作为校验位,可以表示2^7即128个字符。扩展的ASC

2020-10-27 16:39:13 14955

原创 c#进制转换(二进制,八进制,十进制,十六进制互转)

进制转换二进制转八进制,十进制,十六进制二进制转八进制二进制转十进制二进制转十六进制八进制转二进制,十进制,十六进制八进制转二进制八进制转十进制八进制转十六进制十进制转二进制,八进制,十六进制十进制转二进制十进制转八进制十进制转十六进制十六进制转二进制,八进制,十进制十六进制转二进制十六进制转八进制十六进制转十进制二进制转八进制,十进制,十六进制二进制转八进制1:先将二进制转换成十进制 string-->intConvert.ToInt32("1010", 2)//输出: 102:再将十进制

2020-10-16 16:12:45 12914 2

原创 二进制,八进制,十进制,十六进制(全)相互转换详解

二进制,八进制,十进制。十六进制相互转换二进制转八进制,十进制,十六进制二进制转八进制二进制转十进制二进制转十六进制八进制转二进制,十进制,十六进制八进制转二进制八进制转十进制二进制转八进制,十进制,十六进制二进制转八进制转法:取三合一法,以二进制的小数点为分界点,向左(或向右)每三位取一位,每三个二进制表示一个八进制例:101100.010101(二进制)=》54.25(八进制) 小数点前:101=5 ,100=4 小数点后:010=2 ,101=5 值最后等于54.25如:向左向右

2020-10-15 21:05:09 20809 2

原创 集SQL Server,MySQL,Oracle分页查询(全)

SQL分页查询语句SQL Server分页查询第一种:子查询第二种:ROW_NUMBER()分页第三种:Offset and Fetch分页MySQL分页查询第一种:limit 基本实现方式第二种:建立主键或者唯一索引Oracle分页查询方法:使用rowmun生成伪列SQL Server分页查询第一种:子查询1:先查询出当前页码之前的所有数据idselect top (当前页码-1)*当前页码显示条数 ID from 表名2:查询出ID不在之前查询的数据中,再查询数据的前几条select

2020-10-15 15:37:04 199

原创 Git命令汇总

Git命令Git是分布式版本控制系统集中式和分布式版本控制系统的区别:集中式版本控制系统,版本库是放在中央服务器的,需要先从中央服务器取得最新版本后,在完成自己任务的时候推送到中央服务器,集中式必须在联网的情况下才能工作分布式版本控制系统,每个人都有一份版本库,双方修改后推送给对方,就能看到对方的修改,Git在不联网的情况下也能工作Git安装Windows从官网https://git-scm.com/downloads下载安装在开始菜单找到GIT->Git Bush弹出此页面则安装成功

2020-09-09 00:57:06 183 1

原创 SQL order by多列排序(升降序)

示例代码:SELECT s.SITENAME,c.* FROM CAIJI c,SITE s WHERE c.STATIONID=s.STATIONID ORDER BY CHECKTIME desc,c.CHECKID desc解析:使用多列进行排序时,左边的列的排序优先级高于右侧ORDER BY CHECKTIME,CHECKID 注: // CHECKTIME升序 CHECKID升序CHECKTIME升序 CHECKID升序ORDER BY CHECKTIME DESC

2020-07-27 16:25:34 3306 3

原创 二进制,八进制,十进制,十六进制的详解

进制的概念二进制:0 1八进制:0 1 2 3 4 5 6 7十进制:0 1 2 3 4 5 6 7 8 9十六进制:0 1 2 3 4 5 6 7 8 9 A B C D E F因为人类天然性的拥有十个手指,所有我们选择了十进制-手指来进行计数十进制的基数为10,数码由0-9组成,计数规律逢十进一。进制有 0~9 共10个数字,基数为10,在加减法运算中,逢十进一,借一当十。二进制用0、1两个数字来表示数值,这就是二进制二进制的算法和十进制是类似的:十进制是逢十进一,借一当十

2020-06-05 20:42:11 13355

原创 asp中AspNetPager分页控件的sql和存储过程的用法

基于班上的需求简单的使用AspNetPager控件的两种方法第一步首先去网上下载AspNetPager插件第二步将控件放到项目的bin问件下将控件导入到项目中去:事项右击工具箱中的选择项点击浏览将bin文件下的AspNetPager导入进去有时会出现后台点不出包可以在项目中添加引用将控件拖放到页面后我们需要知道AspNetPager插件的三个属性RecordCount是数据的总行...

2019-03-13 16:41:33 340

c#socket实现聊天室

1:支持局域网聊天室 2:支持发送图片 3:支持服务器向客服端单个通讯 4:支持客服端发送后所有客服端可见(服务器转发)

2021-01-02

c#串口通讯助手代码

1、实现自动加载可用串口。 2、打开串口,并且使用C#状态栏显示串口的状态。 3、实现了串口的接收数据和发送数据功能。 4、可以清空发送和接收文本框中的内容。 5、可以实时计算发送和接收的字节数。

2020-11-03

c#二进制,八进制,十进制相互转换

c#二进制,八进制,十进制相互转换详解,模拟的小程序,感兴趣的可以下载看看,恰恰饭,暂时不支持小数点

2020-10-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除