Arduino雷達(dá)使用Android移動(dòng)應(yīng)用程序
該系統(tǒng)可以檢測(cè)障礙物并收集距離和角度信息,并且可以通過移動(dòng)應(yīng)用程序通過藍(lán)牙進(jìn)行控制。
Arduino雷達(dá)使用Android移動(dòng)應(yīng)用程序
本項(xiàng)目是一個(gè)由超聲波傳感器和伺服電機(jī)驅(qū)動(dòng)的雷達(dá)系統(tǒng)。該系統(tǒng)可以檢測(cè)障礙物并收集距離和角度信息,并且可以通過移動(dòng)應(yīng)用程序通過藍(lán)牙進(jìn)行控制。該系統(tǒng)為用戶提供了目標(biāo)識(shí)別和自動(dòng)射擊等功能。
系統(tǒng)的關(guān)鍵組件
?HC-SR04超聲波傳感器:用于測(cè)量目標(biāo)的距離。
?SG90和MG995伺服電機(jī):用于雷達(dá)掃描和發(fā)射。
?藍(lán)牙模塊(HC-05 / HC-06/ESP32):允許數(shù)據(jù)無線傳輸?shù)揭苿?dòng)應(yīng)用程序。
?ESP32 / Arduino:處理傳感器數(shù)據(jù)并將其傳輸?shù)綉?yīng)用程序。
?TCRT5000:檢查是否有子彈。
?LM2596電源模塊:為電路供電。
?移動(dòng)應(yīng)用程序:允許用戶控制和監(jiān)視雷達(dá)單元的界面。
第一步:如何使用
發(fā)送和接收數(shù)據(jù)
傳感器和伺服電機(jī)數(shù)據(jù):雷達(dá)系統(tǒng)通過藍(lán)牙將距離、角度和發(fā)射信息發(fā)送到移動(dòng)應(yīng)用程序。
樣本數(shù)據(jù)格式:20|25|1|1\rn
?20:距離(cm)
?25:伺服電機(jī)角度(度)
?1:是否有子彈(1:有,0:沒有)
?1:系統(tǒng)活動(dòng)狀態(tài)(1:running, 0: STOPING)
移動(dòng)應(yīng)用命令:用戶可以通過應(yīng)用程序向雷達(dá)系統(tǒng)發(fā)送命令。
命令格式示例:fire&set_value&on_off&oto_mode
樣本數(shù)據(jù):1&50&1&0\rn
?1:點(diǎn)火命令(1:著火,0:不著火)
?50:目標(biāo)距離限制(厘米)
?1:系統(tǒng)開/關(guān)狀態(tài)(1:?jiǎn)?dòng)CMD, 0:停止CMD)
?0:自動(dòng)模式(1:激活,0:關(guān)閉)
移動(dòng)應(yīng)用程序和控制面板
該應(yīng)用程序?yàn)橛脩籼峁┮韵驴刂七x項(xiàng):
藍(lán)牙連接:按“BT_SELECT”鍵與雷達(dá)單元通信。
系統(tǒng)運(yùn)行/停止:用“開始”按鈕激活系統(tǒng)。
目標(biāo)距離設(shè)置:通過“設(shè)置控制距離”輸入距離值。
自動(dòng)射擊模式:通過勾選“自動(dòng)射擊”框來激活。
子彈控制:如果有子彈,系統(tǒng)可以被激活。
完成的項(xiàng)目版本如上所示。
本文編譯自hackster.io