0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

分享一种西门子PLC的网络仿真器搭建方法

工程师邓生 来源:FreeBuf 作者:thx0405 2022-09-08 17:29 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

一、前言

在手上没有真实的西门子PLC设备情况的情况下,PLC本地仿真器可以为我们进行开关量和简单模拟量的程序仿真。但工控安全人员想在没有真实PLC的条件下获取S7通讯数据报文的时候,或者想测试第三方上位软件与西门子PLC通讯的时候,这种本地的PLC仿真器就无法胜任了,本文分享一种西门子PLC的网络仿真器搭建方法。

二、搭建方法

这里我们准备两个虚拟机,操作系统都为win7 64位专业版:1、操作机(准备Snap7 Client Demo工具及组态王软件,采用192.168.11.2IP地址)2、靶机(安装了step7 v5.5及plcsim v5.4 sp5,采用192.168.11.1IP地址)。

在靶机中打开SIMATIC Manager软件,新建项目test2,如下图:

b4834e72-2f57-11ed-ba43-dac502259ad0.jpg

在新建项目test2点击插入新对象,并选择SIMATIC 300站点,如下图:

b496d406-2f57-11ed-ba43-dac502259ad0.jpg

分别点击SIMATIC300(1)>硬件,进入硬件配置界面,如下图:

b4b22d5a-2f57-11ed-ba43-dac502259ad0.jpg

在HW Config界面下选择SIMATIC 300,并选择RACK-300下的Rail,如下图:

b4d0fc1c-2f57-11ed-ba43-dac502259ad0.jpg

在UR(0)对话框中的序号槽1中点击右键分别插入对象PS 307 2A,如下图:

b4dd1998-2f57-11ed-ba43-dac502259ad0.jpg

在UR(0)对话框中的序号槽2中点击右键分别插入对象CPU 314C-2PN/DP V3.3,,并新建子网设置ip地址为本PC级的IP地址,如下图:

b4f0ebf8-2f57-11ed-ba43-dac502259ad0.jpg

启动虚拟PLC,点击开始>所有程序>Siemens Automation>SIMATIC>STEP 7>S7-PLCSIM,如下图:

b50f4c56-2f57-11ed-ba43-dac502259ad0.jpg

进入S7-PLCSIM界面,选择PLCSIM(TCP/IP),如下图:

b51a47b4-2f57-11ed-ba43-dac502259ad0.jpg

回到HW Config对话框,选择下载到模块,如下图:

b53678ee-2f57-11ed-ba43-dac502259ad0.jpg

b556d22e-2f57-11ed-ba43-dac502259ad0.jpg

待下载完成,PLCSIM会显示PLC的地址为之前设置的IP地址,如下图:

b56f579a-2f57-11ed-ba43-dac502259ad0.jpg

启动NetToPLCSIM,点击bin>NetToPLCSim.exe,进入如下图:

b57e261c-2f57-11ed-ba43-dac502259ad0.jpg

点击add,弹出station对话框,在Network IP Address及Plcsim IP Address中选择IP地址为之前设置的ip地址,进入如下图:

b5b113f6-2f57-11ed-ba43-dac502259ad0.jpg

点击Start Server,PLC#001进入运行状态,表示PLC网络仿真器搭建成功进入如下图:

b5bd2628-2f57-11ed-ba43-dac502259ad0.jpg

三、攻击测试

在操作机中打开Snap7 Client Demo工具,填写仿真PLC的IP地址如:192.168.11.1,点击Connect,如下图:

b5d0bc38-2f57-11ed-ba43-dac502259ad0.jpg

再在control下点击stop按钮即停止PLC的命令,如下图:

b5ec96f6-2f57-11ed-ba43-dac502259ad0.jpg

查看靶机中仿真PLC的状态从run变为stop,同时可以用wireshark抓取其数据流量如下图:

b60614dc-2f57-11ed-ba43-dac502259ad0.jpg

b6197f22-2f57-11ed-ba43-dac502259ad0.jpg

b62bf83c-2f57-11ed-ba43-dac502259ad0.jpg

也可以在python中构建STOP包进行测试,如下图:

b6401542-2f57-11ed-ba43-dac502259ad0.jpg

四、第三方上位软件通讯测试

在靶机(192.168.11.1)的仿真PLC建立了这样一段简单图形图代码,一个简单的设备启停控制逻辑程序,%M0.0、%M0.1是指PLC的M类型的寄存器,0.0、0.1是M寄存器的某两个偏移地址,对应中间变量。%Q0.0是PLC的Q类型的寄存器,0.0是Q寄存器的某个偏移地址。在这个控制程序中,%M0.0(变量名为start)对应是监控画面上的启动按钮,进行对设备的启动操作,%M0.1(变量名为stop)对应是监控画面上的停止按钮,进行对设备的停止操作。%Q0.0(变量名为out),对应PLC的输出,即将控制信号输出给设备。如下图:

b657b86e-2f57-11ed-ba43-dac502259ad0.jpg

程序下载到仿真PLC后,对梯形图代码进行在线监控,这时输出为0,如下

b66d6722-2f57-11ed-ba43-dac502259ad0.jpg

在操作机(192.168.11.2)中定义仿真PLC的IP地址及寄存器的地址,如下图:

b683107c-2f57-11ed-ba43-dac502259ad0.jpg

b694146c-2f57-11ed-ba43-dac502259ad0.jpg

定义监控画面如下:

b6a293c0-2f57-11ed-ba43-dac502259ad0.jpg

按下start按钮,圆形显示变为绿色,证明我们按钮发出的指令,仿真PLC收到启动信号,将输出置为1,并将仿真PLC输出的结果反馈到监控画面,同时我们监控靶机中仿真PLC的程序,我们发现仿真PLC输出也是为1,证明操作机中组态王上位机与靶机中的虚拟机通讯成功,如下图

b6b3440e-2f57-11ed-ba43-dac502259ad0.jpg

b6c89098-2f57-11ed-ba43-dac502259ad0.jpg

同时我们可以获取操作机的组态王(192。168.11.2)与靶机PLC仿真器(192168.11.1)的通讯报文,各类功能码的数据报文,根据具体的操作。

b6d79f48-2f57-11ed-ba43-dac502259ad0.jpg

五、总结

本文通过研究西门子PLC的网络仿真搭建方法,为工控安全人员研究西门子s7协议提供一个便捷、实惠的渠道,无需花费大量的资金采购真实的PLC设备,同时也可为PLC工程师提供一种测试第三方上位软件与西门子通讯的方法,更为重要的是,这种西门子PLC的网络仿真搭建方法,可以胜任多人在局域网络中对西门子PLC的安全研究工作(例如实训平台),只需启动更多的靶机和操作机即可。




审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • plc
    plc
    +关注

    关注

    5052

    文章

    14929

    浏览量

    489382
  • 仿真器
    +关注

    关注

    14

    文章

    1053

    浏览量

    88268
  • 虚拟机
    +关注

    关注

    1

    文章

    976

    浏览量

    30765

原文标题:西门子PLC的网络仿真搭建方法探讨

文章出处:【微信号:西北工匠PLC学习基地,微信公众号:西北工匠PLC学习基地】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    西门子200PLC通过PLC以太网模块无缝连接西门子1200PLC和国产触摸屏的升级方案

    、项目背景 某小型自动化生产线采用 西门子200PLC (型号CPU 226 CN)作为主控制,负责生产线的启停控制、信号采集及逻辑运算,原有控制系统仅支持PPI串口通讯,仅连接1
    的头像 发表于 05-21 17:09 1075次阅读
    <b class='flag-5'>西门子</b>200<b class='flag-5'>PLC</b>通过<b class='flag-5'>PLC</b>以太网模块无缝连接<b class='flag-5'>西门子</b>1200<b class='flag-5'>PLC</b>和国产触摸屏的升级方案

    西门子PLC如何连接EtherCAT温湿度模块?冻干机PROFINET转EtherCAT案例

    # 西门子PLC如何连接EtherCAT温湿度模块?冻干机PROFINET转EtherCAT案例
    的头像 发表于 05-20 15:06 622次阅读
    <b class='flag-5'>西门子</b><b class='flag-5'>PLC</b>如何连接EtherCAT温湿度模块?冻干机PROFINET转EtherCAT案例

    使用西门子S7-200 SMART PLC定时中断实现流量累计功能

    使用西门子S7-200 SMART PLC实现流量累计功能。
    的头像 发表于 05-20 13:58 238次阅读
    使用<b class='flag-5'>西门子</b>S7-200 SMART <b class='flag-5'>PLC</b>定时中断实现流量累计功能

    刚入行选哪个PLC?三菱还是西门子

    三菱PLC(日系)与西门子PLC(德系)是全球两大主流 PLC,核心差异:三菱主打高速、性价比、易上手、中小型设备 / OEM;西门子主打稳
    的头像 发表于 05-13 17:25 343次阅读

    西门子PLC如何使用Modbus 485通讯传输接收数据

    西门子在 STEP 7-Micro/WIN SMART 中正式推出 Modbus RTU 主站协议库(西门子标准库指令)。使用 Modbus RTU 主站指令库,可以读写 Modbus RTU 从站的数字量、模拟量 I/O 以及保持寄存
    的头像 发表于 08-19 13:52 6516次阅读
    <b class='flag-5'>西门子</b><b class='flag-5'>PLC</b>如何使用Modbus 485通讯传输接收数据

    宏集方案 | 如何轻松管理西门子S7 PLC?S7Comm: 与西门子 PLC 直接通信的关键

    供多种选择。传统方案:通过OPC服务西门子PLC间接通信SIMATICS7系列的PLC是工业可编程控制,能够实现对生产流程的实时SCA
    的头像 发表于 08-08 18:12 927次阅读
    宏集方案 | 如何轻松管理<b class='flag-5'>西门子</b>S7 <b class='flag-5'>PLC</b>?S7Comm: 与<b class='flag-5'>西门子</b> <b class='flag-5'>PLC</b> 直接通信的关键

    plc以太网通讯模块:西门子 S7-300PLC 与 S7-1200、触摸屏及变频通讯案例

    TP1200Comfort触摸屏,同时工厂需要将该西门子300PLC西门子1200PLC进行以太网通讯,并且还要采集MODBUSRTU协议的汇川MD380系列变频
    的头像 发表于 07-29 09:51 1996次阅读
    <b class='flag-5'>plc</b>以太网通讯模块:<b class='flag-5'>西门子</b> S7-300<b class='flag-5'>PLC</b> 与 S7-1200、触摸屏及变频<b class='flag-5'>器</b>通讯案例

    开疆智能ModbusTCP转Profient网关连接西门子PLC与川崎机器人配置案例

    本案例是西门子PLC与川崎机器人通过Profient转ModbusTCP网关进行通讯转换的配置案例,西门子作为profinet主站,机器人作为ModbusTCP服务
    的头像 发表于 07-26 11:14 1765次阅读
    开疆智能ModbusTCP转Profient网关连接<b class='flag-5'>西门子</b><b class='flag-5'>PLC</b>与川崎机器人配置案例

    西门子变频维修的五实用方法

    西门子变频作为工业自动化领域的核心设备,其稳定运行直接关系到生产线的效率。然而,长期高负荷运转或环境因素可能导致故障频发。本文将系统介绍五经过实践验证的维修方法,结合
    的头像 发表于 07-13 17:30 3372次阅读
    <b class='flag-5'>西门子</b>变频<b class='flag-5'>器</b>维修的五<b class='flag-5'>种</b>实用<b class='flag-5'>方法</b>

    称重仪表接入西门子 S7 PLC:Profibus DP 转 Profinet 网关应用

    Profibus DP 转 Profinet 网关模块提供了一种经济高效的解决方案,使得旧的称重仪表能够与新的 PLC 系统协同工作,实现系统的平滑升级和优化。现在使用捷米特JM-DPM-PN进行连接dp从站和西门子
    的头像 发表于 06-26 10:33 976次阅读
    称重仪表接入<b class='flag-5'>西门子</b> S7 <b class='flag-5'>PLC</b>:Profibus DP 转 Profinet 网关应用

    3 分钟极速上手!西门子 PLC 无缝连接指南

    PLC数据采集 3 分钟极速上手!西门子 PLC 无缝连接指南
    的头像 发表于 06-17 18:02 3305次阅读
    3 分钟极速上手!<b class='flag-5'>西门子</b> <b class='flag-5'>PLC</b> 无缝连接指南

    使用西门子报文控制V90伺服驱动

    西门子的V90伺服驱动可以通过PROFINET(PN)进行通信,并且通常与SINAMICS V90集成使用的控制是SIMATIC S7系列PLC
    的头像 发表于 06-17 15:58 4358次阅读
    使用<b class='flag-5'>西门子</b>报文控制V90伺服驱动<b class='flag-5'>器</b>

    如何破解三菱PLC西门子PLC的通讯难题

    在工业自动化领域,不同品牌PLC之间的通讯直是工程师们关注的焦点。三菱PLC西门子PLC作为市场主流设备,常因协议差异导致数据交互困难。
    的头像 发表于 06-09 17:14 1761次阅读
    如何破解三菱<b class='flag-5'>PLC</b>与<b class='flag-5'>西门子</b><b class='flag-5'>PLC</b>的通讯难题

    Profinet转CAN网关模块对实现西门子PLC与CAN变频协同通信的助力研究

    在智能物流仓储系统中,AGV等设备的通讯网络稳定性和实时性至关重要。通过Profinet转CAN网关,可以实现中控系统(如西门子PLC,支持ProFiNet协议)与伺服驱动(支持CA
    的头像 发表于 06-09 14:59 1232次阅读
    Profinet转CAN网关模块对实现<b class='flag-5'>西门子</b><b class='flag-5'>PLC</b>与CAN变频<b class='flag-5'>器</b>协同通信的助力研究

    工业智能网关可以采集西门子PLC

    工业智能网关可以采集西门子PLC的数据。物通博联提供全面接入西门子PLC的数据采集解决方案,其工业智能网关支持多种网络制式,可采集各种工业设
    的头像 发表于 05-26 09:14 2236次阅读