-
-
-
NirvanaViper | 当前状态:离线
总积分:694 2024年可用积分:0
注册时间: 2008-09-26
最后登录时间: 2008-10-07
-
NirvanaViper 发表于 2008/9/26 16:04:39
引用 NirvanaViper 2008/9/26 16:04:39 发表于32楼的内容
-
-
引用 MK48l 2008/9/28 15:00:46 发表于33楼的内容
-
-
hq0769 发表于 2008/10/12 10:58:51
PLC的工作方式和通用微机不完全一样,因此用PLC设计自动控制系统与微机的控制系统的开发过程也不完全一样。需要根据PLC的特点,以程序形式来体现其控制功能。设计可按照下图中几个步骤进行。34楼 回复本楼
1.确定控制对象及控制范围
详细了解被控对象的控制要求,确定必须完成的动作及完成的顺序,归纳出工作循环和状态流程图。
2.PLC型号的选定
根据生产工艺要求,分析被控对象的复杂程度,进行I/O点数和I/O点的类型(数字量、模拟量等)统计,列出清单。适当进行内存容量的估计,确定适当的留有余量而不浪费资源的机型(小、中、大形机器)。并且结合市场情况,考察PLC生产厂家的产品及其售后服务、技术支持、网络通信等综合情况,选定价格性能比较好的PLC机型。
3.硬件设计
根据所选用的PLC产品,了解其使用的性能。按随机提供的资料结合实际需求,同时考虑软件编程的情况进行外电路的设计,绘制电器控制系统总装配图和接线图。
4.软件设计
(1)在进行硬件设计的同时可以同时着手软件的设计工作。软件设计的主要任务是根据控制要求将工艺流程图转换为梯形图,这是PLC应用的最关键的问题,程序的编写是软件设计的具体表现。在程序设计的时候建议将使用的软继电器(内部继电器、定时器、计数器等)列表,标明用途以便于程序设计、调试和系统运行维护,检修时候查阅。
(2)程序初调也成为模拟调试。将设计好的程序通过程序编辑工具下载到PLC控制单元中。由外接信号源加入测试信号,通过各种状态指示灯了解程序运行的情况,观察输入/输出之间的变化关系及逻辑状态是否符合设计要求,并及时修改和调整程序,消除缺陷,直到满足设计的要求为止。
5.现场调试
在初调合格的情况下,将PLC与现场设备连接。在正式调试前全面检查整个PLC控制系统,包括电源、接地线、设备连接线、I/O连线等。在保证整个硬件连接的正确无误的情况下即可送电。把PLC控制单元的工作方式布置为“RUN”开始运行。反复调试消除可能出现的各种问题。在调试过程中也可以根据实际需求对硬件作适当修改老配合软件的调试。应保持足够长的运行时间使问题充分暴露并加以纠正。试运行无问题后可将程序固化在具有长久记忆功能的存储器中,并做备份(至少应该作2份)。
引用 hq0769 2008/10/12 10:58:51 发表于34楼的内容
-
-
hq0769 发表于 2008/10/12 10:59:54
弄通有关PLC程序设计理论是重要的。没有这方面的理论准备或指导,仅靠在实践中摸索,简单的问题还好办。复杂的就不好办了。不仅无从下手,而且花了很多时间与精力,也难编出效率较高、质量也较高的程序,常常是事倍功半。35楼 回复本楼
但是,编程的具体实践,以及在这个实践中得来的知识或技能,即经验,也是重要的。没有经验,仅有理论,既无法深刻理解理论,又无法灵活应用理论。这正如学数学,如仅了解一些定理或记住一些公式,没有作相应的练习,肯定是学不好的。更不用说,任何理论也都只是经验的总结,归根到底也都有是来自实践。
1、 经验积累
经验有别人的,也有自己的,都很重要。前者要靠细心学习,后者要靠用心积累,都要在一定的时间与必要的精力。
别人的经验有上了书的或登载在杂志上的。有的是细心学习别人的,但多数是我自己的经验。所有的例子都经我测试过,都经实践证明是可行的。我想,别的书本或杂志上介绍的也会是这样的。所以学习这样杨功的经验是必要的。
还有就是你同事的经验,也是值得学习。这种经验离你很“近”,很易借鉴。
自己的经验则是最重要的。要在自己的实践中,积累自己的经验。同时,最好在学别人的经验时,也能亲自作些测试,能使自己也有类似的经历,进而把这些经验变成自己的。这也是自己经验的重要积累。
还有一些失败的经验,这往往是不会公开的,但这些经验也要学习,也要积累。
经验的积累要用自己的脑记,更要用电脑记。最好作些分类,建立一个自用的程序库,以便于随时引用。
2、 经验升华
经验还有待升华。升华有三个层次:
最低的层次就是建立一个典型的程序库,供今后再用。若程序复杂,还可建一些功能块,或子程序,以便以后引用。
其次,要总结出有效算法。如单按钮起停程序库等。
最高层次的升华是把经验上升到理论的高度,为丰富PLC程序设计理论作贡献。我想,随着PLC使用的普及与提高,是会有越来越多从经验中升华出来的,而又能用以指导实践的PLC编程理论的。
3、 经验应用
经验积累、经验升华都是为了应用。经验应用有三方面:
1) 用作工程设计模板。设计新系统时,选用一个或几个与现设计工程类似的,已取得成功的工程,作样板进行设计。这既可减轻设计的工作量,又增加设计的成功率。这也是信息可重用的一大好处。
2) 用作程序设计参考。在无成功的工程可作样板时,在新设计的逻辑中,仍有相当一部分控制逻辑,可采用或借用已有典型逻辑,这也可减少设计的工作量,增加设计的成功率。
3) 用作算法设计参考。在既无样板可参照,又无典型可采用时,还可运用过去的一些成功的算法。
经验是宝贵的,但是经验特别是个人经验,总是有限的。所以,经验的应用也还要与编程理论相结合。
引用 hq0769 2008/10/12 10:59:54 发表于35楼的内容
-
-
hq0769 发表于 2008/10/12 11:25:38
1 收集资料。在收集资料时不仅要收集程序还要收集程序所附带的工艺流程及I/O分配表。36楼 回复本楼
2 程序分类。在收集到前人的程序后,首先加以分类。以不同品牌的程序分类——再以不同功能细分。
3 选择程序加以理解。分类完成后就是慢慢的“消化”程序了。首先选择自己熟悉的PLC程序或是自己将要用到的程序样例下手,这样理解起来比较容易。
4 对于有工艺流程及I/O分配表的程序进行理解。
1) 了解程序的工艺流程。
2) I/O分配。把I/O分配表中的说明加在程序的注释中。
3) 理解中间位。在程序设计时肯定会用到诸多的中间位做转接,然后搞清楚每一步或每一网络所对应的中间位的功能,在程序中加以注释。
4) 理解定时器。程序中定时器的功能要清楚,特别是有时间日期控制的,定时器的功能是比较重要的。其意义也要记录下来。
5) 理解计数器。
6) 理解陌生指令。在“消化”别人程序的过程中,不勉会看到一些自己没用过或不熟悉的指令,这也是自己要重点理解的对象,要准备一份电子指令手册随时查找,并在程序中记录。这才是自己要学习与进步的地方。
5、 对于没有任何说明的程序进行理解。
1) 指令应用。对此类程序主要是注意程序中的指令应用。把指令截取下来,以指令名称为为文件名另存在文件夹中。
2) 分系统另存。对于能理解并能整理成系统程序加以另存,比如说程序中的时间系统、PID系统等等的程序。
3) 所有的PLC指令都是大同小异的,当以后工作中能应用到的部分可以就地取材,举一反三。
引用 hq0769 2008/10/12 11:25:38 发表于36楼的内容
-
-
hq0769 发表于 2008/10/12 11:26:20
人的脑力是有限的,并且记事情也有时间性。过了N天就会忘记每次修改的原因,为什么要加这条指令,为什么要删除这个网络,让自己以后看自己以前编写的程序时都会很困惑。做到以下步骤,对所有程序理解与修改会有很大帮助的。37楼 回复本楼
1、 把原有程序另存一个, 在另存的程序上作修改。文件命名一个主要的程序名称,标注第几次修改,并加上修改的日期,最好是在文件名外加上简要的修改标题。例如: 《 捆扎程序5(06.10.23翻板步进电机加条件) 》
2、 用.doc文件记录修改的年月日。
3、 在日期下面记录修改程序的步骤,增加或是删除了哪些指令等。并在程序的编辑条注释中做记录,以备下次修改。
4、 在.doc文件中详细记录修改程序的原因,所出现的故障现象是什么,故障是如何排除的。
5、 在.doc文件中标注修改后所现用的程序全名,包括日期与简要的修改标题。
6、 把过时与现用的程序用,过时文件夹与现用文件夹分开整理,按日期排列。
这样每次所作的修改就有了详细的档案,便于以后的程序修改。现用的程序是标有最近日期的程序。
这样的工作步骤同时也适用于电气图纸的修改。
引用 hq0769 2008/10/12 11:26:20 发表于37楼的内容
-
引用 wml0622 2008/10/15 15:53:20 发表于38楼的内容
-
引用 023sldq 2008/10/15 16:21:51 发表于39楼的内容
-
引用 小牛牛 2008/10/15 17:15:02 发表于40楼的内容
-
引用 catcao 2008/10/16 14:05:55 发表于41楼的内容