电磁智能车循迹算法

电磁智能车循迹算法
电磁智能车循迹算法

基于单片机智能循迹小车

沈阳理工大学 课程名称:基于单片机智能循迹小车班级:1203070128 姓名:魏玉柱 指导教师:程磊催宁海

摘要 本文论述了基于单片机的智能循迹小车的控制过程。智能循迹是基于自动引导机器人系统,用以实现小车自动识别路线,以及选择正确的路线。智能循迹小车是一个运用传感器、单片机、电机驱动及自动控制等技术来实现按照预先设定的模式下,不受人为管理时能够自动实现循迹导航的高新科技。该技术已经应用于无人驾驶机动车,无人工厂,仓库,服务机器人等多种领域。 本设计采用STC89C52单片机作为小车的控制核心;采用TCRT5000红外反射式开关传感器作为小车的循迹模块来识别白色路面中央的黑色引导线,采集信号并将信号转换为能被单片机识别的数字信号;采用驱动芯片L298N构成双H 桥控制直流电机,其中软件系统采用C程序,本设计的电路结构简单,容易实现,可靠性高。 关键词:STC89C52 智能循迹小车TCRT5000传感器电机驱动

目录 1引言 (4) 2 需求分析 (4) 2.1 智能循迹小车概述 (4) 2.2 循迹小车的发展历程回顾 (5) 2.3智能循迹小车的应用 (5) 2.4 智能循迹小车研究中的关键技术 (7) 3系统设计 (8) 4详细设计 (8) 4.1 硬件设计 (8) 4.1.1电路原理图 (8) 4.1.2 器件选择 (10) 4.1.2.1 智能循迹小车的主控芯片的选择 (10) 4.1.2.2 智能循迹小车电源模块的选择 (11) 4.1.2.3 智能循迹小车电机驱动电路的选择 (11) 4.1.2.4 智能小车循迹模块的选择 (11) 4.1.3 模块设计 (12) 4.1.3.1电机驱动模块电路 (12) 4.1.3.2光电传感器模块 (13) 4.2 软件设计 (15) 4.2.1程序流程图 (16) 4.2.2实现主要代码 (17) 5 实验结果 (18) 5.1设计实现 (18) 5.2出现的问题和解决的方法 (19) 5.3电路实物图展示: (19) 6 结束语 (20) 7.参考文献 (20)

基于数电自动循迹智能小车

设计题目:基于数电的循迹小车 2014年09月10日

目录 目录....................................................................................................3.. 摘要 (4) 1. 设计任务与要求 (5) 1.1 基本功能 (5) 2.系统设计方案 (5) 2.1小车循迹原理…………………………………………………………………………5. 2.2控制系统总体设计 (6) 3.系统方案 (6) 3.1循迹传感器模块………………………………………………………………………6. 3.1.1红外传感器的简介………………………………………………………………7.. 3.1.2比较器LM324简介 (7) 3.1. 3具体电路 (8) 3.1.4传感器的安装 (8) 3.2控制器模块 (9) 3.2.1稳压芯片的工作原理 (9) 3.2.2继电器的工作原理 (9) 3.3电机与驱动模块 (10) 3.4自动循迹小车的总体设计 (11) 4.设计体会 (11) 5.参考资料 (12)

基于数电的循迹小车 内容摘要:本着从简到繁的原则,我们制作一款由数字电路来控制的智能循迹小车,在组装过程中我们不但能熟悉机械原理还能逐步学习到:光电传感器、电压比较器、电机驱动电路等相关电子知识。 关键词:循迹小车,传感器,电机驱动 1.设计任务与要求 1.1 基本功能 ①设计一个基于直流电机的自动循迹小车,使小车能够自动检测地面黑色轨迹,并沿着黑色轨迹行驶。 ②当小车走在白色轨道时,保持原来速度行驶;当遇到黑线时,说明小车跑偏,通过继电器将开关打到低电压一路,使小车差速行驶,并

智能循迹小车程序

#include #define uchar unsigned char #define uint unsigned int //D0-D7:f,b,a,e,d,h,c,g 共阴依次编码 //74LS04反相器驱动数码管 uchar code table[10] = {0x5F,0x42,0x9E,0xD6,0xC3,0xD5,0xDD,0x46,0xDF,0xD7}; uchar i = 0; //用于0-3数码管轮流显示 uint j = 0; //计时的次数 uint time=0; //计时 uint pwm=16; //占空比 uint speed; //调制PWM波的当前的值 sbit R=P3^2; //右边传感器P3^2 sbit L=P3^3; //左边传感器P3^3 //电机驱动口定义 sbit E NB=P1^0; //前轮电机停止控制使能 sbit E NA=P1^1; //后轮控制调速控制端口 sbit I N1=P1^2; //前轮 sbit I N2=P1^3; //前轮 sbit I N3=P1^4; //后轮 sbit I N4=P1^5; //后轮 void Init() { TMOD = 0x12; //定时器0用方式2,定时器1用方式1 TH0=(256-200)/256; //pwm TL0=(256-200)/256; TH1 = 0x0F8; //定时2ms TL1 = 0x30; EA = 1; ET0 = 1; ET1 = 1; TR0 = 1; TR1 = 1; } void tim0(void) interrupt 1 //产生PWM { speed ++; if(speed <= pwm) //pwm 就相当于占100的比例 { ENA = 1; } else if(speed < 100) { ENA = 0; }

智能电磁循迹小车的硬件设计与实现

龙源期刊网 https://www.360docs.net/doc/8f11622332.html, 智能电磁循迹小车的硬件设计与实现 作者:陈文仙庞荣 来源:《商情》2011年第29期 【摘要】本智能车依据交流信号能够产生磁场(电磁感应)的原理,采用LC 谐振回路感应电磁信号寻迹方案,同时配合光电编码盘、电机、舵机、电池以及相关驱动电路来进行信息的处理,以达到路径识别的目的,并通过PID 方式对电机和舵机进行相关调节,最终以闭合回路的形式控制模型车高速稳定地在跑道上行驶。 【关键词】电磁感应 PID 路径识别闭环控制 1引言 本文以第六届全国大学生智能汽车竞赛为背景,为了保证智能汽车能够具有迅捷的速度、远而清晰的前瞻以及较高的灵敏度与稳定性,从硬件方面对系统进行了优化。 2智能汽车控制系统总体设计 2.1总体设计思路。依据电磁感应的原理我们用LC 谐振回路为传感器来采集信号,之后 用运放对采集到的信号进行放大,最终将此信号送给单片机进行处理。在控制策略方面,主要包括转向控制和速度控制。对于舵机的转向控制,我们采取经典的位置式PD 算法。对于电机的速度控制策略,采用PID 调节的同时引入反转制动刹车电路。各个方面的之间的联系如图所示。 2.2系统硬件结构。此智能车采用谐振回路定位系统来跟踪前方的赛道,通过谐振回路将检测到了信号进行放大,送给外部A/D 进行数据的处理,最后送给MC9S12XS128 进行相应的运算,然后将计算得到的数据送给舵机和电机,对其进行相应的控制。其中所用的硬件结构包括:电源模块、MC9S12XS128 系统、传感器模块、电机驱动模块、无线模块。 3智能汽车机械系统调整与改造 在对智能车几个月来的研究,我们发现在规则允许范围内,适当优化机械结构可以带来事半功倍的效果。 根据长期的调试,我们发现对于前轮倾角、悬挂、后轮的差速做调整会使车行驶时有更好的效果。

飞思卡尔智能车电磁组信号采集

?пㄖ ???? ??? ? ??? ?? ? ? 1? ? ??? ? 哖 世?? ???? ??? ??? ??? ? ??? ㄎ? ?? ??????仁??20kHz??????⌒ ???仁?VLF? ??⌒???仁仁?? ? 仁 ?仁??⌒????3kHz?30kHz?⌒?? 100km?10km? ?? 3.1?? ??? ? ? ?? ? ? ?а ? ?????? ??? ? ? ? ? ?? ??オ???? ??? ??? ? ? ??? ? ? ???о? ??? ??? ??? ? ? ? ? ?? ? ??? й ?????? ? ? ?? ? ???? ?н ????? ? ? на???? ??? ? ? ?? ? ? ?? а ? ???? ?? ??? ?? ? ??? ? ? ?? ?? ??? ??? ?? ??仁? ??? ?? ???? ??? ?? ?? ????? ?? ? ?? ?????? ↓ ? ?? ?? ↓ ? ?? ?? ??? ???? ? ??? ?? ? ? ?? ? ↓ ?? ?? ? ? ? ? ?? っ ?? ???/& ????? ??? ? ? ??/&? ?? ? ?

?йㄐ ???? ?? ?LC? ?? ? ? ?? ?? ? ?? ??????? ??? ??AD???? 享 ?? 儈?↓? фн?? ?? ???AD? ???? ? ?? ?? 3.3 ?? ?? ???????? ?? 傼 ??н ??? ? ? н ? ?? ?? ?н ? н? ? ? ??? ? ?? ?нっ ???? ?????? ? ф? 儈? ? ?

智能循迹小车总体设计方案

智能循迹小车总体设计方案 1.1 整体设计方案 本系统采用简单明了的设计方案。通过高发射功率红外光电二极管和高灵敏度光电晶体管组成的传感器循迹模块黑线路经,然后由AT89S52通过IO口控制L298N驱动模块改变两个直流电机的工作状态,最后实现小车循迹。 1.2系统设计步骤 (1)根据设计要求,确定控制方案; (2)将各个模块进行组装并进行简单调试; (3)画出程序流程图,使用C语言进行编程; (4)将程序烧录到单片机内; (5)进行调试以实现控制功能。 1.2.1系统基本组成 智能循迹小车主要由AT89S52单片机电路、循迹模块、L298N驱动模块、直流电机、小车底板、电源模块等组成。 (1)单片机电路:采用AT89S52芯片作为控制单元。AT89S52单片机具有低成本、高性能、抗干扰能力强、超低功耗、低电磁干扰,并且与传统的8051单片机程序兼容,无需改变硬件,支持在系统编程技术。使用ISP可不用编程器直接在PCB板上烧录程序,修改、调速都方便。 (2)循迹模块:采用脉冲调制反射红外发射接收器作为循迹传感器,调制信号带有交流分量,可减少外界的大量干扰。信号采集部分就相

当于智能循迹小车的眼睛,有它完成黑线识别并产生高、低平信号传送到控制单元,然后单片机生成指令来控制驱动模块来控制两个直流电机的工作状态,来完成自动循迹。 (3)L298N驱动模块:采用L298N作为点击驱动芯片。L298N具有高电压、大电流、响应频率高的全桥驱动芯片,一片L298N可以分别控制两个直流电机,并且带有控制使能端。该电机驱动芯片驱动能力强、操作方便、稳定性好,性能优良。L298N的使能端可以外接电平控制,也可以利用单片机进行软件控制,满足各种复杂电路的需要。另外,L298N的驱动功率较大,能够根据输入电压的大小输出不同的电压和功率,解决了负载能力不够的问题。

智能车电磁环境制作

第五届全国大学生智能汽车竞赛 20KHz 电源参考设计方案 (竞赛秘书处技术组版本1.0) 第五届全国大学“飞思卡尔杯”智能汽车竞赛新增加了“电磁组”。根据比赛技术要求,电磁组竞赛,需要选手设计的智能车能够检测到道路中心线下电线中20KHz交表电流产生的磁场来导引小车沿着道路行驶。在平时调试和比赛过程中需要能够满足比赛技术要求的20KHz的交流电源驱动赛道中心线下的线圈。本文档给出了电源设计参考方案,参赛队伍可以根据这些参考设计方案自行设计制作所使用电源。 一、 电源技术指标要求: 根据《竞赛比赛细则》附件三关于电磁组赛道说明,20KHz电源技术要求如下: 1、驱动赛道中心线下铺设的0.1-0.3mm直径的漆包线; 2、频率范围:20K±2K; 3、电流范围:50-150mA; 下图是赛道起跑区示意图,在中心线铺设有漆包线。 图1 竞赛跑道起跑区示意图

首先分析赛道铺设铜线的电抗,从而得到电源输出的电压范围。 我们按照普通的练习赛道总长度50,使用直径为0.2mm漆包线。在30摄氏度下,铜线的电阻率大约为 0.0185欧姆平方毫米/米。计算可以得到中心线的电阻大约为29.4欧姆。 按照导线电感量计算机公式: 4 2ln0.75() l L l nH d ?? =×? ?? ?? 。其中l, d的单位 均为cm。可以计算出直径为0.2mm,长度50米的铜线电感量为131微亨。对应20KHz下,感抗约为16.5欧姆。 可以看出,线圈的电感量小于其电阻值。由于导线的电感量与铺设的形状有关系,上述计算所得到的电感量不是准确数值。另外,我们可以在输出时串接电容来抵消电感的感抗。所以估算电源电压输出范围的时候,我们不再特别考虑线圈的电感对于电流的影响。 为了方便设计,我们设计电源输出电压波形为对称方波。由于线圈电感的影响,线圈中的电流为上升、下降沿缓变的方波波形。如下图所示 图2 线圈驱动电压与电流示意图 对于电阻为29.4欧姆的赛道导线,流过100mA的电流,电压峰值应该大于3V。考虑到赛道长度有可能进一步增加、漆包线的直径减少等原因,设计电源输出电压的峰值为6V。在输出电流为150mA的时候,电源输出功率大约为0.9W。 二、 电源组成 电源电路包括振荡电路、功率输出电路、恒流控制电路以及电源等组成。 如下图所示:

电磁组智能车恒磁式20KHZ信号源设计导图

现在我们借助电磁组用的20KHZ的信号发生器看看能学到些什么。 信号发生器分三个部分组成,20K信号发生器、功率输出部分(功率输出可以采用多种方式,我们在这里只讨论用分立元件组成的H桥)、恒流源部分。20K信号的发生有多种方式,可以使用单片机也可以使用555还可以使用其他的振荡电路(教材上有详细的介绍)。下面我们主要讨论一下H桥和恒流控制。 这是一个H桥功率输出+恒流电路,现在我们把它拆分成两部分来看。首先是H桥的主体如下图所示。 这是上臂由PNP三极管和下臂由NPN三极管构成的H桥。其原理是在三极管工作在关闭和饱和两种状态的基础下,当控制Q1和Q4导通并且另外两只三极管截至的情况下电流会从负载(RL)的左侧流向右侧(红线方向);同理当Q2和Q3导通Q1和Q4截至的时候电流会从负载的右侧流向左侧(绿线方向)。 让NPN三极管工作在饱和的状态(当开关使)只要使其基极电流足够大就可以了(不可太大会烧坏管子的),当Vbe大于导通电压时集电极和发射极导通。一般NPN三极管当开关使的电路如下图所示。 与NPN三极管不同的是PNP三极管的Vbe为负压时(电流从发射极流向基极)发射极和集电极导通。一般PNP三极管当开关使的电路如下图所示。

通过观察这两个开关电路可以发现NPN三极管开关电路的负载比三极管更靠近电源正极,而PNP三极管开关电路的负载比三极管更靠近地。为什么要这么做呢,如果放反了会怎么样呢,以NPN三极管为例。 我们都知道NPN三极管正常工作时发射极电位是小于基极电位的,所以上图电路中的三极管是工作在放大状态下的。这个电路的好处在于基极电流很小(输入阻抗很大),基极电流近似等于(基极电压-导通电压)/负载电阻/β。在共集放大电路(在学习共集放大电路的时候不妨也顺便看看共基放大电路)和推挽电路中会看到它的身影。这个电路稍微改造一下就变成了一个最简单的(之一吧)恒流源。 流过负载电阻RL的电流近似恒定为(Vref-导通电压)/Rfb。那么这个电路是如何恒流的呢,反馈电阻Rfb(在这里就不叫负载电阻了)是关键。我们都知道在RL在一定范围内变化时(这点很重要,RL如果太大下文就不成立了)三极管的集电极电流=基极电流*β,集电极电流与RL无关,但是β会随着三极管工作产生的热量变化,所以β值的变化是恒流最大的敌人。好在这里有Rfb,当β增大时集电极电流增大即流过Rfb的电流就会增大所以导致三极管发射极电压升高,进而导致基极电流变小使集电极电流稳定下来。这就是所谓的负反馈。可以把这个电路抽象成一个串接在主回路上的可调电阻器。

智能循迹小车总体设计方案

智能循迹小车总体设计方案 整体设计方案 本系统采用简单明了的设计方案。通过高发射功率红外光电二极管和高灵敏度光电晶体管组成的传感器循迹模块黑线路经,然后由AT89S52通过IO口控制L298N驱动模块改变两个直流电机的工作状态,最后实现小车循迹。 系统设计步骤 (1)根据设计要求,确定控制方案; (2)将各个模块进行组装并进行简单调试; (3)画出程序流程图,使用C语言进行编程; (4)将程序烧录到单片机内; (5)进行调试以实现控制功能。 系统基本组成 智能循迹小车主要由AT89S52单片机电路、循迹模块、L298N驱动模块、直流电机、小车底板、电源模块等组成。 (1)单片机电路:采用AT89S52芯片作为控制单元。AT89S52单片机具有低成本、高性能、抗干扰能力强、超低功耗、低电磁干扰,并且与传统的8051单片机程序兼容,无需改变硬件,支持在系统编程技术。使用ISP可不用编程器直接在PCB板上烧录程序,修改、调速都

方便。 (2)循迹模块:采用脉冲调制反射红外发射接收器作为循迹传感器,调制信号带有交流分量,可减少外界的大量干扰。信号采集部分就相当于智能循迹小车的眼睛,有它完成黑线识别并产生高、低平信号传送到控制单元,然后单片机生成指令来控制驱动模块来控制两个直流电机的工作状态,来完成自动循迹。 (3)L298N驱动模块:采用L298N作为点击驱动芯片。L298N具有高电压、大电流、响应频率高的全桥驱动芯片,一片L298N可以分别控制两个直流电机,并且带有控制使能端。该电机驱动芯片驱动能力强、操作方便、稳定性好,性能优良。L298N的使能端可以外接电平控制,也可以利用单片机进行软件控制,满足各种复杂电路的需要。另外,L298N的驱动功率较大,能够根据输入电压的大小输出不同的电压和功率,解决了负载能力不够的问题。

PWM调速+循迹__智能小车程序

//T0产生双路PWM信号,L298N为直流电机调速,接L298N时相应的管脚上最好接上10K 的上拉电阻。 /* 晶振采用12M,产生的PWM的频率约为100Hz */ #include #include #define uchar unsigned char #define uint unsigned int sbit en1=P3^4; /* L298的Enable A */ sbit en2=P3^5; /* L298的Enable B */ sbit s1=P1^0; /* L298的Input 1 */ sbit s2=P1^1; /* L298的Input 2 */ sbit s3=P1^3; /* L298的Input 3 */ sbit s4=P1^2; /* L298的Input 4 */ sbit R=P2^0; sbit C=P2^1; sbit L=P2^2; sbit key=P1^4; uchar t=0; /* 中断计数器*/ uchar m1=0; /* 电机1速度值*/ uchar m2=0; /* 电机2速度值*/ uchar tmp1,tmp2; /* 电机当前速度值*/ /* 电机控制函数index-电机号(1,2); speed-电机速度(0-100) */ void motor(uchar index, char speed) { if(speed<=100) { if(index==1) /* 电机1的处理*/ { m1=abs(speed); /* 取速度的绝对值*/ s1=1; s2=0; } if(index==2) /* 电机2的处理*/ { m2=abs(speed); /* 电机2的速度控制*/ s3=1; s4=0; } } } void Back(void) {

飞思卡尔智能车电磁组程序员成长之路(未完待续)

飞思卡尔智能车电磁组程序员成长之路 1.飞思卡尔智能车小车入门 智能汽车电磁组简介: 第五届全国大学“飞思卡尔杯”智能汽车竞赛新增加了“电磁组”。根据比赛技术 要求,电磁组竞赛,需要选手设计的智能车能够检测到道路中心线下电线中20KHz 交 变电流产生的磁场来导引小车沿着道路行驶。在平时调试和比赛过程中需要能够满足比 赛技术要求的 20KHz 的交流电源驱动赛道中心线下的线圈。同时参赛选手需要自行设 计合适的电磁传感器来检测赛道信息完成智能寻迹功能。 智能车制作是一个涵盖电子、电气、机械、控制等多个领域和学科的科技创新活动。简单点来说可以将其分为硬件电路(包括电源、MUC 控制部分、电机驱动、传感器)、机械、算法三方面的设计。电磁组在机械方面可以参照光电组的设计方案,这里不再赘述。本设计指导只讲述20KHZ 电源、电磁传感器设计方案以及部分算法。 智能车对单片机模块需求: 飞思卡尔单片机资源:

智能车涉及到IO模块,中断模块,PWM模块,DMA模块,AD模块等。在车模调试中还有必须的模块。如SCI模块、定时器模块,SPI模块等。其中还涉及到一些算法和数据的存储和搬移。一个好程序框架对智能车的制作过程中会达到事半功倍的效果。但是就智能车这样系统来说,如果完全专门移植一个操作系统或者写一个程序的bootload,感觉有一些本末倒置,如果有成熟的,可以借用的,那样会比较好。 2.电磁传感器的使用 20KHz电源参考设计方案: 电源技术指标要求: 根据官网关于电磁组赛道说明,20KHz 电源技术要求如下: 1.驱动赛道中心线下铺设的 0.1-0.3mm 直径的漆包线; 2.频率围:20K±2K; 3.电流围:50-150mA; 图 2.1 是赛道起跑区示意图,在中心 线铺设有漆包线。 首先分析赛道铺设铜线的电抗,从而得 到电源输出的电压围。我们按照普通的练习 赛道总长度 50m,使用直径 0.2mm 漆包线。在30 摄氏度下,铜线的电阻率大约为 0.0185 欧姆平方毫米/米。计算可以得到中心线的电阻大约为 29.4 欧姆。 按照导线电感量计算机公式: 其中 l, d 的单位均为 cm。可以计算出直径为 0.2mm,长度 50 米的铜线电感量为131 微亨。对应 20KHz 下,感抗约为 16.5 欧姆。

智能循迹小车设计

智能循迹/避障小车研究 工作报告 一、智能循迹小车程序结构框图 二、Proteus仿真图 三、软件程序设计

一、智能循迹小车程序结构框图 经过几天在网上的查找,对智能循迹/避障小车有了大致的了 解, 一般有三个模块: 1、最基本的小车驱动模块,使用两个二相四线步进电机对小车的两个后轮分别进行驱动,前轮最好用万向轮,能使小车更好地转弯; 2、小车循迹模块,在小车底部有三个并排安装的红外对管,对黑色与白色的反射信号不同,经单片机处理后对小车进行相应处理; 3、避障模块,我写的程序中对于避障模块是用中断来处理的(即安装在小车车头的红外对管检测到有障碍物后,就会向单片机的P3_2口输出一个高电平或是低电平,这时中断程序将对小车进行预先设定好的避障处理),但是在程序结构框图中,我不太会表示中断处理方式,所以就用查询的方式画了。

N Y N Y 二、Proteus 仿真图 我用Proteus 大概地仿真了小车的运行状态。图中的两个二相四线步进电机就代表小车的左右轮(假定步进电机顺时针转动方向为小车前进方向),网上有很多种驱动芯片,在仿真时我只使用L298N 芯

片来驱动步进电机。用三个单刀双制开关模拟用于小车循迹的三个红外对管的输出信号,经一个与门与三极管开关连接到P3_3口,中断程序对P1_0, P1_1, P1_2三个口进行检测,并做出相应处理。同时因为避障模块的优先级高于循迹模块,所以将外部中断0用于避障,外部中断1用于循迹。P1_3口则用于检测小车是否到达终点。 1、小车驱动模块: 使用一片298芯片驱动一个二相四线步进电机,电机的电压为12V。

飞思卡尔智能车比赛电磁组路径检测设计方案

飞思卡尔智能车比赛电磁组路径检测设计方案电磁组竞赛车模 路径检测设计参考方案 (竞赛秘书处 2010-1,版本 1.0) 一、前言 第五届全国大学生智能汽车竞赛新增加了电磁组比赛。竞赛车模需要能够通 过自动识别赛道中心线位置处由通有 100mA 交变电流的导线所产生的电磁场进行路径检测。除此之外在赛道的起跑线处还有永磁铁标志起跑线的位置。具体要求请参阅《第五届智能汽车竞赛细则》技术文档。 本文给出了一种简便的交变磁场的检测方案,目的是使得部分初次参加比赛 的队伍能够尽快有一个设计方案,开始制作和调试自己的车模。本方案通过微型车模实际运行,证明了它的可行性。微型车模运行录像参见竞赛网站上视频文件。 二、设计原理 1、导线周围的电磁场 根据麦克斯韦电磁场理论,交变电流会在周围产生交变的电磁场。智能汽车 竞赛使用路径导航的交流电流频率为 20kHz,产生的电磁波属于甚低频(VLF) 电磁波。甚低频频率范围处于工频和低频电磁破中间,为 3kHz,30kHz,波长为 100km,10km。如下图所示: 图 1:电流周围的电磁场示意图

导线周围的电场和磁场,按照一定规律分布。通过检测相应的电磁场的强度 和方向可以反过来获得距离导线的空间位置,这正是我们进行电磁导航的目的。 由于赛道导航电线和小车尺寸 l 远远小于电磁波的波长,,电磁场辐射能量很小(如果天线的长度 l 远小于电磁波长,在施加交变电压后,电磁波辐射功率正比于天线长度的四次方),所以能够感应到电磁波的能量非常小。为此,我们将导线周围变化的磁场近似缓变的磁场,按照检测静态磁场的方法获取导线周围的磁场分布,从而进行位置检测。 由毕奥-萨伐尔定律知:通有稳恒电流 I 长度为 L 的直导线周围会产生磁场,距离导线距离为 r 处 P 点的磁感应强度为: 图 2 sin直线电流的磁场 , d, ,(0 , 4 10, 7 TmA 1 ) B , ,, cos,1 2 ,。 (1) ,1 4 r 由此得: B , cos, 4 r 4 r

智能循迹小车报告

电子信息专业实验报告 课程电子信息系统综合设计实验MCU部分实验题目智能机器小车设计实验总分 学生姓名学号 学生姓名学号 学生姓名学号 实验时间地点分组 电子信息学院专业实验中心

目录 一、摘要 二、题目要求 三、软硬件设计方案 四、各部分电路的作用及电路工作原理分析 五、系统调试与实验结果 六、实验结果 七、拓展功能 八、参考资料 九、附录 一、摘要 摘要:智能循迹小车主要由单片机模块、传感器模块、电机驱动模块以及电源模块组成,小车具有自主寻迹的功能。本次设计我们采用STC89C52单片机作为控制芯片,传感器模块采用红外光电对管和比较器实现,能够识别黑白两色路面,电机模块由L293D芯片和两个减速直流电机构成,组成了智能车的动力系统,电源采用7.2V的直流电池,经过系统组装,从而实现了小车的自动循迹的功能。 关键词智能小车 STC89C52单片机 L293D芯片红外光对管 二、题目要求 “智能寻迹机器小车设计”,要求采用MCS-51单片机为控制芯片,设计出一个能够识别并沿着以白底为道路色,宽度5mm左右的黑色胶带制作的不规则的封闭曲线为引导轨迹行进的智能寻迹机器小车。 三、软硬件设计方案 1、硬件部分 可分为四个模块:单片机模块、传感器模块、电机驱动模块以及电源模块。 1.1、单片机模块 单片机模块为小车运行的核心部件,起控制小车的所有运行状态的作用。本次小车的设计我们小组采用的是ATMEL公司的STC89C52RC单片机。STC89C52RC是一种低损耗、高性能、CMOS八位微处理器,片内有4k字节的在线可重复编程、快速擦除快速写入程序的存储器,能重复写入/擦除1000次,数据保存时间为十年。其程序和数据存储是分开的。 STC89C52RC单片机介绍:

智能循迹小车程序

智能循迹小车程序 Document number:BGCG-0857-BTDO-0089-2022

#include<> #define uchar unsigned char #define uint unsigned int //D0-D7:f,b,a,e,d,h,c,g 共阴依次编码 //74LS04反相器驱动数码管 uchar code table[10] = {0x5F,0x42,0x9E,0xD6,0xC3,0xD5,0xDD,0x46,0xDF,0xD7}; uchar i = 0; //用于0-3数码管轮流显示uint j = 0; //计时的次数 uint time=0; //计时 uint pwm=16; //占空比 uint speed; //调制PWM波的当前的值 sbit R=P3^2; //右边传感器 P3^2 sbit L=P3^3; //左边传感器 P3^3 //电机驱动口定义 sbit ENB=P1^0; //前轮电机停止控制使能 sbit ENA=P1^1; //后轮控制调速控制端口 sbit IN1=P1^2; //前轮 sbit IN2=P1^3; //前轮 sbit IN3=P1^4; //后轮

sbit IN4=P1^5; //后轮 void Init() { TMOD = 0x12; //定时器0用方式2,定时器1用方式1 TH0=(256-200)/256; //pwm TL0=(256-200)/256; TH1 = 0x0F8; //定时2ms TL1 = 0x30; EA = 1; ET0 = 1; ET1 = 1; TR0 = 1; TR1 = 1; } void tim0(void) interrupt 1 //产生PWM { speed ++; if(speed <= pwm) //pwm 就相当于占100的比例{ ENA = 1; }

基于STM的智能循迹小车的设计

基于S T M的智能循迹小 车的设计 TYYGROUP system office room 【TYYUA16H-TYY-TYYYUA8Q8-

燕山大学 课程设计说明书 题目:基于STM32的智能循迹小车的设计 学号:

说明:此表一式四份,学生、指导教师、基层教学单位、系部各一份。

年月日

基于STM32的智能循迹小车的设计 贺红红 理学院12级智能传感器 摘要:主要分析了基于STM32的小车控制系统的设计过程,此系统主要包括STM32控制器、按键控制电路、电机驱动电路、红外探测电路等。以STM32为主控芯片及其外围扩展电路实现系统整体功能,用红外探测电路实现小车循迹功能,小车速度由PWM波控制,控制电动小车的速度及转向,从而使小车顺利通过直线,虚线,十字路口,S弯,实现循迹功能。在硬件设计的基础上实现了电机控制功能,LED显示功能,以及小车简单循迹的软件设计方案。 关键字:STM32 电机传感器 PWM KEIL Design of intelligent tracking car based on STM32 Abstract:. Mainly analyzes the design process of the car control system based on STM32, this system mainly includes the STM32 controller, button control circuit, motor drive circuit, infrared detection circuit, etc. STM32 as main control chip and extend the peripheral circuit to realize the whole system function, the function of infrared detection circuit is used to implement the car tracking, vehicle speed is controlled by a PWM wave, control the speed of the electric car and steering, which makes the car pass straight line, dotted line, intersection, S bending, realize the tracking function. On the basis of the hardware design to realize the function of motor control, LED display function, and software design scheme of simple car tracking. Keywords:STM32、 The motor、 The sensor、 PWM、 KEIL. 学习目的 1. 学习STM32工作原理及使用方法; 2. 学习计算机程序设计; 3. 学习编程并掌握软件调试。二〇二〇年十一月十八日 学习软件 Keil uVision、串口猎人 学习任务 学会利用STM32和红外线传感器设计智能循迹小车

智能循迹小车详细源代码程序MSPID

巡线车程序(完整版) 1 #ifndef _Macro.h_ 2 #define _Macro.h_ 3 #include 4 #include 5 #define uchar unsigned char 6 #define uint unsigned int 7 #define one 11.11 8 #define LMAX 1999 9 #define RMAX 3999 10 #define CPU_F ((double)8000000) 11 #define delay_us(x) __delay_cycles((long)(CPU_F*(double)x/1000000.0)) 12 13 #define delay_ms(x) __delay_cycles((long)(CPU_F*(double)x/1000.0)) 14 #define PC 20 // 比例放大系数 15 #define IC 0 //积分放大系数 16 #define DC 85 //大系数 17 #define LEFTOUT TACCR1 18 #define RIGHTOUT TACCR2 19 #define SensorIn P5IN 20 #define F 5000//5000hz 21 #define Period (8000000/F) 22 #define EnableLeftPos P3OUT|=BIT1 23 #define UnenableLeftPos P3OUT&=~BIT1 24 25 #define EnableLeftNeg P3OUT|=BIT0 26 #define UnenableLeftNeg P3OUT&=~BIT0 27 28 #define EnableRightPos P3OUT|=BIT2 29 #define UnenableRightPos P3OUT&=~BIT2 30 31 #define EnableRightNeg P3OUT|=BIT3 32 #define UnenableRightNeg P3OUT&=~BIT3 33 34 #define Basic_Left 100//百分之八十 35 #define Basic_Right 100//Basic_Left 36 #define MAX (100) 37 #define MIN (-100) 38 #define foreward 1 39 #define backward 0

电磁组智能车全国一等奖代码

void main(void) { while(1) { AD_GetValue(); //获得传感器AD值Cal_PostitionA(); //获得? if(SenA!=50) { Delayms(500); break; } Delayms(50); SenA=50; } #include /* common defines and macros */ #include "derivative.h" /* derivative-specific definitions*/ #define SERVO_MIDDLE_V ALUE 1184 舵机中值 #define SERVO_RANGE 180 舵机转动范围 void Set_PWM(uint PWM1,uint PWM2) { PWMDTY1=PWM1; PWMDTY0=PWM2; } void Set_Servo(uchar value) //舵机 { uint i; if(value>100||value<0) value=last_value; 保持上一次状态 last_value=value; if(value<=50) i=SERVO_MIDDLE_V ALUE-(50-value)*18/5; if(value>50) i=SERVO_MIDDLE_V ALUE+(value-50)*18/5; PWMDTY23=i; } void Pwm_Init(void) //PWM初始化 { PWME=0X00; //禁止PWM输出 PWMCTL_CON23=1; //2和3联合成16位PWM,并且2的寄存器为级联后寄存器

基于stm32的智能循迹小车的设计

燕山大学 课程设计说明书 题目:基于STM32的智能循迹小车的设计 学院(系):理学院 年级专业:12级智能传感器 学号:120108040006 学生姓名:贺红红 指导教师:杜会静徐超 教师职称:副教授讲师

燕山大学课程设计(论文)任务书院(系):理学院基层教学单位:12级智能传感器 学号120108040006 学生姓 名 贺红红专业(班级)12级智能传感器 设计题 目 基于STM32的智能循迹小车的设计 设计技术参数 设计参数: 以SMT32作为主控制器,由红外传感器作为检测工具,两者相辅相成,控制电机电机转动。 设计要求1.按要求组装好小车,编写程序,使得小车按下按键后停两秒自启,并沿 着黑胶带行驶,到达终点线后停止。 2.在满足1的条件下,调试小车,使小车走的快而稳。 工作量15个工作日 平均每个工作日约8小时 工 作计划2015/6/27---2015/7/1 焊接STM32开发板,组装小车。 2015/7/2---2014/7/10 学习STM 32开发板的使用,进行编程练习。调试小车2015/7/11 课设结题答辩。 参考资料[1]《控制电机》杨渝钦 [2]《 STM32系列ARM Cortex-M3微控制器原理与实践》王咏虹徐炜郝立平 [3]《Cortex-M3嵌入式处理器原理与应用》范书瑞 [4] 《电子元器件与实用电路基础》韩广兴 指导教师签字基层教学单位主任字 说明:此表一式四份,学生、指导教师、基层教学单位、系部各一份。 年月日

基于STM32的智能循迹小车的设计 贺红红 理学院12级智能传感器 摘要:主要分析了基于STM32的小车控制系统的设计过程,此系统主要包括STM32控制器、按键控制电路、电机驱动电路、红外探测电路等。以STM32为主控芯片及其外围扩展电路实现系统整体功能,用红外探测电路实现小车循迹功能,小车速度由PWM波控制,控制电动小车的速度及转向,从而使小车顺利通过直线,虚线,十字路口,S弯,实现循迹功能。在硬件设计的基础上实现了电机控制功能,LED显示功能,以及小车简单循迹的软件设计方案。 关键字:STM32 电机传感器 PWM KEIL Design of intelligent tracking car based on STM32 Abstract:.Mainly analyzes the design process of the car control system based on STM32, this system mainly includes the STM32 controller, button control circuit, motor drive circuit, infrared detection circuit, etc. STM32 as main control chip and extend the peripheral circuit to realize the whole system function, the function of infrared detection circuit is used to implement the car tracking, vehicle speed is controlled by a PWM wave, control the speed of the electric car and steering, which makes the car pass straight line, dotted line, intersection, S bending, realize the tracking function. On the basis of the hardware design to realize the function of motor control, LED display function, and software design scheme of simple car tracking. Keywords:STM32、The motor、The sensor、PWM、KEIL. 学习目的 1.学习STM32工作原理及使用方法; 2. 学习计算机程序设计; 3. 学习编程并掌握软件调试。二〇一九年十二月二十六日 学习软件 Keil uVision、串口猎人 学习任务 学会利用STM32和红外线传感器设计智能循迹小车

智能循迹小车详细制作过程

(穿山乙工作室) 三天三十元做出智能车 0.准备所需基本元器件 1).基本二驱车体一台。(本课以穿山乙推出的基本车体为例讲解) 2).5x7cm 洞洞板、单片机卡槽、51单片机、石英晶体、红色LED 、1K 电阻、10K 排阻各一个;2个瓷片电容、排针40个。 3).5x7cm 洞洞板、7805稳压芯片、红色LED 、1K 电阻各一个;双孔接线柱三个、10u 电解电容2个、排针12个、9110驱动芯片2个。 4).5x7cm 洞洞板、LM324比较器芯片各一个;红外对管三对、4.7K 电阻3个、330电阻三个、红色3mmLED 三个。 一、组装车体 基本设计思路: 1.基本车架(两个电机一体轮子+一个万向轮) 2.单片机主控模块 3.电机驱动模块(内置5V 电源输出) 4.黑白线循迹模块

(图中显示的很清晰吧,照着上螺丝就行了) 二、制作单片机控制模块 材料:5x7cm洞洞板、单片机卡槽、51单片机、石英晶体、红色LED、1K电阻、10K排阻各一个;2个瓷片电容、排针40个。 电路图如下,主要目的是把单片机的各个引脚用排针引出来,便于使用。我们也有焊接好的实物图供你参考。(如果你选用的是STC98系列的单片机在这里可以省掉复位电路不焊,仍能正常工作。我实物图中就没焊复位)

三、制作电机驱动模块 材料:5x7cm洞洞板、7805稳压芯片、红色LED、1K电阻各一个;双孔接线柱三个、10u电解电容2个、排针12个、9110驱动芯片2个。 电路图如下,这里我们把电源模块与驱动模块含在了同一个电路板上。因为电机驱动模块所需的电压是+9V左右(6—15V 均可),而单片机主控和循迹模块所需电压均为+5V。 这里用了一个7805稳压芯片将+9V电压稳出+5V电压。 +9V

相关文档
最新文档