弄懂有关PLC程序设计理论是重要的,没有这方面的理论准备或指导,仅靠在实践中摸索,简单的问题还好办,复杂的就不好办了。不仅无从下手,而且花了很多时间与精力,也难编出效率较高、质量也较高的程序,常常是事倍功半。
编程的具体实践,以及在这个实践中得来的知识或技能,即经验,也是重要的。没有经验,仅有理论,既无法深刻理解理论,又无法灵活应用理论。这正如学数学,如仅了解一些定理或记住一些公式,没有做相应的练习,肯定是学不好的。更不用说,任何理论也都只是经验的总结,归根到底也都来自实践。
1、经验积累
经验有别人的,也有自己的,都很重要。前者要靠细心学习,后者要靠用心积累,都要在一定的时间与必要的精力。别人的经验有上了书的或登载在杂志上的。有的是细心学习别人的,但多数是我自己的经验。所有的例子都经我测试过,都经实践证明是可行的。我想,别的书本或杂志上介绍的也会是这样的。所以学习这样的经验是必要的。
还有就是你同事的经验,也是值得学习。这种经验离你很“近”,很易借鉴。自己的经验则是***重要的。要在自己的实践中,积累自己的经验。同时,***好在学别人的经验时,也能亲自做些测试,能使自己也有类似的经历,进而把这些经验变成自己的。这也是自己经验的重要积累。
还有一些失败的经验,这往往是不会公开的,但这些经验也要学习,也要积累。经验的积累要用自己的脑记,更要用电脑记。***好做些分类,建立一个自用的程序库,以便于随时引用。
2、经验升华
经验还有待升华,升华有三个层次:
***低的层次就是建立一个典型的程序库,供今后再用。若程序复杂,还可建一些功能块,或子程序,以便以后引用。
其次,要总结出有效算法。如单按钮起停程序库等。
***高层次的升华是把经验上升到理论的高度,为丰富PLC程序设计理论作贡献。我想,随着PLC使用的普及与提高,是会有越来越多从经验中升华出来的,而又能用以指导实践的PLC编程理论的。
3、经验应用
经验积累、经验升华都是为了应用。经验应用有三方面:
1)用作工程设计模板。设计新系统时,选用一个或几个与现设计工程类似的,已取得成功的工程,作样板进行设计。这既可减轻设计的工作量,又增加设计的成功率。这也是信息可重用的一大好处。
2)用作程序设计参考。在无成功的工程可作样板时,在新设计的逻辑中,仍有相当一部分控制逻辑,可采用或借用已有典型逻辑,这也可减少设计的工作量,增加设计的成功率。
3)用作算法设计参考。在既无样板可参照,又无典型可采用时,还可运用过去的一些成功的算法。
经验是宝贵的,但是经验特别是个人经验,总是有限的。所以,经验的应用也还要与编程理论相结合。我们是维修电工不是电气工程师,找准了自己的位置,明确了方向。电气工程师不会去现场进行PLC接线,但是维修电工不仅要现场给PLC接线,而且还要掌握如何修改程序,我们就知道自己应该掌握哪些知识,应该从怎么学习PLC,我谈谈自己的看法。
首先,作为维修电工我们要从硬件开始学习,必须掌握PLC的I/O输入输出点,PLC的每个部位起什么作用的。在日常维修工作中,PLC外部***容易出现问题就是I/O点的损坏,需要更换到PLC的备用输入输出点。外部接线更改完成后,还需要更改PLC内部的程序的I/O点的的定义,我还需要掌握软件方面的知识。
第二点,作为维修电工我们要从软件开始时学习,学习各种PLC编程软件里的上载和下载在哪里操作。在维修的工作中,PLC的I/O输入点外部更改后,内部的程序也需要修改,这个时候我们就需要把PLC的内部程序上载了,然后修改程序。修改完了,再下载到PLC的里。(每个***的PLC上传和下载都不一样,如果大家有兴趣可以留言,我们以后再分享如何进行PLC的上传和下载)。
第三点,作为维修电工我们要从PLC的硬件构造也要掌握,对我们以后维修工作中,PLC出现问题,需要简单的维修PLC有帮助。
一般由控制器、运算器和寄存器组成,这些电路都集成在一个芯片内。CPU通过数据总线、地址总线和控制总线与存储单元、输入/输出接口电路相连接。
与一般的计算机一样,CPU是整个PLC的控制中枢,它按PLC中系统程序赋予的功能指挥PLC有条不紊地进行工作。CPU主要完成下述工作:
(1)接收、存储用户通过编程器等输入设备输入的程序和数据。
(2)用扫描的方式通过I/O部件接收现场信号的状态或数据,并存入输入映像寄存器或数据存储器中
(3)诊断PLC内部电路的工作故障和编程中的语法错误等。
(4)PLC进入运行状态后,执行用户程序,完成各种数据的处理、传输和存储相应的内部控制信号,以完成用户指令规定的各种操作。
(5)响应各种外围设备(如编程器、打印机等)的请求。
PLC采用的CPU随机型不同而不同,目前,小型PLC为单CPU系统,中型及大型则采用双CPU甚至多CPU系统。目前,PLC通常采用的微处理器有三种:通用微处理器、单片微处理器(即单片机)、位片式微处理器。
第四,作为维修电工我们要从PLC的编程语言也要掌握:
1、梯形图语言(LD)与电气操作原理图相对应,具有直观性和对应性;电气设计人员易于掌握,目前在小型PLC上应用广泛!
2、指令表语言(IL)指令表编程语言是与汇编语言类似的一种助记符编程语言,和汇编语言一样由操作码和操作数组成。在无计算机的情况下,适合采用PLC手持编程器对用户程序进行编制。目前基本上没什么人使用,但是我们也应该了解!
3、功能模块图语言(FBD)功能模块图语言是与数字逻辑电路类似的一种PLC编程语言。这是一种较新的编程方法,用方框图的形式来表示操作功能,类似于数字逻辑门电路的编程语言。有数字电路基础的人很容易掌握,由于功能模块图能够清楚表达功能关系,使编程调试时间大大减少。目前,这种语言是发展趋势,国际电工协会正在实施发展这种新式的编程标准,而且某些PLC制造厂家,已经在中型及大型PLC开始支持这种语言了!
4、顺序功能流程图语言(SFC),顺序功能流程图语言是为了满足结构化和标准化而设计的编程语言。对于负责的控制系统,内部联锁、互锁极其复杂的情况下,采用流程图语言可以很直观地看到设备的动作顺序。比较容易读懂程序,不同的人员都比较容易理解其他人编写的程序,因为程序按照设备的动作顺序进行编写,规律性较强,不需要复杂的互锁电路,更容易设计和维护系统。目前这种编程语言***适合从事工艺设计的工程技术人员,因此,它是一种效果显著、深受欢迎、前途光明的编程语言。
5、结构化文本语言(ST)结构化文本语言是用结构化的描述文本来描述程序的一种编程语言。它是类似于高级语言的一种编程语言。在大中型的PLC系统中,常采用结构化文本来描述控制系统中各个变量的关系。主要用于其他编程语言较难实现的用户程序编制。这五种编程语言,我们必须应该要掌握就是梯形图,也是***容易掌握的编程语言。
新闻中心