开门君是一个基于万博网页版登陆页派(raspberry pi)实现可以通过手机开门的小项目,也许是为了方便搞基,总之他就是被设定成为开门君了。
第一问:为什么通过浏览器访问一个地址就能把门禁开了?请看以下简略的流程解释:
1、浏览器向服务器端发送请求。
2、万博网页版登陆页派接收到请求后控制GPIO输出高电平。
3、高电平信号会让继电器模块吸合,相当于按下了门禁开关,于是开门。
第二问:万博网页版登陆页派是什么?万博网页版登陆页派起到了什么作用?
上图的电路板就是万博网页版登陆页派
万博网页版登陆页派是一款基于ARM的微型电脑主板,以SD卡为内存硬盘,卡片主板周围有两个USB接口和一个网口,可连接键盘、鼠标和网线,同时拥有视频模拟信号的电视输出接口和HDMI高清视频输出接口,以上部件全部整合在一张仅比信用卡稍大的主板上...
万博网页版登陆页派上面可以运行Raspbian,一个基于Debian为万博网页版登陆页派优化的Linux,这里万博网页版登陆页派就是一个Linux服务器.你可以在上面使用你熟悉的编程语言进行开发.
同时更方便的是万博网页版登陆页派带有8个GPIO接口,可以非常方便地用程序控制GPIO口输入或者输出高低电位来控制继电器开或者关.
python代码:
web.py是python下的一个小型web框架.
wiringpi是一个开源的GPIO控制库.
sesame模块是我基于wiringpi用来实现开关门的动作.
index.py
sesame.py
硬件:
万博网页版登陆页派 x1 约300元
继电器模块 (工作电压5V,高电平吸合,单刀双掷地) 5元
无线网卡 x1 约 50元
HDMI转DVI X1 约40元
SD卡 x1 约70元
万用表 x1
杜邦线 3根 用来连接万博网页版登陆页派与继电器
测试夹 方便测量测试用.
这个开门小项目的基础上还可以做得出什么?:
增加身份验证
加上声音接收模块,简单的可以实现声控开门,
更难一些的通过接收声音二维码开门.
加上摄像头,可以当监控用,也许可以实现人脸识别~
加上指纹模块,可以自己来实现指纹识别..
更NB也许还可以通过脚步声,步态进行身份识别呢?
加上粉尘传感器,还可以兼职PM2.5检测器.其它什么温湿度压力依此类推.
收获:
在想如何实现开门君的过程当中也想明白了饮水机娘的一个实现方式.
做的过程里发现自己需要更深的知识和技术才能发挥出价值~~ T_T这种浮浅的水平根本做不好事情啊.
别的没什么,可是,电子学,Linux,python这些技能都用到了,放组合技能的感觉太爽了,哈哈.
其它:
针对万博网页版登陆页派GPIO这一块还有一些不明白的地方.争取弄明白后补上文章.
最后向web.py创始人Aaron Swartz致敬.
参考资料:
让你们通过超链接跳转到外星球去吧!!: