基于单片机的红外避障小车毕业设计论文(编辑修改稿)内容摘要:

不同;白色物体最远,黑色物体最近)。 检测障碍物的距离可以根据要求通过尾部的电位器旋钮进行调节。 该传感器具有探测距离远、受可见光干扰小、价格便宜、易于装配、使用方便等特点,可以广泛应用于机器人避障、流水线计件等众多场合。 该红外传感器是个 NPN 型光电开关,其输出状态是 0,1,即数字电路中的高电平和低电平。 在检测到目标是低电平输出,正常 状态是高电平输出,输出时外加一个上拉电阻即可连接到 IO口上。 其上拉电阻阻值一般在 1K 左右。 其实物图和原理图如下图 红外传感器 E18D80NKN实物图 红外传感器 E18D80NKN内部原理图 7 电器特性: 红色: VCC;黑色: GND;黄色: OUT。 U:5VDC I:100mA Sn:380CM 尺寸 : 直径 :17MM 传感器长度 :45MM 引线长度 :45CM 机械特性: 颜色:橙黄色 直径 :18MM 长度 :45MM 引线长度 :18CM 注意事项: 在接线的时候,请避免出现电源和地接错的现象,该操作有可能造成传感器永久性损坏; 信号输出端请加上拉电阻; 为保护动作的可靠和寿命长,请避免有关规定以外的温度外界 (户外 )条件下,接近传感器虽为耐水结 构,若装上罩使用,勿使水和水容性切削油等淋到,则可更好地提高可靠性及寿命。 还请避免在有化学药剂,特别是在强碱、酸、硝酸、铭酸、热浓硫酸等气候中使用。 我将它与单片机的 P3^3口连接。 正常小车行走时传感器给单片机输送的是高电平当遇到障碍物时,传感器则给单片机一个低电平,传感器给其原理图如下: 8 图 22 避障传感电路 STC89C52RC 单片机介绍 STC89C52RC 单片机是宏晶科技推出的新一代高速 /低功耗 /超强抗干扰的单片机,指令代码完全兼容传统 8051 单片机, 12 时钟 /机器周期和 6 时钟 /机器周期可以任意选择。 主要特性如下: 1. 增强型 8051 单片机, 6 时钟 /机器周期和 12 时钟 /机器周期可以任意选择,指令代码完全兼容传统 8051. 2. 工作电压: ~ ( 5V 单片机) /~ ( 3V单片机) 3. 工作频率范围: 0~ 40MHz,相当于普通 8051 的 0~ 80MHz,实际工作频率可达 48MHz 4. 用户应用程序空间为 8K 字节 5. 片上集成 512 字节 RAM 6. 通用 I/O 口( 32个),复位后为: P1/P2/P3/P4 是准双向口 /弱上拉,P0 口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O 口用时,需加上拉电阻。 7. ISP(在系统可编程) /IAP(在应用可编程) ,无需专用编程器,无需专用仿真器,可通过串口( RxD/,TxD/)直接下载用户程序,数秒即可完成一片 8. 具有 EEPROM 功能 9. 具有看门狗功能 10. 共 3个 16位定时器 /计数器。 即定时器 T0、 T T2 9 11. 外部中断 4路,下降沿中断或低电平触发电路, Power Down 模式可由外部中断低电平触发中断方式唤醒 12. 通用异步串行口( UART),还可用定时器软件实现多个 UART 13. 工作温度范围: 40~ +85℃(工业级) /0~ 75℃(商业级) 14. PDIP 封装 STC89C52RC 单片机的工作模式  掉电模式:典型功耗 A,可由外部中断唤醒,中断返回后,继续执行原程序  空闲模式:典型功耗 2mA  正常工作模式:典型功耗 4Ma~ 7mA  掉电模式可由外部中断唤醒,适用于水表、气表等电池供电系统及便携设备 10 STC89C52RC 引脚图 STC89C52RC 引脚功能说明 VCC( 40引脚):电源电压 VSS( 20引脚):接地 P0 端口( ~ , 39~ 32 引脚): P0口是一个漏极开路的 8 位双向 I/O口。 作为输出端口,每个引脚能驱动 8个 TTL 负载,对端口 P0写入“ 1”时,可以作为高阻抗输入。 在访问外部程序和数据存储 器时, P0 口也可以提供低 8位地址和 8位数据的复用总线。 此时, P0 口内部上拉电阻有效。 在 Flash ROM 编程时,P0 端口接收指令字节;而在校验程序时,则输出指令字节。 验证时,要求外接上拉电阻。 P1 端口( ~ , 1~ 8引脚): P1 口是一个带内部上拉电阻的 8 位双向I/O 口。 P1 的输出缓冲器可驱动(吸收或者输出电流方式) 4个 TTL输入。 对端口写入 1时,通过内部的上拉电阻把端口拉到高电位,这是可用作输入口。 P1 口作输入口使用时,因为有内部上拉电阻,那些被外部拉低的引脚会输出一个电流( 错误 !未找到引用源。 )。 P2 端口( ~ , 21~ 28 引脚): P2口是一个带内部上拉电阻的 8位双向 I/O 端口。 P2 的输出缓冲器可以驱动(吸收或输出电流方式) 4个 TTL输入。 对端口写入 1 时,通过内部的上拉电阻把端口拉到高电平,这时可用作输入口。 P2作为输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流( 错误 !未找到引用源。 )。 P3 端口( ~ , 10~ 17 引脚): P3是一个带内部上拉电阻的 8 位双向I/O 端口。 P3的输出缓冲器可驱动(吸收或输出电流方式) 4个 TTL输入。 对端口写入 1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。 P3 做输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输入一个电流( 错误 !未找到引用源。 )。 错误 !未找到引用源。 ( 29 引脚):外部程序存储器选通信号( 错误 !未找到引用源。 )是外部程序存储器选通信号。 当 AT89C51RC 从外部程序存储器执行外 11 部代码时, 错误 !未找到引用源。 在每个机器周期被激活两次,而访问外部数据存储器时, 错误 !未找到引用源。 将不被激活。 错误 !未找到引用源。 /VPP( 31 引 脚):访问外部程序存储器控制信号。 为使能从 0000H 到 FFFFH 的外部程序存储器读取指令, 错误 !未找到引用源。 必须接GND。 注意加密方式 1时, 错误 !未找到引用源。 将内部锁定位 RESET。 为了执行内部程序指令, 错误 !未找到引用源。 应该接 VCC。 在 Flash 编程期间, 错误 !未找到引用源。 也接收 12 伏 VPP 电压。 XTAL1( 19 引脚):振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2( 18 引脚):振荡器反相放大器的输入端。 特殊功能寄存器 12 第三章 系统硬 件设计 图 31 系统设计框图 系统设计框图如上所述,整个系统由单片机最小系统,红外检测模块,声音检测模块,电机驱动模块组成。 小车起始时是处于静止状态,当检测到声音信号时通过声音检测模块传到单片机 P3~2 端,单片机接受到信号后通过程序把 P3~1,P1~1 端状态取反,使小车前进。 当再次接受到声音信号时再次取反,小车停止前进。 当红外避障模块检测到障碍物时,将一个 P3~3 的高电平转成低电平,单片机额接受到信号后,通过程序将 P1~5, P3~7 端由高电平转成低电平,从而使小车左转。 小车运行状态相关程序如下: /////////停止 /////////////// void Stop(void) { L_L=1。 L_R=1。 R_L=1。 13 R_R=1。 } /////////前进 ////////////// void Forword(void) { L_L=1。 R_L=1。 _nop_()。 _nop_()。 L_R=0。 R_R=0。 } ////////左转 ///////////// void Turn_Left(void) { L_L=0。 R_R=0。 _nop_()。 _nop_()。 L_R=1。 R_L=1。 delay_ms(2400)。 } 注: L_L =P1^5。 //左轮驱动口 L_R =P1^1。 //左轮驱动口 R_L =P3^6。 //右轮驱动口 R_R =P3^7。 //右轮驱动口 14 智能小车采用 STC89C52RC 单片机进行智能控制, 开始由手动启动小车 电源 , 并复位。 当有 声音 信号时,根据信号进入相 应的行驶状态,在运动过程中由红外光电传感器检测, 遇到障碍时 通过单片机控制小车进行 转向 ,系统功能原理图如图所示。 图 32 系统电路设计 考虑到小车是个不断运动的实验设备,采用干电池供电。 总的供电系统是有 的大功率电池储能,经过电压转换单元。 由一个 转为 5V 对控制单元供电。 电机驱动和控制电路:通过 51单片机,控制端口对直流电机的转速和转向来对电机进行控制。 15 图 33 电源电路图 声音控制电路是在原基础上加的一项功能,通过电路去除杂音,对响度较大的声音进行识别(比如拍手声)。 正常说话声则被电路滤除,不会产生信息出入。 声音信号通过单片机,经程序使运行状态取反,完成小车的运行状态切换。 图 34 声音控制电路图 声音检测模块程序如下: void Extern_Int0(void) interrupt 0 using 0 { if(Int0_flag==0) { voice_flag=!vo。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。