PPI协议解密

合集下载

网络协议中的安全加密与解密机制

网络协议中的安全加密与解密机制

网络协议中的安全加密与解密机制近年来,随着互联网的快速发展,网络安全问题备受关注。

在网络通信中,安全加密与解密机制是确保数据隐私和防止信息被窃取的重要手段。

本文将探讨网络协议中的安全加密与解密机制,并介绍一些常见的加密算法和协议。

一、安全加密机制在网络通信中,安全加密是指通过某种算法将原始的明文数据转换成无法直接理解的密文,从而保障数据的机密性。

在加密过程中,密钥充当着重要的角色,只有拥有正确的密钥,才能解密密文并还原成明文。

1. 对称加密算法对称加密算法是一种使用相同密钥进行加密和解密的算法。

在通信的过程中,发送方和接收方必须共享同一个密钥。

常见的对称加密算法有DES、AES和3DES等。

DES(Data Encryption Standard)是一种使用56位密钥进行加密和解密的算法,AES(Advanced Encryption Standard)是一种更为安全的加密算法,支持128、192和256位密钥。

2. 非对称加密算法非对称加密算法是一种使用一对密钥进行加密和解密的算法,这对密钥分别称为公钥和私钥。

发送方使用接收方的公钥进行加密,而接收方使用自己的私钥进行解密。

RSA 和 ECC 算法是常见的非对称加密算法,它们具有较高的安全性和可靠性。

3. 哈希算法哈希算法是一种将明文数据通过散列运算转化为固定长度的值的算法。

常见的哈希算法有MD5、SHA-1和SHA-256等。

哈希算法具有不可逆性和易计算性的特点,广泛应用于数据完整性验证和数字签名等领域。

二、安全解密机制在网络通信中,只有拥有正确的密钥才能对密文进行解密还原成明文。

安全解密机制是保证通信双方只有在拥有正确密钥的情况下才能成功解密的手段。

1. 密钥交换协议密钥交换协议是在通信建立阶段,用于协商和交换加密通信所使用的密钥,以保证通信的机密性。

Diffie-Hellman密钥交换协议是最常用的密钥交换协议之一,它通过非对称加密算法实现了双方在不泄露密钥的情况下完成密钥协商。

通信协议中的数据加密和解密技术

通信协议中的数据加密和解密技术

通信协议中的数据加密和解密技术随着数字通信技术的不断发展和普及,人们在日常生活中越来越离不开各种通信设备。

在这个过程中,通信协议充当了非常重要的角色。

通信协议是数据的传输规范,它确保了数据的可靠传输和接收。

然而,随着网络安全问题日益凸显,数据保密和加密技术在通信协议中的作用也日益重要。

本文将探讨通信协议中的数据加密和解密技术。

一、加密的基本原理数据加密是一种以密码学为基础的技术,它通过对数据进行处理,使之对外部获取者变得难以理解或破解。

加密技术的加密和解密过程都依赖于某种密钥,通信双方之间需要互相共享这个密钥来完成加解密操作。

现代加密技术通常有对称密钥加密和公钥加密两种。

对称密钥加密是指通信双方使用相同密钥进行加密和解密,这种方式效率高但安全性较低。

公钥加密是指通信双方使用不同的公钥和私钥进行加解密,这种方式具有更高的安全性但加解密过程比较慢。

二、传统的数据加密方式传统的加密方式有几种,最常用的是对称密钥加密和非对称密钥加密。

对称密钥加密:对称密钥加密又称为单密钥加密,加密和解密都使用相同的密钥。

这种方式的特点是加解密速度快,但需要保证密钥传输的安全性。

非对称密钥加密:非对称密钥加密又称为双密钥加密,使用两个密钥:公钥和私钥。

公钥可以公开,并且在通信双方之间进行传递,而私钥必须保护好。

这种方式具有更高的安全性,但加解密速度较慢。

三、通信协议中的数据加密技术通信协议中的数据加密技术在实现过程中需要考虑以下几个方面:1. 加密算法的选择在选择加密算法时,需要考虑到算法的可靠性、加密强度、执行速度等方面。

例如,AES(Advanced Encryption Standard)是一种非常流行的对称加密算法,因为它具有相对较高的安全性和更快的执行速度。

2. 密钥管理密钥管理是非常重要的一环,它保证了密钥的安全性和可靠性。

密钥可以通过加密协议进行交换或者通过第三方认证机构进行验证和管理。

3. 数据的完整性和认证加密技术不仅可以提高数据的保密性,还可以保证数据的完整性和认证。

浅谈三种最常规的HTTPS流量解密方法及原理

浅谈三种最常规的HTTPS流量解密方法及原理

浅谈三种最常规的HTTPS流量解密方法及原理HTTPS(Hypertext Transfer Protocol Secure)是一种基于HTTP的安全通信协议,通过使用加密连接来保护数据的传输安全。

在HTTPS中,客户端和服务器之间的通信通过加密来保护,因此无法直接解密和查看其中的内容。

然而,有些特定场景下,我们可能需要对HTTPS流量进行解密,以便进行网络分析、安全审计或调试。

下面将浅谈三种最常规的HTTPS流量解密方法及原理:1.使用SSL握手信息解密SSL(Secure Sockets Layer)握手是建立HTTPS连接的过程,它包括密钥交换、身份验证和通信参数的协商等步骤。

在SSL握手过程中,客户端和服务器会交换双方支持的加密算法和密钥信息。

因此,如果我们能够获取到SSL握手过程中的加密算法和密钥信息,就可以使用这些信息来解密HTTPS流量。

具体的实现方法是,我们可以使用中间人攻击(Man-in-the-Middle,MitM)技术,将自己伪装成服务器,与客户端建立HTTPS连接。

在握手过程中,我们可以获取到客户端和服务器之间的SSL握手信息,包括加密算法和密钥等。

然后,我们可以使用这些信息来解密HTTPS流量,并查看其中的内容。

2.使用证书私钥解密在HTTPS连接中,服务器会使用数字证书来进行身份验证,确保客户端和服务器之间的通信是安全可信的。

数字证书中包含了服务器的公钥和用于签名的证书颁发者的私钥。

我们可以使用服务器的私钥来解密HTTPS流量。

具体的实现方法是,我们可以在服务器上获取到私钥文件,然后使用私钥来解密HTTPS流量。

需要注意的是,获取私钥文件需要合法的权限,否则将属于违法行为。

3.使用代理解密代理是一种用于转发网络请求的设备或软件,可以拦截客户端和服务器之间的通信,并在两者之间建立自己的连接。

在HTTPS情况下,代理通常会使用自签名证书来与客户端和服务器进行连接,并使用旁路方式拦截HTTPS流量。

通信协议破解

通信协议破解

通信协议破解通信协议破解是指通过技术手段对特定的通信协议进行解密或破解,以获取通信内容或者窃取相关信息的行为。

随着信息技术的不断发展,通信协议破解已经成为了一个严重的安全威胁,对个人隐私和国家安全都构成了严重的威胁。

因此,加强通信协议的安全性,防止通信协议被破解成为了当务之急。

首先,了解通信协议的基本原理是十分重要的。

通信协议是指在数据传输过程中,双方约定的一套规则和标准,以确保数据的正确传输和接收。

通信协议通常包括物理层、数据链路层、网络层、传输层和应用层等不同的层次。

在这些层次中,数据被分割、封装和传输,每一层都有自己的协议规则和标准。

了解通信协议的基本原理,有助于我们更好地理解通信协议的安全性问题。

其次,加强通信协议的加密技术是防止通信协议被破解的重要手段。

通过对通信内容进行加密处理,可以有效地防止黑客和恶意攻击者对通信协议进行破解。

目前,常用的通信协议加密技术包括对称加密、非对称加密、数字证书和SSL/TLS 等。

这些加密技术可以有效地保护通信内容的安全,防止信息被窃取和篡改。

此外,及时更新通信协议的安全补丁也是保护通信协议安全的重要措施。

随着通信技术的不断发展,通信协议中可能会存在各种漏洞和安全隐患。

及时更新通信协议的安全补丁,可以修复这些漏洞和隐患,提高通信协议的安全性,防止黑客利用这些漏洞进行攻击和破解。

最后,加强对通信协议安全的监控和管理也是防止通信协议被破解的重要手段。

通过建立完善的安全监控系统,可以及时发现通信协议中的安全问题和异常情况,采取相应的措施进行处理。

同时,加强对通信协议的管理,限制通信权限和访问权限,可以有效地防止通信协议被非法窃取和破解。

总之,通信协议破解是一个严重的安全威胁,对个人隐私和国家安全都构成了严重的威胁。

加强通信协议的安全性,防止通信协议被破解已经成为了当务之急。

通过加强通信协议的加密技术、及时更新安全补丁、加强安全监控和管理等措施,可以有效地提高通信协议的安全性,防止通信协议被破解。

S7-200 PPI通信协议介绍及测试源码、协议下载

S7-200 PPI通信协议介绍及测试源码、协议下载

S7-200 PPI通信协议介绍及测试源码、协议下载摘要:通过数据监视,分析的方法,找出了PPI协议的关键报文格式,可用于上位机、单片机与S7-200 CPU之间通讯。

关键字:PLC ,PPI ,协议1 前言为了实现西门子S7-200 PLC与单片机(RS485)间通信,在单片机和PLC中都要编写数据通信程序。

使用PPI协议进行通信时,PLC可以不用编程,而且可读写所有数据区,快捷方便。

但是西门子公司没有公布PPI协议的格式。

用户如果想使用PPI协议监控,必须购买其监控产品或第三方厂家的组态软件。

这样给用户自主开发带来一定困难,特别是自行开发的现场设备就不能通过PPI协议接入PLC。

其它通讯方式编程也存在编程复杂,需要购买软件和授权等局限性(1)。

通过数据监视、分析的方法,我们找出了PPI协议的关键报文格式,可用于上位机、现场设备与S7-200 CPU之间通讯。

本以AT89S8252完全兼容51指令,内部带8K Flash , 2K EEPROM,内部集成Uart的单片机为例!2 分析方法西门子的Step 7 Micro/Win32 是用于S7-200系列PLC的开发工具,它使用PC机上的COM口通过一条PC/PPI编程电缆连到PLC的编程口上。

这说明,PC实际上是可以通过串口同S7-200 CPU通讯。

只是我们不知道通讯协议而已。

通过截获PC机串口上的收发数据,对照Step 7软件发出的指令,我们就有可能分析出有关指令的报文和通讯方式;然后,直接通过串口向PLC发送报文,以验证这些指令报文是否正确。

本着这一思想,我们采用以下步骤获得这些报文。

首先制作一个串口的分支器,COM1的RX、TX分别接到COM2的TX、RX,即交叉接线,使得COM1发的数据COM2能收到。

PC/PPI编程电缆接在COM1上,这样,Step7 Micro/Win32发给PLC的报文就可以在COM2上接收了。

我们按S7-200系统手册设置好两个串口,参数要一样,均为9600,8,偶校验,1位停止位。

私有工业通讯协议的破解过程

私有工业通讯协议的破解过程

私有工业通讯协议的破解过程在破解之前,先说一说为什么要破解的缘由。

随着现代工业化的进一步进展,信息化建设的需要,工业智能设备或系统与上层信息化系统之间的互联互通已成为必需的。

虽说现在的工业现场各类智能设备都供应了多种行业标准协议,但对工业通讯较为熟识的人都应当有所了解,工业现场的一些掌握系统如plc,dcs等用于对外供应标准协议通讯的部分属于选配件,而非原生就支持,而且都需要增加硬件配件+软件配置才能实现行业标准协议的支持。

这样的方式带来的一个现实问题就是,当时购买PLC或DCS时,实施工程的人在开发时并未实现行业标准协议的支持。

经过了多年后,项目都验收了,而企业又消失了信息化建设的需求,这时候冲突就消失了。

企业的信息化系统需要工业现场设备的数据,但现场设备的数据并未配置有用行业标准协议对外发布。

而现场设备厂家供应的软件却是可以从现场设备猎取数据的。

因此,从现场设备猎取数据的路线就有2种方式了。

1. 联系现场设备厂家或者原来的工程实施人员,在现场停机检修的时候将现场设备的配置进行修改,使得现场设备的数据能以行业标准协议对外供应。

这种方式对数据采集来说是最抱负的方式,平安性及牢靠性最高。

但从实际操作来说,不少状况下是很困难的,由于时间太长,找不到原来的实施人员,或者由于需要修改的站点多而导致成本高,现场设备厂家也不供应现场设备或系统的私有通讯协议(欧美系的PLC厂家几乎都不会供应设备的私有通讯协议)。

2. 让上层信息化系统厂家来解决此问题,实际上也就是让新系统的厂家自己想尽一切方法从现场设备猎取数据,修改现场设备(PLC或DCS)配置的方式一般也不会采纳,由于担忧带来PLC或DCS问题而担责任,因此上层系统的厂家能干的就是自己想法或拿到现场设备的私有通讯协议或破解其通讯协议。

能想任何方法去搞到现场设备的私有通讯协议资料时间对通讯取数来说也是一种平安性和稳定性都很高的方式。

而破解私有通讯协议完全就是通过抓包工具抓取现场设备和其上位软件之间通讯报文,然后利用相关工具对报文进行逐字节的分析比较,找出其规律,摸索各个报文之间的不同之处和界面配置参数的关系。

pptp协议

pptp协议

pptp协议PPTP协议。

PPTP(Point-to-Point Tunneling Protocol)是一种用于创建虚拟私人网络(VPN)的协议,它允许远程用户通过公共网络安全地访问私人网络。

PPTP协议是一种基于TCP/IP协议的VPN协议,它能够在Internet上建立点对点的虚拟专用网络连接。

PPTP协议的工作原理是通过在数据包中封装点对点协议(PPP)数据来实现。

在使用PPTP协议的VPN连接中,客户端和服务器之间会建立一个隧道,通过这个隧道传输的数据都会被加密,从而保证数据在传输过程中的安全性。

PPTP协议的加密方式采用了MPPE(Microsoft Point-to-Point Encryption)协议,它能够提供40位、56位、128位等不同级别的加密强度,以满足不同安全级别的需求。

PPTP协议的优点之一是它的简单性和易用性。

相比于其他VPN协议,PPTP协议的配置和部署都相对简单,适合不具备专业网络知识的用户使用。

同时,PPTP协议在Windows操作系统中得到了很好的支持,用户可以很方便地在Windows系统中配置和使用PPTP协议的VPN连接。

另外,PPTP协议也具有较高的兼容性。

由于PPTP协议是一种标准化的协议,它可以在多种操作系统和设备上实现,包括Windows、Mac、Linux等操作系统,以及路由器、交换机等网络设备。

这使得PPTP协议成为了一种广泛应用的VPN连接方式。

然而,PPTP协议也存在一些缺点。

由于其加密方式相对较弱,PPTP协议在安全性上不如其他VPN协议,容易受到攻击和破解。

因此,在对安全性要求较高的场景中,建议使用其他更加安全的VPN协议,如L2TP/IPsec、OpenVPN等。

另外,PPTP协议在跨网络穿越(NAT traversal)方面也存在一些问题。

在使用NAT技术的网络环境中,PPTP协议可能会遇到连接问题,需要进行额外的配置和调整才能正常工作。

PPI协议通信

PPI协议通信
可编程控制器与现场总线网络控制
PPI协议通信
1.1 PPI通信基本概念
PPI网络是一个令牌传递网,程序中指定某设备为 PPI主站模式,在RUN方式下,可使用相关通信指令对 其他PLC进行读写操作,同时可作为从站响应主站的请 求或查询。对任何一个从站,PPI不限制与其通信的主 站数量,不加中继器时,最多32个主站。PPI网络最多 可传输1,024字节,半双工传输速率为38.4 Kbps。S7300采用PtP端口进行通信,其通信编程应用相对简单, 通过调用专门的系统功能块指令SFB60发送数据,调用 系统功能块SFB61接收数据,并将数据存放在系统功能 块的相应背景数据区中保存。本节主要以S7-200的应 用为例。
2.通信数据表的格式
(1) 数据表格式
(2) 状态字节说明 数据表的第1个字节为状态字节,各个位的意义如下:
D位:操作完成位。
0:未完成,1:已经完成。
A位:操作排队效验位。 0:无效, 1:有效。
E位:错误标志位。
0:无错误,1:有错误。
E1~E4为错误编码。执行指令后,E位为1,则由E1~E4 返回错误码,编码说明见表7.2。
EEE 错误码。
(2)接受和发送缓冲区
在分流机的CPU222(站6)中,为了能在PPI主站 模式接受和发送数据,安排了接收缓冲区和发送缓冲 区如表7.3所示。
对打包机1#(站2),分流机(站6)接收和发送缓冲区的数 据表格式如表7.4所示。
对于打包机2#(站3)、打包机3#(站4)和打包机4#(站5), 分流机CPU222(站6)的接收缓冲区和发送缓冲区的数据表,只有首 地址不同,偏移地址与1#打包机相同。
在每台打包机的CPU221(站2、站3、站4和站5)中, VBl00存放控制字节,VBl01和VBl02存放包装完的纸箱 数(计数器的当前值)。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Siemens PPI协议分析大家好:我是山东临沂的郝金红,PLC解密网是我的个人网站。

由于前段时间的疯狂的研究西门子PPI协议解密之故,所以无心插柳的研究出了较实用的西门子S7-200 PPI协议,今天奉献大家。

我们经常要用于上位机、现场设备与S7-200CPU之间的通讯,但是西门子公司没有公布PPI协议的格式,用户如果想使用PPI协议监控,必须购买其监控产品或第三方厂家的组态软件。

大家要知道国内的组态王、紫金桥、力控等等组态公司是花了多少钱才得到的PPI的深层协议吗?其实西门子工控产品的超高价垄断掠夺行为已经引起了我们国家及业内人士的抵制和抗议,他们的什么软件都需要授权且对于系统的霸道性是有目共睹的,而且我是深受其害的。

^_^我最近弄了个WINCC,装了一个星期还没装上,网友告诉我要重做系统才可以,悲哀啊。

这样给用户自主开发就带来了一定的困难,特别是想用VB、VC等语言自行开发,根本没办法接入PLC,要么你大把掏钱给他们。

洋为中用,最近在国外网站得到一个串口监视软件,带协议分析的相当不错,你吧!我就是通过此软件的数据监视、分析方法,找出了PPI协议的关键报文格式所在。

其实西门子S7-200 PLC之间或者PLC与PC之间通信有很多种方式:自由口,PPI方式,MPI方式,Profibus方式。

使用自由口方式进行编程时,在上位机和PLC中都要编写数据通信程序。

使用PPI协议进行通信时,PLC可以不用编程,而且可读写所有数据区,快捷方便。

这也是我们之所以要研究、找出PPI协议的源动力!下面我们就要说说分析的方法了!西门子的STEP 7 MicroWIN 是用于S7-200系列PLC的开发工具,它使用PC 机上的COM口通过一条PC/PPI编程电缆连到PLC的编程口上。

这说明,PC实际上是可以通过串口同S7-200 CPU通讯。

只是我们不知道通讯协议而已。

通过截获PC机串口上的收发数据,对照Step 7软件发出的指令,我们就有可能分析出有关指令的报文和通讯方式;然后,直接通过串口向PLC发送报文,以验证这些指令报文是否正确。

本着这一思想,我们采用以下步骤获得这些报文。

首先你这个英文的串口监控软件,英文不好的网友可以用金山快译翻译一下,你必须使用这个软件,因为我先前使用过很多的监控软件,在收发数据很多的情况下都有死机现象,造成数据丢失,容易给我们错误分析。

接下来你先打开这个软件,新建、选择端口COM1,然后再将PC/PPI编程电缆接在COM1上,这样,Step7 Micro/Win发给PLC的报文就可以在监视软件上完全裸露的展现在你的面前了。

我们按S7-200系统手册设置好串口参数:9600,8,E偶校验,1位停止位。

然后设置好Step7软件,使之能与S7-200 CPU正常通讯。

从Step7软件中发出一个明确指令,监视软件就能显示这条报文了(用16进制显示,ASCII 码的只能看到几个版本号之类的,其他都没有意义)。

我们的破解策略就是通过软件监视的方法,分析PLC内部固有的PPI通讯协议,然后上位机采用VB编程,遵循PPI通讯协议,读写PLC数据,实现人机操作任务。

这种通讯方法,与一般的自由通讯协议相比,省略了PLC的通讯程序编写,只需编写上位机的通讯程序资源。

S7-200的编程口物理层为RS-485结构,SIEMENS提供MicroWin软件,采用的是PPI(Point to Point)协议,关于232串口转485你可以采用我们网站开发研制的自制PPI电缆,效果倍好哦!还是自己动手,丰衣足食啊!不能光说不练啊!下面我们就说说西门子PLC到底是怎么通讯的。

PC与PLC采用主从方式通讯,PC按如下文的格式发读写指令,PLC作出接收正确的响应(返回应答数据E5H或F9H见下文分析),上位机接到此响应则发出确认命令(10 02 5C 5E 16),PLC再返回给上位机相应数据。

一般上位机要连接PLC就要先发送如下寻呼数据 10 02 00 49 4B 16 同志们呐!我们可都是有血、有肉、有思想、有灵感的高级动物啊,面对这么多枯燥、无味、复杂、混乱的机器数字你怎么记呢?反正我是记不住啊!(^_^开始洗脑)这时你可以闭上眼睛,安静、静、再静。

想一想战争时期的战地对讲机通话模式,那么这个指令(10 02 00 49 4B 16)就可以理解为:00呼叫02,听到请回答。

现在我们来简单的分析一下这个指令的具体含义: 10起始符 02是上位机要联系的下位机的地址站号,就是要找的人 00就是上位级本身自己的站号 49寻呼指令 16终止符其中4B为校验码,是这样得来的:02+00+49的最后两位就是校验码,这就是所说的偶校验或称和校验也称余校验,因为取的是余数。

计算器在16进制计算时公式(02+00+49)mod 100得出的数就是校验码,你计算一下是不是等于4B啊!其他的所有PPI协议校验都是如此。

假如02站号的PLC收到寻呼信号那么会回答: 10 00 02 00 02 16 意思是:报告00 ,02收到,请指示这样的解释是不是很好理解啊!你有更好的解释吗?接下来呢,找到了要寻呼的人PC上位机,就是司令啦!就可以发号施令了,发号施令后PLC正确接收后就会发送 E5 字符,意思是:“02洞两明白”。

其实啊,说到这里PLC只说他明白,他已经明白了上位机PC的指示,但并没有执行命令,那么要怎么他才执行命令呢?就是上位机PC发出确认命令后才执行。

这时上位机会发出确认指令(10 02 5C 5E 16),意思是:“请立即执行”。

然后PLC就干他应当干的工作了!原来PLC也不容易啊,怪不得叫下位机呢!说了这么多乱不乱呐?目的就是要理清上下级关系、主从关系,指令的顺序,用一个好的记忆方法记住枯燥无味的机器码。

下面我们列表分析读取PLC密码的指令:68 1B 1B 68 02 00 6C 32 01 00 00 00 00 00 0E 00 00 04 01 12 0A 10 02 00 08 00 00 03 00 05 E0 D2 16读命令分析:一次读一条数据SD LE LER SD DA SA FC DASP SSAP DU FCS EDSD:(Start Delimiter)开始定界符(68H)LE:(Length)报文数据长度LER:(Repeated Length)重复数据长度SD: (Start Delimiter)开始定界符(68H)SA:(Source Address)目标地址,指该地址的值,就是PLC的地址DA:(Destination Address)本地地址,指该地址的指针,就是上位机自己的地址FC:(Function Code)功能码,5CH为交替周期触发,6CH为首次信息周期触发,7CH为交替周期触发。

DSAP:(Destination Service Access Point)目的服务存取点SSAP:(Source Service Access Point)源服务存取点DU:(Data Unit)数据单元FCS:(Frame Check Sequence)校验码ED:(End Delimiter)结束分界符(16H)报文数据长度和重复数据长度为自DA至DU的数据长度,校验码为DA至DU数据的和校验,只取其中的末字节值关于这个校验码的计算方法同上面说明。

在读写PLC的变量数据中,读数据的功能码为 6CH,写数据的功能码为 7CH。

对于一次读取一个数据,读命令都是33个字节。

前面的0—21字节是相同的,为读取PLC密码的指令:68 1B 1B 68 02 00 6C 32 01 00 00 00 00 00 0E 00 00 04 01 12 0A 10 02 00 08 00 00 03 00 05 E0 D2 16因为是PC上发的读PLC数据的命令,SA=00,DA=02,如果有多个站,DA要改成相应的站号。

读命令中从DA到DU的长度为1B即27个字节。

从22字节开始根据读取数据的类型、位置不同而不同。

上表是读不同存储器命令的Byte22—32。

上表读命令的Byte22-32从表中我们可以得出以下结果:Byte 22 读取数据的长度01:1 Bit 02:1 Byte04:1 Word 06:Double WordByte 24数据个数,这里是01 ,一次读多个数据时见下面的说明。

Byte 26 存储器类型,01:V存储器 00:其它Byte 27 存储器类型04:S 05:SM 06:AI 07:AQ 1E: C81:I 82:Q 83:M 84:V 1F: TByte 28,29,30存储器偏移量指针(存储器地址*8),如:VB100,存储器地址为100,偏移量指针为800,转换成16进制就是320H,则Byte 28—29这三个字节就是:00 03 20。

Byte 31 校验和,前面已说到这是从(DA+SA+DSAP+SSAP+DU) Mod 256 。

一次读多条数据对于一次读多个数据的情况,前21Byte与上面相似只是长度LD,LDr及Byte 14不同:Byte 14 数据块占位字节,它指明数据块占用的字节数。

与数据块数量有关,长度=4+数据块数*10,如:一条数据时为4+10=0E(H);同时读M,V,Q三个不同的数据块时为4+3*10=22(H)。

Byte 22 总是02 即以Byte为单位。

Byte 24 以字节为单位,连续读取的字节数。

如读2个VD则Byte24=8Byte 19---30 按上述一次读一个数据的格式依次列出,Byte 31---42 另一类型的数据,也是按上述格式给出。

以此类推,一次最多读取222个字节的数据。

写命令分析:一次写一个Double Word类型的数据,写命令是40个字节,其余为38个字节。

写一个Double Word类型的数据,前面的0—21字节为:68 23 23 68 02 00 6C 32 01 00 00 00 00 00 0E 00 00 04 01 12 0A 10写一个其它类型的数据,前面的0—21字节为:(与上面比较,只是长度字节发生变化)68 21 21 68 02 00 6C 32 01 00 00 00 00 00 0E 00 00 04 01 12 0A 10从22字节开始根据写入数据的值和位置不同而变化。

上表是几个写命令的Byte22—40。

字节 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40写入位置及值长度个数类型偏移量位数值、校验码、结束符M0.0=1 01 00 01 00 00 82 00 00 00 00 03 00 01 01 00 71 16M0.0=0 01 00 01 00 00 83 00 00 00 00 03 00 01 00 00 70 16M0.1=1 01 00 01 00 00 83 00 00 01 00 03 00 01 01 00 72 16vb100=10 02 00 01 00 01 84 00 03 20 00 04 00 08 10 00 AE 16vb100=FF 02 00 01 00 01 84 00 03 20 00 04 00 08 FF 00 9D 16VW100=FFFF 04 00 01 00 01 84 00 03 20 00 04 00 10 FF FF A6 16VD100=FFFFFFFF 06 00 01 00 01 84 00 03 20 00 04 00 20 FF FF FF FF B8 1写命令的Byte22—最后,经分析我们可以得出以下结果:Byte 22-- Byte 30 写入数据的长度、存储器类型、存储器偏移量与读命令相同。

相关文档
最新文档