0引 言
无人机是一种由动力驱动、机上无人驾驶、可重复使用的航空器的简称。在无人机体系中,选用PWM波信号操控的舵机是重要的履行机构,它是无人机操控动作的动力来历。为便于体系扩展和晋级[1.2],在飞控体系中往往选用分布式战略,将舵机的操控部分作为一个独立单元进行规划,称为舵机操控体系。
传统发生PWM波的办法是通过许多的分立原件来完结的.所发生的脉冲频率和宽度往往不是很准确,很难做到对舵机的准确操控。别的,使用CPLD或FPGA发生PWM波已在许多场合得到使用,依托CPLD或FPGA特有的并行处理才能和许多的1/0接口,能够一起操控几十乃至上百个舵机一起作业,但CPLD或FPGA生成PWM波时,并不具有事务处理才能,实践使用中还需求MCU合作作业,加之本钱高,开发设备贵重,极大的约束了它的使用规模。
因为单片机具有功用安稳、编程灵敏、精度高、价格低廉等特色,用它发生PWM波在实践中得到了广泛使用。本文给出了一种新颖的利MSP430单片机使用自带的守时器发生PWM1j~[3.4]的办法,本钱低,功用安稳,并成功使用于实践。
1整体介绍
飞翔操控体系整体结构如图1所示,整个飞控体系是由飞控核算机、舵机操控体系、传感器体系、GPS、机载电源及地上站体系组成。在飞翔过程中,无人机一方面通过传感器体系和GPS取得飞翔姿势和航向的实时参数,并通过无线电传回地上;另一方面随时按收地上上传的遥控指令。以这些信息为根底,通过主控核算机操控律解算,依照必定协议输出操控指令到舵机操控体系[5,6],再经由舵机操控体系输出相应的信号操控舵机的偏转,然后完结对无人机飞翔姿势的操控。
2 舵机操控体系硬件规划
2.1体系硬件结构
因为无人机选用燃料电池作为动力,所以要求机载设备尽或许功耗低、体积小、重量轻,这样既能够降低损耗又能进步体系安稳性和抗干扰才能。依据以上思维,规划了以田公司的MSP430F149单片机[7,9]为中心的舵机操控体系,该体系首要由CPU操控单元、串口通讯单元、脉冲信号处理单元、电源等硬件电路组成,体系结构如图2所示。
2.2舵机简介
1)舵机的结构与作业原理
舵机首要是由外壳、小型直流电动机、减速齿轮、方位检测器和操控电路板所构成。其作业原理如图3所示,其间,直流电动机作为驱动器发生动力源[10],运动由减速齿轮减速,传递给输出轴和舵盘,在输出轴后端衔接有电位计,用以检测当时方位,并将此值与驱动信号端口发送来的方位信号进行比较,通过操控电路,将差值扩大并由电机履行操作,完结方位伺服[11]。
2)舵机的操控
舵机是无人机飞翔操控的履行机构,也是本体系的操控目标,无人机一般配备有5个舵机,别离用来操控油门、副翼、升降舵、螺距和尾舵[12]。规范的舵机由一个宽度可调昀周期性方波脉冲信号即PWM波操控,以本体系选用的日本Futaba公司出产的S3003舵机为例,其脉冲周期为20 ms,中心脉宽为l 5 ms,对应0度,调理规模为±1 ms。当方波的脉冲宽度改动时,舵机转轴视点相应发生- 90度到90度内的线性改动,并通过连杆拉动舵面运动,然后操控无人机的飞翔姿势,舵机输入脉冲与舵偏角的对应联系如图4所示。
3舵机操控体系软件规划
3.1可调PWM信号的完结
I)PWM信号的发生
由舵机的作业原理可知,要完结对舵机的操控,实践上便是能给它供给一个可操控的PWM信号。本体系所需的PWM信号是由单片机守时器B的时钟模块发生,该时钟模块有4种计数功用挑选及8种输出方法挑选,选用增计数模式和翻转/复位的输出方法,图5为此种组合形式下的示意图,由图可知,使用TBO的TBCCRO值作为计数周期,TBI – TB5的TBCCRl – TBCCR5值作为计数值,当计数到达TBCCRx(x取1-5)值时,输出信号进行翻转,到达TBCCRO值时输出信号进行复位,然后能够便利的设置所需占空比的PWM信号。
2)通讯协议与PWM信号的联系
传统的舵机操控器通讯协议帧一般选用舵机编号加数据的方法,每帧数据只能操控一个舵机,大大降低了通讯的功率。本体系中每帧数据由16字节组成,其间包含帧头占两个字节、意图设备ID、数据位及校验和。帧头和校验和用于识别出数据帧并查看数据是否正确;意图设备ID用于标明舵机操控板(与之匹配的主控核算机板可衔接多
块舵机操控板以增强兼容性和可扩展性);中心12个字节的数据位用于一起解算舵机的偏角,其间每个舵机占2个字节,极大的进步了数据帧的使用功率,因而,MSP430F149的守时器B可输出多达6路PWM波。
详细算法如下:
(1)首要界说一个将两个字节的十六进制数变为有符号整型的函数i16Bits2lnt在其间界说一个umon类型的变量itmp,然后通过赋值itmp.(2)接下来使用前面自界说的函数完结5路视点的解算,部分代码如下:
(3)在PwmOut()函数中进行解算的视点到TBCCRx值的转化,通过准确核算,本体系中计数周期TBCCRO值为8947,有用脉冲宽度TBCCRx设置规模为223 – 1118,零位对应671。
(4)终究通过循环赋值完结捕获比较寄存器TBCCRx值的更新。
3.2主体程序
如图6所示,本体系的主体程序是在嵌入式开发环境中完结,首要包含体系初始化模块、守时处理模块和串口中止处理模块。其间,初始化模块首要包含体系时钟、端口、守时器等的初始化;守时处理模块首要是使用守时器A的计数守时功用来完结看门狗清零、PWM输出及体系检测等功用,选用类似于嵌入式实时操作体系的时刻片轮转使命调度方法;串口中止处理模块用来接纳飞控核算机发送的协议帧,并进行相应的处理。
3.3串口通讯
串口通讯模块选用中止方法接纳控核算机依照协议格局发来的操控信号,然后将数据存人预先界说好的16字节的数组,由解锁封闭模块提取出各舵机通道的指令操控量。数据格局为8位数据位,1位中止位,无校验位,波特率要求为19200 bps。需求留意的是,因为使用32. 768 kHz的低频晶振无法到达飞控核算机要求的19200 bps波特率,故串口初始化程序中选用3 579 MHz的高频晶振,通过设置UOBRO、UOBRI、UMCTLO三个寄存器的值别离为OxBA、Ox00、Ox90来完结19200 bps的波特率。一旦串口接纳到数据时,就会进入串口中止服务程序,中止接纳流程如图7所示。
需求阐明的是,传统的舵机操控体系在接纳到指令后仅进行PWM信号的解算,而未考虑到实践调试过程中或许呈现的问题。出于全面性考虑,本体系选用“帧封装”规划。所谓“封帧”便是串口每接纳到一帧数据就依照通讯帧协议将数据打包,返送回飞控核算机或调试用的上位机,首要是为便利体系调试以判别串口通讯正常与否;所谓“解帧”便是在确保接纳到的通讯帧数据完好的前提下,完结协议帧到PWM信号的解算。
4试验
4.1通讯测验
为便利调试,选用PC机上的“串口调试帮手V2. 2”模仿无人机飞控核算机通过RS422串口遵循帧协议每隔1秒守时向舵机操控体系发送指令,依据前面所述的封帧模块,舵机操控体系会将接纳
依据MSP430的舵机操控体系规划张建鹏,比及的数据依照帧协议打包发送给飞控核算机,作为呼应。测验界面如图8所示,图中反应信息显现在接纳字符区,而操控指令显现在发送字符区,体系呼应及时,实时性强,并且不存在数据丢掉或误码现象。
4.2波形安稳性测验
图9未使用波器测得一路PWM输出波形能够看出世纪输出地PWM波形安稳,杂波很少,复合体系预设要求。
4.3波形盯梢精度测验
使用克己的舵机测验软件对某一通道进行正弦盯梢拟合后的曲线如图10所示,其间横坐标代表时刻(测验频率取0.1 Hz),纵坐标代表视点,绿色曲线代表舵机的理论偏转角,黄色曲线代表舵机的实践偏转角,赤色曲线代表差错,经实践测算,差错熊有用操控在百分之零点一之内,盯梢功用杰出。
5结语
本体系的长处有:1)依据分布式战略思维规划舵机操控体系,有利于飞控体系的扩展与晋级。2)串口通讯选用“帧封装”规划,增加了嵌入式体系“黑匣子”的透明度,极端便利调试。3)克服了传统通讯协议每帧指令操控一路舵机的缺点,本体系每帧数据一起操控六路舵机,极大的进步了通讯功率。4)软件规划依据时刻片轮转调度思维,进步了代码履行功率,使得体系的实时性显着增强。5)发生的PWM信号安稳,精度高,电机的颤动和互扰现象显着削弱,十分有利于无人机在高空履行任努。
通过调试,该硬件渠道各项功用均到达规划意图,经屡次试飞,安稳牢靠,彻底满足要求,一起标明该计划是一种适用于小型无人机的经济牢靠的计划。