树莓派 物联网平台(树莓派物联网小车)
(一)——材料准备及介绍
准备如下材料:
1)树莓派
小编用的是树莓派3 model B,淘宝上购买大概300不到。
关于购买树莓派的几点注意事项:
1)购买时问清楚店家,是否配有充电器以及充电线,大部分是不配备的。
为什么要额外买电源线和充电器,是因为这样可以调节电压至5v电流至2.5a,更好的保护树莓派。
2)可以根据需要购买树莓派的保护壳,价格在十几到二三十不等,一般购买外壳都会自带散热风扇,就不需要再买散热板了。
2)小车零件
在淘宝直接搜索智能小车,购买带亚克力板、电机以及螺丝等的一套小车。
友情提醒:问卖家要连接电机的线!
3)杜邦线
杜邦线区分公母,买母对母以及母对公就行,不过如果想实现更多功能,可以将母对母、公对公和公对母都买了。
4)电池盒
购买可装四节五号电池的电池盒即可。
5)L298N电机驱动模块
这个模块是驱动小车动起来的非常重要的一个模块!
6)TF卡/SD卡
用来存储数据的卡,购买时请询问卖家是否可以用于树莓派中,内存大小大于等于16GB即可。
材料到手后先做什么?
1)关于树莓派
检查树莓派是否可以正常工作。
大部分淘宝购买的树莓派都有一个运费险,请及时检查自己的树莓派是否可以正常工作。
那么怎么检查?
需要先给树莓派安装系统,有图形界面。这里就又涉及到一个问题:很多人会在网上看到说,树莓派一定要买显示器和键盘?
其实并不是必须的,如果在百度搜索,有很多安装树莓派的教程,但是那样太过繁琐,我建议在购买树莓派时,找到可以免费帮你远程安装的店家,这样就省去了安装树莓派的繁琐工作。当然,如果你想自己探索如何安装,也是可以得。
卖家帮你安装好之后,请打开树莓派界面,看是否可以正常上网等。
2)关于小车零件
检查小车零件是否有破损的情况,小车配件是否齐全,主要包括:4个电机驱动,2块亚克力板,4个轮子,若干螺丝,电机线。(实际情况以你当时购买的清单为准)
3)卖家推荐的红外模块和超声波模块等是否需要购买?
如果你以后要实现小车的循迹功能和自动避障功能,我建议你购买;否则的话,不用购买。
对材料的简单介绍
1)树莓派
树莓派40个引脚的功能图。
2)L298N模块引脚图
为什么要了解模块的引脚?
因为每个引脚都有自己的功能。比如:
GND:接地;
5V、12V:是用来接入电源的引脚。
做好这些准备工作才能更好的保证我们的小车动起来哦~
(二)——硬件连接
1)树莓派小风扇的连接
风扇连接40个引脚中的3、5,连接好之后打开电源试一下风扇是否转动。
2)小车拼装
(1)用长螺丝组合固定小部件和电机。
(2)用铜柱固定好万向轮
(3)把电机和万向轮装在底板上
(4)将轮胎装在电机上
将四个轮子都装上,这样就完成了小车的拼装。
3)接线
注意:除电机线和电池盒线外,其他连线都使用杜邦线。
(1)小车电机接线
我们先观察一下安装好的电机上有这样2个金色小圈圈:(用红色圆圈圈出的地方)
将电机线钩在上面,(如果有条件的话可以选择焊接),每个电机上都被勾上2根电机线,4个电机就是8根线。
互联网小常识:Internet/Interanet通用服务器主要包括:DNS服务器、WWW服务器、Ftp服务器、E-Mail服务器,以及远程通信服务器、代理服务器等。
(2)L298N模块与树莓派接线
我们先观察一下L298N模块上每个引脚。考虑到语言可能描述不清楚,小编特意画了张丑丑的图~
(3)L298N模块与小车马达接线
4个马达都是这么接。
至此,所有硬件连接已经完成。
(三)——软件代码
我们已经完成了硬件连接。完成硬件连接后我们打开电源,可以看到L298N上的灯亮起来,呈红色。
如上图所示。
那么接下来我们要做的就是导入软件代码,实现小车动起来。
我们采用的是python编程,没学过python的小伙伴也不用担心,因为我们编程语句都较为简单。并且,Python具有丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。
我们先打开树莓派终端,在输入代码前,我们要注意先导入一个gpio模块。导入语句为:
import RPi.GPIO as GPIO
输入完这个语句后,可以看到终端里显示导入的百分比(50%)这种。
导入成功后,在终端中创建一个新的python文件。
互联网小常识:与计算机病毒不同,蠕虫不需要把自身附加在宿主程序上,而是一个独立的程序,能够主动运行。有两种蠕虫:宿主计算机蠕虫和网络蠕虫。
创建语句为:
vi xiaoche.py
xiaoche是你创建的文件的名字,就像你平时创建一个word文档,文档的名字一样。
然后我们输入代码:
导入gpio的模块
import RPi.GPIO as GPIO
import time
设置gpio口的模式
GPIO.setmode(GPIO.BOARD)
定义信号接口gpio口
INT1 = 11
INT2 = 12
INT3 = 13
INT4 = 15
设置gpio口为输出
GPIO.setup(INT1,GPIO.OUT)
GPIO.setup(INT2,GPIO.OUT)
GPIO.setup(INT3,GPIO.OUT)
GPIO.setup(INT4,GPIO.OUT)
这里参考上一节模块接线的L298N模块的控制图
GPIO.output(INT1,GPIO.HIGH)
GPIO.output(INT2,GPIO.LOW)
GPIO.output(INT3,False)
GPIO.output(INT4,False)
延时2秒之后执行cleanup释放GPIO接口
time.sleep(2)
GPIO.cleanup()
我来解释一下上面标红的一段代码,先看一下上一期连接的图。
注意观察,上图中的INT1接的口是11,因此代码中我们就给INT1定义为11,INT2\3\4也是如此。
然后保存文件,退出,在终端里敲入执行xiaoche.py的执行语句:
sudo python xiaoche.py
我们可以看到小车的马达转动起来啦!那么大家会发现,小车并没有行进,只有两个轮子转动,是为什么呢?
我们来看一下这段代码:
GPIO.output(INT1,GPIO.HIGH)
GPIO.output(INT2,GPIO.LOW)
GPIO.output(INT3,False)
GPIO.output(INT4,False)
我标红的地方是决定小车轮子如何转动、哪几个轮子转动的重要代码。
如果是高电平,就设置HIGH;低电平,设置LOW。
互联网小常识:VTP有三种工作模式:VTP Server 、VTP Client和VTP Transparent.Server一般一个域中只有一个。用于设置因此不需要学习VLAN信息,Transparent相当于一个独立交换机不参与VTP工作,Client不能建立、删除或修改VLAN,它只能从Sserver学习VLAN配置。
免责声明:本站所有信息均搜集自互联网,并不代表本站观点,本站不对其真实合法性负责。如有信息侵犯了您的权益,请告知,本站将立刻处理。联系QQ:1640731186