机电一体化课程设计基于单片机控制的数控十字工作台设计_第1页
机电一体化课程设计基于单片机控制的数控十字工作台设计_第2页
机电一体化课程设计基于单片机控制的数控十字工作台设计_第3页
机电一体化课程设计基于单片机控制的数控十字工作台设计_第4页
机电一体化课程设计基于单片机控制的数控十字工作台设计_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、专业课程设计计算说明书yx设计题目 基于单片机控制的数控十字工作台设计学校 xxxxx学习中心班级 xxxx学号 xxxxxxxxxx设计者 xxx指导老师 xxx2007年12月10日_目 录前言2机械传动部分电动机选择4电动机的选择4滚珠丝杠的选择7轴承的选择14导轨的选择23步进电机控制和直线插补部分步进电机驱动电路和单片机接口电路24软件脉冲分配24减速器附件的选择25润滑与密封25设计小结26参考资料目录27前 言 专业课程设计的目的 本次专业课程设计是机电类专业学生的一次较全面的机电一体化设计训练,是数控技术和机电一体化设计基础课程重要的综合性与实践性教学环节。其基本目的是:(1)

2、 通过本课程的设计,综合运用机械设计课程和数控技术及其他有关先修课程的理论,结合生产实际知识,培养分析和解决一般工程实际问题的能力,并使所学知识得到进一步巩固、深化和扩展。(2) 学习机电一体化设计的一般方法,掌握通用机械零件、机械传动装置和简单工作台运动控制的设计原理和控制过程。(3) 进行机电一体化设计基本技能的训练,如计算、绘图、控制编程、熟悉和运用设计资料(手册、图册、标准和规范等)以及使用经验数据,进行经验估算和数据处理等。机械设计课程的内容及要求 设计一个基于单片机控制系统的数控工作台课程设计的内容包括:确定传动装置的总体设计方案,选择电动机(步进电机/伺服电机);连轴器的选择,滚

3、珠丝杠的结构设计,导轨、螺母副及工作台的设计绘制装配工作图,电机驱动电路设计,单片机控制电路及直线插补程序,编写设计计算说明书。在设计中完成了以下工作: 数控工作台结构装配图1张(手工或三维工作图); 单片机直线插补程序 设计计算说明书1份; 课程设计的步骤机电一体化课程设计一般可按照以下所述的几个阶段进行:1设计准备 分析设计计划任务书,明确工作条件、设计要求、内容和步骤。 了解设计对象,阅读有关资料、图纸、观察事物或模型以进行工作台装拆试验等。 熟悉课程有关内容,熟悉机电一体化产品的设计方法和步骤。 准备好设计需要的图书、资料和用具,并拟定设计计划等。 一、 电动机选择步进电动机的特点:1

4、、工作状态不易受各种干扰因素(如电源电压的波动、电源的大小与波形的变化、温度等)的影响,只要在它们的大小未引起步进电机产生“丢步”现象之前,就不影响其正常工作;2、步距角有误差,转子转过一定步数以后也不会出现累计误差,但转子转过一转以后,其累计误差变为零,因此不会长期积累;3、控制性能好,在启动,停止,反转时不易丢步,因此步进电机被广泛引用于开环控制的机电一体化系统,使系统简化并可靠地获得较高的位置精度;4、转角与控制脉冲数成比例,可构成直接数字控制5、有定位转矩6、可构成廉价的开环控制系统综上所述,根据本课程设计中数控工作台的控制要求及成本预算,宜选用混合型反应式步进电机。由于丝杠基本导程l

5、选择范围在3-8mm,取根据脉冲当量与工作台系统精度的关系有:,因此 取,根据参数选择电机型号为75by003相数步距角/(°)电压/v相电流/a最大静转矩/n·m空载起动频率/(步/s)电感/(mh)电阻/分配方式外形尺寸(轴径)/mm重量/kg转子转动惯量/30.93040.882125035.50.823相6拍1.581.563二、滚珠丝杠的选择滚珠丝杆的特点:1、传动效率高,摩擦损失小,一般滚珠丝杆副的传动效率达到85%-95%;2、运动平稳,系统刚度好,滚动摩擦系数接近常数,启动时无冲击,低速时无爬行,能够预紧,预紧后可消除间隙,产生过盈,提高接触刚度和传动精度;

6、3、使用寿命长,滚珠丝杠的摩擦表面硬度高,精度高,具有较长的工作寿命和精度保持性;4、定位精度和重复定位精度高,由于滚珠丝杠副摩擦小,温升少,无爬行,无间隙,因此可达到较高的定位精度和重复定位精度;5、运动具有可逆性,可以将回转运动变为直线运动,也可以将直线运动转换为回转运动,即丝杠和螺母都可以作为主动件;6、不能自锁,特别是垂直安装的丝杠必须在系统中附加自锁或制动装置;7、制造复杂,经济性差,成本高,由于结构复杂,滚珠丝杠和螺母等零件加工精度表面粗糙度要求高,制造成本高。传动形式螺杆转动,螺母移动。如下图所示:滚道法向型面的形状和结构滚珠的循环方式和滚珠丝杠副轴向间隙的调整与预紧方法选择螺旋

7、槽式外循环结构,采用双螺母螺纹预紧调整方式。如下图支承方式三、轴承的选择双向止推球轴承(一个)深沟球轴承(2个)主要尺寸参数公称直径;20mm基本导程:5mm两轴行程:40*30根据参数,确定型号为 或 联轴器的选择弹性套柱销联轴器型号周孔直径轴孔长度,tl19四、导轨的选择滚动导轨副的特点:1、摩擦系数小(0.003-0.005),运动灵活;2、动静摩擦系数基本相同,因而起动阻力小,不易产生爬行;3、可以预紧,刚度高;4、寿命长;5、精度高;6、润滑方便,可以采用脂润滑,一次装填,长期使用;7、由专业厂生产,可以外购选用,因此滚动导轨副广泛的被应用于精密机床,数控机床,测量机和测量仪器等。滚

8、动导轨副的缺点是:导轨面与滚动体是点接触或线接触,所以抗振性差,接触应力大,对导轨的表面硬度、表面形状精度和滚动体的尺寸精度要求高,若滚动体的直径不一致,导轨表面有高低,会使运动部件倾斜,产生振动,影响运动精度;结构复杂,制造困难,成本较高;对赃物比较敏感,必需有比较良好的防护装置。滚动体循环的滚动导轨副材料与技术要求滚动体一般采用滚动轴承钢(如),淬火后硬度可达hrc60-66滚动导轨常用的材料有:1、低碳合金钢(如20、18)渗碳、淬火。渗碳层厚度1-1.5mm,硬度达hrc60-632、合金工具钢(如、)淬火后低温回火(180-200),硬度达hrc60-64。3、氮化钢(如38、38)

9、调质厚氮化,硬度达hrc62-66。数控机床的结构1、主机2、cnc装置3、驱动装置4、辅助装置5、编程机及辅助设备数控程序设计部分一、步进电机控制和直线插补部分1、步进电机驱动电路和单片机接口电路2、软件脉冲分配查表法。查表法的基本思路是:结合电动机的驱动电路,按步进电动机励磁状态转换表求出脉冲分配器输出状态字组成的状态表,并将其存入程序存储器(eeprom)中,然后根据步进电动机运转方向按表地址正向或反向地取初单元中的状态字进行输出,即可控制步进电动机正向或反向地旋转起来。由于单片机i/o口p1.0、p1.1、p1.2分别与步进电动机(x轴)的a、b、c三相对应,设该表格首地址未2000h

10、,则可以写出脉冲分配入下表所示。序号cba存储单元方向p1.0p1.1p1.2地址内容10012000h01h反转正转20112001h03h30102002h02h41102003h06h51002004h04h61012005h05h入口保护现场取出上次励磁状态对应地址指针正转?末址?首址?指针+1指针-1指针置成首址指针置成末首址取出该指针对应的环分状态延时输出环分状态保存目前指针恢复现场返回y(正转)n(反转)nyyn3、速度控制在基于步进电机的开环进给系统中,对进给速度的控制就是对步进电机速度的控制。由步进电机原理分析可知,通过控制步进电机相邻两相励磁状态之间的时间间隔,即可实现步进

11、电动机速度的控制。对于软件环分来说,只要控制相邻两次环形分配器输出状态之间的时间间隔,也就是控制如下循环流程中延时时间的长短:a延时ab延时b延时bc延时c延时ca延时 (01h) (03h) (02h) (06h) (04h) (05h) 正转 反转 为充分利用单片机的时间资源,实现延时的方法采用定时器中断延时。二、逐点比较法的直线插补原理插补计算就是对数控系统输入基本数据,运用一定的算法计算,并根据计算结果向相应的坐标发出进给指令。步进电机工作台应用逐点比较法直线插补是每走一步控制系统都要将加工点与给定的图形轨迹相比较,以决定下一步进给的方向,使之逼近加工轨迹。逐点比较法既可实现直线插补,

12、也可以实现圆弧插补。其特点是运算简单直观,插补过程的最大误差不超过一个脉冲当量,输出脉冲均匀,而且输出脉冲速度变化小,调节方便。因此在两坐标数控工作台中应用较为普遍。1、逐点比较直线插补的数学原理如图1-1所示,设计直线oa为第一象限直线,起点为坐标原点o(0,0),终点坐标为e(,),n(,)为加工点。 y e(,) f>0 n(,) f=0 f<0 0 图1-1 x若n点正好处在直线oe上,由相似三角关系则有:/= / 即 -=0若n点在直线oe上方,则有: />/即 ->0 若n点在直线oe下方,则有: /</即 -<0 令=- 则有(1)如=0,则有

13、n点在直线oe上;>0, 则有n点在直线oe上方;<0,则有n点在直线oe下方。从图1-1看出对于起点在原点的第一象限直线oe,当n在直线上方时(>0),应向+x方向进给一步,以逼近该直线;当n点在直线下方时(<0),应向+y方向进给一步;当n点在直线oe上时(=0),既要向+x方向进给一步,也向+y方向进给一步。逐点比较直线插补每一步都要完成四个步骤,(1)位置判别;(2)坐标进给;(3)偏差计算;(4)终点判别。2、逐点比较法直线插补的递推算式由偏差函数式子=-可以看出,在计算f时,总是要做乘法和减法运算。这在用硬件或汇编语言软件实现时不太方便,还会增加运算时间。因

14、此,为了简化运算,通常采用递推算式来求取f值,即每进给一步后,新加工点的偏差值总是通过前一点的偏差值递推算出来的。现假设第i次插补后动点坐标未 n(,),偏差函数为=-,若,刀具应向+x方向进给一步,新的动点坐标值为,则新的偏差函数为,所以同理,当时,刀具应向+x方向进给一步,新的动点坐标值为,对应新的偏差函数为,所以有以上推导可以看出,采用递推公式计算偏差函数f,将不涉及动点坐标与乘法运算,仅与直线的终点坐标以及前一点的偏差函数值有关,并且算法简单,易于实现。要说明的是,通过坐标平移的方式可以使每个直线轮廓段起点总处于坐标系的原点上。因此以下只讨论在坐标系第一象限的直线插补情况。且偏差函数的

15、初始值为综上所述,第1象限的偏差函数与进给方向有以下关系:当时,刀具向+x方向进给,新的偏差函数值为;当时,刀具向+y方向进给,新的偏差函数值为;3、直线插补中的终点判别机制在插补计算过程中,还有一项工作需要同步进行,即终点判别,以确定刀具是否抵达直线终点。如果到了终点就停止插补运算,否则继续作循环插补处理。以下的处理将采用总步长法进行判别。总步长法:在插补计算之前,先设置一个总步长计数器,求出被插补直线轮廓在各个坐标轴方向上应走的总步数,加在一起存入计数器中,即,然后每插补计算一次,无论向哪个坐标轴进给一步,计数器都作减1修正。这样,当总步数减到零时,则表示刀具已经抵达直线轮廓的终点。4、四

16、象限直线插补仿照前面介绍的第i象限直线插补方法,不难发现,当被插补直线处于不同象限时,其计算公式及处理过程完全一样,仅仅时进给方向不同而已。进一步总结出、的进给方向如图所示f<0f<0f<0f<0f0f0f0f0+x-x四个象限直线插补进给方向由此,可设计出四个象限内直线插补计算的通用软件,其流程如图所示开始初始化,结束逐点比较法四象限直线插补软件流程图ynyynnny5、逐点比较法合成进给速度逐点比较法插补的特点是脉冲源每发送一个脉冲过来,就进行一次插补计算,产生一步进给,并且不是发向x轴,就是发向y轴,因此有下式成立;式中脉冲源频率(hz);x轴进给脉冲频率(hz)

17、y轴进给脉冲频率(hz)因此,其合成进给速度为,当或时,即刀具沿着平行于坐标轴的方向切削,这时对应的切削速度最大,相应的速度称为脉冲源速度,即因此,合成进给速度与脉冲源速度之比为合成进给速度为,可见,当编程进给速度确定了脉冲源频率后,实际获得的合成进给速度v随变化而变化。为了得到较平稳的进给速度,在软件编程时可根据不同的直线采用相应的脉冲源频率以确保在插补不同直线时候其合成进给速度相同。三、单片机直线插补的编程方法 由于步进电机的步距角,丝杠导程。算出数控系统的脉冲当量,即坐标上的量化单位1为0.0125mm。由于导轨的最大行程为400mm,对应的脉冲数为,两轴相加最大的脉冲数为,需要使用16

18、位以上二进制数才能表示出来,由于at89s51单片机的字长为8位,可利用两个8位字长的内存单元(ram)来联合存放以上数据。其中偏差函数f、坐标、坐标、总步数在内存中均占用三个字节,并且f、采用补码形式,其余数据采用绝对值或正数,地址分配情况如下表所示 参数类型存储地址偏差函数f坐标值坐标值总步数低字节地址10h13h16h19h中字节地址11h14h17h1ah高字节地址12h15h18h1bh四象限直线插补程序如下:单片机i/o口p1.0、p1.1、p1.2分别与步进电动机(x轴)的a、b、c三相对应;而 p2.0、p2.1、p2.2口分别与步进电动机(y轴)的a、b、c三相对应.r1、r

19、2表地址指针 equ x1 bit 50h ; 终点横坐标为零标志位y1 bit 51h ; 终点纵坐标为零标志位feyes bit 52h ; 插补结束标志位er bit 53h ;插补直线长度为零出错标志位org 0000hajmp mainorg 0003hajmp xianwei ;外中断,限位报警处理org 000bhajmp chabu ;定时插补(给定相应频率)main: mov sp #60h ;设栈口acall to_int ;初始化 ;acall xtext ;判断终点横坐标是否为零;jb x1, xline ;为零则转坐标轴直线插补处理 ;acall ytext ;判断终

20、点纵坐标是否为零;jb y1, yline ;为零则转坐标轴直线插补处理 setb tr0 ;开定时中断,开始进行插补sjmp $ ;等待定时中断chabu : push acc push psw ;保护现场 acall xtext ;判断终点横坐标是否为零jb x1, xline ;为零则转坐标轴直线插补处理 acall ytext ;判断终点纵坐标是否为零jb y1, yline ;为零则转坐标轴直线插补处理ajmp startxline: acall ytext ;判断终点纵坐标是否为零jb y1, err ;为零则转出错处理 mov a, 18h ; 插补直线与y轴重合 jb acc.

21、7 ,feed_1y ; 终点纵坐标为负则向方向进给 acall feed_y1 ;否则向方向进给一步ljmp y_tonext ; 转修正f yline: mov a, 15h ;插补直线与x轴重合 jb acc.7 ,feed_1x ; 终点横坐标为负则向方向进给 acall feed_x1 ;否则向方向进给一步ljmp x_tonext ; 转修正ferr: set er ljmp ernx1 ; 插补结束,置位转其他处理start: mov a , 12hjb acc.7 ,loop ; ,则转loop平行y轴方向进给mov a , 15h jb acc.7 ,feed_1x ;属于第

22、二、三象限直线则向方向进给acall feed_x1 ; 一、四象限直线则向方向进给ljmp x_tonext ; 转修正ffeed_1x : mov a, r1cjne a, #00h ,xzgo1 ;是首址?指针置为末址mov r1,#05hsjmp xnx1 xzgo1: dec r1 ; 非首址,指针-1 xnx1: mov a, r1 mov dptr,#tablemov a,a+dptr ; 取出该指针对应的环分状态 mov p1, ax_tonext: acall subfye ;修正f,ljmp add_m ; 转修正总步数loop : mov a , 18h jb acc.7

23、 ,feed_1y ;属于第三、四象限直线则向方向进给acall feed_y1 ; 一、二象限直线则向方向进给ljmp y_tonext ; 转修正ffeed_1y : mov a, r2cjne a, #00h ,yzgo1 ;是首址?指针置为末址mov r1,#05hsjmp ynx1 yzgo1: dec r2 ; 非首址,指针-1 ynx1: mov a, r2 mov dptr,#tablemov a,a+dptr ; 取出该指针对应的环分状态 mov p3, ay_tonext: acall addfxe ;修正f,ljmp add_m ; 转修正总步数add_m : acall

24、 step_1 ;修正总步数mov a, 19h ;取总步数低字节cjne a,#00h ,next1 ;判别,该字节不为零继续插补mov a , 1ah ; 取总步数中字节cjne a,#00h ,next1 ;判别,该字节不为零继续插补mov a , 1bh ; 取总步数高字节cjne a,#00h ,next1 ;判别,该字节不为零继续插补ernx1: clr tr0 setb feyes ;,插补结束,置位转其他处理next1: pop pswpop acc ;恢复现场nop retifeed_x1: mov a, r1 ; 向方向进给一步子程序cjne a, #05h ,xzgo2

25、;是末址?指针置为首址mov r1,#00hsjmp xnx2 xzgo2: dec r1 ; 非末址,指针+1 xnx2: mov a, r1 mov dptr,#tablemov a,a+dptr ; 取出该指针对应的环分状态 mov p1, aretfeed_y1 : mov a, r2 ; 向方向进给一步子程序cjne a, #00h ,yzgo2 ;是末址?指针置为首址mov r1,#05hsjmp ynx1 yzgo2: dec r2 ; 非末址,指针+1 ynx2: mov a, r2 mov dptr,#tablemov a,a+dptr ; 取出该指针对应的环分状态 mov

26、p3, arettable: db 01h, 03h, 02h, 06h, 04h,05hxtext : mov a, 13h ;判断终点横坐标是否为零,取终点横坐标低字节 cjne a,#00h ,hirr01 ;判别,该字节不为零转 mov a , 14h ; 取总步数中字节cjne a,#00h , hirr01 ;判别,该字节不为零转mov a , 15h ; 取总步数高字节cjne a,#00h , hirr01 ;判别,该字节不为零转 setb x1 sjmp want01hirr01 : clr x1went01 : nopretytext : mov a, 16h ;判断终点综坐标是否为零,取终点横坐标低字节 cjne a,#00h ,hirr02 ;判别,该字节不为零转 mov a , 17h ; 取总步数中字节cjne a,#00h , hirr02 ;判别,该字节不为零转mov a , 18h ; 取总步数高字节cjne a,#00h , hirr02 ;判

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论