论文部分内容阅读
本课题是四川省科技攻关项目(2006201-012)“基于Linux的开放式软件数控系统的开发及应用"的子课题,课题名称“基于Linux-RTAI的开放式软件PLC系统研究”,课题致力于构建一个Linux平台下开放式软件PLC原型系统,该系统是由两个独立运行的子系统编程系统和运行系统组成的,设计一个模拟通讯程序和测试工具,用于与软件PLC系统的通信和测试系统。
传统PLC可靠性高、抗干扰能力强、专用化和模块化,适用于恶劣的控制现场,在工业控制领域和其他行业得到广泛应用。然而随着计算机技术的迅猛发展和广泛应用,使人们逐渐认识到传统PLC的通用性和兼容性不好以及价格昂贵制约了其快速发展。同时,由于国际标准IEC1131在工业自动化控制领域的推出和实施,打破了以前各PLC生产厂商的产品互不兼容的局限性,按照这个国际标准,充分利用工业控制计算机或嵌入式计算机的硬件和软件资源,采用软件来实现传统PLC的功能。
本课题的开放式软件PLC系统在总体构架上是划分为两个独立的子系统:软件PLC编程系统和软件PLC运行系统,两个子系统之间的通信是采用了中间文件的方法,保证了两个子系统都能够完全独立的运行,相互之间没有依赖关系。
根据Qt功能库的特点,采用Qt实现了编程系统的GUI部分,现在市场上或者科研机构所研究的软件PLC都尚未使用Qt进行开发,采用Qt开发能够很好地解决编程系统的跨平台问题和兼容性问题,同时为以后的嵌入式应用打好基础。
基于Linux+RTAI双内核设计一个运行系统。其中在运行系统的用户层设计中间文件接收器子模块,解决了不能在实时内核和Linux内核读取中间文件的问题,保证了运行系统的独立性,使运行系统能够很好的和其他系统集成,使运行系统今后可扩展作为嵌入软件应用。在实时内核,设计一个模拟通讯程序,用于往运行内核的输入映象区写I/O信号量,模拟开放式软件PLC系统与数控系统或者其他系统的通讯,同时印证了软件通信设计的合理性。较好的解决了软件PLC系统和其他模块的通信问题,使用设计的测试工具和运行系统通信,利用测试工具中的计时器计算实时任务的调度延迟时间,测试系统的实时性能;同时通过测试工具读取运行内核逻辑解算完成后的I/O状态值数据,反馈回用户终端,以便用户参考,测试应用程序的软模拟运行情况。
目前,只是初步完成了系统的开发工作,还有大量的工作需要在进一步的研究中完成。