树莓派控制无线小车大报告.docx

上传人:叶*** 文档编号:35154934 上传时间:2022-08-20 格式:DOCX 页数:11 大小:33.29KB
返回 下载 相关 举报
树莓派控制无线小车大报告.docx_第1页
第1页 / 共11页
树莓派控制无线小车大报告.docx_第2页
第2页 / 共11页
点击查看更多>>
资源描述

《树莓派控制无线小车大报告.docx》由会员分享,可在线阅读,更多相关《树莓派控制无线小车大报告.docx(11页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、计算机学院嵌入式方向综合工程设计技术报告题 目: 树莓派控制无线小车 姓 名: 学号 姓 名: 学号 姓 名: 学号 指导老师: 起止时间: 2014 年 9 月 至 2015 年 1 月 西安电子科技大学计算机工程系摘要: 树莓派由注册于英国的慈善组织“Raspberry Pi 基金会”开发, 2012年3月,英国剑桥大学埃本阿普顿正式发售世界上最小的台式机,又称卡片式电脑,外形只有信用卡大小,却具有电脑的所有基本功能,这就是树莓派电脑板,中文译名树莓派。树莓派用途广泛,专为业余兴趣者和想学习编程的年轻人们设计的,提供一个具有基本功能的,廉价的硬件平台。它是一款基于ARM的微型电脑主板,以S

2、D卡为内存硬盘,卡片主板周围有四个USB接口和一个网口,可连接键盘、鼠标和网线,同时拥有视频模拟信号的电视输出接口和HDMI高清视频输出接口。其尺寸只有信用卡大小,运行速度比台式机稍慢,但已具备了电脑的所有基本功能,只需接通电视机和键盘,就能执行如电子表格,文字处理,玩游戏,播放高清视频等诸多功能。树莓派控制无线小车,利用树莓派通过L298N控制四个电机。左边两个并联,右边两个并联,通过差速小车转向。关键词:树莓派、电机、L298N、无线小车目 录第一章 绪论31.设计要求32.设计内容3第二章 系统需求分析31.设计思路32.总体方案3第三章 系统软硬件设计与实现41.L298N芯片相关42

3、.树莓派相关53.无线网卡相关94.软件相关10第四章 系统调试与测试13第五章 总结14第一章 绪论1. 设计要求(1)设计一个无线遥控的小车,小车通过树莓派无线连接至电脑通过电脑控制小车的运动。(2)小车可以前进、后退、左转、右转、左转圈、右转圈。2. 设计内容(1)基于L298N的电机驱动模块设计与实现(2)树莓派与电脑连接的设计与实现 (3)树莓派控制小车的设计与实现第二章 系统需求分析1. 设计思路(1)分析无线遥控小车基本控制技术以及各种通行方案,并以此为基处提出自己的无线控制小车的初步方案。 (2)确定无线控制小车的总体设计,包括基于L298N电机驱动模块的方案设计以及系统应拥有

4、的各项功能。(3)进行树莓派、电机、L298N、小车框架的组装和对各器件的选择及连接,大体分配实现各个器件及模块的基本功能和要求。(4)进行软件系统的设计,对L298N内部结构和工作情况做了充足的研究,了解树莓派及其相关,完成控制软件的编写。2. 总体方案树莓派无限控制小车大致上有五部分组成。包括小车电机部分、L298N部分、树莓派部分、无线网卡部分以及移动电源部分。其中小车部分由四个电机以及小车框架组成,小车的四个轮子每个一个电机。L298N通过与四个电机的连接来控制四个电机的转动,每边的电机并联。移动电源主要给树莓派以及L298N控制电机模块供电。无线网卡主要用来连接电脑与树莓派,通过电脑

5、控制树莓派下达命令,控制电机的转动。系统方案框图如下图所示。LN1 LN2L298NLN3 LN4左电机1左电机2USB1移动电源USB2右电机2右电机1树莓派无线网卡 系统方案框图第三章 系统软硬件设计与实现1. L298N芯片相关L298N是SGS公司的产品,内部包含4通道逻辑驱动电路。是一种二相和四相电机的专用驱动器,即内含二个H桥的高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,可驱动46V、2A以下的电机。其引脚排列如下图图所示,1脚和15脚可单独引出连接电流采样电阻器,形成电流传感信(1)模块接口+5V:芯片电压5V。 VCC:电机电压,最大可接50V。GND:共地接法。A

6、-D-:输出端,接电机。AD+ :为步进电机公共端,模块上接了VCC。EN1、EN2:高电平有效,EN1、EN2分别为 IN1和IN2、IN3和IN4的使能端。IN1 IN4:输入端,输入端电平和输出端电平是对应的。(2)L298N步进电机驱动板有四个IO输入口,简单的说就是1.2两个IO口通过高低电平控制一个电机的正反转,所以,我们要做的就是通过树莓派的IO口输出高低电平就可以控制电机的转向。2. 树莓派相关(1)树莓派具体参数网卡BroadcomBCM2835(CPU,GPU,DSP和SDRAM,USB)CPUARM1176JZF-S核心(ARM11系列)700MHzGPUBroadcom

7、 VideoCrore IV,OpenGL ES 2.0,1080p 30 h.264/MPEG-4 AVC高清解码器内存512MByteUSB接口4(支持USB hub扩展)影像输出Composite RCA(PAL & NTSC),HDMI(rev 1.3 & 1.4),raw LCD Panels via DSI 14 HDMI resolution from 640x350 to 1920x1200 plus various PAL andNTSC standards音源输出3.5mm插孔,HDMI板载存储SD/MMC/SDIO卡插槽网络接口10/100以太网接口外设8xGPIO、UA

8、RT、I2C、带两个选择的SPI总线,+3.3V,+5V,ground(负极)额定功率700mA(3.5W)电源输入5V / 通过MicroUSB或GPIO头总体尺寸85.60 x 53.98 mm(3.370 x 2.125 in)操作系统Debian GNU/linux,Fedora,Arch Linux ARM,RISC OS, XBMC(2)树莓派安装系统 准备工作:1)最好最准备一张4G以上的SD卡,最好是高速卡,推荐Class4以上的卡,因为卡得速度直接影响树莓派的运行速度。2)下载树莓派debian系统镜像文件,3)在windows下安装镜像的工具win32diskimager安

9、装实战:1)解压下载的debian系统压缩文件,得到img镜像文件2)将SD卡使用读卡器后,连上电脑3)解压并运行win32diskimager工具4)在软件中选择debain的img文件,“Device”下选择SD的盘符,然后选择“Write”然后就开始安装系统了,根据SD速度,安装过程有快有慢5)安装结束后会弹出完成对话框,说明安装就完成了,如果不成功,关闭防火墙一类的软件,重新插入SD进行安装。其中 Ext3区属于linux的文件系统,就和Windows的文件系统NTFS、FAT32、FAT16一样,Swap区为linux的虚拟内存区,主要在物理内存不够用的时候,做缓存用。(3)树莓派远

10、程访问因为没有独立的显示器,又想用无线网卡来实现远程访问。这就牵扯到了在没有显示器的情况下如何配置无线网卡的账号和密码。1)用网线将树莓派和路由器链接起来。2)在电脑上(非树莓派)登录路由器,输入路由器登录账号和密码。3)进入路由器后,找到DHCP这一项目,再找到客户端列表,可以看到raspberry pi 后面有192.168.xxx.xxx之类的IP。4)下载putty工具在图中填有IP地址的位置输入得到的树莓派IP地址,点击下面的OPEN从而进入树莓派登录界面。输入账号密码之后在命令行模式下,输入如下命令:cd /etc/wpa_supplicant然后,再输入命令:sudo nano

11、wpa_supplicant.confnetwork= ssid=无线热点账号 psk=无线热点密码 proto=RSN key_mgmt=WPA-PSK pairwise=CCMP auth_alg=OPEN完成后拔掉网线,重启树莓派。然后登录路由器查看树莓的IP地址。(4)树莓派GPIO利用杜邦线将树莓派和L298N按照下列方式连接树莓派GPIOL298N驱动板Pin(GPIO 27) IN1 Pin(GPIO 18) IN2 Pin(GPIO 22) IN3 Pin(GPIO 23) IN4 Pin(+5V) +5V Pin(GND) GND3.无线网卡相关无线网卡用来连接电脑和树莓派,

12、用电脑来控制树莓派。无线网卡规格:遵循标准IEEE 802.11B/G/N传输速率最大150Mbps发射功率14Dbi接口USB2.0频率范围2.4GHz2.4835GHz安全特性WPE.TKIP.AES.WPA and WPA2工作温度0-50存储温度-10-70工作环境日常,非极端4.软件相关程序流程图如下图所示。 开始 初始化 读取数据Key=?Key=qKey=eKey=wKey=aKey=dKey=xKey=s向左转圈向右转圈前进左拐右拐后退停止程序所用语言为python,选用python GPIO,因为该库是树莓派官方资料中推荐的且容易上手。python GPIO是一个小型的pyt

13、hon库,可以帮助用户完成raspberry相关IO口操作。但是python GPIO库还没有支持SPI、I2C或者1-wire等总线接口。除了python GPIO之外,还有众多的python扩展库,毫无疑问的说python非常适合树莓派,树莓派也非常适合python。源程序如下:import RPi.GPIO as GPIOimport cursesimport timefrom curses import wrapperGPIO.setmode(GPIO.BCM)GPIO.setup(27, GPIO.OUT)GPIO.setup(18, GPIO.OUT)GPIO.setup(22,

14、GPIO.OUT)GPIO.setup(23, GPIO.OUT)stdscr = curses.initscr()stdscr.clear()while True: ch = stdscr.getkey()# Quit if ch = s: curses.endwin() GPIO.output(27, False) GPIO.output(18, False) GPIO.output(22, False) GPIO.output(23, False) break# Forward if ch = w: GPIO.output(27, False) GPIO.output(18, True)

15、 GPIO.output(22, False) GPIO.output(23, True)# Backward if ch = x: GPIO.output(27, True) GPIO.output(18, False) GPIO.output(22, True) GPIO.output(23, False)# Turn Right if ch = a: GPIO.output(27, False) GPIO.output(18, True) GPIO.output(22, False) GPIO.output(23, False)# Turn Left if ch = d: GPIO.ou

16、tput(27, False) GPIO.output(18, False) GPIO.output(22, False) GPIO.output(23, True)# Pivot_left if ch = q: GPIO.output(27, True) GPIO.output(18, False) GPIO.output(22, False) GPIO.output(23, True)# Pivot_right if ch = e: GPIO.output(27, False) GPIO.output(18, True) GPIO.output(22, True) GPIO.output(

17、23, False)第四章 系统调试与测试 小车同一侧的马达并联连接至L298N,正在连接的过程之中要按照,在刚开始的时候,遇到了同一侧的轮子转向不一致的问题,经过仔细观察发现,两个同一侧的电机连线接错,通过测试更改连线,错误已经修正。开始时,小车的运动和预期的方向不太一样,通过对代码程序的调整,已经解决了此问题。第五章 总结 经过半学期的努力学习,终于完成了这次的嵌入式课程设计。虽说忙碌了点,但我们都觉得这样的生活充实且有成就感,当然,大家也都获益匪浅。综合课程设计把以前学习到的知识进行了巩固和进一步的提高,对已有知识有了更进一步的理解和认识。在此,由于能力有限,在课程设计中碰到了很多的问题

18、,但通过查阅相关书籍、资料以及和周围同学交流后都得以一一解决。至于软件设计与调试,它主要考验思维逻辑能力及对指令的熟悉程度。可以说再整个软件设计过程中,当然,通过几次反复调试过程,使得对指令有了更深刻的理解。在整个课程设计过程还掌握了一下几点:(1)掌握了电子系统设计的流程,熟悉了各种硬件电路以及软件编程方法。(2)理解了树莓派及其相关特性。(3)熟练使用了各种计算机辅助设计工具完成设计,掌握了这些工具的使用。通过本次的课程设计,充分意识到自己所学的东西还是非常有限的,不过通过课程设计,还是学到了一些书本上没有学到的东西,为自己以后的学习起了很大的帮助。就我们而言,很深刻地体会到一点,那就是我

19、们在设计过程中一定要有一个整体的清晰的思路,知道自己的设计的对象的基本功能和核心器件的适用及其作用,只要把握住这些主要方面,一些小问题都将围绕着这些主要问题而逐步得到解决。同时我们也懂得,在整个设计过程中,生活中也一样,一定要意志坚定,克服自己的畏难情绪,这样才能将事情做好,才能干出一番成就。通过这些项目练习,自学能力,解决实际问题的能力得到提高,可以说是对综合素质全面提升,这也是我们上大学应真正学到的。 这次课程设计能够顺利完成,得益于很多人的指导。感谢刘老师在课程设计上给予我们的指导、支持和帮助,这是我们能顺利完成这次报告的主要原因,让我们能把系统做得更加完善。在此期间,我们不仅学到了许多新的知识,而且也开阔了视野,提高了设计能力。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高中资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com