基于TMC428的步进电机控制系统设计_第1页
免费预览已结束,剩余4页可下载查看

下载本文档

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

文档简介

1、基于tmc428的步进电机控制系统设计是一种重要的执行装置,广泛用于工业控制和各种办公设备中,步进电机的稳定牢靠运行挺直关系到工业控制的精度和设备的质量,特殊是在高精度数控系统中更是要求步进电机能够精确运行。如何实现对步进电机的精确牢靠控制成为工业控制等系统中的关键技术。多年来无数专家学者研制出无数性能较好的步进电机控制系统,然而,早期的步进电机控制系统体积大,用法的元器件多,这给系统的牢靠运行带来了较大的隐患。随着技术的进展,无数功能单元都走向模块化和数字化,并且具有体积小,分量轻,工作牢靠性高,成本低等优点,而且能够实现多轴控制,这给步进电机控制系统的设计带来了很大的便利。由 trinam

2、ic公司生产的tmc428就是这样一款三轴步进电机运动控制芯片。这里用法tmc428控制芯片设计一种三轴步进电机控制系统,本系统可用于经济型三轴数控系统中。一、tmc428芯片及其功能tmc428是一种小尺寸、高性价比的二相步进电机控制器,包括位置控制、速度控制及微步控制等步进电机常用的控制功能,可同时对三个二相步进电机举行控制。带有2个自立的spi接口,可分离与微处理器和带有spi接口的步进电机驱动器相衔接,能够与3个tmc236相衔接构成菊花链结构。1、 结构tmc428采纳16引脚封装,是由各个单元的寄存器和片内ram构成的。其内部包括二个外部串行接口、波形发生器和脉冲发生器、微步单元、

3、多口ram 控制器和中断控制器。一所示。spi串行通信用法32bit数据长度的容易协议,与电机驱动器相衔接时,其数据传输速率高达1mbit/s。时钟输入范围宽且时钟频率最高可达16mhz,采纳3.3v或5v的/ttl兼容电平供电。图一2、 功能tmc428有4种不同的工作模式,对每个步进电机的控制单独编程,其中位置控制有ramp模式和soft模式,速度控制有velocity模式和 hold模式。tmc428提供了一组功能不同的寄存器单元和片内ram,普通从微处理器获得控制命令,微处理器则通过发送和接收固定长度的数据包对 tmc428寄存器和ram举行读写操作。tmc428的寄存器和片内ram的

4、功能有所不同。寄存器用于存储电机总体配置参数和运动参数,而片内ram用于存储 驱动串行接口的配置和微步表。电机总体参数是指对驱动器菊花链中tmc236的配置。运动参数包括各电机的当前位置、目标位置、最大速度、最大加速度、比例、波形发生器和脉冲发生器参数以及微步细分辨别率等。片内ram包括64个地址的数据空间,每个地址可存储24位宽的数据,前32位地址数据是对驱动器菊花链串行通信数据包的配置,后32位地址的数据为微步细分表。初始化以后,tmc428即可自动发送数据包到菊花链的每个tmc236,也就是说,驱动串行接口经过初始化后便可以自动工作,而不需要微处理器的参加。只要把位置、速度写进指定的寄存

5、器就可以控制电机。 tmc428的多口ram控制器可管理数据的存取时序。这样,微处理器就可以在任何时光读写寄存器和片内ram的数据。通过波形发生器可以处理存储在寄存器里的运动参数并计算电机运动速度曲线。脉冲发生器则按照波形发生器计算得到的速度来产生步进脉冲。步进脉冲产生时tmc428的驱动串行接口将自动发送数据包给步进电机驱动器菊花链以驱动步进电机。当采纳微步控制时,微步单元即开头处理按照脉冲发生器产生的步进脉冲,同时按照挑选的微步辨别率来产生全步、半步和微步脉冲,并通过驱动串口送给驱动器菊花链。驱动串行接口是tmc428与驱动器菊花链之间的通信接口。从 tmc428到驱动器之间的串行数据包的

6、长度是可配置的,以适应由不同类型和厂家的构成的spi环形结构,最大数据长度为64bit。初始化后,tmc428与步进电机驱动器之间的通信是自动完成的。不同类型的带有spi接口的驱动器都可以混合构成菊花链结构与tmc428举行衔接。二、系统分析本系统采纳mcs51作为微处理器,用于系统的控制和命令发布,这是囫囵控制系统的核心,系统的各种规律和数量计算都有单片机完成。因为系统采纳spi串行通信方式,而本身不带有spi接口,所以在单片机与tmc428必需自立spi专用接口模块举行数据转换,这里采纳mcp2510 spi接口芯片。上电以后,单片机首先对tmc428举行初始化,设置初始的位置、速度以及加

7、速度等运动参数,并且配置菊花链串行通信数据和微步表。因为运动参数被配置在tmc428的功能寄存器中,在工作过程中可以按照实际要求在线更改以适应实际运动过程,而菊花链串行通信数据和微步表是存放在片内ram中,上电以后这些参数普通不能更改,所以在初始化时要对这些参数举行精确计算。采纳3个tmc236构成一个菊花链,每个 tmc236控制一个步进电机,当时始化完成后,tmc428可以脱离单片机自动地把控制数据发送给tmc236实现对电机的控制,但因为tmc236所发出的控制信号比较弱,不足以驱动电机,所以在tmc236发出的控制信号必需进过功率放大才干驱动电机。系统结构二所示。图二三、硬件设计本系统

8、单片机选用at89s52,系统时钟频率采纳16mhz,因为tmc428的最高工作频率能够达到16mhz,但tmc236的操作频率不能超过100khz,所以为了便利设计本系统采纳分频电路对16mhz的时钟频率分频为20khz,tmc428和tmc236都采纳同一20khz时钟频率。为减小电源的复杂性,系统由单一+5v直流电源供电。因为本系统中tmc428不用法内部中断,所以3个参考开关输入必需接地,同时没有用法 3.3v电源,所以v33引脚必需通过一个470nf的接地,+5v输入电源要通过一个100nf的电容滤波,以保证tmc428的牢靠运行。驱动 spi接口的数据输入线sdi_s引脚要通过一个

9、阻值为10k的下拉。tmc428的nscs_s引脚作为3个tmc236使能信号与csn引脚相连。控制数据通过sdo_s引脚传送至tmc236的sdi引脚中,因为采纳的是菊花链形式,所以3个tmc236通过各自的sdosdi两个引脚相串联。在tmc236电路设计中,20khz的外部时钟从osc引脚输入。因为tmc236内部集成了hvc构成的双全桥驱动电路,它采纳恒流斩波驱动方式来驱动双极性二相步进电机,其中电机的供给电源由vs引脚输入,但必需在vs引脚上衔接220pf和100uf的电容举行滤波,在本系统中采纳+12v的直流电源作为电机两相绕组的励磁电源。tmc236的oa1和oa2衔接步进电机的

10、a相励磁绕组,而ob1和ob2衔接步进电机的b相励磁绕组。另外,为了限制电机的最大电流,必需对tmc236双全桥驱动电路设置限流电阻rs,rs电阻的设置可按照如下计算公式计算:其中imax为电机所允许的最大电流,在这里imax=1030ma,所以计算电阻rs=0.33。本系统采纳脉冲作为功率放大装置挺直对步进电机供电。系统的主电路三所示。图三四、软件设计控制系统的软件主要完成对tmc428的初始化以及控制参数计算和发送的工作。在初始化过程中首先要对tmc428的工作模式举行设置,一个是位置控制模式和速度控制模式,另外就是tmc428所要控制的步进电机的个数。这些参数的设置是通过微处理器向tmc

11、428的相关寄存器写数据来完成。其中位置和速度控制模式寄存器的地址为1010,在本系统中位置控制采纳ramp模式,速度控制采纳velocity模式。因为本系统是三轴控制设计,所以tmc428要同时对三个步进电机举行控制,因此在步进电机全局配置参数寄存器设置中要把寄存器的地两位设置为10,其他位采纳默认值。按照 tmc428的功能要求,每个电机都有自己的配置寄存器,对于电机的初始位置和初始速度都要在各自寄存器中单独设置。在初始化过程中对电机的目标速度、目标位置、实际速度和位置以及加速度和速度的最大值、最小值举行设置00地址表示电机1,01地址表示电机2,10地址表示电机三,其寄存器地址范围为 00001110。当时始化完成后按照实际需要微处理器在随意时刻都可以转变寄存器和片内ram中的数据以适应实际控制。本系统的软件

温馨提示

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

评论

0/150

提交评论