基于单片机技术的红外遥控汽车内容摘要:

7 图 6 遥控信号周期性波形 当一个键按下超过 36ms,振荡器使芯片激活,将发射一组 108ms 的编码脉冲 ,这 108ms 发射代码由一个起始码( 9ms) ,一个结果码( ) ,低 8 位地址码( 9ms~ 18ms) ,高 8 位地址码( 9ms~ 18ms) ,8位数据码( 9ms~ 18ms)和这 8位数据的反码( 9ms~ 18ms)组成。 如果键按下超过 108ms 仍未松开,接下来发射的代码(连发代码)将仅由起始码( 9ms)和结束 码( )组成。 如图 图 8 所示 图 7 注:代码宽度计算方法: 图 8 连发代码 8 16 位地址码的最短宽度: 16=18ms 16 位地址码的最长宽度: 16=36ms。 可以得知 8 位数据代码及其 8 位反代码的宽度和不变:( +) 8=27ms。 所以所有 32 位代码的宽度为( 18ms+27ms)~(36ms+27ms),即在 45ms~ 63ms 之间。 红外遥控解码 对于红外线遥控对于很多电子爱好者来讲,都感觉到非常神奇,看不到,摸不着,但能实现 无线遥控,其实控制的关键就是我们要用单片机芯片来识别红外线遥控器发出红外光信号,即我们通常所说的解码,单片机得知发过来的是什么信号,然后再做出相应的判断与控制,如我们按电视机遥控器的频道按钮,则单片机会控制更换电视频道,如按的是遥控器音量键,则单片机会控制增减音量。 而解码的关键是如何识别“ 0”和“ 1”,从位的定义我们可以发现“ 0”、“ 1”均以 的低电平开始,不同的是高电平的宽度不同,“ 0”为 ,“ 1”为 ,所以必须根据高电平的宽度来区别“ 0”和“ 1”。 如果从 低电平过后开始延时, 以后,若读到的电平仍为低,说明该位为“ 0”,若读到的电平为高则为“ 1”。 为了可靠起见,延时必须比 长一些,但又不能超过 ,否则如果该位为“ 0”,读到的已是下一位的高电平,因此采取折中的方法,取( +) /2= 最为可靠,一般取 左右均可。 本课题选取了 882us 来作为区分“ 0”和“ 1”的标准时间。 根据码的格式,应该等待 9ms 的起始码和 的结果码完成后才能读码。 9 第四章 硬件 电路的设计 控制电路原理 控制电路原理图见(附录一) 按下红外遥控发射器某一按键 B1,产生红外遥控编码信号被红外接收管VS383 接收, VS383 将接收的红外编码信号通过 AT89C51 的管脚 送至单片机进行解码。 在单片机的解码过程中,首先判断识别 9ms 的起始码和 的结果码,之后进一步对识别码进行判断识别,最后解码出按键的编码,将解出的按键编码与控制小车前进,后退,左转,右转的按键的编码进行匹配。 最终实现按键 B1 对应的功能,达到对小车的运行状态的无线控制。 单元电路原理 一 、 接 收电路模块 图 9 红外接收模块 上图为接收模块。 其内部含有高频的滤波电路,专门用来滤除红外线合成信号的载波信号( 38KHZ),并送出接收到的信号。 当红外线合成信号进入红外接收模块,在其输出端便可以得到原先发射器发出的数字编码,只要经过单片机解码程序进行解码,便可以得知按下了哪一个按键,而做出相应的控制处理,完成红外遥控的动作。 二 、 解码电路 整个解码过程 由单片机 AT89C51 软件完成 ,它将相匹配的解码结果通过引脚、 、 、 输入给驱动芯片 ,最终完成对电机的控制。 具体的解码 子程序请参考(附录二)。 二 、 驱动电路原理 驱动电路见下图, 单片机 通过解码得到 按键编码,通过调用 相应 子程序,进而对 、 、 、 进行赋值。 、 用来控制左侧电机, 、 用来控制右侧电机。 当 、 任意管脚赋值“ 1”另一管脚赋值“ 0”。 输入 LG9110 管脚 7 脚,对应的输出的管脚 OA,OB 分别为“ 1” 、“ 0”(见下面的真值表)。 正好产生电位差,驱动电机运转。 同理对于右侧电机控制也一样,通过管脚 、 输出信号进行控制。 10 图 10 遥控汽车驱 动电路 停止:停止 MOTOR L、 MOTOR R 运转 前进: MOTOR L、 MOTOR R 均运转 左转:停止 MOTOR L、运行 MOTOR R 右转:停止 MOTOR R、运行 MOTOR L 图 11 LG9110管脚真值表 三 、 电源电路原理 电源主要由电源变压器、整流电路、滤波电路和稳压电路等组成,电源电路包括正 5V、正 12V两组电源。 电路中电源变压器降低 AC 电压,经桥式电路整流 C C7 滤波,送至 LM781 LM7805 稳压输出,得到+ 12V、+ 5V电源。 具体电路图如 下 : 11 图 12 电源电路 模块 图中各部分功能为: 电源变压器 根据各种直流稳压电源提供不同幅值的直流电压,将电网交流电压变换成需要的交流电压幅值。 整流电路 将变压后的交流电压变换成脉动直流电压,一般采用二极管整流电路。 滤波电路 将整流后的单向脉动直流电压中的纹波成分,尽可能滤除掉,使其变成平滑的直流电;滤波电路一般由电容、电感等组成。 稳压电路 滤波后的直流电压还不能满足用电设备的要求,其原因是:第一、电网交流电压是波动的,一般有 5%~ 10%的误差;第二、输出负载变化时,整流滤波后的直流电压也随之改变。 为了保证输出电压的稳定,需要加稳压电路。 芯片介绍 一 、 芯片 LG9110 简介 LG9110 是为控制和驱动电机设计的两通道推挽式功率放大专用集成电路器件,将分立电路集成在单片 IC 之中,使外围器件成本降低,整机可靠性提高。 该芯片有两个 TTL/CMOS 兼容电平的输入,具有良好的抗干扰性;两个输出端能直接驱动电机的正反向运动,他具有较大的电流驱动能力,每通道能通过 750—— 800mA 的持续电流,峰值电流能力可达 —— ;同时它具有较低的输出饱和压降:内置的钳位二极管能释放感性负载的反向冲击电流, 使它在驱动继电器,直流电机,步进电机或开关功率管的使用上安全可靠。 LG9110 被广泛应用于玩具汽车电机驱动,步进电机驱动和开关功率管等电路上。 图 13 LG9110引脚图 12 引脚功能 引脚 符号 功能 ① OA A路输出管脚 ② ,③ VCC 电源电压 ④ OB B路输出管脚 ⑤ ,⑧ GND 地线 ⑥ IA A路输入管脚 ⑦ IB A路输入管脚 表 2 二 、 芯片 LM7805 简介 本设计电路中采用稳压电路是三端固定集成稳压器件。 LM7805 为稳压器件,输出的电压 +5V,输出的又电压经过滤波电路滤波后提供给各部分电路。 LM7805是常用的三端稳压器,一般使用的是 TO220 封装 .应用范围广,内含过流和过载保护电路。 带散热片时能持续提供 1A 的电流,如果使用外围器件,它还能提供不通的电压和电流。 如下图所示 图 14 主要特点 : 输出电流可达 1A。 输出电压有: 5V。 过热保护。 短路保护。 输出晶体管 SOA 保护 . 三、 AT89C51 简介 主要特性 : 与 MCS51 兼容 4K 字节可编程闪烁存储器 全静态工作: 0Hz24Hz 32 可编程 I/O 线 两个 16 位定时器 /计数器 5 个中断源 可编程串行通道 片内振荡器和时钟电路 管脚排列图和部分管脚的功能说明请见(附录三) 13 第五章 软件设计 程序主流程图 系统接上电源后进入待机状态 ,开始进入遥控车控制程序,进行程序的初始化,等待 接收按键输入。 若有输入, 通过调用红外遥控解码子程序,对接收 到的编码进行解码,获取键号。 最后与设定的功能键号比较,得出是遥控汽车的哪一种运行状态,进而控制遥控汽车。 开 始遥 控 车 控 制 程 序中 断 服 务 子 程 序控 制 遥 控 汽 车 运 行结 束调 用 解 码 子 程 序 图 15 主 程序流程图 遥控中断服务子程序流程图 单片机通过中断方式读取遥控接收器输出编码,执行解码程序获取遥控发射器键号,根据按键功能定义,控制小车运行状态。 中断服务子程序流程如下图所示:流程图说明如下,进入中断服务子程序,保护现场,之后调用解码子程序,取按键与设定的功能键号比较。 假如该按键为前进键,比较后,如果相符,则小车前进,恢 复现场;如果不相符,则进一步判断。 假设该按键为停止键,比较后。 如果相符,则控制小车停止,恢复现场;如果不相符,则进一步判断。 假设该按键为右转键,比较后,如果相符,则控制小车右转,恢复现场;如果不相符,则进一步判断。 假设该按键为左转键,比较后,如果相符,则控制小车左转,恢复现场;如果不相符,按键失效,恢复现场。 14 中 断保 护 现 场调 用 解 码 子程 序前 进 键。 停 止 键。 右 转 键。 左 转 键。 恢 复 现 场R E T I控 制 停 止 运行 控 制 停 止 运行控 制 右 转 运行控 制 左 转 运行NNNNYYYY 图 16 遥控中断服务程序流程图 程序功能简述。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。