智能小车差速系统控制
智能小车差速系统控制
- 前言
- 原理分析
- PID
- 弯道状态分析
- 代码实现
- 其他
前言
现在C车已经由原来的一个电机控制车辆速度转为现在的两个电机分别控制两个轮子的转动,那么B车所拥有的机械差速在C车上将不再存在,所以我查了一些资料,总结出一些有关于差速控制的说明。
原理分析
PID
PID是比例积分微分控制算法,再反馈调节的作用西保持系统的稳定,在差速系统中主要运用他来进行两路电机的速度匹配,能够实现直线行驶的稳定。本文章只对PID控制算法做简单说明。
弯道状态分析
本次采用的模型为ackermann 模型,该模型较为理想化,但用在C车上效果还是比较显著的,可以参考后根据需要使用。
如图,现假设B为小车后两轮的轮距,L为小车前轮到后轮的距离。假设此处最优为最优路径,此时小车左方与车辆正前方的夹角为α(α有正有负),使转弯半径在左侧与后两轮平行且对其得到半径为R,此时小车后两轮的角速度相等,即小车后轮的
ω_left=ω_right
设小车两后轮中间位置的速度为V,则
V_left/Rin=V_right/Rout=V/R
R=L/tanα Rin=R-B/2 Rout=R+B/2
由此可得小车左右后轮的速度分别为:
参考文章的计算结果:
左轮:V_left=V*(1+Btanα/2L)
右轮:V_right=V(1-Btanα/2L)
自己的计算结果:
左轮:V_left=V(1-Btanα/2L)
右轮:V_right=V*(1+Btanα/2L)
代码实现
unsigned int speed_want;//小车行驶的期望速度
float t;//tanα结果
V_left = speed_want * (1 - (B*t) / (2*L));//左轮速度
V_left = speed_want * (1 + (B*t) / (2*L));右轮速度
其他
本文中V为小车行驶的期望速度(也可理解为小车在赛道上行驶的直线速度),文章中计算结果有两个,一个为参考文章所提供的,另一个是我根据公式计算的结果,使用者可以根据不同来选择使用。
智能小车差速系统控制相关推荐
- 基于PID算法的STM32爬坡循迹智能小车的设计与实现
目录 摘要 0 引言 1 需求分析 2 系统结构 3 硬件电路设计 3.1 整体硬件框架 3.2 主控制电路 3.3 电源模块 3.4 红外循迹 3.5 电机驱动 3.6 无线蓝牙控制 4 软件设计 ...
- Arduino WIFI智能小车 无线视频遥控小车 课程设计
目录 一.项目产生的背景分析 2 1.1项目想法 2 1.2用户将如何从产品中获益 2-3 二.方案设计 3 2.1小车整体系统 2-3 2.2小车部件介绍 3-5 三.小车组装 6 3.1小车配件购 ...
- 用MATLAB来做智能小车的建模与仿真
两种智能小车的构造简介 在市面上常见的两种智能小车都是基于轮式的,在某宝上面卖的最多的,各位在学生时代拿来应付课程设计和毕业设计用的各种小车分为两种. 1.后轮驱动,前轮阿克曼转向的,通常后轴通过有刷 ...
- 基于MSP430智能小车的设计
摘要:介绍一种基于MSP430F2274单片机为核心的智能小车.小车采用超声波测距技术实现自动避障,同时通过语音模块来播报出小车与障碍物的距离.为了使测距不受温度影响,用温度传感器实时检测小车周围环境 ...
- 两轮智能小车按手绘路径运动的实现思路
前言, 遇到一个小项目,要实现上位机手绘一条线条轨迹,发送给智能小车,让智能小车能按照手绘轨迹运动.要求不高,运动起来有那么个意思就行了,当然要做得好,还需要位置反馈这才运动准确,本文不涉及位置控制, ...
- 智能小车循迹、跟随业务代码编写
通过这段时间的学习,终于是把智能小车的循迹.跟随.避障业务实现出来.那么通过写下这篇文章,将自己在这个过程的心得.组装智能小车以及通过代码的编写实现各种业务的心路历程记录下来. 这是小车的实物图,通过 ...
- 基于树莓派的智能小车
基于树莓派的智能小车 代码位置:Github地址 文章目录 基于树莓派的智能小车 一.简介 二.实验设备 三.前期准备 四.实验原理 4.1硬件调试 4.2 代码框架 4.3 代码实现 4.3.1 避 ...
- RIKIBOT智能小车关于环境变量的配置
目录 一.简介 二.打开环境变量配置文件 三.相关环境变量的解释 1.CUDA路径设置 2.ROS环境变量 3.ROS的网络配置 4.指定摄像头 5.车体指定 6.车型指定与导航算法指定 7.IMU指 ...
- 自动跟随小车c语言,基于OpenCV的智能小车运动轨迹跟踪方法研究
摘要: 随着人工智能技术的快速发展,智能小车开发受到越来越多研究者的关注,也已经成为一个重要的研究方向,而解决智能小车在路径规划中行驶的运动故障重要手段是对其进行的视频监控,但是智能小车的视频监控只能 ...
最新文章
- 随机改变颜色返回#+...样式的值
- EXT GridPanel
- matlab计算运行时间方法
- DataTable某一列的值转化成集合
- 一款漂亮的赞助打赏单页界面美化版源码
- 14Linux远程登录And15Linux远程文件传输
- 计算机技能测试题九,计算机技能培训后人人过关测试试题九
- php 分页 报表 框架,zentaoPHP框架的分页解决方案
- 关于复利2.0 3.0
- 第一周 从C走进C++ 002 命令行参数
- CentOS6修改/etc/fstab文件造成系统无法启动的问题
- BOOST升压电路--34063升压升不上去
- ANSYS Workbench网格划分具体数值方法
- Java IO流经典实例
- 14个PLC入门基础知识
- 张小龙2019微信公开课演讲实录
- 最全电商分类信息(10)
- 【论文解读】Stacked Hourglass Networks
- 爬虫小程序 - 单词量测试
- linux文件系统与模型【笔记】 surper block/inode/dentry/file
热门文章
- 【IPD】集成产品开发培训课程「3月4-5日」
- 6.查询学过编号“001”并且也学过编号“002”课程的同学的学号、姓名
- 群论在物理学中的应用
- ios 应用发布渠道大全
- android 电视安装apk文件夹,智能电视无法识别apk文件怎么办?简单几招教你搞定...
- 【物联网】OpenWrt SCP工具的使用
- windows机器密码错误---齐治堡垒机
- Flink-Connectors(连接器)(2)Redis
- ORA-00001: 违反唯一约束条件解决方案(oracle 00001)
- 香港李嘉诚为什么要牵手杭州马云?