arduino两轮平衡车(二)-- 原理讲解
一、模型建立
根据单摆模型,建立以下模型,如下图:
忽略空气阻力的情况下,当物体离开平衡位置后,物体会受到竖直向下的重力和沿着悬挂线向上方向的拉力的合力作用,使得物体在平衡位置做往返运动。该合力又称为恢复力,如下:
其中,悬线与竖直方向夹角为θ,与物体运动方向夹角为 π- θ,F方向与物体运动方向相切,指向平衡位置。
又由极限,可知,当θ较小时,有
实际中,物体除了受到回复力F的作用外,还受到空气阻力F阻的作用,从而最终会静止在平衡位置。而运动中空气阻力的大小与物体运动速度大小成正比,该比例由阻尼系数k表示,而阻力方向与运动速度方向相反。此时物体在运动方向上所受合力如下:
因此,对于单摆模型,其保持平衡需耀具备以下条件:
- 受到与偏移方向相反的回复力的作用
- 受到与物体运动方向相反的阻尼力的作用
对于两轮平衡车,可以简化为倒立摆模型,如下:
而对于倒立摆模型,其受力如下:
如单摆模型,可知物体受到回复力为:
但由于此时回复力方向与物体平衡位置方向相反,因此物体反而会加速离开平衡位置。
为了让物体回到平衡位置,即保持与竖直方向平行,可以让倒立摆向与物体偏离方向相反的方向做加速运动,加速度为a。此时倒立摆受力如图:
倒立摆将受到惯性力:
不计空气阻力时,倒立摆运动方向上所受合力为:
当偏移角较小时,有
其中,取近似
当k1>g时,物体在运动方向上受到与回复力方向相反的力。此时,在空气阻力作用下,物体将在平衡位置往返,最终回到平衡位置。而为了让物体尽快回到平衡位置,可以通过外加阻尼力,其大小与物体偏离平衡位置的速度成正比,比例系数为k2,方向相反,则有:
因此,可以通过外力,来使小车保持平衡。而外力的来源即是通过控制小车车轮的加速度,使得小车获得相应的惯性力。其中k1会使得小车向物体倾倒的相反方向做加速运动,k1过大过小将导致小车直接偏离品平衡位置的方向而倾倒;k2使得小车能够尽快回到平衡位置,k2过大过小时,都会影响小车回到平衡位置的调节时间。
二、系统分析
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
三、改进
![](/assets/blank.gif)
arduino两轮平衡车(二)-- 原理讲解相关推荐
- arduino两轮平衡车(一)-- 材料准备
(1)主控板 -- Arduino UNO R3 技术规格 工作电压:5V 输入电压:接上USB时无须外部供电或外部7V~12V DC输入 输出电压:5V DC输出和3.3V DC输出 和外部电源输入 ...
- 基于STC单片机的两轮平衡车设计
给大家传福利了..后续继续共享基于Arduino/安卓Android/树莓派raspberry等平台的两轮车设计 这是我前年暑假做的一个小项目,今年拿出来整理了下当毕设了(当然毕设里添加了许多其他元素 ...
- 浅谈两轮平衡车的控制原理
前言:在IT行业摸爬滚打了好几年,好不容易从学生熬成了社会人士,通过自己的不断努力又从社会人士熬成了学生.这几年的修行,同道博友给了我很多的帮助,很早之前就有写博客的想法,想借自己绵薄之力来回馈一下默 ...
- 玩转OpenHarmony PID:教你打造两轮平衡车
目录 简介 硬件配置资源 原理概括 PID算法介绍 两步搭建样例工程 关键算法讲解 直立环控制算法: 速度环控制算法: 转向环控制算法: 总结 相关链接 简介 此次为大家带来的是OpenAtom Op ...
- 中科深谷开源智能两轮平衡车
中科深谷开源智能两轮平衡车 中科深谷开源智能平衡车,集多学科交叉融合为一,具备自平衡,行走控制,无线通讯和4G远程控制,视觉识别跟随等功能,接口丰富,扩展性强,可支持多台调度控制. 提示:以下是本篇文 ...
- K60平台下的两轮平衡车
基于飞思卡尔K60的两轮平衡车 一.总体设计 二.电路设计篇 三.软件设计 四.实物测试 五.改进和展望 六.附录 一.总体设计 此系统用到的功能模块都是集成好的,这里只设计了一个底板来连接各个硬件模 ...
- stm32两轮平衡车资料
[MCU实战经验]+基于stm32两轮平衡车制作:http://www.stmcu.org/module/forum/thread-582883-1-1.html 转载于:https://www.cn ...
- 直立两轮平衡车核心代码
两轮平衡车相关算法 卡尔曼滤波函数 /************************************************************** 函数名称:float KalmanF ...
- stm32两轮平衡车项目资料 两轮平衡车原理图
stm32两轮平衡车项目资料 两轮平衡车原理图+PCB+程序 现有:693651816272834lin昵称好难设置
- stm32两轮平衡车项目资料 两轮平衡车原理图+PCB+程序
stm32两轮平衡车项目资料 两轮平衡车原理图+PCB+程序 YID:943651816272834lin昵称好难设置
最新文章
- html鼠标点击之后隐藏,html中如何用js设置鼠标两秒不动,隐藏鼠标
- 开发日记-20190417 关键词 WheelView(视图绘制)
- SAP MM Consignment 寄售库存
- 推荐美加版S3好用的两个ROM
- 7-20 表达式转换 (25 分)(代码详解+题目分析)
- android aidl工具,【Android】AIDL介绍和实例讲解
- 关于浮点数和字符串转换的函数示例
- bios刷写工具_不仅仅带来新功能!以戴尔游戏本为例的更新BIOS详细教程
- Nginx - 原理机制
- cmd 返回目录操作
- C语言程序员未来发展前景如何
- Unity出IOS包报错记 -1
- Hbuilder安装及使用教程
- C#实现QQ扫码登录
- 盘点cg设计师遇到的远程办公难题以及解决办法
- 【GMS认证】关于XTS命令总结
- html图片自适应上下左右居中显示,图片大小自适应垂直居中的方法
- java中的push方法_Java ArrayDeque push()方法与示例
- Unity接入微信SDK——iOS(接入微信SDK)
- 计算机专业去电视台,计算机网络与多媒体技术在电视台中的发展前景
热门文章
- 服务器安装找不到lsi驱动,IBM 服务器 SAS Raid LSI Windows2008 硬盘 驱动
- Python爬虫之七:爬虫实战-爬取豆瓣电影 top 250
- php数字转成字符串的函数,php怎么将数字转成字符串?
- Java面试--观察者模式
- python django 商品进销存管理系统(毕设、课设、学习)
- AD画PCB时,如何自动删除之前的连线
- DllMain函数参数简介
- 多测师拱墅校区肖sir___性能测试之单个接口性能和多个接口性能测试(3)
- 计算机操作员中级操作技能,计算机操作员中级操作技能试卷.doc
- python批量实现百度网盘链接有效性检测