matlab代码循环运行-KalmanPort:用于四旋翼状态估计的扩展无味卡尔曼滤波器。从Matlab移植到C++/ROS

上传者: 38633967 | 上传时间: 2022-05-02 22:18:36 | 文件大小: 65.2MB | 文件类型: ZIP
matlab代码循环运行## Kalman滤波器端口###基于Matlab的代码的移植,用于将Quadrotor的状态估计到C ++ / ROS框架。 (UKF / EKF)。 两种Kalman滤波器实现的状态向量均为14维:#### [位置,速度,方向,imu加速度计偏差,侧倾/俯仰偏差] ####实现使用Boost 1.49,C ++ 11 / STL和ROS Hyrdo ######信息卡尔曼滤波器是一种最佳估计器。 如果可以将系统和观测值的噪声建模为高斯模型,则卡尔曼滤波器可将估计值的均方误差降至最低。 此外,该过滤器是递归的,因此可以在新数据可用时提供状态估计。 如果您有一个很好的估计,那么将滤波器与增益学习的预处理步骤结合使用可以实现一个可靠的系统。 该项目的目的是使用带有IMU和单个摄像机作为系统输入的扩展卡尔曼滤波器或无味卡尔曼滤波器驾驶四旋翼飞行器。 一旦开发出良好的状态估计器,它将与PD控制器结合使用,PD控制器将使用位置和速度估计来计算到达所需位置所需的推力和力矩。 nanoplus四旋翼有一个机载姿态控制器,其运行频率高于位置和速度控制器。 这意味着定向估计将仅

文件下载

资源详情

[{"title":"( 40 个子文件 65.2MB ) matlab代码循环运行-KalmanPort:用于四旋翼状态估计的扩展无味卡尔曼滤波器。从Matlab移植到C++/ROS","children":[{"title":"KalmanPort-master","children":[{"title":"MatlabFiles","children":[{"title":"MatlabEquations","children":[{"title":"imuLFunc.mat <span style='color:#111;'> 10.90KB </span>","children":null,"spread":false},{"title":"14GFunc.mat <span style='color:#111;'> 11.20KB </span>","children":null,"spread":false},{"title":"imuGEqn.mat <span style='color:#111;'> 2.38KB </span>","children":null,"spread":false},{"title":"imuGFunc.mat <span style='color:#111;'> 10.53KB </span>","children":null,"spread":false},{"title":"14GEqn.mat <span style='color:#111;'> 1.23KB </span>","children":null,"spread":false},{"title":"14LFunc.mat <span style='color:#111;'> 10.94KB </span>","children":null,"spread":false}],"spread":true},{"title":"MatlabSource","children":[{"title":"nPointPose.m <span style='color:#111;'> 5.03KB </span>","children":null,"spread":false},{"title":"quadUKF.m <span style='color:#111;'> 4.12KB </span>","children":null,"spread":false},{"title":"atan3.m <span style='color:#111;'> 123B </span>","children":null,"spread":false},{"title":"plotUKFcppData.m <span style='color:#111;'> 586B </span>","children":null,"spread":false},{"title":"calculateCovEquation.m <span style='color:#111;'> 1.54KB </span>","children":null,"spread":false},{"title":"imuUKF.m <span style='color:#111;'> 14.02KB </span>","children":null,"spread":false},{"title":"RPYToRotMat.m <span style='color:#111;'> 448B </span>","children":null,"spread":false},{"title":"RotMatToRPY.m <span style='color:#111;'> 205B </span>","children":null,"spread":false},{"title":"final650.m <span style='color:#111;'> 18.61KB </span>","children":null,"spread":false},{"title":"outputSensorLog.m <span style='color:#111;'> 4.92KB </span>","children":null,"spread":false},{"title":"symbolicFuncs.m <span style='color:#111;'> 7.98KB </span>","children":null,"spread":false}],"spread":false}],"spread":true},{"title":"presentationKF.pdf <span style='color:#111;'> 4.76MB </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 3.35KB </span>","children":null,"spread":false},{"title":"CPPFiles","children":[{"title":"InvertMatrix.hpp <span style='color:#111;'> 1.34KB </span>","children":null,"spread":false},{"title":"outputDataUKF.cpp <span style='color:#111;'> 848B </span>","children":null,"spread":false},{"title":"quadStateEst.cpp <span style='color:#111;'> 6.16KB </span>","children":null,"spread":false},{"title":"fmUKF.cpp <span style='color:#111;'> 9.79KB </span>","children":null,"spread":false},{"title":"inputData.cpp <span style='color:#111;'> 9.19KB </span>","children":null,"spread":false},{"title":"cholesky.hpp <span style='color:#111;'> 6.87KB </span>","children":null,"spread":false},{"title":"cppUKFData.txt <span style='color:#111;'> 19.32KB </span>","children":null,"spread":false}],"spread":true},{"title":"Data","children":[{"title":"viconPos.txt <span style='color:#111;'> 125.43KB </span>","children":null,"spread":false},{"title":"poseNPPOrient.txt <span style='color:#111;'> 40.64KB </span>","children":null,"spread":false},{"title":"quadData.mat <span style='color:#111;'> 60.43MB </span>","children":null,"spread":false},{"title":"viconEuler.txt <span style='color:#111;'> 124.10KB </span>","children":null,"spread":false},{"title":"processInputOmega.txt <span style='color:#111;'> 41.21KB </span>","children":null,"spread":false},{"title":"viconTime.txt <span style='color:#111;'> 42.29KB </span>","children":null,"spread":false},{"title":"poseNPPPos.txt <span style='color:#111;'> 40.24KB </span>","children":null,"spread":false},{"title":"processInputAcc.txt <span style='color:#111;'> 40.88KB </span>","children":null,"spread":false}],"spread":true},{"title":"ukfROS","children":[{"title":"quadStateEstROS.cpp <span style='color:#111;'> 7.09KB </span>","children":null,"spread":false},{"title":"InvertMatrix.hpp <span style='color:#111;'> 1.34KB </span>","children":null,"spread":false},{"title":"fmUKF.cpp <span style='color:#111;'> 9.79KB </span>","children":null,"spread":false},{"title":"inputData.cpp <span style='color:#111;'> 9.19KB </span>","children":null,"spread":false},{"title":"cholesky.hpp <span style='color:#111;'> 6.87KB </span>","children":null,"spread":false},{"title":"quadStateEstROS <span style='color:#111;'> 585.81KB </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true}]

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明