北京永光高特微电机有限公司
Beijing  YongGuang  Micro-Motor  Manufacturing  Co.,Ltd.
 
新闻详情

微飞行器用无刷直流电动机驱动控制系统

来源:北京永光高特微电机有限公司作者:李利网址:http://www.yggtwdj.cn浏览数:97

摘要:作为多旋翼微直升机的驱动器,微型无刷直流电动机具有结构简单、制造方便、无换向火花等特点。文章根据微型飞行器的系统需求,设计并完成了一套可以实现旋翼驱动和上层计算机参数设置和控制的测试系统。该系统包括驱动、控制、通信、计算和反馈五部分,并基于DSP芯片TMS320LF2407。

0引  言

   旋翼微飞行器主要是通过改变旋翼拉力的大小以及旋翼桨盘的方向来控制飞行器的运动方向。大型旋翼飞机的拉力大小由总距控制;旋翼桨盘方向由周期变距控制。以上两种控制方法由于机械结构复杂,所以无法在微型旋翼飞行器中适用。因此本文研究的多旋翼微直升机的驱动器采用无刷直流电动机,因为无刷直流电动机的转速可以快速地调整,从而能够通过改变旋翼转速来改变和控制拉力大小。旋翼桨盘方向的改变,则可以采用新的旋翼飞行器设计结构,通过改变各个旋翼拉力的大小来调整旋翼桨盘方向,从而控制飞行器的飞行方向。

在设计中使用的无刷直流电动机是上海交通大学微纳米科学技术研究院研制的电磁型微电机,其机电转换效率也较高、并且便于调速,非常适合作为微直升机的驱动器,如图1所示。四旋翼微飞行器的负载能力决定于单个微驱动器的负载能力。微飞行器对微驱动器的要求是尺寸小、重量轻,输出力矩大、效率高,因此我们采用这种无刷直流电动机。

 图1四旋翼微型直升机

DSP是上世纪80年代开发出来的新一代微处理器芯片,具有很强的指令系统和硬件支持;与单片机相比,它具有更加适合于数字信号处理的软件和硬件资源,可用于复杂的数字信号处理。在微飞行器的实际应用中,DSP将实现以下几个方面的功能:完成微飞行器的微电机的换相控制,使得其能按要求有规则的运转;将采样回来的反电动势转换成相应的速度信号,并进行速度环的运算;协调DSP控制器使得四个微电机的转动和谐,根据控制要求调

节各微电机的速度以实现微飞行器的平稳飞行。

1控制系统硬件

  该驱动系统的硬件构成主要包括以下几个部分:以DSP为核心的控制部分、四个电机驱动芯片L6234组成的驱动部分以及一些必要的外围电路,如为了协调各电机速度的通信电路、存储电路和电源电路等。系统框图如图2所示。

 图2测试系统框图

1.1 DSP核心

   为了实现图2的控制系统,DSP被分为几个功能模块。微电机驱动模块:DSP的I/O口将产生高低脉冲来驱动后面的电机驱动芯片L6234;速度测量模块:DSP的A/D通道将接受测量所得的微电机的反电动势值,并将接受值转换成最终所需的微电机速度值。此外,还有仿真和程序下载模块:DSP芯片上被装有JTAG(Joint Test Action Group)标准测试接口及相应的控制器,从而不但能控制和观察系统中处理器的运行,测试每一块芯片,还可以用这个接

口下载程序,这为DSP的应用提供了很大的方便。此外,还设置了MP/MC的跳针和VCCP的跳针,这使得DSP在仿真模式和下载模式下很方便地进行切换。当选择仿真模式的时候,VCCP引脚被接到5 V电压上,跳针被置于MP模式下,即DSP处于微处理器状态下,并从外部程序存储器的0000 h开始执行程序。当选择下载模式的时候,VCCP引脚可以被接到5V或0 V电压上,跳针被置于MC模式下,即DSP处于微控制器状态下。在程序下载完毕以后,运行时VCCP引脚必须接地,程序从I)SP内部程序存储器(FLASH EEPROM)的0000 h开始执行。

1.2驱动芯片L6234在微飞行器中的应用

   在微飞行器的控制系统中,L6234将被用来驱动微电机的转动。为了使微电机能高速运转且能精确测量微电机的反电动势,采用两两通电的控制方式。L6234从DSP的I/0口接受控制指令,并按指令所给的微电机通电规律驱动后面的微电机转动。当然,驱动芯片L6234上还加上了电流测量电路和电压测量电路。我们在芯片L6234的输出管脚处加上了,一个分压电路,分压后的电压值被送入到DSP的A/D转换口以获得各相之间的相电压,然后DSP

将经过计算获得反电动势值。而同时将L6234的SENSE管脚作为电流的测量脚,以用来作为电流反馈,从而构成一个闭合的控制回路。

1.3串行通信接口模块(SCI)

   在本文研究的控制系统中,串行通信被用来DSP与上位机电脑通信。该通信的目的有以下几点:上位机可以比较容易地对飞行参数进行设置;方便微飞行器控制系统的调试;有助于将来蓝牙方式的接人,可以较快地被替代为无线控制。在这个系统中,一些调整微直升机飞行姿态和飞行速度的控制指令将通过串行通信从电脑下达给DSP,然后DSP接收并马上响应这些指令。它的具体应用为:电脑通过PCTXD的引脚经过MAX232的电平转换把指令传输到DSP的RXD引脚上,同样DSP通过TXD引脚经过MAX232的电平转换把指令传输到电脑的PC RXD引脚上。

2控制系统软件

2.1微电机驱动程序

   在整个下层软件中最主要的是控制微电机转动的DSP程序,其主要负责接收来自上位机的数据,其中包括从加速曲线采样的加速点,起动电机,停止电机等信号。然后根据相应的信号控制微电机旋转。在这个控制系统中,采用两两通电的方式来驱动微电机转动。也就是说将采用一定的顺序分别对微电机中的两相通电。

由于本文控制系统中采用了专门的驱动芯片L6234来驱动微电机,所以DSP输出的信号电平必须满足L6234需要的电平,各个I/0口输出的信号电平如图3所示。

 图3   L6234驱动的规律

   L6234对微电机每相的管理分为两个部分:一部分是选通通电相(ENA),另一部分是选择该通电相是正向导通还是反向导通(INA)。根据换相规律,我们很容易地得到如图3所示的L6234.的驱动规律。

   DSP复位后,即进入主程序,首先进行DSP的初始化,然后等待上位机发来的命令。如果命令是下载数据,则将从串口读出的用于加速的数据保存至内存中。收到运行的命令则按照刚接收到的数据控制电机换相,使电机旋转。同时程序采用了DSP的三个定时器,分别负责控制换相、加速和设置临时变量的时间。若收到停止命令,则通过I/0口输出使电机停止。流程图如图4所示。

    图4微电机的换相规律

2.2上层主机的软件设计

上位机的软件采用C++平台编写,主要实现编辑/显示/保存加速曲线,采集曲线上的加速点,发送加速数据到DSP,发送电机起动/停止信号。软件的界面如图5所示。

   图5上位机界面

界面中有四个窗口分别显示四个电机的加速曲线,可以看出,对每条曲线来说,它是由窗口右边列出的一些点组成的,按“下载”按钮可以把加速曲线下载到DSP中,按“运行”和“停止”按钮分别控制电机的旋转和停止。可以通过菜单中的“文件”下的“保存”和“加载”分别从文本文件中保存和加载曲线。

 程序开始时进行初始化,设置串口的波特率等参数后打开串口,如果串口已被占用,打开失败则退出。此后程序进入事件驱动模式,每当用户按下界面上的一个按钮或者点击某一个菜单都会进入该事件的处理程序。因此,在用户点击“添加点”按钮时,首先将被添加的点加入曲线的点队列中,然后对所有的点按时间进行排序,最后按时间从小到大的将相邻两个点用直线连起来,刷新整条曲线。若用户点击某个窗口的“下载”按钮,则处理程序首先对该条曲线按照事先规定好的时间间隔采样,采样的点进行数据转换,即从转速数据转换成DSP的定时器计数器的数据,最后把数据按照协议打包,通过串口发送出去。其它的事件处理程序不再一一赘述。

联系方式
 
 
 工作时间
周一至周五 :8:00-17:00
 联系方式
于海腾:010-83971821
姜宇:010-83510840
周围:010-61402950