Mission Planner 开发环境搭建 二次开发编译方法与问题解决 新手篇 vs2017

这个星期我用VS2017编译 Mission Planner ,编译出现各种错误,在网上找到了许多资料,发现都是年代比较久远,很多都是雷同,vs2010版本,VS 2013版本居多,经过几天终于编译通过了。如下图 :版本号改了。

教程: 首先先观看官方教程

原官方教程链接为:http://ardupilot.org/dev/docs/buildin-mission-planner.html

Mission Planner源码地址为:https://github.com/ArduPilot/MissionPlanner

最新版Mission Planner上位机软件下载链接为:http://firmware.ardupilot.org/Tools/MissionPlanner/MissionPlanner-latest.msi

1.安装vs 2017,下载链接去官方下载地址https://visualstudio.microsoft.com/zh-hans/?rr=https%3A%2F%2Fwww.so.com%2Fs%3Fq%3Dvs2017%25E5%25AE%2598%25E7%25BD%2591%26psid%3D0fe86ef8d5d4467e982c7bf8f091bb3f%26src%3Dpdr_guide_2.30%26fr%3Dhao_360so_b  国外网站可能有点慢。

2.下载missplaner 源码  https://github.com/ArduPilot/MissionPlanner  。

3.官方说下载最新的上位机  ,我测试了不用下也可以  。

4.解压下载的源码,用VS 2017打开,如下图:

等待工程加载。会发现报许多错误,或者警告如下图

如果你出现上图说明 你系统是不支持的!最好用 win10 专业版 ,本来已经测试了  win7 ,win8  都不行,给开发者反馈,建议用win10  系统。

还要编译报错有两种:

一种是 Error CS0006 Metadata file 'D:\WIND\Documents\Visual Studio 2017\Projects\MissionPlanner\ExtLibs\Utilities\bin\Debug\netstandard2.0\MissionPlanner.Utilities.dll' could not be found MissionPlanner.Maps

另一种是 Error CS0103 The name 'SynthesizerState' does not exist in the current context MissionPlanner.Utilities(netstandard2.0) 

上图这两个错误  解决办法在下图   打开VS 更新包    点击工具 ->获取工具与功能

官方教程是:

官网是这个三个  。一般上图的问题就能解决了  

如果还有其他的问题  如下图:

一般官方点击是不添加的    必须手动添加   可以帮我们解决很多问题!

 

5.然后再次编译MissionPlanner.Utilities项目发现就可以通过了,再去编译MissionPlanner项目就可以顺利通过并允许。

第一次学习写  有不足的之处  还请多多请教!  QQ :2929736624   一起交流 。

不懂留言!!!

如果觉得文章对你有帮助加个关注!!

  • 3
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
### 回答1: Mission Planner是一款开源的地面站软件,可以用于控制和监控无人机的飞行。它提供了丰富的功能和界面,同时也支持二次开发。用户可以根据自己的需求,对Mission Planner进行二次开发,以满足特定的应用场景和需求。二次开发可以通过编写插件、修改源代码等方式实现。 ### 回答2: Mission Planner是一款非常受欢迎的开源地面站软件,它已经成为了许多无人机爱好者和专业人士的首选工具之一。Mission Planner提供了强大的飞行控制和地面站功能,如航点编程、遥控器控制、数据记录和可视化、遥测接收等等,使其成为了无人机开发中必不可少的工具之一。同时,Mission Planner还支持二次开发,这意味着我们可以在Mission Planner的基础上进行定制化的开发Mission Planner二次开发主要基于.NET平台和C#语言。用户可以使用Visual Studio等软件开发工具进行二次开发。通过二次开发,我们可以实现自定义的功能扩展,比如添加特定的设备驱动程序、修改页面布局、实现新的数据处理算法等等。二次开发还提供了自定义飞行模式、识别人工干扰、集成第三方设备等高级功能,帮助我们更好地完成无人机开发Mission Planner二次开发的关键是理解其基础架构和模块化设计。Mission Planner将其功能分为多个模块,各模块之间通过接口进行交互,因此我们可以对每个模块进行针对性的开发,提高了二次开发效率。此外,Mission Planner使用开源协议,开放代码,使得用户可以查看和理解软件的内部结构和逻辑,更方便地进行二次开发。 总之,Mission Planner二次开发提供了强大的自定义功能,使开发者能够设计和开发出更适合自己的地面站软件,同时提高开发效率。Mission Planner的开放、模块化、规范化的设计理念,使得其二次开发变得更为简单和高效。 ### 回答3: Mission Planner是一种常用的开源自动驾驶仪地面站软件,用于设置和监控无人机的飞行任务。它提供了设计飞行计划、编写API、访问SPI总线、配置无线电和日志等功能。Mission Planner还支持PX4、APM和ArduCopter等自动驾驶仪,并且可以添加自定义航点和飞行任务。 对于那些想要进行更多自定义开发的用户和开发人员,Mission Planner还提供了丰富的二次开发接口。这样可以允许用户绑定自己的功能,从而更好地管理无人机和飞行任务。 Mission Planner二次开发接口包括面板、插件和API。面板是Mission Planner的图形用户界面,可以在其上创建新的选项卡和自定义控件。插件可以以异步方式接收或发送数据,并对MessageEventHandler中的数据进行处理。API可用于编写C#和Python脚本,并基于Mission Planner中的数据不断更新或调整行动和状态,实现自定义逻辑控制。因此,使用Mission Planner进行自定义开发可以轻松实现增加自定义逻辑控制和交互界面,让用户更好地管理无人机飞行任务。 总之,二次开发是用于Mission Planner的神权之路,可以允许用户以各种方式控制无人机并优化其飞行计划。 无论你是个人用户还是专业人士,只要按照文档和 API进行操作,就可以在Mission Planner上实现自定义功能,提高无人机的管理和控制能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值