名称                                   用到的外设                                所需模块

stm32循迹避障蓝牙小车

USART串口->HC-05蓝牙

TIM定时器

->PWM输出

->TB6612

->GS90

->PWM输入捕获

->SR04

I2C->OLED

ADC->ADC采集电压

C8T6主控

12-5v稳压模块

TB6612电机驱动

SR04超声波

TCRT5000红外

HC-05蓝牙模块

GS-90舵机

直流无刷电机

0.96’OLED

TB6612

AIN1

AIN2

BIN1

BIN2    四个引脚(0或1)控制电机正反转 或停止

PWMA

PWMB    两个引脚控制(占空比越大越快)电机转速

使用思路:同一侧电机使用AIN1与AIN1,另一侧使用BIN1和BIN2,因为只用到一个电机驱动模块注意同侧的两个电机接法相反  ,左转,左轮倒转,右轮往前。。。

SR04

Trig引脚触发信号:低跳变到高 ,并且高电平时间要大于10us,模块内部发出8个40KHz的周期电平,如检测到回波,则输出回响信号,脉冲宽度与测的距离成正比

Echo 引脚回声信号:输出给GPIO一个高电平,高电平持续时间就是发射到返回的时间

使用思路:GPIO给 Trig 一个大于10us的高电平,通过delay_us(13)实现,此时模块发射超声波(40KHz),检测到回波后,Echo会给单片机输入高电平,用单片机TIM进行输入捕获 计算得出高电平的时间,根据声音在空气传播的速度:

c=(331.45+0.607*T)  T为摄氏度

0摄氏度:330.45m/s

20摄氏度:342.62m/s

40摄氏度:354.85m/s

结合公式:S=声音传播速度*时间/2

如需精确需要进行温度补偿,0-40度内误差7%;

TCRT5000红外光电传感器

红外二极管发射红外线,当发射出来的红外线感应没有被反射回来或者 反射的红外线过弱,光敏三极管的基极无电压 或者过小,光敏三极管断开,模块DO(数字)引脚输出低电平,指示LED灯熄灭,反之….

推荐安装位置距被测位置为37mm,最佳检测距离为2.5mm

使用思路:GPIO为输入模式,判断GPIO高还是低电平,如果为低,说明遇到黑色(黑色吸收红外线最多),使小车向该传感器反方向转;

HC-05蓝牙模块

HC-05,通电前按住模块上按钮 可以进入AT模式,用电脑USB,CH340转TLL电平用USART通信方式 给模块发送AT指令,可以改变蓝牙密码,通信波特率等等。

使用思路:同过手机给蓝牙模块发送 字符, 蓝牙模块 通过 USART与STM32通信

stm32启用USART中断服务函数来判断,字符,从而设置小车模式,一位行进方向.

失误总结

  1. 在调试舵机的时候发现,用一个有BUG的工程(很可能软件配置有问题)去产生PWM波形,舵机无反应,接示波器发现按正确公式(舵机使用周期在20ms)推导出来的TIM的ARR和PSC设置,在此工程文件中无法产生正确的波形(周期x10倍),将TIM配置文件转移其他工程发现可以产生正确的周期20ms的PWM波形。

舵机损坏一个

  1. PCB与模块焊接存在虚焊现象,在调试蓝牙时候最终发现了这一点,以后焊接一定要认真,防止找bug找半天浪费时间!!
  2. 焊接时候一定 要将焊锡渣清理干净,防止PCB短路!!!(损失惨重)

【项目总结】stm32红外循迹蓝牙超声波小车相关推荐

  1. 基于STM32F103的红外循迹避障小车设计(含Proteus仿真)

    基于STM32F103的红外循迹避障小车设计 红外循迹及红外避障实现较简单,无论是51单片机还是STM32单片机,其例程随处可见.但是完全可以运行的Proteus仿真,开源的并不多,更不要说基于STM ...

  2. 【IoT】红外循迹避障小车

    说明 随着生产自动化的发展需要,机器人已经越来越广泛地应用到生产自动化上,随着科学技术的发展,机器人的传感器种类也越来越多,其中红外传感器已经成为自动行走和驾驶的重要部件. 红外的典型应用领域为自主式 ...

  3. 基于PID算法的STM32爬坡循迹智能小车的设计与实现

    目录 摘要 0 引言 1 需求分析 2 系统结构 3 硬件电路设计 3.1 整体硬件框架 3.2 主控制电路 3.3 电源模块 3.4 红外循迹 3.5 电机驱动 3.6 无线蓝牙控制 4 软件设计 ...

  4. 基于51单片机的红外循迹模块

    目录 循迹模块介绍及原理 部分程序 结合小车的全部程序 循迹模块介绍及原理 这里使用的四路循迹模块 部分端口介绍 主板的OUT1-4端分别连接单片机的IO口,用于检测输出电平 主板另一排针侧的VCC ...

  5. 基于STM32F103C8T6的循迹避障小车完整制作过程(详细)----上篇(第123点)

    基于STM32F103C8T6的循迹避障小车完整制作过程 本文适合小白观看 由于本人的一个小项目,要做一个基于STM32的循迹避障小车,前后花了约1周的时间,这个过程中也参考了很多大神分享的资料,学到 ...

  6. 循迹避障小车系统设计

    博主福利:100G+电子设计学习资源包! http://mp.weixin.qq.com/mp/homepage?__biz=MzU3OTczMzk5Mg==&hid=7&sn=ad5 ...

  7. stm32项目_stm32f103c8t6项目_循迹避障小车完整制作过程_智能小车设计_STM32智能小车教程-循迹-避障-蓝牙遥控-跟随

    [硬件] 元件选型 照片上传出问题了,改天补上,着急的可以看视频 视频链接在这里 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sKjJGMXv-16463139639 ...

  8. STM32蓝牙控制循迹避障小车源代码——3.舵机、超声波测距模块

    STM32蓝牙控制循迹避障小车源代码--3.舵机.超声波测距模块 注意-所需模块: US-015超声波模块 SG90舵机云台 接线:舵机超声波: A1–P2.7 B8–Trig B9–Echo 代码 ...

  9. 51单片机智能小车(舵机云台超声波避障+循迹+蓝牙+红外跟随)

    **51单片机智能小车(舵机云台超声波避障+循迹+蓝牙+红外跟随+遥控+TFT液晶显示屏) 本人由于使用的液晶显示屏,程序大于8K,所以更换为STC12C5A60S2芯片,与51芯片兼容. 功能比较多 ...

最新文章

  1. 如何检测链表中的循环?
  2. mysql查询条件为or_使用mysql查询where条件里的or和and
  3. 虚拟技术必须解决的问题_VR/3D虚拟实验室亮相重庆市初中物理青年教师优质课大赛...
  4. Java、JavaScript和JScript
  5. spring boot log4j2与三方依赖库log4j冲突无法初始化问题解决方法
  6. 数据迁移的应用场景与解决方案Hamal
  7. Hokuyo‘s first try
  8. sonarQube代码管理工具
  9. coolfire文章之二
  10. 有序表归并算法(数据结构学习笔记)
  11. vue中如何设置鼠标经过切换样式
  12. twitter注册不了_如何阻止Twitter重点阻止不相关的通知
  13. Win11如何查看硬盘型号?Win11查看硬盘型号步骤
  14. weak的创建与释放
  15. HTML中abbr标记,HTML abbr标记
  16. Python 绘图大全之使用 Python Folium 制作生成热图的详细指南
  17. 2021-09-21
  18. Quartus II 的下载及安装
  19. Spring WebFlux框架概述
  20. “胜兵先胜而后求战,败兵先战而后求胜”—如何通过系统分析师考试

热门文章

  1. 使用python制作zip口令破解程序
  2. 几行代码,把zip文件直接破解
  3. odoo从tree视图导出excel表
  4. Redis 的常用命令
  5. python将字符串变成复数_Python list和str互转的实现示例
  6. Mybatis使用教程
  7. 树莓派之禁用自动黑屏休眠模式
  8. 服务器Ubuntu常用命令汇总
  9. 用电脑怎么制作GIF
  10. 柯尼卡美能达Konica Minolta bizhub 4000P 打印机驱动