MATLAB与X-Plane通信以及X-Plane飞行数据回放
X-Plane原生支持的通信方式比较复杂,因此考虑借鉴第三方工具。
NASA写了个插件直接与X-Plane通信获取数据,同时该插件还通过UDP与外部程序通信,通过这个插件做代理,可以实现X-Plane自带的UDP那种功能。经过定制后的通信更加方便了,不需要再考虑X-Plane原生的UDP通信方式中数据对齐的问题了。
本文利用该插件实现了X-Plane数据的回放功能,比X-Plane自带的Load Flight data Recorder file的fdr格式的文件方便很多。
通过MATLAB的Import Data将X-Plane下Data文件中的姿态角和GPS数据(经度、维度、高度)导入进工作空间
对以下代码段进行了更改,注释掉原始的位置发送段,将记录的经度、维度、高度和姿态角,即
lat__deg,lon__deg,altftmsl,pitch__deg,roll__deg,hding_true按照一定频率逐个发送到X-Plane中(这里因为记录数据时选取的是99Hz,因此发送间隔设置为0.01秒,即“pause(0.01)” )
%% Set position of the player aircraft
disp('Setting position');pauseSim(1, Socket);
% Lat Lon Alt Pitch Roll Heading Gear
% POSI = [1.3099, 103.9875, 2500, 0, 0, 0, 1];
% sendPOSI(POSI, 0, Socket); % Set own aircraft position
for i = 1:size(pitch__deg)
POSI = [lat__deg(i),lon__deg(i),altftmsl(i),pitch__deg(i),roll__deg(i),hding_true(i),1];
sendPOSI(POSI, 0, Socket); % Set own aircraft position
pause(0.01);
end
以下对自己记录的数据进行下回放展示:半古巴8字特技动作演示
很多功能都得自己逐步探索开发,一起前进~
注:使用该代码,需要将NASA开发的插件一并拷贝进入X-Plane插件目录下,在X-Plane界面勾选使用,否则程序不能正常运行。
即Resources文件夹下的plugins:
本文参考程序来源:NASA的X-Plane Connect(https://github.com/nasa/XPlaneConnect)简称XPC。
MATLAB与X-Plane通信以及X-Plane飞行数据回放相关推荐
- 基于matlab的雷达和通信系统,基于MATLAB的多功能通信信号源仿真
第 29 卷 第 3 期 2006 年 9 月 电 子 器 件 Chinese Journal of Electron Devices Vol. 29 No. 3 Sep. 2006 Simulati ...
- 【通信系统仿真设计】基于Matlab的2Q-FSK移频键控通信系统仿真
基于Matlab的2Q-FSK移频键控通信系统仿真 前言 仿真原理 实验原理 载波 调制 接收端接收 加噪实现 解调 滤波器 滤波实现 滤波结果图 码元判决 实验结果 实验结果拟合 仿真代码 完整代码 ...
- 基于MATLAB的车联网(VANET)通信系统仿真
基于MATLAB的车联网(VANET)通信系统仿真 随着汽车产业和信息技术的发展,车联网技术已经成为智慧出行的重要组成部分.而车联网的一个关键问题就是如何建立高效稳定的通信网络,以保证车辆之间的安全和 ...
- Simulink和MATLAB工作区的TCPIP通信
Simulink和MATLAB工作区的TCPIP通信 1. 说明 2. 效果展示 3. simulink端的结构和说明 4. 工作区文件说明 5. 文件资源 6. 运行方法 7. 问题 8 多多点赞交 ...
- python调用aspen_用Matlab与Aspen Plus通信
用Matlab与Aspen Plus通信 Devin 欢迎关注我的知乎账号和过程系统工程专栏,专注于化工.过控.制药.优化的学习心得体会分享.如需转载,请私信. 收藏前,欢迎点赞! Aspen Plu ...
- matlab抓取股票数据,Matlab经过sina web接口获取个数即时股票数据函数实现代码
Matlab通过sina web接口获取个数即时股票数据函数实现代码 代码如下: function stockinfo = queryprice(stocktype, stockid) %stockt ...
- java串口发送16进制数据_MFC串口通信发送16进制数据的方法
本文实例为大家分享了MFC串口通信发送16进制数据的具体代码,供大家参考,具体内容如下 MFC串口通信会使用m_mscomm控件. 发送数据一般是在edit control 里输入自己想发送的内容,然 ...
- 重新想象 Windows 8.1 Store Apps (89) - 通信的新特性: 下载数据, 上传数据, 上传文件...
重新想象 Windows 8.1 Store Apps (89) - 通信的新特性: 下载数据, 上传数据, 上传文件 原文:重新想象 Windows 8.1 Store Apps (89) - 通信 ...
- STM32串口通信中使用printf发送数据配置方法 开发环境 Keil
STM32串口通信中使用printf发送数据配置方法(开发环境 Keil RVMDK) 已有 12456 次阅读2011-6-29 23:29 | 在STM32串口通信程序中使用printf发送数据, ...
最新文章
- MySQL时间段datetime格式查询比较 -易犯错误解决
- 使用pytesseract出现错误:“[WinError 2] 系统找不到指定的文件
- Python相关系数矩阵热力图(二)
- docker mysql编辑器_docker官方mysql镜像自定义配置详解
- linux shell 提示符设置
- 剑指offer 求第n个丑数
- java 前置通知_spring aop中的前置通知
- kendo grid输入框验证方法
- 测试工程师不懂AI,还有未来吗?
- C语言课后习题(26)
- LeetCode 404 左叶子之和
- 涉密文件检查工具_保密文件销毁咨询
- 什么是document对象?如何获取文档对象上的元素?_JavaScript DOM操作元素的方法,你还记得多少?...
- 图论及其应用 2011年 期末考试 答案总结
- office2013打开出现配置进度
- 1u服务器电源制作,1U服务器电源也可以做机箱电源
- 离线语音风扇设计应用案例
- gitLab注册There was an error with the reCAPTCHA. Please solve the reCAPTCHA again.
- 《python编程从入门到实践》第16章:收盘价均值的报错分析与解决
- BMP、JPEG文件格式详解
热门文章
- Python实现的深度学习技术在水文水质领域应用
- 黑帽seo需要懂编程吗?
- 做城市/景区慢直播,EasyNVR平台如何调用接口实现MP3音频上传?
- python的字符串一些方法
- webpack打包工具
- 软件测试 | 测试开发 | Aiomysql 与 Sqlalchemy 的使用
- MySQL的ODBC驱动下载及安装 (免登录注册)
- 一款开源的绘图软件Dia,其功能直逼微软的Visio(附视频Demo)
- 基于PHP+MySQL实现(Web)英语学习与测试平台【100010284】
- ESG数据更新 | 商道融绿ESG评级(2015-2022年)