非知识产权

基于单片机的简易仪表车床数控系统的实现

第二章数控系统的设计要求

2.1概述

数控系统是为了适应国内许多普通机床的改造而设计的。主要考虑四个方面:

①经济

既然用于普通机床的数控改造,就必须充分考虑系统的成本,这是保证系统设计目的的关键。这里的成本包括整个系统的成本,包括数控系统、伺服驱动系统和机械传动系统等。,其核心在于数控系统的方案选择。

②便利性

数控系统的便利性,也叫“舒适性”,主要体现在系统的编辑部分。编辑(编程)部分是人与系统直接打交道的部分,也就是所谓的“人机界面”。人机世界要人性化,也就是说编辑(编程)部分要尽量给用户提供方便、快捷、舒适的操作环境。该系统需要体现在以下方面:

●中文键,方便各级操作人员。

●输入、检索和修改应尽可能一体化。即可以在输入时检索修改,检索时修改输入,自动显示节目段号。

●快速检索,即上下翻页即可显示程序。

③实用性

从经济上讲,数控系统的设计不应追求功能的大而全,而应以实用性为原则。普通加工只要具备以下功能即可满足需要:

●直线和圆弧插补。插补速度要充分考虑机床本身的内在质量,如刚性、抗冲击性、耐磨性等,不能太高。

●速度连接技术,即升/降速控制。速度连接技术可以保证系统在加工过程中实现两个程序之间的平滑速度连接,从而避免加工刀痕或平台,保证精度。

●动态坐标显示。

●加工程序的断电保护能力。

●电动刀架控制。使用电动刀架和软件控制可以提高生产效率。

●细分技术。细分技术是当今经济型数控系统的一项重要技术。能有效解决步进电机低频振荡问题,同时细化机床脉冲当量,提高控制精度;此外,还可以提高低速加工时的刀具输出。

④可靠性

由于数控系统的工作环境非常恶劣,所以必须有足够的可靠性来保证系统的稳定运行。

2.2数控系统的性能指标

根据广泛的设计要求和假设,数控系统的性能指标可以概括如下:

●X、Z两轴联动,开环控制方式。

●ISO国际数控标准格式代码编程。

●快速定位。

●能够进行线性和圆弧插补。

●能与加价机串行通信,具备简单联网能力。

●最大编程尺寸为9999.99mm,Z轴脉冲当量为0.01mm,X轴脉冲当量为0.005mm,最大进给速度为0.083m/s(5m/min)。

●预留具有螺纹加工功能的接口。

●有连续和点动两种手动加工模式,以及自动连续加工模式。

第三章总体方案的确定

3.1系统总体方案

在该系统的开发过程中,紧紧围绕可靠性、方便性和低成本等设计要求。确定总体计划如下:

3.1.1基于单片机的系统结构

根据上述设计思想,本系统采用基于单片机的系统结构。该方案结构简单,成本低。考虑到扩展性,主系统采用89S58单片机。AT89S51是一款低功耗高性能CMOS 8位单片机。该芯片包含4K字节ISP(在系统可编程),可重复擦除1000次。该设备由ATMEL的高密度和非易失性存储技术制造。该芯片兼容标准的MCS-51指令系统和80C51引脚结构,集成了通用的8位CPU和ISP Flash存储单元,功能强大的微型计算机AT89S51可以为许多嵌入式控制应用系统提供性价比高的解决方案。

1.8位的中央处理器

2.26个特殊功能寄存器。

3.片内振荡器和时钟电路

4.全静态操作:0Hz-24KHz

5,32条可编程I/O线

6.两个16位可编程定时计数器

7.5中断优先级2中断嵌套中断

8.两个全双工串行通信端口

9.电源控制模式:低功耗空闲和断电模式。

10和8031 CPU兼容MCS-51。

11,4个8位并行I/O端口

12,三级程序内存安全锁

13,128B内部RAM

14,内部硬件看门狗电路

15,4k字节闪存片内程序存储器(寿命:1000次写入/擦除周期)

16,SPI串行接口,用于芯片的系统内编程。

17、可寻址64KB外部ROM和外部RAM的控制电路

我们把这些资源称为单片机的“资源”,单片机的应用就是如何充分合理地利用这些资源来解决实际问题。

3.1.2人机界面

(1)采用液晶显示界面。

作为简易数控系统,采用12232汉字图形点阵液晶显示模块,采用带背光的字符液晶模块作为主显示界面,不使用数码管进行显示。这有三个目的:

● LCD显示模式显示容量大,可显示所有字符,并可自定义字符。至于不能显示图形实现加工曲线动态显示的缺陷,可以通过在计算机上模拟加工来弥补。

LCD模块自带控制器,可以减轻主CPU的负担。

●使系统具备菜单驱动的基本素质。编辑模块的全屏编辑功能采用菜单驱动的方式实现,符合友好人机界面的要求。

可以显示汉字和图形。

(2)采用双功能键设计,简化键盘。

在系统设计中,充分考虑了功能的需求、操作的便捷性和系统的复杂程度之间的关系,系统的大部分按键都是双功能键,使得整个系统界面简洁。

3.1.3采用开环控制方式。

系统设计的目的决定了系统只能采用开环控制方式。在开环位置控制系统中,只能用步进电机作为伺服执行单元。这是由步进电机本体的特性决定的。有关步进电机特性的详细内容,请参阅本章以下相关章节。

开环控制系统的数控机床结构简单,成本低,只适用于加工精度要求不高的中小型数控机床,特别是简单经济的数控机床。

这种系统比较简单,也是最便宜的,可以用于小型车床、铣床、钻床和线切割机。下图是一个常见的两坐标简易数控系统的组成框图。系统软件固化在单片机的存储器中。加工程序可以通过键盘或磁带机输入,由系统软件编辑并输出一系列脉冲。经过光电隔离和功率放大,驱动两个步进电机分别控制机床两个方向的运动,控制位置、轨迹和速度。根据需要,微机还可以通过继电器电路实现主轴的启停、变速、各种辅助电机的启停、刀架分度、工件松开等动作的自动控制,使整个加工过程自动进行。

图3-1开环步进电机与单片机的连接电路

单片机控制步进电机开环系统具有价格低廉、技术成熟等优点,因此得到广泛应用。但是,这种系统仍然存在一些缺点,如阻力矩小,过载能力差,速度低,精度低,价格随扭矩增加呈指数增长。因此,在选择时应注意在适当的范围内发挥其优势。一般主要适用于拖动力矩小于15Nm的小型机床,如C616、C618、C620、C6140等普通车床。扭矩要求大、功能多的机床(如铣床、镗床、钻床、镗铣床)和高精度机床(如坐标镗床)很难使用,需要开发与之相适应的其他经济型数控系统。

3.1.4简化功能提高可靠性。

该设计具有简单数控系统所需的基本功能。

●直线和圆弧的插补能力。

●端面和台阶的圆形加工。

●三种操作模式:点动、联动和自动。

●沈星银行的沟通能力。

3.2系统功能模块及其分析

3.2.1系统功能模块及总体框架

(1)系统操作界面

根据以上所述

图3-2系统人机界面图

重置-在崩溃、工作错误等情况下,系统的总钥匙清除。,以便系统可以返回到最初的设计状态。

运行-自动运行用户的零件加工程序,包括语法检查、数据处理、编译、插补运算和步进电机控制。

暂停一——暂停自动加工,这是一个乒乓键。按一次暂停加工,再按一次继续加工。

换刀1-用于手动换刀,每次按下。电动刀架旋转到一个工位,在本系统中为90度。

手动——配合“←、↑、→、↓”实现动作表的联动;编辑程序时,移动光标的键。数字1-9都是双功能键,用“上下”键进行程序输入和切换。

G-a准备功能键,用于输入ISO加工程序。

M——辅助功能键,用于输入冷却泵启动/停止、程序结束等程序段。

插入——用于在程序编辑过程中切换“插入和修改”模式。它也是一个乒乓键,由块光标或下划线光标指示。

删除——在插入模式下删除当前字符;在修改模式下,删除当前光标位置的字符。

上一个1-程序前进到上一个程序段。相当于PC的PageUp键。

下一页-程序进入下一个程序段。和上一页键一样,是屏幕编辑键。相当于PC的PageDown键。

回车键。

Esc-相当于PC的ESC键。

(2)系统功能模块和总体框架

系统总体分为五大模块:人机界面模块、伺服执行模块、电动刀架拧紧模块、串行通信模块和基于AT89S51单片机的主控模块,如图3-2所示。每个模块的功能是:

图3-3系统模块和总体框架

①人机界面模块

该模块主要完成人机之间的对话和交流,物理上由一个显示器和一个键盘来表示,其核心功能是加工程序的编辑。由于整个菜单驱动的形式,该模块具有良好的友好性。

②伺服执行模块

该模块主要由脉冲分配器、伺服驱动器和步进电机等组成。它是一个执行单元,根据上位机的指令完成工作台与刀具之间的相对运动,实现车削。其速度特性和矩频特性直接影响加工精度和速度。

③电动刀架控制模块

采用带2个继电器的4向电动刀架,用软件完成刀架的换刀动作,即刀架电机正转→换刀→反转锁紧,是经济型数控系统不可缺少的一部分,可以提高加工效率,大大减少加工过程中手动换刀带来的误差。

④串行通信模块

该模块的功能是完成与上位机的串行通信,采用三线制,使系统具备基本的组网能力。

⑤主控制模块

主要包括单片机(含监控程序)、加工程序存储单元和与其他模块的接口电路,完成程序编辑、加工程序处理、软件插补、电动刀架控制和行程限位保护。

系统软件框架

图3-4显示了系统软件框图。系统通电后,执行初始化程序和键盘扫描程序。如果按下“计数显示”、“计数清零”、“点动”等功能键,在执行各自的工作子程序后会返回初始化程序,并显示相应的提示。顺序控制程序也设计成子程序模块,主要功能是读入各行程开关和压力继电器的信号状态组合,经过分析判断后输出一系列控制信号,完成工件的自动加工。如果按下“点动”键,将显示点动提示,并执行顺序控制程序,即返回初始化程序。如果按下“联动”功能键,会先设置联动工作标志(此时除“返回”键外的所有键都被软件屏蔽),然后开始中断,等待刀具检测信号,收到中断请求信号后,执行中断服务程序。在中断服务控制中,顺序控制子程序、键盘扫描和显示子程序被相继执行,数据被记录和显示。如果顺序控制完成一次或按下“返回”键,将返回主程序。返回主程序后,仍然判断“返回”键是否被按下,如果是,则返回初始化程序。否则,再次等待中断。

采用模块化设计:

(1)点动、联动、换刀。

该模块主要实现工作台在X轴和Z轴上正反方向的点动和联动操作,手动控制换刀,用于方便对刀和工作原点的设定。

②自动。

该模块主要实现加工程序的处理(包括程序语法检查、程序编译、数据处理等。),插补操作步进电机的控制和自动换刀控制。

③参数设置

该模块主要实现刀具补偿参数、间隙补偿参数等自动加工参数的设置。

④编辑模块

该模块主要实现零件加工程序的键盘编辑和输入。

⑤通信模块

该模块主要实现与上位机或其他智能设备的串行通信,可用于加工程序的传输。

图3-4系统软件原理框图

第四章硬件系统设计

4.1主模块设计

4.1.1主模块中的关键器件及其选择

(1)单片机

该系统采用PHILIPS公司的8位单片机AT89S51作为控制核心。AT89S51是一款低功耗高性能CMOS 8位单片机。该芯片包含4K字节ISP(在系统可编程),可重复擦除1000次。该设备由ATMEL的高密度和非易失性存储技术制造。它兼容标准的MCS-51指令系统和80C51引脚结构。该芯片集成了一个通用的8位中央处理器和ISP Flash存储单元,完全静态工作。RAM可扩展至64k字节,具有5个中断优先级、2级嵌入式中断、32个外部双向输入/输出(I/O)端口和2个16位可编程定时器计数器。外部2764EPROM用作监控程序和处理程序的程序存储器,用于存储公共部分。然后选择一块6264RAM来存储需要随机修改的零件程序和工作参数。扩展芯片采用解码方式寻址,使用74LS138解码器完成该功能。作为系统输入输出端口的扩展,8279分别连接键盘的输入输出显示器,8255连接步进电机的环形分配器,分别并行控制X轴和Z轴的步进电机。此外,还要考虑机床与单片机、功放电路等之间的光电隔离。

图4-1单片机系统原理框图

(2)数据存储器的选择

该系统采用单片机作为控制核心,最高速度为33MHz。我们用的是22.1184MHz。高速对外部电路要求高,尤其是外部数据和程序存储器扩展电路。当CPU读取数据或程序指令时,必须确保外部数据或程序指令已准备就绪。因此,有必要检查芯片的时序。为了使系统可靠地工作,我们还检查了内存。

首先介绍一下内存。单片机存储器分为内部存储器和外部存储器。内部存储器分为内部数据存储器和程序存储器。同样,外部存储器也分为程序和数据存储器。该系统以AT89S51为核心单元,具有128B RAM和4KB Flash内部程序存储器。对于数据存储器,内部和外部独立寻址,使用不同的指令访问不同的数据存储器,即MOV访问片内,MOVC访问片外,外部可以扩展到64K。因为外部数据存储器和I/O是统一寻址的,I/O要留有一定的空间,而这个系统需要一定的扩展空间,所以这个系统扩展用的芯片是6264。Y62256是混代公司的一款高速低功耗32K机型。

CMOS的静态RAM采用现代公司的高速CMOS技术。HY62265具有数据保持模式,确保2V数据在最低电源电压下有效。采用CMOS工艺,电源电压在2。OV和5.5V,数据保持电流影响不大。HY62256适用于低压和电池供电的工作环境。M28256用于扩展程序存储器,由ST微电子公司拥有知识产权的多极硅技术制成。在3V或}V电源条件下,具有快速、低功耗的工作模式。电路已经被设计成提供与微控制器灵活接口特征。软件或硬件可用于数据周期测试或位功能锁定。标准JEDEG算法可用于软件数据保护。电路扩展如图4-2所示。

图4-2内存扩展

(3)总线驱动器、数据、数据锁存和解码电路。

因为单片机* * *的数据线和低位地址线使用地址锁存器进行低位数据锁存。使用74LS373作为地址锁存器,当应用系统规模过大,扩展连接的芯片过多,超过总线的驱动能力时,系统将无法可靠工作。这时候就要增加总线驱动,减少读取数据的持续时间。整个系统可扩展的外部数据总量为64K。因为单片机的外部数据存储器和I/O是统一寻址的,所以我们用低位的32K作为外部扩展数据存储器,高位的解码电路用两块74LS138,32K作为I/O或者留作将来扩展。由于外设是可编程器件,使用138进行解码时需要产生两种解码地址:一种是地址连续性,一种是段地址连续性。其中L1和L5可以在系统再次扩容时使用。解码后的地址输出如图4-3所示。Y0-Y7可作为单地址片选信号,Y8-Y15可作为可编程片选信号,如8254可编程计数器。解码电路如图4-3所示。

图4-3解码电路

4.1.2主模块电气原理图设计

本系统选用AT89S51CPU作为数控系统的中央处理器。主程序框图如图4-4所示。外部2764EPROM用作监控程序和处理程序的程序存储器,用于存储公共部分。然后选择一块6264RAM来存储需要随机修改的零件程序和工作参数。扩展芯片采用解码方式寻址,使用74LS138解码器完成该功能。作为系统输入输出端口的扩展,8279分别连接键盘的输入输出显示器,8255连接步进电机的环形分配器,分别并行控制X轴和Z轴的步进电机。此外,还要考虑机床与单片机之间的光电隔离、功率放大电路等。

8255A可编程并行I/O口扩展芯片可直接与MCS系列单片机系统的总线相连。它有三个8位并行I/O端口和三种工作模式。通过编程,它可以通过无条件传输、查询传输或中断传输,轻松完成CPU与外围设备的信息交换。

CPU通过读回8279的状态字来控制8279,以查看PIFORAM中是否有字符。如果有,将根据字符数读取所有字符并进行相应处理。如果没有,直接返回。CPU通过查询来监控8279。分配给8279的数据端口地址是8000H,状态端口地址是8001H。CPU每隔10ms中断查询,所有显示均通过查询段码表实现,简化了程序设计过程,提高了程序质量。

图4-4主程序框图

4.2输入/输出模块的设计

4.2.1 I/O模块电气原理图设计

8279作为系统输入输出端口的扩展,分别与键盘的输入输出显示器相连。8279是可编程接口芯片,通过编程可以实现相应的功能。编程过程实际上就是CPU向8279发送控制指令的过程。在软件设计中,显示方式采用8字显示,左输入方式,编码扫描键盘,双按键锁定。I/O模块的电气原理图如图4-5所示。

图4-5 I/O模块的电气原理图

图4-6 8279工作程序框图

步进电机控制界面

X、Z轴采用三相6拍步进电机,并口8255向控制口写入控制字,实现对步进电机的控制。8255接在步进电机的环形分配器上,通过三片4N25光电隔离,分别形成X、Z所需的三相控制信号,送到步进电机的驱动电源,并行控制X、Z轴的步进电机。芯片YB013实现硬件环分任务;达林顿光隔离管4N25可以将电脑的弱电部分与步进电机的高压部分隔离,不仅起到功率放大的作用,还可以作为无触点开关保护电脑。单片机控制步进电机的接线如图4-7所示。

图4-7单片机控制的步进电机

工具控制界面

(1)电动刀架及其工作原理

电动刀架的机械部分类似于蜗轮蜗杆机构,实现刀具的升降、旋转(交换刀具位置)和下降锁紧。本文重点介绍实现上述动作所需的硬件条件和电路原理。

在图4-8中,继电器KA1和KA2实现电动刀架的动作切换控制,主要完成刀架电机的正反转切换。刀架旋转过程中,每个工位上的霍尔元件将依次切换到有效状态。根据T1、T2、T3、T4的变化,系统可以推断出当前的刀具号,判断是否是当前选择的刀具。一旦符合要求,电机就会反方向旋转锁住刀具。系统控制的关键是切换电动刀架各时序的反向间隔。反向锁定的时间取决于电动刀架制造商的推荐指数。如果太长,电机会发热甚至烧坏。为了保证电动刀架的安全运行,在电动刀架的交流380V进线处安装了快速熔断器和热继电器。

图4-8电动刀架的电气原理图

(2)电动刀架与单片机的接口

电动刀架与系统的硬件接口主要是控制电机的正反转信号J1和J2以及刀号反馈信号TI、T2、T3和T4。上述所有信号经光电隔离后与单片机系统接口。

电动刀架的软件控制流程如图4-9所示,采用查询方式。

图4-9电动刀架控制流程

程序是:

# include & ltat 89s 51 . h & gt;

# include & ltabsacc.h & gt

#定义N1 XBYTE[ ]

typedef无符号字符uchar

void ADC 0809(uchar idata * x);

void delay();

void main()

{

静态uchar idata ad[4];

ADC 0809(ad);

}

void adc0809(uchar idata *x)

{

uchar i,* ad _ adr

uchar电机= 1;

ad _ adr = & ampn 1;

for(I = 0;我& lt4;i++)

{

If(*ad_adr=i)

{

delay 1();

ka 1 = 1;

delay 2();

return();

}

else KA1=0

}

}

无效延迟1(电机==0)

{

uchar j;

for(j = 0;j & lt20000;j++)

{;}

}

无效延迟2(无效)

{

uchar j;

for(j = 0;j & lt150000;j++)

{;}

}

4.2.4紧急停止、暂停和行程限制的接口电路

限位开关通常是打开的;所以X 10,X 1,Z 10,Z 1的正常输入都是人为的低。因此,如果按下行程开关并向INT0发送中断信号,系统将被复位,步进电机的脉冲将消失,从而无法向前移动并保护机床。在该系统中,三输入与非门74HC10的输出作为* * *的中断信号接入单片机的INT0,用于急停、暂停、限位报警功能的实时处理。电路如图4-8所示:

4.3串行通信电路

该系统由上位机系统和下位机系统两部分组成。由于上位机主要完成管理和显示工作,下位机完成控制功能,所以上位机和下位机之间数据传输的实时性要求不高,所以我们采用串行通信。使用RS232标准和MAX232转换电频率。美国电子工业协会推荐的串口RS232标准。本系统采用9针连接器,其定义如表4-1所示。该系统使用三线TXD,RXD和GND,使电路简单。

表4-1连接器定义表

串行通信电路主要由MAX 232电平转换电路组成。MAX232是电平转换芯片MAXIM的产品。您可以将TTL转换为RS232或RS232转换为TTL。满足单片机与普通计算机之间通信电平转换的要求。电路如图4-10所示。

图4-10通信接口电路

4.4人机界面模块的设计

4.4.1单片机应用系统中常见的显示方式及其比较

在单片机应用系统中,常用的显示介质有LED、LCD和CRT,真空荧光屏(VFD)在家用电器中应用广泛。它们各自的特点简述如下:

(1)数码管

数码管是一种有源发光器件。所谓主动发光,就是环境越暗,越清晰。分为7段数码管和“米”数码管两种。前者用于显示ARC代码,显示的信息量较小。后者不仅可以显示ARC字符,还可以显示一些自定义的复杂字符。数码管按驱动电流可分为普通亮度、高亮、超高亮等。数码管由于价格便宜,扩展方便,是单片机系统中应用最广泛、最广泛的显示器件。我国的数控系统种类繁多,尤其是早期的数控系统,广泛使用数码管作为显示接口。

(2)液晶显示器

液晶显示器是一种无源发光器件。所谓被动照明,就是环境越亮越清晰,黑暗环境下必须加背光才能显示清楚。分为场液晶、字符液晶和图形点阵液晶。字段类型只能显示ASCII字符,字符类型可以显示ASCII字符,比字段类型好,可以显示少量自定义字符。图形点阵液晶显示器是单片机系统中流行的一种新型显示器件,可以显示所有的字符和图形。因其具有显示汉字的特点,被广泛应用于家用智能设备中,国产数控系统也开始得到广泛应用。

(3)CRT

CRT显示器分为单色和彩色两种,广泛应用于数控系统,尤其是高端数控系统。其特点是成本低,显示容量大;可以显示组合字符、图形和汉字;使用视频专用接口电路MC6847与单片机接口比较复杂,在一般应用中很少见。

(4)真空荧光屏

真空荧光屏是一种新型显示器件。它由三个基本电极组成——阴极(灯丝)、阳极和栅极,封装在一个真空玻璃容器中。阴极是涂有金属氧化物的钨丝;网格是极细的金属网;阳极是一段或点状的导电电极,其上的荧光物质可以显示相应的字符或符号。在栅极和阳极之间施加正电压,阴极发射的电子被这个正电压加速,阳极表面的荧光物质产生辐射,发出波长约为505nm的绿色荧光。通过控制栅极和阳极之间的电压,可以显示各种字符。VFD因其具有以下特点而广泛应用于家用电器、商场POS机和新型仪器中。(1)亮度高,无视角问题;(2)工作温度范围宽,使用寿命长;②外围电路简单,只需15V电源即可工作,提供准8位数据总线接口;④低功耗。然而,这种显示器目前在数控系统中很少使用。

4.4.2点阵液晶显示模块

(1)字符LCD模块

该数控系统采用字符点阵液晶显示模块DM12232。该模块具有以下特点:

可以显示122列和32行。

●电源VDD3.3V~5V(内置升压电路,无需负压)

●与微处理器的8位或4位并行/3位串行连接。

●多种软件功能:用户自定义字符、屏幕移动、光标显示、睡眠模式等功能。

●配置LED背光。