从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外使用,但在使用这个变量的时候发现值是空的,这是为什么呢? (二…...
条件运算符
C中的三目运算符(也称条件运算符,英文:ternary operator)是一种简洁的条件选择语句,语法如下: 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true,则整个表达式的结果为“表达式1”…...
【算法训练营Day07】字符串part1
文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接:344. 反转字符串 双指针法,两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...
实现弹窗随键盘上移居中
实现弹窗随键盘上移的核心思路 在Android中,可以通过监听键盘的显示和隐藏事件,动态调整弹窗的位置。关键点在于获取键盘高度,并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...
Rapidio门铃消息FIFO溢出机制
关于RapidIO门铃消息FIFO的溢出机制及其与中断抖动的关系,以下是深入解析: 门铃FIFO溢出的本质 在RapidIO系统中,门铃消息FIFO是硬件控制器内部的缓冲区,用于临时存储接收到的门铃消息(Doorbell Message)。…...
小木的算法日记-多叉树的递归/层序遍历
🌲 从二叉树到森林:一文彻底搞懂多叉树遍历的艺术 🚀 引言 你好,未来的算法大神! 在数据结构的世界里,“树”无疑是最核心、最迷人的概念之一。我们中的大多数人都是从 二叉树 开始入门的,它…...
DiscuzX3.5发帖json api
参考文章:PHP实现独立Discuz站外发帖(直连操作数据库)_discuz 发帖api-CSDN博客 简单改造了一下,适配我自己的需求 有一个站点存在多个采集站,我想通过主站拿标题,采集站拿内容 使用到的sql如下 CREATE TABLE pre_forum_post_…...
CppCon 2015 学习:Time Programming Fundamentals
Civil Time 公历时间 特点: 共 6 个字段: Year(年)Month(月)Day(日)Hour(小时)Minute(分钟)Second(秒) 表示…...
怎么开发一个网络协议模块(C语言框架)之(六) ——通用对象池总结(核心)
+---------------------------+ | operEntryTbl[] | ← 操作对象池 (对象数组) +---------------------------+ | 0 | 1 | 2 | ... | N-1 | +---------------------------+↓ 初始化时全部加入 +------------------------+ +-------------------------+ | …...
TCP/IP 网络编程 | 服务端 客户端的封装
设计模式 文章目录 设计模式一、socket.h 接口(interface)二、socket.cpp 实现(implementation)三、server.cpp 使用封装(main 函数)四、client.cpp 使用封装(main 函数)五、退出方法…...
从实验室到产业:IndexTTS 在六大核心场景的落地实践
一、内容创作:重构数字内容生产范式 在短视频创作领域,IndexTTS 的语音克隆技术彻底改变了配音流程。B 站 UP 主通过 5 秒参考音频即可克隆出郭老师音色,生成的 “各位吴彦祖们大家好” 语音相似度达 97%,单条视频播放量突破百万…...
