wjd 发表于 2010-5-6 13:29:09

拉票啦!!下午五点,食堂前》》{{智能研发小组}}

学校的自主创新大赛,我的小组叫“智能研发小组”,项目:“基于多传感器的模块化机器人设计”、现在实现的功能是循黑线走的小车。

现场演示!欢迎投票支持!!

照片:


视频:
http://player.youku.com/player.php/sid/XMTY3NjczNzQw/v.swf

wjd 发表于 2010-5-6 13:30:08

程序:#include <reg52.h>
#include <math.h>
#include <bin.h>   //包含二进制转十六宏定义文件:如#define b0000_0001 0x01

/********************************
芯片:AT89S52   频率:24.576mhz
编写:wjd
********************************/

unsigned char VL,VR,tt;//定义全局变量:VL,VR为左右电机速度,tt为pwm时间

/*定义电机控制端*/
sbit MLP=P2^0;   //左电机使能
sbit MRP=P2^1;//右电机使能
sbit MLG=P2^2;//左电机前进
sbit MLB=P2^3;//左电机后退
sbit MRG=P2^4;//右电机前进
sbit MRB=P2^5;//右电机后退
/*定义红外传感器*/
sbit SR2=P3^0;//
sbit SR1=P3^1;   //左一和右一在黑线上
sbit SL1=P3^2;   //
sbit SL2=P3^3;   //


void M(int l,r)    //电机控制函数
{            //l,r分别为左右电机速度
if(l<0)      //速度范围:“-9~0~+9”整数
{MLG=0;MLB=1;}
else
{
if(l==0)
{MLG=1;MLB=1;l=9;}
else
{MLG=1;MLB=0;}
}

if(r<0)
{MRG=0;MRB=1;}
else
{
if(r==0)
{MRG=1;MRB=1;r=9;}
else
{MRG=1;MRB=0;}
}
VL=abs(l);
VR=abs(r);
}


void init(void)//初始化变量和端口
{
VL=0;
VR=0;
MLP=1;
MRP=1;
MRG=0;
MLG=0;
MRB=0;
MLB=0;
P3=0xFF;
tt=0;
}


void InitTimer0(void) //定时器0初始化
{
    TMOD = 0x01;
    TH0 = 0x0FF;
    TL0 = 0x0EC;
    EA = 1;
    ET0 = 1;
    TR0 = 1;
}


void Timer0Interrupt(void) interrupt 1//定时器0中断(PWM)
{
    TH0 = 0x0F8;
    TL0 = 0x00;
if(tt==9)
{
   tt=0;
MLP=1;
MRP=1;
}
else
{
if(VL==tt)MLP=0;
if(VR==tt)MRP=0;
}   
tt++;
}

void follow_line(void)    //循线控制函数
{
switch(P3|0xf0)      //“P3|0xf0”低四位代表四个传感器
{
case b1111_1001:M(8,8);break;
case b1111_1111:M(8,8);break;
case b1111_1101:
          {M(8,7);}
          while(SL1&&SR1==1)
          {M(5,0);}break;
case b1111_1011:
                  {M(7,8);}
          while(SL1&&SR1==1)
          {M(0,5);}break;
case b1111_1110:
                  M(4,-4);
                  while(SL1&&SR1==1)
          {}break;
case b1111_0111:
                  M(-4,4);
                  while(SL1&&SR1==1)
          {}break;
default:M(0,0) ;
}
}

void main()   //主函数
{
init();
InitTimer0();
while(1)
{
follow_line();//循线
/*+其它程序*/
}
}

本贴被 wjd40 编辑过,最后修改时间:2010-04-17,18:17:28.

http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=3968420&bbs_page_no=1&search_mode=3&search_text=wjd40&bbs_id=9999

听樊 发表于 2010-5-6 14:06:47

哇哇哇!不错呀!:m27 可惜我太懒了……不然就帮你们投票去了

听樊 发表于 2010-5-6 14:08:02

那只小车跑的真像一只小老鼠

【X.L】 发表于 2010-5-6 14:13:10

LZ我应该见过你...嘿嘿,只是不知道你是哪一个,因为我是那个校企合作小组的.我的小组是第三组π·派。要不要我们互相的小组投票啊。

【X.L】 发表于 2010-5-6 14:13:39

哇哇哇!不错呀! 可惜我太懒了……不然就帮你们投票去了
听樊 发表于 2010-5-6 14:06 http://www.chengyi.org/bbs/images/common/back.gif


    樊樊...下午就来把 也帮我投投票...:m9

听樊 发表于 2010-5-6 14:17:24

回复 6# 【X.L】


    :m8 我就是懒得~~~

Admin 发表于 2010-5-6 14:25:23

不错呵呵.加油.

wjd 发表于 2010-5-6 14:30:34

LZ我应该见过你...嘿嘿,只是不知道你是哪一个,因为我是那个校企合作小组的.我的小组是第三组π·派。要不 ...
【X.L】 发表于 2010-5-6 14:13 http://www.chengyi.org/bbs/images/common/back.gif


    哈哈,好主意

【X.L】 发表于 2010-5-6 15:18:11

回复【X.L】


   我就是懒得~~~
听樊 发表于 2010-5-6 14:17 http://www.chengyi.org/bbs/images/common/back.gif


    :m10 太...懒了。早上云不是打电话给你了...下午还不来啊。

听樊 发表于 2010-5-6 16:14:27

回复 10# 【X.L】


    人家只是一般般懒嘛

【X.L】 发表于 2010-5-6 16:35:21

回复【X.L】


    人家只是一般般懒嘛
听樊 发表于 2010-5-6 16:14 http://www.chengyi.org/bbs/images/common/back.gif


    我还想看看你本人呢...

wjd 发表于 2010-5-6 19:29:20

人气不错啊!!!
好像周日就要结项答辩了,
这两天再把喇叭和避障弄好。

守护¥云 发表于 2010-5-6 19:35:40

回复【X.L】


    人家只是一般般懒嘛
听樊 发表于 2010-5-6 16:14 http://www.chengyi.org/bbs/images/common/back.gif


    :m41 我很生气。。。。。。樊樊你太坏了。。。。。。

大地瓜 发表于 2010-5-6 19:51:02

哇 真做出来了啊 不错不错
页: [1] 2 3
查看完整版本: 拉票啦!!下午五点,食堂前》》{{智能研发小组}}