PLC擂台第115期——如何进行PLC程序的移植
有时候在我们的工作中,当完成一个项目之后,接着又来一个项目,项目之间的工艺相似,PLC程序也相似,也许只是个别参数或者流程控制不一样。如果我们编程的时候做好工作,那么后期的项目就轻松多了,程序块的移植,调用会让我们更加轻松的完成编程。而且可以更加便捷的检查出程序问题所在。
那么我们一起来辩论下:如何进行PLC程序的移植,可以从以下几点入手:
如:
1、规划好数据地址
2、做好程序块的编程
3、程序模块化
4、编程中注意事项
格式不限,支持原创!
可以截图分享项目中你认为对选型有关的资料。
工控PLC擂台每期一题
奖项设置:
一等奖1名:20MP
二等奖3名:10MP
三等奖4名:5MP
参与奖:50积分
MP介绍:gongkongMP即工控币,是中国工控网的用户积分与回馈系统的一个网络虚拟计价单位,类似于大家熟悉的QB,1个MP=1元人民币。
MP有什么用?
兑换服务:以1个MP=1元来置换中国工控网的相关服务。
兑换现金:非积分获得的MP可兑换等值现金(满100MP后、用户可通过用户管理后台申请兑换)
在西门子博途软件STPE7中,具有程序移植功能,用户可以实现将STEP7 V5.5中的程序逻辑移植到博途软件STEP7中,从而提高了工作效率和正确率。程序移植方法如下:
1. 在西门子博途软件STEP7中,在视图下打开的“启动”中选择“移植项目” 命令;
2. 在“源路径”域中指定要移植项目的路径和文件名,选择一个移植格式或初始项目格式的项目;
3. 选中复选框“不包括硬件组态”,则仅移植软件;
4. 如果选择了一个使用移植工具创建的移植文件,则该复选框被禁用,在这种情况下,必须在使用移植工具转换之前指定是否不包括移植的硬件组态;
5. 在“项目名称”框中为新项目选择一个名称;
6. 在“目标路径”框中选择一个路径,在该路径中将创建新项目;
7. 在“作者”域中输入姓名或项目负责人的名称;
8. 如果需要注释,则在“注释”框中输入一条注释;
9. 单击“移植”,完成程序的移植工作。
一般很难遇到工艺完全一样的控制系统
要是一样,那就是设备同家公司批量生产,以前一家做焊割机的,都是焊割设备,但是
客户稍增加一个控制要求,系统无法完全移植。
————————
要想在后续的工程中应用前期工程类似的控制程序,最好做好以下几点:
1、任何一个工程结束后,文档都要认真整理。这个一方面也是客户的需求,也是为了方便自己以后查阅。经常会遇到这样的情况:有时候碰到类似工程,就打开原来的文件查阅,发现里面乱七八糟的文档一大堆,根本不知道哪个是最终定稿。只有挨个打开看,很不方便。
2、要移植,先分析新工程控制流程,可以复制原来工程的工艺流程图,稍作修改。
同时复制定义变量,信号表,变量表等等,重新按新工程命名定义文档
3、图纸也可以复制修改
4、程序复制前,先定义变量表,再复制程序,再修改调试。
看到还没结贴,也来凑个热闹。
关于移植的问题,要基于问题域考虑,也就是实际项目的情况,现根据个人项目经验,给几点小建议,以供好事者参考:
1、用概念化的观念分析项目系统,完成高层次上概念的抽象,概念之间要力争做到相互独立,或者之间的联系尽量地少。如:工厂车间里,有输送线、储存罐、码垛机、包装机等等具备整体功能概念的单元。
牢记系统是由具备不同整体功能概念的单元组成的!!!!
2、分析功能单元中的元件,考虑其控制上的通用性,设计对应的子程序或者功能块或者FB或者FC。
3、数据地址的分配,基本原则是“相同功能,地址上相邻连续;如启动按钮有8个,就可以分配给一个字节,这样方便程序集成监控;同理,故障点也可以作相同处理。地址分配起始值时尽量采用“机器字对齐”的方式,如MD0,MD4,MD8。
此处,有个重要的编程理念,“使用中间存储器”,如M区、W区、DB,借助它们的“中间层”“媒介”“桥梁”作用实现控制逻辑和实际I/O点的隔离,减少相互影响的因素。
另外,两段不同功能地址区之间要像中国山水画或者书法那样“留白”,以备日后有I/O点数增大之需求。
4、使用符号编程。
5、在必要的地方要有注释,注意是“必要的地方”。
6、基于不同的编程软件对符号表变量表采取的编辑方式不一,可以尽量将符号表变量表及地址分配表之类的表格或者文件,使用office\excel\txt等编辑软件作处理,求其通用性,这样在不同品牌间移植时只需做简单处理即可。
7、模块化编程时,在功能上不相关的统统去掉,只保留和核心相关的,一个块只做一件事!!模拟量就只是模拟量,计时就是计时,计数就是计数,位处理就是位处理,通讯处理就是通讯处理,故障诊断就是故障诊断,要保持功能的“单一纯洁性”!
像“学生用品”这个概念包括“文具”这个概念,“文具”包括如“笔”“包”“尺子”“笔记本”“橡皮”“圆规”“小刀”等单独概念体,“包”不会让人和“尺子”混淆,“橡皮”也不会和“笔记本”混淆;当然“笔”还包括“铅笔”“毛笔”“圆珠笔”“铅笔”“水彩笔”等,但是它们有个共同点是“笔”,能写能画。
这就是基本的“抽象”的功力,你的这项功力越深厚,你运用起来效率越高。
学生A来买文具(笔记本+包),学生B来买文具(橡皮+笔),学生C来买文具(尺子+小刀),当然你要是碰到个什么都要的大户,就能发一笔小财了。
好的模块设计就像买文具一样,能够通过简单的“积木式”的搭配组合来满足不同“个性化”需求的生产要求!!
8、细致考虑工艺块之间的“接口”都需要哪些必要的参数,可能生产这种产品需要m个接口参数,生产那种产品需要n个参数,那就做两个不同个数接口参数的块。或者传送参数数据区中不同的数据单元链。
西门子PLC的编程设计理念即是前期基本“分割”功能单元后期“组合”系统要求。
哆嗦了这么多,希望观者皆有所得。