浅谈华中系统数控车床PLC软件系统设计 下载本文

龙源期刊网 http://www.qikan.com.cn

浅谈华中系统数控车床PLC软件系统设计

作者:刘洋

来源:《科学与财富》2011年第06期

一、华中数控系统及其开放性简介 (1)以通用工控机为核心的开放式体系结构

系统采用基于通用32位工业控制机和DOS平台的开放式体系结构,可充分利用PC的软硬件资源,二次开发容易,易于系统维护和更新换代、可靠性好。 (2)独创的曲面直接插补算法和先进的数控软件技术

处于国际领先水平的曲面直接插补技术可实现高速、高效和高精度的复杂曲面加工。 (3)统配套能力强

公司具备了全套数控系统配套能力。系统可选配公司生产的HSV-11D交流永磁同步伺服驱动与伺服电机、HC5801/5802系列步进电机驱动单元与电机、HG.BQ3-5B三相正弦波混合式驱动器与步进电机和国内外各类模拟式、数字式伺服驱动单元。 二、PLC在数控系统上的作用

(1)控制系统研制中需要认识与解决的若干问题 ①防止步进电机运行时出现失步和误差

为了保证定位精度,脉冲当量不能太大,但却影响了定位速度。因此如何既能提高定位速度,同时又能保证定位精度是一项需要认真考虑并切实加以解决的问题。 ②可变控制参数的在线修改

PLC应用于点位控制时,用户显然希望当现场条件发生变化时,系统的某些控制参数能作相应的修改,为满足生产的连续性,要求对控制系统可变参数的修改应在线进行。 (2)控制系统方案

①将定位过程划分为脉冲当量不同的两个阶段

粗定位阶段:由于在点位过程中,刀具不切削工件,因此可采用较大的脉冲当量,由步进电机直接驱动刀具或工作台传动。精定位阶段:当使用较大的脉冲当量使刀具或工作台快速移

龙源期刊网 http://www.qikan.com.cn

动至接近定位点时,(即完成粗定位阶段),为了保证定位精度,再换用较小的脉冲当量进入精定位阶段,让刀具或工作台慢慢趋近于定位点,采用降速传动。 ②应用功能指令实现BCD码拨盘数据输入

BCD码数据拨盘是计算机控制系统中常用到的十进制拨盘数据输入装置。将BCD码拨盘装置应用于PLC控制的系统,这样无需再设计数码输入显示电路,有效地节省了PLC的输入点,简化了硬件电路。

③PLC外部元件故障的自动检测

由于PLC具有极高的可靠性,故障不是来自PLC本身,而是由于外部元件故障引起的,系统一旦自动检测到元件故障,应不仅具有声光报警功能,而且能立即显示故障代码,以便用户据此迅速判断出故障原因。 (3)控制系统的软硬件结构 软件结构

软件结构根据控制要求而的设计,主要划分为五大模块:即步进电机控制模块、定位控制模块、数据拨盘输入及数据传输模块、数码输出显示模块、元件故障的自动检测与报警模块。 三、华中数控内置式PLC基本原理

华中数控PLC采用C语言编程,具有灵活、高效、使用方便等特点。 (1)面设华中数控内置式PLC结构及相关寄存器的访问

X寄存器为机床输出到PLC的开关信号,最大可有128组(或称字节,下同); Y寄存器为PLC;

R寄存器为PLC的内部中间寄存器,共有768;

G为PLC输出到计算机数控系统的开关信号,最大可有256组; F寄存器为计算机数控系统输出到PLC的开关信号,最大可有256组;

P寄存器味儿PLC外部参数,可有机床拥护设置(运行参数子菜单中的PMC用户参数命令可设置),共100组;

B寄存器为断电保护信息,共有100组。

龙源期刊网 http://www.qikan.com.cn

X、Y寄存器会随时随着不同的数控机床有所不同,主要和实际的机床输入/输出开关信号(如限位开关、控制面板开关等)有关。但X、Y寄存器一旦定义好,软件就不能更改其寄存器各位的定义;如工要更改,必须更改相应的营建接口或接线端子。 R寄存器是PLC内部的中间寄存器,可由PLC软件任意使用。

G、F寄存器有数控系统与PLC事先约定好的,PLC因和软件都不能更改其基础暖气的各位的定义。

P寄存器可由PLC程序与机床用户任意自行定义。 对于各寄存器,系统提供了相关变量供用户灵活使用。 (2)华中数控内置式PLC软件结构及运行原理;

和一般C语言程序都必须提供main()函数一样,用户编写内置式PLC的C语言程序必须提供如下系统函数定义及系统变量值: externvoidinit(void);//初始化PLC externvoidplc1(void);//PLC程序入口1

externunsignedplc2_time;//函数plc2()的运行周期,单位:毫秒 externunsignedplc2_time;//函数plc2()运行周期,单位:毫秒 externvoidplc2(void);//PLC程序入口2

系统初始化PLC时,将调用PLC提供的init()函数(该函数只被调用一次)。在系统初始化完成后,数控系统将周期性地运行如下过程:

①从硬件端口及数控系统成批读入所有X、F、P寄存器的内容; ②如果plc1_time所指定的周期时间已到,调用函数plc1(); ③如果plc2_time所指定的周期时间已到,调用函数plc2(); ④系统成批输出G、Y、B寄存器。

一般地,plc1_time总是小于plc2_time,即函数plc1()较plc2()调用的频率要高。因此,华中数控称函数plc1()为PLC高速扫描进程、plc2()为低速扫描进程。