研选课堂
HOME
研选课堂
正文内容
plc编程体会 一位老工程师分享:PLC编程学习心得,值得借鉴
发布时间 : 2024-11-23
作者 : 小编
访问数量 : 23
扫码分享至微信

一位老工程师分享:PLC编程学习心得,值得借鉴

许多年前,刚开始使用PLC时,也是一头雾水。仗着自己对硬件、工程知识的熟悉,和对组态软件的粗浅了解,硬着头皮接下了任务。当时已经来不及接受培训,相关资料极其缺乏,仅有的参考资料是一本英文的S7-200手册,以及西门子网站上找到的一些全西文的示例,总算在三个月内完成了系统的构建、软件的编写工作。

期间走弯路、出故障是家常便饭,经常搞得我茶饭不思,而且还由于操作不慎烧毁过一台PLC。所以我非常理解那些刚入门的网友两手抓瞎的感觉。在此,粗略的总结一下自己的学习之路,供网友们参考。

1、编程需要坚强的毅力和足够的耐心

人各有所长,有些人把编程看作一项冗长而枯燥的工作;有些人把编程看作一项趣味的智力游戏。如果你是前者,强烈建议你远离这份工作。毕竟编程工作是对人的毅力和耐心的挑战。我所在实验室中,很多学生看到我编程序就会惊讶于我面对这一堆堆符号所表现出的专注。

其实,这是兴趣使然。兴趣使我具备了足够的毅力和耐心。经过无数次失败后,当看到一个个符号按我的思路整齐的排列,PLC按我的要求有条不紊的运行时,兴趣得到了极大的满足,如同打通了一个游戏的关口。所以,我告诉这些学生:你们看到的是一堆枯燥怪异的符号,我看到的却是一群热情奔放的舞者,而我则是她们的导演。

2、编程需要敢于实践的信心

只有不断地在PLC上运行这些指令,观察运行的结果,才能弄清PLC指令的作用。很多初学者对PLC一脸的迷茫,往往是出于一种畏惧,担心损坏设备。而这些畏惧是没有任何道理的。仔细的阅读手册是非常重要的,但是仅靠读书是成不了一个工程师的。更何况手册上的内容并非面面俱到。

我在接触到那些不熟悉的指令时,喜欢单独编一个小程序,让PLC运行。然后逐个修改条件,观察运行的结果(MicroWin为用户提供了非常好的监控手段),反过来再重新理解手册的描述,这样就可以非常直观的理解这些指令的作用和使用方法。

不必担心自己写的程序会有什么问题,会影响PLC的正常工作。程序有没有问题,只有让PLC运行了才能发现。而发现问题并解决问题就是对自己能力的提高。撇开硬件操作不谈,单就软件来说,我还真没有遇到过由于软件问题而损坏PLC的事。在这里不必担心继电器电路接错线可能造成的后果。所以,大胆的实践是PLC编程的必由之路。

当然,大胆实践并不是野蛮操作,而是必须遵循必要的规范。还有一个要注意的,在程序未经可靠性证实之前,千万不要挂接负载,以免造成不必要的损失。数字量的输出有LED显示;而模拟量处理可以采用一些硬件或软件模拟手段来解决。

3、编程需要有缜密的逻辑思维

编程本身就是一种逻辑思维过程。在高级语言中,使用最多的是ifthenelse、select这些条件判别语句,这就是逻辑中的因果关系。

PLC程序就是由这些因果关系组成的:判别条件是否成立,进而决定执行相应的指令。最初的PLC是用来替代继电器逻辑电路的,所以继承了继电器电路以触点作为触发条件的描述方式。在PLC中,以虚拟触点代替了继电器的金属触点,而继电器电路所表达的逻辑关系还是被完整的保留下来。即使引入了继电器电路难以胜任的数值处理过程,PLC从根本上还是在执行一个个因果关系。

所以,理顺对象的各个事件之间的逻辑关系,是编程之前必须精心做好的准备工作。我在接到一项任务后,第一件事就是整理出一份逻辑关系图,与用户反复商讨,取得用户的认可,然后才真正进入程序的编写过程。

4、不可或缺的相关知识

PLC的程序是直接作用于对象的具体工艺过程,那么对对象具体工艺过程的理解是非常重要的的。我在与用户的交流过程中,会用我所掌握的UnitOperaTIon的知识分析用户的工艺过程,协助用户整理过程控制中的各个逻辑关系,甚至包括各种仪表、硬件的配置。

这得益于我原本所学的专业。当然,不能要求所有搞PLC程序的工程师都有我这样的经历。但是有两门知识却是不可或缺的:一是过程仪表的硬件知识,包括传感器、变送器(二次仪表)和PLC本身,这是构建控制系统的基础;二是过程控制理论,包括各种控制模型的原理和应用,其中最重要的是二位调节和PID调节模型。

PID调节是目前用得最广泛的过程控制手段,且变化多端。学习PID最好的方法就是读书。几乎所有讲解过程控制的书籍都有关于PID的内容,多读基本相关的书籍对理解PID是很有益处的。我发现不少网友在进入PLC领域时,缺乏这些相关知识。这并不可怕;可怕的是当事者不能静下心来弥补知识的缺陷。

我们不要怪罪学校没有教授这些内容,而是要注重自己如何去学习这些知识。工作中遇到的许多问题是学校里没讲过的,这不能成为我们拒绝工作的理由,而应该以积极的态度去应对这些问题。我的体会是,为了解决工作中的问题而学习的知识,比课堂上学的东西更容易记住。

5、养成良好的编程习惯

每个人编程都会有不同的习惯和特点,不能强求一致。但是一些好的习惯还是应该为大多数人所遵循。一是理顺逻辑关系、时序关系,编制程序框图;二是合理分配主程序、子程序和中断程序;三是合理分配寄存器,编制寄存器符号表。

PLC编程更接近于单片机,或者说PLC就是模块化的单片机。因此PLC的很多操作都是直接针对寄存器的,如果在程序中出现不合理的寄存器地址重叠,一定会出现不可预想的后果。编制寄存器符号表不仅可以避免上述问题(MicroWin会有问题提示),而且可以使程序具备更好的可读性。这和VB中定义变量有异曲同工之处。

VB编程中关注的是事件,不强调主程序和子程序的观念,因为VB主程序的工作是由PC的操作系统完成的。PLC则不然。PLC程序是以主程序为主干的,CPU不断的循环执行主程序,只有触发条件成立时才会调用子程序或中断程序。即子程序和中断程序所执行的任务不是全时需要的。如果把这些任务都放在主程序中会无端增加主程序的工作量,降低程序的效率。这点和单片机的编程思路是一致的。子程序的使用可以使整个程序的逻辑更清晰。而且子程序可以分开编写、调试,最后“安装”到主程序上。这样你可以一个一个解决问题。PLC编程,无论是LAD,抑或STL,都不如VB那么直观、有趣,更不如CAD那么形象。但比单片机的汇编语言的可视性强多了。对于初学者,LAD(梯形图)的编程相对直观,更容易上手。

最后,PLC提供了丰富的指令、模块,比单片机方便了很多。但是初学者编程时应尽量先使用简单的指令达到目的。尽管看上去有点土,却不失为一个入门的好途径,且对你理解那些较为复杂的指令会有帮助。具备了一定经验后,应该考虑掌握复杂指令的应用,以及程序的优化。

来源:网络,如有侵权请联系删除

PLC编程很难?老师傅说这样做可以事半功倍!20年工作的心得!

三相异步电动机的降压启动控制

1、三相异步电动机的Y-△降压启动控制

将三相异步电动机的Y-△降压启动的继电接触器控制改造为PLC控制系统.

(1)确定I/O信号、画PLC的外部接线图

(a)主电路

(b)PLC的I/O接线图

电动机的Y-△降压启动的接线图

(2)设计三相异步电动机的Y-△降压启动梯形图

电动机的Y-△降压启动控制的梯形图

2.三相异步电动机的串自耦变压器降压启动控制

将串自耦变压器降压启动的继电接触器控制改造为PLC控制系统 :

(1)确定I/O信号、画PLC的外部接线图

PLC的输入信号:启动按钮SB1,停止按钮SB2,热继电器常开触点FR。

PLC的输出信号:运行接触器KM2、串接自耦变压器接触器KM1。

(a)主电路

(b)PLC的I/O接线图

电动机的自耦变压器降压启动的接线图

(2)设计三相异步电动机的串自耦变压器降压启动梯形图

三相异步电动机的串自耦变压器降压启动控制梯形图

三相绕线式异步电动机的控制

1.三相绕线式异步电动机串电阻启动控制

将绕线式异步电动机串电阻启动的继电接触器控制线路改造为PLC控制系统:

(1)确定I/O信号、画PLC的外部接线图

PLC的输入信号:启动按钮SB1,停止按钮SB2,热继电器常开触点FR。

PLC的输出信号:电源接触器KM、短接R1接触器KM1、短接R2接触器KM

(a)主电路

(b) PLC的I/O接线图

电动机的自耦变压器降压启动的接线图

2.三相绕线式异步电动机串频敏变阻器启动电路

将绕线式异步电动机串频敏变阻器启动的继电接触器控制线路改造为PLC控制系统 :

(1)确定I/O信号、画PLC的外部接线图

PLC的输入信号:启动按钮SB1,停止按钮SB2,热继电器常开触点FR。

PLC的输出信号:运行接触器KM1、短接频敏变阻器接触器KM2、接入热继电器的中间继电器KA。

(a)主电路

(b) PLC的I/O接线图

(2)设计三相绕线式异步电动机串频敏变阻器启动梯形图

三相绕线式异步电动机串频敏变阻器启动梯形图

自动往返控制

将自动往返控制的继电接触器控制线路改造为PLC控制系统 :

(1)确定I/O信号、画PLC的外部接线图

PLC的输入信号:正转启动按钮SB1,反转启动按钮SB2,停止按钮SB3,热继电器常开触点FR、正向前进限位开关SQ1、反向后退限位开关SQ2、前进极限限位开关SQ3、后退极限限位开关SQ4。

PLC的输出信号:正向运行接触器KM1、反向运行接触器KM2。

自动往返控制的示意图

(a)主电路

(b) PLC的I/O接线图

自动往返控制的接线图

(2)设计梯形图

自动往返控制的梯形图

梯形图经验设计法

(一)PLC控制系统梯形图的特点

(1)PLC控制系统的输入信号和输出负载: 继电器电路图中的交流接触器和电磁阀等执行机构用PLC的输出继电器来控制,它们的线圈接在PLC的输出端。按钮、控制开关、限位开关、接近开关等用来给PLC提供控制命令和反馈信号,它们的触点接在PLC的输入端。

(2)继电器电路图中的中间继电器 和时间继电器的功能用PLC内部的辅助继电器和定时器来完成,它们与PLC的输入继电器和输出继电器无关。

(3)设置中间单元: 在梯形图中,若多个线圈都受某一触点串并联电路的控制,为了简化电路,在梯形图中可设置用该电路控制的辅助继电器,辅助继电器类似于继电器电路中的中间继电器。

(4)时间继电器瞬动触点的处理: 除了延时动作的触点外,时间继电器还有在线圈得电或失电时马上动作的瞬动触点。对于有瞬动触点的时间继电器,可以在梯形图中对应的定时器的线圈两端并联辅助继电器,后者的触点相当于时间继电器的瞬动触点。

(5)断电延时的时间继电器的处理 。FX系列PLC没有相同功能的定时器,但是可以用线圈通电后延时的定时器来实现断电延时功能。

(6)外部联锁电路的设立。 为了防止控制正反转的两个接触器同时动作,造成三相电源短路,除了在梯形图中设置与它们对应的输出继电器的线圈串联的常闭触点组成的软互锁电路外,还应在PLC外部设置硬互锁电路。

(7)热继电器过载信号的处理 :如果热继电器属于自动复位型,则过载信号必须通过输入电路提供给PLC,用梯形图实现过载保护。如果属于手动复位型热继电器,则其常闭触点可以接在PLC的输出电路中与控制电动机的交流接触器的线圈串联。

(8)外部负载的额定电压 :PLC的继电器输出模块和双向晶闸管输出模块,一般只能驱动额定电压AC 220V的负载,如果系统原来的交流接触器的线圈电压为380V时,应将线圈换成220V的,或在PLC外部设置中间继电器。

(二)经验设计法

以上实例编程使用的方法为“经验设计法”。顾名思义,“经验法”是依倨设计者的经验进行设计的方法。

1.经验设计法的要点

(1)PLC的编程,从梯形图来看,其根本点是找出符合控制要求的系统各个输出的工作条件,这些条件又总是用机内各种器件按一定的逻辑关系组合实现的。

(2)梯形图的基本模式为启-保-停电路。每个启-保-停电路一般只针对一个输出,这个输出可以是系统的实际输出,也可以是中间变量。

(3)梯形图编程中有一些约定俗成的基本环节,它们都有一定的功能,可以像摆积木一样在许多地方应用。

2.“经验法”编程步骤

(1)在准确了解控制要求后,合理地为控制系统中的事件分配输入输出口。选择必要的机内器件,如定时器、计数器、辅助继电器。

(2)对于一些控制要求较简单的输出,可直接写出它们的工作条件,依据启-保-停电路模式完成相关的梯形图支路。工作条件稍复杂的可借助辅助继电器。

(3)对于较复杂的控制要求,为了能用启-保-停电路模式绘出各输出口的梯形图,要正确分析控制要求,并确定组成总的控制要求的关键点。

(4)将关键点用梯形图表达出来。关键点总是用机内器件来表达的,在安排机内器件时需要合理安排。绘关键点的梯形图时,可以使用常见的基本环节,如定时器计时环节、振荡环节等。

(5)在完成关键点梯形图的基础上,针对系统最终的输出进行梯形图的编绘。使用关键点综合出最终输出的控制要求。

(6)审查以上草绘图纸,在此基础上,补充遗漏的功能,更正错误,进行最后的完善。

相关问答

plc实训心得

[回答]这个暑假,学校安排了我们三、四班学生到四川省国信安信息安全培训基地进行实训,虽然时间不是很长,仅仅为期五天,但是我受益匪浅,这次实训,让我对网...

共同探讨下使用三菱PlC的SFC顺序功能图的编程心得?

梯形图比较简单,直观,但是对于初学者来说调试的时候比较麻烦;用STL编程的话思路比较清晰,好调试。。用SFC的话比较理解力需要强一些,但是用的人比较少,注...

如何学习PLC—PLC从基础到专家的进阶过程?

第一,要有视频看。分享视频如下图:西门子200学习视频以及编程软件分享西门子博图V15以及WINCC7.2第二.以下跟大家分享一下本人使用过的PLC以及一些学习心...

电工有必要学PLC吗?

电工有必要学PLC吗?答:术有专攻,电工也要与时俱进,居于单纯的混日子当公司及企业的勤杂工,可以不学PLC,因为学校它要费时费力。时代在发展,社会在进步,...电工...

如果用PLC给自己家装修,大家想实现什么自动化的?

如果用PLC给自己家装修,想实现什么自动化?能提出这个问题的,想必也是一位发烧友,想法很好,但是实现起来在家庭中比较困难,为什么这么说?下面就分析一下。...目...

西门子plc如何学习?需要什么plc编程软件?

需要学习PLC首先需要知道PLC编程的方式:线性编程、模块化编程、结构化编程。对于西门子PLC,以结构化编程为主,但可以使用线性编程和模块化编程,对于结构化编...

plc和触摸屏的通讯线可不可以作为plc和电脑的编程线-ZOL问答

可以的,例如FX-USB-AWUSB接口三菱FX系列PLC编程电缆,USB/RS422接口适配器,带通信指示灯,长度3米FX-232AWC-HRS232接口的三菱FX3UC系列PLC...

高数难还是编程难?

当然,对于绝大多数人来说,高数仅仅是专业基础课,最起码得懂微积分的思想和一般计算方法,这对以后的绝大多数工程应用就足够了。而编程不同,编程语言本质上...

学习自动化设备的学习心得该怎么写-Elena妙妙妙的回答-懂得

通过学习与来自项目的同事聚集一堂,相互交流借鉴工作经验、问题解决的思路方法,较全面的提高了自己的理论水平和工作能力。以下是这些天的几点体会:...

三菱5u字符串怎样合并?

3.最后,要确保字符串的编码格式是正确的,比如使用UTF-8编码格式。个人心得小贴士:在使用三菱字符串拼接方法时,要确保使用的字符串拼接方法是正确的,字符串...

 建欣苑小区  江莎莎 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部