background image

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

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 提供了丰富的指令、模块,比单片机方便了很多。但是初学者编程时应尽量

先使用简单的指令达到目的。尽管看上去有点土,却不失为一个入门的好途径,且对你理解
那些较为复杂的指令会有帮助。具备了一定经验后,应该考虑掌握复杂指令的应用,以及程