找回密码
 立即注册
查看: 5186|回复: 56

[参考教程] 在树莓派上通过WINDOWS10 IOT 6步教你完成传感器小车(附源代码)

[复制链接]
发表于 2016-8-11 11:24:57 | 显示全部楼层 |阅读模式
converted1.jpg
上图为我们今天要完成的目标,看起来很复杂吗?下面我们一起来抽丝剥茧,一步步来完成吧!

一、需要准备哪些物品呢?
树莓派2代B型、杜邦线、机器人底盘套件、面包板、L298N电机控制器、HC-SR04超声波测距传感器、 1 kΩ,2.2kΩ电阻各一个、LM2577 DC-DC可调升压转换器、3节5号电池支架、万用表、1#飞利浦螺丝刀、小针鼻钳。
二、你需要提前知道什么
这是一个初学者的项目,不需要任何的软件或硬件技能。但是如果你具备Arduino或相关单片机开发的知识基础,这个项目可以在1.5到2小时内完成,。如果这是你的第一个项目,我建议你花点时间看一些入门     Arduino和树莓派的学习视频,然后再开始动手做。
准备工作:
在树莓派2代上安装好Window 10 IoT Core系统。
在PC上安装好Windows 10 系统以及VisualStudio 2015。
开发一个简单的Windows程序来确定准备工作无误。
注意:需要2 - 3小时完成准备工作,但是多数时间是由安装程序自动完成的。
准备物品:
1)       树莓派2代及其标准配件:5V 2A电源,8GBclass10 SD卡以及网线
2)       杜邦线
3)       面包板
4)       L298N电动机控制器
5)       HC-SR04超声波距离传感器
6)       1 kΩ和2.2 kΩ电阻
7)       LM2577直流-直流可调加强电源转换器模块
8)       3节电池座
可选:可装4节电池并带有开关的电池座可选:双面胶带、尼龙搭扣或橡皮筋
工具:
1)万用表
2) 1#飞利浦螺丝刀
3)小针鼻钳
可选:剥皮钳、烙铁、电线包布
树莓派引脚参考图:
RP2_Pinout.png
(图1:树莓派引脚参考图)
三、操作步骤

步骤1:装配机器人底盘
所需时间:30分钟
工具:1#飞利浦螺丝刀;烙铁或电工胶带;可选的剥线器
部件:机器人底盘套件,带开关的4节电池座(可选)


提示:我会将发动机的电线整理到机箱周围,来保证它们不会被车轮缠绕。

        对于电池底座,我比较偏向于比较简洁的电源开关。因为我将树莓派直接安装到了电池底座上,所以通过移动电池来关闭电源是比较困难的。电池机箱的安装有几种方法。如果机器人机箱与电池机箱有对应孔的话,你可以用对应大小的螺丝将两个安装到一起。除此之外,可以使用尼龙搭扣、双面胶或者橡皮筋来进行安装。我之前用过橡皮筋来安装,效果很好。在我安装的过程中,会尽量保持重心接近底部的中点。


步骤2:为L298N马达驱动器装电线

时间:20分钟
工具:1#飞利浦螺丝刀,小针鼻钳
组件:L298N马达驱动器,杜邦线


         L298N电机驱动板可以通过控制引脚来实现正转和反转。首先,要将上一个步骤中连接到电动机上的两根线连接到车轮上,也就是说,将红黑线的一端连接到车轮A上,将另一根红黑线的一端连接到车轮B上。正负极并不是特别重要,如果你的车轮正负极连接错误,你可以通过编写代码命令去转换车轮的正负极。接下来,用线将电池小盒连接到供能终端上,红线接到12V输入端上,黑线接地,这4节5V电池是车轮的供能端。同时,还要确保L298N的地与树莓派的地相连。
L298N.jpg
(图2:L298N引脚图)
         L298N 可以支持车轮和微型处理器或计算机的单电源供能。电源可全部用于车轮供能。同时,电源的电压可以通过转换并控制到5V,用于微型处理器或计算机,同时也可通过5V终端应用在动力滑车上。然而,在过去的一些使用电动机的案例中,我发现利用L298N的5V电源供能具有很大的可变性,当一个车轮停止转动,就会有一个5V的输出电压下降(这个电压大到足以重置树莓派)。此外,在车轮不再转动的情况下,通过测量发现,5V的电压也仅剩下4.35V的输出电压。然而在实际应用中,这些电量仍然可以驱动树莓派启动(即使这个电量低于树莓派说明书指出的最低电压),然而,我并不想这方面标新立异,所以,我决定采用双电源供能,也就是说,一个电源用于车轮供电,一个电源用于树莓派供电。在这步之前,我已经件4节5号电池连接到了车轮的12V电压终端上,在下一步,我们将把3节5号电池连接到树莓派的电源上。

         然而在我们继续组装L298N电动机之前,我们将继续把树莓派与L298N的电源连接好。首先,将L298N上写有“5V使能”标签的杜邦线移除,这步保证了车轮控制器是树莓派通过5V终端供电,而不是连接到12V的电压终端上。
L298N_5venable_jumper.jpg
(图3:L298N Enable  )
要点:要确定你将L298N上的5V跳线移除,否则的话,L298N会在5V电压终端输出一个可变的4到5V电压,这有可能导致树莓派使用过程中的一些问题。

      然而,树莓派只有两个5V引脚,但在这个项目中,我需要3个,所以,我决定利用面包板开发一个电源轨,也就是使用面包板上连通的引脚来分担树莓派上的一部分电量。
电源轨的开发方法:首先,用一条红黑线将树莓派上2号(5V引脚)引脚连接上面包板上任意没有使用的一行上(我习惯性使用第一行或者最后一行),然后将树莓派上的一根线连接到面包板上的同一行上,这样就可以将树莓派上5V电量分配给面包板了。使用一条杜邦线就可以将L298N上的5V中转连接到电源轨上。

      最后一步是要求将树莓派上的4个GPIO引脚连接到4个L298N车轮的输入引脚。即控制车轮A方向的IN1和IN2的引脚和控制车轮B的IN3和IN4引脚。将L298N上的杜邦线连接到两个车轮的使能的引脚上—ENA和ENB上。我的连接方式如下:
N1与GPIO27(物理13号)相连
IN2与GPIO22(物理15号)相连
IN3与GPIO5(物理29号)相连
IN4与GPIO6(物理31号)相连

rover_step2.jpg
(图4:步骤2连线图)
游客,如果您要查看本帖隐藏内容请回复
步骤5:安装机器人底盘
时间:20分钟
工具:无
组件:橡皮筋(选用),双面胶(选用),Velcro(选用)

         将4枚电池置于底盘中间,树莓派在电池外壳上面,L298N在树莓派的上方,安装全程使用橡皮筋相连。电源转换器装在底盘上,4枚电池旁边,并且用橡皮筋固定在电池座、树莓派以及车轮控制器上。

converted2.jpg
(图9:机器人)

步骤6:下载并且开发代码
时间:20分钟
工具:VisualStudio 2015 Community Edition
组件:上一步组装好的机器

      提示:如果车轮在向错误方向,可以编写代码改变引脚设置或者在接线板上修改车轮上连线。
      测量远距离子程序用以控制距离传感器获取数据,过程如下:
      1)       确定触发器处于关闭状态,并且花些时间使其启动。
      2)       快速打开触发器。
      3)       等待echo被打开
      4)       4当.echo被打开,开始计时。
      5)       等待echo关闭。
      6)       当echo关闭,停止计时。
      7)       根据时间,计算障碍物的距离。
      准备就绪后,你就可以启动程序,你也不需要手动启动程序,在你也通过设置APP来启动开始程序。

源码下载:
游客,如果您要查看本帖隐藏内容请回复

更多图片 小图 大图
组图打开中,请稍候......
回复

使用道具 举报

发表于 2016-9-3 01:18:07 | 显示全部楼层
wo lai 看看再说
回复 支持 反对

使用道具 举报

发表于 2016-9-17 08:37:38 | 显示全部楼层
不错,很给力
回复 支持 反对

使用道具 举报

发表于 2016-9-26 19:57:34 | 显示全部楼层
谢谢楼主的无私奉献!!!!!!
回复 支持 反对

使用道具 举报

发表于 2016-9-30 15:55:25 | 显示全部楼层
windows10 iot
回复 支持 反对

使用道具 举报

发表于 2016-10-31 20:56:05 | 显示全部楼层
66666666666666
回复 支持 反对

使用道具 举报

发表于 2016-10-31 22:29:58 | 显示全部楼层
666666666666666666666666
回复 支持 反对

使用道具 举报

发表于 2016-10-31 22:31:30 | 显示全部楼层
666666666666666666666666666666
回复 支持 反对

使用道具 举报

发表于 2016-11-9 22:01:25 | 显示全部楼层
学习了,感谢分享
回复 支持 反对

使用道具 举报

发表于 2016-11-18 12:42:06 | 显示全部楼层
很好,学习一下   
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则