要做一个自动避障小车要学什么知识?

要做一个自动避障小车要学什么知识?,第1张

足够了,用上光电传感器,探测到物体即输出脉冲,输入到单片机中处理一下,再对电机驱动模块进行控制,电机连着车轮,最终实现壁障的功能,这是最基础的,其中壁障的程序还有窍门,可以实现精确复杂的壁障,壁障厚不走原路走回去,而是一直往终点走,焊接时关键,要多多焊接,水平很容易就上去了,290643832

1。 反相器是 74HC04的逻辑功能
274HC04内部有施密特触发器电路(6个门各对应一个)
施密特触发器最重要的特点是能够把变化缓慢的输入信号整形成边沿陡峭的矩形脉冲。同时,施密特触发器还可利用其回差电压来提高电路的抗干扰能力。

#include<reg52h>
#define uchar unsigned char
#define uint unsigned int
sbit moto1=P1^5;
sbit moto2=P1^6;
sbit moto3=P2^0;
sbit moto4=P2^1;
sbit en1=P1^7;
sbit en2=P2^2;
///////////////
sbit left1=P1^0;//
sbit left2=P1^1;
sbit left3=P1^2;
sbit mid=P1^3;//
sbit right1=P1^4;
sbit right2=P2^3;
sbit right3=P2^4;////////////////
sbit hled=P0^0;
sbit bled=P0^1;
sbit lled=P0^2;
sbit rled=P0^3;
sbit bizhang=P2^5;
uchar pro_head;
uchar pro_back;
uchar i;
uchar j; //前后占空比标志
void delay(uint z)
{
uchar i;
while(z--)
{
for(i=0;i<121;i++);
}
}
void init()
{
TMOD=0x01;
TH0=(65536-100)/256;
TL0=(65536-100)%6;
EA=1;
ET0=1;
TR0=1;
en1=1;
en2=1;
}
void time0(void) interrupt 1
{
i++;
j++;
if(i<=pro_back)
{
en1=1;
}
else
{
en1=0;
}
if(i==40)
{
en1=~en1;
i=0;
}
if(j<=pro_head)
{
en2=1;
}
else
{
en2=0;
}
if(j==40)
{
en2=~en2;
j=0;
}
TH0=(65536-100)/256;
TL0=(65536-100)%6;
}
void qianjin()/////////////////////
{
pro_back=15;
pro_head=5;
moto1=0;
moto2=0;
moto3=1;
moto4=0;
lled=1;
rled=1;
bled=1;
}
void turn_right1()//
{
pro_back=10;
pro_head=15;
moto1=0;
moto2=1;
moto3=1;
moto4=0;
}
。。。。。。。
void xunji() //
{
uchar flag;
if((left1==0)&&(left2==0)&&(left3==1)&&(mid==1)&&(right1==0)&&(right2==0)&&(right3==0))
{
flag=1;

}
else if((left1==0)&&(left2==0)&&(left3==1)&&(mid==0)&&(right1==0)&&(right2==0)&&(right3==0))
{
flag=2;
}
else if((left1==0)&&(left2==1)&&(left3==1)&&(mid==0)&&(right1==0)&&(right2==0)&&(right3==0))
{
flag=3;
}
、。。。。。。。。。。。。。
switch (flag)
{
case 0:qianjin();headled();
break;
case 1:turn_left1();leftled();
break;
case 2:turn_left2();leftled();
、。。。。。。。。。。。。。。。 break; default:backled();
break;
}
}
void main()
{
init();
delay(600);
jiance();
delay(300);
while(1)
{
if(bizhang==1)
{
xunji();
}
else
bz();
}
}、、、、、、、、、后面根据自己的实际情况填写吧!

寻线是通过线性ccd来分辨赛道上的对比度的不同也就是赛道上的白线于从而确定车所在的位置,红外避障当然就是用红外发射管发射红外线,当反射达到一定强度时就认为将要碰上障碍物,然后告诉cpu要碰上了。请采纳,谢谢

激光雷达与避障小车并不冲突。
激光雷达是车辆避障的重要手段,二者并不是相互分离的,有了激光雷达小车才能更好的避障。
激光雷达在智能驾驶技术的不断突破下越来越重要,购买激光雷达最好选择二代的激光雷达。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/13195665.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-06-19
下一篇 2023-06-19

发表评论

登录后才能评论

评论列表(0条)

保存