从0入门自主空中机器人-2-1【无人机硬件框架】
关于本课程:
本次课程是一套面向对自主空中机器人感兴趣的学生、爱好者、相关从业人员的免费课程,包含了从硬件组装、机载电脑环境设置、代码部署、实机实验等全套详细流程,带你从0开始,组装属于自己的自主无人机,并让它可以在未知的环境中自由避障穿行。
本次课程的重心主要落在自主空中机器人的搭建、代码部署及调试上,关于自主空中机器人的一些理论基础,例如动力学模型,路径搜索,轨迹规划,地图构建等内容。
课程视频
B站:【完结】从0入门自主空中机器人 | 开源 | 浙江大学Fast-Lab
深蓝学院:从0入门自主空中机器人
相关源码
GitHub:https://github.com/ZJU-FAST-Lab/Fast-Drone-250
Gitee:https://gitee.com/pn_code/Fast-Drone-250
1.无人机硬件框架

传统无人机框架如上图所示,但本课程中所使用到的科研无人机与上图有所出入,下面介绍无人机中一些关键组件功能以及选购建议
1.1飞控
介绍
- 飞控又称飞行控制器,用于根据输入指令解算电机推理
- 内置了IMU,气压计,磁罗盘等
- 包含I2C,UART,CAN,GPS等接口
建议型号
| 型号 | 数量 | 单价 | 链接 |
|---|---|---|---|
| Holybro pixhawk6c mini(最推荐) | 1 | 1269 | https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-4512157496.9.5426eed470KxTy&id=584372514369 |
| Holybro pixhawk6 | 1 | 1330 | https://item.taobao.com/item.htm?spm=a230r.1.14.16.4ec8482f6NDN6X&id=622652205393&ns=1&abbucket=13#detail |
| CUAV V5(比较厚且长) | 1 | 1799 | https://item.taobao.com/item.htm?spm=a1z10.5-c-s.w4002-22188405087.10.6be2688auoxM9A&id=594262853015 |
| CUAV X7(比较厚且长) | 1 | 1999 | https://item.taobao.com/item.htm?spm=a1z10.5-c-s.w4002-22188405087.16.6be2688auoxM9A&id=617384615131 |
1.2电调
介绍
- 电调,全称电子调速器,英文Electronic Speed Control,简称ESC
- 相当于电机驱动器
建议型号
| 型号 | 数量 | 单价 | 链接 |
|---|---|---|---|
| 银燕45A | 5 | 186 | https://item.taobao.com/item.htm?spm=a230r.1.14.1.3f8f12601zxOa6&id=652264033077&ns=1&abbucket=3#detail |
| 银燕30A | 5 | 75 | https://item.taobao.com/item.htm?spm=a230r.1.14.26.7cd558e1qyMpXO&id=544650621044&ns=1&abbucket=13#detail |
注:额定电流35A以上,且须支持Dshot协议
1.3电机
介绍
- 电机型号
- 如2212,3508,4010,这些数字表示电机定子的直径和高度(注意看是电机定子,不是转子)。
- 前两位是定子直径,后两位是定子高度,单位是毫米。前两位越大,电机越肥。
- 后两位越大,电机越高。一般来说,定子越粗,扭力越大,也就是力气越大。
- 至于高度,要看所选机架选择。
- KV值
- KV值是每1V的电压下电机每分钟空转的转速。例如KV800,在1V的电压下空转转速是800转每分钟。那么10V的电压下是8000转每分钟的空转转速。
- KV值越小,同等电压下转速越低,扭力越大,可带更大的桨。
- KV值越大,同等电压下转速越高,扭力越小,只能带小桨。
- 相对的说KV值越小,效率就越高。
- 航拍要选用低KV电机配大桨,转速低,效率高,同样低转速电机的震动也小。对航拍来说这些都是极为有利的。 四旋翼电池、电机、螺旋桨选型与搭配
建议型号
| 型号 | 数量 | 单价 | 链接 |
|---|---|---|---|
| Tmotor 2306 2400KV | 5 | 69 | https://item.taobao.com/item.htm?spm=a1z0d.6639537.1997196601.70.7b117484yJpUkV&id=640533613167 |
| Tmotor F60 2550KV | 5 | 149 | https://item.taobao.com/item.htm?spm=a230r.1.14.1.430128b7kVows1&id=650719152882&ns=1&abbucket=13#detail |
注:电机型号选择2306,KV值一定要在2400左右!!!
1.4机载电脑
介绍
无人机机载计算机可以做的事情非常多,以下是一些主要的应用:
-
飞行控制:无人机的机载计算机是无人机进行飞行控制的核心部件。它可以读取传感器信息、计算数据并控制舵机和电机等部件,从而让无人机稳定地在空中飞行。
-
视觉识别:机载计算机可以使用数百万像素的高清摄像头捕捉影像,通过图像处理算法实现目标识别、跟踪和定位,例如,卫星图像、气象预报、环保水质检测、森林火灾等。
-
数据采集和处理:机载计算机可以将传感器收集到的数据进行处理和存储,例如,传感器监控环境(温度、湿度、光照、气体浓度等),卫星数据、地理信息数据等。
-
无线数据传输:无人机机载计算机可以将无线网络之间的信息传输,例如,人脸识别、景区巡游信息、医疗应用、物流等。
-
物流配送:无人机机载计算机是实现无人机指挥中心的关键要素之一,可以实现在空中统一协调、指挥和监控,实现全天候、无人值守、自主配送、快速、准确、稳定等属性。
建议型号
| 型号 | 数量 | 单价 | 链接 |
|---|---|---|---|
| Intel NUC 猛虎峡谷 准系统 i5 薄款 | 1 | 2590 | https://item.taobao.com/item.htm?spm=a230r.1.14.18.42652f8frC214K&id=638758423001&ns=1&abbucket=3#detail |
1.5传感器
介绍
2.相关下载
- 课程硬件清单选型:下载地址
本网站只做课程笔记和资源整合,资源全部来源B站和深蓝学院,如有侵权,请联系站长删除!
相关文章:
从0入门自主空中机器人-2-1【无人机硬件框架】
关于本课程: 本次课程是一套面向对自主空中机器人感兴趣的学生、爱好者、相关从业人员的免费课程,包含了从硬件组装、机载电脑环境设置、代码部署、实机实验等全套详细流程,带你从0开始,组装属于自己的自主无人机,并让…...
Kafka高性能设计
高性能设计概述 Kafka高性能是多方面协同的结果,包括集群架构、分布式存储、ISR数据同步及高效利用磁盘和操作系统特性等。主要体现在消息分区、顺序读写、页缓存、零拷贝、消息压缩和分批发送六个方面。 消息分区 存储不受单台服务器限制,能处理更多数据…...
Redis字符串底层结构对数值型的支持常用数据结构和使用场景
字符串底层结构 SDS (Simple Dynamic Strings) 是 Redis 中用于实现字符串类型的一种数据结构。SDS 的设计目标是提供高效、灵活的字符串操作,同时避免传统 C 字符串的一些缺点。 struct sdshdr {int len; // 已使用的长度int free; // 未使用的长度char bu…...
uniapp 微信小程序 数据空白展示组件
效果图 html <template><view class"nodata"><view class""><image class"nodataimg":src"$publicfun.locaAndHttp()?localUrl:$publicfun.httpUrlImg(httUrl)"mode"aspectFit"></image>&l…...
在vscode的ESP-IDF中使用自定义组件
以hello-world为例,演示步骤和注意事项 1、新建ESP-IDF项目 选择模板 从hello-world模板创建 2、打开项目 3、编译结果没错 正在执行任务: /home/azhu/.espressif/python_env/idf5.1_py3.10_env/bin/python /home/azhu/esp/v5.1/esp-idf/tools/idf_size.py /home…...
目标检测,语义分割标注工具--labelimg labelme
1 labelimg labelimg可以用来标注目标检测的数据集, 提供多种格式的输出, 如Pascal Voc, YOLO等。 1.1 安装 pip install labelimg1.2 使用 命令行直接输入labelimg即可打开软件主界面进行操作。 使用非常简单, 不做过细的介绍࿰…...
发明专利与实用新型专利申请过程及自助与代办方式对比
申请专利(发明专利、实用新型专利、外观设计专利)有两种方式:1、自己直接向国家知识产权局申请。2、通过专利代办处申请。以下是对这两种专利类型(发明专利、实用新型专利)申请过程及两种申请方式的详细介绍和对比,参考…...
Datawhale AI冬令营(第二期)动手学AI Agent task2--学Prompt工程,优化Agent效果
目录 如何写好Prompt? 工具包神器1:Prompt框架——CO-STAR 框架 工具包神器2:Prompt结构优化 工具包神器3:引入案例 案例:构建虚拟女友小冰 1. 按照 CO-STAR框架 梳理目标 2. 撰写Prompt 3. 制作对话生成应用&…...
基于python对网页进行爬虫简单教程
python对网页进行爬虫 基于BeautifulSoup的爬虫—源码 """ 基于BeautifulSoup的爬虫###?一、BeautifulSoup简介1.?Beautiful?Soup提供一些简单的、python式的函数用来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供…...
【JavaEE进阶】@RequestMapping注解
目录 📕前言 🌴项目准备 🌲建立连接 🚩RequestMapping注解 🚩RequestMapping 注解介绍 🎄RequestMapping是GET还是POST请求? 🚩通过Fiddler查看 🚩Postman查看 …...
【WebAR-图像跟踪】在Unity中基于Imagine WebAR实现AR图像识别
写在前面的话 感慨一下, WebXR的发展是真的快,20年的时候,大多都在用AR.js做WebAR。随着WebXR标准发展,现在诸如Threejs、AFrame、Unity等多个平台都支持里WebXR。 本文将介绍在Unity中使用 Image Tracker实现Web端的AR图像识别功…...
向bash shell脚本传参
例子: ~ script % touch parameter.sh ~ script % chmod 755 parameter.sh ~ % vim parameter.shparameter.sh: #!/usr/bin/env bashecho the name of current script is $0echo the first parameter is $1echo the second parameter is $2echo all parameters: $…...
Oracle中listagg与wm_concat函数的区别
Oracle中listagg与wm_concat都可以用于将多行数据合并成一个字符串的两个函数,区别如下: 1、分隔符:listagg支持指定分隔符,wm_concat默认为","不支持指定; 2、排序:listagg支持排序后…...
热更新与资源管理
热更新、资源管理、打包发布是 Unity 游戏开发中关键的技术点。这些功能可以极大地提高项目的灵活性和资源利用效率,尤其是在多平台、长生命周期的游戏项目中。以下从技术概述、知识点分析、实现方法和代码举例逐一进行详细分析。 一、热更新 热更新指在不重新发布…...
Momentum Provably Improves Error Feedback!
以下是您提供的论文摘要的翻译: **摘要** 由于在分布式环境中训练机器学习模型时通信开销较高,现代算法不可避免地依赖于有损通信压缩。然而,如果不加以处理,压缩造成的错误会传播,并可能导致严重的不稳定行为&#…...
Elasticsearch-脚本查询
脚本查询 概念 Scripting是Elasticsearch支持的一种专门用于复杂场景下支持自定义编程的强大的脚本功能,ES支持多种脚本语言,如painless,其语法类似于Java,也有注释、关键字、类型、变量、函数等,其就要相对于其他脚本高出几倍的性…...
《Opencv》基础操作详解(3)
接上篇:《Opencv》基础操作详解(2)-CSDN博客 Opencv基础操作 目录 Opencv基础操作 18、图像边界填充 19、阈值处理(图像的二值化) 20、图像平滑处理 (1)、均值滤波(Mean Filte…...
meshy的文本到3d的使用
Meshy官方网站: 中文官网: Meshy官网中文站 编辑 Opens in a new window 编辑www.meshycn.com Meshy AI 中文官网首页 英文官网: Meshy目前似乎还没有单独的英文官网,但您可以在中文官网上找到英文界面或相关英文资料。 链…...
C语言技巧之有条件的累加
什么叫有条件的累加? 主要是依靠循环,一般形式是一个在循环里面遍历,另一个只有达到一定的条件才会累加(移动到下一个变量),从言语也能看出来,主要是用在字符串和数组里面的,毕竟链表…...
解释为什么fetch(JavaScript)无法将读取的数据存入外部变量
(一)问题描述 你可能会遇到这样的情况:在fetch之外创建变量,将fetch获取到的数据赋值给这个变量以便在fetch外使用,但在使用这个变量的时候发现值是空的,这是为什么呢? (二…...
在软件开发中正确使用MySQL日期时间类型的深度解析
在日常软件开发场景中,时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志,到供应链系统的物流节点时间戳,时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库,其日期时间类型的…...
vue3 字体颜色设置的多种方式
在Vue 3中设置字体颜色可以通过多种方式实现,这取决于你是想在组件内部直接设置,还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法: 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...
【HTML-16】深入理解HTML中的块元素与行内元素
HTML元素根据其显示特性可以分为两大类:块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...
3403. 从盒子中找出字典序最大的字符串 I
3403. 从盒子中找出字典序最大的字符串 I 题目链接:3403. 从盒子中找出字典序最大的字符串 I 代码如下: class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...
QT: `long long` 类型转换为 `QString` 2025.6.5
在 Qt 中,将 long long 类型转换为 QString 可以通过以下两种常用方法实现: 方法 1:使用 QString::number() 直接调用 QString 的静态方法 number(),将数值转换为字符串: long long value 1234567890123456789LL; …...
2023赣州旅游投资集团
单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...
让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比
在机器学习的回归分析中,损失函数的选择对模型性能具有决定性影响。均方误差(MSE)作为经典的损失函数,在处理干净数据时表现优异,但在面对包含异常值的噪声数据时,其对大误差的二次惩罚机制往往导致模型参数…...
安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)
船舶制造装配管理现状:装配工作依赖人工经验,装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书,但在实际执行中,工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...
适应性Java用于现代 API:REST、GraphQL 和事件驱动
在快速发展的软件开发领域,REST、GraphQL 和事件驱动架构等新的 API 标准对于构建可扩展、高效的系统至关重要。Java 在现代 API 方面以其在企业应用中的稳定性而闻名,不断适应这些现代范式的需求。随着不断发展的生态系统,Java 在现代 API 方…...
Kubernetes 节点自动伸缩(Cluster Autoscaler)原理与实践
在 Kubernetes 集群中,如何在保障应用高可用的同时有效地管理资源,一直是运维人员和开发者关注的重点。随着微服务架构的普及,集群内各个服务的负载波动日趋明显,传统的手动扩缩容方式已无法满足实时性和弹性需求。 Cluster Auto…...
