微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于专用控制芯片的步进电机运动控制系统设计

基于专用控制芯片的步进电机运动控制系统设计

时间:07-05 来源:互联网 点击:

备注:
RRS:寄存器/RAM选择位(RRS=0:寄存器/RRS=1:RAM)
RW:读写选择位(RW=1:读/RW=0:写)

备注:
INT:中断控制状态输出信号
CDGW(cover dategram waiting):(无握手信号时为0)
RS1、RS2和RS3:限位开关的设置(未激活时为0)
xEQt1、xEQt2和xEQt3:指示相应的步进电机是否到达目标位置
2.2 专用控制芯片间的硬件连接
专用控制芯片TMC262和TMC429的连接简图如图4所示。

上图为TMC429-L1(QFN32封装)与TMC262的连接简图,TMC429与TMC262的通信方式有SPI模式和step/dir模式,本系统选用后者。CSN_0用于片选TMC429的SPI微控制接口,CSN_1、CSN_2和CSN_3分别用于片选3个TMC262以完成对TMC262的配置。
2.3 CAN总线通讯接口电路设计
系统CAN总线的硬件电路如图5所示。
CAN接口电路主要由3部分组成:单片机AT90CAN128、高速光耦合器6N137和高速CAN总线收发器。其中AT90CAN128主要负责内部CAN控制器的初始化、实现数据的接收和发送等通信任务;6N137起到控制器与工业现场相隔离的目的,可以提高系统的抗干扰能力;TJA1050是控制器区域网络(CAN)协议控制器和物理总线之间的接口,可以为CAN控制器提供差动接收性能。
2.4 RS485总线通讯接口电路设计
系统RS485总线的硬件电路如图6所示。

由于RS-485与TTL电平不兼容,因此两者之间需要有电平转换。目前完成此功能的芯片比较多,本系统中采用MAXIM公司生产的MAX485。该芯片内有接收器与发送驱动器,控制简单,适用于半双工通讯。为了提高通讯接口的抗干扰能力,在MAX485与单片机输出端之间接入光电耦合器;同时在A端和B端之间增加了匹配电阻,以吸收总线上的反射信号,保证正常传输信号时无毛刺。

3 软件部分设计
在硬件电路设计制作的基础上设计了控制系统的软件。控制系统的所有源代码均在AVR Studio 4和ICCAVR集成开发环境中编译和调试。为了便于系统扩展,系统软件设计采用模块化设计。
步进电机控制系统的主程序设计流程图如图7所示。

在软件设计中,由于专用控制芯片分担了不少单片机的软件设计工作,因此通信方面的软件编程是设计的重点。设计的控制系统拟作为下位机,下位机与上位机的通信选择了RS485和CAN接口。RS485接口标准只对接口的电气特性做出规定,使其具有通用性,但不涉及接插件、电缆等,在此基础上用户可以建立自己的高层通信协议。而这个高层通信协议的建立既可以采用已有的应用成熟的通信协议,比如Modbus协议等,也可以由用户自定义RS485的通信协议。本系统采用了Modbus通信协议。CAN总线节点的软件设计主要包括3大部分:CAN节点初始化、报文发送和报文接收。
CAN节点的初始化程序的主要任务就是对总线通信控制器CAN控制器进行合适的配置,以满足系统运行的要求。CAN控制器的初始化包括了工作方式的设置、ID标志符寄存器的设置、接受屏蔽寄存器的设置、波特率参数的设置、消息邮箱Mob控制寄存器的设置和中断允许寄存器的设置等。由于本文设计的步进电机控制系统采用CAN2.0B规范,需要对CAN接收器进行相应的初始化。在完成初始化配置以后,回到工作状态进行正常的通讯任务。
限于篇幅,这里仅给出CAN控制器初始化的部分程序:


对于报文的发送,当CAN总线上的一个节点发送数据时,它以报文形式广播给网络中所有节点。当发送时,CAN控制芯片将数据进行相应的组织和传送,此时网络上其他节点处于接收状态。报文的接收主要有两种方式:中断方式和查询方式。在本设计中,采用的是中断方式,即每传来一个报文,就触发CANSTMOB中的相应中断,然后将接收到的数据从CAN数据寄存器中转移到指定的存储区域内并保存起来。

4 结束语
采用步进电机专用的运动控制芯片TMC429和驱动芯片TMC262设计了控制驱动一体化的步进电机控制系统。经过自动化生产线的实验测试表明,所设计的步进电机控制驱动一体化系统具有高细分、控制精度高和稳定性好等特点。设计的步进电机控制系统可降低软件开发的难度,减少硬件实现的成本,且控制方便。该控制系统可广泛应用于汽车行业和工业运动控制领域。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top