久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計實例 >> 瀏覽文章

智能尋跡小車制作 程序+視頻

作者:香蓮清風(fēng)   來源:香蓮清風(fēng)   點擊數(shù):  更新時間:2014年06月25日   【字體:

剛學(xué)單片機(jī)的時候做的一個智能小車,現(xiàn)在把當(dāng)時的一些資料整理了一下,希望對剛?cè)腴T的童鞋有幫助!

1、下圖為單片機(jī)的最小系統(tǒng),可以自己用萬用板焊接,順便練練焊接能力也不錯的。本設(shè)計采用了51單片機(jī),網(wǎng)上關(guān)于51單片機(jī)的資料有一大堆,大伙可以從它來入門,推薦郭天祥的視頻(我就是跟著他學(xué)的),講的挺詳細(xì)的。

       2、這一部分來介紹下驅(qū)動電路,如下圖所示為驅(qū)動電路的原理圖,采用的是L298驅(qū)動芯片,一般的智能小車這個芯片用的比較多,控制起來也比較簡單:芯片兩個使能端輸入高電平(有效電平),再給其余的兩個引腳(比如P1+,P1-)輸入一高一低就能讓電機(jī)正反轉(zhuǎn)從而控制小車的前進(jìn)后退,當(dāng)然也可以在EN端輸入PWM信號來控制小車的速度,PWM信號可以由芯片的相應(yīng)引腳輸出,51單片機(jī)不能直接輸出PWM信號,可以用定時器來實現(xiàn)也很方便的。

       3、下面來介紹下循跡傳感器。循跡模塊用的是紅外對管,正常情況下發(fā)射端發(fā)出的光線可以被接收端接收到接收端導(dǎo)通輸出低電平,而當(dāng)遇到黑線后,黑線吸收了發(fā)射端發(fā)射的光線,輸出高電平;輸出的高低電平經(jīng)過電壓比較器比較輸出后來判斷小車的哪個傳感器在黑線之上,得到小車的位置信息(看起來很簡單大家要動手做才有意思)。


4、下面我把源代碼貼出來,感興趣的童鞋可以看看希望有豪幫助!
  • 以下是“CarDrive.c”文件中的源程序:
#include "CarDrive.h"
 
//左電機(jī)正轉(zhuǎn) 
void LeftMotorCorotation(void)
{
LeftMotor_1 = 1;
LeftMotor_2 = 0;
}
 
//左電機(jī)反轉(zhuǎn) 
void LeftMotorRollback(void)
{
LeftMotor_1 = 0;
LeftMotor_2 = 1;
}
 
//右電機(jī)正轉(zhuǎn) 
void RightMotorCorotation(void)
{
RightMotor_1 = 1;
RightMotor_2 = 0;
}
 
//右電機(jī)反轉(zhuǎn) 
void RightMotorRollback(void)
{
RightMotor_1 = 0;
RightMotor_2 = 1;
}
 
//小車前進(jìn) 
void CarGoAhead(void)
{
LeftMotorCorotation();
RightMotorRollback();
}
 
 
//小車慢速左拐 
void CarTurnLeft_Low(void)
{
LeftMotor_1 = 0;
LeftMotor_2 = 0;
RightMotorRollback();
}
 
//小車慢速右拐
void CarTurnRight_Low(void)
{
RightMotor_1 = 0;
RightMotor_2 = 0;
LeftMotorCorotation();
 
//小車快速左拐 
void CarTurnLeft_High(void)
{
LeftMotorRollback();
RightMotorRollback();
}
 
//小車快速右拐
void CarTurnRight_High(void)
{
LeftMotorCorotation();
RightMotorCorotation();
 
 
//小車道路判斷 
void CarRoadJudge(void)
{
if(LeftPhotoelectricCell_1&&(!LeftPhotoelectricCell_2)&&(!RightPhotoelectricCell_2)&&RightPhotoelectricCell_1)
CarGoAhead();
if(LeftPhotoelectricCell_1&&(!LeftPhotoelectricCell_2)&&RightPhotoelectricCell_2&&RightPhotoelectricCell_1)
CarGoAhead();
if(LeftPhotoelectricCell_1&&LeftPhotoelectricCell_2&&(!RightPhotoelectricCell_2)&&RightPhotoelectricCell_1)
CarGoAhead();
if((!LeftPhotoelectricCell_1)&&(!LeftPhotoelectricCell_2)&&RightPhotoelectricCell_2&&RightPhotoelectricCell_1)
CarTurnLeft_Low();
if(LeftPhotoelectricCell_1&&LeftPhotoelectricCell_2&&(!RightPhotoelectricCell_2)&&(!RightPhotoelectricCell_1))
CarTurnRight_Low();
if((!LeftPhotoelectricCell_1)&&LeftPhotoelectricCell_2&&RightPhotoelectricCell_2&&RightPhotoelectricCell_1)
CarTurnLeft_High();
if(LeftPhotoelectricCell_1&&LeftPhotoelectricCell_2&&RightPhotoelectricCell_2&&(!RightPhotoelectricCell_1))
CarTurnRight_High();
if(LeftPhotoelectricCell_1&&LeftPhotoelectricCell_2&&RightPhotoelectricCell_2&&RightPhotoelectricCell_1)
//CarTurnRight_Low();
CarGoAhead();
if((!LeftPhotoelectricCell_1)&&(!LeftPhotoelectricCell_2)&&(!RightPhotoelectricCell_2)&&(!RightPhotoelectricCell_1)) 
CarGoAhead();
}
 
 
  • 以下是“CarDrive.h”文件中的源程序:
#ifndef _CarDrive_H_
#define _CarDrive_H_
 
#include
#define uint unsigned int
#define uchar unsigned char
 
sbit LeftMotor_1 = P0^0;
sbit LeftMotor_2 = P0^1;
sbit RightMotor_1 = P0^2;
sbit RightMotor_2 = P0^3;
 
sbit LeftPhotoelectricCell_1   = P3^0;
sbit LeftPhotoelectricCell_2   = P3^1;
sbit RightPhotoelectricCell_2  = P3^2;
sbit RightPhotoelectricCell_1  = P3^3;
 
void CarGoAhead(void);
//void CarBackOff(void);
void CarTurnLeft_Low(void);
void CarTurnRight_Low(void); 
void CarTurnLeft_High(void);
void CarTurnRight_High(void);
//void CarBrake(void);
void CarRoadJudge(void);
 
 
 
#endif
 
 
  • 以下是“main.h”中的程序:
#ifndef _main_H_
#define _main_H_
 
#include
#include "CarDrive.h"
 
#define uint unsigned int
#define uchar unsigned char
 
#endif
 
  • 以下是“main.c”中的程序:
#include "main.h"
 
void main(void)
{
while(1)
{
CarRoadJudge();
}
}
5、下面是小車的視頻
總結(jié):好了,電路圖、程序源碼、視頻都在這了,大家多動手才是,最后感謝童鞋們花費寶貴的時間來瀏覽我的博客,我是“香蓮清風(fēng)”咱們下次見!
關(guān)閉窗口

相關(guān)文章

主站蜘蛛池模板: 精品日韩欧美一区二区 | www.亚洲精品 | 国产免费一区二区三区网站免费 | 欧美激情视频一区二区三区在线播放 | 美女视频黄的 | 国产一二三区免费视频 | 久久午夜精品福利一区二区 | 日韩一区二区在线播放 | 99re视频 | 中文字幕欧美一区 | 91看片免费 | 一级无毛片 | 成人影院av | 久久爱综合 | 91亚洲精选 | 成人精品视频在线 | 亚洲在线一区二区三区 | 精品一区二区三区在线观看国产 | 精品亚洲永久免费精品 | 国产美女黄色片 | 在线观看成人 | 亚洲高清av在线 | 国产精品精品视频一区二区三区 | 福利视频网站 | 在线观看成人小视频 | 色综合成人网 | 成人精品一区二区三区中文字幕 | 午夜视频免费在线观看 | 黄色成人免费看 | 日韩福利电影 | 日韩中文字幕一区 | 国产精品成人一区二区 | 91成人影院| 一区二区免费看 | 91中文字幕在线观看 | aaaaaaa片毛片免费观看 | 国产精品久久久久久久免费观看 | 欧美精品91爱爱 | 欧美在线一区二区三区 | 欧美a级网站 | 亚洲综合99|