MissionPlanner日志保存方法

2023-05-16

闪存日志

目录

  1. 闪存日志
  2. 日志类型(闪存 VS 数传日志)
  3. 设置你想要记录的数据
  4. 用Mission Planner下载日志
  5. 查看内容
  6. 详细信息(针对APM:Copter)
  7. 查看KMZ文件
  8. 视频教程

日志类型(闪存 VS 数传日志)

有两种方法可以记录你飞行时的数据。尽管两种记录方法十分类似,但也有些区别:

  • 闪存日志(本页的主题)飞行完成后,可以从APM或PX4的板载闪存上下载。飞机和地面车辆,只要一开机就会自动创建闪存日志。四轴上则是解锁后才创建闪存日志。(主要是研究四轴)

  • 数传日志(也称为“tlogs”)用3DR或XBee数传模块连接APM到电脑上,会被Mission Planner(或其他地面站)记录下来。你可以 在这里找到详细信息

设置你想要记录的数据

  • LOG_BITMASK参数控制闪存内记录什么类型的数据。
  • 如果你想指定某个消息类型附加到默认的方法上,在Mission Planner标准参数列表页面,可以在Log Bitmask的下拉列表设置。

使用终端控制会更加方便(命令行界面),如下所示:

  • 进入Mission Planner的终端界面
  • 单击“连接APM”或“连接PX”
  • 键入logs
  • 启用或禁用某个消息类型,在enable或disable后输入信息的类型即可。
  • 如: enable IMU

用于Arducopter的所有可能的闪存信息:

  • ATT:roll,pitch和yaw(启用ATTITUDE_FAST记录频率是50Hz,启用ATTITUDE_MED记录频率是10HZ)。
  • ATUN:自动调参概览(从开头记录每一次“晃动”测试)
  • ATDE:自动调参详情(以100HZ记录飞行器的晃动情况)
  • CAMERA(相机):快门按下后,记录当时的GPS时间、roll、pitch、yaw、纬度、精度、高度。
  • CMD(命令):从地面站接收命令,或者作为执行任务之一。
  • COMPASS(罗盘):罗盘原始数据和compassmot补偿值。
  • CURRENT(电流):以10HZ的频率,记录电流和主板电压信息。
  • CUTN:油门和高度信息,包括油门输入大小、超声波测得的高度(sonar alt)、气压测得的高度(baroalt),以10HZ频率记录。
  • D32:id = 9,简单模式最初的航向,单位是百分之一度(例: 18000=南)。
  • DU32:id = 7,内部状态的位掩码。个别位的含义可以在 ArduCopter.pde中定义的结构体ap找到。
  • ERR:子系统错误和错误编号。这些列表上可以在 “使用日志文件诊断问题”Wiki页面找到。
  • EV:一个事件的编号。事件的完整列表可以在 defines.h 找到,最常见的是:
    • 10 = Armed(解锁)。
    • 11 = Disarmed(锁定)。
    • 15 = Auto Armed(自动解锁)(飞手已经拉高油门大于0 了、自动驾驶仪不用再控制油门)
    • 16 = TakeOff(起飞)
    • 18 = Land Complete(降落完成)
    • 25 = 设定“家”(家的位置坐标已经获取)
  • GPS:GPS的位置、高度、卫星数量,hdop,在GPS更新时会记录(通常是5Hz)。
  • IMU:加速计原始数据和陀螺仪信息,记录频率50HZ。
  • INAV:惯性导航高度和位置。
  • MOTORS:单个电机信息,记录频率50Hz。
  • NTUN:导航数据,包括所需和实际速度、所需加速度、所需roll和pitch角度,在自动驾驶仪控制水平位置(悬停,返航,自动模式)时,以频率10Hz记录。
  • OPTFLOW:光流传感器速度和所需roll和pitch角度(使能OF_LOITER时有效)。
  • PID:如果被CH6旋钮调节,PID控制器输出的P、I、D结果,记录频率50Hz。
  • PM:性能信息,包括多个循环缓慢运行,最长循环时间,单位:毫秒(每10秒记录一次)。

注意:

  • 如果使能太多的日志项,会严重影响性能发挥。所以一般来说默认即可。
  • 或作为分析数据需要时,只使能有用的日志项,如:INAV,MOTORS和IMU。

欲知在其他平台有哪些日志可用,执行以下步骤:

  • 做之前,把所要启用的日志项记下——写下来。
  • 在终端输入Enable All。将会启用全部日志项,当然也包括你不想要的。
  • 所有被记录的日志项会显示出来。
  • 若想禁用某日志项–如:某个日志项返回初始设置,在“disable”后跟着名字即可。
  • 或者进入-软件–高级参数,查看日志位掩码(LOG_BITMASK)参数,给模型配置参数。

用Mission Planner下载日志

  • 打开Mission Planner的终端界面。
  • 单击“连接APM”或“连接PX”。
  • 当出现提示时,单击“日志下载”
  • 当“日志”屏出现,在多选框先选择,然后下载(一般选择数字最大)
  • 选择你的模型类型(APM:Copter, APM:Plane, APM:Rover)。
  • 这一步,保证了下载的参数比率正确。
  • 单击“下载这些日志”
  • 对于非常大的日志,可能要花几分钟才能下载完,注意看着“清除记录”按键下的传输进度。
  • 当文件下载完成,会显示“已完成”。

  • 出现的文件夹会显示日志文件,位置在软件安装目录,logs文件夹或在手动配置的文件夹。
  • 在软件的配置/调试 > log path可以设置。
  • 文件的格式:YYYY-MM-DD HH-MM##.log,其中日期是当前日期,##是日志编号。
  • .kmz文件和log文件是一起的,用Google打开kmz文件后,可以看到飞行路径3D效果图。
  • 同时也生成了 .gpx文件 ,不过很少用。

清除日志:

  • 按下“清除日志”按钮,会清除所有的日志。
  • 这个功能很有用,可以把前些天没用的日志删除,保留有用的日志。
  • 闪存写满了,会覆盖最旧的日志。

查看内容

打开闪存文件分析,按照以下步骤:

  • 打开Mission Planner的终端界面。
  • 按下日志浏览按钮,接着打开.log闪存文件

日志和顶部的图形在一个界面。

在图形上,按下鼠标左键不放,移动到绿色按钮上面范围以内都行,绘图大小就可以改变。

基本格式:

  • 行号出现在最左侧
  • 软件版本和主板型号显示在顶部
  • 其次,FMT信息告诉Mission Planner每个信息类型的列标题
  • PARM对应的行,显示每个参数(按EEPROM存储排列的顺序)以及刚开始飞行时的值
  • 飞行数据信息,包括GPS、IMU(惯性测量单元)等等。

  • 想绘制哪个飞行数据,只要相应行单击它。
  • 你就会看到相应的列标题会更新。
  • 接着点击那个列,然后按下“绘制这个数据”键。
  • 上面的例子,ATT的Roll-In和Roll数据已经绘制成图了。
  • 鼠标的滚轮可用于放大或缩小。
  • 你也可以选择图表的某个区域进行放大。
  • 缩小,鼠标右键单击并选择“设置比例为默认值"。
  • 你还可以用过滤的方式,在第一行单击,在下拉菜单选择信息类型(飞行数据类型)。
  • 这非常有用,特别是查看飞行任务期间,不同飞行模式时(称为“模式”信息) 。
  • 再次单击第一列,按“取消”可以清除过滤器。

详细信息(针对APM:Copter)

  • ATT(姿态信息):
  • Roll-In:你想要的roll角度,单位:厘米-度(roll往左为负,右是正)
  • Roll:模型实际的roll,单位:厘米-角度(roll往左为负,右是正)
  • Pitch-In:你想要的pitch角度,单位:厘米-角度(pitch往前为负,后是正)
  • Roll:模型实际roll,单位:厘米-角度(roll往左为负,右是正)
  • Yaw-In:你想要的偏航率,范围 – 4500 ~ + 4500(不是“度/秒”,顺时针方向为正)
  • Yaw:模型实际航向,单位“厘米-度”,且 0 = 北。
  • NavYaw:想要的航向,单位:厘米-度

ATUN(自动调试概览):

  • Axis(轴):0 = Roll,1 = Pitch
  • 调试步骤:0 = 恢复值(测试前或测试后),1 = 测试(如:用晃动测试响应),2 = 更新数据(晃动完成,增益调整完成)
  • RateMin:测试期间最小记录速率
  • RateMax:测试期间最大记录速率
  • RPGain:测试得到的P比率增益值
  • RDGain:测试得到的D比率增益值
  • SPGain:测试得到的自稳P增益值

ATDE (自动调试详细步骤):

  • 角度(Angle):飞行器经测试轴的角度,单位厘米-度。
  • 比率(Rate):飞行器经测试轴,旋转的比率,单位厘米-度。

CAM(相机快门按下时的时间和所处位置):

  • GPSTime:按下快门后,GPS记录当时的时间(以毫秒为单位)
  • Lat:加速度计 + GPS纬度估计值
  • Lat:加速度计 + GPS经度估计值
  • Alt:加速度计 + 气压计测得离地面高度估计值(单位:cm)
  • Roll:模型roll角度(单位:厘米-度)
  • Pitch:模型pitch角度(单位:厘米-度)
  • Yaw:模型的航向(单位:厘米-度)
  • CMD:(从地面站接收命令或作为任务的一部分执行)。
  • CTot:命令总数
  • CNUM:任务的命令编号(0代表不没飞,1代表第一个任务)
  • Cld: MavLink 消息ID
  • Copt:选项参数(用于许多不同的目的)
  • Prm1:命令参数(用于许多不同的目的)
  • Alt:某命令执行时的高度,单位为米
  • Lat:某命令执行时的纬度
  • Lng:某命令执行时的经度

罗盘(COMPASS):(罗盘原始数据和compassmot补偿值):

  • MagX,MagY。MagZ:x、y和z轴,原始磁场值。
  • OfsX,OfsY,OfsZ:原始磁场偏移量(只有参数COMPASS_LEARN = 1时才有用)
  • MOfsX,MOfsY,MOfsZ:油门或电流的compassmot补偿

CURRENT(电流):(以10HZ频率记录电流和主板电压信息):

  • Thr:油门输入范围从 0 ~ 1000
  • ThrInt:综合油门(即,此次飞行全部油门输出之和)
  • 电压(Volt):电池电压; 记录格式:实际电压*100
  • Curr:电池电流输出,记录格式:安培*100
  • VCC:主板电压
  • CurrTot:电池总放电电流

CUTN(油门和高度信息):

  • ThrIn:飞手的油门大小,表示为从0到1000的数值
  • SonAlt(声纳高度):声纳测得离地面的高度
  • BarAlt:气压计测得离地面的高度
  • WPAlt:定高、悬停、返航或自动飞行模式的目标高度
  • NavThr:未使用
  • AngBst:飞行器倾斜飞行时会增加的油门大小,范围0 ~ 1000(自动给所有电机同时加油门,以补偿自动驾驶仪在倾斜飞行时减少的高度)
  • CRate:加速计 + 气压计估计的上升速率,单位cm/s
  • throut:最终油门输出大小,传送到电机(从0 ~ 1000)。在自稳模式下,通常相当于ThrIn + AngBst。
  • DCRate – 飞手想要的上升速率,单位:cm/s

D32,DU32(数据类型:有符号32位整数或无符号32位整数):

  • id:变量标识号。仅有两个可能的值
  • 7 = 内部状态的位掩码。个别位含义在 ArduCopter.pde文件结构体ap中。
  • 9 = 简单模式的初始航向,单位:厘米-度

ERR(错误信息):

  • 下面列出:子系统及错误代码
  • 1:Main(从未使用)
  • 2:无线电(Radio)
    • ECode 1:“Late Frame”意思是APM的板载ppm编码器,至少2秒钟了没有更新数据。
    • ECode 0:意思是ppm编码器恢复数据更新,错误已解决。
  • 3:Compass(罗盘)
    • ECode 1:罗盘初始化失败(很可能是硬件问题)
    • ECode 2:从罗盘读取数据失败(可能是硬件问题)
    • ECode:上述错误已解决
  • 4:Optical flow(光流)
    • ECode 1:初始化失败(很可能是硬件问题)
  • 5:油门安全故障
    • ECode 1:油门下降到参数FS_THR_VALUE以下,可能RX/TX失去连接
    • ECode 0:上述问题解决,意思是RX/TX恢复连接
  • 6:电池安全故障
    • ECode 1:电池电压低于参数LOW_VOLT,或电池过度放电能力超过参数BATT_CAPACITY
  • 7:GPS安全故障
    • ECode 1:GPS断开锁定至少5秒钟
    • ECode 0:GPS恢复锁定
  • 8:GCS(地面站)安全故障
    • ECode 1:地面站的操纵杆,至少5秒钟未变化。
    • ECode 0:恢复地面站的更新
  • 9:围栏
    • ECode 1:超过限定围栏高度
    • ECode 2:超过限定围栏范围
    • ECode 3:超过限定海拔高度和围栏范围
    • ECode 1:模型回到限定范围内
  • 10:飞行模式
    • ECode 0 – 10:模型不能进入想要的飞行模式
      (0 = 自稳,1 = 特技,2 = 定高,3 = 自动,4 = 导航,5 = 悬停,6 = 返航,7 = 盘旋,8 = 定位,9 = 着陆,10 = 光流—悬停)
  • 11:GPS
    • ECode 2:GPS故障
    • ECode 0:GPS已故障清除
  • 12:撞击检查
    • ECode 1:检测到撞击

EV:(事件的编号)。可能事件的完整列表可以在 defines.h 找到,最常见的是:

  • 10 = 解锁(Armed)。
  • 11 = Disarmed(上锁)。
  • 15 = 自动解除锁定(飞行员已经拉高油门大于0了、自动驾驶仪不用再控制油门)
  • 16 = 起飞(TakeOff)
  • 18 = 降落完成(Land Complete)
  • 25 = 设定“家”(家的位置坐标已经获取)

GPS:

  • 状态–0 = 没搜到GPS; 1 = 有GPS,但没定位; 2 = 2D 定位,3 = 3D定位
  • GPSTime:按下快门后,GPS记录当时的时间(以毫秒为单位)
  • NSats:目前正在使用卫星的数量
  • HDop:GPS测量精度(1.5代表好,大于2代表不太好)
  • Lat:由GPS得到的横向高度
  • Lng:由GPS得到的纵向高度
  • RelAlt:加速计 + 气压高度,单位为米
  • Alt:由GPS得到的高度(不是由飞控)
  • SPD:水平的地面速度(单位:米/秒)
  • GCrs:地面方向,以度为单位(0 = 北)
  • IMU (加速度计和气压信息):
  • GyrX,GyrY,GyrZ:陀螺仪原始旋转率(单位:度/秒)
  • AccX,AccY,AccZ:加速度计原始值(单位:m/s/s)
  • INAV(惯性导航位置和估计速度):
  • BAlt:气压高度(单位:cm)
  • IAlt:惯性导航高度估计值(单位:cm)
  • IClb:惯性导航上升速率估计值(单位cm/s)
  • ACorrX。ACorrY,ACorrZ: x,y 和 z轴 加速度计矫正(单位:cm/s/s)
  • GLat,GLon:“家”的GPS纬度和经度
  • ILat, ILng:“家”的惯性导航经度和纬度

模式(飞行模式):

  • 模式:飞行模式显示为一个字符串(即:自稳、悬停等)
  • ThrCrs:巡航油门大小(0–1000),自动驾驶仪自动判断选择最佳大小的油门,用于保持飞行器悬停稳定。

电机(PWM输出到各个电机):

  • Mot1,Mot2等:从飞控发送pwm命令到电调/电机

NTUN(导航信息):

  • WPDst:离下一个航点(或悬停目标)的距离(单位:cm)。只有在悬停,返航,自动模式才更新。
  • WPBrg:bearing to the next waypoint in degrees
  • PErX:纬度方向,飞行器和下一航点之间的距离。
  • PErY:经度方向,飞行器和下一航点之间距离。
  • DVelX:纬度方向,所需速度(单位为cm/s)
  • DVelY:经度方向,所需速度(单位为cm/s)
  • VelX:纬度方向,实际加速 + GPS估计速度
  • VelY:经度方向,实际加速 + GPS估计速度
  • DAcX:纬度方向,所需加速度(单位为cm/s/s)
  • DAcY:经度方向,所需加速度(单位为cm/s/s)
  • DRol:想要的roll角度(单位:百分之一度)
  • DPit:想要的pitch角度(单位:百分之一度)

PM(性能监测):

  • RenCnt:DCM renormalization count – a high number may indicate problems in DCM (extremely rare)

  • RenBlw:DCM renormalization blow-up count – how many times DCM had to completely rebuild the DCM matrix since the last PM.Normally innocuous but a number that constantly grows may be an indication that DCM is having troubles calculating the attitude (extremely rare)

  • FixCnt: the number of GPS fixes received since the last PM message was received (it’s hard to imagine how this would be useful)

  • NLon: number of long running main loops (i.e. loops that take more than 5% longer than the 10ms they should)

  • NLoop: the total number of loops since the last PM message was displayed.Normally 1000 and allows you to calculate the percentage of slow running loops which should never be higher than 15%.

  • MaxT: the maximum time that any loop took since the last PM message.This should be close to 10,000 but will be up to 6,000,000 during the interval where the motors are armed

  • PMT: a number that increments each time a heart beat is received from the ground station

  • I2CErr:最新性能监测数据,I2C错误的总数。任何的I2C错误,就可能意味着I2C总线出了问题。可能会导致主循环时间变长,导致飞行性能下降。

查看KMZ文件

当你从APM/PX4下载闪存日志文件,同时会自动创建一个KMZ文件(文件扩展名为.kmz)。可以用谷歌地图打开(只需双击该文件),在谷歌地球上查看飞行数据。请参见有关 数传日志页面 了解更多详细信息。



本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MissionPlanner日志保存方法 的相关文章

  • pid摄像头循迹(opencv和openmv)

    pid摄像头循迹 xff08 opencv和openmv xff09 用摄像头进行循迹的方法参考硬件选型方面软件思路一 图像预处理 xff1a 代码部分二 线性拟合opencv线性拟合 xff1a 实际在树莓派上运行时 xff0c 帧率也比
  • 通过云端自动生成openmv的神经网络模型,进行目标检测

    通过云端自动生成openmv的神经网络模型 xff0c 进行目标检测 OpenMV训练神经网络模型 xff08 目标识别 xff09 一 准备材料 xff1a 二 软件下载三 准备数据集 xff1a 四 数据集的上传与训练 OpenMV训练
  • opencv学习(9):cv::Scalar、cv::Mat::zeros

    1 cv Scalar cv Scalar是opencv的一个结构体 xff0c 其定义如下 xff1a xff08 c 43 43 中的结构体如下 xff0c 可以存放1 4个数值 xff09 various constructors S
  • 德国大陆ARS408系列毫米波雷达数据解析

    本人已完成对该型号系列毫米波雷达的解析工作 xff0c 有需求请私信联系
  • nmap使用详解

    nmap介绍 nmap xff08 Network Mapper xff09 是一款开源免费的针对大型网络的端口扫描工具 xff0c nmap可以检测目标主机是否在线 主机端口开放情况 检测主机运行的服务类型及版本信息 检测操作系统与设备类
  • OLED屏幕花屏的原因(I2C+DMA)

    OLED屏幕在通电后花屏 xff0c 呈雪花状 在网上查询原因 xff0c 开始了尝试 xff1a 1 可能是由于杜邦线的问题 xff0c 可能接触不良导致 xff0c 但更换了杜邦线依然花屏 2 可能是OLED屏幕问题 因为经常在工作 x
  • 竞赛保研(自动化专业)

    一 感谢 从大三的五月份一直到9 28号推免结束 xff0c 最终也是保研到了梦校 xff0c 还好我坚持到了最后一刻 感谢父母 xff0c 感谢远方的她 xff0c 感谢老师 xff0c 感谢实验室的平台 xff0c 也要感谢每一位一起拼
  • 随机森林的简单学习记录

    随机森林小记 这里采用的随机森林的库选择sklearn库 1 首先是导入数据 xff1a path span class token operator 61 span span class token string 34 D Epilept
  • Linux的c++环境配置与cmake的使用

    Ubuntu18 04安装 虚拟机安装 虚拟机软件版本 xff1a VMware Workstation 16 Pro 版本号 xff1a Ubuntu18 04 安装参考 xff1a http t csdn cn P71XR 虚拟机分辨率
  • 用KDevelop来编辑与编译ROS文件

    新建一个ROS工程 xff1a 首先在工作目录下打开终端 xff0c 创建一个src目录 xff0c 放置源代码 xff08 系统要求 xff09 xff0c 并将当前目录切换到src目录中 xff1a mkdir src cd src s
  • 自制三维激光扫描建模

    看图片就是我做的东西 xff0c 很炫酷是不是 好吧 xff0c 开玩笑 xff0c 这是电影普罗米修斯的截图 当初看这个电影的时候就感觉这东西好眩酷 xff0c 我能不能做出来 最近借着帮做毕业设计的机会我也做了一个 就是这个丑丑的东西啦
  • ICE C++ Hello World

    ICE C 43 43 Hello World实例教程 1 概述 本文演示了如何编写一个最简单的C 43 43 ICE Internet Communications Engine 应用程序 xff0c 包括必要环境的安装 该应用程序包含客
  • 华为工作的感悟

    参考 xff1a http www openlab net cn forums thread 1002986 1 p10035795 北邮北 xff0c 清华硕 xff0c 一年两个月的华为生活总结 xff0c 算了 xff0c 贴出来了
  • MRCP 媒体资源控制协议

    媒体资源控制协议 xff08 Media Resource Control Protocol MRCP xff09 是一种通讯协议 xff0c 用于语音服务器向客户端提供各种语音服务 如语音识别和语音合成 MRCP并不定义会话连接 xff0
  • matlab(1):使用matlab处理excel数据进行画图

    目录 0 说明 1 直接使用xlsread读取出错 2 解决办法 3 绘图 0 说明 Excel数据示例 xff08 number filter radius 0 8 3 csv xff09 xff0c 一共99行数据 xff08 4列 x

随机推荐

  • Hadoop中VIntWritable编码方式解析

    最近因为实验室的云计算项目 xff0c 开始学习Hadoop xff0c 有时间就记录一下自己在学习过程中的一些小收获吧 Hadoop权威指南 在序列化这一节有个例子程序 xff0c 叫做TextPair xff0c 代码略长 xff0c
  • MapReduce中的二次排序

    在MapReduce操作时 xff0c 我们知道传递的 lt key value gt 会按照key的大小进行排序 xff0c 最后输出的结果是按照key排过序的 有的时候我们在key排序的基础上 xff0c 对value也进行排序 这种需
  • 基于哈夫曼编码的文件压缩解压

    这个程序是研一上学期的课程大作业 当时 xff0c 跨专业的我只有一点 C 语言和数据结构基础 xff0c 为此 xff0c 我查阅了不少资料 xff0c 再加上自己的思考和分析 xff0c 实现后不断调试 测试和完善 xff0c 耗时一周
  • 2020-12-29 Matlab自动化控制-Adrc自抗扰控制参数调节

    Matlab自动化控制 Adrc自抗扰控制参数调节 上篇参看 xff1a https blog csdn net qingfengxd1 article details 111830762 以最简单的线性组合方法 xff08 1 xff09
  • 单级倒立摆的神经网络控制

    倒立摆系统是一种典型的多变量 非线性 强耦合模型 xff0c 它作为一种被控对象 xff0c 用来检验控制理论的可行性和控制的稳定性 人工神经网络由于具有信息的分布存储 并行处理以及自学习能力等优点 xff0c 在信息处理 模式识别 智能控
  • 基于串级 PID 控制算法的四旋翼无人机控制系统设计与实现

    1 内容简介 略 489 可以交流 咨询 答疑 2 内容说明 无人机 xff0c 英文名称UAV C Unmanned Aerial Vehicle xff0c 是一种特殊的飞行器 xff0c 可以按照预先设定的轨迹进行各种运动 xff0c
  • matlab simulink四旋翼无人机模糊PID控制姿态

    1 内容简介 略 532 可以交流 咨询 答疑 2 内容说明 四旋翼无人机控制灵活 安全性能较高 xff0c 能够实现空中悬停 翻滚 任意角度横 向飞行 xff0c 常常替代人们从事高空危险作业 xff0c 给我们的生活与工作带来了很多便利
  • 深度学习基础

    深度学习介绍 深度学习与机器学习的区别 xff1a 机器学习的特征工程步骤是要靠手动完成的 xff0c 而且需要大量的领域专业知识 深度学习不需要更多的特征处理 只需要进行图片的输入 xff0c 进入神经网络后 xff0c 输出结果 深度学
  • Ubuntu18.04安装ROS Melodic

    1 设置安装源 为了安装ROS Melodic xff0c 首先需要在Ubuntu 18 04 LTS上添加安装源到source list xff0c 方法如下 strong sudo sh c 39 echo 34 deb http pa
  • 嵌入式软件开发笔试面试(五)

    uboot启动流程 uboot是一种启动系统 xff0c 但不属于操作系统 xff0c 内核运行 xff0c uboot结束 启动流程 xff1a 一 汇编阶段 切换到svc模式 为了保证启动稳定 xff0c 关闭看门狗 中断 MMU ca
  • ros(22):catkin_make可以加多线程/多核、catkin_make -j4、catkin_make -j8、catkin_make -j12、catkin_make -j16

    之前以为catkin make 后面不能加多核 多线程 xff0c 现在发现是可以的 xff0c catkin make jn xff08 n为数字 xff09 命令在编译时被拆分为以下两个 xff1a make cmake check b
  • UWB TDOA一维定位解算

    在某些定位场景 xff0c 比如在隧道 走廊等区域 xff0c 需要用到一维解算 xff0c 下面介绍TDOA的长直线解算定位标签位置 xff08 当然也可以用TWR实现一维解算 xff09 定位模型与已知量如下 xff1a 解算不考虑z坐
  • baseflight无头模式原理

    最近探索了baseflight cleanflight源码相关 xff0c 看了源码想分享一下 xff0c baseflight无头模式的原理 baseflight源码可以在github中搜到 xff0c 网址直达 xff1a https
  • cleanflight修改--固件默认飞行模式

    对于我们飞控开发者来说 xff0c 如果每次下完代码后飞行模式modes都要在上位机重新改一次 xff0c 我们肯定会疯掉的 这时候就需要修改固件中默认的飞行模式了 如何下手呢 xff0c 我先从cleanflight飞控的上位机和下位机通
  • 编译mission planner地面站

    编译mp地面站步骤 xff1a 下载最新mp源码 xff1a https github com ArduPilot MissionPlanner 下载最新地面站msi xff08 编译需要引用 xff09 xff1a http firmwa
  • DJI Lightbridge2接收端数据解析

    因为XXXX xff0c 需要对DJI的指令系统做研究 xff0c 首先解析的是 LB2 xff0c 也拆解了七七八八了 xff0c 现在对LB2天空端DBUS口的数据协议进行解析 xff0c 供电子 嵌入式同学进行学习研究 DBUS采用4
  • 室内定位TDOA-UWB实现无线同步的一种方法

    定位中 xff0c 如采用TDOA方式进行坐标解算 xff0c UWB基站间就需要进行时间同步 xff0c 时间同步可以采用有线同步或无线同步 xff1b 找到一篇论文中 xff0c 对无线同步有着巧妙处理 xff0c 特写博客记录一下 U
  • 安装Visual Assit 可在VS2010/VC6.0中使用

    1 1 vs2010中安装 下载Visual Assist X10 6 1823 0 rar破解版 第一步 xff1a 关闭VS2010 第二步 安装 双击安装包中的VA X Setup1823 vsix xff0c 安装 xff1b 第三
  • C++空指针调用类成员函数

    C 43 43 空指针可以调用类成员函数 xff0c 但是 不能调用 类中的 虚函数 我们知道 xff0c 一个对象的指针可以调用它的成员函数和虚函数 xff0c 那么如果一个指向空nullptr的指针 xff0c 能不能调用它的成员函数和
  • MissionPlanner日志保存方法

    闪存日志 目录 闪存日志 日志类型 闪存 VS 数传日志 设置你想要记录的数据 用Mission Planner下载日志 查看内容 详细信息 针对APM Copter 查看KMZ文件 视频教程 日志类型 闪存 VS 数传日志 有两种方法可以