“开源四轴飞行器系统/zh”的版本间的差异
(→Joypad解锁四轴) |
|||
第123行: | 第123行: | ||
==程序烧写== | ==程序烧写== | ||
− | + | {{Upload | |
− | + | |nameA=[[Microduino-CoreRF/zh]]、[[Microduino-USBTTL/zh]] | |
− | + | |nameB=[[Microduino-USBTTL/zh]] | |
− | + | |boardName=Microduino/mCookie-Core RF(128rfa1) | |
− | + | |fileName=“MultiWii_for_CoreRF.ino | |
− | + | }} | |
− | |||
− | |||
==操作说明== | ==操作说明== | ||
第137行: | 第135行: | ||
====自动校正(推荐)==== | ====自动校正(推荐)==== | ||
− | * | + | *程序烧录好默认免上位机配置的模式,在此模式下到手即玩 |
+ | *此模式的陀螺仪校准、自稳、解锁方式默认为以下配置: | ||
+ | **开机会自动校正陀螺仪 | ||
+ | **开启自稳功能并开启自稳模式 | ||
+ | **AUX解锁方式默认无效,采用传统解锁方式 | ||
====手动校正==== | ====手动校正==== | ||
− | * | + | *当玩家自己想手动校正四轴飞行器时,可参考以下步骤 |
− | ** | + | *关闭自动校正功能 |
− | + | **要先关闭自动校正,才可进行手动配置 | |
+ | **打开四轴代码中的'''config.h'''文件,注释以下所有代码即可: | ||
+ | ***//#define MICRODUINO_AUTO_CALIBRATING //免上位机配置,开机自动校正陀螺仪 | ||
+ | ***//#define MICRODUINO_AUTO_ANGLE //免上位机配置,开启自稳功能 | ||
+ | ***//#define MICRODUINO_AUTO_ARM //免上位机配置,AUX1通道一键解锁,此时传统解锁方法失效 | ||
− | * | + | *连接四轴与电脑 |
− | ** | + | **用USB线将电脑与四轴上的'''[[Microduino-USBTTL/zh]]'''上连接起来 |
− | **''' | + | **并确保'''[[Microduino-CoreRF/zh]]'''、'''[[Microduino-10DOF/zh]]'''也已正常叠堆 |
+ | |||
+ | *水平摆正四轴 | ||
+ | **确保四轴机架已经水平放在桌面上,为接下来校正做好准备 | ||
+ | |||
+ | *连接上位机软件 | ||
+ | **打开'''MultiWiiConf'''文件夹下对应系统类型的上位机程序 '''(注意:需拥有JAVA环境)''' | ||
+ | **在上位机软件左侧,'''PORT COM'''选择对应串行端口,进行连接 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
*设置PID参数 | *设置PID参数 | ||
− | ** | + | **我们推荐你载入我们的配置文件 |
+ | **在上位机软件左侧,'''LOAD'''选择目录'''\MultiWiiConf\Microduino.mwi'''中的文件 | ||
+ | **你也可以通过鼠标左键拖拽对应对象上的数值完成PID修改 | ||
+ | **点击WRITE将设置写入飞控,完成设置 | ||
[[File:Microduino_QuadCopter_MultiWiiConf4.jpg|600px|center]] | [[File:Microduino_QuadCopter_MultiWiiConf4.jpg|600px|center]] | ||
− | * | + | *开启自稳模式'''(重要)''' |
− | ** | + | **在上位机的通道映射区找到'''AUI1'''对应的'''ANGLE'''功能 |
− | ** | + | **激活'''LOW'''、'''MID'''、'''HIGH'''三组(在方块处点击鼠标左键,灰色方块变成白色即完成激活) |
− | ** | + | **点击WRITE将设置写入飞控,完成设置 |
[[File:Microduino_QuadCopter_MultiWiiConf_ANGLE.jpg|600px|center]] | [[File:Microduino_QuadCopter_MultiWiiConf_ANGLE.jpg|600px|center]] | ||
+ | *加速度计校正 | ||
+ | **点击'''CALIB_ACC'''按钮 | ||
+ | **大约5秒内,等待数据平稳即可 | ||
+ | **点击WRITE将数值写入飞控,完成校正 | ||
+ | |||
+ | |||
*使用传感器值排除故障 | *使用传感器值排除故障 | ||
**将机身倾斜到右侧(左侧向上抬起): | **将机身倾斜到右侧(左侧向上抬起): | ||
− | *** | + | ***ACC_ROLL和GYRO_ROLL数值升高 |
− | *** | + | ***ACC_Z数值降低 |
+ | |||
**将机身往前倾(尾部向上抬起): | **将机身往前倾(尾部向上抬起): | ||
− | *** | + | ***ACC_PITCH和 GYRO_PITCH数值升高 |
− | *** | + | ***ACC_Z数值降低 |
+ | |||
**将机身顺时针方向转动(偏航): | **将机身顺时针方向转动(偏航): | ||
***CYRO_YAW数值升高 | ***CYRO_YAW数值升高 | ||
+ | |||
**机身保持水平: | **机身保持水平: | ||
− | *** | + | ***ACC_Z数值为正 |
+ | |||
+ | *完成校正后我们推荐你取下'''[[Microduino-USBTTL/zh]]]模块,以减轻飞行重量 | ||
− | |||
− | |||
− | |||
===Joypad遥控指南=== | ===Joypad遥控指南=== | ||
第193行: | 第208行: | ||
*特别要注意的是电池使用说明:'''[https://www.microduino.cn/wiki/index.php/Microduino-Joypad_Getting_start/zh#Step-3_.E7.94.B5.E6.B1.A0.E9.80.9A.E7.94.B5 电池使用说明]''' | *特别要注意的是电池使用说明:'''[https://www.microduino.cn/wiki/index.php/Microduino-Joypad_Getting_start/zh#Step-3_.E7.94.B5.E6.B1.A0.E9.80.9A.E7.94.B5 电池使用说明]''' | ||
− | ==== | + | ===Joypad解锁/加锁指南=== |
− | *''' | + | ====传统法==== |
− | ** | + | *确认Joypad对应开关状态: |
− | ** | + | **不论加锁或解锁,都需确认Joypad开关状态如下: |
− | ** | + | **Joypad'''左上拨档开关'''拨下(油门锁定开启) |
− | ** | + | **Joupad'''右上拨档开关'''拨上(摇杆幅值最大) |
− | + | ||
+ | *四轴初始化: | ||
+ | **将四轴放置在水平地面并开启电源 | ||
+ | **等待四轴上指示灯停止闪烁 | ||
+ | |||
+ | *解锁: | ||
+ | **将'''左摇杆'''由中点打到'''最右''',等待2S左右 | ||
+ | **若指示灯'''长亮'''即说明完成'''解锁''',否则'''左摇杆'''回中,重新操作本步 | ||
+ | **如果尝试多次不能解锁,应复位四轴飞行器核心后再重新尝试 | ||
+ | |||
+ | *加锁: | ||
+ | **在已经'''解锁''',并且四轴'''静止'''的情况下 | ||
+ | **将'''左摇杆'''由中点打到'''最左''',等待2S左右 | ||
+ | **若指示灯'''熄灭'''即说明完成'''加锁''',否则'''左摇杆'''回中,重新操作本步 | ||
+ | |||
+ | ====一键法==== | ||
+ | *修改代码,开启一键解锁 | ||
+ | **打开四轴代码中的'''config.h'''文件,取消以下代码注释,重新下载四轴程序: | ||
+ | ***#define MICRODUINO_AUTO_ARM //免上位机配置,AUX1通道一键解锁,此时传统解锁方法失效 | ||
+ | |||
+ | *确认Joypad对应开关状态: | ||
+ | **不论加锁或解锁,都需确认Joypad开关状态如下: | ||
+ | **Joypad'''左上拨档开关'''拨下(油门锁定开启) | ||
+ | **Joupad'''右上拨档开关'''拨上(摇杆幅值最大) | ||
+ | **四轴的AUX1通道为低(key1按键控制) | ||
+ | |||
+ | *四轴初始化: | ||
+ | **将四轴放置在水平地面并开启电源 | ||
+ | **等待四轴上指示灯停止闪烁(如果一直闪烁,请检查AUX1通道是否为低) | ||
+ | |||
+ | *解锁: | ||
+ | **按下Joypad的'''key1'''键,将'''AUX1通道'''置高 | ||
+ | **若指示灯'''长亮'''即说明完成'''解锁''' | ||
+ | **如果尝试多次不能解锁,应复位四轴飞行器核心后再重新尝试 | ||
+ | |||
+ | *加锁: | ||
+ | **在已经'''解锁''',并且四轴'''静止'''的情况下 | ||
+ | **按下Joypad的'''key1'''键,将'''AUX1通道'''置低 | ||
+ | **若指示灯'''熄灭'''即说明完成'''加锁''' | ||
+ | |||
− | *''' | + | ===Joypad控制指南=== |
− | ** | + | *'''务必阅读'''以下文字,来保证你的'''安全''': |
− | ** | + | **四轴已经解锁,并且放在空阔地带 |
− | ** | + | **保证你的Joypad有充足电量 |
+ | **确保你不会在四轴解锁状态,先关闭Joypad | ||
+ | **四轴的机头方向为橘黄色桨朝向 | ||
+ | **解除油门锁定前,确保Joypad的油门是关闭的(左摇杆调至最低) | ||
− | + | *初学者建议用以下操作来提高操控的精细度,使飞行更稳定 | |
− | * | + | **Joupad'''右上拨档开关'''拨下(摇杆幅值最小) |
− | * | ||
− | * | ||
[[File:Microdu1ino12_Joypad1_ config5-quad.jpg|400px|center]] | [[File:Microdu1ino12_Joypad1_ config5-quad.jpg|400px|center]] | ||
+ | |||
+ | [[File:Microduino_QuadCopter_Remote6.jpg|600px|center]] | ||
+ | |||
+ | *接下来,你可以准备飞行了: | ||
+ | **将Joypad'''左上拨档开关'''拨上(油门锁定关闭) | ||
+ | |||
*轻轻推动油门使四个螺旋浆转起来 | *轻轻推动油门使四个螺旋浆转起来 | ||
− | * | + | *慢慢加大油门,使得四轴上升至1米左右高度,以避免近地气流干扰 |
− | * | + | *然后通过方位摇杆控制四轴平衡 |
− | + | ||
*操作注意 | *操作注意 | ||
**将左上边是油门控制开关,打开(拨到上面),才能进行控制,你可以摇动摇杆,观察屏幕的变化 | **将左上边是油门控制开关,打开(拨到上面),才能进行控制,你可以摇动摇杆,观察屏幕的变化 | ||
第227行: | 第288行: | ||
*关于安装 | *关于安装 | ||
**四旋翼飞行器的四个螺旋桨是有顺序的,如果安装出错,很有可能导致飞行器飞不起来。 | **四旋翼飞行器的四个螺旋桨是有顺序的,如果安装出错,很有可能导致飞行器飞不起来。 | ||
− | **锂电池正负极,红线为正极,黑线为负极,一旦接错很容易烧坏电路,尤其在给Microduino- | + | **锂电池正负极,红线为正极,黑线为负极,一旦接错很容易烧坏电路,尤其在给Microduino-Joypad供电时,很容易插反,这要格外注意。 |
− | |||
− | |||
− | |||
− | |||
*关于飞行控制 | *关于飞行控制 | ||
**务必选择一个空旷的地方就行试飞,比如学校的操场上,公园比较大的草坪。 | **务必选择一个空旷的地方就行试飞,比如学校的操场上,公园比较大的草坪。 | ||
第239行: | 第296行: | ||
**飞行器底板有直接给飞行器电池充电的功能,只需直接插USB线给底板供电,就可以给电池充电 | **飞行器底板有直接给飞行器电池充电的功能,只需直接插USB线给底板供电,就可以给电池充电 | ||
**joypad利用干电池供电需要先把电源选择开关拨到Dry bat,安好干电池,用USB线给joypad供一下电'''立刻拔掉'''(安好干电池后不能长时间用USB线供电),就可以成功激活干电池供电功能 | **joypad利用干电池供电需要先把电源选择开关拨到Dry bat,安好干电池,用USB线给joypad供一下电'''立刻拔掉'''(安好干电池后不能长时间用USB线供电),就可以成功激活干电池供电功能 | ||
− | + | 若出现其他问题,欢迎在论坛讨论部分提出 | |
|} | |} |
2016年8月13日 (六) 11:34的版本
Language | English |
---|
目录概述四旋翼飞行器,又称为四旋翼直升机,顾名思义,是一种具备4个螺旋桨的飞行器,与直升机类似,可以完成空中悬停、飞行的动作。传统直升机会用一个主桨来产生推力,用一个尾桨来抵消主桨产生的扭矩(即锁尾),而四旋翼飞行器对角螺旋桨采用正反桨设计,从而不需要额外的机构进行“锁尾”。4个螺旋桨呈十字形对称分布,1和2 号桨逆时针转动,而3和4号桨顺时针转动,但4个螺旋桨产生的推力相同时,两组正反桨对机身所施加的反扭矩两两抵消,使得绕垂直方向旋转的反扭矩平衡,从而确保了航向的稳定。 | ||||||||||||||||||||||||||||||||||||
根据飞行器自定义的首尾方向,可以将四旋翼飞行器分为十字模式和X字模式两种。十字模式意味着首尾的方向会指向某个螺旋桨,而X字模式则是指首尾方向指向两个螺旋桨中间。 | ||||||||||||||||||||||||||||||||||||
大多数飞行器采用的是X字模式。X字模式相对于十字模式来说,控制起来更加困难,但动作的灵活性会更高。
原理系统架构如图是四旋翼飞行器的结构简图。飞行器包括主要包括遥控器(航模遥控)、飞行控制器以及四个电机组成。而飞行控制器又包括微控制器、遥控信号接收模块、传感器模块(陀螺仪、加速度计、电子罗盘和GPS定位模块)和电机驱动模块。 飞行原理垂直运动即飞行器垂直上升或下降。正如前文所说的,四个电机保持在同一转速,就能够在水平方向上保持稳定。如图2.2.1所示,如果四个电机增加到在同一个转速,产生的推力足以克服飞行器自身的重力,便能够上升;反之,如果四个电机同时降低到同一个速度,产生的推力无法克服飞行器的重力,便可以下降。如果外界没有其他的扰动,四个电机产生的推力恰好克服飞行器的重力,这样,飞行器就可以悬停在空中。 | ||||||||||||||||||||||||||||||||||||
只要让四个电机保持在相同转速,便能够让飞行器平稳地垂直运动,相对来说比较简单。
前后运动和侧向运动电机1为飞行器头部,而电机2为飞行器尾部。
偏航运动前面介绍的三种运动都是空间三个轴上的平移,接下来要介绍的三种运动是绕着三轴的旋转。 | ||||||||||||||||||||||||||||||||||||
偏航运动就是在水平方向上的左右转动,即绕着Z轴的旋转。旋翼在转动的过程中,由于空气阻力的作用,会形成与转动方向相反的反扭矩。偏航运动就是利用反扭矩实现的。当飞行器悬停时,4个电机的转速相同,两组正反扭矩相互抵消,维持平衡。当四个电机转速不完全相同时,不平衡的反扭力会引起四旋翼飞行器水平转动,从而实现偏航运动。如图所示,提升电机1和2的转速,同时降低电机3和4的转速,1和2 电机产生的顺时针反扭矩大于3和4电机产生的逆时针反扭矩,而且总的向上推力没有发生变化,于是机身在水平面上顺时针转动,又不会出现垂直位移。逆时针转动正好相反。
俯仰运动和滚转运动俯仰运动是指在Y轴上的旋转,而滚转运动则是在X轴上旋转。 | ||||||||||||||||||||||||||||||||||||
如图所示,提升电机1的转速,降低电机2的转速,两者转速的变化量应该一样,同时保持电机3和4转速不变。机身头部的推力大于尾部的推力,不平衡的力矩使得机身仰起。同样的,俯身运动则是降低电机1的转速,而提升电机2的转速,产生一个向前倾的力矩。 | ||||||||||||||||||||||||||||||||||||
同样是因为中心对称的缘故,滚转运动与俯仰运动的原理一样。维持电机1和2的转速不变,改变电机3和4的转速,产生不平衡的力矩,使得机身绕着X轴做出滚转的运动。
控制流程遥控器发出控制命令,比如起飞、向左飞等等,控制信号通过无线接收
| ||||||||||||||||||||||||||||||||||||
因为四旋翼飞行器的四个电机组合控制才能实现6个方向的运动,是一个欠驱动系统,必须要有一个飞行控制器来控制整个系统。 | ||||||||||||||||||||||||||||||||||||
在飞行控制器中,传感器,如陀螺仪和加速度计,是必须的。微控制器计算这两个传感器所传来的数据,获得当前飞行器的姿态,然后通过PID等算法调整电机的转速,以保持飞行器的稳定。当然还可以加入电子罗盘掌握机身的方向,加入GPS模块确定飞行器的地理位置。所以简单来说,四旋翼飞行器是一个具备两个闭环控制的系统,大环由遥控接收设备注入输入量,小环由姿态传感器注入输入量。 | ||||||||||||||||||||||||||||||||||||
当然,这个过程中也有一些技术细节需要设计,比如传感器读入的数据需要进行滤波、俯仰(Pitch)、滚转(Roll)、偏航(Yaw)等动作的PID算法设计及调整。这是一个较复杂的综合系统,如果玩家想在理论方面从零开始学习则需要介绍许许多多,受篇幅所限,请参考相关资料,这里就不详细介绍了。 | ||||||||||||||||||||||||||||||||||||
总的来说,所使用四旋翼飞行套件包括飞行器和遥控器两大部分,两者通过CoreRF传输控制指令。 | ||||||||||||||||||||||||||||||||||||
飞行器主要由带4个电机的机架、Microduino-CoreRF和Microduino-10DOF等模块组成。其中Microduino-10DOF集成了四种传感器,分别是三轴加速度+三轴陀螺仪传感器(MPU6050)、磁场强度传感器(HMC5883L)、数字气压传感器(BMP180)。通过I2C进行通信。 | ||||||||||||||||||||||||||||||||||||
MPU6050是其中最主要的姿态传感器,内部集成了三轴加速度计和三轴陀螺仪,不仅消除了组合加速度计和陀螺仪时容易出现的对准误差,而且内置了可编程的低通滤波器,即使在飞行器经受较大振动时,控制程序通过配置适当频率的低通滤波器,可以滤掉高频振动。这种处理方式可以减小四旋翼飞行器自身的振动对陀螺仪数据产生的影响。
四轴飞行器机架搭建与调试四旋翼飞行器材料清单
程序下载
程序烧写
操作说明校正四旋翼飞行器指南自动校正(推荐)
手动校正
Joypad遥控指南
Joypad解锁/加锁指南传统法
一键法
Joypad控制指南
程序说明注意问题尽管在前面的内容中列出了不少要注意的一些问题,这里再总结一下。
若出现其他问题,欢迎在论坛讨论部分提出 |