防撞擺閘模塊設計防撞擺閘
防撞擺閘模塊需要根據防撞擺閘系統的功能要求,實現與多種外部設備的串口協議通信,從而實現對設備的控制和數據反饋。該模塊通過封裝定制協議,在模塊內實現數據收發控制管理,然后提供函數接口供相關模塊調用,防撞擺閘系統設備控制模塊需要具有通信穩定、安全可靠的特點。
防撞擺閘系統控制模塊的設計;
首先,數據幀定義。防撞擺閘的設備控制模塊與IO模塊、通行算法模塊之間的通信采用主從通信模式,主動啟動通信的是命令幀、命令接收者回復相應的應答幀,設備控制模塊與硬件相互主從。針對防撞擺閘的需要,需要實現串口通信的穩定性和安全性,因此需要定義可靠的通信協議,使兩者之間的通信分為命令幀和應答幀,
第二,收發控制流程。防撞擺閘控制系統和硬件部件之間的通信采用主從方式,雙方互為主從關系,現以控制系統為主設備為例,介紹詳細的收發流程,當外部模塊調用設備控制函數接口時,將參數傳遞給接口函數,接口函數實現協議命令幀的組幀,并將數據添加到數據發送隊列中。當防撞擺閘的數據檢測定時器檢測到有數據時,取出一幀數據,同時啟動發送控制定時器進行數據發送控制,從機器收到數據后,將回復數據發送到串口,收發接口將數據添加到接收隊列,數據接收控制處理流程從接收隊列中取出數據,終止發送控制定時器,同時接口函數返回。
第三,異常處理。由于防撞擺閘串口通信易受外界干擾等影響,通信不穩定。在數據發送過程中,數據重新發送,如應答響應超時、幀序號錯誤、CRC校驗錯誤等。,定時器觸發定時重新發送數據,超過防撞擺閘設定重新發送次數時退出。