新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 工控技术讲析系列之PLC现场工程师经验谈

工控技术讲析系列之PLC现场工程师经验谈

作者: 时间:2016-12-20 来源:网络 收藏

  现在的PANELPC也有采用这种方式来进行通讯的,在PANELPC上运行一些组态软件,通过串口来存取OpenPLC的数据,由于PANELPC的逐渐轻型化和价格的下降,这种方式也越来越多地被使用。

  在需要对多台PLC进行联网的时候,如果PLC的数量不是很多(15个节点以内)、数据传输量不大的系统,常采用的方式是通过RS485所组成的一个简单串行通讯口连接的通讯网络。由于这种通讯方式编程简单,程序运行可靠,结构也比较合理,因此很受离散制造行业的工厂工程师的欢迎。在总的I/O点数不超过上10000个,开关量I/O点占80%以上的系统,都可以采用这种通讯方式能够稳定而可靠地运行。

  如果对通讯速度要求较高的场合,可以采用点到点的以太网通讯方式。使用控制器的点到点通讯指令,通过标准的以太网口,用户可以在控制器之间或者扩展控制器的存储器之间进行数据交换。这PLC较为广泛使用的一种多CPU模块的通讯方式,与串口的RS485所构成的点对点网络相比,由于以太网的速度大大加快,加上同样具有连接简单,编程方便的优势,更方便的是,与上位机可以直接通过以太网进行通讯,因此很受用户的欢迎。甚至,在一些单台PLC和一台PANELPC构成的人机界面的系统中,由于PANELPC中通常有内置的以太网口,也有用户采用这种通讯方式。目前,OpenPLC对一些SCADA系统和连续流程行业的远程监控系统和控制系统,基本上采用这样的方式。

  还有一种分布式网络在大型PLC系统中是最为广泛考虑的结构。通过使用人机界面(HMI)和DDE器均可获得对象控制器的数据,同时可以通过Internet远程获得该控制器的数据。各个CPU独立运行,通过以太网结构采用C/S方式进行数据的存取。数据的采集和控制功能的实现都在OpenPLC的CPU模块中实现,而数据的保存则在上位机的*****器中完成。数据的显示和打印等则通过HMI界面和组态软件来实现。

 六、软件调试

  PLC的内部固化了一套系统软件,使得你开始能够进行初始化工作和对硬件的组态。PLC的启动设置、看门狗、中断设置、通讯设置、I/O模块地址识别都是在PLC的系统软件中进行的。

  每种PLC都有各自的编程软件作为应用程序的编程工具,常用的编程语言是梯形图语言,也有ST、IL和其它的语言。如何使用编程语言进行编程,这里就不细述了。

  但是,用一种编程语言编出十分优化的程序,则是工程师编程水平的体现。每一种PLC的编程语言都有自己的特色,指令的设计与编排思路都不一样。如果对一种PLC的指令十分熟悉,就可以编出十分简洁、优美、流畅的程序。例如,对于同样的一款PLC的同样一个程序的设计,如果编程工程师对指令不熟悉,编程技巧也差的话,需要1000条语句;但一个编程技巧高超的工程师,可能只需要200条语句就可以实现同样的功能。程序的简洁不仅可以节约内存,出错的概率也会小很多,程序的执行速度也快很多,而且,今后对程序进行修改和升级也容易很多。

  所以,虽然说所有的PLC的梯形图逻辑都大同小异,一个工程师只要熟悉了一种PLC的编程,再学习第二个品牌的PLC就可以很快上手。但是,工程师在使用一个新的PLC的时候,还是应该仔细将新的PLC的编程手册认真看一遍,看看指令的特别之处,尤其是自己可能要用到的指令,并考虑如何利用这些特别的方式来优化自己的程序。

  各个PLC的编程语言的指令设计、界面设计都不一样,不存在孰优孰劣的问题,主要是风格不同。我们不能武断地说三菱PLC的编程语言不如西门子的STEP7,也不能说STEP7比ROCKWELL的RSLOGIX要好,所谓的好与不好,大部分是工程师形成的编程习惯与编程语言的设计风格是否适用的问题。

  现场常常需要对已经编好的程序进行修改。修改的原因可能是用户的需求变更了,可能是发现了原来编程时的错误,或者是PLC运行时发生了电源中断,有些状态数据会丢失,如非保持的定时器会复位,输入映射区会刷新,输出映射区可能会清零,但状态文件的所有组态数据和偶然的事件如计数器的累计值会被保存。

  工程师在这个时候可能会需要对PLC进行编程,使某些内存可以恢复到缺省的状态。在程序不需要修改的时候,可以设计应用默认途径来重新启动,或者利用首次扫描位的功能。

  所有的智能I/O模块,包括模拟量I/O模块,在进入编程模式后或者电源中断后,都会丢失其组态数据,用户程序必须确认每次重新进入运行模式时,组态数据能够被重新写入智能I/O模块。

  在现场修改已经运行时常被忽略的一个问题是,工程师忘记将PLC切换到编程模式,虽然这个错误不难发现,但工程师在疏忽时,往往会误以为PLC发生了故障,因此耽误了许多时间。

  另外,在PLC进行程序下载时,许多PLC是不允许进行电源中断的,因为这时,旧的程序已经部分被改写,但新的程序又没有完全写完,因此,如果电源中断,会造成PLC无法运行,这时,可能需要对PLC的底层软件进行重新装入,而许多厂家是不允许在现场进行这个操作的。大部分新的PLC已经将用户程序与PLC的系统程序分开了,可以避免这个问题。

七、结语

  现场工程师的工作是十分重要的。要想成为一个优秀的现场工程师,首先要对现场的工作有热情甚至激情,然后要有严谨和耐心的态度。现场的工作环境不像在自己的公司里那么舒适,常常是又脏又乱的,而且由于有工期和时间的限制,压力也很大。而且,要面对用户和其它专业(如电气、仪表、工艺、管线施工等)的现场人员的要求和指责,需要有协调和灵活变通的能力。另外,现场工程师与研发工程师在工作中有一个很大的不同点在于,在现场,你的最重要的任务是保证系统能够按时正常运行。如果一个方案暂时走不通,要立即考虑第二甚至第三方案,哪怕是先将就一下,也要使系统能够先正常工作起来。而研发工作是不能变通的,你要实现这个功能,必须用这个办法,其它方法虽然可以实现,但你是不能使用的。许多现场工程师由于不了解这个差别,常常在现场钻入牛角尖,一条路走到死,结果导致了现场调试工作的延误。这也是为什么一个优秀的研发工程师往往并不是一个好的现场工程师的原因。现场的工程师必须有开放的头脑和灵活的心态,当然这是建立在严谨的工作态度的基础之上的。

  此外,尽管现场工作压力十分巨大,但要注意劳逸结合。有时候,三天三夜不离开现场似乎是必要的。但对于一个编程和调试工程师来说,可能回去睡它一个好觉,工作一定会完成得更快。如果在现场的调试时间很长,则抽出一两天放松一下,也是十分必要的。有时候,游山玩水也是工作。

  另外,一个优秀的现场工程师,主要依靠的是工作经验的积累,与个人的天分关系不大,只要勤恳,并做过足够多的项目,那么绝大多数人都是可以成为一个优秀的现场工程师的。所需要的时间?可能是三年五年,也可能是半年一年。


上一页 1 2 3 下一页

评论


技术专区

关闭