• 方案介绍
  • 附件下载
  • 推荐器件
  • 相关推荐
申请入驻 产业图谱

第16章-超声波跟随功能 基于STM32的三路超声波自动跟随小车 毕业设计 课程设计

2024/06/24
874
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

联系方式.txt

共1个文件

第16章-超声波跟随功能

无PID跟随功能

在这里插入图片描述
在这里插入图片描述

//超声波跟随
	if(HC_SR04_Read() > 25)
	{
		motorForward();//前进
		HAL_Delay(100);
	}
	if(HC_SR04_Read() < 20)
	{
		motorBackward();//后退
		HAL_Delay(100);
	}

PID跟随功能

在这里插入图片描述
在pid.c中定义一组PID参数

tPid pidFollow;    //定距离跟随PID
	pidFollow.actual_val=0.0;
	pidFollow.target_val=22.50;//定距离跟随 目标距离22.5cm
	pidFollow.err=0.0;
	pidFollow.err_last=0.0;
	pidFollow.err_sum=0.0;
	pidFollow.Kp=-0.5;//定距离跟随的Kp大小通过估算PID输入输出数据,确定大概大小,然后在调试
	pidFollow.Ki=-0.001;//Ki小一些
	pidFollow.Kd=0;

在这里插入图片描述

//**********PID跟随功能***********//
    g_fHC_SR04_Read=HC_SR04_Read();//读取前方障碍物距离
	if(g_fHC_SR04_Read < 60){  //如果前60cm 有东西就启动跟随
		g_fFollow_PID_Out = PID_realize(&pidFollow,g_fHC_SR04_Read);//PID计算输出目标速度 这个速度,会和基础速度加减
		if(g_fFollow_PID_Out > 6) g_fFollow_PID_Out = 6;//对输出速度限幅
		if(g_fFollow_PID_Out < -6) g_fFollow_PID_Out = -6;
		motorPidSetSpeed(g_fFollow_PID_Out,g_fFollow_PID_Out);//速度作用与电机
	}
	else motorPidSetSpeed(0,0);//如果前面60cm 没有东西就停止
	HAL_Delay(10);//读取超声波传感器不能过快

在这里插入图片描述
然后编译,烧录测试 。
下一章节 我们开始使用6050 讲解6050使用和如何和PID结合一起

联系:Q,1930299709

  • 联系方式.txt
    下载

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
LTC6994IDCB-1#TRMPBF 1 Analog Devices Inc LTC6994IDCB-1#TRMPBF

ECAD模型

下载ECAD模型
$2.5 查看
ACPL-M60L-500E 1 Broadcom Limited Logic IC Output Optocoupler, 1-Element, 3750V Isolation, 15MBps, DIP-8

ECAD模型

下载ECAD模型
$1.42 查看
SN74LVC245APWR 1 Texas Instruments Octal Bus Transceiver With 3-State Outputs 20-TSSOP -40 to 125

ECAD模型

下载ECAD模型
$0.3 查看
意法半导体

意法半导体

意法半导体主要提供MCU、MPU、传感器、功率器件、模拟芯片,核心产品/技术包括L6398高压栅极驱动;在低空经济产业链中覆盖安全芯片、功率半导体、惯性传感、环境传感、计算与控制芯片、模拟与电源芯片等。

意法半导体主要提供MCU、MPU、传感器、功率器件、模拟芯片,核心产品/技术包括L6398高压栅极驱动;在低空经济产业链中覆盖安全芯片、功率半导体、惯性传感、环境传感、计算与控制芯片、模拟与电源芯片等。收起

查看更多

相关推荐