当前位置:首页>>嵌入式数控系统中的软PLC的应用与实现

嵌入式数控系统中的软PLC的应用与实现

发布时间:2015-09-02作者:智汇李

 1 引言

  本文所论述是数控系统大课题中人机交互的外围部分子课题中软PLC的开发应用。在数控系统中,PLC在处理开关量辅助控制问题时起着重要作用。在以前,需要根据数控系统的控制要求分析PLC与机床、主控机之间的信息交互种类和数量,来选用相应的外部硬件PLC.采用这种方法设计,产品一旦定型就很难更改.工控领域的研究人员一直在寻求解决这些问题的途径。近年来,随着计算机技术的迅猛发展以及PLC方面的国际性标准IECll31的制定,一项打破传统PLC局限性的新兴技术发展起来,这就是软PLC技术。基于Pc平台的软PLC在数控系统中正逐渐取代硬件PLC,成为该领域辅助功能控制的新方法。软PLC提供了与硬PLC同样的功能,而同时具备了Pc环境的各种优点。

  本文就嵌入式数控系统开发课题中人机交互部分所应用到的软PLC技术进行论述,对在Linux环境下基于MatPLC开发工具的软PLC具体实现过程,以及在实现过程中的注意事项上做了详细介绍。

2 软PLC技术简介

  硬PLC由于技术标准对外封闭,各厂商的硬PLC的软硬件平台各不相同。而软PLC的技术标准对外开放,其硬件平台一般是工业控制计算机或通用计算机或嵌入式控制器揿件平台是商业性的操作系统。虽然两者的软硬件平台不同,但实现PLC功能的软件结构相同,都可分为PLC开发系统和PLC运行系统两部分。PLC开发系统用于开发各种适用于工业控制的PLC程序。PLC运行系统通过运行PLC程序,与I/O板卡或现场总线或直接与I/O信号等配合完成逻辑控制,其控制方案根据PLC硬件平台的不同,可分为以下三种:fl谨于IPC或PC的控制方案。在这种控制方案中,PLC开发系统和PLC运行系统都是在同一台计算机上运行的。(2)基于嵌入式控制器的控制方案。在这种控制方案中,PLC开发系统独立于嵌入式控制器,而PLC运行系统被固化在嵌入式控制器中。(3)基于传统PLC的控制方案。在这种控制方案中,PLC开发系统一般在普通PC上运行,而PLC运行系统在传统PLC硬件上运行。从以上3个方案可以看出,软PLC和硬PLC的最大区别在于它们所采用的软硬件平台不同。

3 MatPLC开发软件介绍

  MatPLC是Linux下的软PLC开发软件,它是开放源代码的,很容易对它进行内核定制,并嵌入到自己的程序中。MatPLC采用的是模块化设计方法,其内棱主要包含以下几个部分:YO模块、逻辑模块和用户界面模块等。MatPLC的工作原理与硬件PLC类似,只是设计内核控制由软件实现。其结构如图1所示。

图1 MatPLC及其模块结构

  每个模块都是一个进程。PLC全局变量是MatPLC 中的用户程序里所有模块的公共数据.由配嚣文件设定,受MatPLC内核控制,位于MatPLC的内核中,各个模块的私有数据不包含在内。全局变量在每个模块里都有副本,各个模块通过副本的数据对本模块进行运算,当循环一次运算后,就更新到全局变量中,这样就实现了各个模块之间的通信。每个模块对全局变量的读写权限是不一样的,只有对全局变量具有写权限的模块才可以更新全局变量里的相应变量。

  MatPLC中可以用梯形图或指令表来进行PLC逻辑设计。梯形图输入方式是建立在GTK基础上的,指令表是MAT IL语言。对于用梯形图或指令表设计的PLC逻辑,其执行顺序与硬件PLC完全一致。MatPLC对IL语言设计的程序的处理过程是:先调用f12c perlscript将其编译成c代码,然后再与其它c代码一起编译。因此在一般的设计中,很少去采用梯形图或指令表来进行PLC逻辑设计,而直接用C语言来进行设计。本文不涉及MatPLC软件内核的讨论,只是用MatPLC来实现通过PCI接口卡对外围IO进行数据读写。

4 软PLC的实现

  4.1 总体设计思路

  用MatPLC进行开发.核心的文件是MatPLC.conf文件,它决定了哪个模块将被运行、输入模块需要的参数、配置MatPLC内核、配置全局变量等。在本没计应用中,设计了两个模块:一个是输入模块,另一个是输出模块。各模块构成和数据流如图2所示。输入模块通过驱动程序从PCI接口卡中读取数据,然后更新到全局变量中;输出模块从全局变量读取数据,更新到自己的全局变量副本中,并用此数据进行逻辑运算,再将运算结果输出到PCI接口卡,从而实现了用MatPLC来读写外围IO。

 

            

图2模块构成和数据流

4.2 输入、输出模块设计

  编程语言可以是c、python或tcl.考虑到MatPLC本身是由C语言写的,为了与该软件更好地兼容,本用c语言编程。输入、输出模块的程序流程图如图3所示。其中,打开设备文件、从设备中读取数据、写数据到设备由PCI接口卡设备驱动程序实现。以下给出了输出模块的程序实现代码,输入模块程序实现与输出模块类似。

图3输入、输出模块流程图

  4.3 配置文件设计

  配置文件就是MatPLC.conf文件.它控制着在输入模块与输出模块之间的数据如何共享。在MatPLC开发中处于核心地位。MatPLC.conf一般分成几个段,常用到的段包括:(1)PLC段:用来配置内核和各个模块的相关参数。(2)公共配置:设置一些各个模块共同的属性。(3)同步配置:配置各个模块之间的同步性。由于各个模块默认是异步运行的,为了保证数据的正确传输,必须让这些模块的运行同步起来,以产生全局扫描周期。这在设计中显得及其重要。(4)实时特性配置:配置整个MatPLC的实时性。MatPLC的模块可以运行在三种模式:正常模式、软实时模式和硬实时模式。正常模式是默认模式.它不保证响应的时间问题;软实时模式可以保证MatPLC模块优先于其它程序,但没有超过操作系统级,所以也不能完全保证响应的时间问题:硬实时模式可以保证响应的时间问题,但需要特殊的操作系统内核模块支持,并且编码时需要考虑到实时性问题。需要指H{的是,硬实时模式并不一定是响应最快的。有些模块由于其实现的功能的原因,是不能运行在硬实时模式的;比如,一个向文件写数据的模块就不能运行在硬实时模式。(5)[kbd]段:说明与键盘有关的操作。有些设计需要从键盘输入控制信息,就需要实现键盘段。

  对于每一个具体的设计来说,并不一定要全部实现以上五个段,也可以据需要加些其它段,比如扫描周期段等。还有一个需要注意的问题是实时性与同步的问题,MatPLC不允许将一个优先级低的模块同步到优先级别高的模块;可以将两个优先级相同的模块同步,或者将优先级高的模块同步到优先级低的模块。

  本设计中,主要实现的配置有:输入模块与输出模块的同步,全局变量的设定。

  4.4 编译与测试

  将三个文件编码好后,需要进行编译,用于编译时要链接到MatPLC提供的文件,值得注意的是,不能用gcc直接编译,而要用Makefile来编译。产生Makefile文件有两种方法.:一种是采用MatPLC软件自带的例子中Makefile文件,在此基础上进行修改;另外一种方法是采用autoscan }aclocal }li6toolize }autoconf}automake等工具来产生,其中还要自己编写一些中间文件。编译通过后进行测试,任意修改输人,观察输出是否与设计的逻辑相符。本设计采用修改Makefile示例的方法来产生Make}le文件,并制作了一个demo实现整个设计的运行口

5 结束语

  在数控系统中要用到PLC,通过计算机用软件的方式来实现PLC成为了新的发展热点。这项技术把自动化专业知识,以高附加值的方式,在PC行业规模经济的基础上加以发展提升的新型技术。目前,世界各国都在进行软PLC的研究,我国有关部门也正在着手研究开发具有自主版权的中文软PLC产品。本设计在Linux下基于MatPLC软件实现了软PLC来代替硬件PLC,实现了软PLC通过PCI接口卡对外围ID进行数据读写,简化了系统结构,降低了产品成本,并且运行实践表明,所设计的软PLC在嵌人式数控系统中应用稳定,效果良好。

  本文作者的创新点:在数控系统中,PLC在处理开关量辅助控制问题时起着重要作用。近年来,基于PC平台的软PLC在数控系统中正逐渐取代硬件PLC,成为该领域辅助功能控制的新方法。作者在嵌人式数控系统开发课题中,对软PLC技术进行了实践应用,本文就Linux环境下基于MatPLC开发工具的软PLC具体实现过程,以及在实现过程中的注意事项上做了详细介绍。实现了软PLC通过PCI接口卡对外围IO进行数据读写,简化了系统结构,降低了产品成本,并且运行实践表明,所设计的软PLC在嵌人式数控系统中应用稳定,效果良好。

 

 

公司简介

宜科(天津)电子有限公司是中国工业自动化的领军企业,于2003年在天津投资成立,销售和服务网络覆盖全国。作为中国本土工业自动化产品的提供商和智能制造解决方案的供应商,宜科在汽车、汽车零部件、工程机械、机器人、食品制药、印刷包装、纺织机械、物流设备、电子制造等诸多领域占据领先地位。宜科为智慧工厂的整体规划实施提供自系统层、控制层、网络层到执行层自上而下的全系列服务,产品及解决方案涵盖但不局限于云平台、MES制造执行系统、工业现场总线、工业以太网、工业无线通讯、机器人及智能设备组成的自动化生产线、自动化电气控制系统集成、智能物流仓储系统等,以实现真正智能化的生产制造,从而带来生产力和生产效率的大幅提升,以及对生产灵活性和生产复杂性的管理能力的大幅提升。多年来,宜科以创新的技术、卓越的解决方案和产品坚持不懈地为中国制造业的发展提供全面支持,并以出众的品质和令人信赖的可靠性、领先的技术成就、不懈的创新追求,在业界独树一帜。帮助中国制造业转型升级,加速智能制造进程,成为中国工业4.0智慧工厂解决方案当之无愧的践行者。

更多详情>>

联系我们

  • 联系人:章清涛
  • 热线:18611695135
  • 电话:
  • 传真:
  • 邮箱:18210150532@139.com

Copyright © 2015 ilinki.net Inc. All rights reserved. 智汇工业版权所有

电话:010-62314658 邮箱:service@ilinki.net

主办单位:智汇万联(北京)信息技术有限公司

京ICP备15030148号-1