项目十三 智能保险箱 - 任务一_第1页
项目十三 智能保险箱 - 任务一_第2页
项目十三 智能保险箱 - 任务一_第3页
项目十三 智能保险箱 - 任务一_第4页
项目十三 智能保险箱 - 任务一_第5页
已阅读5页,还剩69页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《传感器应用》主讲教师:XXX

项目十三智能保险箱PART13※智能保险箱接近报警功能※智能保险箱密码开锁功能13※实现智能保险箱功能项目概述贵重物品的安全,是人身财产安全的重要一环。随着科技水平的提高,各种盗取财物的手段不断升级。因此,人们对安全稳定性好、操作便捷的智能保险柜的需求也在不断提高。某公司要设计一个智能保险箱,要求保险箱具有有人接近时报警功能、使用数字式转盘作为解锁方式,语言播报产品作为特色。小林是公司的产品研发工程师需要将其设计出来,使用树莓派开发套件编写程序调试实现上述功能,便于后续产品的研发。掌握编写智能保险箱接近报警功能方法01掌握编写智能保险箱密码开锁功能方法02学习目标objective技能目标objective掌握编写智能保险箱功能方法01掌握实现编写综合程序方法02TASKONE任务一智能保险箱接近报警功能4任务概述储备知识任务实施任务目标231本次任务:掌握使用pycharm软件开发智能保险箱接近报警功能开发方法,实现当有人接近保险箱时双色LED灯显示红色,当离开保险箱时显示绿色的程序设计。任务概述4任务概述储备知识任务实施任务目标231TASKONE任务一智能保险箱接近报警功能01.掌握pycharm软件安装方法02.掌握pycharm软件使用方法任务目标03.掌握智能保险箱接近报警功能开发方法4任务概述储备知识任务实施任务目标231TASKONE任务一智能保险箱接近报警功能01.Pycharm开发环境储备知识01.Pycharm开发环境IDE的设计思想程序编辑调编译将两大功能集成在一个图形用户界面中,提升程序员学习编程及开发的效率。集成开发环境(IDE)的选择:还有其他第三方及集成开发环境,例如:PyCharmSublimeEric6(一个较复杂的工具软件)Python中最常用的集成开发环境除了自带的IDLE外IDE对初学者而言,需要花一定时间进行学习。同时支持GoogleAppEngine、IronPython,这些功能在先进代码分析程序的支持下,使得PyCharm成为Python专业初学者和开发人员使用的有力工具。PyCharm拥有一般IDE具备的功能调试语法高亮Project管理代码跳转智能提示单元测试pycharm专业版可以远程调用树莓派python模块在本地编写python程序,然后远程执行代码。pycharm的集成开发能力远比树莓派的自带的mu软件来的专业。在更加综合的程序设计中推荐使用pycharm进行开发。由于因此图:pycharm专业版开发环境4任务概述储备知识任务实施任务目标231TASKONE任务一智能保险箱接近报警功能02.安装pycharm环境任务实施03.使用pycharm软件04.编写智能保险箱接近报警功能02.安装pycharm环境任务所需软件如下所示:环境准备任务所需硬件如下所示:Python3PyCharm树莓派4B三色灯模块(1)设备对应接口如下表说明:树莓派T型转接板三色灯模块GNDGNDGND-G23R-G24G(2)如图所示,使用杜邦线将树莓派连接面包板后的GPIO与三色灯模块连接起来,由板载的5V为模块供电。图:树莓派连接模块图2.1.安装python3这两个系列的版本之间有很多用法是不兼容的,基本输入输出方式格式不同,很多内置函数、标准库和扩展库的用法也有差别。Python自发布以来,官方网站上发布过两个不同系列的版本。Python2.xPython.3.Python3.0不再向后兼容,Python2.7作为Python2.x的最后一个版本。目前,在Python官网:/上已经发布了的最新版本为Python3.9版本。例如步骤1:下载Python3.8.7软件安装包(1)打开Python官方网站,网址。点击“Downloads”标签按钮,因为python支持各种操作系统我们由于我们所使用的系统为windows,所以选择“windows”标签,如图所示。图:下载软件(2)在下载页面中,下拉的网页内容选择对应版本“Python3.8.6”点击“Download”按钮,开始下载Python的软件安装包,如图所示。图:下载Python对应版本(3)下载对应的安装包后,Python软件安装包如图所示。图:下载Python对应版本步骤2:安装Python3软件(1)双击软件“python-3.8.6-amd64”安装包,开始安装python3软件→在弹出的窗体中勾选“AddPython3.8toPATH”表示将Python3软件添加至系统的环境变量中,如图所示。图:安装Python3(2)勾选环境变量后,即可点击“InstallNow”按钮立即开始安装软件,如图所示。图:立即开始安装Python3(3)等待几分钟后弹出Setupwassuccessful表示安装完成→点击“Close”按钮退出安装界面→之后“重启计算机”即可完成安装,如图所示。图:软件安装完成步骤3:验证Python3软件是否安装成功(1)计算机重启后,使用windows命令行窗体验证python是否完成安装,windows命令行在使用运行的方式启动,在键盘输入快捷键“Windows+R”键启动运行窗体→在运行窗体中输入“cmd”→点击“确定”按钮即可启动windows命令行模式,如图所示。图:启动windows命令行(2)在windows命令行窗体中输入“python”命令,表示执行python程序中的命令行模式,python命令行模式如图所示。图:执行python命令行模式(3)在Python命令行模式下输入如下命令并查看是否有包含会显信息(注意其中的标点符号为半角,小写英文),如果在windows命令行窗体中,有显示回复“helloworld”则表示python3已经执行成功,如图所示。图:Python3测试成功print("helloworld")2.2.安装Pycharm软件步骤1:下载PyCharm软件安装包(1)打开PyCharm官方网站“/pycharm/”→在网站中选择位于右上方的“Download”标签,如图所示。图:PyCharm官网下载1(2)在弹出的页面中选择“Windows”系统安装包,下载Community(社区免费版本)社区版本当最新版本为2020.3.3与考试要求版本一致,如图所示。图:PyCharm官网下载2(3)下载成功后PyCharm软件安装包,如图所示。图:PyCharm软件安装包步骤2:安装PyCharm软件(1)双击打开Pycharm软件安装包,在弹出的窗体中点击“Next”下一步→选择默认的目录安装Pycharm点击“Next”下一步,如图所示。图:安装Pycharm软件1表示将启动器目录添加到路径中。勾选“AddlauchersdirtothePATH”表示鼠标右击时出现OpenFolderasPyCharmProject选项(以PyCharm工程方式打开)。勾选“AddOpenFolderasProject”表示在桌面创建一个pycharm快捷方式。勾选“64-bitlauncher”(2)在弹出的新窗体中——表示以后py文件都以PyCharm打开。勾选“CreateAssociations”勾选完成后点击“Next”下一步进入下一页面,如图所示。图:安装PyCharm软件2(3)在新的窗体按默认即可点击“Install”按钮即可开始PyCharm软件的安装,软件安装完成后点击Finish完成安装并重启计算机,如图所示。图:安装Pycharm软件3(4)测试打开软件,软件本身有30天的免费使用时间,如图所示。图:pycharm平台软件03.使用pycharm软件3.1.新建与树莓派连接的工程步骤1:新建工程与树莓派连接(1)打开pycharm软件->在软件中选择“NewProject”新建一个工程,如图所示。图:新建工程1(2)在弹出的窗体中选择“purepython”表示纯python工程->选择“previouslyconfiguredinterpreter”表示使用外部的python模块,如图所示。图:新建工程2注意记录remoteprojectlocation目录文件路径(3)在选择外部的python模块选项中,点击…图标,如图所示。图:新建工程3(4)在弹出的窗体中选择“SSHInterpreter”->输入树莓派IP地址->输入树莓派用户名->点击“Next”如图所示->输入密码,如图所示->点击“Next”。(注意:树莓派需要通上电源)图:连接树莓派SSH服务1图:树莓派连接SSH服务2(5)在弹出的新窗体中选择树莓派的python模块目录,默认为“/usr/bin/pyton”即可->设置完成后点击finish,完成配置。图:树莓派连接SSH服务3(6)在设置完成后将在工程中找到连接的树莓派地址,如图所示。图:连接树莓派SSH4(7)点击“Create”创建工程,等待几秒完成新建工程任务,如图所示。图:成功新建工程(8)为了防止后续工程出现问题需要设置几个选项,在工程新建成功后,选择软件右上角setting按钮,弹出工程设置界面如图所示。图:设置选项(9)在弹出的设置选项中选择“build,Execcution,Deployment”->Deployment->选择pi@00->Mappings->在Deploymentpath中添加新建工程时的文件目录“/tmp/pycharm_project_245”,点击确定按钮,如图所示。(10)设置在树莓派中启动sudo权限方法,同样按照(8)步骤打开setting选项->选择“Project……”->projectinterpreter->点击设置图标->选择“showall”,如图所示。图:设置sudo权限方法1(11)在弹出的窗体中选择“editenter”图标,如图所示。图:设置sudo权限方法2(12)在弹出的新窗体中勾选Executcodeusingthisinterpreterwithrootprivilegesviasudo选项->点击OK如图所示。图:设置sudo权限方法3步骤2:编写代码并执行(1)在main.py的文件中删除原先代码,编写一个简单的代码如下所示,让三色灯开始闪缩。(2)执行代码,在软件菜单栏中点击“run”->点击“Runmain”按钮,开始远程执行代码,如图所示并观察LED灯是否开始闪烁,接下来的智能保险箱功能将均使用pycharm进行开发。图:Pycharm执行代码3.2.常见问题解决(1)当关闭新建工程与树莓派后第二次打开工程与项目时由于树莓派的上传代码目录为tmp的缓存目录,所以在打开电源时工程配置文件可能发送丢失,所以需要重新上传,若未上传则会发生如图所示提示没有那个文件或目录。图:错误提示(2)若发现该问题则需要重新上传工程文件,鼠标右键选择工程目录->点击“Deployment”->点击“Uploadtopi@00:22password”选择如图所示。图:设置重新上传文件(3)上传成功后在pycharm平台的下方会提示成功,即可继续进行项目的开发,如图所示。图:上传代码成功04.编写智能保险箱接近报警功能任务所需软件如下所示:环境准备任务所需硬件如下所示:Python3PyCharm树莓派4B超声波模块三色灯模块4.1.根据引脚说明和连线图连接设备步骤1:根据连线图连接线路(1)设备对应接口如下表说明:树莓派T型转接板超声波模块GPIO0G17TrigGPIO1G18Echo5V5VVCC(+)GNDGNDGND树莓派T型转接板三色灯模块GNDGNDGND-G26R-G27G(2)如图所示,使用杜邦线将树莓派连接面包板后的GPIO与超声波模块、三色灯模块连接起来,由板载的5V为模块供电。图:树莓派连接模块图4.2.新建工程编并写代码(1)开启树莓派电源->打开Pycharm软件新建工程名称为“SmartStrongbox”,使用SSH方式连接树莓派,如图所示。图:新建工程步骤1:打开pycharm开发环境,新建Python工程(2)在新建工程的界面中,选择SmartStrongbox工程鼠标右键选择“New”->选择PythonFile新建一个新的python文件,新建一个名为“supersonic.py”的Python文件。如图所示。图:新建python文件(1)在supersonic.py文件中输入代码,实现超声波传感器对于超声波的放送与接受检测,当接收到返回的超声波信号时,返回当前距离数据。步骤2:编写超声波模块代码并执行代码importRPi.GPIOas

GPIOimport

timetrig_pin=17

#超声波模块Trig控制管脚对应17口echo_pin=18

#超声波模块Echo控制管脚对应18口#超声波模块初始化def

init():

GPIO.setmode(GPIO.BCM)#采用实际的物理

GPIO.setup(trig_pin,GPIO.OUT)#Tring设置为输出模式

GPIO.setup(echo_pin,GPIO.IN)#Echo设置为输入模式#超声波发送与接收def

supersonic():

GPIO.output(trig_pin,1)#超声波启动信号,延时10us

time.sleep(0.00001)#发出超声波脉冲

GPIO.output(trig_pin,0)#设置为低电平

while

GPIO.input(echo_pin)==0:#等待回传信号

pass

use_time1=time.time()#记录当前时间

while

GPIO.input(echo_pin)==1:#回传信号截止信息

pass

use_time2=time.time()

use_during=use_time2-use_time1

#计算超声波从发送到接收的时间差

return

use_during*340/2

#返回计算后的距离#程序入口if__name__=="__main__":

#调用初始化函数

init()

try:

while

True:

distance=format(supersonic(),".2f")

print(distance,"m")

time.sleep(1)

except

KeyboardInterrupt:

#当按下Ctrl+C时,将执行destroy()子程序。

GPIO.cleanup();#释放资源代码详解本次案例中的代码为前置项目中的超声波代码在前置项目已做说明。本任务主要要求掌握在pycharm软件中综合程序的编写过程,故上述代码不做具体详解。(2)在pycharm软件中选择supersonic.py代码文件->单击鼠标右键在弹出的窗体中选择“Runsupersonic”执行代码。图:执行代码(3)观察软件窗体的变化,是否有超声波模块的回显示,如图所示。图:显示超声波回显(1)在LED.py文件中输入代码,实现LED对于超声波的放送与接受检测,当接收到返回的超声波信号时,输出接收信号。步骤3:编写LED模块代码并执行代码#coding="utf-8"importRPi.GPIOas

GPIOimport

timer_pin=26g_pin=27#灯的状态数据表r_open=1g_open=2r_close=3g_close=4#双色灯模块初始化函数def

init():

GPIO.setmode(GPIO.BCM)

GPIO.setup(r_pin,GPIO.OUT)

GPIO.setup(g_pin,GPIO.OUT)#双色灯模块点亮熄灭函数def

light(led_type):

if(led_type==r_open):

GPIO.output(r_pin,GPIO.HIGH)

if(led_type==g_open):

GPIO.output(g_pin,GPIO.HIGH)

if(led_type==r_close):

GPIO.output(r_pin,GPIO.LOW)if(led_type==g_close):

GPIO.output(g_pin,GPIO.LOW)if__name__=="__main__":

init()

while

True:

light(r_open)

light(g_open)

time.sleep(0.5)

light(r_close)

light(g_close)

time.sleep(0.5)代码详解代码将LED灯点亮和熄灭进行封装,编写了一个light函数。开启红色灯。当参数为r_open时关闭红色灯。当参数为r_close时需要传入一个led_type的参数。调用函数时2)在pycharm软件中选择led.py代码文件->单击鼠标右键在弹出的窗体中选择“Runled”执行代码。图:执行代码(3)观察LED灯模块是否开始闪烁,如闪烁则代码正常执行。(1)打开main.py主函数文件,在文件中编写代码,代码如下所示。步骤4:编写主函数代码并执行代码#coding="utf-8"importsupersonicimport

ledimportRPi.GPIOas

GPIOimport

timedistance_min=0.2

#有人接近的最小距离变量if__name__=="__main__":

supersonic.init()#初始化超声波模块IO

led.init()#初始化超声波模块IO

while

True:

s=supersonic.supersonic()

if

s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论