本發明涉及數據標準化處理和時間同步技術,尤其涉及一種應用基于高速數據采集器的plc時間戳數據標準化處理技術而實現的數據時間同步方法及系統。
背景技術:
技術詞解釋:
ntp服務器:networktimeprotocol(ntp),即網絡時間服務器。
工業數據的實時采集已經成為工業信息化的基礎支撐。其中,對于工業數據的真實性和實時性也有了更高的要求。針對工業數據的采集實時性問題,現有技術采用了不同的方案來解決,但均存有不少的缺陷,例如:1、采用在plc使用前先進行時間同步,將plc時間與標準時間進行同步這一方案,但是這一方案具有較大的局限性,而且對plc的修改較大,操作靈活性和便利性差;2、采用直接從plc讀取數據這一方案,但是由于plc內部時間不一定準確,從而給結果帶來一定不可靠性;3、采用在plc使用過程中直接用普通數據采集器采集到的時間戳作為plc時間這一方案,但是這一方案的可靠性較低,因為普通數據采集器往往無法實現實時處理數據,數據在普通數據采集器中有堆積,會造成處理滯后,無法真正實現實時數據采集。
技術實現要素:
為了解決上述技術問題,本發明的目的是提供一種基于高速數據采集器的時間同步方法,可實時真實地進行數據采集,實時性、真實性和可靠性高。
本發明的目的是提供一種基于高速數據采集器的時間同步系統,可實時真實地進行數據采集,實時性、真實性和可靠性高。
本發明所采用的技術方案是:一種基于高速數據采集器的時間同步方法,該方法包括的步驟有:
將高速數據采集器和后臺服務器均與ntp服務器進行時間同步;
高速數據采集器將從ntp服務器上同步得到的標準時間覆蓋由plc上傳的時間戳數據后,將當前的時間戳數據上傳至后臺服務器進行相應的數據處理。
進一步,所述高速數據采集器將從ntp服務器上同步得到的標準時間覆蓋由plc上傳的時間戳數據后,將當前的時間戳數據上傳至后臺服務器進行相應的數據處理這一步驟,其具體包括:
plc將自身的時間戳數據以標準數據格式的形式發送至高速數據采集器;然后,高速數據采集器將從ntp服務器上同步得到的標準時間進行標準數據格式的數據格式轉換;接著,高速數據采集器將數據格式轉換后的標準時間覆蓋由plc上傳的時間戳數據后,將當前的時間戳數據上傳至后臺服務器進行相應的數據處理。
進一步,所述高速數據采集器將從ntp服務器上同步得到的標準時間覆蓋由plc上傳的時間戳數據后,將當前的時間戳數據上傳至后臺服務器進行相應的數據處理這一步驟之后設有判斷步驟,所述判斷步驟具體為:
判斷上一次高速數據采集器和后臺服務器均與ntp服務器進行時間同步的歷史運行時間是否已超過設定時間值,若是,則重新令高速數據采集器和后臺服務器均與ntp服務器進行時間同步;反之,則結束。
本發明所采用的另一技術方案是:一種基于高速數據采集器的時間同步系統,該系統包括plc、高速數據采集器、后臺服務器以及ntp服務器,所述高速數據采集器分別與plc、后臺服務器以及ntp服務器通訊連接;
所述后臺服務器,用于與ntp服務器進行時間同步,從而從ntp服務器上同步得到標準時間;
所述高速數據采集器,用于與ntp服務器進行時間同步,從而從ntp服務器上同步得到標準時間,以及將從ntp服務器上同步得到的標準時間覆蓋由plc上傳的時間戳數據后,將當前的時間戳數據上傳至后臺服務器進行相應的數據處理。
進一步,所述plc具體用于將自身的時間戳數據以標準數據格式的形式發送至高速數據采集器。
進一步,所述高速數據采集器包括有:
同步模塊,用于與ntp服務器進行時間同步,從而從ntp服務器上同步得到標準時間;
數據采集處理模塊,用于將從ntp服務器上同步得到的標準時間進行標準數據格式的數據格式轉換,接著,將數據格式轉換后的標準時間覆蓋由plc上傳的時間戳數據后,將當前的時間戳數據上傳至后臺服務器進行相應的數據處理。
本發明的有益效果是:通過使用本發明的方法,能夠快速簡易地實現plc、高速數據采集器及后臺服務器這三者的時間同步,而且由于高速數據采集器從plc獲得的時間戳數據不會加入數據采集器緩存區,直接進行處理,因此,數據堆積、滯后的情況非常小,基本可以忽略,這樣通過使用本發明的方法便能實現工業數據的實時真實采集,大大提高后續工業數據處理結果的準確性。另外,在實現本發明的方法時,無需改變plc內部計時器或軟件程序,因此,具有易于實現、操作簡便性高等優點。
本發明的另一有益效果是:通過使用本發明的系統,能夠快速簡易地實現plc、高速數據采集器及后臺服務器這三者的時間同步,而且由于高速數據采集器從plc獲得的時間戳數據不會加入數據采集器緩存區,直接進行處理,因此,數據堆積、滯后的情況非常小,基本可以忽略,這樣通過使用本發明的系統便能實現工業數據的實時真實采集,大大提高后續工業數據處理結果的準確性。另外,在實現本發明的系統時,無需改變plc內部計時器或軟件程序,因此,具有易于實現、操作簡便性高等優點。
附圖說明
圖1是本發明一種基于高速數據采集器的時間同步系統的結構框圖;
圖2是本發明一種基于高速數據采集器的時間同步方法的步驟流程圖。
具體實施方式
本發明的方案適用于工業現場在用的plc實時數據采集過程中。
如圖1所示,一種基于高速數據采集器的時間同步系統,包括高速數據采集器、后臺服務器、ntp服務器以及多個plc,所述高速數據采集器分別與多個plc、后臺服務器以及ntp服務器通訊連接;其中,所述的plc實質指的是現場plc設備;
所述后臺服務器,用于與ntp服務器進行時間同步,從而從ntp服務器上同步得到標準時間;
所述高速數據采集器,用于與ntp服務器進行時間同步,從而從ntp服務器上同步得到標準時間,以及將從ntp服務器上同步得到的標準時間覆蓋由plc上傳的時間戳數據后,將當前的時間戳數據上傳至后臺服務器進行相應的數據處理。
作為本系統實施例的優選實施方式,所述plc具體用于將自身的時間戳數據以標準數據格式的形式發送至高速數據采集器。
作為本系統實施例的優選實施方式,所述高速數據采集器包括有:
同步模塊,用于與ntp服務器進行時間同步,從而從ntp服務器上同步得到標準時間;
數據采集處理模塊,用于將從ntp服務器上同步得到的標準時間進行標準數據格式的數據格式轉換,接著,將數據格式轉換后的標準時間覆蓋由plc上傳的時間戳數據后,將當前的時間戳數據上傳至后臺服務器進行相應的數據處理。
對于上述一種基于高速數據采集器的時間同步系統,如圖2所示,其具體同步方法步驟包括有:
步驟1、將高速數據采集器和后臺服務器均與ntp服務器以以太網的方式進行時間同步,從而令高速數據采集器和后臺服務器均從ntp服務器上同步得到標準時間;
步驟2、高速數據采集器將從ntp服務器上同步得到的標準時間覆蓋由plc上傳的時間戳數據后,即令高速數據采集器從ntp服務器上同步得到的標準時間作為plc當前的時間戳數據,完成plc時間戳數據標準化,然后將當前的時間戳數據上傳至后臺服務器進行相應的數據處理。
作為本方法實施例的優選實施方式,所述步驟2具體包括:
plc通過使用提供的系統協議、網絡適配器或現場總線的方式,將自身的時間戳數據以標準數據格式的形式發送至高速數據采集器;然后,高速數據采集器將從ntp服務器上同步得到的標準時間進行標準數據格式的數據格式轉換;接著,高速數據采集器將數據格式轉換后的標準時間覆蓋掉由plc上傳的時間戳數據后,將當前的時間戳數據上傳至后臺服務器進行相應的數據處理。此后,plc持續傳輸時間戳數據至高速數據采集器,高速數據采集器將自身的時間信息替換掉原有的plc時間戳數據,作為新的plc時間戳數據,即當前時刻的plc時間戳數據即可同步為國際標準時間,接著,高速數據采集器將標準化后的plc時間戳數據傳輸至后臺服務器進行相應的數據處理。
作為本方法實施例的優選實施方式,所述步驟2之后設有判斷步驟,所述判斷步驟具體為:
判斷上一次高速數據采集器和后臺服務器均與ntp服務器進行時間同步的歷史運行時間是否已超過設定時間值,即判斷離上一次將高速數據采集器和后臺服務器均與ntp服務器進行時間同步的歷史運行時間是否超過設定時間值,如一星期或一個月,若是,則重新令高速數據采集器和后臺服務器均與ntp服務器進行時間同步;反之,則結束。
作為上述系統和方法實施例的優選實施方式,所述的標準數據格式為unixtimestamp格式。
本發明方法一具體實施例
設定plc包括有plc1、plc2、plc3,并且當前時間為2017年1月9日14:15:27,plc1時間為2017年1月9日14:14:00,plc2時間為2017年1月8日14:15:27,plc3時間為1970年1月1日14:15:27。
一種基于高速數據采集器的時間同步方法,具體步驟包括有:
s101、將高速數據采集器和后臺服務器均與ntp服務器進行當前時間的同步,令高速數據采集器和后臺服務器從ntp服務器上得到標準時間;
s102、高速數據采集器將得到的標準時間轉換成unixtimestamp格式的數據(格林威治時間1970年01月01日00時00分00秒起至現在的總秒數),即此時存儲的unixtimestamp格式的標準時間為1483942527;
s103、plc1、pcl2、plc3將自身的時間戳數據傳輸至高速數據采集器并以unixtimestamp格式進行數據存儲,其中此時,plc1的時間戳數據為1483942440、plc2的時間戳數據為1483856127,plc3的時間戳數據為22527;
s104、在高速數據采集器中,將從ntp服務器上同步得到的標準時間覆蓋掉此時plc1、plc2、plc3的時間戳數據,實現plc時間信息標準化;
s105、plc1、plc2、plc3持續傳輸時間戳數據,每次都被標準化時間覆蓋并儲存和傳送至后臺服務器;
s106、后臺服務器進行相應的數據處理。
由上述可得,本發明的方法和系統所包括的優點有:
1、能夠避免現場plc之間時間不統一的情況發生,并且實現現場多個plc、高速數據采集器和后臺服務器的時間同步;
2.plc重啟后有初始化時間的可能性,利用高速數據采集器的標準化時間直接覆蓋的方法能夠避免plc初始化后時間改變的情況,操作靈活性和便利性高;
3.能夠在不改變plc內部計時器或plc程序的情況下進行plc時間戳信息的標準化,從而實現數據同步和采集,具有易于實現、操作工作量低、成本低等優點;
4、能夠準確獲取各plc的標準化時間信息,從而數據更具有實時性和真實性,不再因為plc的時間差異而產生誤差,從而使后臺服務器能夠在工業中準確顯示某個工位動作的時刻,降低誤差概率,更有利于數據的實時收集和處理。
以上是對本發明的較佳實施進行了具體說明,但本發明創造并不限于所述實施例,熟悉本領域的技術人員在不違背本發明精神的前提下還可做作出種種的等同變形或替換,這些等同的變形或替換均包含在本申請權利要求所限定的范圍內。