自动充电小车设计报告 - 图文

更新时间:2023-09-27 23:35:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

广西民族大学院物理与电子工程学院

电子竞赛设计报告

题 名: 自动充电小车 作者姓名: 邱杰富 韦雪国 黃宁振 指导教师姓名: 李映超老师 专 业 名 称: 电子信息工程

1

目 录

中文摘要..................... ..................................3 1 前言..........................................................4 2设计内容与系统结构析..................... ............. .......4 2.1设计任务...................................................4 2.2设计要求...................................................4 2.3电控系统........................ ..........................5 2.4机械系统...................................................5 2.5传感器设置与布局.............................................6 3电路设计与原理框图.......... ....................................6 3.1 红外发射接收器............................................6 3.2趋光模块..................................................11 3.3电动机驱动控制模块........................................11 3.4自动充电模块..............................................13 3.5单片机控制模块............................................14 4 系统软件设计................ .................................15 4.1 系统的程序流程图..........................................15 4.2 系统程序..................................................15 5 自动充电小车的论证.......... .................................24 5.1自动充电小车的介绍 ........................................24 5.2自动充电小车的论证实验.....................................25 参考文献........................................................26

2

自动充电小车的实现

邱杰富 韦雪国 黃宁振

摘 要:本论文设计主要有如下几大模块:步进电动机的驱动模块,红外传感器的探测模块,自动充电模块,趋光模块。

在驱动模块中主要使用了两个步进电动机作为小车的前进和转弯驱动电机,使小车具有了行动的足脚和可以改变行动方向的鸵机。在红外传感器的探测模块中主要是使用5个红外探测器分别摆在小车的前后左右四个方向,使其对这四个方向进行定时的探测,并把探测的结果传给CPU,以达到避障的功能。趋光模块工作过程如下:充电电源处放有强光,小车上安装有小许光敏电阻,通过光敏电阻的寻光分析可知道小车处于充电电源的大概方向。自动充电模块利用趋光模块知道的充电电源的方向,调整小车的身体,使其向充电电源方向前进,边前进边分析小车前面的红外接收器接收到的调制码为充电电源哪处发出的,再调整小车的前进方向使其向充电电源的具体方向前进,等靠近充电电源时,利用探测模块来调整小车的身体,使其正对充电电源从而实现自动充电。

关键字:自动充电;红外技术;减速电机;寻光机器人

3

1 引言

现代玩具小车不断地用高科技武装玩具,研发出各种集知识性、趣味性于一体的智能小车玩具。

智能小车的各项技术的研发是高端技术的试验田和基础源泉,智能小车的开发研制将在社会中新技术发展,提高人们生活质量中发挥越来越重要的作用。具体表现在:

(1)为智能制作应用高端科技提供技术基础支持,学习锻炼的平台; (2)智能小车可开发智力,锻炼技术,提高创新水平。

本文的内容是设计一部智能玩具车,此设计将寻迹、避障、寻光、对接充电等功能集为一体,尝试了多通道、多传感器的综合应用,采用了精确的方向控制策略和优化的行进过程的速度控制策略,添加了智能容错功能,使整个系统的稳定性达到了比较高的水平。

2 设计内容与系统结构

2.1 设计任务

自制(或用小型遥控玩具车改装)一个可自动寻找到固定充电位置的电动小车,同时制作一个可供电动小车充电的简易充电小盒子。电动小车可以在没有障碍物的情况下出发,找到充电小盒子并自动对接,对接成功后即可开始充电。

2.2 设计要求

(1)制作(或用小型遥控玩具改装)一个可前进、转弯(或加上后退)的电动小车。

4

(2)电动小车放到A出发位置后,打开运行开关即可开始前行,运动到充电盒子位置停止。电动小车从B位置出发后,可通过自动转弯运动到充电盒子位置停止。

(3)电动小车从C位置与充电盒子反向开始出发后,可通过自动寻找目标而运动到充电盒子位置停止,从启动运动到充电盒子位置停止的时间不超过5分钟。

(4)制作小车电池的简易充电电路,包括小车一端的充电电路以及为小车提供低压直流电源的充电小盒子,对充电性能不做要求,但需要有充电指示及短路保护功能。

(5)电动小车具有与充电小盒子对接的功能,对接正确之后可以实现电动小车的自动充电。 2.3 电控系统

在设计中,用单片机的端口接收到各个传感器的输出信号的电平变化,用端口输出各个电平控制信号,使小车做出各种响应动作,如图1所示。分别有:反射型红外发射接收器的输出信号;小车前轮方向电机转动的输出信号;电动机正转反转驱动控制电路的输入信号; 红外发射接收器 单片机 图1 端口功能

电动机驱动控制 2.4 机械系统

小车的机械制动由前轮马达驱动和后轮马达驱动两部分组成。前轮马达驱动通过齿轮转换使小车前轮具备左转和右转功能。后轮马达驱动通过齿轮转换,使马达较大转速制动后轮较小的转速,虽然增加了可用功但是却增加小车负载驱动能力。为使小车负载的电池使用更加持久,设计小车的前轮和后轮的马达驱动电

5

压均为5V。

2.5 传感器设置与布局

在给小车输入预定目的地的地理坐标后,小车能自动到达目的地。小车应具备几个系统模块:避障模块,马达驱动模块,趋光模块。设计草图如图2所示:

图2 设计草图

3 电路设计与原理框图

模块设计与功能实现

为实验小车的各个功能,分别要设计如下功能模块,如图3所示。

避障模块 反射红外发射接收器 自动充电小车 电动机驱动控制模块 寻光模块 自动充电模块 图3 功能模块

3.1 红外发射接收器

红外发射接收器选型:

红外探测器以其发射功率大、抗干扰能力强而在工业生产中有着广泛的应用,红外探测器按其工作模式可大致分为主动式与被动式,主动式红外探测器自带红外光源,通过对光源的遮挡、反射、折射等光学手段可以完成对被探测物体位置的判别。被动式红外探测器本身没有光源,通过接受被探测物体的特征光谱辐射来测量被探测物的位置、温度或进行红外成像。

6

红外发光红外接收

分立元件

透射遮挡

图4 主动式红外探测器的形式

主动式红外传感器又可分为分立元件型、透射遮挡型和反射型,如图4所示: 分立元件型发光管与接收管相互独立,用户在使用时可以根据需要灵活的设定发光管与接受管的位置,并可利用棱镜、透镜等完成特殊的目的,缺点是装置麻烦。透射遮挡型和反射型通过塑料模具将发光管与接收管封装在一起,非常方便用户使用。在设计中,选用反射型红外发射接收器比较适合做避障功能。 红外发射接收电路选择

在选择红外发射接收电路中,有四个方案可以选择,并且都做了PCB进行调试比较。

方案一: 利用40KHz的晶振作为红外发射器的震荡源。通过示波器观察,波形非常准确完整,由于红外接收的频率一般是38KHz,虽然晶振的频率可以通过可调电阻微调。但是还是很难匹配,每次试验时都要微调。所以不选择这个方案。

方案二: 如前所述,使用三脚的红外接收器,但是接收器自备了选频和解调能力,很难用单片机对其接收信号进行判断。所以不选择这个设计方案。

方案三:用高速CMOS型四重二输入“与非”门74HC00组成RC震荡电路作为频率发生器,波形也准确完整,但是难匹配。所以不选择这个方案。 方案四:选用通用音调译码器LM567的5输出38KHz频率,其特点是红外线发射部分不设专门的信号发生电路。8脚输入红外接收器接收到的信号。这个信号是锁相音频译码器的锁相中心频率,这样既简化了线路和调试工作,又防止了周围环境变化和元件参数变化对收发频率造成的差异,实现了红外线发射与接收工作频率的同步自动跟踪,使电路的稳定性和抗干扰能力大大加强。本设计中就是利用此方案最终实现避障功能。

红外发射接收电路原理框图

反射型

7

图7 红外发射接收电路SCH图

图8 红外发射接收电路PCB图

这个电路的特点是红外线发射部分不设专门的信号发生电路。而是直接从接收部分的检测电路LM567的5脚引人信号,这个信号是锁相音频译码器的锁相中

8

心频率,这样既简化了线路和调试工作,又防止了周围环境变化和元件参数变化对收发频率造成的差异,实现了红外线发射与接收工作频率的同步自动跟踪,使

电路的稳定性和抗干扰能力大大加强。下面介绍几个主要元件功能。 在红外发射接收器和超声波发射接收器中都用到了通用音调译码器LM567如图10所示,以下对LM567进行介绍。

图10 通用音调译码器LM567

LM567是一片锁相环电路,采用8脚双列直插塑封。其⑤、⑥脚外接的电阻和电容决定了内部压控振荡器的中心频率f。

其中心频率f由R、C决定: f=1/(1.1*RC)

在电路中,因为红外发射器的起振频率是 38KHz,其中电容选择103,所以由以上公式可得 R=2.4KΩ 。

LM567的电路图,如图11,LM567的①、②脚通常分别通过一电容器接地,形成输出滤波网络和环路单级低通滤波网络。②脚所接电容决定锁相环路的捕捉带宽:电容值越大,环路带宽越窄。①脚所接电容的容量应至少是②脚电容的2倍。③脚是输入端,要求输入信号≥25mV。⑧脚是逻辑输出端,其内部是一个集电极开路的三极管,允许最大灌电流为100mA。LM567的工作电压为4.75~9V,工作频率从直流到500kHz,静态工作电流约8mA。

LM567的内部电路及详细工作过程非常复杂,这里仅将其基本功能概述如下:当LM567的③脚输入幅度≥25mV、频率在其带宽内的信号时,⑧脚由高电平变成低电平,②脚输出经频率/电压变换的调制信号;如果在器件的②脚输入音频信号,则在⑤脚输出受②脚输入调制信号调制的调频方波信号。在电路中仅利用了

9

LM567接收到相同频率的载波信号后⑧脚电压由高变低这一特性,来形成对控制对象的控制。

图11 LM567电路图

下面介绍运算放大器741。741拥有反相与非反相两输入端,由输入端输入欲被放大的电流或电压信号,经放大后由输出端输出。其引脚图如图12所示。

图12 741运算放大器引脚图

在设计中,741的放大电路如图13 所示:

图13 741放大电路

741构成了反相放大电路。如图14 所示。

10

图14 反相放大电路

在设计中,Vo= -(1MΩ / 1KΩ)*V1,增益 G= -(1MΩ / 1KΩ) = 1000 所以信号的放大倍数是1000倍。

LM567的5脚输出的38KHz中心频率输出给三极管Q1,经过三极管放大,信号输出给红外发射器J2,可调电阻R3可以改变其发射功率。信号由红外接收器J3接收,经过运算放大器741的反相放大,信号输出给LM567的输入3脚,由于输入的信号是LM567的锁相中心频率,所以LM567的8脚输出由默认的高电平变为低电平。发光二极管有了电压差,所以信号指示灯亮,证明前方有障碍,同时8脚的信号输出给单片机,由单片机由电平的变化去控制电动机的工作实现避障。

红外发射接收电路调试

在实际的红外发射接收电路应用中,刚开始指示灯不亮,没有任何现象,如果用导线将发射头的负端和接收头的负端短路,指示灯亮。推测故障原因是信号线过长,使信号衰减失真。后经过缩短信号线,指示灯亮且稳定,电路能正常使用。结论:信号线长度对信号有一定的影响 3.2 趋光模块

寻光方案主要有:

方案一:采用各类数字电路来组成小车的控制系统,对外围避障信号,黑带检测信号,铁片检测信号,各路趋光信号进行处理。本方案电路复杂,灵活性不高,效率低,不利于小车智能化的扩展,对各路信号处理比较困难。

方案二:趋光采用ATMEGA16L单片机来作为整机的控制单元。红外线探头采用上面所介绍的发射管与及接收头,经过单片机调制后发射。寻光依靠安装在车头部左右四个光敏二极管对管来对前面发射光感应。寻光设计在小车前端安装3路(左、中、右)光敏电阻对光源信号采集,模拟信号经过ATMEGA16L的ADC转化为数字信号送到MCU处理,使得最终实现自动寻找电源的功能。 比较以上两种方案的优缺点,方案二简洁、灵活、可扩展性好,能达到题目的设计要求,因此采用方案二来实现。 3.3 电动机驱动控制模块

电动机的特点

1、R系列斜齿轮减速机,结合国际技术要求制造,具有很高的科技含量;

11

2、节省空间,可靠耐用,承受过载能力高,功率可达132KW; 3、能耗低,性能优越,减速机效率高达95%以上; 4、振动小,噪音低,节能高;

5、选用优质锻钢材料,钢性铸铁箱体,齿轮表面经过高频热处理;

6、经过精密加工,确保轴平行度和定位轴承要求,形成斜齿轮传动总成的减速机配置了各种类电机,组合成机电一体化,完全保证了产品使用质量特性。 电动机驱动电路

本设计采用两个减速电动机的驱动电路由两个后轮驱动组成。小车的前进、左右转动、后退都是均由两个减速电动机正转反转控制电路控制。在设计中电动机的选用也是尤为重要,在设计中我们选用过若干个电机,在选用小功率的电机时车身太重使得小车无法行使,最后不得不换成大功率的电机。 电动机正转反转控制电路

电动机正转反转控制电路的主要芯片是L298(表5)。电路如图21所示。L298是电动机驱动芯片,最大输出电流是2A。由输入端信号的高低电平信号来控制电动机的正转和反转。

图21 电动机正转反转控制电路SCH图

注释:

6,11脚Ven是使能端,高电平电机工作。接入单片机。用单片机控制电机工作。 4脚的+Vss是电机驱动电压,一般取6V。

12

9脚的+Vs是L298驱动电压,一般取5V。

表5 电动机正转反转控制电路状态表 (H = 高电平,L = 低电平,X =任何状态) Ven =H 输入 C = H ,D = L C = L ,D = H C = D C = X ,D = X 功能 正转 反转 滑行 停止 Ven =H

图22 电动机正转反转控制电路PCB图 电动机正转反转控制电路调试

在使用L298之前试用了用光电耦合器和三极管的导通截止作用组成的电动机驱动电路。调试发现光电耦合器的导通电阻有230Ω,不适合作驱动电路。

在L298驱动电路调试中,用5V直流电压作芯片驱动电压和电机驱动电压。用变压器作电源,控制电动机效果很好,转速稳定,转向变化速度快。在用9V干电池经过78L05稳压5V输出作电源。电动机不转动,原因是电动机的线圈内阻为7Ω,而电池内阻为3Ω,由于电池内阻的分压作用,输出电流小,不足以驱动电动机。解决方法是再并连一个干电池。电动机可稳定工作了。

13

3.4自动充电模块

在本模型车的设计中,在电源处放着一块金属片,在小车上也放有一块强力磁铁,要求小车在行驶过程中对周围环境进行扫描,利用光电三极管的光电特性,通过比较器LM324的门限电压作用,不断调节其识别灵敏度,从而得到寻光信号,最终由单片机识别后发出相应的命令,进而完成寻光前进的功能。当行驶到电源处,小车停止行走,磁铁并实现电源与小车的的对接功能,从而实现自动充电。光源检测传感器电路原理图如下:

+5V5.1kΩ200kΩPortLM324+5V1MΩ

光源检测传感器电路原理图 3.5单片机控制模块

系统的控制核心Atmega16单片机,是Atmel公司推出的基于AVR RICS低功耗CMOS 8位高性能单片机,采用的是Harvard结构。由于Atmega16单片机运算速度快、内部资源丰富等诸多优点,故本设计选用它作为控制核心。下图为其引脚排列图。

Atmega16引脚排列图

14

将9V直流干电池通过7805稳压输出5V直流电源,为各个功能模块提供电源,同时还将各个功能模块的输出信号接入AVR单片机的IO口,包含的电路有:前方、左右红外发射接收器的电源和信号接口;无线通讯的电源和信号接口;电动机控制电源和信号接口。

4 系统软件设计

系统的程序流程图

开始 初始化 扫描环境 Y 是否有障碍物 N避障 N转弯 前方是否最亮 Y 前进

4.2 系统程序

#include #include #include \

#define Vref 2560 //参考电压值

#define uchar unsigned char #define uint unsigned int

15

uchar miao=0;

unsigned int adc_rel;//AD转换结果 unsigned char adc_mux;//AD通道 unsigned int voltage; unsigned int adc_old;

unsigned int V0,V1,V2,V3;

uint adc_x; uint adc_y;

void get_adc(); /* 微秒级延时程序 */ void delay_us(uint time) { do { time--; }

while (time>1); }

/*****************************************/ void delay_ms(uint time) {

while(time!=0) { delay_us(1000); time--; } }

//端口初始化

void port_init(void) {

PORTA = 0x00; DDRA = 0x00; PORTB = 0x00; DDRB = 0x00;

PORTC = 0x0f; //m103 output only DDRC = 0x0f;

16

PORTD = 0xff; DDRD = 0x00; }

//定时T1初始化 void timer1_init(void) {

TCCR1B = 0x00;//停止定时器 TIMSK |= 0x04;//中断允许 TCNT1H = 0xFC; //重装值高位 TCNT1L = 0x2F; //重装值低位

TCCR1A = 0x00;

TCCR1B = 0x05;//启动定时器 }

//定时器T1溢出中断服务程序

#pragma interrupt_handler timer1_ovf_isr:9 void timer1_ovf_isr(void) {

TCNT1H = 0xFC; //重装值高位 TCNT1L = 0x2F; //重装值低位 CLI(); adc_rel=0; adc_old=0; if(adc_mux<3) adc_mux++;//递增 else adc_mux=0; SEI(); miao++;

if(miao==350)

//LCD_write_string(9,1,Format(miao,\ {stop();

TCCR1B = 0x00;//停止定时器 } }

void adc_init(void) {

17

//adc转换初始化

ADCSRA = 0x00; //禁止AD转换

//ADMUX = 0xC1; //通道1 1100 0001

ADMUX =(1<

ACSR = 0x80; //禁止模拟比较器 ADCSRA |= 0xEE; //1110 1110

ADCSRA|=(1<

//ADC结果转换成电压值

void ADCtoBCD(unsigned int temp) {

unsigned char i;

temp=(unsigned int)(((unsigned long)((unsigned long)temp*Vref))/0x3ff); voltage=temp; switch(adc_mux) { case 0:V0=temp;break; case 1:V1=temp;break; case 2:V2=temp;break; case 3:V3=temp;break; }

LCD_write_shu(0,0,temp); }

#pragma interrupt_handler adc_isr:15 void adc_isr(void) {

//转换完成后中断处理 adc_rel=ADC&0x3ff; //

ADMUX =(1<void init_devices(void)

18

{

CLI(); //禁止所有中断 MCUCR = 0x00;

MCUCSR = 0x80;//禁止JTAG GICR = 0x00; port_init(); timer1_init(); adc_init();

SEI();//开全局中断 }

void qianjin() {

//PORTC|=0x80;

PORTC=0x8A; //1010前进 LCD_write_string(0,1,\ \}

void houtui() {

PORTC=0x85; //0101后退 LCD_write_string(0,1,\ \}

void zuozhuan() {

PORTC=0x82; //0010 左传 LCD_write_string(0,1,\}

void youzhuan() {

PORTC=0x88; //1000右转 LCD_write_string(0,1,\}

void stop() {

PORTC=0x80;

LCD_write_string(0,1,\ \}

void get_adc() {

if(adc_old!=adc_rel) {

adc_old=adc_rel; ADCtoBCD(adc_old);

19

}

LCD_write_shu(0,1,voltage); }

void shaomiao() {unsigned int i; PORTC=0x89;

//LCD_write_string(0,1,\ \

for(i=1000;i>0;i--) {

get_adc();

if( adc_x!=voltage) {

adc_x=voltage; if(adc_y>adc_x) adc_y=adc_x; else continue; }

LCD_write_shu(7,1,adc_y); } }

//响声函数:入口i:响声长度i*10ms,n:响声次数void sound(uchar i,uchar n) {

for(;n;n--) {

uint a=i*10; for(;a;a--) {

PORTC&=~(1<<7) ; //开蜂鸣器 delay_us(100);

PORTC|=1<<7 ; //定义蜂鸣器关 //关蜂鸣器 delay_us(100); } } }

void bizhan()

20

本文来源:https://www.bwwdw.com/article/bb1d.html

Top