本公開屬于通信,尤其涉及一種分布式通信系統(tǒng)和方法。
背景技術(shù):
1、如圖1所示,在分布式系統(tǒng)通過總線進行通信的過程中,多個通信模塊連接同一根總線,通過總線發(fā)送數(shù)據(jù)。每個通信模塊初始化系統(tǒng)時鐘,并配置任務(wù)周期,根據(jù)配置的任務(wù)周期,通過總線發(fā)送數(shù)據(jù)。
2、繼續(xù)參考圖1,這種通信方式存在明顯的缺陷;首先,由于每個通信模塊有獨立的系統(tǒng)時鐘,在多個通信模塊工作的過程中,會產(chǎn)生二個或多個通信模塊同一時刻通過總線發(fā)送數(shù)據(jù)的情況,有可能觸發(fā)總線的通信阻塞,引起通信模塊發(fā)送超時或重發(fā)失敗,進而導致本次任務(wù)周期發(fā)送失敗,通信數(shù)據(jù)丟失,通信流水號斷開;其次,由于每個通信模塊的系統(tǒng)時鐘來源于晶振振蕩信號,晶振存在溫漂誤差,隨著時間的累積,通信模塊的系統(tǒng)時鐘的誤差越來越大,從而導致任務(wù)周期的絕對時間偏差越來越大,周期偏差累積到一定幅度(比如周期時間延遲大于1毫秒),發(fā)送錯過了絕對時間的任務(wù)周期(比如容忍時間偏差閾值為±1毫秒),雖然可以使用軟件通過算法補償時間偏差,但是本次任務(wù)周期已經(jīng)發(fā)送失敗,通信數(shù)據(jù)丟失,通信流水號斷開。
技術(shù)實現(xiàn)思路
1、為解決上述問題,本公開提供了一種分布式通信系統(tǒng)和方法,采用確定一個通信模塊作為基準時鐘信號的發(fā)送源,配置電連接同一通信總線的所有通信模塊的預設(shè)時間分區(qū),基于基準時鐘信號,各通信模塊在對應(yīng)的預設(shè)時間分區(qū)向通信總線發(fā)送信號,能夠避免多個通信模塊同時向通信總線發(fā)送信號。
2、本發(fā)明通過如下技術(shù)方案實現(xiàn):
3、第一方面,本公開實施例提供了一種分布式通信系統(tǒng),所述系統(tǒng)包括時鐘分配模塊、通信總線和按預設(shè)順序與通信總線電連接的多個通信模塊;
4、按所述預設(shè)順序與所述通信總線電連接的首個通信模塊,與所述時鐘分配模塊的輸入端電連接,向所述時鐘分配模塊發(fā)送基準時鐘信號;按所述預設(shè)順序與所述通信總線電連接的除首個通信模塊的其余所有通信模塊,與所述時鐘分配模塊的輸出端電連接,接收所述時鐘分配模塊同步轉(zhuǎn)發(fā)的所述基準時鐘信號;其中,
5、通信模塊根據(jù)所述基準時鐘信號,確定對應(yīng)的預設(shè)時間分區(qū),在對應(yīng)的預設(shè)時間分區(qū),向所述通信總線發(fā)送輸出信號;通信模塊按所述預設(shè)順序設(shè)置對應(yīng)的預設(shè)時間分區(qū),各通信模塊對應(yīng)的預設(shè)時間分區(qū)無重疊。
6、進一步的,
7、所述基準時鐘信號為方波脈沖信號,所述預設(shè)時間分區(qū)內(nèi)包括連續(xù)的多個方波脈沖。
8、進一步的,
9、按預設(shè)順序與通信總線電連接的首個通信模塊向時鐘分配模塊發(fā)送所述方波脈沖信號;通信模塊包括脈沖發(fā)生單元;
10、所述脈沖發(fā)生單元與所述時鐘分配模塊的輸入端電連接,所述脈沖發(fā)生單元將生成的所述方波脈沖信號發(fā)送至所述時鐘分配模塊,并在生成所述方波脈沖信號的同時對所述方波脈沖信號進行計數(shù)。
11、進一步的,
12、按預設(shè)順序與通信總線電連接的除首個通信模塊的其余所有通信模塊接收時鐘分配模塊轉(zhuǎn)發(fā)的所述方波脈沖信號;通信模塊包括脈沖計數(shù)單元;
13、所述脈沖計數(shù)單元與所述時鐘分配模塊的輸出端電連接,對接收的所述方波脈沖信號進行計數(shù)。
14、進一步的,
15、通信模塊包括周期檢驗單元和信號發(fā)送單元;所述周期檢驗單元和所述信號發(fā)送單元電連接,所述信號發(fā)送單元與通信總線電連接;
16、所述周期檢驗單元根據(jù)脈沖發(fā)生單元或脈沖計數(shù)單元對所述方波脈沖信號的計數(shù)結(jié)果,確定通信模塊對應(yīng)的預設(shè)時間分區(qū),在通信模塊對應(yīng)的預設(shè)時間分區(qū)控制所述信號發(fā)送單元向所述通信總線發(fā)送輸出信號。
17、進一步的,
18、各預設(shè)時間分區(qū)包括的所述方波脈沖數(shù)量相同。
19、進一步的,
20、同一所述通信總線電連接的通信模塊的數(shù)量,不大于各通信模塊中最小的通信周期與所述預設(shè)時間分區(qū)時長的比值。
21、第二方面,基于同一發(fā)明構(gòu)思,本公開實施例還提供了一種分布式通信方法,所述方法包括:
22、按預設(shè)順序與通信總線電連接的首個通信模塊,向時鐘分配模塊發(fā)送基準時鐘信號;按所述預設(shè)順序與所述通信總線電連接的除首個通信模塊的其余所有通信模塊,接收所述時鐘分配模塊同步轉(zhuǎn)發(fā)的所述基準時鐘信號;
23、通信模塊根據(jù)所述基準時鐘信號,確定對應(yīng)的預設(shè)時間分區(qū),在對應(yīng)的預設(shè)時間分區(qū),向所述通信總線發(fā)送輸出信號;其中,通信模塊按所述預設(shè)順序設(shè)置對應(yīng)的預設(shè)時間分區(qū),各通信模塊對應(yīng)的預設(shè)時間分區(qū)無重疊。
24、進一步的,
25、所述基準時鐘信號為方波脈沖信號,所述預設(shè)時間分區(qū)內(nèi)包括連續(xù)的多個方波脈沖。
26、進一步的,
27、脈沖發(fā)生單元將生成的所述方波脈沖信號發(fā)送至時鐘分配模塊,并在生成所述方波脈沖信號的同時對所述方波脈沖信號進行計數(shù)。
28、進一步的,
29、脈沖計數(shù)單元接收時鐘分配模塊發(fā)送的所述方波脈沖信號,對接收的所述方波脈沖信號進行計數(shù)。
30、進一步的,
31、周期檢驗單元根據(jù)脈沖發(fā)生單元或脈沖計數(shù)單元對方波脈沖信號的計數(shù)結(jié)果,確定通信模塊對應(yīng)的預設(shè)時間分區(qū),在通信模塊對應(yīng)的預設(shè)時間分區(qū)控制信號發(fā)送單元向通信總線發(fā)送輸出信號。
32、與現(xiàn)有技術(shù)相比,本公開具有如下優(yōu)點:
33、1、各通信模塊在對應(yīng)的預設(shè)時間分區(qū)向通信總線發(fā)送信號,防止有兩個或兩個以上通信模塊同時向通信總線發(fā)送信號,導致通信總線發(fā)生通信阻塞;
34、2、各通信模塊在對應(yīng)的預設(shè)時間分區(qū)向通信總線發(fā)送信號,并合理控制通信總線連接的通信模塊數(shù)量,保證了通信模塊的通信周期的準確性。
35、本公開的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本公開而了解。本公開的目的和其他優(yōu)點可通過在說明書、權(quán)利要求書以及附圖中所指出的結(jié)構(gòu)來實現(xiàn)和獲得。
1.一種分布式通信系統(tǒng),其特征在于,所述系統(tǒng)包括時鐘分配模塊、通信總線和按預設(shè)順序與通信總線電連接的多個通信模塊;
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述基準時鐘信號為方波脈沖信號,所述預設(shè)時間分區(qū)內(nèi)包括連續(xù)的多個方波脈沖。
3.根據(jù)權(quán)利要求2所述的系統(tǒng),其特征在于,按預設(shè)順序與通信總線電連接的首個通信模塊向時鐘分配模塊發(fā)送所述方波脈沖信號;通信模塊包括脈沖發(fā)生單元;
4.根據(jù)權(quán)利要求2所述的系統(tǒng),其特征在于,按預設(shè)順序與通信總線電連接的除首個通信模塊的其余所有通信模塊接收時鐘分配模塊轉(zhuǎn)發(fā)的所述方波脈沖信號;通信模塊包括脈沖計數(shù)單元;
5.根據(jù)權(quán)利要求3或4所述的系統(tǒng),其特征在于,通信模塊包括周期檢驗單元和信號發(fā)送單元;所述周期檢驗單元和所述信號發(fā)送單元電連接,所述信號發(fā)送單元與通信總線電連接;
6.根據(jù)權(quán)利要求2所述的系統(tǒng),其特征在于,各預設(shè)時間分區(qū)包括的所述方波脈沖數(shù)量相同。
7.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,同一所述通信總線電連接的通信模塊的數(shù)量,不大于各通信模塊中最小的通信周期與所述預設(shè)時間分區(qū)時長的比值。
8.一種分布式通信方法,其特征在于,所述方法包括:
9.根據(jù)權(quán)利要求8所述的方法,其特征在于,所述基準時鐘信號為方波脈沖信號,所述預設(shè)時間分區(qū)內(nèi)包括連續(xù)的多個方波脈沖。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,所述方法包括:
11.根據(jù)權(quán)利要求9所述的方法,其特征在于,所述方法包括:
12.根據(jù)權(quán)利要求8-11中任一所述的方法,其特征在于,所述方法包括: