- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
系统设计报告-上海交通大学电工电子试验教学中心
姓名 班级 学号 具体负责的工作 联系方式 鞠峰 F0603031 5060309835 设计方案,图像处理,调试小车,串口通信,单片机程序设计 jf1987930@163.com 孙名 F0603031 5060309821 小车的硬件调试,小车外形设计 sunming@ 王珺翔 F0603031 5060309827 迷宫算法设计与调试,图像处理 wangurey@126.com 王华强 F0603031 5060309826 查找资料,辅助设计迷宫算法,小车调试 bangbang@
摘 要:
本项目采用ATMEL公司的AT89S52芯片为核心设计,实现小车在计算机控制下走出迷宫的功能。有一台小车和一个pc端,利用计算机处理采集到的图片判断小车及迷宫的相对位置,迷宫信息,在计算机端计算并选择路线,通过无线指令控制小车动作,使之在最短的时间内离开迷宫。
关键词:
迷宫算法、无线通信、计算机
目 录
1. 整体介绍 1
2. 硬件部分 3
2.1 硬件元器件 3
2.2 调试过程 7
3. 软件部分 8
3.1 图像处理 8
3.2 迷宫算法 9
3.3 小车实时调整 11
3.4 串口通讯 12
4. 项目心得 14
4.1 系统的不足或可改进部分 14
4.2 自我评价、感受及收获 14
5. 致谢 16
整体介绍
由摄像头(USB接口)实时捕捉迷宫内小车的位置情况,通过USB线缆传送至电脑里编写的上位机软件,软件通过图像识别找出当前小车的位置信息及迷宫的信息,经过计算,作出控制决策,生成控制信号,并经通讯模块发送至小车。
小车上的控制电路对控制信号作出相应反应,驱动电机。
硬件部分
硬件元器件
这次科创3实验,用到两块主要的芯片,一块是CMOS8位微控制器,其主要功能是:
· 兼容MCS-51指令系统
· 8k可反复擦写(1000次)ISP FLASH ROM
· 1000次擦写周期
· 32个双向I/O口
· 4.5-5.5V工作电压
· 3个16位可编程定时/计数器
· 时钟频率0-33MHz
· 全双工UART串行中断口
· 128x8bit内部RAM
· 低功耗空闲和省电模式
· 中断唤醒省电模式
· 3级加密位
· 看门狗(WDT)电路
· 软件设置空闲和省电功能
· 灵活的ISP字节和分页编程
· 双数据寄存器指针
AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。AT89S52使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,AT89S52拥有灵巧的8 位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:
8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
其PDIP图如下:
另一块芯片是L298N,用它来控制两个电机。
管脚图如下:
每个管脚正常工作时的电参数如下:
调试过程
在实验初始阶段,我们的车子一直不能启动,有时候会突然启动一下,这可能是接触的问题。AT89S52芯片基本上不太会有问题,我们换了一个新的芯片,情况没有任何好转。我们用万用表,测电路板上是否有断点,因为拿到的板子已经被别人焊得有些发黑了,有焊盘翘起的痕迹。果然有几个理应导通的点之间呈现断路情况,于是向老师要了另一块板子。但是依旧无法启动。助教老师说问题很可能处在L298N电机芯片上,因为这个芯片是焊在插槽上,在与板子连接的,插槽很容易松动,造成接触不良。我们把插槽取下,直接把芯片焊到板子上。但是车子仍然无法开动。于是按照上表,测试每个管脚的工作状态。15个管脚测试下来都正常。后来,上网差排阻9A472G,发现焊接排阻的时候,上面的白点应该对应与板上的方块焊盘,而我们板上的排阻,恰恰相反。找出这一问题,车的启动问题也就解决了。
软件部分
编程语言:c++
您可能关注的文档
- 第十届台湾生物资讯与系统生物学研讨会暨研习会企划书-ntuhgovtw.DOC
- 第十届全国工程地质大会会议日程及报告安排定稿1011wor.DOC
- 第麒卷第z期-盐城工学院学报.PDF
- 第十三课现代诗选补充资料.DOC
- 第十六讲材料的制备与成型加工FabricationandProcessingof.PPT
- 等量异号点电荷和电偶极子的电场.PPT
- 简介IPMIIntelligentPlatformManagementInterface即智能平台.DOC
- 筛片参数优化对饲料粉碎机筛分效率的影响-IngentaConnect.PDF
- 简单导联胎儿心电信号提取的程控放大器设计-太赫兹科学与电子信息.PDF
- 简单而不失营养的吃法.DOC
文档评论(0)