无人机/飞控--ArduPilot、PX4学习记录(2)
这是一篇碎碎念,零零碎碎的记录了环境配置过程,仅供本人记录学习历程和参考。(记录的挺乱的,但是文章链接里的博客写的是真好)
本章主要完成的目标: 安装PX4 并 成功运行出3D无人机界面。
参考文章:
搭建PX4环境:
PX4/Pixhawk - 编译环境搭建_pix4 yu pixhawk-CSDN博客
使用Dronekit控制无人机,DroneKit配置:
使用Dronekit控制无人机,DroneKit配置-CSDN博客
Dronekit 搭配使用Ardupilot 和 PX4:
Dronekit 搭配使用Ardupilot 和 PX4_px4 dronekit 飞航点-CSDN博客
进入已经配置好的ubuntu18.04环境中,首先安装drone kit,安装成功的结果:

pip install dronekit-sitl 命令成功结果:

获取实例源码到本计算机上结果:

依赖安装完成:

之后安装ardupilot,报错:

原因是网络问题。解决方案:
git提交或克隆报错fatal: unable to access ‘https://github.com/tata20191003/autowrite.git/‘: Failed to connec-CSDN博客
安装MAVProxy和pymavlink:

直接使用官方的配置脚本安装环境 看样子应该是安装好了,期间遇到了错误:
Could not find a version that satisfies the requirement sympy>=1.10.1 (from -r /home/xiaobo/PX4-Autopilot/Tools/setup/requirements.txt (line 29)) (from versions: 0.5.14, 0.5.15, 0.6.0, 0.6.1, 0.6.2, 0.6.3, 0.6.4, 0.6.5, 0.6.6, 0.7.0, 0.7.1, 0.7.2, 0.7.4, 0.7.4.1, 0.7.5, 0.7.6, 0.7.6.1, 1.0, 1.1, 1.1.1, 1.2, 1.3, 1.4, 1.5b1, 1.5rc1, 1.5, 1.5.1, 1.6rc1, 1.6rc2, 1.6, 1.6.1, 1.6.2, 1.7rc1, 1.7, 1.7.1, 1.8, 1.9rc1, 1.9) No matching distribution found for sympy>=1.10.1 (from -r /home/xiaobo/PX4-Autopilot/Tools/setup/requirements.txt
文心一y给出的解决方案:
错误消息表示pip无法找到满足
sympy>=1.10.1要求的版本。从列出的可用版本中,最高的版本是1.9,而你的requirements.txt文件要求的最低版本是1.10.1。这意味着你尝试安装的版本比当前在PyPI(Python Package Index)上可用的最新版本还要新。为了解决这个问题,你可以采取以下方法:
更新
requirements.txt文件中的版本号:
如果可能的话,将requirements.txt文件中sympy的版本号降低到一个可用的版本,比如sympy>=1.9。然后再次运行pip安装命令。
于是我就按照路径-r /home/xiaobo/PX4-Autopilot/Tools/setup/requirements.txt ,将requirements.txt里的sympy>=1.10改为了 1.9, 问题解决。

继续运行...

.....按照博主的步骤,一步一步来,主要是解决了网络问题:
最后一步,
进入PX4-Autopilot目录,使用以下指令进行配置和编译:
make px4_sitl jmavsim
在终端输入以下指令起飞飞机:
commander takeoff
终于运行出来了:(出现了PX4和3D界面)


仅管有些错误,但是起码弹出了这个界面,这些错误先保留:

接下来,飞机正常起飞了:

用↑↓键盘键盘操作了一下,小飞机炸鸡了..hhh

相关文章:
无人机/飞控--ArduPilot、PX4学习记录(2)
这是一篇碎碎念,零零碎碎的记录了环境配置过程,仅供本人记录学习历程和参考。(记录的挺乱的,但是文章链接里的博客写的是真好) 本章主要完成的目标: 安装PX4 并 成功运行出3D无人机界面。 参考文章: 搭建PX4环境&…...
【Arxml专题】-29-使用Cantools将CAN Matrix Arxml自动生成C语言代码
目录 1 安装Python和Cantools 1.1 查看Python已安装的Package包 1.2 在Python中安装Cantools插件包 1.3 获取更多Cantools工具的更新动态 2 CAN Matrix Arxml自动生成C语言代码 2.1 批处理文件CAN_Matrix_Arxml_To_C.bat内容说明 2.2 CAN Matrix Arxml文件要求 2.3 如何…...
【id:21】【20分】E. 抄袭查找(结构体+指针+函数)
题目描述 已知一群学生的考试试卷,要求对试卷内容进行对比,查找是否有抄袭。 每张试卷包含:学号(整数类型)、题目1答案(字符串类型)、题目2答案(字符串类型)、题目3答案…...
ASP.NET-常用控件总结
一、ASP.NET基础控件 1、asp:TextBox (输入框) ASP.NET TextBox 控件用于接收用户输入。 <asp:TextBox ID"txtInput" runat"server"></asp:TextBox>2、asp:DropDownList (下拉框) ASP.NET DropDownList 控件用于提供一个下拉列表供用户选择…...
SpringBoot3整合Mybatis-Plus与PageHelper包冲突解决
😊 作者: 一恍过去 💖 主页: https://blog.csdn.net/zhuocailing3390 🎊 社区: Java技术栈交流 🎉 主题: SpringBoot3整合Mybatis-Plus与PageHelper包冲突解决 ⏱️ 创作时间&a…...
MQTT Keep Alive机制
MQTT 协议是承载于 TCP 协议之上的, 而 TCP 协议以连接为导向, 在连接双方之间, 提供稳定、 有序的字节流功能。 但是, 在部分情况下, TCP 可能出现半连接问题。 所谓半连接, 是指某一方的连接已经断开或者…...
基于springboot+vue的游戏交易系统
博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战,欢迎高校老师\讲师\同行交流合作 主要内容:毕业设计(Javaweb项目|小程序|Pyt…...
高职(大专)结构化面试之答题思路
目录 一、岗位认知 二、职教热点 三、教育教学 四、人际关系 五、组织管理 六、应急应变 七、时政与教育 八、专业知识 一、岗位认知 考试方向:主要考察对岗位的全面认识、职业目标、职业规划、职业理想。 必背题目: 1.“你为什么要报考我们学校的教师岗…...
Python基础学习笔记(一)
Python简介 Python 语言是一种跨平台、开源、免费、解释型、面向对象、动态数据类型的高级程序设计语言。早期版本的 Python 被称作是 Python1;Python2 最后一个版本是 2.7;Python3 是目前最活跃的版 本,基本上新开发的 Python 代码都会支持…...
机器学习-可解释性机器学习:支持向量机与fastshap的可视化模型解析
一、引言 支持向量机(Support Vector Machine, SVM)作为一种经典的监督学习方法,在分类和回归问题中表现出色。其优点之一是生成的模型具有较好的泛化能力和可解释性,能够清晰地展示特征对于分类的重要性。 fastshap是一种用于快速计算SHAP值(…...
32.768K晶振X1A000141000300适用于无人驾驶汽车电子设备
科技的发展带动电子元器件的发展电子元器件-“晶振”为现代的科技带来了巨大的贡献,用小小的身体发挥着大大的能量。 近两年无人驾驶汽车热度很高,不少汽车巨头都已入局。但这项技术的难度不小,相信在未来几年里,无人驾驶汽车这项…...
利用autodl服务器跑模型
1. 租用服务器 本地改模型 服务器 将改进好的、数据集处理好的模型压缩为zip文件上传到阿里云盘打开服务器AUTODL服务器,在主页中选择容器实例 在此位置进行开关机操作,若停止服务器,必须关机,不然会一直扣钱 2. 运行模型 选择…...
【微服务】分布式调度框架PowerJob使用详解
目录 一、前言 二、定时任务调度框架概述 2.1 为什么需要定时任务调度框架 2.2 定时任务调度使用场景 三、PowerJob 介绍 3.1 PowerJob 概述 3.2 PowerJob 功能特性 3.3 PowerJob 应用场景 3.4 PowerJob 与其他同类产品对比 四、PowerJob 部署 4.1 PowerJob 架构 4.…...
一命通关广度优先遍历
前言 在这篇文章之前,已对非线性结构遍历的另一种方法——深度优先遍历进行了讲解,其中很多概念词都是共用的。为了更好的阅读体验,最好先在掌握或起码了解dfs的基础上,再来阅读本文章,否则因为会有很多概念词看不明白…...
力扣4寻找两个正序数组的中位数
1.实验内容 给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。 2.实验目的 算法的时间复杂度应该为 O(log (mn)) 。 3.基本思路 碰到时间复杂度要求log的,肯定用二分查找&…...
jmeter之常用函数-第六天
1.常见函数: _counter 计数器函数 TRUE(每个用户都有自己的计数器) FALSE(所有用户共用一个计数器) _Random 随机数函数 参数1:取值范围最小值(包含) 参数2:取值范围最大值(包含) _time 获取当前时间的函数 无参: 获取的是距离 1970/01/01 00:00:00 的毫秒值 参…...
原创!分解+集成思想新模型!VMD-CNN-BiGRU-Attention一键实现时间序列预测!以风速数据集为例
声明:文章是从本人公众号中复制而来,因此,想最新最快了解各类智能优化算法及其改进的朋友,可关注我的公众号:强盛机器学习,不定期会有很多免费代码分享~ 目录 数据介绍 模型流程 创新点 结果展示 部…...
ab (Apache benchmark) - 压力/性能测试工具
Apache benchmark(ab) 安装window安装使用方法 - bin目录运行使用方法 - 任意目录运行 linux安装 基本命令介绍常用参数:输出结果分析: ab的man手册 安装 window安装 官网下载链接:https://www.apachehaus.com/cgi-bin/download…...
除了Confluence,有没有其他工具一样好用?
每个团队都需要一个协同工作工具,以更有效地管理任务、跟踪进度和分享知识。这就是Atlassian的Confluence发挥作用的地方。然而,尽管它相当强大,其昂贵的价格和复杂的界面可能会让某些用户望而却步。所以,还有其他工具可以替代Con…...
查询表中数据(全列/特定列/表达式,where子句(比较/逻辑运算符),order by子句,limit筛选分页),mysql执行顺序
目录 select 全列查询 特定列查询 用表达式查询 (as) 名字 distinct 去重 where子句 比较运算符 列数据之间的比较 编辑 别名不能参与比较 null查询 between and in ( ... , ...) 模糊匹配 逻辑运算符 order by子句 可以使用别名 总结mysql执行顺…...
保姆级教程:用Qwen3-Embedding-0.6B构建你的第一个语义检索系统
保姆级教程:用Qwen3-Embedding-0.6B构建你的第一个语义检索系统 1. 引言:为什么需要语义检索系统? 想象一下,你正在管理一个包含数千份文档的知识库。当用户搜索"如何优化深度学习模型"时,传统的关键词匹配…...
基于Git版本管理的CasRel模型迭代实验记录规范
基于Git版本管理的CasRel模型迭代实验记录规范 做机器学习项目,尤其是像CasRel这样的关系抽取模型,最头疼的往往不是调参本身,而是实验管理。今天调了个学习率,明天改了下网络结构,后天又换了预处理方式。过了一周&am…...
Lingbot-Depth-Pretrain-ViTL-14模型精调教程:基于自定义数据集的迁移学习
Lingbot-Depth-Pretrain-ViTL-14模型精调教程:基于自定义数据集的迁移学习 想把手头那个强大的Lingbot深度估计模型,调教得更懂你的专业领域吗?比如,让它从看普通的街景,变成能精准分析医疗影像的层厚,或者…...
Python的__getattribute__访问控制
Python的__getattribute__访问控制:深入解析属性拦截机制 在Python中,对象的属性访问看似简单,但其底层机制却隐藏着强大的控制能力。__getattribute__方法作为属性访问的核心钩子,允许开发者拦截所有属性操作,实现动…...
JavaScript跨平台OCR引擎:Tesseract.js实现浏览器与Node.js图像文字识别
JavaScript跨平台OCR引擎:Tesseract.js实现浏览器与Node.js图像文字识别 【免费下载链接】tesseract.js Pure Javascript OCR for more than 100 Languages 📖🎉🖥 项目地址: https://gitcode.com/gh_mirrors/te/tesseract.js …...
40_终极落地Checklist:你的公司Agent是否真的会干活了
核心价值:可打印、可传播的检查表 更新频率:季度/半年重磅很多团队的 Agent 能跑起来、能演示、能交付,但真正到生产环境里能不能稳定地"干活",是两回事。这篇文章提供一个结构化的评估框架,帮你从五个维度判…...
深入解析x86控制寄存器CR0:从分页机制到写保护的关键作用
1. CR0寄存器:x86架构的"控制中枢" 如果把CPU比作计算机的大脑,那么CR0寄存器就像是这个大脑的"控制面板"。这个32位的特殊寄存器直接决定了处理器如何管理内存、如何处理异常、甚至如何执行最基本的指令。我第一次在内核源码中看到…...
别再死记硬背PID公式了!用Arduino调一个温控风扇,手把手带你理解P、I、D到底在干啥
用Arduino实战PID温控:不背公式也能调出完美风扇 记得第一次接触PID控制时,盯着那三个神秘的字母——P、I、D,还有一堆让人头大的公式,感觉就像在解一道没有答案的数学题。直到我用Arduino做了一个温控风扇,亲眼看着风…...
如何利用国内LLM对Obsidian的笔记进行分析
Win11 下用 Obsidian OpenCode 智谱 GLM 的安装与配置教程适用场景:不能方便走代理,但希望把 Obsidian 接到大模型,用于笔记整理、润色、总结与后续工具扩展。 本教程基于我们已经跑通的方案:Obsidian Agent Client OpenCode A…...
【技术实战】基于 Python + RPA 构建高可用 ERP 自动化填表系统的架构解析(以妙手 ERP 为例)
背景引入:Web UI 自动化的普遍痛点 在电商开发领域,对接各大电商平台的 API 往往面临权限审批严格、调用频率受限等问题。因此,利用 RPA(机器人流程自动化)技术,基于浏览器前端 DOM 进行 UI 自动化操作&am…...
