彭井花
(陽光學院人工智能學院,福建福州 350015)
共享單車的出現既方便了人們的日常出行,也符合國家節能減排的政策.但有些人為了趕時間就會加快行駛速度,剎車不及時很容易出現交通事故,對自己和他人的生命安全都會造成影響.解決這一問題最行之有效的方式就是在共享單車上加一測速報警裝置,超過一定速度單車就會自動發出警報聲及時提醒騎車人減速,降低因共享單車超速引發的交通事故的頻率[1-2].因此,本文提出一套共享單車車速檢測報警系統的設計方法,一方面能夠在共享單車超速時發出報警提示,提醒騎車人降速保證騎車人的安全;另一方面可以在騎車人因超速出現交通安全問題時,給共享單車運營方的監控中心提供責任劃分和相應賠償所需的參考依據.該系統可以將共享單車一段時間內的行駛里程、瞬時速度和平均速度在共享單車固定的LCD上顯示出來.若出現超速則報警系統給騎車人發出語音報警,提醒騎車人減速;并把超過閥值的數據、超速時間和共享單車的編號通過短信發送給共享單車運營方的監管中心,而且該系統能去除或保留原先的里程數.

圖1 系統框圖Fig.1 Diagram of System
共享單車車速檢測報警系統采用STC12C5A60S2單片機擔任核心控制器件,主要有主控芯片、霍爾測速模塊、語音播報模塊、SIM800C模塊、LCD顯示器、數據存儲等電路;霍爾傳感器實時采集轉速信息并發送至單片機進行處理,單片機控制LCD1602液晶屏顯示單車時速、報警速度、平均速度和行駛總里程、單車編號.單車行駛速度超過設定的報警數值時,系統自動觸發報警:語音播報模塊播放報警語音、SIM800C模塊向指定手機發送報警短信提示.系統主要框圖如圖1所示.

圖2 霍爾測速接口電路Fig.2 Diagram of hall speed measurement interface circuit
霍爾測速原理:霍爾效應是電磁效應中的一種,它反映的是磁場和電壓之間的關系,當磁場中的導體有電流經過時,會產生一個作用力,該作用力會使載流子發生偏移,與此同時會產生一個附加電場,使導體兩端的電壓發生變化,從而產生電勢差,這就是所謂的霍爾效應[3].霍爾電壓的大小和所在環境中磁場的變化成正比.在信號的接收端要求所接收的信號應大于一定值,小于該值時接收不到信號.霍爾效應產生的電壓比較小,需要經過放大電路將該信號進行放大處理后再使用.系統采用的霍爾傳感器模塊內置LM393比較器,可以直接輸出高低電平,具有較強的驅動能力[4].
霍爾測速電路如圖2所示.霍爾傳感器的信號引腳SP與單片機P3.4連接.在單車輪胎上安裝霍爾傳感器,單車行駛,輪胎轉動,這時輪軸會發出連續的脈沖信號,經放大電路將信號放大,最后輸出可用的計數脈沖.在單片機輸入端接收到這些脈沖,統計相鄰脈沖間發出的時間間隔,便可以計算出該轉速值并在顯示器上顯示.

圖3 語音播報電路Fig.3 Diagram of voice broadcast circuit
采用兩種報警模式:語音播報、SIM800C短信發送提示.
2.2.1 語音播報電路 本文采用HSC-U007模塊完成語音播報功能.該模塊是一個提供串口的MP3芯片,具有支持串口點播指定歌曲、文件列表、ID3、EQ、全文件名、A/D按鍵和串口控制I/O口等功能.可對MP3、WMA和WAV三種語音格式進行解碼操作[5].
語音播報電路如圖3所示.MP3模塊的SP+和SP-引腳連接擴音器,串口RX和TX分別與單片機的P1.3和P1.2端口連接.觸發報警時,語音播報模塊自動播放“超速報警,請減速”的語音提示.

圖4 SIM800C模塊接口電路Fig.4 Diagram of SIM800C module interface circuit
2.2.2 SIM800C模塊接口電路 短信發送提示警報模式由SIMCOM公司的GSM/GPRS模塊SIM800C實現,單片機與SIM800C模塊連接接口電路如圖4所示.單片機的TxD引腳(P3.1)與模塊的RxD連接,RxD引腳(P3.0)與模塊的TxD連接,二者的GND共在一起,單片機經串口對SIM800C模塊通過AT命令控制操作就可實現單片機與該模塊的通訊[6].

圖5 系統主程序流程圖Fig.5 Flowchart of System
3.1 系統主程序設計
系統主程序在上電后會首先初始化單片機UART、SPI和中斷等硬件資源.初始化結束之后,主程序循環掃描調用各個功能子程序,如速度檢測、LCD顯示以及是否調用報警子程序等,完成單車行駛過程中速度和里程檢測、數據顯示和超速報警提示等功能.系統主程序流程圖如圖5所示.
3.2.1 速度檢測子程序 車輪旋轉一周,霍爾傳感器將給單片機輸送兩個脈沖信號(車輪上安裝了兩個鋼磁,兩個鋼磁有利于減少誤差),每獲得兩個脈沖信號,便對系統進行一次中斷,每次中斷代表共享單車車輪旋轉一周,中斷數n與共享單車車輪周長L的乘積即為共享單車行駛的里程S.通過對單位時間內里程的計算,便可以得出共享單車行駛的平均速度V,如公式(1)、(2)所示.瞬時速度是周長L與每中斷一次所需時間的比值,若共享單車超過限定速度,系統會發出報警信號,提醒騎車人減速.速度檢測流程圖如圖6所示.
S=L*n
公式(1)
V=S/t
公式(2)
3.2.2 報警子程序 系統每隔30 s將檢測結果與報警閾值進行比較,當檢測值大于設定值時,自動觸發語音播報和通過短信發送實時報警信息模式,持續關注此輛單車的動態.報警子程序如圖7所示.

圖6 速度檢測子程序流程圖Fig.6 Flowchart of speed detection subprogram圖7 報警子程序流程圖Fig.7 Flowchart of alarm subprogram

圖8 發送短信子程序流程圖Fig.8 Flowchart of send message subprogram
3.2.3 發送短信子程序 SIM800C GSM/GPRS 模塊可以通過AT指令AT+CMGS=“+86手機號碼”來設置接收端的手機號碼,通過指令AT+CMGF=0(AT+CMGF Select SMS message formate)可以將GSM/GPRS 模塊短信工作模式設置為PDU格式,如采用文本格式發送則設置指令AT+CMGF=1[7].
初始報警信息內容已經通過編碼存放于存儲器中,當需要發送時,可以從存儲器中直接調用發送.發送報警信息的信息發送流程圖如圖8所示.
本文應用霍爾測速模塊、語音播報模塊和GSM/GPRS等模塊設計并實現了共享單車車速檢測報警系統,并把超過閥值的數據、超速時間和共享單車的編號通過短信發送給共享單車運營方的監管中心.本設計系統性能穩定、成本低,能夠滿足人們日常對共享單車超速報警的基本需求,而且此測速報警系統可以在很多速度監控的場合使用,具有廣泛的應用前景.