文档详情

四轴实用教程解析

我**
实名认证
店铺
DOCX
2.37MB
约15页
文档ID:112710866
四轴实用教程解析_第1页
1/15

小四轴飞行器制作过程电子1201 俞强 吴文杰 注:本文只讲我们做四轴遇到的实际的真正困扰我们的一些问题以及我们自身的经验,可以结合我们的报告来看,对于前人的经验以及我们觉得对我们有帮助的文章或帖子以及一些理论知识将在每一部分的讲解中给出,对于理论,本文尽量少讲甚至不讲,建议在看本文的每个部分的时候,写把给出的参考资料阅读一番一.飞行器大体结构1.飞行控制电路(飞控),稍后介绍,是飞行器设计的最关键部分2.电机+桨:720空心杯电机,注意不人为要阻止电机转动,很容易损坏720表示电机直径:7 MM ;电机长度:20 MM根据飞行器的具体大小以及飞行测试的实际情况自行选择其他规格电机桨要注意有正桨和反桨的区别,见下图:注意:正桨逆时针转动,反桨逆时针转动如果不确定,可以在安装好电机后,开电源看看是不是四个桨风都是向下吹的对于相同的电机,桨的大小不同,飞行效果也不一样,小桨效率低,但抗风性能好大桨效率高(就是省电),但抗风性能差3.电池: 400mah,3.7v,20c锂电池基本知识:1) 1000mAh的意思是指充满电的情况下用1安培的电流放电, 可以放电一个小时.400mAh的电池在在1安培电流充放电情况下, 充放电时间大约是25分钟. 如果采用4安培的电流放电, 放电时间大约在6分钟(25/4)左右.2) 20c指放电倍率。

放电倍率指的是放电电流, 以电池容量的倍数计算. 上述电池的放电电流可根据下面的公式计算:400mAhX25C=10A4. X 型四轴和 + 型四轴电机安放的区别:其实是要注意传感器mpu6050和电机的放置,因为传感器是有轴向的,图中大框为整块飞控,小框为mpu6050,飞行方向为上下左右X型四轴飞控和电机臂的安放:+ 型四轴:二.飞控电路1.飞控电路主要器件:1)mcu的选择:对于小四轴mcu实际上选择很多,只要满足:最少4路PWM,尽量有最少一路AD转换,尽量有硬件spi和i2c接口,频率够快即可如avr, msp430,stm32等还有人用stc产的增强型51单片机也做出来了,可以去看看 是全球首例 9 轴运动处理传感器它集成了 3 轴 MEMS 陀螺仪,3 轴 MEMS加速度计,以及一个可扩展的数字运动处理器 DMP(Digital Motion Processor),可用 I2C接口连接一个第三方的数字传感器,比如磁力计扩展之后就可以通过其 I2C 或 SPI 接口输出一个 9 轴的信号(SPI 接口仅在 MPU-6000 可用)MPU-60X0 也可以通过其 I2C 接口连接非惯性的数字传感器,比如压力传感器。

MPU-60X0 对陀螺仪和加速度计分别用了三个 16 位的 ADC,将其测量的模拟量转化为可输出的数字量为了精确跟踪快速和慢速的运动,传感器的测量范围都是用户可控的,陀螺仪可测范围为±250,±500,±1000,±2000°/秒(dps),加速度计可测范围为±2,±4,±8,±16g由于我们不使用它的dmp功能(该功能可以直接输出飞行器的姿态数据),因此,我们简单介绍几个常用的寄存器,详细说明请看芯片手册和寄存器手册:1.REGISTER 26 – CONFIGURATIONEXT_SYNC_SET的值确定采样的值将代替传感器数据寄存器中的最低有效位替换如下表所示:DLPF(数字低通滤波器)由DLPF_CFG 配置加速度计和陀螺仪根据DLPF_CFG 的值被过滤下表显示过滤情况:2. REGISTER 25–SAMPLE RATE DIVIDER该寄存器用于 MPU-60X0的陀螺仪采样频率输出设置传感器寄存器输出,FITO输出,DMP采样,Motion检测,ZeroMotion检测和 Free Fall检测都基于这个采样频率配置后SMPLRT_DIV=0采样频率=(陀螺仪或加速度计等的)输出频率/(1+SMPLRT_DIV)。

3 REGISTER 27 – GYROSCOPE CONFIGURATION这寄存器是用来触发陀螺仪自检和配置陀螺仪的满量程范围量程设为±2000度/s,即FS_SEL=3XG_ST 该位置位 X轴进行自检YG_ST 该位置位 Y轴进行自检ZG_ST 该位置位 Z轴进行自检FS_SEL 2位无符号数值.选择陀螺仪的满量程范围4 REGISTER 28–ACCELEROMETER CONFIGURATION这寄存器是用来触发加速度计自检和配置加速度计的满量程范围这个寄存器也可以用于配置数字高通滤波器(DHPF)量程设为±8g,即AFS_SEL=2.AFS_SEL 用于选择加速度计的满量程范围,如下表:XA_ST 该位置 1,加速度计的 X轴执行自检YA_ST 该位置 1,加速度计的Y轴执行自检ZA_ST 该位置 1,加速度计的 Z轴执行自检AFS_SEL 2位无符号值 选择加速度计的满量程范围5.REGISTER 107 – POWERMANAGEMENT 1这个寄存器允许用户配置电源模式和时钟源配置后唤醒mpu6000(设备刚上电处于睡眠模式,因此需要唤醒)时钟选择内部时钟源的PLL with Z axis gyroscope reference。

DEVICE_RESET=0, 该位置 1,重启内部寄存器到默认值复位完成后该位自动清0SLEEP=0, 该位置 1,MPU-60X0进入睡眠模式CYCLE 当失能 SLEEP且 CYCLE位置 1,MPU-60X0进入循环模式在循环模式,设备在睡眠模式和唤醒模式间循环,根据 LP_WAKE_CTRL(寄存器 108)设定的速率从加速度计采集样品数据TEMP_DIS=0, 该位置 1,失能温度传感器CLKSEL =3,3位无符号数值指定设备的系统时钟源7.REGISTER 106 – USER CONTROL这个寄存器允许用户使能或失能 FIFO缓冲区,I2C主机模式和主要 I2C接口FIFO缓冲区,I2C主机,传感器信号通道和传感器寄存器也可以使用这个寄存器复位当 I2C_MST_EN置 1,I2C主机模式使能在这个模式下,MPU-60X0作为 I2C主机通过辅助I2C总线连接外部传感器从机设备当该位清0,辅助I2C总线(AUX_DA 和AUX_CL)逻辑上由主 I2C总线(SDA和 SCL)驱动FIFO_EN=0,失能 FIFO缓冲区 FIFO缓冲区不能读取或写入FIFO缓冲区状态不能改变除非 MPU-60X0重新上电。

I2C_MST_EN=0,辅助 I2C总线(AUX_DA 和 AUX_CL)逻辑上由主 I2C总线(SDA和 SCL)驱动I2C_IF_DIS=1,MPU-6000:该位置 1,失能主 I2C接口并使能 SPI接口FIFO_RESET=0, 当 FIFO_EN=0该位置 1,复位 FIFO缓冲区复位后该位自动清 0,,此处置0不复位FIFO不使用FIFO,0或1都可以I2C_MST_RESET=0, 当 I2C_MST_EN=0该位置 1,复位 I2C主机复位后该位自动清 0SIG_COND_RESET=0,该位置 1,复位所有传感器的信号通道 (陀螺仪, 加速度计和温度传感器)这个操作会清除传感器寄存器复位后该位自动清0如果只想复位信号通道(不复位传感器寄存器),请使用寄存器 104,SIGNAL_PATH_RESET8.REGISTER 117 – WHOAMI(只读)这个寄存器用于标识设备的身份WHO_AM_I的内容是 MPU-60X0的 7位 I2C地址的头 6位最后一位地址由 AD0引脚确定AD0引脚的值跟寄存器无关寄存器的默认值为 0x68位0 和7 保留硬编码为0)9.REGISTERS 59 TO 64 – ACCELEROMETERMEASUREMENTS(只读)这个寄存器存储最近加速度计的测量值。

加速度计根据采样频率(由寄存器 25定义)写入到这些寄存器每个 16位加速度计测量值的满量程定义在 ACCEL_FS(寄存器 28)对于每个满量程的设置,ACCEL_xOUT里加速度计测量值的灵敏度最低分辨率(LSB)如下表:10.REGISTERS 67 TO 72 – GYROSCOPEMEASUREMENTS(只读)这个寄存器存储最近陀螺仪的测量值陀螺仪根据采样频率(由寄存器 25定义)写入到这些寄存器每个 16 位陀螺仪测量值的满量程定义在 FS_SEL(寄存器 27)对于每个满量程的设置,GYRO_xOUT里陀螺仪测量值的灵敏度最低分辨率(LSB)如下表: 对于寄存器,我们需要注意REGISTER 117 – WHOAMI(只读),这个寄存器与mpu6050的读写地址有关,AD0为mpu6050的一个引脚,由对该寄存器的描述可知,如果AD0接地,那么mpu6050的读地址为0xd0,如果AD0接高,那么mpu6050的读地址为0xd2关于电源,MPU-60X0 可支持 VDD 范 围 2.5V±5% ,3.0V±5%,或 3.3V±5%另外MPU-6050 还有一个 VLOGIC 引脚,用来为 I2C 输出提供逻辑电平。

VLOGIC 电压可取1.8±5%或者 VDD对于VLOGIC引脚,最好接VDD,当然,还要看使用的mcu的高低电平范围是多少,否则,mpu6050的高低电平可能和mcu认为的高低电平不同3)磁力计:又叫电子罗盘,磁力测量的是磁场强度在三个轴上的分量,但是在小四轴上,没有必要使用磁力计,因为电机和飞控电路靠的很近,我们知道,电机内部都是有磁铁的,因此会有很大的干扰,没有必要装磁力计4)数据传输恩,飞机做好,那用什么来控制呢,最容易想到的是蓝牙,射频和wifi,wifi由于功耗较大,我们暂不考虑我们做的飞行器支持用hc-05(蓝牙)和nrf54l01+(射频)来传输数据蓝牙模块实际上就相当于一个无线串口,蓝牙与蓝牙之间数据是透传的,也就是说配置好蓝牙模块之后,就可以把它当串口对待了。

下载提示
相似文档
正为您匹配相似的精品文档