毕设帮助、开题指导、技术解答(有偿)见文未
目录
需要完整的资料可以点击下面的名片加下我,找我要资源压缩包的百度网盘下载地址及提取码。
方案选择
单片机的选择
方案一:AT89C51是美国ATMEL公司生产的低电压,高性能CMOS型8位单片机,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大。其片内的4K程序存储器是FLASH工艺的,这种单片机对开发设备的要求很低,开发时间也大大缩短。写入单片机内的程序还可以进行加密,这又很好地保护我们的劳动成果。再者,AT89C51目前的售价比8031还低,市场供应也很充足。AT89C51可构成真正的单片机最小应用系统,缩小系统体积,增加系统的可靠性,降低系统的成本。只要程序长度小于4K,四个I/O口全部提供给用户。可用5V电压编程,而且擦写时间仅需lOms。AT89C51芯片提供三级程序存储器加密,提供了方便灵活而可靠的硬加密手段,能完全保证程序或系统不被仿制。PO口是三态双向口,通称数据总线口,因为只有该口能直接用于对外部存储器的读/写操作。
方案二:STM32系列单片机控制,该型号单片机为LQFP44封装,内部资源足够用于本次设计。STM32F103系列芯片最高工作频率可达72MHZ,在存储器的01等等待周期仿真时可达到1.25Mip/MHZ(Dhrystone2.1)。内部128k字节的闪存程序存储器,也就是说代码量可以写到128k字节,本次设计足够,内部高达20K字节的SRAM。
比较这两种方案,由于在学校期间学过数字电路、单片机原理、C语言程序设计,综合考虑单片机的各部分资源和作为学生能够获得的资源,经过对比此次设计要求,我选择用STM32系列芯片完成。而且学校也提供了相应的硬件操作平台,实际操作起来比较方便,故STM32为更合理的选择。
一、设计功能
1、本次设计采用STM32F103C8T6单片机处理数据。
2、本次设计通过两路红外避障传感器和超声波传感器实现了倒车入库和侧方位停车入库两大功能。
3、可以通过按键切换倒车入库和侧方位停车入库两种入库模式,通过按键开始启动小车。
4、还有两路指示灯,表示当前的是哪种入库模式。
5、本次设计通过两节锂电池供电。
6、红外避障传感器(安装在车体左右两侧)来实现小车的自动精准倒车入库。首先入库小车行驶到车库前方的适当位置(通过多个传感器实现定位)。然后小车执行,“倒车”入库功能动作程序处理,动作可以分解为:通过左右传感器检测车身与车库左右的距离,根据距离实时调整小车倒车的姿态,确保小车向后直行倒车;当车尾到达车库标准距离位置时候,表示停车完成。
7、首先入库小车形式到车库侧方位适当位置(通过三个传感器的实时测距进行定位)。然后小车执行入库的功能动作,注意在入库的过程中,小车通过超声波模块和红外传感器模块实时监测前后左右的距离,知道小车完整的进入侧方位车位后停止。
二、实物图
三、原理图
在本设计做的过程中,硬件和软件方面都遇到了许多问题,但是相比于软件,在硬件方面还是比较快解决的方面,因为硬件是比较容易检查出来错误的,软件比较晦涩难懂,还是有一定难度。
在硬件调试问题上,首先焊接好了元器件实物板后,先用万用表测量这个工业板子的电源方面,电源方面是最重要的问题,应该是特别需要检查的地方,以防止电源的短路和正负极的错误。然后在仔细检查电路的连接是否有问题,或者有没有虚焊或者没有焊接到的地方,然后核对一下元器件的安装是否有问题,安装上去是否符合规定,由于已经是大学四年都是做过了很多实训过来了,对于这些还是游刃有余的,但是在上机调试后还是发现了很多的问题。
四、程序源码
Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(μVision)将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。如果你使用C语言编程,那么Keil几乎就是你的不二之选,即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。