在B站上看到有讲无人机自动控制方面的视频,感觉不错,分享下:

https://www.bilibili.com/video/BV1aW411E7Qq/?spm_id_from=333.788.videocard.1

---------------------------------------------------

看来这个才知道,有飞控的叫无人机,无飞控的叫航模(远程遥控飞机)。

原来无人机里面的飞控也是用的PID控制算法。

没有飞行控制器的飞机是难以稳定飞行的,因为它的飞行控制是需要人在远程进行操控的。人类在物理世界中驾驶的载人飞机其控制器其实就是驾驶员。

无人机的飞行状态由飞控器件来控制,人类只需要给出基本的指令,如:悬停,向前飞,向后方,向上飞,向下飞,向左飞,向右飞等指令,而具体的对电动机的控制则由飞控器件根据指令来进行操作。

无人机的控制示意图,个人猜测版:

四旋翼无人机大致长相如下:

4旋翼无人机共有4个电动机螺旋桨,1号和3号是逆时针选择,2号和4号是顺时针选择。

悬停的时候1,2,3,4号电动机产生的升力之和和无人机的自身重力相当, 1,3号电动机产生的逆时针扭矩 与  2,4号电动机产生的顺时针扭矩相互抵消。

向前运动的时候,1,2号电动机减少旋转转数,3,4号增加旋转的转数,于是头向下倾斜,尾向上倾斜。顺逆时针扭矩相互抵消,升力与重力相抵消,并产生前向拉力。

向后运动的时候,1,2号电动机增加旋转转数,3,4号减少旋转的转数,于是头向上倾斜,尾向下倾斜。顺逆时针扭矩相互抵消,升力与重力相抵消,并产生前后拉力。

以头尾的中间线为轴:

向左运动的时候,2,3号电动机减少旋转转数,1,4号增加旋转的转数,于是机身向左下倾斜,尾向右上倾斜。顺逆时针扭矩相互抵消,升力与重力相抵消,并产生前左拉力。

向右运动的时候,1,4号电动机减少旋转转数,2,3号增加旋转的转数,于是机身向右下倾斜,尾向左上倾斜。顺逆时针扭矩相互抵消,升力与重力相抵消,并产生前右拉力。

以机身的中心点的垂直线为轴:

向左机身平面左转的时候,2,4号电动机减少旋转转数,1,3号增加旋转的转数,于是机身向左扭矩增加,机身向右扭矩减少。升力与重力相抵消,顺逆时针扭矩不能相互抵消,产生左转的扭矩。

向右机身平面右转的时候,1,3号电动机减少旋转转数,2,4号增加旋转的转数,于是机身向右扭矩增加,机身向左扭矩减少。升力与重力相抵消,顺逆时针扭矩不能相互抵消,产生右转的扭矩。

--------------------------------------------

视频分享---------《无人机背后的PID控制》的更多相关文章

  1. 一文读懂PID控制算法(抛弃公式,从原理上真正理解PID控制)

      PID控制应该算是应用非常广泛的控制算法了.小到控制一个元件的温度,大到控制无人机的飞行姿态和飞行速度等等,都可以使用PID控制.这里我们从原理上来理解PID控制. PID(proportion ...

  2. 【iCore3应用开发平台】发布 iCore3 应用开发平台PID控制代码

    说明:1.本代码包包含FPGA和STM32F407两部分内容2.FPGA工程为出厂代码FPGA工程,版本为REV43.STM32F407为只含PID控制的ARM工程4.在使用风扇过程中,请勿将手伸入扇 ...

  3. .net之工作流工程展示及代码分享(四)主控制类

    现在应该讲主控制类了,为了不把系统弄得太复杂,所以就用一个类作为主要控制类(服务类),作为前端.后端.业务逻辑的控制类. WorkflowService类的类图如下: 该类的构造函数: public ...

  4. 两轮自平衡小车双闭环PID控制设计

                                                                                            两轮自平衡小车的研究意义 ...

  5. 关于python测试webservice接口的视频分享

    现在大公司非常流行用python做产品的测试框架,还有对于一些快速原型产品的开发也好,很好地支持OO编程,代码易读.Python的更新挺快的,尤其是第三方库. 对于测试人员,代码基础薄弱,用pytho ...

  6. wordpress使用video.js与七牛云存储实现无广告视频分享应用

    video.js是一款极受欢迎的基于HTML5的开源WEB视频播放器,其充分利用了HTML5的视频支持特性,可以实现全平台的无视频插件播放功能,对于现在流行的手机.PAD等移动智能终端有极佳的应用体验 ...

  7. 数字式PID控制的应用总结

    PID控制是一个二阶线性闭环控制器,通过调整比例.积分和微分三项参数,使得大多数的工业控制系统获得良好的闭环控制性能.PID控制优点:a. 技术成熟,b. 易被人们熟悉和掌握,c. 不需要建立数学模型 ...

  8. PID控制学习笔记(二)

    不管是基本的PID控制还是变形的PID控制算法,其核心都是对输入信号(设定值信号.测量信号或者偏差信号等)做基本的比例.积分.微分运算,最终提供给被控过程良好的调节信号. 在过程控制仪表,特别是在数字 ...

  9. SLAM+语音机器人DIY系列:(四)差分底盘设计——5.底盘PID控制参数整定

    摘要 运动底盘是移动机器人的重要组成部分,不像激光雷达.IMU.麦克风.音响.摄像头这些通用部件可以直接买到,很难买到通用的底盘.一方面是因为底盘的尺寸结构和参数是要与具体机器人匹配的:另一方面是因为 ...

  10. MATLAB-离散系统的数字PID控制仿真

    %PID Controller clear all; close all; ts=0.001; %采样时间=0.001s  sys=tf(,]); %建立被控对象传递函数 dsys=c2d(sys,t ...

随机推荐

  1. ASP.NET MVC 查询加分页

    使用了LinqKit.PagedList.Mvc.EntityFramework 等DLL 直接使用nuget安装即可. 1.表模型: using System.ComponentModel.Data ...

  2. Selenium模块的使用(一)

    简介 selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码的问题 selenium本质是通过驱动浏览器, 完全模拟浏览器的操作,比 ...

  3. 在线RSA签名工具

    在线RSA签名工具支持多种RSA签名算法,包括RSA-MD5.RSA-SHA1.RSA-SHA224.RSA-SHA256.RSA-SHA384和RSA-SHA512.用户只需上传需要签名的数据和私钥 ...

  4. 关于Elasticsearch查找相关的问题汇总(match、match_phrase、query_string和term)

    关于Elasticsearch查找相关的问题汇总(match.match_phrase.query_string和term) 查询全部: { "query": { "ma ...

  5. 《Objective-C Direct Methods》学习笔记

    原文通过对Objective-C发展史.Objective-C中Runtime的动态派发,C语言的直接派发进行铺垫介绍,引出了direct methods这个"新特性"(文章写于2 ...

  6. 【译】了解17.10 GA 中最新的 Git 工具特性

    我们相信提高开发和团队协作的生产力可以帮助您产生更好的软件解决方案.这就是为什么 Visual Studio 版本控制团队发布了新特性,简化了内部循环和代码审查体验.您将获得 AI 支持编写提交消息. ...

  7. STM32 学习:IAP有关介绍

    --- title: mcu-stm32-IAP-0-about date: 2020-05-27 08:51:58 categories: tags: - iap - stm32 - about - ...

  8. Oracle自动化编译无效对象

    问题描述:使用存储过程的方式对oracle数据库的无效对象,如视图或者同义词进行定期的编译,让他变成一个有效的对象,加上定时任务可以实现自动化的处理.同时在数据库内部创建一个记录表,用来记录被编译过的 ...

  9. helloworld - 程序员的第一个社区终于来了

    helloworld - 程序员的第一个社区终于来了 csdn事件 CSDN旗下的GitCode最近因为一种极其不道德的行为引起了开发者的广泛愤怒和抗议.CSDN在没有通知或征求开发者同意的情况下,悄 ...

  10. 在linux系统中,对标准输出(stdout,文件描述符为 1)和标准错误(stderr,文件描述符为 2)重定向到文件

    请参考:2>/dev/null和>/dev/null 2>&1和2>&1>/dev/null的区别 下面的是本人浅尝辄止了,并非全貌,还是上面的文章说的比 ...