襄阳西门子专业授权总代理商
- 报价
- 请来电询价
- 品牌
- 西门子
- 产品规格
- 模块式
- 产地
- 德国
- 关键词
- 西门子代理商,西门子模块代理商,西门子一级代理商,西门子PLC代理,西门子中国代理商
- 更新时间
- 2026-06-01 07:49
在目前,国内用户选用的可编程控制器(PLC)仍以国外产品为主,造成这种局面的一个重要原因是欧、美、日等发达工业国家掌握了高端PLC的核心技术,其硬软件技术对应用者来说完全是封闭的,使用者只能从应用的角度学习PLC,而不能参与PLC的开发[1-2]。近年来,IEC61131-3的颁布和实施为各PLC生产厂家提供了统一的软件开发准则,开放的高性能单片机技术的发展,为硬件开发提供了有效的物质基础[3]。在这样的背景下,研制开放的PLC系统无论对于科学研究还是促进PLC行业的发展都有积极的现实意义。
PLC是一种专用于工业控制的计算机,其硬件主要由中央处理器、存储器、输入/输出接口等组成[4]。
1 开放式可编程控制器
开放式PLC硬件结构采用CPU+外围模块+接口构成,各个接口都按标准设计,大大提高了PLC的开放性,使其能方便地与大系统连接。编程语言遵循IEC61131-3,并将基于PC的编程软件作为PLC编程工具。系统硬件部分采用高性能51内核处理器STC89C51,其为模块化设计,采用滤波、隔离电路,以降低成本。主要电路有:微控制器STC89C51RC、开关量输入电路、继电器输出电路、晶体管输出电路、RS232通信接口电路、电源电路、时钟复位电路和USB通信接口电路等,PLC硬件系统框图如图2所示,软件采用Borland公司集成开发软件C++ Builder,通过集成平台对51内核处理器指令集进行解释、编译,使梯形图语言转换为能被51内核处理器识别的代码。
2 系统硬件设计
USB通信部分选择Philips公司的PDIUSBD12[5]芯片作为系统的USB接口器件,片内集成了高性能USB接口电路、SIE、FIFO存储器、收发器以及电压调整器等,可与任何外部控制器或微处理器实现高速并行通信,其速率为2 Mb/s,完全能够满足设计所要求的数据传输速度。
3 系统软件设计
系统编辑模块为用户提供编辑环境,接收用户的梯形图程序输入,并将其存储为相应的文件。梯形图语言为一种图形语言,要直接对其进行编译十分困难,因此并不是直接对梯形图程序进行编译,而是先将其翻译成指令语言的文本形式,再对指令语言进行编译。图形语言编译问题的解决,提高了代码的利用率[6-7]。通过提取数据结构中的数据,形成C语言程序文件,经过C51编译器、连接器、转换器的编译、连接、转换过程,生成能够在PLC硬件上运行的可执行文件。
3.1 用户界面
PLC用户界面是实现可编程人机交互的重要部分,它以梯形图语言的形式录入用户控制程序,以二进制形式通过串口下载到PLC硬件。
PLC在进行逻辑运算之前,必须对外部信号进行采样[8],若要实现指令的功能,首先要设置外部I/O在梯形图中的地址,系统才能够对用户程序中所使用的I/O地址与单片机的引脚地址相匹配。本设计在I/O设置对话框底层设计了如表1所示的数据处理函数。
3.2 USB通信
PDIUSBD12的固件设计成完全的中断驱动,当CPU处理前台任务时,USB的传输可在后台进行;后台中断服务程序和前台主程序循环之间的数据交换可以通过事件标志和数据缓冲区来实现。当PDIUSBD12从USB收到一个数据包,即对CPU产生一个中断请求,CPU立刻响应中断。在中断服务程序中,固件将数据包从PDIUSBD12内部缓冲区移到循环数据缓冲区,并将PDIUSBD12的内部缓冲区清零,以便接收新的数据包,使CPU可以继续执行当前的前台任务直到完成。本文利用PDIUSBD12的端点1进行命令的传输和应答,端点1每次接收计算机发送过来的8 B指令,其指令格式如表2所示。例如,接收到十六进制码52 01 00 03 00 07 00 50,表示读24C01器件从03字节开始的7个字节的数据。52H为R的ASCII码,57H为W的ASCII码。端点2用于数据的传输。
本文在了解PLC国内外研究状况以及其市场需求的基础上,提出了研发开放式PLC的概念,完成了PLC集成开发系统的C51模块实现方案的设计,将USB通信方式引入PLC领域,所设计的梯形图编辑器提供了梯形图编辑平台,实现了PLC的基本逻辑指令,完成计算机与控制器的USB通信。
数控机床中,通常用可编程控制器(PLC)对机床开关量信号进行控制。PLC可靠性高,使用方便。但在大多数数控机床,特别是经济型数控机床中,要求的输入输出点数并不多,通常在60点以下,因此,为了降低数控机床成本,在基于工业PC机的数控系统中,可以采用开关量I/O板加外接继电器,配合主机的软件对机床开关进行控制。但如果PC机采用单任务操作系统(如DOS),数控系统的所有任务运行都置于一个总体的消息循环中,软件的模块化和可维护性较差,系统故障的风险相对集中,而且不能充分利用PC机系统资源。而采用非实时多任务操作系统(如bbbbbbs)时,Win32API的设计没有考虑到实时环境的开发用途,其系统调用的效率不高,不能满足数控系统PLC控制的实时性要求。
为此,本文提出一种基于RT-Linux操作系统的嵌入式PLC,利用RT-Linux的开放性、模块化和可扩展性的系统结构特性和多线程/多任务的系统环境,在保证实时性的同时,使故障风险相对分散。
数控系统嵌入式PLC的硬件结构
数控系统硬件建立在通用工业PC的开放体系之上,数控系统嵌入式PLC硬件包括:工控机及其外围设备,基于ISA总线的开关量输入输出接口卡,光电隔离模块,继电器输出模块。其结构如图1所示。
工控机采用RedHatLinux810+RTLinux311操作系统,数控系统的人机界面、数控代码处理、轨迹规划、参数管理以及PLC控制都通过工控机由软件来实现,不需要独立的PLC控制器,减少了数控系统对硬件的依赖,有利于提高系统的开放性。
I/O输入输出信息通过PC机I/O接口卡实现主机与伺服接口模块和I/O接口模块之间的信息交换,PC机I/O接口卡基于ISA或者PCI总线。
RT-Linux的体系结构
RT-Linux是基于Linux系统并可运行于多种硬件平台的32位硬实时操作系统(hardreal-timeoperatingsystem)。
它继承了MERT系统的设计思想,即以通用操作系统为基础,在同一操作系统中既提供严格意义上的实时服务,又提供所有的标准POSIX服务。RT-Linux源代码公开,易于修改,使系统成本降低,源代码的公开使数控系统的开发摆脱了对国外软件公司的依赖,有利于提高数控软件国产化程度。
RT-Linux是基于Linux并可运行于多种硬件平台的多任务实时操作系统。通过修改Linux内核的硬件层,采用中断仿真技术,在内核和硬件之间实现了一个小而高效的实时内核,并在实时内核的基础上形成了小型的实时系统,而Linux内核仅作为实时系统低优先级的任务运行。对于普通X86的硬件结构,RT-Linux拥有出色的实时性和稳定性,其大中断延迟时间不超过15μs,大任务切换误差不超过35μs。这些实时参数与系统负载无关,而取决于计算机的硬件,如在PII350,64M内存的普通PC机上,系统大延迟时间不超过1μs。RT-Linux按实时性不同分为实时域和非实时域,其结构如图2所示。
实时域在设计上遵循实时操作系统的设计原则,即系统具有透明性、模块化和可扩展性。RT-Linux的实时内核由一个核心部分和多个可选部分组成,核心部分只负责高速中断处理,支持SMP操作且不会被底层同步或中断例程延迟或重入。其它功能则由可动态加载的模块扩充。RT-Linux把不影响系统实时性的操作(即非实时域的操作)都留给了非实时的Linux系统完成。基于多任务环境的Linux为软件开发提供了丰富的系统资源,如多种进程间通讯机制,灵活的内存管理机制。
嵌入式PLC的设计及实现
嵌入式PLC的模块组成
数控系统的PLC控制模块实时性要求较高,因而必须在系统的实时域内运行。根据通用数控系统的PLC控制以及数控系统软件模块化设计的要求,将数控系统的PLC控制模块作为RT-Linux系统的实时任务之一,其优先级和调用周期取决于数控系统各任务的实时性要求 以及控制要求的响应时间。PLC控制模块主要完成数控系统的逻辑控制,而被控制的输入输出也就是I/O的输入输出由PC机I/O接口卡输入输出模块来完成,即完成数控系统的PLC控制需要两个RT-Linux实时任务,如图3所示,这两个任务分别为RT-Task1(以下称“适配卡输入输出”)、RT-Task2(以下称“PLC控制”)。
基于RT-Linux系统的嵌入式PLC实时任务关系图,其中适配卡输入输出主要是完成数控系统的输入输出,即各轴位置控制命令的输出、I/O的输出、I/O输入以及位置反馈输入,它实际上是数控系统控制卡的设备驱动模块,其优先级在数控系统的各实时任务中为。根据其硬件特征以及运动控制要求,其响应周期为100μs,响应时钟周期由PC机I/O接口卡上的硬件定时器产生。根据RT-Linux系统对硬件中断的响应机制,输入输出控制任务的实时性是可以保证的,这一点在我们的数控系统已经得到验证。
PLC控制主要是完成数控系统的PLC控制功能,其任务优先级低于适配卡输入输出,同时也低于数控系统的精插补实时任务和位置伺服实时任务。根据通用数控系统的PLC控制要求,确定其响应周期为5ms,响应周期由RT-Linux的软件定时器产生,根据RT-Linux系统的实时多任务调度机制,PLC控制任务的实时性是可以保证的。在实际应用中也得到验证。
嵌入式PLC的实时任务模块数据通讯
完成数控系统PLC控制的两个实时任务之间由于需要输入输出的数据量(一般情况下为64输入,64输出,但输入输出根据需要还可以扩展)不太大,因而采用共享内存的通讯方式,在适配卡输入输出和PLC控制
两个实时任务之间开两块共享内存,一块用于适配卡向PLC控制传输I/O口状态信息,另一块用于PLC控制向适配卡输入输出任务传输经PLC逻辑处理后的控制信息。
在这里,两个实时任务间不采用RT-FIFO进行通讯的原因在于这两个实时任务间通讯的数据量不是很大,而这两个实时任务运行周期差别较大,采用RT-FIFO传输数据,为了避免FIFO的阻塞,相应地要增加两个任务间的协调机制,这样的通讯效果未必比采用共享内存好,而且共享内存的读写速度比FIFO相对较快。
嵌入式PLC的实时任务的实现
适配卡输入输出为动态可加载模块,适配卡输入输出模块(任务)以100μs为周期的硬件定时中断,完成各轴位置控制指令和I/O的输出、各轴位置反馈值和I/O的输入,适配卡输出值来自于位置伺服任务和PLC控制任务,输入值来自于适配卡的输入接口。PLC控制模块(任务)同样也是一个动态可加载模块,它以5ms的软定时,周期性地从它与总控模块通讯的RT-FIFO读取控制信息(如M指令,S指令及T指令),同时从它与适配卡输入输出模块通讯的共享内存中读取I/O信息,然后进行逻辑处理,后将结果写入共享内存供适配卡输入输出模块读取并输出。
结论
目前该嵌入式PLC模块已成功应用于清华大学精仪系制造工程研究所THHP-III数控系统(基于RedHatLinux8.0+RTLinux3.1)中,该模块可以满足对普通数控系统和加工中心PLC控制要求。
西门子PLC模块,变频器,触摸屏,交换机
从事智能科技、自动化科技、机电领域内的技术开发、技术转让、技术咨询、技术服务,工业自动化设备安装,工业自动化控制设备、电气设备、机申设备、电子产品、五金产品、金属材料、仪器仪表、橡塑制品销售,商务信息咨询,软件开发,建筑装修装饰建设工程专业施工,建筑安装工程(除特种设备),机械设备租赁(不得从事金融租赁),物业管理。工业自动化设备加工、销售。
本公司销售的一律为原装正品,假一罚十,可签正规的产品购销合同,可开增值税发票,税点另外算,24小时销售热线:15221406036 本公司销售的一律为原装正品假一罚十可签正规的产品购销合同可开增值税发票税点另外算24小时销售热线15221406036 西门子触摸屏代理商,西门子一级代理商,西门子中国授权总代理 ----浔之漫智控技术(上海)有限公司 本公司专业经销合信/CO-TRUST科思创西门子PLC;S7-200S7-300 S...