DIY四轴飞行器:基于MSP430F5系列单片机与Android(txt+pdf+epub+mobi电子书下载)


发布时间:2020-06-19 10:39:22

点击下载

作者:黄和悦

出版社:电子工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

DIY四轴飞行器:基于MSP430F5系列单片机与Android

DIY四轴飞行器:基于MSP430F5系列单片机与Android试读:

前言

四轴飞行器(四旋翼飞行器)是最近比较火的一种机电类设备,目前,从科技竞赛到航拍、侦查,随处可见四轴飞行器的身影。四轴飞行器是机械、通信、电子、自动控制几大学科融汇的具有较高科技含量的一种设备,主要承载了微处理器、惯性导航、自动控制、无线通信、电脑上位机软件、电路设计、PCB制作、外部机械结构设计、空气动力学及基本的航模控制知识。

因此,四轴飞行器十分适合作为电子信息、自动控制等学科的研究课题,也适合用作这些专业的教学、科技实践、工程实训设备。

笔者在制作四轴飞行器教学设备的过程中,感觉很多知识比较零散,而详细探讨四轴飞行器的书籍不是很多,因此斗胆编写了本书,希望能与喜欢四轴的朋友们一起分享经验,同时也对MSP430系列的知识做一简单介绍。

笔者自身是一个比较驽钝的人,能写成此书,离不开身边人们的大力支持和帮助,在此致谢,略表心意。

首先感谢我的研究生阶段导师赵建教授,赵老师多年来悉心教育学生,不断引导我们要创新,对于技术要精益求精,从本科开始给了我极多的耐心教导和帮助,以及方向性的建议。

其次,无论有没有本书,必须感谢我的父母、女友、亲人们的大力支持和鼓励,以及充分的理解和关心。

制作四轴的过程中,身边小伙伴们也非常给力,给了我很多的支持和关心,也特此感谢我的朋友们!尤其是对于手机APP及PPT的制作,要感谢孔玉英的大力支持。

具体到算法上,笔者从MK、MWC、KKC等开源飞控代码,以及Madgwick、seawood、Cnmusic、zksniper等网友的文章中(很多在Amobbs)得到了很多启发,在此对其表示感谢!制作四轴的过程中从TI(德州仪器)公司申请了不少免费芯片,对TI公司及其大学计划表示感谢!

最后,电子工业出版社对本书给予了很多关怀和支持,在此表示感谢!

感谢所有关心与支持过我们及Flappy430的人!

时间仓促,水平有限,多有不尽不全之处,只能说是框架性的入门,还望高人们多多指点。作 者2015年7月于西安电子科技大学第1章四轴飞行器概述引言:近年来,四轴飞行器越来越多地融入了人们的生活,不论是航模表演,还是侦查救灾,乃至高校的科技竞赛,都能看到它们轻盈的身影。那么,这种新奇的飞行器是不是一夜之间冒出来的新品种呢?比起传统的单轴直升机,它们有哪些优势?这些优势的产生,源于怎么样的控制原理和控制系统?与单片机、自动控制、传感器学科又有哪些联系呢?本书的目的就在于比较详细地梳理这些知识点,并从具体的单片机编程出发,详细阐述四轴飞行器的制作,争取能给航模和电子爱好者一些参考。本章主要阐述四轴飞行器的历史、现状、力学分析等基础内容,为后面的学习打下基础。1.1 四轴飞行器的历史

四轴飞行器概念的提出是非常早的。早在20世纪初,法国的科学家与学者Charles Richet制造了一个非常小的、没有驾驶员的旋翼式直升机,但没有试飞成功。不过这一灵感被他的学生Louis Breguet继承和发展了。1907年,Louis Breguet和他的兄弟Jacque制造了他们的第一架旋翼机Breguet-Richet“旋翼机1号”并进行了第一次试飞,但试飞中没有对飞行器进行控制,因而只上升到了1.5m的高度。“旋翼机1号”主体是用钢管焊接而成的“十”字形结构,具体如图1.1.1所示。图1.1.1 “旋翼机一号”

1921年,George De Bothezat在美国俄亥俄州的代顿空军基地建造了另一个大型的四轴飞行器,比起之前的有了不小的进步,但进行了100多次试飞之后仍然没有达到美国空军的要求,如图1.1.2所示。图1.1.2 George De Bothezat的四轴飞行器

同时,标致(Peugeot)公司的年轻工程师Etienne Oemichen自1920年起也在不断地研究旋翼机,并先后更换了多种设计。1924年,他设计的四轴飞行器首次实现了1km的垂直飞行并最多在空中停留了14分钟,如图1.1.3所示。图1.1.3 Etienne Oemichen的四轴飞行器

1956年,Convertawings公司在纽约的Amityville制造了一架四旋翼直升机,该直升机的螺旋桨直径超过了5.79m,并通过机翼产生向前飞行的升力。在设计中用到了两台发动机,通过改变每个螺旋桨提供的推力来控制直升机。

这种通过改变各个旋翼的转速来控制前进后退等运动的思路与现在的四轴飞行器的控制思路类似,而实际的试飞也比较成功,先后还设计了Convertawings Model A/model B等型号。但遗憾的是由于缺乏对这种直升机的兴趣,最终导致了工程设计人员研究的停止,如图1.1.4所示。图1.1.4 Convertawings公司的四轴飞行器

此后,由于传感器、微控制器等的发展还不是特别成熟,四轴飞行器的姿态检测和控制等受到局限,因此四轴飞行器没有特别大的进步,也没有进入实用阶段。1.2 四轴飞行器的现状、应用及微型化

最近十几年来,四轴飞行器的“大脑”——微控制器取得了极大的发展和进步;另一方面,四轴飞行器的“感觉器官”——陀螺/加速度计/磁力计等也做得更加准确,且都向微机电(MEMS)方向发展,更加的小型化和稳定;更重要的是,四轴姿态检测与计算的理论研究也取得较大的进步,很多简洁易用,适合计算机的姿态计算程序也被开发出来。加上四轴飞行器确实机械结构简单,易于维护,而且飞行稳定性较好,所以人们研究四轴飞行器的热情又再一次被点燃了。

国外比较著名的研究例子有:(1)宾夕法尼亚大学的基于视觉反馈的直升机控制系统(始于2002年)。这一团队的作品也多次出现在TED演讲、优酷视频等处,自主悬停时使用基于模型的线性反馈控制,而在穿越障碍、自主飞行时与视觉反馈控制相结合,其研究重点已经向多机协作和自主飞行倾斜。(2)瑞士洛桑联邦理工学院于2003年开始研发的OS4微型四轴飞行器。他们试验了各种不同的控制算法,对于最优控制理论、飞行器自主飞行和避障等做了比较深入的研究。(3)斯坦福大学的Mesicopter飞行器研究组、麻省理工大学的Robust Robtics研究组等也都对于四轴飞行器的建模、飞行、视觉控制、周围环境监测等领域做了很多研究工作。

国内研究方面,国防科技大学在2004年即开始了对微型四轴飞行器的研究,并做了一系列的建模和实践;哈尔滨工业大学、南京航空航天大学、西北工业大学等高校也相继做了较多的实验和探索。

由上面叙述可以知道,四轴飞行器的研究核心和基础在于飞行控制,也就是“飞控”部分。

在商业应用及DIY方面,最早公布自己的比较完善的飞控代码,并引来众多爱好者研究和制作的四轴飞控,当属德国的MK飞控。MK的代码在2007—2009年前后就已经相当完善,能非常稳定地飞行,也有完善的电脑端调试系统及航拍、GPS寻路等功能。

四轴的DIY活动大致从这时候开始变得更有深度,国内爱好者们以AMOBBS和5iMX论坛为基地,做出了很多关于四轴代码、电路等的研究和改进工作。

同时,这一时间段,国内的大疆(DJI)、Xaicraft等公司的无人机整体方案也发展得较快,四轴商业航拍开始逐渐兴起,各种场景的应用较大地提升了四轴飞行器的知名度。

2010年,法国人Alex在模型网站Rcgroups发布了他的Multiwii飞控程序,彻底地将四轴飞行器的制作拉到了“平易近人”的水平。Multiwii使用数字传感器,通过IIC数据总线传输数据,因此比之前的模拟传感器飞控更加方便且小型化;而其使用的控制器也是非常大众化的arduino。虽然Multiwii程序写的并非特别易读,但在硬件DIY方面,直到今天也是最简单、皮实的飞控之一。

此后,四轴飞行器的制作成本进一步降低,四轴的DIY在买配件组装,以及四轴飞控硬件制作方面变得比较容易。

不过,四轴飞行器最核心的知识还在于飞行控制算法的设计和程序的编写,因此我们今天能比较方便地DIY四轴飞行器,要特别向开源的MK飞控、MWC飞控、KK_C固件、Anotech飞控、madwick四元数代码的作者,以及很多写了大量非常好的四轴程序分析的人们表达敬意。

目前,在高校竞赛方面,四轴飞行器已经不断出现在各种赛事中,从各类创新杯到电子设计竞赛,都可以看到四轴飞行器的身影,有的是作为其他功能的载体,有的是直接作为题目要求。

在具体的应用场景上,四轴飞行器的航拍目前已经比较成熟,各种提供航拍服务的公司层出不穷,“爸爸去哪”里面的大疆飞行器就是典型;由于四轴飞行器的飞行比较稳定灵活,各种救灾、侦查也都有应用四轴飞行器的趋势;总之,四轴飞行器近几年取得了蓬勃的发展,而由四轴衍生出来的六轴、八轴、十二轴飞行器等,也都在陆续出现,四轴飞行器研究可说是一个充满活力、多个学科融合的领域。

上面的论述,大多是针对较大的四轴飞行器(轴距250mm以上)而言的,目前航拍等主力也是这类四轴飞行器。但是,较大的四轴飞行器也有一些难以克服的缺点。例如● 耗电较大;● 旋翼力量很大,调试中容易发生危险;● 太大,不易细致地观察与调试控制效果;● 航拍中容易被发现,不利于隐蔽;● 对飞行场地面积要求较高;● 制作成本较高。

由于四轴飞行器容易制作、飞行灵活,人们更希望其能够实现小型化及微型化,从而能进入更多的空间进行数据采集,也能够更好地节约能源,便于携带。因此,小型/微型四轴飞行器的研制,成为了四轴飞行器发展的趋势之一。

实际上,小型/微型四轴飞行器的主体结构和大型四轴飞行器是一样的。一般轴距为150~250mm的四轴飞行器还能勉强使用无刷电机,与一般的大四轴飞行器没有太大区别;而当四轴飞行器的轴距小于150mm时,则进入了微型四轴飞行器的范畴,与较大的四轴飞行器有了一些差别。主要差别在于,微型四轴飞行器的体积很小,因此大多采用了空心杯电机,升力一般比较有限;而又由于体积小型化的需要,因此很多时候直接将控制板的PCB作为机架使用,因此,微型四轴飞行器的传感器容易受到机身振荡及电流的干扰;而体积小、升力不是很强也使得其控制规律相对大四轴飞行器更难以整定一些。

另外,既轻又小的外形使得微型四轴飞行器惯性较小,因此运动状态极易改变,这使得对微型四轴飞行器的控制需要更高的控制频率。

但是,也正因为有以上的这些特性,微型四轴飞行器也有很多的优势。例如,其制作成本比较低,调试相对容易简单,也更容易搭建系统的测试平台;而制作完成之后,执行任务的地点也更加多样化,而且因为比较小,所以容易和智能手机等连接,因此,研究微型四轴飞行器也成为当前的一个热点。

在学术上,世界上对小型四旋翼飞行器的研究主要集中在3个方面:基于惯导的自主飞行控制、基于视觉的自主飞行控制和自主飞行器系统方案,其典型代表分别是瑞士洛桑联邦科技学院(EPFL)的OS4、宾夕法尼亚大学的HMX4和佐治亚理工大学的GTMAS飞行器。

前面两者已经有过叙述了,不再赘述。GTMARS是佐治亚理工大学面向火星探测任务而设计的CAD无人机系统,它重20kg,旋翼半径为0.92m,续航时间为30min。折叠封装的GTMARS随四面体着陆器登陆火星后,能自动将机构展开,能自主起飞和降落,巡航速度可达72km/h;另外,它还能返回到着陆器补充能量(着陆器装载有太阳能电池)。

图1.2.1从左至右是HM4、GTMARS、Mesicopter。图1.2.1 HM4、GTMARS、Mesicopter微型四轴飞行器

国内研究方面,国防科技大学在2004年进行了比较深入的从建模到实践的研究,如图1.2.2所示。图1.2.2 国防科技大学的微型四轴飞行器

从DIY的角度来看,最先出现的微型四轴飞行器DIY方案是MWC,较早的时候就有了“brushed motor”版本,也就是有刷空心杯电机的程序,并维持了MWC容易制作、皮实易用的特点。

而bitcraze团队在2011年前后推出的Crazyflie,则进一步发展了微型四轴飞行器,例如,使用了基于ARM-Coretex M3的STM32处理器;集成了无线通信模块;包含了无线更新飞行程序功能;可无线充电;开发了图像捕捉处理程序;飞行非常稳定;并且,其代码和硬件也是开源的。图1.2.3是Crazyflie实物图。图1.2.3 Crazyflie实物图

此后,微型四轴飞行器与智能手机连接,与WiFi联网、Zigbee协作等各种应用都不断地被开发出来,微型四轴飞行器的DIY也取得了很大的进步。

至此,四轴飞行器的现状的小说明就告一段落了。由于四轴飞行器自身结合了力学、机械、单片机/嵌入式,以及自动控制等各种知识,因而对于高校的教学或者示范有着较好的价值;又由于四轴飞行器的较好的飞行性能,所以也比较容易搭载其他的各种外设,并且在系统运行的时候具有较强的表现力,也有着庞大的爱好者群体。

当前虽然有较多的四轴飞行器资料,但是大多比较零散;且较多的停留在硬件组合阶段,没有深入分析四轴飞行器的代码和控制。故我们大胆编写了本书,以我们自主编程制作的Flappy430微型四轴飞行器为蓝本,从四轴飞行器的力学原理,到四轴飞行器的控制器、传感器,以及四轴飞行器的编程等角度,比较深入地分享我们对于四轴飞行器的一些经验。希望能对读者有所帮助。我们的Flappy430微型四轴飞行器如图1.2.4所示。图1.2.4 Flappy430实物图1.3 四轴飞行器的力学原理及控制框图1.3.1 四轴飞行器的力学原理

四轴飞行器通过改变自身四个旋翼的转速,可以比较灵活地进行各种飞行动作。主要依据的运动原理是力的合成与分解,以及空气转动扭矩的反向性,如图1.3.1所示,四轴飞行器通常有两种模式,“+”字模式与“×”字模式。图中的电机编号,旋转方向为本书中的标准方向。实际上,不同的四轴飞行器设计有不同的力学设计及编号方案,但一般遵循类似原则。图1.3.1 四轴飞行器的“×”字模式与“+”字模式

首先,为了之后描述方便,我们将四个电机编号为1~4号,这也是本书中Flappy430一直采用的编号。然后,需要注意的是,相邻的两个旋翼的转动方向相反,而在对角线上的两个电机的转动方向相同。例如,×字模式,1、4电机是顺时针转动,而2、3电机是逆时针转动。这样一来,为了保证它们产生的升力都是向上的,1、4电机需要使用的螺旋桨是“正桨”,一般指顺时针转动能产生向上升力的桨;而2、3电机使用的螺旋桨是“反桨”,即逆时针产生向上升力的桨。在装配四轴时,我们也应注意四个旋翼都是“向下吹风”的,以便均提供向上拉力。

这样做的原因是,旋翼在旋转时会产生反扭矩。例如,顺时针转动的桨在转动时,则空气会产生使得四轴逆时针转动的反向扭矩。而当1、4同方向,2、3同方向的时候,这两个扭矩就恰好抵消掉了,使得四轴在偏航方向能保持平衡,不至于出现自旋转。

分析清楚了这个之后,我们就可以知道四轴如何进行偏航方向的旋转了。以上图的×字模式为例,文字方向为前方,则当需要四轴左转(逆时针)的时候,需要增加1、4的转速,同时减少2、3的转速。这样,空气反扭矩会推动四轴逆时针旋转;反之亦然。

事实上,四轴一共有8种比较典型的运动情况,可以概括为:上升、下降、左旋、右旋、左飞、右飞、前飞、后飞。上面分析了旋转的情况。而上升和下降相对比较简单,同时增加和减少四个旋翼的转速就可以了。下面我们来看其余几种情况。以×字模式的左飞为例,当需要向左飞行的时候,我们可以增加2、4的转速,同时减少1、3的转速,这样,四轴就会有一个倾斜角度α。这个角度会从两个方面带来向左的动力。● 四轴本身的重力会有沿着倾斜方向的分力mgsinα;● 四轴四个旋翼的升力由于四轴的倾斜,会产生水平向左方向的分力Fsinα。

这样,四轴就会向左运动了。

具体的受力分析如图1.3.2所示,而四个旋翼之间的这种力学关系,也是后面的PID调节器最终输出四个电机转速的时候,其相互之间的计算关系的依据。图1.3.2 四轴飞行器受力分析示例

最后,我们将四轴的运动与四个旋翼的关系总结如下(以×字模式为例,+字模式读者可以自己推导)。● 上升:1 ↑、2 ↑、3↑、4 ↑;● 下降:1 ↓、2 ↓、3↓、4 ↓;● 左旋:1 ↑、2 ↓、3↓、4 ↑;● 右旋:1 ↓、2 ↑、3↑、4 ↓;● 左飞:1 ↓、2 ↑、3↓、4 ↑;● 右飞:1 ↑、2 ↓、3↑、4 ↓;● 前飞:1 ↓、2 ↓、3↑、4 ↑;● 后飞:1 ↑、2 ↑、3↓、4 ↓。

这是我们设计电机转速的基础力学原理,也是后面对程序进行测试时的指标之一。需要注意的是,最后输出电机的转速的时候,每个电机和自己的控制信号输入引脚一定要对应好。1.3.2 四轴的坐标及控制知识初步

有了四轴飞行器的基本力学原理之后,我们可以基本设想一下四轴的控制了。由上文的分析可以知道,四轴的各种运动都与其姿态或者机身的倾斜和旋转角度有关,因此,首先,我们应当以四轴的重心为原点建立一个直角坐标系。这个坐标系是针对四轴自身而言的,当四轴倾斜时,则此坐标系会与大地坐标系不再重合。因此,我们将此坐标系称为机体坐标系。这个坐标系是四元数算法中的常用机体坐标系,X、Y、Z轴与各个旋转轴之间符合右手图1.3.3 四轴飞行器的机体坐标系螺旋定则,如图1.3.3所示。

X、Y、Z坐标系上面的旋转方向命名为Pit(俯仰)、Rol(横滚)、Yaw(偏航)。由于四轴的运动基本是由于倾斜后的分力在起作用,因此这几个变量非常重要,后面主要的解算和分析都是围绕着这几个旋转量。而四轴倾斜的角度,即类似图中的α角度,也是后面解算的重点。

由于Pit、Rol、Yaw均是有正负的,所以用这三个量,我们就可以描述四轴的姿态了。例如,angleRol=-α、anglePit=0、angleYaw=0就是图1.3.3所示的情况,这样我们就完成了控制四轴姿态的第一步:描述四轴当前的姿态。从自动控制上说,可以比较精确地描述真实的姿态数值了。当然,如何解算出精确的姿态数据,是整个四轴算法的重点,我们会在后面具体地描述。

设想一下我们在用遥控器遥控四轴,同样可以用这几个姿态数据来控制四轴的各种运动。例如,需要左飞的时候,只需要用遥控器设置angleRol=-α、anglePit=0、angleYaw=0,将四轴调节到这个姿态,就可以了。这三个有正负的量,可以代表前、后、左、右、左转、右转6种运动。当然,还需要一个量来设置升降,也就是常用遥控器中的油门数值Thr。每个数值称作一个通道的话,需要一个4通道遥控器,这样我们就可以设定我们图1.3.4 四轴飞行器控制框图想要的四轴姿态了,也就是知道了自己需要的数值——seted data。

下面我们将这几个量列出来:

Rol/Ail——横滚,Pit/Ele——俯仰,

Yaw/Rud——偏航,Thr——油门

当然,具体到四通道遥控器/蓝牙遥控器等上面,这几个量的数值正负和范围还是需要测试和校准的。

有了遥控器设置预期数值,以及能描述自身的姿态数据后,我们可以得到四轴大致的控制框图,如图1.3.4所示,后面各部分的设计、说明都是围绕着这个基本控制框图而进行的。第2章四轴飞行器的组成及各部分功能引言:在第1章的末尾,我们基本绘出了四轴的控制流程图,这些控制流程的实现依赖于四轴的各个组成硬件。那么,通常情况下,四轴有哪些组成部分呢?每个部分的功能是什么?各个部分之间的通信信号是什么形式?各个部分中,哪一个部分是最值得关注和研究的?本章将较为详细地解答这些问题,并勾勒出DIY四轴飞行器的大致步骤。2.1 四轴飞行器组成概述

四轴飞行器的一般结构框图如图2.1.1所示。图2.1.1 四轴飞行器组成框图

总结起来,可以分为以下几个部分。2.1.1 2.4GHz遥控器及接收机

遥控器用于设定四轴飞行器的预期姿态。在第1章我们分析指出,四轴共有8种比较典型的运动状态,因此,我们至少需要一个四通道的遥控器来对四轴进行姿态的控制。遥控器大多使用2.4GHz频段进行通信,并配有接收机来对发射机发射的信号进行解码和输出。通常,接收机将至少四个通道的数据用PWM波的形式输出到信号引脚,如图2.1.2所示,图中有6通道。图2.1.2 常用航模遥控器接收机及其输出信号

接收机输出的是50Hz的PWM波,并用占空比(高电平时间/波形周期)数值来表示遥控器摇杆的位置,占空比的数值范围为5%~10%。例如,当Rol摇杆处于中间位置时,对应的信号引脚输出7.5%占空比的波,而7.5%是5%~10%的中间位置。

也有PPM式的遥控器,它将多个通道的数据整合在一个波形里面,这样一个引脚就能传递多个通道的占空比信息。不过随着飞控单片机的引脚越来越丰富,这种类型遥控器用得比较少了。2.1.2 蓝牙/WiFi等遥控器及接收机

传统的航模遥控器是上述这种类型,操作手感好,有效范围远。但随着智能硬件的流行,现在也有很多用蓝牙/WiFi/Zigbee等物联网式通信作为遥控器的方案。这种遥控通常直接使用对应的网络协议进行通信,并用自己的数据格式进行数据的数字化传输,如直接传输Rol=-90。相比传统的遥控器,更加精确和量化,但其缺点是通信距离还比较近,程序编写相对复杂。

上述两个部分,属于控制量输入设备,通过这两个部分,我们可以给四轴输入自己想要的姿态数据,从而操作四轴。当然,这里遥控器是由我们来控制的,如果是视觉控制、自主导航类的四轴,目标姿态则又不相同了。2.1.3 姿态检测单元

在遥控器知道了设定的姿态后,四轴还需要将其与自身目前的姿态进行比较,也就是求出Error=seteddata-realdata,这样才能输入PID算法中有针对性地对电机进行控制。

姿态检测单元主要包括陀螺仪、加速度计、磁强计和气压计。

陀螺仪是检测四轴绕着Pit、Rol、Yaw三个方向的旋转角速度的器件,动态特性较好;加速度计是检测沿着X、Y、Z三个轴的线性加速度的器件,和陀螺仪结合可以得到比较准确的姿态;磁强计也就是电子罗盘,用于测定与地磁南北极的夹角,这样四轴可以更精确地知道自身的机体坐标系与大地坐标系的偏差,还可以进一步应用于四轴的锁定航向中;气压计通过测定四轴周围的大气压,从而判断四轴的绝对高度,能起到稳定高度的作用。

陀螺仪、加速度计、磁强计各有三个轴向的数据采集,而气压计又采集到了一个高度轴的数据,因此,包含以上传感器的姿态检测单元可以称为10DOF,即10轴传感单元。在实际应用中,仅用陀螺仪可以完成对四轴飞行器的粗略控制,辅以陀螺和加速度计可以实现较好的控制,本书介绍的Flappy430还携带了磁强计。

目前,由于MEMS技术的不断改进和数字电路的发展,各种传感器均实现了数字化,可以直接通过IIC/SPI等总线输出姿态数据,因此,姿态检测单元直接通过IIC/SPI总线与控制器相连,将当前的姿态数据传递到控制器,供后面的计算使用。

当然,姿态检测单元也可以使用模拟传感器,并通过A/D采样引脚与控制器连接。模拟传感器测量精度可以更好,但连接较为复杂,在目前的DIY四轴飞行器中已不多见。2.1.4 处理器

处理器是综合各方面数据,真正对四轴的姿态进行计算和控制的部分,通常由性能较高的单片机/微处理器完成。

首先,处理器对姿态检测单元提供的原始数据进行处理和计算,并得出当前四轴的准确姿态。这部分的算法是惯性导航的重要内容;然后,处理器将收到的遥控器的预期姿态设定值与当前的真实值进行对比,计算出Error=seteddata-realdata,并将此误差输入到PID调节器,最终解算出四个电机的转速。处理器是四轴算法的核心执行部件。

早期的四轴大多用AVR系列单片机作为处理器,而随着微处理器的不断发展,当前比较流行的处理器是ARM Cortex-M3系列的单片机,如STM32等,Cortex-M4系列也逐渐比较多地用于四轴。实际上,使用高达1GHz以上的处理器的四轴也是有的。不过,要做好四轴,最重要的还是在于姿态和自控算法,有了好的算法,即使比较弱的处理器,也可以取得较好的效果。2.1.5 调试器

在DIY四轴飞行器的过程中,调试器也是必不可少的。首先,调试器使得我们可以将程序下载到处理器中,从而验证自己的程序设计;其次,调试器配合上适当的PC程序,可以让我们比较轻松地观察到四轴算法计算出来的各种数据,从而对自己的程序运行状况有定量的了解。

不同的处理器使用的调试器也不尽相同。Arduino系列的处理器,大多通过FDTI下载器直接完成下载与数据交互的功能;STM32/MSP430等处理器则往往通过USB转串口芯片,将自身数据通过串口与PC进行交互,而在调试程序的时候则通过JTAG接口连接到专门的仿真器。

那么我们经常听到的“飞控”一词指的是什么呢?最早的飞控只包含姿态检测单元、处理器,以及一些必要的接口和电路。随着人们对飞控的学习进一步深入,目前很多飞控也开始集成调试器,以便能方便地连接到电脑;而到了微型四轴飞行器上,还常常包括了无线收发模块,进一步增加了集成度。例如,我们的Flappy430学习板就集成有USB转串口模块,可以方便地与PC进行虚拟串口连接和数据观察。总之,飞控是四轴飞行器的姿态检测、遥控信号接收,以及姿态和控制算法的核心载体,因此,也常用某某飞控来指代其整个四轴飞行器系统。2.1.6 电机驱动及电机

当飞控获得了姿态数据和遥控器的设置数据后,飞控将这些数据输入姿态计算及PID控制算法中,最终解算出想要达到预设的效果,四个电机需要设定到的转速。而转速数据又以四路PWM波的形式输送到电机驱动及电机中。

由于较大四轴飞行器和微型四轴飞行器的波形不尽相同,这里分两种情况叙述:(1)较大四轴飞行器:较大四轴飞行器一般采用无刷电机,并搭配无刷电机驱动器(俗称电调)使用。飞控输出的转速信息以PWM波的形式到达电调的信号输入端,这个波形与前面的遥控器的波形是一样的,也是50Hz,占空比为5%~10%的PWM波。(2)微型四轴飞行器:微型四轴飞行器一般采用有刷电机(常用空心杯电机),直接搭配一个MOS管使用,因此通常无须按照电调的规范将占空比限定到5%~10%。而是可以从1%~99%(微控制器的PWM发生器通常不支持100%),而且这个PWM波的频率也无须限定在50Hz,可以自定义,例如Flappy430的电机控制信号就是四个1%~99%,500Hz的PWM波。

到这里,构成四轴飞行器的控制闭环的关键部件我们已经介绍完了。而四轴飞行器的控制算法,如前所述,也就是如何运用这些部件完成姿态检测,遥控信号接收,比较预定位置与真实位置,并通过自控算法控制四个电机转动到合适的转速的过程。

后面的内容将详细描述这些部件的使用及功能,而本节的内容是希望读者能在制作之前,对这些部件的相互关系、流通的信号类型有一个大致的了解。

当然,四轴飞行器还应包括机架和电池等,这些都将在后面的章节进行详细描述。而我们在DIY四轴飞行器的时候,除了了解这些部件,还需要仔细地看清楚各个连接线路,避免错误的连接。例如,接收机的6个通道与遥控器发射机的Rol、Pit通道的对应关系,或者飞控的电机控制信号与MOTOR1、2、3、4的对应关系,这些都将对四轴飞行器的控制效果产生直接的影响。2.2 遥 控 器2.2.1 2.4GHz遥控器

当前最常用的遥控器是2.4GHz频段的遥控器,常见的有天地飞、富斯等品牌,一般分为接收机和发射机,发射机握持在使用者的手中,而接收机安装在四轴飞行器机身上以接收发射机的信号,并且将各个通道的数据用PWM波的形式输送到四轴飞行器的对应的接收引脚。

下面以天地飞WFT06X-A为例讲解遥控器的细节。

1.使用前需要进行对码

由于2.4GHz是全球免费频段,因此为了防止多个遥控器之间的互相干扰,在使用前通常需要进行发射机和接收机的对码操作。具体来说,则是接通接收机和发射机电源之后进行的一系列操作,以便使接收机和发射机之间存在信号的验证,避免干扰。接收机通常接到5V的电源上,但WFR04S微型接收机(本书使用的接收机)实测可以在3.3V电平工作。以下是天地飞WFT06X-A的对码说明,供参考。

名称:天地飞6通道遥控器。

型号:WFT06X-A(2.4GHz)。

信号:2.4GHz PPM。

支持:四/六/八轴飞行器、普通斜盘直升机、固定翼、车、船,兼容各种舵机。(1)如何对码。● 接收机:按住“SET”键至橙色灯“STATUS”慢闪,守候发射机对码指令。● 发射机:按住“SET”键开机,再按一次SET键进入对码功能(橙色灯“STATUS”长亮),接着长按“SET”键至橙色灯慢闪,进入对码状态。● 对码成功:发射机绿灯长亮,接收机指示灯熄灭。(2)失控保护设置。● 接收机接通电源。● 发射机按住“SET”键开机,再长按“SET”键约2s,进入失控设置状态(绿灯闪)。● 接收机绿灯快闪,此时发射机输出的数据为接收失控保护后输出的数据。● 失控保护状态:接收机红灯长亮。

2.发射机通道及反向设置

前文已经说过了“通道”的含义,当前的遥控器一般至少是6通道。而通道数量的多少和误码率等也是选择遥控器的标准。前文分析过,四轴至少需要4个通道,剩下的通道主要用于控制相机、云台,以及其他的设备。每一个通道的输出波形还是前文所述的,5%~10%的PWM波。一般地,控制4轴的四个通道是在发射机的摇杆上面,而其他的通道往往以旋钮或者拨动开关的形式放在遥控器面板的上方。

根据摇杆与通道的配置关系,发射机可以分为“左手油门(美国手)”与“右手油门(日本手)”两种,如图2.2.1所示,左边为日本手,右边为美国手。图2.2.1 常用2.4GHz航模遥控器各通道示意图

一般认为,日本手由于两手分开控制Rol/Pit这两个最重要的姿态量,比较适合航拍和新手使用,而美国手更适合固定翼,这也是在购买遥控器的时候需要说明的。本书中使用的是日本手。

不论是哪一种模式,摇杆的位置都会被发射机检测到,然后通过发射芯片发射出去,接收机将这一信号转换成5%~10%的PWM波信号,输入飞控的信号接收引脚,从而完成使用者对姿态的设置,即完成seteddata姿态量的输入。

为了使摇杆的调节更加精确,在各个摇杆的旁边设有微调滑块。微调滑块可以比较细微地调节输出的PWM的上下限。例如,油门数值本应是5%~10%,但是现在偏离到了6%~10%,就应将Thr摇杆旁边的微调滑块向下滑动,使数值回复为5%~10%。很多飞控在解锁时需要低油门数值,不小心将油门微调滑块调得过高,就会导致无法解锁。

具体摇杆的哪一个位置对应着高占空比的PWM、哪一个位置对应着低占空比的PWM,是可以调节的。在遥控器的右下角有一排拨码开关,将其拨动到“Rev”一端,即可完成反向。还是以Thr为例,本来Thr摇杆向上推是对应的低占空比的PWM波,而本书中的PWM捕获程序是用捕获到的数值减去中间值,这样,在Thr往上推时,会得到油门数值为0,而往下拉时,会得到125的油门数值。这显然不符合我们通常认为向上推是加油门的思维,而且这样的数据输入PID调节器的话,也会导致向上推电机转速下降。所以本书中的Flappy430四轴飞行器,在使用遥控器时需要将Thr对应的拨码开关往上推动到Rev,其他的不变。

总之,各个通道的反向开关是比较重要的,关系着最后的姿态解算正确与否。而我们在设计PWM输入捕获程序时,也需要考虑捕获到的数值符合物理上的习惯。如Rol通道向左拉动时,我们捕获到遥控器的数值输入进PID调节器之后,应该是使四轴向左偏移的。这部分程序在后面章节会有详细的描述。图2.2.2是油门反向拨码开关图。图2.2.2 航模遥控器通道反向开关

最后,这里对发射机的描述是从四轴飞行器的角度出发的,实际上大部分的发射机还可以用于控制固定翼等,此时其通道设置会有不同,建议读者仔细阅读说明书。

3.接收机通道

发射机上的通道数值最终需要接收机接收到,并用信号引脚上的PWM占空比反映到飞控上面。因此,我们在安装接收机的时候,一定要注意将接收机的通道与对应的飞控上的通道一一对应。并且在自己编程的时候也要注意看清通道。

接收机的型号也是比较多的,不同的接收机通道不同,但一般用1~6的数字标示通道,而具体通道名称会在说明书上有标示。以本书使用的WFR04S微型接收机为例,其通道名称与数字对应如图2.2.3所示。图2.2.3 微型接收机实物及各通道信号

输出信号的三排针,中间的是5V电平(此微型接收机实测3.3v可用),而两边的一个是GND,一个是信号。实际的接收机上会有一个方波形的logo指向信号脚,帮助分辨。

我们的Flappy430飞控/微型四轴上安装接收机的区域如图2.2.4所示,这与接收机上的引脚定义相吻合,因此我们恰好可以将微型接收机插入这个区域中,然后焊接就可以了。而这个通道具体对应着单片机的哪个引脚,如何设计采样程序,这是后面需要考虑的问题了。图2.2.4 Flappy430上的微型接收机接口

在实际使用中,对于不同的飞控,用于接收接收机信号的引脚各不相同,因此读者需要看清楚接收机和飞控的说明书,然后仔细地用杜邦线进行对应连接。

Flappy430是微型四轴飞行器,因此选用WFR04S微型接收机,这个微型接收机的标称接收距离是500m,如果需要更远的控制距离,如控制大四轴飞行器时,可以选用更大些的接收机,控制通道数量也会比较多,前文中出现的接收机就是WFR06S接收机,有6个通道。值得注意的是,前文中的Pit通常是指俯仰通道,对应遥控器上的Ele通道,而有的接收机上是用Pit表示第6个通道的,读者不要混淆。

4.遥控器的指令

接收机连接到了飞控之后,飞控就可以通过信号引脚捕捉遥控器的信号了。一般而言,不论几通道遥控器,其重点还是四个摇杆所在的通道。起飞前,这几个通道的不同位置对应着不同的指令;起飞后,其位置的变化对应不同的飞行姿态命令。

不同的飞控,其具体的控制指令也不尽相同,需要读者在购买的时候仔细阅读说明书。列出Flappy430的部分命令,作为参考(日本手),如图2.2.5所示。图2.2.5 Flappy430解锁/上锁操作示意图● 上升:右边杆向上推(Thr通道);● 下降:右边杆向下拉(Thr通道);● 左飞:右边杆向左(Rol通道);● 右飞:右边杆向右(Rol通道);● 前飞:左边杆向上推(Pit通道);● 后飞:左边杆向下拉(Pit通道);● 左旋:左边杆向左(Yaw通道);● 右旋:左边杆向右(Yaw通道)。

操作的时候,注意眼手协同,及时分析清楚四轴的方向和姿态,起飞的时候油门杆可以略快,其余时候尽量柔和,避免产生危险。没有把握的时候及时降低油门并且上锁,尤其是大四轴飞行器,可能很危险。在实际操作前,可以通过模拟器来练习飞行。2.2.2 蓝牙/安卓遥控

上文中我们提到的遥控器是传统的航模遥控器,优点是距离比较远、可靠性较高,同时调节起姿态来比较柔和,大多使用NRF24L01类的射频芯片。

当然,这类遥控器也是有缺点的,如体积大、耗电大,通道数量有限从而导致功能扩展性受限等。又由于当前物联网概念的兴起,各种短距离无线通信方式加速发展,因此,使用物联网式的通信方式来控制四轴飞行器成了新的探索方向。

当前比较常用的物联网通信方式有WiFi、蓝牙、ZigBee等,它们也工作在2.4GHz频段,但有更细致的频段划分、更完善的通信格式和协议来保证数据传输的准确性。WiFi和蓝牙目前已经成为智能手机的标配,具有广泛的使用群体。

在硬件上,TI、CSR等厂家对这些协议做了完善的解决方案。Flappy430使用的是CSR公司的蓝牙芯片BC4,此芯片支持蓝牙2.0协议,使用3.3V电平输出,可以与Flappy430的串口0直接连接。蓝牙模块的名称是HC-06,属于目前常见的蓝牙模块,此蓝牙模块可以广泛地应用于工业控制、智能家居、无线抄表等各种场合。蓝牙部分原理图如图2.2.6所示。图2.2.6 蓝牙模块原理图

在软件上,安卓、iOS和WP等移动操作系统都对蓝牙和WiFi有比较全的驱动库,所以在智能手机上开发四轴飞行器的遥控程序也成为四轴飞行器开发,尤其是微型四轴飞行器开发中的一个趋势。

使用这种方式遥控四轴飞行器,具有以下一些优势。(1)以智能手机为载体,不用单独携带遥控器。(2)各个通道的遥控数据直接以数字量的形式传输,与之前的PWM波传输相比更加准确,写飞控程序的时候也可以不用操作IO口的捕获和中断。以Flappy430的解锁为例,解锁需要的信号是 油门Thr小于40,旋转Yaw大于90。传统遥控器给出的信号是:占空比小于8.3%的Thr通道信号,以及占空比大于9.3%的Yaw通道信号。经过对应的飞控引脚的捕获和计算,再换算成具体的数值。而采用蓝牙等通信的话,收到的直接就是一串数据,可以方便精确地得到各个通道的数值。(3)通信过程中可以自己设置通信数据包格式,在某种程度可以更好地防止失控。例如,Flappy430的蓝牙通信数据包是“//控制数据流:&ch1ch2ch3ch4.ch:Rud-Thr-Ele-Ail”,其中,我们使用“&”字符作为一包数据的开头。如果一定时间没有检测到“&”字符的话,则可以判定数据传输出现问题,需要启动紧急降落程序。(4)一体化程度更高。如前文所述,我们使用的天地飞接收机是与发射机配套的,因此接收机作为独立的部件安装在Flappy430上面。而使用蓝牙等芯片的话,则可以自行设计电路和芯片,从而将无线接收也融合到微型四轴飞行器/飞控上面,获得更高的集成度。而这类通信方式的缺点,则主要在于距离不够远,以及智能手机等发射机的界面操作不如传统发射机专业精确。

就界面设计而言,智能手机上面的操作界面脱胎于传统的遥控器,只不过用手指点触代替了传统的物理摇杆,最核心的仍然是四个姿态通道。由于智能手机的灵活性,界面上可以增加很多特定的功能按钮,而这一通道的数据加入到数据包中即可。例如,控制数据流“&ch1ch2ch3ch4ch5ch6”,就增加了两个通道。接下来只需修改接收的飞控的数据包读取程序即可。图2.2.7中左边的图是典型的手机控制界面。图2.2.7 典型手机端遥控器界面

不同的飞控,其具体操作和界面也不尽相同,使用时应仔细阅读说明书。我们的Flappy430的手机端程序是基于安卓的,但尚未开发到十分完善,建议只做解锁/调试用,界面如图2.2.7中的右边部分,操作指令如下。● 解锁:中央滑块往右移动至边沿,或者直接单击大圆的右侧边沿。● 油门增加:滑块上移,或者直接单击大圆的上方边沿,每次单击油门数值加10。● 油门减少:滑块下移,或者直接单击大圆的下方边沿,每次单击油门减少25。● 连接设备:单击菜单键打开蓝牙,搜索到叫作FlutB的设备并连接,密码是1235。

到这里,我们已经了解使用者如何来输入控制四轴飞行器的信号了,接下来将继续讲解四轴飞行器的其他部分,并形成完整的输入—计算姿态—输出的控制环。而关于遥控器/蓝牙方面更具体的电路、编程等知识,我们也会在后面接着讲解。2.3 电机及驱动

上文我们提到,四轴飞行器控制,计算姿态是关键,而控制电机转速是最后的一步。电机作为四轴飞行器控制的最终执行部件,对四轴飞行器姿态的调节起到直接的作用,而大小四轴飞行器的驱动系统,又有各自的特点。2.3.1 无刷电机及电调

较大的四轴飞行器主要使用无刷电机。与传统的有刷电机不同,无刷电机属于外转子电机,也就是说,工作的时候是电机的外壳在转动,而不是内部的线圈。这样带来了电机维护上的方便,同时,无刷电机在扭力、转速方面都有比较优越的特性,因此广泛地应用在较大四轴飞行器、固定翼等各类航模上面。

选择无刷电机的时候,有以下一些数据是需要注意的。

1.尺寸

无刷电机在型号命名上就反映了其具体大小,例如,我们常用的新西达2212电机,含义就是,直径为22mm,转子的高度为12mm。一般而言,越大的电机,其转速和扭力也就越大。

2.KV值

无刷电机KV值定义为“转速/V”,意思为当输入电压增加1V时,无刷电机空转转速增加的转速值。例如,KV1000的无刷电机,代表电压为11V的时候,电机的空转转速为11 000转/分。KV值越大,速度越快,但扭力越小;KV值越小,速度越慢,但扭力越大。450~600mm轴距,2kg左右的四轴飞行器,一般采用新西达2212-KV1000电机搭配1045螺旋桨就可以了。图2.3.1中左边的图是新西达2212无刷电机,右边是无刷电机电路图。图2.3.1 无刷电机实物及电路

图2.3.1左图中,电机右侧为固定座,用于将电机固定到机架上面;子弹头用于安装螺旋桨;电机上的三根线,即右边示意图与电调连接的电机驱动线。如果调换其中任意两根的位置,则电机的转动方向将会发生变化。前文已经说过,转动方向与正反桨的转动方向及搭配非常重要,因此安装时一定要注意。安装完毕后,四个螺旋桨吹起的风应该都是向下的。

3.电压

提到电机,当然要考虑其驱动电压的大小。在航模中,通常把一节锂电池的电压3.7V称作一个S。微型四轴电机常用1S锂电池驱动,而较大的四轴的无刷电机一般采用2~3S,也就是7.4~11.1V来驱动。一般的无刷电机都可以支持2~3S的电压,当然,最常用的配置还是3S的锂电,也就是11.1V。

那么驱动无刷电机的“电调”又是什么呢?电调在航模中一般指的是“无刷电机电子调速器”,通常由MOS管配合单片机组成,其主要作用是将航模电池提供的直流电转换成三相驱动电流,并通过过零检测等电路检测无刷电机的反馈,从而顺利地驱动无刷电机。

在选择电调时,需要注意以下问题。(1)电压范围:一般电调可以接收的电压范围为5.6~12.6V,确认这个数值与我们的电机电压范围搭配。(2)电流大小:四轴飞行器在飞行的时候,无刷电机能达到的电流是很大的,实测通常为4~5A,因此电调可以提供的驱动电流比较重要。市面上常见的有20~40A的电调,如果四轴飞行器不是比较重的话,一般选择20A电调就可以了。(3)BEC输出:电调的电源线通常是直接与航模电池连接的,而其控制线常用3排针式的排列,如图2.3.2所示。图2.3.2 电调实物及其接口

这个控制线的5V,一般是电调的稳压电路输出的线性电源,因此,当电调插上飞控之后,这个5V就作为飞控的电源而使用,而飞控的控制信号通过信号线输入到电调中。一般电调的BEC输出口都可以输出2A以上电流,能完全满足飞控的需求。(4)电调的设置:不同的电调有不同的设置指令(通常是从信号引脚输入的不同占空比的PWM波),飞控接收机或者其他能发出50Hz、5%~10%的PWM波设备(信号源、遥控器、发射机等)均可以对电调进行各种设置。特别需要说明的是,一般而言,电调的BEC输出是5V,但是,电调的控制信号Signal并不需要5V,而是3.3V就可以识别了。这是因为5V类型电平(CMOS电平)的高电平识别下限是2.7V,而目前常用的3.3V单片机输出的高电平已经超过了这个下限,因此读者在使用此类单片机(MSP430、ARM等)调试电调的时候不用刻意去设计电平转换电路。

这一系列的设置可以通过阅读电调的说明书获得对应的设置方法,其中最重要的设置是油门行程的设置。

油门行程的意思是,当信号接收引脚收到的PWM波的占空比变化1%时,电调控制电机转速对应进行多少变化。四个电调必须有同样的油门行程,这样当飞控控制电调从而控制电机转速时,对应的转速变化才比较好控制。

油门行程的设置方法(当前大多兼容电调程序)如图2.3.3所示。图2.3.3 电调油门行程校准过程

这里需要做的是,将电调的信号线不插到飞控,直接插上遥控器的接收机,利用其可控的PWM波来进行调节。校准时需要注意,要插上油门通道,并且油门通道应该通过Rev按钮设置为往上推是占空比增大的。

这一过程从信号变化来看,就是:保持10%左右的占空比→等待2s→等待确认音→保持5%左右占空比→等待1s→确认锂电池和油门。也就是一个让电调确定收到的PWM波占空比的范围,从而能够根据这个范围来确认,当占空比变化时,自己应该怎么控制电机转速做出相应的变化的过程。可用类似以下程序段,在飞控程序中编程并统一设置。//设置电调油门行程updata_pwm(CH1,1800); //电调油门最高updata_pwm(CH2,1800);updata_pwm(CH3,1800);updata_pwm(CH4,1800);rt_Thread_delay(3*1000);updata_pwm(CH1,750); //电调油门最低updata_pwm(CH2,750);updata_pwm(CH3,750);updata_pwm(CH4,750);rt_Thread_delay(7*1000);(5)电机和桨的关系及选择:选择好电调之后,应该将电调分别绑在四轴飞行器的四臂上,同时通过固定螺钉将四个电机安装在四臂上,然后将螺旋桨按照上文所述的方向安装好,有1、2、3、4号及旋转方向的区别。这就需要我们调节好电调的驱动线,并且做好调试。

当然,桨本身的选择也是重要的。螺旋桨越大,升力就越大,但对应需要更大的力量来驱动;螺旋桨转速越高,升力越大;电机的KV越小,转动力量就越大。综上所述,大螺旋桨就需要用低KV电机,小螺旋桨就需要高KV电机(因为需要用转速来弥补升力不足)。如果高KV带大桨,力量不够,那么就很困难,实际还是低速运转,电机和电调很容易烧掉;如果低KV带小桨,完全没有问题,但升力不够,可能造成无法起飞。

对于新西达2212-1000kV电机通常搭配1045桨使用。1045的含义是,螺旋桨的直径是10英寸,螺距是4.5英寸。也就是说,螺旋桨每旋转一圈,则四轴上升4.5英寸。实际使用中,还可以使用三叶螺旋桨等。

以上是大四轴飞行器的动力系统的搭配阐述,最后搭配完成的效果如图2.3.4所示。图2.3.4 较大四轴飞行器装配完成图2.3.2 有刷电机及驱动电路

在微型四轴飞行器上,由于空间和电流都比较有限,通常采用有刷电机作为动力。具体说来,就是空心杯电机和MOS管驱动电路的结合。空心杯电机属于直流、永磁、伺服微特电机,具有突出的节能特性、灵敏方便的控制特性和稳定的运行特性,作为高效率的能量转换装置,代表了电动机的发展方向。空心杯电机在结构上突破了传统电机的转子结构形式,采用的是无铁芯转子。

空心杯电机主要有以下一些优良的特性。(1)节能特性:能量转换效率很高,其最大效率一般在70%以上,部分产品可达到90%以上(铁芯电机一般在70%)。(2)控制特性:起动、制动迅速,响应极快,机械时间常数小于28ms,部分产品可以达到10ms以内(铁芯电机一般在100ms以上);在推荐运行区域内的高速运转状态下,可以方便地对转速进行灵敏调节。(3)拖动特性:运行稳定性十分可靠,转速的波动很小,作为微型电机其转速波动能够容易控制在2%以内。

另外,空心杯电机的能量密度大幅度提高,与同等功率的铁芯电机相比,其重量、体积减轻1/3~1/2。

在实际使用中,由于空心杯电机需要的电流较大,因此常常将空心杯电机的一端接到V上面(微型四轴飞行器的V电压通常是cccc3.7V),另一端用MOS管控制通断,并接到GND上面。考虑到空心杯电机的电流可以达到2A以上,GND和V的导线应该在20mil以上。图cc2.3.5中,左图是常见的GND端的MOS管驱动电路,右图是常见空心杯电机。图2.3.5 空心杯电机驱动电路及实物

驱动的原理是,当信号输入端为高电平时,MOS管接通,则原本接到电机的一端的MOS管D极与GND连通,加上原本接到V的电cc机的另一条线,则电机开始旋转;当信号输入端为低电平时,则MOS管截止,电机停止。因此,通过调节信号输入端的PWM波占空比,就可以控制空心杯电机的转速快慢。在使用的时候,电机的两根电源线调换位置会导致旋转方向反向,注意电机的旋转方向与上面螺旋桨的配合。

选择这一驱动电路的时候,主要需要注意以下内容。(1)MOS管的性能。前文提到,空心杯电机的电流比较大,因此我们需要选择最大电流在2A以上的MOS管,如本书中的IRLML2502,其电流可以达到3A。(2)电机的参数。空心杯电机大多转速能达到50 000r/min左右,主要看其驱动电压是不是和自己的电源相匹配,如1S锂电池的3.7V电压。本书用的716空心杯电机参数如下。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载