平衡小车转向环分析与代码实现

您所在的位置:网站首页 自平衡原理图怎么画 平衡小车转向环分析与代码实现

平衡小车转向环分析与代码实现

2024-07-12 15:03:18| 来源: 网络整理| 查看: 265

目录 前言一、平衡小车转向环的作用二、转向环P控制1.左右编码器之差作为偏差2.Z轴陀螺仪作为偏差 三、转向环PD控制结语

前言

本文将对平衡小车转向环控制方式进行分析并用代码实现,平衡小车基于STM32。

以下是本篇文章的正文内容 一、平衡小车转向环的作用

转向环是建立在平衡环和速度环基础上增加的,在使用转向环之前平衡环和速度环要调试好。两个相同的直流减速电机给予同样的PWM可能会输出不一样的速度,当驱动小车直线行驶时由于两轮速度不同会导致走偏。那么转向环就是弥补两个电机的误差,让小车尽可能地走直线。 转向环控制,可以不加入积分控制,原因是存在偏航角偏移和车轮滑动等误差,数据准确性不高,消不消除静差也无所谓。所以一般采用P或者PD控制。计算好的PWM融合到电机的PWM上。 根据实际情况调整符号。

Moto1 = Balance_Pwm + Velocity_Pwm - Turn_Pwm; Moto2 = Balance_Pwm + Velocity_Pwm + Turn_Pwm; 二、转向环P控制 1.左右编码器之差作为偏差

小车走偏时左右编码器之差就不为0,此时可以调整左右电机的PWM。此算法的缺点是车轮打滑时无法检测。

代码示例,忽略遥控部分。

int turn(int encoder_left, int encoder_right) { int turn, bias; bias = encoder_left - encoder_right; turn = Kp * bias; return turn; } 2.Z轴陀螺仪作为偏差

利用Z轴角速度或者角度的偏差调整PWM。缺点是偏航角会偏移,但能检测到车轮打滑,很容易加入遥控。以这种形式控制小车转向是比较常见的。

代码示例,忽略遥控部分。

int turn(int gyro) { int turn, bias; bias = gyro - 0; turn = Kp * bias; return turn; } 三、转向环PD控制

M法测速的编码器数值相当于电机转速,两个编码器差值作积分相当于角度,将这个角度作为偏差进行PD控制,Z轴角速度用于微分处理。理想情况下代码较科学,加入遥控时这个积分项不太友好。

代码示例,忽略遥控部分。

int turn(int encoder_left, int encoder_right, int gyro) { static int bias; int Turn_Amplitude=50, turn, encoder_temp; encoder_temp = encoder_left - encoder_right; bias += encoder_temp; //对角速度积分 //限幅 if(bias > Turn_Amplitude) bias = Turn_Amplitude; if(bias


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭