用51单片机控制循迹小车。4个红外,,但是再走直线时会抖,,拐弯时速度快点的话就不拐不会来了,求指点

你是用PWM来控制速度吗?如果是的话,可以改变左右轮的占空比,当拐弯时让外边那个快点,里面那个慢点,占空比大的速度快;或者让两个轮子的转动时间不一样,外边的时间长点。。。。

你的红外是怎么放的啊 里面两个是在线边以外 还是刚刚在线边上啊

可以用定时器控制直流电机转速吗,51单片机的,循迹小车用,可以的话能详细讲一下吗,谢谢~

直流电机常用的调速方法是调电压,为了减小调节功耗,常用PWM方式来调节电压
用定时器产生PWM(脉冲宽度调节)信号是不错的 选择
原理是定时器周期性产生中断,用一变量a 来 计算中断次数,每次中断a的值加1
假设中断周期(定时器定时长度)是100us,中断100次(10ms)让a清0,并让单片机某一引脚P1^0输出高电平
另设一变量b(b<100),当a的值和b的值相等时,让该引脚输出低电平,这样就就在P1^0引脚获得了一定频率(本例是100HZ,有点低)和占空比(b/100)的方波,改变b的值就改变了占空比
这个方波经放大和滤波后即可驱动直流电机
中断程序如下:
void timer0 ( ) interrupt 1
{
TH0=(65536-100)/256;//假设时钟频率12M
TH0=(65536-100)%256;
a++;
if(a>=b) P1.0=0;
if(a==100)
{P1.0=1;a=0;}
}
如果让定时器工作在自动重装模式,中断可以更频繁一些(中断太频繁,中断程序根本完不成),同样调节精度下工作频率可以更高
如果想获得更高的频率,要用带硬件PWM功能的单片机

1、电池电压高的话可以用稳压的办法,如将12V电池稳压至9V用,当降到9V就要换电池或充电,保证电机驱动供电电压9V不变
2、或者就是速度闭环了,取一个低速作为目标值,保证低压时也能达到该速度

#13328425454# 51单片机的红外遥控小车设计和制作的C语言程序 - ******
#帅罚# 控器芯片HT6221,这个解码我刚研究过,是NEC协议,比较常用的,不过你要做小车我建议用PT2272/PT2262,他们接收发射与一体的,红外遥控可以帮你,不过其他的我就不会了.小车控制应该要用PWM电机控制吧.

#13328425454# 寻迹小车用什么单片机比较好 - ******
#帅罚# 51足够了,我当时做的时候就是51加几个红外对管,检测检测电平,然后控制电机.循迹用红外对管做还是很简单的.

#13328425454# 怎么设计循迹小车? - ******
#帅罚# 1、循迹小车是一种能够自己寻找轨迹并按轨迹运动的“智能”车.本文简要记录这一电子制作过程,希望大家喜欢.有什么建议和意见,欢迎大家留言. 2、根据元器件清单清点器件,看是否缺件少件.下图是元器件全家福: 3、依次焊接...

#13328425454# 请问用单片机控制小车循迹,怎样是小车比较稳定而不是左右摇晃?请讲的详细点 - ******
#帅罚# 用高速单片机,优化程序.用质量好,反应快的舵机,增加传感器数量,改用更加灵敏的传感器.

#13328425454# 循迹小车源程序 - ******
#帅罚# #define P_IOA_Data (volatile unsigned int *)0x7000 #define P_IOA_Dir (volatile unsigned int *)0x7002 #define P_IOA_Attrib (volatile unsigned int *)0x7003 unsigned int scan();//检测黑线函数定声明 unsigned int num=0; void delay(); ...

#13328425454# 51单片机怎么对直流电机调速,做了个遥控小车 - ******
#帅罚# 既然是技巧的话那就不提供详细的代码了,首先要看你这个小车是几轮几驱动的,首先假设你只用一个L298n驱动板的话,那么再假设只含左右两个轮,只对左右两个轮进行控制的话,那么就简单了,首先你要知道L298N驱动板怎么用,不同的...

#13328425454# 怎么样用单片机stc89c58做寻迹小车? - ******
#帅罚# 很好办,搭配几个光电传感器,驱动两个电机,编个程序下载到STC89C58里面就可以了

#13328425454# 我们做51单片机寻迹小车,走直线的时候小车会左右扭,拐弯的时候有时又拐不过(速度慢时可以 )求指教! - ******
#帅罚# 走直线的时候小车会左右扭,可能是因为你循迹路线的宽度与你循迹模块中传感器的宽度不是很适宜,也有可能是你的程序没处理好(如延时),拐弯的时候有时又拐不过(速度慢时可以 )说明你的程序有待修改,没见你的实物与程序,具体情况还得具体分析,我说的仅供参考!

#13328425454# 这个是51单片机寻迹小车程序的一部分,像是用软件模拟PWM输出调速的,我才接触这东西,请老师前辈们 - ******
#帅罚# 第一个子函数:选择定时器工作方式,th1 tl1装入初值 ,打开总中断,打开定时器1中断,启动定时器1

#13328425454# at89s52单片机循迹小车程序 - ******
#帅罚# 完整的程序没有了,主要是方法,能巡迹,说明硬件没有问题,现在主要是软件算法的问题,建议可以分步实现,找出各个段时检测到数据与巡迹时有什么不同,可以用示波器来看波形什么.随后软件根据不同点来编写程序,就可以实现全部功能.如果波形等没有差异,就要从检测方法入手了.程序是解决不了的.

  • 51小车红外扫不出
  • 答:线路连接问题。51单片机红外遥控小车是一个比较经典的51单片机项目,适合用来作为新手的毕业项目,红外扫不出很大问题是线路的连接问题导致的,重新将线路连接一遍即可恢复。51单片机红外遥控小车这个项目考察的比较综合,需要反复进行调试才可以保证这个遥控小车不出问题。

  • 循迹小车的C程序谁有? 用51单片机编写的
  • 答:include<reg52.h> define uchar unsigned char define uint unsigned int sbit ls=P2^6; //左侧传感器检测信号 sbit rs=P2^7; //右侧传感器检测信号 sbit left=P1^2; //左电机控制端 sbit right=P1^5;//右电机控制端 void init1();void init2();uchar z,tt=0;uchar scan();ucha...

  • 51单片机红外避障小车教程
  • 答:这个红外避障如果我么理解错的话是电子设计大赛的沿跑到跑的小车么?如果是的话就简单了,这不需要资料,只要在小车左右两边安上红外对管,让单片机检测高低电平,因为黑线可以吸收发射的光线,所以接收到的是低电平,反之接收到的是高电平,就这样来控制左右转弯,学会FOR循环等一些基本的足够了,因为没有...

  • 51单片机循迹小车怎样又准又快
  • 答:初期做这个,左右摇摆是必然的。 因为其本身的循迹方式就是开关式的! 传感器的得到的信息只有两种要么在左边,要么在右边。具体的不知道小车在线的左边多少,右边多少,导致不能让小车拐大弯与拐小弯,只能让车拐。就导致了其左右的摇摆。如果想不让其摇摆,可以加成一排红外管,虽然不能像摄像头...

  • 求51单片机制作智能循迹小车的配件表和电路图,求高手帮忙。。
  • 答:传统的方法循迹用红外对管加比较器,这个做的比较多,论坛里程序也不少,循迹也可以用光敏电阻(黑白反射的光不同)加led(光源)的组合,用ad转换即可,电路是光敏电阻串联10k左右上拉电阻,ad采集中点电压,最少采集三路ad,循光肯定是用光敏电阻了,光敏电阻使用时需用热伸缩管套住以接收指定方向的光...

  • 51单片机开发板怎样控制一个60w左右的步进电机和四个红外计数传感器
  • 答:用外用驱动板

  • 基于51单片机的红外接收模块的c编程
  • 答:基于51单片机的红外接收模块的c编程 由于种种原因不能用一体化红外接收头,只能自己搭电路,但程序不会写,希望大神帮帮忙!下面附上电路图!... 由于种种原因不能用一体化红外接收头,只能自己搭电路,但程序不会写,希望大神帮帮忙!下面附上电路图! 展开  我来答 5个回答 #热议# 什么样的人容易遇上渣男...

  • 循迹小车 51单片机循迹小车怎样又准又快
  • 答:要准的话就是你的小车寻迹的时候灵敏度高,碰到什么样的路况都有办法做出相应的判断,这主要是看你用什么方式寻迹(比如用红外传感器),以及你如何利用传感器来寻迹(一般就是外部中断和查询,查询的响应肯定是不如中断快的,当然也要看你中断的资源够不够),还有程序的逻辑上是如何判断的;要快的话...

  • 跪求寻迹小车c程序, 用89c51单片机控制的 用tcrt5000红外反射式光电传感 ...
  • 答:我用十三个对管,舵机控制转向,八个对管的话状态改下就行,给你参考下,不明白可以追问我,qq 181325995 include<reg52.h> define uint unsigned int define uchar unsigned char uint i,count;uchar pro; //*驱动电机调速*// uchar finish=0;//停车标志 sbit le1=P1^0; //*左边传感器*//...

  • 51单片机红外接收端的程序怎么写,我想知道写的方法和原理,最好有一个...
  • 答:这是采用STC12C5A60S2单片机的红外解码程序及其说明。;采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的"0";;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的"1 ;上述"0"和"1"组成的32位二进制码经38kHz的载频进行二次调制以提高发射...

    为传递更多家电数码信息,若有事情请联系
    数码大全网