电气新手不得不知的:西门子S7-12001500PLC的编程思维
西门子S7-1200/1500PLC的编程思维
一、程序规范化建设
规范化是一个循序渐进的知识积累的过程,提取经常使用的程序,去除全局变量(I、Q、M、T、C),去除数据块,设置规范的参数,把它做成带接口的FB,放到规范库中。
规范化是一个“固化→进化→固化→进化”不断优化的过程。
规范化对于程序设计者的优点:
1、模块化和面向对象的编程方式,构建大型项目较容易。
2、便于程序块的持续更新,功能更全面。
3、程序的架构比较容易被后来者学习传承、更新。
4、设计方式统一,一致性好,提高设计效率。
5、提高了软件的质量和产品的竞争力。
规范化对于最终用户(设备维护、使用者)的优点:
1、快速定位设备系统故障,快速修复设备,减少停机时间。
2、维护人员较容易看懂规范化的程序。
3、规范化的程序,让维护人员对设备的技术改造更简单。
二、控制对象的拆分
在工程师面向对象(项目)时,要有“庖丁解牛,目无全牛,只有结构”的思想,对一台完整的机器设备进行拆分,把它分为若干个控制单元,一个控制单元可以再往下细分若干个设备模块,一个设备模块再往下可以分为不同的控制模块,如感应模块、驱动模块等。拆分的模块要大小适中,太大不灵活,太小拼装效率低。
结构清晰明了,整体也就优化了。
这样的方式就是为了程序的模块化,使程序块方便重复使用。
三、用FB还是FC
如果从C语言等高级语言的角度来看,FB相当于“类别”,FC相当于“方法”。所以将工艺对象的具体的物件用FB块编程比较方便,更有利于后期程序的规范化。如果是控制对象的数据转换、计算功能(FB调用FC),以及程序的划分、控制对象预处理等非规范化功能可用FC来编程(FC调用FB)。
具体使用情况根据不同工程师的使用习惯有所不同,简单概括为:1、具体的工艺对象用FB。2、数据转换、计算用FC。3、调用全局变量对程序控制用FC。
谈谈如何提高电气人员plc编程思路(一)
PLC编程,无非有几种方式方法。
1、开关量编程
2、脉冲量编程
3、模拟数字量编程
4、功能指令
一、开关量编程
开关量编程就是利用常开常闭和out线圈输出来实现功能。这种编程方法解决简单的问题比较容易,但是解决复杂一点程序,程序逻辑本身复杂度会不断提高。为了降低程序逻辑复杂度,可以在程序中引入中间继电器M,或者通过时间继电器,结束一步触发一步,层层递进,解决问题。但是这样做也有不好的地方,对于一些随机性控制,比如电梯,实现每一步都需要很多条件,楼层越高,之间的联锁成倍数增长,这时,就应该引入模拟量去解决问题,通过数据比较,实现程序的控制。
二.脉冲量编程
开关状态有三种,按下、悬停、释放,PLC只接受上升沿和下降沿,也就是我们按钮的按下和释放。在我们解决液位的问题,我们就能利用这个上升和下降来检测液位的位置。或者我们想要实现一个按下不启动,松开时设备才启动的功能。脉冲编程通常与置位(s)和复位(r)指令配合使用。
三、模拟数据量编程
数据量编程是解决复杂问题最好的方法,程序逻辑清晰,程序不容易出错。比如电梯,我们可以把每层对应一个数字,我们可以通过所在楼层位置和所去位置进行比较,实现电梯是上升还是下降。我们还能够对位置进行记忆。
四、功能指令
要想解决问题快,必须熟悉plc特有的功能指令,每个品牌功能指令略有不同,但大同小异。比如要实现一个,根据操作人员按按钮的顺序启动电机,由于操作人员操作时的随机性,普通常开常闭难以实现该功能。最简单的方法就是用先进先出,通过出入栈实现程序控制。
另外,控制方法也有很多种。
比如我们通常说的顺序控制,也就是开环控制典型的一类。这种控制方法无法纠错,但程序逻辑清晰,也能解决很多常规问题。
随机控制,程序逻辑关系就比较复杂,需要不断记忆当前数据,把数据比较分析,再选择逻辑输出。像流量控制,就可以根据数据量的大小计算分析,调整电磁阀门开度,达到限流问题,当然,这是pid控制的类型。像电梯这种也是闭环控制。我们的变频空调控制系统,根据温度调整电机频率,等等很多案例。
今天先说这么多,下次用案例来慢慢说明,面对这些问题,我们就能如何快速入手解决问题。
相关问答
在单位做设备维修,很多设备上有PLC,想在PLC上多下点功夫,怎么做?
我是矿山电气小东,分享电气知识。看到这个问题时,第一时间就想到了我自己在十几年前,初次接触PLC的场景我与PLC初相识那还是在2007年的一天,我们矿的一斜...1...
机械自动化编程怎么学?
学习机械自动化编程需要掌握相关的基础知识和技能。首先,了解机械自动化的原理和应用领域,学习相关的机械工程和自动化技术知识。其次,学习编程语言,如C++...
新手该如何学习三菱PLC?
当年我开始接触的PLC也是这个牌子的PLC了,记得是FX-2N这个系列的,根本都不用怎么学就会了,我当时接到了人生第一个项目,是一种凹版印刷机控制系统了,就采用...硬...
西门子plc编程,如何学习SCL语言编程?
不要看的很神秘,和你小时候写作文一样,字词词组成语句子段引用文章,成了。字:字符,词:关键词名称词类型就是变量类型,句:if,段:有逻辑关联的一段...
plc提供多种编程语言有什么好处?
一、可以提高电脑水平。学习PLC编程,首先要学会各种PLC、触摸屏软件安装和卸载,打字当然也是必不可少的要求,软件中的菜单的应用相当于把电脑的基础知识...
简易plc怎么编程?
1.编程简易PLC是可以的。2.因为简易PLC相对于复杂的PLC而言,功能较为简单,编程也相对容易上手。它通常具有简单的指令集和易于理解的编程界面,不需要过多的...
plc编程能连续编100步是什么水平?
1.连续编100步是一种较高水平。2.这是因为PLC编程需要对控制逻辑进行精确的设计和编写,而连续编100步意味着需要处理较为复杂的控制任务。这需要具备扎实的...
英语好对学PLC有帮助吗?
学习PLC编程不需要英语水平有多高,它只是一种逻辑关系的运用,需要你的逻辑性思维够敏锐,需要多加联系的。谁说其中的指令都以英文命名,只要熟练了,记住了就...
学plc编程月薪能达到1万吗?
这套方法完全可以让你轻松编程,潇洒生活!在接触工控行业的这九年里,我...6.程序编好了去调试过程中,缺少实际调试工程经验7.遇到复杂的工程,没有思路,心里发慌...
现在学PLC编程还需要学变频器吗?
当你问这个问题的时候,说明你还没有入门,需要加强学习!首先,plc是什么?从学术上来讲,PLC=是ProgrammableLogicController的简称,又叫可编程逻辑控制器...