智能小车红外避障模块----使用教程
博主本科期间做过两个智能小车,链接如下 今天就给·大家分享一下,何如在你的单片机或者树莓派上调用红外避障模块。
循迹模块介绍
循迹模块和红外避障模块类似。循迹模块的红外发射二极管不断发射红外线,当放射出的红外线被物理反射时,被红外接收器接收,并输出模拟值。输出模拟值和物体距离以及物体颜色有关,可以通过两路或者多路红外传感器判断黑线的位置,从而控制小车运动。 其中,wiringPi.h这个库是有用户说明的,通过这个文献,你就可以了解到下文用到的各种库的含义了。
#include<wiringPi.h> #define Trig 28 #define Echo 29 #define LEFT 27 #define RIGHT 26 #define BUFSIZE 512 int SR;//右侧循迹模块 int SL;//左侧循迹模块 wiringPiSetup(); pinMode(1,OUTPUT); pinMode(4,OUTPUT); pinMode(5,OUTPUT); pinMode(6,OUTPUT); softPwmCreate(1,1,500); softPwmCreate(4,1,500); softPwmCreate(5,1,500); softPwmCreate(6,1,500); while(1) { //有信号为LOW,没有信号为HIGH sr=digutalRead(RIGHT);//有信号表明在白色区域,车子底盘上L3亮;没信号表明压在黑线上,车子底盘L3灭 SL=digitalRead(LEFT);//有信号表明在白色区域,车子底盘上L2亮;没信号表明压在黑线上,车子底盘L2灭 if(SL ==LOW&&SR==LOW){ printf("GO"); run(); } else if(SL==HIGH&&SR==LOW){ printf("RIGHT"); left(); } else if(SR==HIGH&&SL==LOW){ printf("LEFT"); } }
运行c源码程序时: 首先将此扩展版插在树莓派,电机驱动上的IN1、IN2、IN3、IN4分别接在扩展版的P18、P23、P24、P25.此时树莓派即可驱动电机。
-
红外避障模块: 运行红外避障程序时,左侧传感器OUT接P16,右侧传感器OUT接P12 运行红外追踪程序时,左侧传感器OUT接P12,右侧传感器OUT接P16 超声波传感器: 传感器的VCC接5V、负极接GND、echo接P21,trig接P20 红外循迹传感器: 传感器的VCC接5V、负极接GND 左侧传感器OUT接P16 右侧传感器OUT接P12 我的论文如下