本發明涉及傳感器數據采集領域,具體涉及一種高精度無線同步觸發采集系統及方法。
背景技術:
1、在需要使用多傳感器數據融合的場景,往往需要用到多傳感器數據同步采集技術,例如在電力測量領域,通常需要同時采集電壓和電流的數據,電壓電流的采集如果存在相位誤差將會造成功率計算的誤差;在聲學測量領域,如使用麥克風矩陣的聲學測量系統,需要測量分析多路麥克風信號的頻譜、相位等信息,因而需要使用同步采集;在智能駕駛領域,需要使用毫米波雷達、激光雷達、imu、相機的數據進行融合;在工程應用領域,對大尺寸結構檢測,如應變力檢測、晃動檢測等。
2、多個傳感器在同塊電路板上,實現多個傳感器數據同步采集比較容易,只需要讓多個傳感器使用相同的時鐘源即可以實現多個傳感器數據同步采集。但如果多個傳感器需要分布在不同的電路板上,每個傳感器都有自己的時鐘源,為了有效融合多個傳感器的感知數據,必須進行時間同步。如果需要分析相位信息,那么對同步的精度就會有很高的要求,否則會出現相位抖動的問題,引入相位噪聲。
3、現有技術實現時間同步一般是采用網絡授時協議ntp或者ptp協議完成時間同步,這兩種協議都是利用服務器端對客戶端進行授時,授時的精度與網絡的穩定性有很大關系,如果用在無線同步采集系統中,授時精度誤差會達到幾毫秒甚至幾十毫秒,這個授時精度不能用于無線同步采集系統中。
4、現有技術能夠實現高精度無線同步的方案只有使用全球衛星導航系統(gnss),全球4大衛星導航系統供應商,包括中國的北斗衛星導航系統(bds)、美國的全球定位系統(gps)、俄羅斯的格洛納斯衛星導航系統(glonass)和歐盟的伽利略衛星導航系統(galileo)。gnss中導航衛星內置高精度原子鐘,gnss接收機通過解算導航衛星信號,可以獲得超高精度的時鐘信號。多個傳感器的電路板上都采用gnss時間作為統一時間源,通過gnss給各個傳感器提供基準時間,各傳感器根據提供的基準時間校準各自的時鐘時間。這種是時間同步方案可以實現微秒甚至亞微秒級時鐘同步,但是只能用于戶外空曠的場地,必須是可以正常接收到全球衛星導航系統(gnss)衛星信號的位置才能夠使用,在室內、隧道、地下等應用場景無法使用。
5、在室內、隧道、地下等應用場景目前的技術方案大多采用線纜傳輸同步控制信號,采用線纜傳輸同步控制信號很難進行遠距離傳輸,有些場景也無法使用線纜傳輸同步控制信號。
技術實現思路
1、鑒于現有技術中存在的技術缺陷和技術弊端,本發明實施例提供克服上述問題或者至少部分地解決上述問題的一種高精度無線同步觸發采集系統及方法,具體方案如下:
2、作為本發明的第一方面,提供一種高精度無線同步觸發采集系統,所述系統包括數據采集終端和多個傳感器采集終端;
3、所述數據采集終端用于向多個所述傳感器采集終端廣播時間同步信號,接收多個所述傳感器采集終端回傳的傳感器數據,并將接收到的同步采樣數據轉發給上位機;
4、所述傳感器采集終端用于利用數據采集終端廣播的時間同步信號進行時間同步,并生成同步觸發信號,將所述同步觸發信號發送給傳感器,控制傳感器進行數據采集,根據傳感器采集的數據以及時間同步信號,對傳感器數據進行重構,生成同步采樣的傳感器數據并發送給數據采集終端。
5、進一步地,所述傳感器采集終端通過無線收發器與數據采集終端相連接,所述數據采集終端通過網線與上位機相連接。
6、進一步地,所述數據采集終端包括:
7、第一無線收發器:用于時間同步信號的接收和發射;
8、第一mcu處理單元:用于參數計算,各種定時器控制,發射數據處理,產生同步觸發信號,采集傳感器數據,傳感器數據上報,與上位機通信;
9、網絡接口:用于與上位機通信,完成數據傳輸和參數配置;
10、第一同步觸發信號端口,用于輸出同步觸發信號給傳感器,控制傳感器采集數據;
11、第一傳感器接口,用于讀取傳感器采集到的數據。
12、進一步地,所述數據采集終端所有的計算以及控制流程在第一mcu處理單元中完成,數據采集終端的具體實施過程包括:
13、步驟101,參數初始化,配置數據采集終端的最大覆蓋距離和同步觸發信號trig的輸出周期t;
14、步驟102,第一mcu處理單元根據數據采集終端的最大覆蓋距離計算出從發射時間同步信號到輸出同步觸發信號trig的延時;
15、步驟103,第一mcu處理單元根據同步觸發信號trig的輸出周期t,啟動第一周期定時器;
16、步驟104,第一mcu處理單元在第一周期定時器中斷里根據步驟102中輸出同步觸發信號trig的延時,啟動第一延時定時器,同時控制無線收發器,發射時間同步信號;
17、步驟105,第一mcu處理單元在第一延時定時器中斷里產生同步觸發信號trig,控制傳感器采集數據;
18、步驟106,第一mcu處理單元在主線程里等待傳感器采集數據,當傳感器采集到數據后,讀取傳感器采集數據并上報傳感器采集數據,主線程循環執行步驟106;
19、其中,數據采集終端通過第一周期定時器和第一延時定時器配合,周期性產生同步觸發信號trig,以觸發傳感器采集數據。
20、進一步地,所述傳感器采集終端包括:
21、第二無線收發器:用于時間同步信號的接收和發射;
22、第二mcu處理單元,用于參數計算,各種定時器控制,接收和發射數據處理,時鐘校準控制,產生同步觸發信號,采集傳感器數據以及傳感器數據上報;
23、dac數模轉換器,用于將數字信號轉換為模擬信號,通過控制模擬信號的大小,控制壓控晶振的輸出頻率;
24、壓控晶振:用于輸出時鐘給mcu處理單元,以使得mcu處理單元利用所述時鐘控制各種定時器產生相應的中斷,達到控制時序的效果;
25、第二同步觸發信號端口:用于輸出同步觸發信號給傳感器,控制傳感器采集數據;
26、第二傳感器接口:用于讀取傳感器采集到的數據。
27、進一步地,所述傳感器采集終端所有的計算以及控制流程在第二mcu處理單元中完成,傳感器采集終端的具體實施過程包括:
28、步驟201,參數初始化,配置傳感器采集終端的最大覆蓋距離d、傳感器采集終端到數據采集終端距離d以及同步觸發信號trig的輸出周期t;
29、步驟202,第二mcu處理單元根據傳感器采集終端的最大覆蓋距離d計算出從發射時間同步信號到輸出同步觸發信號trig的延時t4;
30、步驟203,第二mcu處理單元根據傳感器采集終端到數據采集終端距離d計算延時參數t5;
31、步驟204,第二mcu處理單元根據同步觸發信號trig的輸出周期t,計算延時參數t3;
32、步驟205,第二mcu處理單元等待接收數據采集終端的時間同步信號,當第二無線收發器收到數據采集終端的時間同步信號時,產生接收中斷,第二mcu處理單元響應接收中斷;
33、步驟206,第二mcu處理單元在接收中斷里根據同步觸發信號trig的輸出周期t以及本地時鐘計數值,計算出壓控晶振的輸出頻率與數據采集終端晶振的頻率之間的差值,基于所述差值,通過調整dac數模轉換器的輸出電壓,使壓控晶振的輸出頻率與數據采集終端晶振的頻率相同,同時根據參數t5啟動第二延時定時器,根據參數t3啟動第三延時定時器;
34、步驟207,第二mcu處理單元在第二延時定時器中斷里產生同步觸發信號trig,控制傳感器采集數據;
35、步驟208,第二mcu處理單元在第三延時定時器中斷里控制第二無線收發器發射中繼用的時間同步信號。
36、進一步地,
37、t3為傳感器采集終端從接收到數據采集終端的同步信號中斷到發射同步信號中繼的時間,t3=t–t2,其中,t2為在實驗室環境測量得到,為一個固定的值,不隨環境變化而改變;
38、t4為傳感器采集終端從發射同步信號到輸出同步觸發信號trig的延時,t4=d/c,c表示光速;
39、t5為傳感器采集終端從接收同步信號到輸出同步觸發信號trig的延時,t5=t4–t1-t2=(d-d)/c–t2,其中,t1為數據采集終端到傳感器采集終端的無線傳輸延時,t1=d/c。
40、作為本發明的第二方面,提供一種高精度無線同步觸發采集方法,所述方法包括:
41、通過數據采集終端向傳感器采集終端廣播時間同步信號,接收多個所述傳感器采集終端回傳的傳感器數據,并將接收到的傳感器數據轉發給上位機;
42、所述傳感器采集終端用于利用數據采集終端廣播的時間同步信號進行時間同步,并生成同步觸發信號,將所述同步觸發信號發送給傳感器,控制傳感器進行數據采集,根據傳感器采集的數據以及時間同步信號,對傳感器數據進行重構,生成同步采樣的傳感器數據并發送給數據采集終端。
43、進一步地,所述數據采集終端所有的計算以及控制流程在第一mcu處理單元中完成,數據采集終端的具體實施過程包括:
44、步驟101,參數初始化,配置數據采集終端的最大覆蓋距離和同步觸發信號trig的輸出周期t;
45、步驟102,第一mcu處理單元根據數據采集終端的最大覆蓋距離計算出從發射時間同步信號到輸出同步觸發信號trig的延時;
46、步驟103,第一mcu處理單元根據同步觸發信號trig的輸出周期t,啟動第一周期定時器1;
47、步驟104,第一mcu處理單元在第一周期定時器中斷里根據步驟102中輸出同步觸發信號trig的延時,啟動第一延時定時器,同時控制無線收發器,發射時間同步信號;
48、步驟105,第一mcu處理單元在第一延時定時器中斷里產生同步觸發信號trig,控制傳感器采集數據;
49、步驟106,第一mcu處理單元在主線程里等待傳感器采集數據,當傳感器采集到數據后,讀取傳感器采集數據并上報傳感器采集數據,主線程循環執行步驟106;
50、其中,數據采集終端通過第一周期定時器和第一延時定時器配合,周期性產生同步觸發信號trig,以觸發傳感器采集數據。
51、進一步地,所述傳感器采集終端所有的計算以及控制流程在第二mcu處理單元中完成,傳感器采集終端的具體實施過程包括:
52、步驟201,參數初始化,配置傳感器采集終端的最大覆蓋距離d、傳感器采集終端到數據采集終端距離d以及同步觸發信號trig的輸出周期t;
53、步驟202,第二mcu處理單元根據傳感器采集終端的最大覆蓋距離d計算出從發射時間同步信號到輸出同步觸發信號trig的延時t4;
54、步驟203,第二mcu處理單元根據傳感器采集終端到數據采集終端距離d計算延時參數t5;
55、步驟204,第二mcu處理單元根據同步觸發信號trig的輸出周期t,計算延時參數t3;
56、步驟205,第二mcu處理單元等待接收數據采集終端的時間同步信號,當第二無線收發器收到數據采集終端的時間同步信號時,產生接收中斷,第二mcu處理單元響應接收中斷;
57、步驟206,第二mcu處理單元在接收中斷里根據同步觸發信號trig的輸出周期t以及本地時鐘計數值,計算出壓控晶振的輸出頻率與數據采集終端晶振的頻率之間的差值,基于所述差值,通過調整dac數模轉換器的輸出電壓,使壓控晶振的輸出頻率與數據采集終端晶振的頻率相同,同時根據參數t5啟動第二延時定時器,根據參數t3啟動第三延時定時器;
58、步驟207,第二mcu處理單元在第二延時定時器中斷里產生同步觸發信號trig,控制傳感器采集數據;
59、步驟208,第二mcu處理單元在第三延時定時器中斷里控制第二無線收發器發射中繼用的時間同步信號。
60、本發明具有以下有益效果:
61、本發明可以在沒有全球衛星導航系統(gnss)衛星信號的位置實現多個傳感器電路板實現高精度無線同步數據的采集,使用本發明的技術方案時間同步可以實現微秒級甚至亞微秒級同步,完全可以滿足多個傳感器采集數據進行相位分析或者3d重建等應用場景的需求。