s7-200可以直接通讯modbus吗_s7-200的特点与解密方法_0

作者: admin 分类: 体育 发布时间: 2019-06-04 11:29

  s7-200概述

  S7-200是一种小型的可编程序控制器,适用于各行各业,各种场合中的检测、监测及控制的自动化。S7-200系列的强大功能使其无论在独立运行中,或相连成网络皆能实现复杂控制功能。因此S7-200系列具有极高的性能/价格比。

  s7-200的优点

  1)极高的可靠性。

  2)极丰富的指令集。

  3)易于掌握。

  4)便捷的操作。

  5)丰富的内置集成功能。

  6)实时特性。

  7)强劲的通讯能力。

  8)丰富的扩展模块。

s7-200可以直接通讯modbus吗_s7-200的特点与解密方法

  S7-200系列PLC的特点

  一:功能强

  1. S7-200有6种CPU模块,最多可以扩展7个扩展模块,扩展到256点数字量I\O或45路模拟量I\O,最多有24KB程序储存空间和10KB用户数据存储空间。

  2.集成了6个有13种工作模式的高速计数器,以及两点高速脉冲发生器\脉冲宽度调制器。CPU 224XP的高速计数器的最高计数频率为200kHZ,高速输出的最高频率为100kHZ。

  二:先进的程序结构

  S7-200的程序结构简单清晰,在编程软件中,主程序、子程序和中断程序分页存放。使用各程序块中的局部变量。易于将程序快移植到别的项目。子程序用输入、输出参数作软件接口,便与实现结构化编程。S7-200的指令功能强,易于掌握。

  三:灵活方便的存储器结构

  S7-200的输入(I)、输出(Q)、位存储器(M)、顺序控制继电器(S)、变量存储器(V)和局部变量(L)均可以按(bit)、字节、字和双字读写。

  四:功能强大、使用方便的编程软件

  编程软件STEP 7-Micro\WIN可以使用包括中文在内的多种语言。有梯形图、语句表和功能块图编程语言,以及SIMATIC、IEC61131-3两种编程模式。

  五:简化复杂编程任务的向导功能

  PID控制、网络通信、高速输入、高速输出、位置控制、数据记录、配方和文本显示器等编程和应用是PLC程序设计中的难点,用普通的方法对它们编程既繁琐又容易出错。

  六:强大的通信功能

  S7-200S的CPU模块有1个或者2个标准的RS-485端口,可用于编程或通信,不需增加硬件就可以与别的S7-200、S7-300\S7-400PLC、变频器和计算机通信。S7-200可以使用PPI 、MPI、ModbusRTU从站、ModbusRTU主站和USS等通信协议,以及自由端口通信模式。

  s7-200可以直接通讯modbus吗

  s7-200不能直接实现通讯modbus。s7-200实现通讯modbus方法步骤如下:

  要求:

  要使用Modbus协议必须先在STEP7Micro/Win上安装指令库。

  Modbus主站协议只支持STEP7Micro/WinV4.0SP5及其以上版本。。

  1.硬件设置

  2.参数匹配

  3.指令库的存储地址

  4.保持寄存器值得传输

  1.硬件设置

  例程中的Modbus通讯是在两个S7-200CPU的0号通讯口间进行的(最好每个CPU都有两个通讯口)。在主站侧也可以选择相应库文件MBUS_CTRL_P1和MBUS_MSG_P1通过1号通讯口通信。通讯口1与Micro/WIN建立PG或PC连接,两个CPU的通讯口0通过PPI电缆进行连接(电缆的针脚连接为2,3,7,8)。

s7-200可以直接通讯modbus吗_s7-200的特点与解密方法

  图01

  2.参数匹配

  对于MODBUS通讯,主站侧需要程序库MBUS_CTRL和MBUS_MSG,从站侧需要程序库MBUS_INITandMBUS_SLAVE。

  在Micro/WIN中您需要为主站和从站新建一个项目,程序与参数设置见图.02。

  必须要保证主站与从站的Baud和Parity的参数设置要一致,并且程序块MBUS_MSG中的Slave地址要与程序块MBUS_INIT中的Addr所设置的一致(见图。02)。

  Micro/WIN系统块中设置的0通讯口的波特率与MODBUS协议无关(Mode=1)。

s7-200可以直接通讯modbus吗_s7-200的特点与解密方法

  图02

  下面的表格列出了程序块各个参数选项及其意义

  主站

  MBUS_CTRL

  参数意义选项EN使能Mode协议选择0=PPI,1=MODBUSBaud传输速率kbps1200,2400,4800,9600,19200,38400,57600,115200Parity校验选择0=无校验,1=奇校验,2=偶校验TImeout从站的最长响应时间msDone完成标志位Error错误代码1)表01

  1)参看STEP7Micro/WIN帮助:MODBUS主站执行MBUS_MSG时的错误代码MBUS_MSG。

  MBUS_MSG

  参数意义选项EN使能First读写请求位Slave从站地址RW读或写0=读,1=写Addr读写从站的数据地址0。.128=数字量输出Q0.0。.Q15.7

  1001。.10128=数字量输入I0.0。.Q15.7

  30001。.30092=模拟量输入AIW0。.AIW62

  40001。.49999=保持寄存器2Count位或字的个数(0xxxx,1xxxx)/words(3xxxx,4xxxx)DataPtrV存储区起始地址指针Done完成标志位Error错误代码1)表02

  1)参看STEP7Micro/WIN帮助:MODBUS主站执行MBUS_MSG时的错误代码MBUS_MSG。

  从站

  MBUS_INIT

  参数意义选项EN使能Mode协议选择0=PPI,1=MODBUSAddr从站地址Baud传输速率kbps1200,2400,4800,9600,19200,38400,57600,115200Parity校验0=无校验,1=奇校验,2=偶校验Delay超时时间msMaxIQ可使用的数字输入输出点数2)MaxAI可使用的模拟量输入点数2)MaxHold保持寄存器字的最大数量2)HoldStart保持寄存器的起始地址(40001)Done完成标志位Error错误代码3)表03

  2)最大的地址取决于所用CPU的类型及其最大值。

  3)参看STEP7Micro/WIN帮助:MODBUS从站协议的错误代码。

  MBUS_SLAVE

  参数意义选项EN使能Done完成标志位Error错误代码3)表04

  3)参看STEP7Micro/WIN帮助:MODBUS从站协议的错误代码。

  3.库的存储地址

  项目完成后必须要在Micro/WIN中定义库的存储地址,当定义完存储区后,要保证在任何情况下不能再被其它程序所使用(主站侧:DataPtr+Count从站侧:HoldStart+MaxHold)。

s7-200可以直接通讯modbus吗_s7-200的特点与解密方法

  图03

  4.保持寄存器值的传输

  将程序下载到相应的CPU后,可以在状态表中给主站侧的V存储区赋值,然后监视从站的变化。

  当主站的I0.0使能后,VW2中的内容就被发送到从站并写入从站的VW2。

  保持寄存器值的传输见图。04。

  指针DataPtr代表了V区被读的起始地址。

  参数Count表明了地址Addr=4xxxx(保持寄存器)以字为单位被读的个数。

  主站中被读取的V存储区被写入地址为Addr=40002(RW=1)的保持寄存器中。

  保持寄存器是以字为单位工作的,它与从站的V区地址对应。

  指针HoldStart明确了与保持寄存器起始地址40001相对应的V存储区的初始地址。

  可以这样计算从站的V区目标指针:

  2*(Addr-40001)+HoldStart=2*(40002-40001)+VB0=VB2

  另外,要保证MaxHold定义的数据区能够包含主站侧所要写入的数据区:

  MaxHold》=Addr-40001+Count=40002-40001+1=2

s7-200可以直接通讯modbus吗_s7-200的特点与解密方法

  Fig.04

  关于STEP7Micro/WINMOBDUS库的更多信息可以参看S7-200系统手册(EntryID1109582)和STEP7Micro/WIN帮助。

  如何在STEP7Micro/WIN中找到ModbusRTU协议和USS协议操作库?

  说明:

  在STEP7Micro/WIN中,ModbusRTU协议和USS协议操作库位于操作树的库文件夹中。MODBUS函数库要求STEP7Micro/WIN为V3.2或更高版本。

s7-200可以直接通讯modbus吗_s7-200的特点与解密方法

  图1:添加函数库

  这些库是附加函数库,并非组态软件STEP7Micro/WIN的组成部分。

  您如果需要使用ModbusRTU协议,必须购买SIMATICSTEP7Micro/WINADDON:FuncTIonLibraryV1.1(USS+MODBUS)forSTEP7Micro/WIN32软件。

  这个可选附加函数库的订货号是6ES7830-2BC00-0YX0。

  安装顺序:

  先安装STEP7Micro/WIN32ToolboxV1.0(包括库),然后安装STEP7Micro/WIN。

  注意:

  这个函数库包含可以在STEP7Micro/WINV3.2中使用的ModbusRTU协议库和USS协议库。

  如果您安装了STEP7Micro/WINV4.0SP5或者更高版本,那么操作库中就会包含下列函数:

  ModbusRTUMasterV1.2对应端口0和端口1

  ModbusRTUSlaveV1.0对应端口0

  USSprotocolV2.3对应端口0和端口1

  ------------------------------------------------------------------------------------------------------

  西门子S7-200CN解密方法及过程

  与本节相关的PLC解密下载地址:http://www.plcjiemi.com/200jmxs.htm

  1、西门子S7-200的PLC密码共分三个层次,我们最为关心的就是系统密码,因为它直接影响到程序的上载,也是我们所要破解的关键一层密码。其次就是POU密码,对于西门子的200PLC,你虽然已经破解了系统密码,也上载了程序,但是每个POU都显示一把小锁,你并打不开程序,直接影响我们对程序的编辑。再一个就是项目密码,是程序员做完项目后为保密而在编程软件的文件下的设置密码下而生成的。

  2、首先连接好与PLC的PPI编程电缆,如果您还没有编程电缆,那么你就自己开发一根吧!看下面的解密软件图,是2014年开发的不用注册的完全授权版本,您只需下载解压后便可使用。

s7-200可以直接通讯modbus吗_s7-200的特点与解密方法

  3、解子程序(pou密码)是需要替换STEP7-MicroWIN的datamanagers200.dll文件,这样在《查看》菜单的《属性》里面的《保护》不用输入密码就可以打开子程序;请看破解流程图。

s7-200可以直接通讯modbus吗_s7-200的特点与解密方法

  4、关于破解补丁的安装替换方法:

  如果您所使用的编程软件是STEP7-MicroWINV4.0.6.35SP6版的。把(datamanagers200.dll)拷贝到C:\ProgramFiles\Siemens\STEP7-MicroWINV4.0\bin\文件夹下覆盖原文件就可以了。解子程序最低需要STEP7-MicroWINV4.0.3.08SP3版,随西门子软件版本的更新分别为SP4、SP5、SP6,现在已经达到SP7版,低版本或别的版本不行。各自的版本需要各自的破解补丁,彼此不通用。

  5、关于PLC版本为02版(cn)的系统密码破解说法:

  新版本的plc新增加了第4级保护,就是禁止读取和写入,无论你是否已知密码。所谓的新版本是怎么区分的?第一看硬件在PLC的底部标签的最下面一行就记录了版本号。第二看PLC正面标记的CPU的型号如226CN,如果带有CN字符,那么版本号肯定也是02版。第三就是通讯读版本号,你用STEP7-MicroWIN连接PLC,点击上载按钮,这时弹出的对话框中就清楚的显示了PLC的CPU型号及版本号。所以说区分新旧版本看的是版本号,带CN的只是其中的一种,还有不带有CN的也是具有四级加密功能的。也可以这样说凡具有四级加密功能的就称之为新版本。破解这种版本确实有一定的难度,但也并不是象西门子公司所说的无法破解,凡事总有破绽。

  现在CN的解密套装已开始发售。现在基本可以确定PPI协议所能破解的西门子S7-200PLC的范围:02.00版以下的,包括部分02.00版本(确切的说是最高只有3级加密功能的plc),通过本软件就可以轻松破解,02.00版以上的,包括02.00版(精确定位是-具备4级加密功能的2.0版本)和所有的200CN型号,只有拆机解密,迄今为止还没有更好的办法!关于版本号,你通过本软件就可以探测到。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!