STM32循迹小车原理介绍和代码示例

这篇具有很好参考价值的文章主要介绍了STM32循迹小车原理介绍和代码示例。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1. 循迹模块介绍

2. 循迹小车原理

3. 循迹小车核心代码

4. 循迹小车解决转弯平滑问题


1. 循迹模块介绍

  • TCRT5000传感器的红外发射二极管不断发射红外线
  • 当发射出的红外线没有被反射回来或被反射回来但强度不够大时
  • 红外接收管一直处于关断状态,此时模块的输出端为高电平,指示二极管一直处于熄灭状态
  • 被检测物体出现在检测范围内时,红外线被反射回来且强度足够大,红外接收管饱和
  • 此时模块的输出端为低电平,指示二极管被点亮
  • 总结就是一句话,没反射回来,D0输出高电平,灭灯

stm32小车寻迹代码,51跟32单片机,STM32

接线方式

  • VCC:接电源正极(3-5V)
  • GND:接电源负极 DO:TTL开关信号输出0、1
  • AO:模拟信号输出(不同距离输出不同的电压,此脚一般可以不接)

2. 循迹小车原理

由于黑色具有较强的吸收能力,当循迹模块发射的红外线照射到黑线时,红外线将会被黑线吸收,导致 循迹模块上光敏三极管处于关闭状态,此时模块上一个LED熄灭。在没有检测到黑线时,模块上两个LED常亮

总结就是一句话,有感应到黑线,D0输出高电平 ,灭灯

stm32小车寻迹代码,51跟32单片机,STM32

3. 循迹小车核心代码

硬件接线

  • B-1A -- PA0
  • B-1B -- PB1
  • A-1A -- PA1
  • A-1B -- PB10
  • 循迹模块(左)--  PB3
  • 循迹模块(右) -- PB4

代码示例:

#define LeftWheel_Value HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_3)
#define RightWheel_Value HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_4)

// main函数里
while (1)
{
    if (LeftWheel_Value == GPIO_PIN_RESET && RightWheel_Value == GPIO_PIN_RESET)
        goForward();
    if (LeftWheel_Value == GPIO_PIN_SET && RightWheel_Value == GPIO_PIN_RESET)
        goLeft();
    if (LeftWheel_Value == GPIO_PIN_RESET && RightWheel_Value == GPIO_PIN_SET)
        goRight();
    if (LeftWheel_Value == GPIO_PIN_SET && RightWheel_Value == GPIO_PIN_SET)
        stop();
}

4. 循迹小车解决转弯平滑问题

原理:

两轮都有速度且一轮速度大于另一轮

代码实现:文章来源地址https://www.toymoban.com/news/detail-771673.html

#define LeftWheel_Value HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_3)
#define RightWheel_Value HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_4)
// main函数里
while (1)
{
    if(LeftWheel_Value == GPIO_PIN_RESET && RightWheel_Value == GPIO_PIN_RESET)
    {
        __HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_1,19);
        __HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_2,19);
    }
    if(LeftWheel_Value == GPIO_PIN_SET && RightWheel_Value == GPIO_PIN_RESET)
    {
        __HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_1,15);
        __HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_2,8);
    }
    if(LeftWheel_Value == GPIO_PIN_RESET && RightWheel_Value == GPIO_PIN_SET)
    {
        __HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_1,8);
        __HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_2,15);
    }
    if(LeftWheel_Value == GPIO_PIN_SET && RightWheel_Value == GPIO_PIN_SET)
    {
        __HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_1,0);
        __HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_2,0);
    }
}

到了这里,关于STM32循迹小车原理介绍和代码示例的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 智能小车STM32——蓝牙循迹

    1、功能介绍 蓝牙切换功能:智能小车内置了蓝牙模块,可以通过手机或其他蓝牙设备与之连接。用户可以通过手机发送指令控制小车的运动方向,实现远程控制。 循迹功能:智能小车配备了红外线传感器,可以实现循迹功能。通过检测地面上的黑线或白线,小车能够自动沿着

    2024年01月19日
    浏览(42)
  • STM32循迹小车系列教程(四)—— 使用OpenMV循迹

     本章节主要讲解如何使用OpenMV循迹以及OpenMV与STM32串口通信 软件:STM32CubeMx、Keil5 MDK、串口调试助手XCOM、OpenMV_IDE 硬件:OpenMV、STM32F103C8T6核心板、下载器ST_LINK、USB转TTL或J-LINK、小车一辆 OpenMV是一个开源,功能强大的 机器视觉 模块。 它以STM32F427CPU为核心,集成了OV7725摄像头

    2024年02月04日
    浏览(62)
  • STM32智能小车循迹教程

    本篇文章将带大家学习STM32智能小车的循迹功能。 电路工作描述 以其中一路为例 TCRT5000传感器的红外发射二极管不断发射红外线,当发射的红外线没有被反射回来或者反射回的强度不够大时,红外接收管一直处于关闭状态,此时比较器LM393的2脚的电压低于3脚的电压,输出O

    2023年04月08日
    浏览(43)
  • STM32智能小车------TCRT5000循迹

    ⏩ 大家好哇!我是小光,嵌入式爱好者,一个想要成为系统架构师的普通大学生。 ⏩进入正题,最近在做小车,目前已经加入红外避障、超声波测距、红外遥控、红外循迹四个传感器,分别实现遥控切换模式、超声波控制距离、避障、循迹功能。 ⏩本次文章说说 循迹功能 的

    2024年02月14日
    浏览(33)
  • STM32循迹避障小车(颜色识别)

    主控采用stm32F103C8T6,三个循迹模块,超声波模块,openmv,降压模块,锂电池组,TT马达四个,L298n。可以实现循迹,避障,颜色识别等功能。 1、循迹模块 红外循迹模块通常包含一组红外线发射管和一组红外线接收器,发射管发出红外线,接收器接收地面反射的红外线信号。

    2024年02月07日
    浏览(31)
  • 【 STM32实例 】 智能小车的红外循迹

    这篇文章我主要讲的是让基于stm32单片机下的智能小车实现红外循迹功能,智能小车的项目非常多,比如说循迹避障、蓝牙遥控、视觉控制等等,我将会一步一步带大家走进stm32单片机的项目当中。 项目源码置文章底部,可自提 在硬件部分,与前几节我所介绍的51智能小车大

    2024年02月02日
    浏览(31)
  • stm32循迹小车教程(保姆级教程)

                    我历时四周终于制作完成原理图设计,原件焊接,代码测试,赛道循迹。在此,我要十分感谢在我制作过程中给予过帮助的所有人。首先明确小车使用主控芯片为stm32f103c8t6。                 制作小车要用的软件有:嘉立创EDA                 首先明确一

    2024年02月02日
    浏览(28)
  • STM32实战项目系列教程 (一)—— 循迹小车

    以往我们看到很多学习单片机知识的教程往往是从 单片机内部资源 出发,这样的教程原理往往晦涩难懂,初学者很难系统的学习开发单片机的项目。 而本次教程是 从项目出发 教你学习循迹小车的制作,整个项目采用 STM32 单片机作为控制器来实现,所以在学习前需要大家有

    2024年02月11日
    浏览(32)
  • 基于STM32的智能循迹避障小车实验(循迹部分)

    接上一部分基于STM32的智能循迹避障小车实验(小车运动部分) 上一篇我们成功让小车动起来了,现在我们试着让小车听话地运动。 这一部分主要利用了循迹模块两个 图 1循迹模块 就是这个东西: 一共三个引脚 VCC :电源线,连接单片机的 3.3V-5V GND :地线,连接单片机的接

    2024年02月11日
    浏览(34)
  • STM32循迹寻光避障小车(二)(红外循迹部分)

    目录 TRCT5000寻迹模块介绍 1. 模块介绍: 2. 管脚介绍: 3. 使用原理: 4. 代码部分: Tracing.c文件全部代码(附带注释) Tracing.h文件全部代码 首先介绍一下使用到的红外寻迹模块,我们采用了TRCT5000的三路红外寻迹模 我从网上找到如下的图片和资料: 1、采用TCRT5000红外反射传感

    2024年02月17日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包