版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
嵌入式人工智能技術(shù)應(yīng)用項目四基于人臉檢測算法實現(xiàn)家用設(shè)備的控制基于人臉檢測的安防檢測實驗任務(wù)二職業(yè)能力目標(biāo)01任務(wù)描述與要求02任務(wù)分析與計劃03知識儲備04任務(wù)實施05任務(wù)檢查與評價06任務(wù)小結(jié)07任務(wù)拓展08任務(wù)二基于人臉檢測的安防檢測實驗理解通過人臉識別完成安防檢測的實驗流程。能夠利用人臉識別算法,使用數(shù)據(jù)庫完成用戶注冊;能夠調(diào)用算法識別的特征數(shù)據(jù)與數(shù)據(jù)庫中的數(shù)據(jù)做比對;能夠結(jié)合人臉檢測算法和燈光控制方法完成實驗。職業(yè)能力目標(biāo)01知識目標(biāo)技能目標(biāo)職業(yè)能力目標(biāo)01任務(wù)描述與要求02任務(wù)分析與計劃03知識儲備04任務(wù)實施05任務(wù)檢查與評價06任務(wù)小結(jié)07任務(wù)拓展08任務(wù)二基于人臉檢測的安防檢測實驗
本實驗將實現(xiàn)通過調(diào)用opencv模塊、人臉檢測算法庫、sqlite3模塊、serial模塊對采集的圖像進行人臉檢測,如果不是注冊用戶,則打開紅燈。任務(wù)描述任務(wù)要求使用人臉檢測算法提取人臉特征并注冊到數(shù)據(jù)庫;使用人臉檢測算法將新采集的人臉圖像與數(shù)據(jù)庫中的數(shù)據(jù)計算相似度;如果識別未注冊人員,則開啟紅燈預(yù)警。任務(wù)描述與要求02職業(yè)能力目標(biāo)01任務(wù)描述與要求02任務(wù)分析與計劃03知識儲備04任務(wù)實施05任務(wù)檢查與評價06任務(wù)小結(jié)07任務(wù)拓展08任務(wù)二基于人臉檢測的安防檢測實驗任務(wù)分析安防系統(tǒng)構(gòu)建可能會涉及到哪些步驟?根據(jù)自己的了解說說安防系統(tǒng)原理?任務(wù)分析與計劃03任務(wù)計劃表項目名稱基于人臉檢測算法實現(xiàn)家用設(shè)備的控制任務(wù)名稱基于人臉檢測的安防檢測實驗計劃方式自主設(shè)計計劃要求請用5個計劃步驟來完整描述出如何完成本次任務(wù)序號任務(wù)計劃1
2
3
4
5
通過上面的思考,你是否對本任務(wù)要完成的工作有所了解?讓我們一起來制訂完成本次任務(wù)的實施計劃吧!任務(wù)分析與計劃03職業(yè)能力目標(biāo)01任務(wù)描述與要求02任務(wù)分析與計劃03知識儲備04任務(wù)實施05任務(wù)檢查與評價06任務(wù)小結(jié)07任務(wù)拓展08任務(wù)二基于人臉檢測的安防檢測實驗04知識儲備智能安防1數(shù)據(jù)庫2智能安防04智能安防指的是服務(wù)的信息化、圖像的傳輸和存儲技術(shù)。智能安防04物聯(lián)網(wǎng)技術(shù)的普及應(yīng)用,使得城市的安防從過去簡單的安全防護系統(tǒng)向城市綜合化體系演變,城市的安防項目涵蓋眾多的領(lǐng)域,有街道社區(qū)、樓宇建筑、銀行郵局、道路監(jiān)控、機動車輛、警務(wù)人員、移動物體、船只等。智能安防04(1)視頻監(jiān)控管理
智能視頻監(jiān)控系統(tǒng)是采用圖像處理、模式識別和計算機視覺技術(shù),通過在監(jiān)控系統(tǒng)中增加智能視頻分析模塊,借助計算機強大的數(shù)據(jù)處理能力過濾掉視頻畫面無用的或干擾信息、自動識別不同物體,分析抽取視頻源中關(guān)鍵有用信息,快速準(zhǔn)確的定位事故現(xiàn)場,判斷監(jiān)控畫面中的異常情況。智能安防應(yīng)用場景智能安防04(2)門禁、智能報警
智能安防報警系統(tǒng)是同家庭的各種傳感器、功能鍵、探測器及執(zhí)行器共同構(gòu)成家庭的安防體系,是家庭安防體系的"大腦"。報警功能包括防火、防盜、煤氣泄露報警及緊急求助等功能。智能安防應(yīng)用場景智能安防04(3)消防
常見的就是生活中最常見的煙霧探測器。一旦煙霧達到煙感探測器的值,就會啟動自動噴水裝置并發(fā)出警報,管理人員可以根據(jù)終端的反饋及時趕到現(xiàn)場,采取相應(yīng)措施,降低損失。智能安防應(yīng)用場景智能安防04(4)公安行業(yè)
在公安行業(yè)主要用于篩選和跟蹤嫌疑犯人的線索,人工智能可以快速的從錄像選出犯罪嫌疑人的信息并且快速的傳達到前端,智能機器只需要幾分鐘就可以完成。智能安防應(yīng)用場景智能安防04(5)大廈、公共場所
人工智能相當(dāng)于人的大腦,處理每天進進出出的人和車的運動信息以及實時跟蹤定位,還可以區(qū)分是內(nèi)部人還是外來人員,計算逗留時間來確保安全。智能安防應(yīng)用場景智能安防04(6)工廠、園區(qū)
人工智能機器人可以在園區(qū)進行巡視,自動抓取信息分析并存儲,還可以對是收集到的信息進行預(yù)判,一旦遇到緊急情況可以開啟自動預(yù)警。智能安防應(yīng)用場景智能安防04(7)在交通方面
人工智能的切入,可實時知道各條路的情況是怎樣的,如果哪條路出現(xiàn)險情,人工智能可快速篩選出最近的最通暢的路線讓大家更好的出行,節(jié)省時間。智能安防應(yīng)用場景智能安防04(8)民用安防
民用安防現(xiàn)在使用最多,近年來入室盜竊案越來越多,家居安全成了大家關(guān)注的焦點,人工智能現(xiàn)在可以做到家里沒人的情況下自動布防,如果有人闖入就會自動報警并且通知家人,等家庭成員回來時可以撤防確保隱私安全。智能安防應(yīng)用場景04知識儲備智能安防1數(shù)據(jù)庫2數(shù)據(jù)庫04數(shù)據(jù)庫是“按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲和管理數(shù)據(jù)的倉庫”。是一個長期存儲在計算機內(nèi)的、有組織的、可共享的、統(tǒng)一管理的大量數(shù)據(jù)的集合。數(shù)據(jù)庫04數(shù)據(jù)庫是一個按數(shù)據(jù)結(jié)構(gòu)來存儲和管理數(shù)據(jù)的計算機軟件系統(tǒng)。數(shù)據(jù)庫的概念實際包括兩層意思:(1)數(shù)據(jù)庫是一個實體,它是能夠合理保管數(shù)據(jù)的“倉庫”,用戶在該“倉庫”中存放要管理的事務(wù)數(shù)據(jù),“數(shù)據(jù)”和“庫”兩個概念結(jié)合成為數(shù)據(jù)庫。(2)數(shù)據(jù)庫是數(shù)據(jù)管理的新方法和技術(shù),它能更合適的組織數(shù)據(jù)、更方便的維護數(shù)據(jù)、更嚴(yán)密的控制數(shù)據(jù)和更有效的利用數(shù)據(jù)。數(shù)據(jù)庫04DB:數(shù)據(jù)庫(Database)即存儲數(shù)據(jù)的“倉庫”。它保存了一系列有組織的數(shù)據(jù)。DBMS:數(shù)據(jù)庫管理系統(tǒng)(DatabaseManagementSystem):是一種操縱和管理數(shù)據(jù)庫的大型軟件,例如建立、使用和維護數(shù)據(jù)庫。數(shù)據(jù)庫04目前互聯(lián)網(wǎng)上常見的數(shù)據(jù)庫管理軟件有Sybase、DB2、Oracle、MySQL、Access、VisualFoxpro(面向?qū)ο笮停?、MSSQLServer、Informix、PostgreSQL(對象-關(guān)系型)這幾種。以下是2017年StackOverflow對各數(shù)據(jù)庫受歡迎程度進行調(diào)查后的統(tǒng)計結(jié)果:數(shù)據(jù)庫04SELECT-從數(shù)據(jù)庫中提取數(shù)據(jù)UPDATE-更新數(shù)據(jù)庫中的數(shù)據(jù)DELETE-從數(shù)據(jù)庫中刪除數(shù)據(jù)INSERTINTO-向數(shù)據(jù)庫中插入新數(shù)據(jù)CREATEDATABASE-創(chuàng)建新數(shù)據(jù)庫ALTERDATABASE-修改數(shù)據(jù)庫CREATETABLE-創(chuàng)建新表ALTERTABLE-變更(改變)數(shù)據(jù)庫表DROPTABLE-刪除表CREATEINDEX-創(chuàng)建索引(搜索鍵)DROPINDEX-刪除索引SQL命令數(shù)據(jù)庫04
SQLite是一種C語言庫,實現(xiàn)了自給自足的、無服務(wù)器的、零配置的、事務(wù)性的SQL數(shù)據(jù)庫引擎。SQLite是世界上最常用的數(shù)據(jù)庫引擎。SQLite內(nèi)置于所有手機和大多數(shù)計算機中,并捆綁在人們每天使用的無數(shù)其他應(yīng)用程序中。SQLite源碼是開源的,任何人在不同的應(yīng)用場景中都可以免費的使用SQLite。數(shù)據(jù)庫04DDL-數(shù)據(jù)定義語言命令描述CREATE創(chuàng)建一個新的表,一個表的視圖,或者數(shù)據(jù)庫中的其他對象。ALTER修改數(shù)據(jù)庫中的某個已有的數(shù)據(jù)庫對象,比如一個表。DROP刪除整個表,或者表的視圖,或者數(shù)據(jù)庫中的其他對象。DML-數(shù)據(jù)操作語言命令描述INSERT創(chuàng)建一條記錄。UPDATE修改記錄。DELETE刪除記錄。DQL-數(shù)據(jù)查詢語言命令描述SELECT從一個或多個表中檢索某些記錄。數(shù)據(jù)庫04不需要一個單獨的服務(wù)器進程或操作的系統(tǒng)(無服務(wù)器的)。SQLite不需要配置,這意味著不需要安裝或管理。一個完整的SQLite數(shù)據(jù)庫是存儲在一個單一的跨平臺的磁盤文件。SQLite是非常小的,是輕量級的,完全配置時小于400KiB,省略可選功能配置時小于250KiB。SQLite是自給自足的,這意味著不需要任何外部的依賴。SQLite事務(wù)是完全兼容ACID的,允許從多個進程或線程安全訪問。SQLite支持SQL92(SQL2)標(biāo)準(zhǔn)的大多數(shù)查詢語言的功能。SQLite使用ANSI-C編寫的,并提供了簡單和易于使用的API。SQLite可在UNIX(Linux,MacOS-X,Android,iOS)和Windows(Win32,WinCE,WinRT)中運行。SQLite數(shù)據(jù)庫優(yōu)點職業(yè)能力目標(biāo)01任務(wù)描述與要求02任務(wù)分析與計劃03知識儲備04任務(wù)實施05任務(wù)檢查與評價06任務(wù)小結(jié)07任務(wù)拓展08任務(wù)二基于人臉檢測的安防檢測實驗05實驗流程圖05任務(wù)實施提取人臉特征寫入數(shù)據(jù)庫2利用opencv采集圖片1人臉識別比對3安防報警4利用opencv采集圖片05importcv2dWindow('image_win',flags=cv2.WINDOW_NORMAL|cv2.WINDOW_KEEPRATIO|cv2.WINDOW_GUI_EXPANDED)cv2.setWindowProperty('image_win',cv2.WND_PROP_FULLSCREEN,cv2.WINDOW_FULLSCREEN)#全屏展示cap=cv2.VideoCapture(0)time.sleep(2)#2秒后拍照cap.set(cv2.CAP_PROP_FRAME_WIDTH,640)cap.set(cv2.CAP_PROP_FRAME_HEIGHT,480)ret,image=cap.read()print(ret)cv2.imshow('image_win',image)cv2.waitKey(5000)cap.release()cv2.destroyAllWindows()opencv采集圖片的詳細(xì)內(nèi)容,參考前面章節(jié)項目1:使用OpenCV實現(xiàn)人臉檢測中的1_opencv實現(xiàn)圖像的讀取與保存cap=cv2.VideoCapture(0)實例化一個對象賦值給capcap.set(cv2.CAP_PROP_FRAME_WIDTH,640),cap.set(cv2.CAP_PROP_FRAME_HEIGHT,480)設(shè)置采集的分辨率寬高ret,image=cap.read()讀取一幀圖片,返回圖片內(nèi)容和狀態(tài)值cv2.imshow('image',image)顯示圖片cv2.waitKey(100)等待100毫秒cap.release()釋放攝像頭,以免攝像頭占用;cv2.destroyAllWindows()關(guān)閉所有窗口。05任務(wù)實施提取人臉特征寫入數(shù)據(jù)庫2利用opencv采集圖片1人臉識別比對3安防報警43注冊用戶1提取人臉特征2sqlite3數(shù)據(jù)庫的使用提取人臉特征寫入數(shù)據(jù)庫05提取人臉特征寫入數(shù)據(jù)庫調(diào)用人臉識別的算法,提取特征,寫入數(shù)據(jù)庫。提取人臉特征寫入數(shù)據(jù)庫051.提取人臉特征人臉識別算法包含了特征提取的接口。將獲取到的特征值,轉(zhuǎn)化為python可讀的數(shù)據(jù)數(shù)組類型。fromlib.faceDetectimportNLFaceDetect導(dǎo)入人臉識別算法接口類;nlFaceDetect=NLFaceDetect(libNamePath)實例化算法接口對象,執(zhí)行沒有報錯,表示實例化成功;nlFaceDetect.NL_FD_ComInit(configPath)加載模型和配置,并初始化,執(zhí)行沒有報錯,表示加載成功;nlFaceDetect.NL_FD_InitVarIn(image)加載采集的圖片數(shù)據(jù),返回0表示加載成功;nlFaceDetect.NL_FD_Process_C()調(diào)用人臉檢測主函數(shù)處理圖像,返回人臉個數(shù);nlFaceDetect.NL_FD_Exit()釋放模型和內(nèi)存;face_area=(outObject.x2-outObject.x1)*(outObject.y2-outObject.y1)計算每個人臉框的大小,目的是在注冊是的時候,只取站在最前面的人臉;face_area_max=max(face_areas)取最大的人臉框;max_index=face_areas.index(face_area_max)取最大人臉框的的下標(biāo),也就是第幾個人臉;face_info=nlFaceDetect.djEDVarOut.faceInfos[max_index]獲取最大人臉的人臉信息,作為單個人臉對齊的輸入值;nlFaceDetect.NL_EA_Process_C_2(face_info)把人臉檢測的結(jié)果信息,進行人臉對齊處理;faceNum,faceInfos=nlFaceDetect.NL_ER_Process_C()獲取人臉特征,人臉特征是長度為512的數(shù)組。提取人臉特征寫入數(shù)據(jù)庫051.提取人臉特征(1)人臉對齊:人臉對齊任務(wù)即根據(jù)輸入的人臉圖像,自動定位出面部關(guān)鍵特征點,如左眼,右眼,鼻子,左嘴角,右嘴角等;(2)人臉特征提取:人臉特征提取,即獲取人臉關(guān)鍵點的特征值,該算法,人臉特征是長度為512的數(shù)組。提取人臉特征寫入數(shù)據(jù)庫052.
sqlite3數(shù)據(jù)庫的使用
SQLite是一個軟件庫,實現(xiàn)了自給自足的、無服務(wù)器的、零配置的、事務(wù)性的SQL數(shù)據(jù)庫引擎。SQLite是在世界上最廣泛部署的SQL數(shù)據(jù)庫引擎。SQLite源代碼不受版權(quán)限制。(1)注冊函數(shù)conn=sqlite3.connect("face.db")創(chuàng)建或連接一個數(shù)據(jù)庫;cursor=conn.cursor()創(chuàng)建一個游標(biāo);create_user_table=''是創(chuàng)建用戶表的命令,這里字段采用id,用戶名,創(chuàng)建時間,特征;insert_user_table=''是插入用戶表的命令,給每個字段插入相對應(yīng)的數(shù)據(jù);cursor.execute(create_tb_cmd)執(zhí)行命令;mit()提交執(zhí)行結(jié)果。importsqlite3#引入sqlite3數(shù)據(jù)庫importtimedefregister_user(user_name,feature):conn=sqlite3.connect("face.db")#連接數(shù)據(jù)庫
cursor=conn.cursor()#創(chuàng)建一個游標(biāo)cursoncreate_user_table='createtableuser(idintegerprimarykey,user_nameTEXT,ctimeTEXT,featuresTEXT)'user_create_time=time.strftime("%Y-%m-%d%H:%M:%S",time.localtime())#數(shù)據(jù)創(chuàng)建時間
insert_user_table='insertintouser(user_name,ctime,features)values("{}","{}","{}")'.format(user_name,user_create_time,feature)try:#數(shù)據(jù)表不存在
cursor.execute(create_user_table)#執(zhí)行創(chuàng)建數(shù)據(jù)表sql語句
cursor.execute(insert_user_table)#執(zhí)行插入數(shù)據(jù)sql語句
exceptExceptionase:#數(shù)據(jù)表已存在
cursor.execute(insert_user_table)#執(zhí)行插入數(shù)據(jù)sql語句
mit()#提交執(zhí)行結(jié)果
cursor.close()#關(guān)閉游標(biāo)
conn.close()#關(guān)閉對數(shù)據(jù)庫的連接提取人臉特征寫入數(shù)據(jù)庫052.
sqlite3數(shù)據(jù)庫的使用提取人臉特征寫入數(shù)據(jù)庫052.
sqlite3數(shù)據(jù)庫的使用(2)讀取函數(shù)read_cmd="select*fromuserORDERBYidDESC;"讀取所有用戶信息,按id值的倒敘排列,也就是最新插入的在最前面。defread_user():read_cmd="select*fromuserORDERBYidDESC;"#查詢數(shù)據(jù)sql語句
res_list=[]#存儲查詢結(jié)果列表
try:conn=sqlite3.connect("face.db")#連接數(shù)據(jù)庫
cursor=conn.cursor()#創(chuàng)建一個游標(biāo)cursonres=cursor.execute(read_cmd)#執(zhí)行查詢數(shù)據(jù)sql語句
forrinres:res_list.append(r)#將查詢結(jié)果存入列表
mit()#提交執(zhí)行結(jié)果
cursor.close()#關(guān)閉游標(biāo)
conn.close()#關(guān)閉對數(shù)據(jù)庫的連接
exceptExceptionase:print('sqlerror:'+str(e))returnres_list提取人臉特征寫入數(shù)據(jù)庫053.注冊用戶
判斷是否有人臉數(shù)據(jù)特征,將獲取到的特征注冊到數(shù)據(jù)庫中,并使用讀取函數(shù),驗證是否已寫入。iffts_list:register_user('張三',fts_list)#注冊人臉信息
res=read_user()#讀取所有人臉注冊數(shù)據(jù)
print(res[0])#打印第一條人臉注冊數(shù)據(jù)05任務(wù)實施提取人臉特征寫入數(shù)據(jù)庫2利用opencv采集圖片1人臉識別比對3安防報警41采集新圖片2人臉識別比對人臉識別比對05人臉識別比對調(diào)用算法,識別一張新的圖片,然后和數(shù)據(jù)庫的數(shù)據(jù)進行比對。人臉識別比對051.采集新圖片importcv2dWindow('image_win',flags=cv2.WINDOW_NORMAL|cv2.WINDOW_KEEPRATIO|cv2.WINDOW_GUI_EXPANDED)cv2.setWindowProperty('image_win',cv2.WND_PROP_FULLSCREEN,cv2.WINDOW_FULLSCREEN)#全屏展示time.sleep(2)#2秒后拍照cap=cv2.VideoCapture(0)cap.set(cv2.CAP_PROP_FRAME_WIDTH,640)cap.set(cv2.CAP_PROP_FRAME_HEIGHT,480)ret,image=cap.read()print(ret)cv2.imshow('image_win',image)cv2.waitKey(5000)cap.release()cv2.destroyAllWindows()人臉識別比對052.人臉識別比對05任務(wù)實施提取人臉特征寫入數(shù)據(jù)庫2利用opencv采集圖片1人臉識別比對3安防報警43實現(xiàn)燈光預(yù)警1實例化串口對象2控制燈光安防報警05安防報警安防報警05importtimeimportserialser=serial.Serial("/dev/ttyS0",baudrate=9600,timeout=0.5)1.實例化一個串口對象串口通信是指外設(shè)和計算機間,通過數(shù)據(jù)信號線、地線、控制線等,按位進行傳輸數(shù)據(jù)的一種通訊方式。這種通信方式使用的數(shù)據(jù)線少,在遠(yuǎn)距離通信中可以節(jié)約通信成本,但其傳輸速度比并行傳輸?shù)?。串口是計算機上一種非常通用的設(shè)備通信協(xié)議。serial.Serial(name,baudrate,timeout,bytesize,writeTimeout,port)參數(shù)說明:name:串口在板上的端口號baudrate:串口波特率timeout:讀超時時長bytesize:字節(jié)大小writeTimeout:寫超時port:讀或者寫端口安防報警05打開紅燈ser.flushInput()#清除串口寫入緩存ser.flushOutput()#清除串口輸出緩存command='FE050002FF0039F5'#打開紅燈命令cmd=bytes.fromhex(command)ser.write(cmd)#對串口寫入指令2.控制燈光三色燈的控制,采用的RS485串口控制,RS485采用的通信協(xié)議是Modbus。而Modbus協(xié)議傳輸數(shù)據(jù)使用的是HEX形式的字符。若要獲得傳感器DI值,就要將command轉(zhuǎn)換成HEX形式。也就是將16進制轉(zhuǎn)換成字符串。使用formhex()函數(shù),對command進行轉(zhuǎn)換。三色燈有經(jīng)過繼電器,和4150數(shù)據(jù)模塊DO口。開發(fā)板通過串口控制數(shù)字量模塊的DO口,來控制繼電器的開關(guān),進而控制燈光。關(guān)閉紅燈ser.flushInput()#清除串口寫入緩存ser.flushOutput()#清除串口輸出緩存command='FE05000200007805'#關(guān)閉紅燈命令cmd=bytes.fromhex(command)ser.write(cmd)#對串口寫入指令安防報警05importcv2importserialdWindow('image_win',flags=cv2.WINDOW_NORMAL|cv2.WINDOW_KEEPRATIO|cv2.WINDOW_GUI_EXPANDED)cv2.setWindowProperty('image_win',cv2.WND_PROP_FULLSCREEN,cv2.WINDOW_FULLSCREEN)#全屏展示cap=cv2.VideoCapture(0)#實例化攝像頭cap.set(cv2.CAP_PROP_FRAME_WIDTH,640)#設(shè)置采集圖片的分辨率寬為640cap.set(cv2.CAP_PROP_FRAME_HEIGHT,480)#設(shè)置采集圖片的分辨率高為480time.sleep(2)#2秒后拍照ret,image=cap.read()#采集一幀圖片,并將返回的狀態(tài)賦給變量ret,圖片數(shù)據(jù)賦給變量imagecv2.imshow('image_win',image)#顯示采集的圖片cv2.waitKey(5000)#等待5000毫秒cap.release()#釋放攝像頭cv2.destroyAllWindows()#關(guān)閉所有窗口print(ret)3.實現(xiàn)燈光預(yù)警步驟1:采集人臉照片。采集一張沒有注冊過的人臉。安防報警053.實現(xiàn)燈光預(yù)警步驟2:人臉對比。利用前面注冊的數(shù)據(jù),調(diào)用人臉識別算法,實現(xiàn)人臉識別比對。安防報警05importtimeimportserialser=serial.Serial("/dev/ttyS0",baudrate=9600,timeout=0.5)#實例化串口對象ifnotresult_state:#如果人臉驗證失敗
i=0whilei<2:#打開紅燈
ser.flushInput()#清楚串口寫入緩存
ser.flushOutput()#清楚串口輸出緩存
command='FE050002FF0039F5'#打開紅燈
cmd=bytes.fromhex(command)ser.write(cmd)#指令寫入串口
time.sleep(1)#休眠1秒防止代碼運行過快導(dǎo)致開關(guān)燈的操作跟不上
#關(guān)閉紅燈
ser.flushInput()#清楚串口寫入緩存
ser.flushOutput()#清楚串口輸出緩存
command='FE05000200007805'#關(guān)閉紅燈
cmd=bytes.fromhex(command)ser.write(cmd)#指令寫入串口
time.sleep(1)#休眠1秒防止代碼運行過快導(dǎo)致開關(guān)燈的操作跟不上
i+=1ser.close()3.實現(xiàn)燈光預(yù)警步驟3:紅
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度國有企業(yè)員工持股計劃合同模板2篇
- 二零二五年度高新技術(shù)產(chǎn)業(yè)園區(qū)建設(shè)貸款擔(dān)保合同3篇
- 二零二五年度布草行業(yè)供應(yīng)鏈金融解決方案合同3篇
- 2025年度教育機構(gòu)場地租賃合同終止及教學(xué)資源共享協(xié)議4篇
- 2024版區(qū)域公司運營合作合同版B版
- 貨幣金融學(xué):第1章 貨幣與貨幣制度
- 2025年度企業(yè)年會場地借用及服務(wù)保障合同范本3篇
- 個人機械租賃協(xié)議書(2024版)
- 2024資金擔(dān)保協(xié)議范本
- 專業(yè)木工班組2024年施工分包合同
- C及C++程序設(shè)計課件
- 帶狀皰疹護理查房
- 公路路基路面現(xiàn)場測試隨機選點記錄
- 平衡計分卡-化戰(zhàn)略為行動
- 國家自然科學(xué)基金(NSFC)申請書樣本
- 幼兒教師干預(yù)幼兒同伴沖突的行為研究 論文
- 湖南省省級溫室氣體排放清單土地利用變化和林業(yè)部分
- 材料設(shè)備驗收管理流程圖
- 培訓(xùn)機構(gòu)消防安全承諾書范文(通用5篇)
- (完整版)建筑業(yè)10項新技術(shù)(2017年最新版)
- 第8期監(jiān)理月報(江蘇版)
評論
0/150
提交評論