日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

python智能识别的门禁系统_用PythonPi实现门禁系统-示例

發布時間:2024/1/1 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python智能识别的门禁系统_用PythonPi实现门禁系统-示例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

和分布式智能控制系統類似,首先實現了Python接口的API,基于圖形界面的管理界面以后視情況提供。

先看示例的接線圖:

這個示例是用樹莓派的spi接口連接了一個rc522讀卡器,以15號gpio口連接了一個led作為電鎖動作的指示,16號gpio口連接了一個開關按鈕作為出門按鈕,1號gpio口連接了一個開關按鈕模擬門狀態。實現代碼如下:

from cn.ijingxi.corpuscle.python import active

from cn.ijingxi.corpuscle.python import input

from cn.ijingxi.corpuscle.python import door

from cn.ijingxi.corpuscle.python import admin

#添加卡,卡號:-741925061

admin.addPeople(admin.PeopleType_RC522,-741925061,"people1")

#為該卡指定角色

admin.addRoleMap(admin.PeopleType_RC522,-741925061,"role1")

#定義一個門

d=door("testDoor")

#添加鎖動作,開門與關門,15號gpio口

a1=active.getGPIO("/pi1/15",active.HIGH)

a2=active.getGPIO("/pi1/15",active.LOW)

d.addLockOpen(a1)

d.addLockClose(a2)

#添加出門按鈕,16號gpio口,帶上拉電阻,提供防抖動功能

es=input.getGPIO("/pi1/16",input.PULL_UP,input.Flitter)

d.addExitSwitch(es)

#添加鎖狀態,1號gpio口,帶上拉電阻,提供防抖動功能

ls=input.getGPIO("/pi1/1",input.PULL_UP,input.Flitter)

d.addLockState(ls)

#添加讀卡器

r=input.getRC522("/pi1/rc522_r1")

d.addRecognizer(r)

#許可哪個角色可通過

d.addRole("role1",r)

#設置完畢,開始初始化

d.init()

將上述代碼在“在線編程”頁面中的代碼輸入框中輸入,點擊執行即實現了一個普通的單門門禁系統:

刷卡(卡號:-741925061),led亮,代表電鎖解除鎖門,5秒后led滅,即開門后延時5秒啟動電鎖鎖門(只是下達了鎖門的動作,如果此時門還沒有開著則電鎖不能鎖上)

按下16號gpio口所連的出門按鈕,led亮,代表電鎖解除鎖門,5秒后led滅,即開門后延時5秒啟動電鎖鎖門

門開(led亮)后,如果不按下1號口所連接的開關按鈕(代表門關閉了),led熄滅后再不會亮起。因為不關門,代表門一直開著,所以不會再次開門

刷卡或按下出門按鈕后,不等led自動熄滅就按下1號口所連接的開關按鈕,此時led立刻熄滅。即開門后只推了下門卻沒外出,所以立刻關門

刷其它卡無反應

這幾行代碼就能實現這么多功能?!這是因為door這個組件封裝了場景組件并預設了上述功能,下次我們再來詳細講解其是如何實現的

====================================================================================================

關注我的公眾號及時獲取推送的最新文章

總結

以上是生活随笔為你收集整理的python智能识别的门禁系统_用PythonPi实现门禁系统-示例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。