仝夢豪 丁學(xué)文 普靖雯 黃健 朱鑫沖 李俊杰
摘要:在大數(shù)據(jù)環(huán)境下,智能設(shè)備的發(fā)展非常迅速,傳統(tǒng)的小車在攜帶方面比較麻煩,同時也不具備遠程遙控功能,而且之前的監(jiān)控設(shè)備大部分都只能固定在一個位置不能移動。針對這些問題以及為了能夠更好地對房屋和家用電器進行管理與監(jiān)控,在傳統(tǒng)智能小車的基礎(chǔ)上設(shè)計了一款基于Arduino的智能小車遠程監(jiān)控系統(tǒng)。該系統(tǒng)的成本以及功耗方面都很低,具有很好的便攜性,同時也可與普通的智能移動設(shè)備相連接來實現(xiàn)遠程控制與實時視頻傳輸,具有很好的發(fā)展前景。
關(guān)鍵詞:Arduino;WiFi;藍牙;控制終端;監(jiān)控
中圖分類號:TP273文獻標(biāo)志碼:A文章編號:1008-1739(2020)20-59-4
在21世紀(jì)的大數(shù)據(jù)背景下,日常生活中的智能化技術(shù)發(fā)展非常迅速,人們也越來越依靠這些新生的智能設(shè)備,智能設(shè)備的覆蓋范圍非常大。智能小車系統(tǒng)基于Arduino開發(fā)平臺,通過上位機對智能小車的各個部分進行控制,各個模塊之間亦可以互相進行控制,并將數(shù)據(jù)反饋給Arduino單片機,在日常生活中有很大用處。
利用移動終端控制Arduino智能車,實現(xiàn)對家庭環(huán)境和房屋的遠程實時監(jiān)控。在移動終端的智能車控制界面上,用戶可以對智能車進行遠程控制和監(jiān)控平臺的調(diào)整,實現(xiàn)用戶對家庭突發(fā)事件的感知和及時處理。此系統(tǒng)設(shè)計的意義不僅僅是可以方便家庭的管理,更重要的是可以及時觀測到突發(fā)事件的發(fā)生,可以較大程度地降低人類生命財產(chǎn)安全的損失。
系統(tǒng)硬件部分包括Arduino單片機、電機驅(qū)動模塊、WiFi模塊、藍牙模塊、電源模塊、攝像頭模塊和超聲波避障模塊等。系統(tǒng)組成框圖如圖1所示。
Arduino單片機是整車的“大腦”,控制各模塊之間的通信并執(zhí)行功能。小車直流電機由L298p芯片驅(qū)動,通過處理指令來進行電機的正反轉(zhuǎn)控制,使小車可以在前、后、左、右方向運動和停止。小車采用了9 g舵機來進行HC-SR04超聲波模塊的旋轉(zhuǎn),使得超聲波模塊能夠測量小車周圍物體與小車之間的距離,并將數(shù)據(jù)返回到控制終端,以便能夠確定其可以繼續(xù)運動的方向。小車還配有無線遙控模塊,用戶可以通過藍牙或無線網(wǎng)絡(luò)連接小車的上位機,完成指令傳輸,從而遙控小車。攝像頭模塊與云臺相結(jié)合,允許用戶控制和接收視頻信號,并通過自身的旋轉(zhuǎn)來帶動攝像頭模塊的旋轉(zhuǎn)。
(1)控制模塊
Arduino單片機是一種感應(yīng)和控制真實物理世界的工具,包括基于單片機的硬件平臺,開源軟件的開發(fā)環(huán)境和Arduino單片機程序編寫軟件。通過處理來自藍牙模塊或WiFi模塊的指令來控制車輛的各個模塊,從而根據(jù)需要進行各種運動,并控制小車自動避障等操作。
(2)電機驅(qū)動模塊
L298P由與Arduino兼容的大電流電機驅(qū)動,該電機驅(qū)動模塊有4個控制端口,從而減少了Arduino數(shù)字端口的使用,節(jié)省了控制器的端口。此外,電機驅(qū)動模塊的控制指令編寫也很簡單。該模塊的供電有Arduino-vin供電和外部電源2種方式,用戶可以自己選擇,并且電機驅(qū)動模塊可以直接控制2個直流電機,最大驅(qū)動電流為2 A,因此可以很容易地控制小車中使用的直流電機的速度和方向。
(3)攝像頭模塊
使用攝像頭模塊實時監(jiān)視小車周圍的環(huán)境,小車的攝像頭模塊就像一對小車的眼睛,這使小車成為一個無線遙控視頻傳輸裝置,攝像機模塊對小車在行駛過程中的路況判斷也有很大的幫助。攝像頭模塊基于TTL通信接口,可以很方便地與Arduino單片機連接并通過Arduino單片機的串口進行視頻數(shù)據(jù)的讀取,通過Arduino單片機將采集到的視頻數(shù)據(jù)傳輸?shù)娇梢苿釉O(shè)備中,可以更加直觀地判斷對小車的下一步操作。
(4)測速傳感器模塊
通過光電測速傳感器來對小車輪胎之間的速度差進行計算,之后利用PWM信號控制小車進行直線行駛或轉(zhuǎn)彎等,同時還可以通過該模塊采集小車的速度等信號。
通過測速模塊計算通過的編碼器碼盤數(shù)產(chǎn)生高低電平,再由單片機判斷測速模塊的高低電平的上升沿計算通過碼盤孔數(shù),然后計算當(dāng)前小車行駛的速度,計算公式為:
式中,表示輪胎半徑,單位cm;表示時間內(nèi)經(jīng)過的編碼器孔數(shù);表示定時中斷的時間,單位s。
(5)舵機模塊
舵機接收來自Arduino的控制信號來驅(qū)動電機轉(zhuǎn)動,電機經(jīng)過齒輪組的減速后將動力傳動至舵盤。同時舵機的位置還會被位置檢測器檢測并通過檢測器將此時的位置信號反饋給控制電路以此來判斷是否到達了指定位置,并計算出此時舵機所在的位置與速度。
(6)超聲波避障模塊
(7)電源模塊
電源模塊由充電電池組成,給Arduino單片機、舵機模塊、超聲波模塊、WiFi模塊、光電測速模塊及藍牙模塊等供電。
(8)藍牙模塊
小車的藍牙模塊為HC-06型藍牙模塊,用戶在操作時需要先將自己手機上的藍牙打開并與小車的藍牙配對。配對成功后,小車與手機就可以進行雙向?qū)崟r通信,用戶通過自己的手機來對小車進行控制,小車的藍牙模塊則負責(zé)接收指令并將指令傳送到Arduino進行處理,并控制各個模塊進行對應(yīng)操作。
(9)WiFi模塊
當(dāng)模塊啟動成功后,WiFi模塊便會開始監(jiān)聽端口,等待與客戶端進行連接。當(dāng)用戶的客戶端連接到WiFi模塊的熱點后,用戶便可通過App來分別進行對小車指令的下達和接收小車反饋的視頻數(shù)據(jù)。
WiFi智能小車的軟件主要分為命令接收部分、執(zhí)行部分、信號采集并處理回傳收集到的信息。
2.1系統(tǒng)主程序
系統(tǒng)主程序主要完成對系統(tǒng)中各模塊的初始化工作,同時執(zhí)行電腦等終端設(shè)備所發(fā)送的命令,等待外部中斷以及根據(jù)所需要的功能進行相應(yīng)操作,主程序流程圖如圖2所示。
2.2自動避障子程序
通過超聲波傳感器來判斷小車目前的行駛狀態(tài),并判斷周圍的障礙物與小車的距離是否低于事先設(shè)定的閾值[4],然后依次判斷前、左、右、后方障礙物距離,直到找到無障礙方向,繼續(xù)行駛。自動避障子程序流程如圖3所示。
2.3舵機控制程序
舵機在0°~180°不斷轉(zhuǎn)動,通過Arduino的普通數(shù)字引腳產(chǎn)生占空比不同的方波,模擬產(chǎn)生PWM信號進行舵機控制。在每次開機的時候,舵機都會先進行一次初始化,將位置恢復(fù)成原位。之后便會等待指令信號的輸入并進行下一步動作,舵機控制程序流程如圖4所示。
系統(tǒng)主要有小車驅(qū)動和超聲波測距兩大模塊需要進行調(diào)試,調(diào)試時先對這2個模塊進行單獨調(diào)試。之后,再對小車進行整體調(diào)試,若出現(xiàn)問題,再尋找出現(xiàn)問題的模塊進行調(diào)試。
3.1調(diào)試超聲波模塊
在進行此模塊的調(diào)試時,直接將此模塊的4個引腳與Arduino單片機對應(yīng)引腳相連,并將對應(yīng)程序下載到單片機中,測試能否正常發(fā)送超聲波以及接收超聲波,能否將接收到的數(shù)據(jù)返回給單片機進行處理。
3.2電機調(diào)試
調(diào)試電機模塊時,先把電機部分的程序下載到單片機中,開機運行后發(fā)現(xiàn)小車不停地原地旋轉(zhuǎn),首先想到的是小車的避障模塊出現(xiàn)問題,誤判周圍始終有障礙物,但對避障模塊單獨測試后發(fā)現(xiàn)并無問題。于是對小車的電機模塊進行測試,最終發(fā)現(xiàn)小車與單片機之間的接線出現(xiàn)問題,進行修改后,小車可以正常運行。
3.3總體系統(tǒng)測試
通過調(diào)試WiFi或藍牙對小車的控制效果來保證小車與移動終端的連接質(zhì)量以及指令傳輸速度和執(zhí)行速度,移動設(shè)備端操作平臺如圖5所示。
測試小車的自動避障功能,把小車放在一個事先設(shè)置好障礙的路線上,看其能否避開障礙流暢行駛;然后測試一下小車的攝像頭是否能夠正常工作,是否可以通過上位機清晰地把視頻實時傳輸?shù)揭苿釉O(shè)備上。最后,再測試一下小車的舵機控制部分能否在每次開機時正常初始化并利用終端進行控制。
基于Arduino的智能小車遠程監(jiān)控裝置,把攝像頭采集的視頻實時傳輸?shù)脚c小車連接的移動設(shè)備中,用戶可以通過WiFi或者藍牙與小車連接來遠程控制小車,從而很好地實現(xiàn)了實時監(jiān)控房屋以及家居設(shè)施的目的。在經(jīng)過一系列的調(diào)試與修改之后表明,系統(tǒng)具有很好的實用性以及可靠性,在很多領(lǐng)域都可以應(yīng)用。智能小車的發(fā)展不僅是大數(shù)據(jù)背景下應(yīng)運而生的新生產(chǎn)物,更是物聯(lián)網(wǎng)系統(tǒng)的良好應(yīng)用,還可以促進智能小車領(lǐng)域的發(fā)展以及機械感知能力的提升。
參考文獻
[1]李彬彬,王建花,羅津,等.基于Arduino平臺的WIFI智能遙控小車設(shè)計[J].電子世界,2016(22):92-93.
[2]李肅義,王寧,樊蒙璇,等.無線遙控視頻監(jiān)控小車的設(shè)計[J].吉林大學(xué)學(xué)報(信息科學(xué)版),2017,35(2):146-152.
[3]溫芮,陳錦鴻,王麗.基于藍牙控制技術(shù)的智能小車控制系統(tǒng)設(shè)計[J].汽車零部件,2019(12):1-4.
[4]岳俊峰,李秀梅.基于機器視覺的智能小車自動循跡及避障系統(tǒng)[J].杭州師范大學(xué)學(xué)報(自然科學(xué)版),2020,19(2):200-207.
[5]翟麗杰.一種基于WiFi的無線智能視頻小車設(shè)計[J].電子設(shè)計工程,2019,27,(11):146-149,153.
[6]鄧二偉.可移動無線視頻監(jiān)控系統(tǒng)[J].信息通信,2016(7): 69-70.