儲 光,余 堯
(淮南職業(yè)技術(shù)學(xué)院, 安徽 淮南 232001)
我國橋梁建設(shè)已經(jīng)進入了快速發(fā)展階段,然而由于各種荷載的反復(fù)作用、材料的疲勞與腐蝕,以及洪水、海嘯、地震、颶風(fēng)等自然因素破壞,使得橋梁的安全性能逐漸降低并且影響其繼續(xù)服役。橋梁在使用過程中,需對橋梁的健康狀況進行實時監(jiān)測。騰訊云是一種云計算技術(shù),將騰訊云技術(shù)應(yīng)用于橋梁健康監(jiān)控可以實現(xiàn)橋梁的實時監(jiān)測、評估和預(yù)警,對于突發(fā)事件提前預(yù)警能夠有效避免事故發(fā)生。此外,騰訊云橋梁健康監(jiān)控系統(tǒng)還可以對橋梁結(jié)構(gòu)進行長期監(jiān)測,實現(xiàn)對橋梁的全面管理和維護。以STM32單片機為控制核心,結(jié)合傳感器技術(shù)和騰訊云設(shè)計了一套橋梁健康狀態(tài)監(jiān)測系統(tǒng),利用騰訊云的大數(shù)據(jù)處理能力和多樣化通信協(xié)議,可以高效實現(xiàn)橋梁健康監(jiān)測系統(tǒng)的實時響應(yīng)能力。
系統(tǒng)以互聯(lián)網(wǎng)為橋梁,以STM32單片機為控制核心,基于騰訊云服務(wù)器,既實現(xiàn)了橋梁就地控制,也可實現(xiàn)遠程數(shù)據(jù)集控功能。系統(tǒng)組成主要分為以下部分及功能,云服務(wù)器部分,負責(zé)遠程數(shù)據(jù)解析和轉(zhuǎn)發(fā)。上位機管理系統(tǒng)、安全監(jiān)控中心系統(tǒng),用于職能部門管理。簡易三維模型系統(tǒng),用于職能部門監(jiān)控和管理。視頻流服務(wù)部分,提供職能部門監(jiān)控和管理。本地數(shù)據(jù)采集系統(tǒng),負責(zé)數(shù)據(jù)采集、上傳和動態(tài)自動管理。本地語音播報系統(tǒng),實現(xiàn)實時語音播報。本地OLED屏顯示,實現(xiàn)現(xiàn)場實時數(shù)據(jù)顯示。本地視頻采集系統(tǒng),負責(zé)采集實時視頻。系統(tǒng)運行后,主要實現(xiàn)以下功能:橋梁實時安全監(jiān)測,并實現(xiàn)了動態(tài)實時調(diào)控,當(dāng)橋梁兩側(cè)承重不平衡時,系統(tǒng)自動啟動關(guān)閉相應(yīng)車道,直到兩側(cè)平衡在安全的范圍內(nèi)。當(dāng)橋梁承重超過了總承重的設(shè)計要求時,啟動關(guān)閉車道,確保安全。當(dāng)橋面橫風(fēng)風(fēng)力超過安全值時,系統(tǒng)啟動車流管理,并語音提示及播報。通過騰訊云服務(wù)器,實現(xiàn)了遠程互聯(lián)網(wǎng)組網(wǎng)管理。系統(tǒng)拓撲圖如圖1所示。
圖1 系統(tǒng)拓撲圖
系統(tǒng)采用Stm32f103zet6單片機開發(fā)板,利用RS485協(xié)議采集4路拉力傳感器實時數(shù)據(jù),同時設(shè)置1路警報器,負責(zé)報警,配合風(fēng)速、風(fēng)向傳感器采集,語音驅(qū)動播報系統(tǒng),最后通過騰訊云上傳和儲存數(shù)據(jù)。Stm32部分硬件如圖2、圖3所示,監(jiān)測平臺的硬件構(gòu)架圖如圖4所示。平臺設(shè)計搭建主要所使用的四個傳感器模塊分別為:拉力傳感器、溫度傳感器、風(fēng)速風(fēng)向傳感器以及語音模塊。第一,拉力傳感器,型號HX711,系統(tǒng)四塊拉力傳感器用于監(jiān)測橋的穩(wěn)定性,傳感器分布在橋梁牽引繩對稱位置,對橋梁進行拉力檢測并實時傳輸數(shù)據(jù)給接收模塊。第二,使用PL2108G配合pt100搭建溫度傳感器檢測和顯示模塊,對橋梁四周的溫度進行檢測,并顯示實時數(shù)值。第三,風(fēng)速、風(fēng)向傳感器,型號NHFSX48,主要檢測橫風(fēng)、臺風(fēng)對橋體的影響,并把實時數(shù)據(jù)傳送到單片機中進行數(shù)據(jù)轉(zhuǎn)換。第四,語音模塊,當(dāng)橋體受到橫風(fēng)影響或者橋體兩側(cè)拉力不平衡時進行語音播報。
圖2 Stm32的RS485硬件電路圖
圖3 Stm32的電源硬件電路圖
圖4 硬件構(gòu)架圖
系統(tǒng)主程序主要包括系統(tǒng)初始化程序(I/O口初始化,就地液晶屏初始化),傳感器數(shù)據(jù)采集及處理程序(485協(xié)議),液晶屏數(shù)碼管顯示程序,按鍵檢測和處理程序,主程序以及騰訊云通信存儲運算程序,就地遠程客戶端界面數(shù)據(jù)傳輸及顯示程序等。系統(tǒng)主程序流程如圖5所示。
圖5 主程序流程圖
Stm32的傳感器數(shù)據(jù)采集485通信程序示例如下。
#include "RS485/rs485.h"
uint16_t rs485_len;
uint8_t rs485_buf[20];
void _ST_MAXLED_CMD_CRC(uint8_t* in_dat, uint8_t length, uint8_t* out_dat)
{ uint8_t j;
uint16_t reg_crc=0Xffff;
while(length--){
reg_crc ^= *in_dat++;
for(j=0;j<8;j++){
if(reg_crc &0x01){ /* LSB(b0)=1 */
reg_crc=(reg_crc>>1) ^ 0Xa001;
}else{ reg_crc=reg_crc >>1;}}}
out_dat[0] = reg_crc;
out_dat[1] = reg_crc>>8;}
void _ST_MAXLED_SetNum(uint8_t addr,uint16_t num)
{ uint8_t cmd[8] = {0x01,0x06,0x00,0x00,0x00,0x01,0x00,0x00};
cmd[3] = addr;
cmd[4] = num;
cmd[5] = num>>8;
_ST_MAXLED_CMD_CRC(cmd,6,&cmd[6]);
RS485_SendArray(cmd,8);
osDelay(30);}
void _TEMP_CMD_getNum(void)
{ uint8_t cmd[8] = {0x04,0x03,0x00,0x01,0x00,0x01,0x00,0x00};
_ST_MAXLED_CMD_CRC(cmd,6,&cmd[6]);
RS485_SendArray(cmd,8);
osDelay(50);}
void _WINDSPEED_CMD_getNum(void)
{ uint8_t cmd[8] = {0x02,0x03,0x00,0x00,0x00,0x01,0x00,0x00};
_ST_MAXLED_CMD_CRC(cmd,6,&cmd[6]);
RS485_SendArray(cmd,8);
osDelay(50);}
void _WINDDIR_CMD_getNum(void)
{ uint8_t cmd[8] = {0x03,0x03,0x00,0x01,0x00,0x01,0x00,0x00};
_ST_MAXLED_CMD_CRC(cmd,6,&cmd[6]);
RS485_SendArray(cmd,8);
osDelay(50);}
void get_temp(void);
void get_wind_speed(void);
void get_wind_dir(void);
void update_max_led(void)
{ get_temp();
get_wind_speed();
get_wind_dir();
_ST_MAXLED_SetNum(0,(uint16_t)(sensor_dat.pull_val[0]*10));
_ST_MAXLED_SetNum(1,(uint16_t)(sensor_dat.pull_val[1]*10));
_ST_MAXLED_SetNum(2,(uint16_t)(sensor_dat.pull_val[2]*10));
_ST_MAXLED_SetNum(3,(uint16_t)(sensor_dat.pull_val[3]*10));
_ST_MAXLED_SetNum(4,(uint16_t)(sensor_dat.temp*10));
_ST_MAXLED_SetNum(5,(uint16_t)(sensor_dat.wind_speed*10));
_ST_MAXLED_SetNum(6,(uint16_t)(sensor_dat.wind_dir*10));}
void get_temp(void)
{ RS485_GetData(rs485_buf);
_TEMP_CMD_getNum();
rs485_len = RS485_GetData(rs485_buf);
if(rs485_len>0) {
sensor_dat.temp = (rs485_buf[3]*256+rs485_buf[4])/10.0;}
osDelay(30);}
在“騰訊云”基礎(chǔ)上自制一個橋梁健康監(jiān)測平臺,可以實現(xiàn)多地遠程檢測操作。橋梁健康在線監(jiān)測平臺如圖6所示。
圖6 在線監(jiān)測平臺
經(jīng)過實際系統(tǒng)平臺搭建進行測試,對采集數(shù)據(jù)多次測試,根據(jù)現(xiàn)場進行溫度等參數(shù)補償,保證測量的準(zhǔn)確性。在上位機設(shè)置參數(shù)可以動態(tài)調(diào)整,可以實時修改報警值與控制閾值,滿足不同地區(qū)不同天氣情況參數(shù)可調(diào)并能夠?qū)崟r上傳與寫入,確保各設(shè)備與數(shù)據(jù)云的通信確保準(zhǔn)確可靠,不會發(fā)生丟包延遲情況,最終平臺搭建如圖7所示。經(jīng)過多次測試,系統(tǒng)能夠滿足設(shè)計要求,在不同情況下,系統(tǒng)能夠檢測出橋梁異常現(xiàn)象并進行限流控制,實時監(jiān)控圖如圖8所示。
圖7 橋面監(jiān)控系統(tǒng)
圖8 實時監(jiān)控檢測出橋面異常并進行限流
平臺運行后,實現(xiàn)了橋梁實時安全監(jiān)測和動態(tài)實時調(diào)控功能。當(dāng)橋梁兩側(cè)承重不平衡時,系統(tǒng)自動啟動,關(guān)閉相應(yīng)車道,直到在安全的閾值范圍內(nèi)橋梁達到兩側(cè)受力平衡;當(dāng)橋梁承重超過了總承重的設(shè)計要求時,關(guān)閉車道,確保橋梁安全;當(dāng)橋面橫風(fēng)風(fēng)力超過閾值時,系統(tǒng)啟動車流管理,并語音提示及播報,通過騰訊云服務(wù)器,實現(xiàn)了遠程互聯(lián)網(wǎng)組網(wǎng)管理。系統(tǒng)結(jié)合了計算機及互聯(lián)網(wǎng)相關(guān)知識,實現(xiàn)了對大橋健康數(shù)據(jù)實時動態(tài)監(jiān)控和管理,確保橋梁安全可靠運行,從而有力保障了公共交通安全。