文章目录

  • 注意事项
  • 技术参数
  • 遥控器操作说明
  • 调试界面
  • 遥控器设置
  • 遥控器开发环境配置
  • 四轴飞行过程往一边偏

注意事项

  • 遥控器充电时开关需打到 OFF 处,否则充不了电;
  • 新手在室内飞行时强烈建议使用默认设置下飞行,室外飞行强烈建议设置飞行速度为
    中速模式(中速、高速模式抗风能力强),因为室外风大,四轴抵抗不了;
  • 蜂鸣器连续报警说明遥控器或者四轴电量低,请为四轴或者遥控器充电;
  • 默认设置为定高、无头、低速、翻滚禁能。

技术参数



“X” 型

  • KEY_J1:一键起飞、一键降落;
  • KEY_L:紧急停机;
  • KEY_R:4D 翻滚、查看调试界面;
  • KEY_J2:微调;
  • 油门遥杆(左):实现四轴上升、下降、左旋转、右旋转;
  • 方向遥杆(右):实现四轴向前、后、左、右运动。

遥控器操作说明


四轴校准:

将四轴水平放置然后开机,并等待传感器校准通过,传感器校准通过后遥控器蜂鸣器会发出“滴”一声,表示已校准通过,校准通过后方可飞行。(注意:校准过程不能手持四轴 或倾斜放置,否则导致传感器校准不通过)

  • A:无线连接信号强度:已连接(左)、未连接(右);
  • B:控制模式:H 定高模式(左)、M 手动模式(右)、T 定点模式;
  • C:遥控器状态:加锁(左)、解锁(右);
    解锁:油门摇杆(左)往左下方打,方向摇杆(右)往右下方打(八字形状)。
    加锁:油门摇杆(左)往右下方打,方向摇杆(右)往左下方打(V 字形状)。
  • D:飞行模式:无头(左)、有头(右);
  • E:电量显示:遥控器电量(加锁状态)、四轴电量(解锁状态)。

调试界面

  • A:遥控器发送控制数据:油门(Thrust)、俯仰(pitch)、横滚(roll)、航向(yaw)。
  • B:四轴返回数据:电量(BAT)、俯仰(pitch)、横滚(roll)、航向(yaw)。
  • C:无线信号强度值 RSSI:40-95之间,值越小信号越好。
  • D:通信失败次数 FNUM:1S 内通信失败次数。

遥控器设置

1. 控制模式

2. 飞行模式

3. 飞行速度

4. 翻滚使能

5. 扩展模块

6. 摇杆校正

7. 匹配四轴

遥控器开发环境配置

MDK5-keil + JLink

遥控器使用的MCU为STM32F103C8T6,在MDK5中配置STM32F1的开发环境。

① 打开 MiniFly Remoter Firmware_F103 源码工程,弹出Pack Installer,直接选择文件安装STM32F1xx的pack文件(File -> Import -> Keil.STM32F1xx_DFP.2.0.0.pack)。

② 成功安装好后,编译(Build)程序,显示通过(Device中自动配置为STM32F103C8)。

③ 下载器驱动安装。

④ 安装完成后将 USB 线连接好下载器并插入电脑,然后打开设备管理器,在通用串行总线控制器中即可找到 J-Link driver

然后将下载器连接到遥控器,下载器通过 6Pin 线连接到遥控器,注意将下载器开关打到 STM32 处。

但是我遇到了一个很棘手的问题,就是无法将程序下载到遥控器中:



后来搞了很久才发现是下载口与跳线接触不良的问题,搞定后就能下载程序了。

一个难关又接着一个难关,我依次烧录了 Bootloader 和 Firmware,发现上电后,遥控器只有指示灯亮着,LCD却黑屏了!

为了解决这个问题,我花费了好大的精力与时间,最终找到了办法(固件升级):
(1)我先安装STM32 USB 虚拟串口驱动;

(2)在flash Download下设置erase fullchip 烧录 Bootloader程序,此时遥控器蓝色LED灯闪烁(用以引导 Firmware程序);

(3)接着将 USB 线连接好遥控器插入电脑,打开固件升级软件升级固件(固件为Firmware_F103_V1.3.bin)

至此,遥控器终于恢复正常了!

与客服技术支持交流后,我才知道原本的开发是使用MDK 5.30的,而我使用的是V5.33,版本不同,存在bug(有可能是烧录Firmware程序时,将Bootloader程序擦除了,即使我将flash设置为erase sectors或do not erase也不行),导致我使用MDK直接下载固件程序后,遥控器无法正常使用。具体解决办法就是(即上文)使用MDK下载Bootloader程序后,再使用固件升级软件通过烧录.bin文件将固件程序下载进遥控器中,程序烧录完毕后需要进行四轴和遥控器的重置以进行匹配通信(重置并不会改变用户烧录的程序,即不具有恢复出厂的功能,其类似于单片机的复位,可放心进行二次开发)。

下载器为JLink OB。

遥控器开机时,先运行 Bootloader 程序,判断当前KEY_L 键是否按下,如果按下大于 3S 则留在 Bootloader 程序等待固件升级,否则跳转至固件程序,此时编译固件并下载即可。所以正常开发只需要下载调试APP代码就行了,即只下载固件程序。

注意:
下载时,芯片必须是上电状态!
代码下载和调试前,需要将下载器开关拨到STM32档。
bootloader起始地址(BOOTLOADER_START_ADDR) : 0x8000000
固件起始地址(FIRMWARE_START_ADDR) : 0x8002400
(默认已配置好起始地址)

匿名科创地面站使用

匿名科创地面站支持多种通信方式,这里我们使用的是串口方式通信。
我们可以使用使用匿名科创地面站查看飞控姿态,显示数据波形及 PID 调试。

① 将 USB 线连接四轴或遥控器

四轴和遥控器的固件都支持和匿名科创地面站通信、调试。使用 USB 线连接四轴或遥控器,在设备管理器中找到端口号。
注意:使用遥控器和地面站通信时,只有四轴是开机状态才有数据上传,因为遥控器只做数据转发功能。

② 打开软件选择串口通信

打开软件后点击左边一列图标的程序设置,即可显示程序设置界面。
我们选择通信连接方式为 COM 方式,然后选择端口号,设置波特率为 500000,最后点击右下角的打开连接,即可通信。当有数据上传时,RX:显示接收到数据的个数。

③ 查看飞控状态

点击左边一列图标的飞控状态即可显示飞控状态界面。飞控状态显示主要包括当前四轴姿态(PIT\ROL\YAW)、接收机(遥控器控制数据)、电机输出(PWM)、传感器原始数据(ACC\GYR\MAG)、气压高度(单位 cm)、电池电压。飞行模式和 GPS信息功能未使用。

④ 查看数据波形

点击左边一列图标的数据波形即可显示数据波形界面,。首先选中我们要显示的数据,再点击飞控数据即可显示数据波形。

⑤ PID调试

点击左边一列图标的飞控设置即可显示飞控设置界面,。飞控设置包括PID 设置、飞行模式设置、传感器校准,这里我们只使用了 PID 设置的功能。读取飞控:读取四轴当前 PID 参数。写入飞控:将显示的所有 PID 参数写入到飞控。恢复默认值:将四 轴 PID 参数恢复成出厂默认值。这里我们总共使用了 7 组 PID,分别是 roll 速率、pitch 速 率、yaw 速率、roll 角度、pitch 角度、yaw 角度、高度位置。
注意:显示的 PID 数值是实际数值的 10 倍。由于地面站 PID 数据传输只能是 int16 类型不能浮点型,所以将实际数值乘以 10 再上传,同时写入时也除以了 10。

PID 调试是四轴最难的一部分,也是最核心的一部分,PID 参数是否合理直接影响四轴飞行的效果。

PID 三项的的意义:P 是系统平衡的回复力; I 是消除误差,有辅助 P 的作用;D 是阻尼,抑制超调和干扰的作用。调试时一般先调节 P 找到临界震荡的 P 值,然后减小一点 P 值,增加 I 值消除静态误差,最后增加 D 值抑制干扰。要不要加 I 和 D 需根据实际情况而定。调试定高 PID 时,需要 P 和 D 同时调。

四轴飞行过程往一边偏

如果偏飞得厉害,先检查遥控器微调值是否为 0,如果不为零,就先调整为 0 再试飞看飞行效果。如果通过微调的方式不能纠正偏飞问题,那就是其他原因所致。

① 电机坏了,电机坏了也分好几种情况,电机蓝色底座脱离或者脱落,这种情况导致电机输出动力减弱,甚至有烧坏 MOS 管的可能;还有,电机输出轴弯曲,输出轴弯曲,装上桨叶转动起来就会因为不平衡产生很大的震动,震动的直接结果就是导致传感器读数据精度变差甚至错误;还有可能是电机长时间工作,轴承或者电刷磨损厉害,导致动力减弱,因为有刷电机是有寿命的,按正常使用来说,
这个电机还是有几个月寿命的。对于这种电机坏了的情况,我们只需要换上新的电机即可。

② 偏飞也有可能是桨叶不平衡所致,因为空心杯转速高,装上不平衡桨叶高速转动,就会产生很大震动,过大的震动导致传感器度数精度降低甚至错误。怎么看桨叶是否平衡呢?最直接的就是看桨叶是否磨损,变形以及残缺等。如果这种情况,直接换上新的桨叶即 可,注意桨叶是有正反的。

③ 偏飞也有可能是信号干扰导致,信号干扰导致四轴接受不到控制信号,从而出现偏飞的情况,如何判断干扰呢?在可控制范围内,遥控器控制四轴飞行,无干扰的时候,遥控器蓝色通讯指示灯常亮;有一点点干扰(不会影响飞行)的时候,遥控器红色指示灯偶尔闪烁一下,蓝色指示灯基本还是常亮;当干扰变严重,遥控器红色指示灯常亮,这时候四轴基本接收不到遥控器控制信号了,偏飞,乱飞的可能性就很大了。如果遇到干扰严重的情况,需要重置遥控器和四轴,然后再匹配四轴和遥控器,如果还是有干扰,请再次重置遥控器和四轴,然后匹配,通常重置两三次就可以解决这个问题。

MiniFly微型四轴学习与开发日志(一)相关推荐

  1. MiniFly微型四轴学习与开发日志(三)

    文章目录 adc.c /joystick.c /remoter.c 代码详解 任务创建与调度 嵌入式实时操作系统 FreeRTOS 任务基础知识 adc.c /joystick.c /remoter. ...

  2. MiniFly微型四轴学习开发日志(三)——关于姿态解算的相关算法

    目录 大致内容介绍 欧拉角与四元数 互补滤波算法的姿态解算 一些疑问 大致内容介绍 之前两篇日志当中提到了关于角度-角速度串级PID与定高Z轴PID配合对四轴进行姿态矫正的大概算法.但是对于测量而来的 ...

  3. MiniFly微型四轴学习开发日志(四)——关于四轴硬件知识以及如何通过STM32输出PWM方波控制电机

    目录 四轴硬件知识 通过STM32输出PWM方波 一.四轴硬件知识 四轴无人机需要的硬件大致有以下几种:电子调速器(俗称电调),螺旋桨,电子(一般用无刷电机),飞行控制板,机架,电池,充电器,遥控器等 ...

  4. MiniFly微型四轴开发学习日志(一)——MiniFly 微型四轴软件原理

    文章目录 微型四轴技术参数 NRF51822 程序框架 STM32F411 程序框架 姿态解算和 PID 算法总体流程 微型四轴技术参数 Minifly微型四轴采用双MCU,即STM32F411与NR ...

  5. 菜鸟学习Android开发日志

    准备大三了,大二的时候因为自身专业为电子信息工程,一度想要一直走嵌入式的路,后来经过一番调查,为了以后的工作问题,我还是毅然放弃了嵌入式,选择了安卓应用开发.这个暑假我在学校过,并没有选择回家,然后再 ...

  6. 51单片机 | 如何学习单片机 | 开发板功能介绍 | 开发板使用方法 | 51单片机介绍

    文章目录 一.如何学习单片机 1.学习哪种类型的单片机 2.学习单片机的最佳方法 3.学习单片机的准备工作 4.学习单片机的常见疑问 二.开发板功能及使用介绍 1.开发板功能介绍 2.开发板使用方法 ...

  7. ue4 无限地图_RPG游戏开发日志13:无限地图的实现

    写在前面 本项目同步上传于coding上,国内读者可以通过在coding下载项目. 也欢迎你加入我的UE4学习交流QQ群:872537977.如果你喜欢我写的文章,也希望你点赞.收藏.转发.谢谢! 如 ...

  8. 代码拾取图片某一点的颜色_RPG游戏开发日志7:道具拾取与存放

    本项目同步上传于github和coding上,国内读者可以通过在coding下载项目. 也欢迎你加入我的UE4学习交流QQ群:872537977.如果你喜欢我写的文章,也希望你点赞.收藏.转发.谢谢! ...

  9. 基于WPF+XMPP的IM程序开发日志 之二 WPF线程模型

    循例地在开始正文前说些废话.正如这篇博客的题目--开发日志,这系列的博客是我在编写这个IM的一些日志,或者另外一个说法:笔记.并不是一些系统的文章,例如"XX学习教程".这些博客里 ...

最新文章

  1. 并查集 HDOJ 1232 畅通工程
  2. Segment Routing — SRv6 — 网络架构与应用场景
  3. Sql2008R2 日志无法收缩解决方案
  4. 08.存储Cinder→4.Cinder组件详解→3.cinder-volume
  5. 简单使用TFS管理源代码
  6. HDU 1033 水题
  7. 计算机教学论研究生,课程与教学论(计算机)专业硕士学位研究生培养方案
  8. 如何在20分钟内批量部署20台ESXi服务器?
  9. 广东电网笔试_内容多,备考时间少?广东电网笔试如何准备?
  10. windows 2003 英文版支持中文显示、中文输入的设置方法
  11. 最新达内大数据视频教程
  12. keil5手动下载并添加pack
  13. mysql数据库的基本使用流程
  14. 图着色问题(超详细!!!)
  15. 算法基础篇-05-排序-LowB三人组(冒泡/选择/插入排序)
  16. 按照账号定位持续发视频,数据不会太差!
  17. Ubuntu简单使用操作
  18. aspen如何确定塔板数_Aspen中有关回流比、塔板数、进料板位置等灵敏度分析作用...
  19. 【CSS+HTML】实现鼠标失去鼠标焦点动画
  20. 腾讯新使命科技向善,首先对公众号善意一些可以吗?

热门文章

  1. php可以做游戏脚本吗,25个PHP游戏编程脚本代码(2)
  2. 面试谈薪有技巧,学会这2个方法,再也不怕被压工资了
  3. FPGA|Signal Tap抓取波形
  4. testlink结合xmind使用
  5. 以Web of Science 为例,使用Citespace进行文献计量分析的一般步骤
  6. 论文笔记《Item-based Collaborative Filtering Recommendation Algorithms》基于物品的协同过滤算法
  7. 使用 AWS EC2 实现快速下载树莓派镜像资源
  8. 【图像分类】基于PyTorch搭建LSTM实现MNIST手写数字体识别(双向LSTM,附完整代码和数据集)
  9. 基于stm32单片机农业智能温室大棚温湿度光照测量报警系统Proteus仿真(源码+仿真+论文)
  10. python第三方库pygame的使用