最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

PLC编程虚拟调试技术研究

IT圈 admin 51浏览 0评论

2024年1月8日发(作者:硕舒云)

中国设备工程China PlantEngineering

PLC编程虚拟调试技术研究赵健(上汽通用汽车有限公司,上海 201206)摘要:PLC编程虚拟调试是大数据时代的产物,是科技进步的标志,它可以帮助我们缩短现场调试时间,提升项目质量。因是比较前瞻的技术,在行业内的应用比较少。本文以西门子的Tecnomatix工业软件为例,介绍了工艺数模和ROCKWELL PLC通讯需要准备的相关软硬件,以及通讯建立的配置方式,包括最后的调试等。关键词:PLC;HMI;OPC;PS中图分类号:TP29 文献标识码:A 文章编号:1671-0711(2023)07(下)-0269-03随着数字化工厂推进,建立工艺数模和PLC程序之间的互动成为一种需求,通过PLC本身自带的或是第三方的OPC应用,建立PLC和工艺数模间的通讯,从而实现PLC和工艺数模的互动。一方面可以提前验证工艺数模的准确性、可达性、有效性等,另一方面可以对PLC应的,删除订单时余量重新加一。通过调用/api/user/borrow接口,用户可以查找自己的借用订单。调用/api/user/lend,用户查找自己的借出订单。以上2个功能均需要先验证当前登录用户是否和请求体用户对象相同。3.7 访问拦截模块完成了用户登录认证之后,还需要考虑完善的访问拦截。如果用户登录了一次,关闭浏览器后,sessionId就会消失,再次发送请求,shiro就会认为用户已经变更。但有时我们需要保持登录状态,不然每次都要重新登录,所以shiro提供了rememberMe机制。rememberMe机制不是单纯地设置cookie存活时间,而是又单独保存了一种新的状态。之所以这样设计,也是出于安全性考虑,把“记住我”的状态与实际登录状态做出区分,这样,就可以控制用户在访问不太敏感的页面时无需重新登录,而访问类似于购物车、订单之类的页面时必须重新登录。除了rememberMe机制外,还需要一个基于URL的路径过滤器,URLPathMatchingFilter。(“/api/admin/**”,

“url”);表示所有以/api/admin/为前缀的接口都需要有管理员权限才能访问。(“/api/user/password”,“authc”);表示这个接口需要登录才能访问。4 测试和部署本项目采取了多种测试方法结合。首先后端开发过程中,通过学生资格认证申请正版Postman软件进行测试后端接口,测试结果全部通过。在Postman上需要提供测试的接口url,以及正确输入请求体格式、类型、数据内容。部分接口只接受单个参数,设置param即可。还有部分接口需要传输Map之类的特殊类型,则需要选程序进行提前验证,包括逻辑、报警等,从而确保在现场调试的PLC程序正确率达标,可以减少现场调试时间,提升项目质量,降低项目成本。1 PLC虚拟调试说明OPC为硬件制造商与软件开发商提供了一座桥梁,透择content-type为application/json,然后写明原始json格式的数据进行测试。之后在IDEA同时启动前端和后端做结合测试,本地计算机作为服务器,浏览器访问localhost:8080/index,测试前端按钮和后端接口的交互。最后项目在服务器端部署之后,也持续不断进行测试,发现问题后及时修改优化,主要是Linux系统文件路径问题。后端jar包版本已经迭代13次。目前已经能稳定运行,使用浏览器访问ip地址即可使用。服务器使用的是华为云Linux服务器,通过学生认证申请的正版Xshell软件远程连接服务器,使用命令行操作文件系统。首先sudo apt-get install lrzsz安装rz,sz,之后选择文件传输中的ZModem传输本地文件至远程服务器。在此之前,后端内容需要通过mevan打包成jar文件包,上传至服务器之后,以nohup java -jar

项目名.jar &命令运行jar包,即可在关闭服务器连接之后进程仍然运行。最终用浏览器访问服务器的ip地址即可看到界面,开始使用本竞赛设备共享平台。参考文献:[1]龚鹏. 微服务分布式构架开发实战. [M]. 北京:人民邮电出版社,2018.02.[2]赵吉兴, 刘晓飞. 电子商务概论. [M]. 北京:中国铁道出版社,2007.08.[3]柳伟卫. 分布式系统常用技术及案例分析. [M]. 北京:电子工业出版社,2017.01.[4]靳润成. 全国职业院校技能大赛促进职业教育发展的战略思考. [J]. 复印报刊资料(职业技术教育),2012.[5]彭晖. OA系统的设计. [J]. 中国科技博览,2015.[6]克拉克. SQL注入攻击与防御. [M]. 北京:清华大学出版社,2010.06.中国设备工程 2023.07(下)269Copyright©博看网. All Rights Reserved.

Research and Exploration

研究与探索·理论研究与实践

过硬件厂商提供的OPC Server接口,建立软件和硬件之间的通信。OPC Server提供了许多接口,通过这些接口,可以取得与OPC Server相连的硬件装置的信息,而无须了解这些硬件装置的细节信息,就可以实现信号互动。PLC虚拟调试就是通过这种技术,建立PLC和工艺数模的通信,从而实现PLC程序提前调试的目的。目前市场上支持这方面的工艺制造应用不是很多,其中西门子的Tecnomatix是非常著名的制造应用软件,旗下的Process Designer和Process Simulation是2个非常重要的应用软件。另外由于开放式体系架构,使得它和第三方产品的兼容性非常强。Siemens PLC和Process Simulation间的通讯简洁方便,调试后的PLC程序完善度也最高,应用较为广泛,有许多应用案例可参考,这里不多重复介绍。这里以Rockwell PLC和Process Simulation间的通讯应用来说明虚拟调试的具体应用方法,其基本原理是一样的。2 虚拟调试所需的软硬件及连接方式2.1 主要应用软件RsLogix 5000—Rockwell 编程软件,调试用20.03版本。RSLinx Classic Gateway—3.60版本以上。PS—Process Simulation工艺仿真软件,13版本以上。2.2 主要硬件Rockwell PLC—1台。PC工作站,配置要高—1台。其他硬件选配,列如HMI、安全光栅、按钮、指示灯等。2.3 连接示意图,见图1行逻辑处理,执行相关的动作。下面的示意图,见图2,就是针对一组夹头需要加载的信号。其中MOVE_OPEN对应于PLC的输出—打开夹头,MOVE_CLOSE对应于PLC的输出—关闭夹头,AT_OPEN对应于PLC的输入—夹头已打开,AT_CLOSE对应于PLC的输入—夹头已关闭。除了这些,还需要添加逻辑关系,用于处理夹头的动作顺序。图2为了和PLC进行通讯,还需要建立一张输入输出信号的对应表,将数模中加载的信号和PLC的信号对应起来,见图3,导入到PS中,这样才可以建立和PLC的通讯。图34 通讯、配置信息4.1 IP地址配置要求首先,PC工作站、PLC、编程电脑包括HMI等都需要连接到交换机,并在同一个IP地址段内,这样相互之间能够直接通讯,例如,子网掩码等无需配置。另外,对于安装PD/PS的工作站要求双网卡,一个用于和PLC之间的通信,另外一个用于和PD/PS软件之间的通信(常规的PD/PS是网络版的,需要连接到服务器获取;当然,本地安装版不需要双网卡)。4.2 通讯建立首先是在编程电脑端进行配置,打开RsLinx,选择通讯方式,按照硬件配置的方式进行选择,可以访问到PLC的硬件组态,见图4。图1其中,PD/PS软件和RSLinx Gateway都安装在PC工作站上,RsLogix 5000的软件建议用另外的编程电脑安装,这样调试比较方便,PLC和PC工作站之间用以太网进行连接,因连接的设备较多,还需要1台交换机。3 工艺数模配置在调试开始之前,我们需要先有对应的数模,这个数模是通常是由工艺工程师负责的,在数模完成后,若需要进行虚拟调试,还要在Process Simulation中进行配置。因为要和PLC进行通讯,就需要在数模中添加信号,这些添加的信号就相当于现场的传感器、阀岛等,到时这些信号需要和PLC的进行互动的;对PLC而言,这些就是现场设备的输入输出信号,PLC根据这些信号状态进图4然后在安装有PD/PS及RSLinx Classic Gateway端270中国设备工程 2023.07(下)Copyright©博看网. All Rights Reserved.

中国设备工程China PlantEngineering的PC工作站上进行相关操作,打开OPC进行配置,见图5,按步进行操作,一直到最后建立通信成功,见图6。

有些信号无法直接获取,需要在程序中加短接或开路信号。一般不建议在原程序上进行直接改动,如删除变量或加短接、旁路支路,这样会导致在现场调试时需要用大量的时间进行程序的恢复工作,并且很容易疏忽或遗漏,增加调试时间。建议在程序中建立相应的变量组,对应常开或常闭的信号,并按功能进行分类。在程序需要短接的地方引入常闭的旁路信号,在程序需要常开的地方插入对应的常开变量,而不是直接短接或旁路。这样程序可以做到快速切换,从虚拟调试程序切换到现场程序,也可以快速切换回来。这样避免虚拟调试与现场调试切换时大量的程序修改工作,也避免了切换时错误的产生。6 现场调试 图5 图6若虚拟调试顺利,并且在加载短接或旁路信号时采用了相应变量的话,现场调试还是比较方便的。先将PLC程序切换到现场程序模式,然后导入到现场PLC中,按步骤进行调试,调试过程中逐步把原先加载的变量组删除,因为当初是特定的变量,删除变量非常方便也不容易犯错。因为已经有了虚拟调试,很多逻辑或程序块都得到了提前验证,现场调试可以节省很多时间,越是复杂的项目节省的时间越多。7 结语PLC编程虚拟调试是大数据时代的产物,也是工业自动化发展的必然结果。利用虚拟调试技术,可以将整条生产线的机械、电气、机器人整合在一起进行仿真模拟,可以提高企业对生产系统整条运转时可能发生问题的认知度,从而在未投入正式制造之前对系统进行验证和优化,以提升效率,降低项目成本。参考文献:[1]OPC Server/Client 运作的方式.凌华科技.[2]Tecnomatix_VC_s Ltd.出现这个“Good”,说明你的PLC和PS已经建立了通信,通过上述方式,所需的信号点都可以和PS的信号建立通讯。5 程序调试通过上面的方式建立了PLC和数模之间的通讯,说明两者之间的信号可以互相传递了,也就是搭建沟通的桥梁。若上面通讯无法建立,请检查有哪些没有准备好,或者是遗漏了什么,只有建立了两者之间的通讯,后面的工作才可以展开。按照上面的步骤,把所有需要的信号都建立对应关系。5.1 I/O校验I/O校验是指将数模中的信号和PLC的信号一一对应起来,类似于现场的I/O校验一样。这个比较简单,主要有2种方式:一种检查数模处在哪个位置,确定对应的PLC信号是否为on;还有一个是从PLC那端开始校验,PLC给出一个动作信号,数模就应该有对应的动作,然后检查相关的信号是否一致。5.2 程序联调将事先编写好的离线PLC程序导入到PLC中,开始和数模互动联调。因受条件限制,虚拟调试的环境不可能会和现场配置那么齐全,虚拟调试环境一般不含I/O总线模块、安全装置和按钮指示灯等。所以,虚拟调试中的程序和现场程序是有一些区别的。我们在程序调试的时候要做一些调整,一般是添加一些跳转信号或者是短接、屏蔽信号,以满足虚拟调试程序需求。这次我们做的是和Rockwell PLC通讯,需要做许多假设、屏蔽工作,但若是西门子PLC进行通讯,会方便很多,因为西门子有专门的仿真模块,名称是SIMIT UNIT,可以模拟大部分现场的设备,包括ET200s等,确保虚拟调试逻辑和现场实际应用逻辑基本一致,可以使虚拟调试程序和实际现场程序非常接近,减少许多工作量。5.3 联调的注意事项上文提到有些元器件是虚拟调试环境没有的,那么中国设备工程 2023.07(下)271Copyright©博看网. All Rights Reserved.

2024年1月8日发(作者:硕舒云)

中国设备工程China PlantEngineering

PLC编程虚拟调试技术研究赵健(上汽通用汽车有限公司,上海 201206)摘要:PLC编程虚拟调试是大数据时代的产物,是科技进步的标志,它可以帮助我们缩短现场调试时间,提升项目质量。因是比较前瞻的技术,在行业内的应用比较少。本文以西门子的Tecnomatix工业软件为例,介绍了工艺数模和ROCKWELL PLC通讯需要准备的相关软硬件,以及通讯建立的配置方式,包括最后的调试等。关键词:PLC;HMI;OPC;PS中图分类号:TP29 文献标识码:A 文章编号:1671-0711(2023)07(下)-0269-03随着数字化工厂推进,建立工艺数模和PLC程序之间的互动成为一种需求,通过PLC本身自带的或是第三方的OPC应用,建立PLC和工艺数模间的通讯,从而实现PLC和工艺数模的互动。一方面可以提前验证工艺数模的准确性、可达性、有效性等,另一方面可以对PLC应的,删除订单时余量重新加一。通过调用/api/user/borrow接口,用户可以查找自己的借用订单。调用/api/user/lend,用户查找自己的借出订单。以上2个功能均需要先验证当前登录用户是否和请求体用户对象相同。3.7 访问拦截模块完成了用户登录认证之后,还需要考虑完善的访问拦截。如果用户登录了一次,关闭浏览器后,sessionId就会消失,再次发送请求,shiro就会认为用户已经变更。但有时我们需要保持登录状态,不然每次都要重新登录,所以shiro提供了rememberMe机制。rememberMe机制不是单纯地设置cookie存活时间,而是又单独保存了一种新的状态。之所以这样设计,也是出于安全性考虑,把“记住我”的状态与实际登录状态做出区分,这样,就可以控制用户在访问不太敏感的页面时无需重新登录,而访问类似于购物车、订单之类的页面时必须重新登录。除了rememberMe机制外,还需要一个基于URL的路径过滤器,URLPathMatchingFilter。(“/api/admin/**”,

“url”);表示所有以/api/admin/为前缀的接口都需要有管理员权限才能访问。(“/api/user/password”,“authc”);表示这个接口需要登录才能访问。4 测试和部署本项目采取了多种测试方法结合。首先后端开发过程中,通过学生资格认证申请正版Postman软件进行测试后端接口,测试结果全部通过。在Postman上需要提供测试的接口url,以及正确输入请求体格式、类型、数据内容。部分接口只接受单个参数,设置param即可。还有部分接口需要传输Map之类的特殊类型,则需要选程序进行提前验证,包括逻辑、报警等,从而确保在现场调试的PLC程序正确率达标,可以减少现场调试时间,提升项目质量,降低项目成本。1 PLC虚拟调试说明OPC为硬件制造商与软件开发商提供了一座桥梁,透择content-type为application/json,然后写明原始json格式的数据进行测试。之后在IDEA同时启动前端和后端做结合测试,本地计算机作为服务器,浏览器访问localhost:8080/index,测试前端按钮和后端接口的交互。最后项目在服务器端部署之后,也持续不断进行测试,发现问题后及时修改优化,主要是Linux系统文件路径问题。后端jar包版本已经迭代13次。目前已经能稳定运行,使用浏览器访问ip地址即可使用。服务器使用的是华为云Linux服务器,通过学生认证申请的正版Xshell软件远程连接服务器,使用命令行操作文件系统。首先sudo apt-get install lrzsz安装rz,sz,之后选择文件传输中的ZModem传输本地文件至远程服务器。在此之前,后端内容需要通过mevan打包成jar文件包,上传至服务器之后,以nohup java -jar

项目名.jar &命令运行jar包,即可在关闭服务器连接之后进程仍然运行。最终用浏览器访问服务器的ip地址即可看到界面,开始使用本竞赛设备共享平台。参考文献:[1]龚鹏. 微服务分布式构架开发实战. [M]. 北京:人民邮电出版社,2018.02.[2]赵吉兴, 刘晓飞. 电子商务概论. [M]. 北京:中国铁道出版社,2007.08.[3]柳伟卫. 分布式系统常用技术及案例分析. [M]. 北京:电子工业出版社,2017.01.[4]靳润成. 全国职业院校技能大赛促进职业教育发展的战略思考. [J]. 复印报刊资料(职业技术教育),2012.[5]彭晖. OA系统的设计. [J]. 中国科技博览,2015.[6]克拉克. SQL注入攻击与防御. [M]. 北京:清华大学出版社,2010.06.中国设备工程 2023.07(下)269Copyright©博看网. All Rights Reserved.

Research and Exploration

研究与探索·理论研究与实践

过硬件厂商提供的OPC Server接口,建立软件和硬件之间的通信。OPC Server提供了许多接口,通过这些接口,可以取得与OPC Server相连的硬件装置的信息,而无须了解这些硬件装置的细节信息,就可以实现信号互动。PLC虚拟调试就是通过这种技术,建立PLC和工艺数模的通信,从而实现PLC程序提前调试的目的。目前市场上支持这方面的工艺制造应用不是很多,其中西门子的Tecnomatix是非常著名的制造应用软件,旗下的Process Designer和Process Simulation是2个非常重要的应用软件。另外由于开放式体系架构,使得它和第三方产品的兼容性非常强。Siemens PLC和Process Simulation间的通讯简洁方便,调试后的PLC程序完善度也最高,应用较为广泛,有许多应用案例可参考,这里不多重复介绍。这里以Rockwell PLC和Process Simulation间的通讯应用来说明虚拟调试的具体应用方法,其基本原理是一样的。2 虚拟调试所需的软硬件及连接方式2.1 主要应用软件RsLogix 5000—Rockwell 编程软件,调试用20.03版本。RSLinx Classic Gateway—3.60版本以上。PS—Process Simulation工艺仿真软件,13版本以上。2.2 主要硬件Rockwell PLC—1台。PC工作站,配置要高—1台。其他硬件选配,列如HMI、安全光栅、按钮、指示灯等。2.3 连接示意图,见图1行逻辑处理,执行相关的动作。下面的示意图,见图2,就是针对一组夹头需要加载的信号。其中MOVE_OPEN对应于PLC的输出—打开夹头,MOVE_CLOSE对应于PLC的输出—关闭夹头,AT_OPEN对应于PLC的输入—夹头已打开,AT_CLOSE对应于PLC的输入—夹头已关闭。除了这些,还需要添加逻辑关系,用于处理夹头的动作顺序。图2为了和PLC进行通讯,还需要建立一张输入输出信号的对应表,将数模中加载的信号和PLC的信号对应起来,见图3,导入到PS中,这样才可以建立和PLC的通讯。图34 通讯、配置信息4.1 IP地址配置要求首先,PC工作站、PLC、编程电脑包括HMI等都需要连接到交换机,并在同一个IP地址段内,这样相互之间能够直接通讯,例如,子网掩码等无需配置。另外,对于安装PD/PS的工作站要求双网卡,一个用于和PLC之间的通信,另外一个用于和PD/PS软件之间的通信(常规的PD/PS是网络版的,需要连接到服务器获取;当然,本地安装版不需要双网卡)。4.2 通讯建立首先是在编程电脑端进行配置,打开RsLinx,选择通讯方式,按照硬件配置的方式进行选择,可以访问到PLC的硬件组态,见图4。图1其中,PD/PS软件和RSLinx Gateway都安装在PC工作站上,RsLogix 5000的软件建议用另外的编程电脑安装,这样调试比较方便,PLC和PC工作站之间用以太网进行连接,因连接的设备较多,还需要1台交换机。3 工艺数模配置在调试开始之前,我们需要先有对应的数模,这个数模是通常是由工艺工程师负责的,在数模完成后,若需要进行虚拟调试,还要在Process Simulation中进行配置。因为要和PLC进行通讯,就需要在数模中添加信号,这些添加的信号就相当于现场的传感器、阀岛等,到时这些信号需要和PLC的进行互动的;对PLC而言,这些就是现场设备的输入输出信号,PLC根据这些信号状态进图4然后在安装有PD/PS及RSLinx Classic Gateway端270中国设备工程 2023.07(下)Copyright©博看网. All Rights Reserved.

中国设备工程China PlantEngineering的PC工作站上进行相关操作,打开OPC进行配置,见图5,按步进行操作,一直到最后建立通信成功,见图6。

有些信号无法直接获取,需要在程序中加短接或开路信号。一般不建议在原程序上进行直接改动,如删除变量或加短接、旁路支路,这样会导致在现场调试时需要用大量的时间进行程序的恢复工作,并且很容易疏忽或遗漏,增加调试时间。建议在程序中建立相应的变量组,对应常开或常闭的信号,并按功能进行分类。在程序需要短接的地方引入常闭的旁路信号,在程序需要常开的地方插入对应的常开变量,而不是直接短接或旁路。这样程序可以做到快速切换,从虚拟调试程序切换到现场程序,也可以快速切换回来。这样避免虚拟调试与现场调试切换时大量的程序修改工作,也避免了切换时错误的产生。6 现场调试 图5 图6若虚拟调试顺利,并且在加载短接或旁路信号时采用了相应变量的话,现场调试还是比较方便的。先将PLC程序切换到现场程序模式,然后导入到现场PLC中,按步骤进行调试,调试过程中逐步把原先加载的变量组删除,因为当初是特定的变量,删除变量非常方便也不容易犯错。因为已经有了虚拟调试,很多逻辑或程序块都得到了提前验证,现场调试可以节省很多时间,越是复杂的项目节省的时间越多。7 结语PLC编程虚拟调试是大数据时代的产物,也是工业自动化发展的必然结果。利用虚拟调试技术,可以将整条生产线的机械、电气、机器人整合在一起进行仿真模拟,可以提高企业对生产系统整条运转时可能发生问题的认知度,从而在未投入正式制造之前对系统进行验证和优化,以提升效率,降低项目成本。参考文献:[1]OPC Server/Client 运作的方式.凌华科技.[2]Tecnomatix_VC_s Ltd.出现这个“Good”,说明你的PLC和PS已经建立了通信,通过上述方式,所需的信号点都可以和PS的信号建立通讯。5 程序调试通过上面的方式建立了PLC和数模之间的通讯,说明两者之间的信号可以互相传递了,也就是搭建沟通的桥梁。若上面通讯无法建立,请检查有哪些没有准备好,或者是遗漏了什么,只有建立了两者之间的通讯,后面的工作才可以展开。按照上面的步骤,把所有需要的信号都建立对应关系。5.1 I/O校验I/O校验是指将数模中的信号和PLC的信号一一对应起来,类似于现场的I/O校验一样。这个比较简单,主要有2种方式:一种检查数模处在哪个位置,确定对应的PLC信号是否为on;还有一个是从PLC那端开始校验,PLC给出一个动作信号,数模就应该有对应的动作,然后检查相关的信号是否一致。5.2 程序联调将事先编写好的离线PLC程序导入到PLC中,开始和数模互动联调。因受条件限制,虚拟调试的环境不可能会和现场配置那么齐全,虚拟调试环境一般不含I/O总线模块、安全装置和按钮指示灯等。所以,虚拟调试中的程序和现场程序是有一些区别的。我们在程序调试的时候要做一些调整,一般是添加一些跳转信号或者是短接、屏蔽信号,以满足虚拟调试程序需求。这次我们做的是和Rockwell PLC通讯,需要做许多假设、屏蔽工作,但若是西门子PLC进行通讯,会方便很多,因为西门子有专门的仿真模块,名称是SIMIT UNIT,可以模拟大部分现场的设备,包括ET200s等,确保虚拟调试逻辑和现场实际应用逻辑基本一致,可以使虚拟调试程序和实际现场程序非常接近,减少许多工作量。5.3 联调的注意事项上文提到有些元器件是虚拟调试环境没有的,那么中国设备工程 2023.07(下)271Copyright©博看网. All Rights Reserved.

发布评论

评论列表 (0)

  1. 暂无评论