专栏首页张国平_玩转树莓派树莓派基础实验33:TCRT5000红外循迹传感器实验

树莓派基础实验33:TCRT5000红外循迹传感器实验

一、介绍

  红外跟踪循迹传感器使用TCRT5000循迹模块。TCRT5000采用的是蓝色的LED发射管,通电后发出人眼看不到的红外线。传感器的黑色部分用于接收,内部电阻器的电阻随所接受的红外光而变化。

二、组件

★Raspberry Pi 3主板*1

★树莓派电源*1

★40P软排线*1

★循迹传感器模块*1

★双色LED模块*1

★面包板*1

★跳线若干

三、实验原理

循迹传感器1

循迹传感器2

循迹传感器模块原理图

  循迹的检测原理是红外发射管发射光线到路面,红外光遇到白线等颜色较浅的地面则被反射,接收管接收到反射光,经施密特触发器整形后输出低电平;当红外光遇到黑线等颜色较深的地面时则被吸收,接收管没有接收到反射光,经施密特触发器整形后输出高电平。

四、实验步骤

第1步: 连接电路。

树莓派

T型转接板

循迹传感器

GPIO0

G17

SIG

5V

5V

VCC

GND

GND

GND

树莓派

T型转接板

双色LED灯

GPIO1

G18

R

-

-

G

GND

GND

GND

循迹传感器实验电路图

循迹传感器实验实物接线图

第2步: 我使用的是数字输出DO口,所以控制程序很简单。运行程序,不断循环打印检测信息。当检测到白色物品时打印'White line is detected',且LED灯亮红色;当检测到黑色物品时,打印'...Black line is detected',LED灯熄灭。

#!/usr/bin/env python
import RPi.GPIO as GPIO

TrackPin = 11
LedPin   = 12

def setup():
    GPIO.setmode(GPIO.BOARD)       # Numbers GPIOs by physical location
    GPIO.setup(LedPin, GPIO.OUT)   # Set LedPin's mode is output
    GPIO.setup(TrackPin, GPIO.IN, pull_up_down=GPIO.PUD_UP)
    GPIO.output(LedPin, GPIO.LOW) # Set LedPin LOW to off led

def loop():
    while True:
        if GPIO.input(TrackPin) == GPIO.LOW:
            print 'White line is detected'
            GPIO.output(LedPin, GPIO.HIGH)  # led on
        else:
            print '...Black line is detected'
            GPIO.output(LedPin, GPIO.LOW) # led off

def destroy():
    GPIO.output(LedPin, GPIO.LOW)     # led off
    GPIO.cleanup()                     # Release resource

if __name__ == '__main__':     # Program start from here
    setup()
    try:
        loop()
    except KeyboardInterrupt: 
 # When 'Ctrl+C' is pressed, the child program destroy() will be  executed.
        destroy()

  实验结果示例:

实验结果

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 树莓派基础实验23:触摸开关传感器实验

       金属触摸传感器是一种仅在,被带电体触摸时,才操作的开关。它有一个接受电子信号时通电的,高频晶体管。

    张国平
  • 树莓派基础实验8:振动开关实验

       振动开关也称为弹簧开关或振动传感器,是一种电子开关。它会产生振动力,并将结果传送给电路装置,从而触发其工作。它包含以下部分:导电振动弹簧,开关主体,触发销...

    张国平
  • 树莓派基础实验6:轻触开关按键实验

       按键模块是我们使用最为频繁的一个电子部件,内部有一对轻触拨盘构成,当按下是闭合导通,松开时自动弹开断开。

    张国平
  • 蓝桥杯嵌入式之SysTick和独立按键

    SysTick是滴答定时器,在相应的时间间隔内对变量进行操作(通过执行SysTick中断函数实现)。所以在比赛和学习中被组合成准确延时函数。

    用户5935416
  • 《敏捷软件开发:原则、模式与实践》笔记(3)

    敏捷团队不会花费许多时间去预测未来的需求和需要,也不会试图在今天就构建一些基础结构去支撑那些他们认为明天才会需要的特性。

    sickworm
  • 树莓派基础实验1:双色LED灯实验

       双色发光二极管(LED)能够发出红色和绿色,两种不同颜色的光。正电压指向LED端子之一,使LED发出相应的颜色的光,一次只能有一个引脚接受电压,常用着各种...

    张国平
  • “战术竞技类”外挂打击已开始!揭秘腾讯We Test游戏安全服务新动作!

    商业转载请联系腾讯WeTest获得授权,非商业转载请注明出处。

    WeTest质量开放平台团队
  • Java虚拟机:JVM内存分代策略

    Java虚拟机根据对象存活的周期不同,把堆内存划分为几块,一般分为新生代、老年代和永久代(对HotSpot虚拟机而言),这就是JVM的内存分代策略。

    业余草
  • MySql整型索引和字符串索引失效或隐式转换问题

    首先我们先创建一张用户表test_user,其中USER_ID为了效果我们设置为varchar类型且加上唯一索引。

    一个会写诗的程序员
  • 多线程基础(二十一):StampedLock源码分析

    StampedLock是在java8中引入的一个新的并发工具,主要为了解决此前java7中Lock实现上的一些问题,如ReentrantReadWriteLoc...

    冬天里的懒猫

扫码关注云+社区

领取腾讯云代金券