直流电机控制器可采用电机控制专用DSP(如TI 公司的TMS320C24X 系列、 AD 公司的ADMCxx 系列),也可采用单片机+直流电机控制专用集成电路的方 案(如摩托罗拉公司的第二代无刷直流电机控制专用集成电路MC33035) 。 前 者 集成度高,电路设计简单,运算速度快,可实现复杂的速度控制算法,但由于DSP 的价格高而不适合于小功率低成本的直流电机控制器。后者虽然运算速度低,但 只要采用适当的速度控制算法,依然可以达到较高的控制精度,适合于小功率低成 本的直流电机控制器。 本节以TMS320F2812 为例,说明无刷直流电机控制器的组成及设计原理。
TMS320F2812 是 TI 公司开发的具有强大的控制和信号处理能力的32位定 点 DSP 芯片。它可提供150 MIPS 的计算性能,有8J带有流水线存储访问的流 水线保护机制以及采用提高处理速度的流水线技术。该器件有片内SRAM 和 RAM 存储器,3个d立的32位CPU 定时器,2路SCI 接口,1路SPI 接口,56个d 立的编程的GPIO 引脚。它整合了事件管理器、Flash 存储器、A/D 转换模块、 CAN 模块、正交编码电路以及多通道缓冲串口等外设。事件管理器是实现数字电 机控制的重要的模块,可对电机实行多功能控制。每个事件管理模块包括定时器、 比较器、捕捉单元、PWM 逻辑电路等。事件管理器 EVA 、EVB各有2个定时器, 定时器有产生PWM 波形,编程内部或外部的输入时钟和为比较器、PWM 电路提 供基准时钟的作用。EVA,EVB 各有3个比较单元,它们主要控制DSP 的 PWM 输出的占空比。PWM 电路可以输出12路PWM 。事件管理器共有3个捕获单 元,它们用来确定电机转子的转速。每个事件管理器都有一个正交编码脉冲电路, 可以用它们算出电机转子的速度和方向信息。
TMS320F2812 采 用C/C++ 编程,它的C 编译器功能齐全,可以利用该编译 器将标准的ANSI C/C++程序转换成DSP 的汇编代码。对于要求高时和高精度 的系统,使用一些函数库实现准确的浮点运算,这样比直接采用ANSIC 编写程序 速度上有明显的提高,可获得更好精度。
系统的硬件框图如图3-3-2所示,可以看出基本上包括一个以TMS320F2812DSP 为核心的DSP 控制板,一块配套的功率驱动板和一台无刷直流电机。实现的 主要功能是控制指令的接收和执行,速度信号的接收和计算处理,电流采样信号接 收和转换,速度闭环和电流闭环控制算法的执行等。
对电机的控制主要使用F2812 片上的两个电机控制专用外设—EVA 和 EVB 。利用通用定时器 T1 配 合PWM 发生器来产生驱动功率器件所需的六路 PWM 信号,通过GPIO 接口将三路电机霍尔传感器信号输入捕获单元,从而获取三个转子的位置,进而控制电机的换相和进行电机转速的计算。两个12位AD 模 块对相电流信号Iphase 和输人的速度调节电压信号Vref进行转换和存储,分别作 为电流环的反馈信号和速度环的参考信号。通过片上的通用输入输出接口 (GPIO), 实现与功率驱动部分的连接,输出起动停止信号、正反转信号、紧急制动 信号等,同时接收输入的保护信号、故障信号等。通过片上的SCI 模块实现与计算 机的通信 , 接收上位机的控制指令 。
控制部分硬件结构如图3-3-3所示。
功率驱动部分的硬件电路,主要由前置驱动芯片和六个功率MOSEFET 管组成,实现对控制部分传送过来的换相信息的处理和 PWM 信号的隔离放大,控制功 率 MOSFET 管的导通和关断,以此来控制电机的工作状态和速度。除此之外,还 有电源电路 , 电流检测电路 , 过流保护和紧急制动电路等辅助电路 , 以及与电机和 控 制 板 的 接 口 电 路 。
前置驱动芯片采用的是IR 公司的MOSFET 驱动芯片 IR2131,具有集成度 高、可靠性好、速度快、过流欠压保护、调试方便等特点。 IR2131 内 部 设 计 有 过 流 、 过压及欠压保护。
功率驱动电路采用24V 供电,驱动电路与电机的连接采用三相全桥方式,电 机工作在三相六状态模式下。以任 一 时刻电机只有两相导通的方式来控制换流元 件 。PWM 调制的方式是软斩波方式,即导通时下桥臂功率管始终保持开状态,上 桥臂功率管的开关由PWM 信号决定。功率开关管采用HITACHI 公司的集成功 率开关器件6AM15,其内部集成3个N 型MOSFET 管和P 型 MOSFET 管,构成 三相全桥功率开关电路。与采用六个分立MOSFET 管相比,有利于提高集成度, 减少电路板面积,增加可靠性。每个MOSFET管自带超快恢复二极管,在MOSFET 管关闭期间起反向续流作用。
功率驱动部分电路框图如图3 - 3 - 4所示。
在此控制方案中,霍尔传感器的信号加到TMS320F2812 的 捕 获 单 元 端 。 将 捕 获 端 设 置 为I/O 口,然后采集捕获单元的电位情况。根据捕获单元的电位情况 可以判断电机处于那个区间。根据两次捕获的时间可以计算出电机运行速度。
![]() |
机器人底盘 Disinfection Robot 消毒机器人 讲解机器人 迎宾机器人 移动机器人底盘 商用机器人 智能垃圾站 智能服务机器人 大屏机器人 雾化消毒机器人 展厅机器人 服务机器人底盘 具身智能教育机器人 智能配送机器人 导览机器人 |