MWC飞控源程序怎么阅读?

MWC飞控源程序怎么阅读?,第1张

MWC源程序是由arduino编写的,当然用arduino看了,你看不明白用别的编译器也看不明白啊,

代码中几个关键设置你自己先看看吧:

/**************** The type of multicopter ****************/

#define QUADX //启用四轴X模式

/**************** Motor minthrottle ****************/

#define MINTHROTTLE 1150 //解锁后油门怠速 默认1020

/**************** I2C speed ****************/

#define I2C_SPEED 100000L /念肢含/启用这个就够用了

/****************Combined IMU Boards****************/

#define FREEIMUv035_BMP //我是3200芯片

/**************** Cam Stabilisation ****************/

#define SERVO_MIX_TILT //启用云台

#define SERVO_TILT //启用云台

#define TILT_PITCH_MIN1020 //仰俯舵机最小值,不能低于1020

#define TILT_PITCH_MAX2000 //仰俯舵机最大值,不能高于2000

#define TILT_PITCH_MIDDLE 1500 //仰俯舵仔笑机中立点

#define TILT_PITCH_PROP 10//仰俯补偿角度,如果反向数字前加“-”号

#define TILT_ROLL_MIN 1020//副翼舵机同上

#define TILT_ROLL_MAX 2000

#define TILT_ROLL_MIDDLE 1500

#define TILT_ROLL_PROP10

#define CAM_SERVO_HIGH 2000 //快门舵机行程最高

#define CAM_SERVO_LOW 1020 //快门舵机行程最低

#define CAM_TIME_HIGH 1000 // 按下快门时间

#define CAM_TIME_LOW 1000// 按下快门时间

/****************Hexa Motor 5 &6 Pins****************/

//#define A0_A1_PIN_HEX //四轴不启用,六轴用

/****************Aux 2 Pin ****************/

#define RCAUXPIN8 //打开AUX2用于功能控制

//#define RCAUXPIN12 //作用同上,但不能与上面这行同时启用

/**************** Gyro filters ****************/

#define ITG3200_LPF_42HZ //我是3200芯片饥晌

/**************** SECTION 6 - OPTIONAL FEATURES ****************/

#define LEVEL_PDF //稳定模式增强,可以启用,默认不启用

/**************** TX-related ****************/

#define DEADBAND 6 //遥控信号误差,默认值就好

#define ALT_HOLD_THROTTLE_NEUTRAL_ZONE 20 //气压定高时有用,忽略油门摇杆轻微动作

/***************** GPS ******************/

#define GPS_SERIAL 2//启用端口

#define GPS_BAUD 9600 //我的GPS波特率

#define GPS_LED_INDICATOR //指示灯

/* Get your magnetic decliniation from here : http://magnetic-declination.com/

#define MAG_DECLINIATION 6.34f //当地磁偏角,上面一行有网址

/**************** Buzzer****************/

#define BUZZER 启用蜂鸣器

/**************** battery voltage monitoring ****************/

#define VBAT // 启用电压报警,要接好电源检测线

#define VBATSCALE 131

#define VBATLEVEL1_3S 114 // 11.4V时响一声 4S电池设置请模友补充

#define VBATLEVEL2_3S 111 // 11.1V时响两声

#define VBATLEVEL3_3S 99 // 9.9V时响三声

#define NO_VBAT 16 // Avoid beeping without any battery

/****************motor, servo and other presets **************/

#define MOTOR_STOP //解锁后电机不转

/**************** IMU complimentary filter tuning ****************/

#define ACC_LPF_FACTOR 100 //软件滤波器,优化传感器数据,减低震动等影响 以下全部启用

#define MG_LPF_FACTOR 4

#define GYR_CMPF_FACTOR 400.0f

#define GYR_CMPFM_FACTOR 200.0f

1.无人机飞控的介绍

无人机是无人驾驶飞机的简称(Unmanned Aerial Vehicle),是利用无线电遥控设备和自备的程序控制装置的不载人飞机,包括无人直升机、固定翼机、多旋翼飞行器、无人飞艇、无人伞翼机。广义地看也包括临近空间飞行器(20-100 公里空域),如平流层飞艇、高空气球、太阳能无人机等。从某种角度来看,无人机可以在无人驾驶的条件下完成复杂空中飞行任务和各种负载任务,可以被看做是 “空中机器人”。飞控子系统是无人机完成起飞、空中飞行、执行任务和返场回收等整个飞行过程的核心系统,飞控对于无人机相当于驾驶员对于有人机的作用,我们认为是无人机最核心的技术之一。飞控一般包括传感器、机载计算机和伺服作动设备三大部分,实现的功能主要有无人机姿态稳定和控制、无人机任务设备管理和应急控制三大类。

2.无人机飞控的特点

无人机之所以能够在空中自主飞行就是因为无人机也和人类一样,也拥有一个大脑,究竟是什么样的一个大脑才能够控制一架飞机在空中自动驾驶呢?下面我们来为你解答。

飞控,也称自驾仪。有了这套自驾仪,通过地面端的电脑就或者手机乱咐老就可以控制一架飞机自主起飞、自主导航、自主降落了。

什么是飞控呢?飞控就是飞机飞行控制器的简称,既然是控制器,那么这里边也应该有一台微电脑之类的来控制飞机,事实上现在的飞控内部除了一些传感器外还有就是多块单片机构成。现在的飞控内部使用的都是由三轴陀螺仪,三轴加速度计,三轴地磁传感器和气压计组成的一个IMU,也称惯性测量单元。

那么什么是三轴陀螺仪,什么是三轴加速度计,什么是三轴地磁传感器呢,气压计?它们在飞机上起到的是什么作用呢,这三轴又是哪三个轴呢?三轴陀螺仪,三轴加速度计,三轴地磁传感器中的三轴指的就是飞机左右,前后垂直方向上下这三个轴,一般都用XYZ来代表。左右方向在飞机中叫做横滚,前后方向在飞机中叫做俯仰,垂直方向就是Z轴。

陀螺都知道,小时候基本上都玩过,在不转动的情况下它很难站在地上,只有转动起来了,它才会站立在地上,或者说自行车,轮子越大越重的车子就越稳定,转弯的时候明显能够感觉到一股阻力,这就是陀螺效应,根据陀螺效应,聪明的人们发明出的陀螺仪。最早的陀螺仪是一个高速旋转的陀螺,通过三个灵活的轴将这个陀螺固定在一个框架中,无论外部框架怎么转动,中间高速旋转的陀螺始终保持一个姿态。

通过三个轴上的传感器就能够计算出外简亩部框架旋转哗升的度数等数据。由于成本高,机械结构的复杂,现在都被电子陀螺仪代替,电子陀螺仪的优势就是成本低,体积小重量轻,只有几克重,稳定性还有精度都比机械陀螺高。

说道这,大家也就明白陀螺仪在飞控中起到的作用了吧,它就是测量XYZ三个轴的倾角的。那么三轴加速度计时干什么的呢,别急,我来给你解答,刚刚说道三轴陀螺仪就是XYZ三个轴,现在不用说也就明白三轴加速度计也是XYZ三个轴。

当我们开车起步的一瞬间就会感到背后有一股推力,这股推力呢就是加速度,加速度是速度变化量与发生这一变化时间的比值,是描述物体变化快慢的物理量,米每二次方秒,例如一辆车在停止状态下,它的加速度是0,起步后,从每秒0米到每秒10米,用时10秒,这就是这辆车的加速度,如果车速每秒10米的速度行驶,它的加速度就是0,同样,用10秒的时间减速,从每秒10米减速到每秒5米,那么它的加速就是负数。三轴加速度计就是测量飞机XYZ三个轴的加速度。

我们日常出行都是根据路标或记忆来寻找自己的面向的,地磁传感器就是感知地磁的,就是一个电子指南针,它可以让飞机知道自己的飞行朝向,机头朝向,找到任务位置和家的位置。气压计呢就是测量当前位置的大气压,都知道高度越高,气压越低,这就是人道高原之后为什么会有高原反应了,气压计是通过测量不同位置的气压,计算压差获得到当前的高度,这就是整个IMU惯性测量单元,它在飞机中起到的作用就是感知飞机姿态的变化,例如飞机当前是前倾还是左右倾斜,机头朝向、高度等最基本的姿态数据,那么这些数据在飞空中起到的作用是什么呢?飞控最基本的功能控制一架飞机在空中飞行时的平衡,是由IMU测量,感知飞机当前的倾角数据通过编译器编译成电子信号,将这个信号通过信号新时时传输给飞控内部的单片机,单片机负责的是运算,根据飞机当前的数据,计算出一个补偿方向,补偿角,然后将这个补偿数据编译成电子信号,传输给舵机或电机,电机或舵机在去执行命令,完成补偿动作,然后传感器感知到飞机平稳了,将实时数据再次给单片机,单片机会停止补偿信号,这就形成了一个循环,大部分飞控基本上都是10HZ的内循环,也就是1秒刷新十次。

这就是飞控最基本的功能,如果没有此功能,当一个角一旦倾斜,那么飞机就会快速的失去平衡导致坠机,或者说没有气压计测量不到自己的高度位置就会一直加油门或者一直降油门。其次,固定翼飞控还有空速传感器,空速传感器一般位于机翼上或机头,但不会在螺旋桨后边,空速传感器就是两路测量气压的传感器,一路测量静止气压,一路测量迎风气压,在计算迎风气压与静止气压的压差就可以算出当前的空气流速,一般是m/s。

有了最基本的平衡、定高和指南针等功能,还不足以让一家飞机能够自主导航,就像我们去某个商场一样,首先我们需要知道商场的所在位置,知道自己所在的位置,然后根据交通情况规划路线。飞控也亦然,首先飞控需要知道自己所在位置,那就需要定位的,也就是我们常说的GPS,现在定位的有GPS、北斗、手机网络等定位系统,但是这里面手机网络定位是最差的,误差好的话几十米,不好的话上千米,这种误差是飞控无法接受的,由于GPS定位系统较早,在加上是开放的,所以大部分飞控采用的都是GPS,也有少数采用的北斗定位。

精度基本都在3米内,一般开阔地都是50厘米左右,因环境干扰,或建筑物、树木之类的遮挡,定位可能会差,很有可能定位的是虚假信号。这也就是为什么民用无。

3.请问大神,想做一个四旋翼飞行器都需要具备哪些知识

朋友你好,我是1个月之前入门四轴的菜鸟,分享一下入门经验吧。

首先,你要明确,是想买器材组装四轴还是自制飞控还是完全DIY四轴

1.所有器材全靠买的话,通过看攻略,高中生就可以组装成功。潜心钻研2周即可从零到爽飞

2.自制飞控的话,至少需要深入学习单片机编程知识、高等数学、控制论;具体来讲大致是姿态融合算法和PID控制算法,时 间看天赋看底子。比较难

3.完全DIY的话,理论上电调、马达都可以自己做,但这需要模拟电子、数字电子、电路分析等一系列基础的电子知识,大神级别。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12391416.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存