專利名稱::用于傳輸周期性和非周期性數(shù)據(jù)的方法和系統(tǒng)的制作方法用于傳輸周期性和非周期性數(shù)據(jù)的方法和系統(tǒng)本發(fā)明涉及一種在考慮到實(shí)時(shí)性的情況下通過傳輸信道傳輸周期性和非周期性數(shù)據(jù)的方法和系統(tǒng)。一種已知的、在工業(yè)上應(yīng)用于數(shù)據(jù)傳輸系統(tǒng)的通信系統(tǒng)是現(xiàn)場總線,它將諸如測量探測器(傳感器)、調(diào)節(jié)裝置和/或驅(qū)動裝置(執(zhí)行單元)的大量現(xiàn)場設(shè)備與一個控制設(shè)備相連。在市場上有許多具有不同特性的不同的現(xiàn)場總線系統(tǒng),并且在世界范圍內(nèi)被大規(guī)模標(biāo)準(zhǔn)化。從拓樸學(xué)的角度說,目前市場上相關(guān)的現(xiàn)場總線系統(tǒng)基本上被分為兩類,一類是在帶有線狀結(jié)構(gòu)、包括線束或樹狀結(jié)構(gòu)的系統(tǒng),如Profibus總線、CAN總線或以太網(wǎng);另一類是在帶有環(huán)狀結(jié)構(gòu)的系統(tǒng),例如Interbus總線。通常,帶有環(huán)狀結(jié)構(gòu)的系統(tǒng)尤其具有協(xié)議效率高的特點(diǎn),這在低傳輸頻率的情況下表現(xiàn)為很高的凈數(shù)據(jù)速率。環(huán)狀拓樸意味著同步數(shù)據(jù)傳送或者所有用戶的數(shù)據(jù)傳輸。這樣,要傳輸?shù)男畔囊粋€用戶被轉(zhuǎn)發(fā)到另一個用戶,直至到達(dá)相應(yīng)的指定用戶。另外的優(yōu)點(diǎn)在于,對于傳輸路徑有非常好的診斷特性,并且在很大程度上省去了設(shè)備地址和定時(shí)的分配,這是因?yàn)閭鬏斅窂绞菍Φ?peer-to-peer)連接,因此實(shí)現(xiàn)了與客戶端/服務(wù)器連接或主/從連接不同的對等方之間的通信。與此不同的是,具有基于線狀結(jié)構(gòu)的拓樸的現(xiàn)場總線系統(tǒng)通常具備熱插拔能力,也就是說,在正在運(yùn)行總線操作期間可以使各個用戶插入或拔出,而不會產(chǎn)生什么問題。另外,過程數(shù)據(jù)和非周期性數(shù)據(jù),包括設(shè)備診斷數(shù)據(jù),可以根據(jù)情況在幾乎任意的范圍內(nèi)傳輸。這種拓樸結(jié)構(gòu)主要是基于客戶端/服務(wù)器4信或者主/從通信。然而,總的來說,可以斷定與環(huán)狀結(jié)構(gòu)相關(guān)的優(yōu)點(diǎn)正對應(yīng)于線狀結(jié)構(gòu)的缺點(diǎn),反之亦然。此外,尤其是鑒于當(dāng)下普遍采用且與市場相關(guān)的總線系統(tǒng)所具有的高度復(fù)雜性以及高傳輸速率,總線連接通常只能通過專門的且昂貴的協(xié)議芯片或微控制器來實(shí)現(xiàn)。本發(fā)明的一個目的在于,指出一種通過傳輸信道傳輸數(shù)據(jù)的途徑,其有效避免了目前由環(huán)狀結(jié)構(gòu)和線狀結(jié)構(gòu)所帶來的缺點(diǎn),并將一種拓樸類型的優(yōu)點(diǎn)與另一種拓樸類型的優(yōu)點(diǎn)結(jié)合起來,其中尤其是不僅要保證熱插拔能力和過程數(shù)據(jù)和非周期性數(shù)據(jù)(包括設(shè)備診斷數(shù)據(jù))的與條件相關(guān)的傳輸,而且還要保證較低的協(xié)議開銷和同步數(shù)據(jù)傳送以及到所有相連用戶的過程數(shù)據(jù)傳輸。根據(jù)本發(fā)明的解決方案是通過權(quán)利要求1所述的方法和權(quán)利要求20所述的傳輸系統(tǒng)來給出的。有利的和/或優(yōu)選的實(shí)施方式和改進(jìn)是各個從屬權(quán)利要求的主題。因此,根據(jù)本發(fā)明,對基于用于通過傳輸信道傳輸周期性數(shù)據(jù)的協(xié)議進(jìn)行數(shù)據(jù)傳輸?shù)姆椒ㄟM(jìn)行了改進(jìn),對要在一個即將到來的周期內(nèi)傳輸?shù)臄?shù)據(jù)進(jìn)行檢驗(yàn),以檢驗(yàn)該數(shù)據(jù)相對于在前一周期內(nèi)的相應(yīng)數(shù)據(jù)的冗余性和現(xiàn)實(shí)性,當(dāng)發(fā)現(xiàn)在一個即將到來的傳輸周期內(nèi)本來只傳輸冗余數(shù)據(jù)而不傳輸新的信息內(nèi)容時(shí),用非周期性數(shù)據(jù)來代替不包含新信息內(nèi)容的冗余數(shù)據(jù)插入到為此而提供的數(shù)據(jù)區(qū)域中。這樣,采樣本身的等距性以及過程數(shù)據(jù)傳輸過程中的確定性(其對于控制應(yīng)用來說尤其重要)都保持不變,也不會由此使有效數(shù)據(jù)的呑吐量下降。為了實(shí)現(xiàn)本發(fā)明所述的方法,本發(fā)明特別提出了一種傳輸系統(tǒng),其為了發(fā)送和接收數(shù)據(jù),在主機(jī)與至少一個從機(jī)之間具有一條共用的數(shù)據(jù)線。其中,多個相連的從機(jī)用戶可以形成一個用戶站,主機(jī)通過所述數(shù)據(jù)線與這個用戶站相連。另外,該數(shù)據(jù)傳輸系統(tǒng)還具有一個針對應(yīng)用特定的協(xié)議,在這個協(xié)議的基礎(chǔ)上,數(shù)據(jù)以周期性的時(shí)間間隔在主機(jī)和從機(jī)之間傳輸以便將數(shù)據(jù)寫入從機(jī),并且數(shù)據(jù)在主機(jī)和從機(jī)之間進(jìn)行交換以便從從機(jī)讀出數(shù)據(jù)。主機(jī)具有一個專門的檢驗(yàn)機(jī)構(gòu),能夠?qū)榧磳⒌絹淼闹芷谛詡鬏敹峁┑臄?shù)據(jù)進(jìn)行檢驗(yàn),以檢驗(yàn)該數(shù)據(jù)相對于在前一個周期性傳輸期間已經(jīng)傳輸?shù)?、存儲在存儲器中的?shù)據(jù)的冗余性和現(xiàn)實(shí)性,并且還具有一個與所述檢驗(yàn)機(jī)構(gòu)相連的判斷機(jī)構(gòu),能夠判斷是否要將非周期性數(shù)據(jù)插入到本來只傳輸冗余數(shù)據(jù)而不傳輸新信息內(nèi)容的數(shù)據(jù)區(qū)域中,并且在答案為"是"的情況下判斷將哪些非周期性數(shù)據(jù)插入到這個數(shù)據(jù)區(qū)域中。符合目的的是,在每個傳輸周期內(nèi),主機(jī)單元分別在笫一個數(shù)據(jù)周期期間從從機(jī)單元讀出過程數(shù)據(jù),并在相應(yīng)接下來的第二個數(shù)據(jù)周期期間傳輸過程輸出數(shù)據(jù)或非周期性數(shù)據(jù)。尤其是,非周期性數(shù)據(jù)不僅可以插入到由主機(jī)單元至從機(jī)單元的傳輸中,而且也可以插入到由從機(jī)單元至主機(jī)單元的傳輸中。在一個優(yōu)選的改進(jìn)方案中進(jìn)一步建議,周期性數(shù)據(jù)不僅可以插入到由主機(jī)單元至從機(jī)單元的傳輸中,而且也可以插入到各個從機(jī)單元之間和/或者由從機(jī)單元至主機(jī)單元的傳輸中。為此,建議所有用戶單元一起讀取在一個數(shù)據(jù)周期內(nèi)同時(shí)傳輸?shù)臄?shù)據(jù)。為了實(shí)現(xiàn)錯誤識別,進(jìn)一步建議用戶單元通過分別接收或者一起讀取的數(shù)據(jù)形成一個檢驗(yàn)和或校驗(yàn)和,并將其與附加到分別接收或同時(shí)讀取的數(shù)據(jù)上的檢驗(yàn)和或校驗(yàn)和進(jìn)行比較。因此,在一個優(yōu)選的改進(jìn)方案中,當(dāng)識別出錯誤時(shí)發(fā)送回一個錯誤報(bào)告。在實(shí)踐中,本發(fā)明建議,在一個數(shù)據(jù)周期內(nèi),每次數(shù)據(jù)傳輸都以傳輸?shù)刂烽_始,接著傳輸功能編碼。符合目的的是,由主機(jī)所生成的CRC構(gòu)成了傳輸結(jié)束。本發(fā)明特別建議,傳輸請求數(shù)據(jù)、應(yīng)答數(shù)據(jù)或診斷數(shù)據(jù)作為所述非周期性數(shù)據(jù)。此外,符合目的的是,主機(jī)單元預(yù)先確定一個或多個從機(jī)用戶要傳輸非周期性數(shù)據(jù)的相應(yīng)時(shí)刻。為此,符合目的的是,為了預(yù)先確定這樣的相應(yīng)時(shí)刻,主機(jī)單元在其中傳輸非周期性數(shù)據(jù)的前一個數(shù)據(jù)周期內(nèi)同時(shí)傳輸一個相應(yīng)的功能編碼。為了提高容錯能力,特別是在對安全性要求很高的處理過程中,另外還建議,至少在傳輸了預(yù)定的最大數(shù)目的包含非周期性數(shù)據(jù)的連續(xù)數(shù)據(jù)周期之后,執(zhí)行一個包含周期性數(shù)據(jù)的普通數(shù)據(jù)周期。作為替代或補(bǔ)充,優(yōu)選地進(jìn)一步建議,如果在一個預(yù)先確定的時(shí)間段內(nèi)不存在沒有錯誤的周期性數(shù)據(jù)交換,則識別出一個錯誤并開始執(zhí)行一個預(yù)先參數(shù)化的錯誤處理。為了在每個數(shù)據(jù)周期期間傳輸數(shù)據(jù),具有優(yōu)點(diǎn)的是,本發(fā)明使用了由地址、功能編碼、給定數(shù)目的有效數(shù)據(jù)、以及檢驗(yàn)和或校驗(yàn)和所組裝而成的恒定不變的報(bào)文外部結(jié)構(gòu),其中符合目的的是,在兩個前后連續(xù)的報(bào)文之間具有一個空閑時(shí)間,在空閑時(shí)間內(nèi)沒有數(shù)據(jù)傳輸。本發(fā)明還建議,在一個數(shù)據(jù)周期期間所傳輸?shù)挠绣e誤的數(shù)據(jù)直到相應(yīng)的下一個數(shù)據(jù)周期才會被重復(fù)發(fā)送。本發(fā)明的一個特別有利的改進(jìn)方案建議,當(dāng)識別出在一個預(yù)計(jì)數(shù)據(jù)傳輸?shù)臄?shù)據(jù)周期內(nèi)沒有可用的從機(jī)單元時(shí),主機(jī)單元在分配給從機(jī)單元的相應(yīng)時(shí)間窗口內(nèi)嵌入一個占位符。在一個數(shù)據(jù)周期期間,為進(jìn)行分析而傳輸?shù)脑\斷數(shù)據(jù)最好以主機(jī)單元的一個發(fā)送請求而開始,其中在這樣一個診斷周期中優(yōu)先傳輸具有較高優(yōu)先級的信息。本發(fā)明的上述特征和其他特征、以及由此帶來的優(yōu)點(diǎn)通過下面參照附圖對優(yōu)選實(shí)施方式的示例性說明而給出。如圖所示圖1示出了優(yōu)選用于本發(fā)明所述方法的總線周期內(nèi)的可能的總線訪問,圖2示出了用于本發(fā)明的報(bào)文的幀結(jié)構(gòu)的一個示例,圖3示出了在一個PD寫訪問周期內(nèi)的報(bào)文結(jié)構(gòu),圖4示出了在一個PD讀訪問周期內(nèi)的報(bào)文結(jié)構(gòu),圖5示出了在一個非周期嵌入的診斷訪問期間的報(bào)文結(jié)構(gòu),圖6示出了根據(jù)本發(fā)明的傳輸系統(tǒng)的一種可能的拓樸結(jié)構(gòu),圖7示出了根據(jù)本發(fā)明的傳輸系統(tǒng)在一個已有總線拓樸結(jié)構(gòu)中的集成。根據(jù)本發(fā)明的方法和傳輸系統(tǒng)是基于對于發(fā)送和接收數(shù)據(jù)、尤其是發(fā)送和接收數(shù)據(jù)過程數(shù)據(jù)共用的數(shù)據(jù)線。例如,一種這種類型的普通傳輸系統(tǒng)基于汽車
技術(shù)領(lǐng)域:
已知的LIN總線工作,該系統(tǒng)可以在特定的數(shù)據(jù)周期期間通過主機(jī)從與一個現(xiàn)場站相連的現(xiàn)場設(shè)備讀取針對協(xié)議特定的數(shù)據(jù),并且在相應(yīng)的后續(xù)數(shù)據(jù)周期中把這些數(shù)據(jù)寫入所述現(xiàn)場設(shè)備,速率大約為19.2至38kbd。對于許多應(yīng)用而言,本發(fā)明表現(xiàn)出了這樣的特點(diǎn)在過程數(shù)據(jù)傳輸過程中的確定性,即預(yù)定性和不可變性要比實(shí)際傳輸速度更重要。在本發(fā)明中,這個確定性是由傳輸系統(tǒng)的總線周期時(shí)間決定的,所述總線周期時(shí)間可符合目的地被調(diào)整,例如介于10到100毫秒之間的范圍內(nèi)。為了以每個周期16位來傳輸16個過程數(shù)據(jù)值,例如25毫秒的缺省設(shè)置就足夠了。因此,在根據(jù)本發(fā)明的方法中,過程輸入數(shù)據(jù)和過程輸出數(shù)據(jù)的傳輸原理上是在一個固定的間隔內(nèi)發(fā)生的,分別錯開半總線周期時(shí)間。參考圖1,下面的描述首先這樣開始用于周期性傳輸過程輸入數(shù)據(jù)和過程輸出數(shù)據(jù)的傳輸協(xié)議中使用兩種不同的服務(wù),下文稱為PD讀和PD寫。因此,一個總線周期包括一個基于PD讀服務(wù)的數(shù)據(jù)周期和一個跟在后面的基于PD寫服務(wù)的數(shù)據(jù)周期。當(dāng)傳輸過程輸出數(shù)據(jù)時(shí),根據(jù)本發(fā)明的傳輸系統(tǒng)的主機(jī)在PD寫服務(wù)下原則上向一個與所述主機(jī)相連的站發(fā)送用于連接到該站的現(xiàn)場設(shè)備的所有數(shù)據(jù),并且緊接著符合目的地確定一個同時(shí)也被傳輸?shù)腃RC(循環(huán)冗余校驗(yàn))。符合目的的是,傳輸系統(tǒng)被設(shè)計(jì)為使得所有相連的現(xiàn)場設(shè)備同時(shí)讀取所有這樣傳輸?shù)男畔?,最好是同樣形成一個CRC,這個CRC可以與主機(jī)接收到的CRC進(jìn)行比較,從而在出現(xiàn)錯誤的情況下生成一個錯誤報(bào)告,并且例如^^整個站或者各個現(xiàn)場i史備進(jìn)入安全狀態(tài)。當(dāng)傳輸過程輸入數(shù)據(jù)時(shí),主機(jī)在PD讀服務(wù)下例如首先發(fā)送一個廣播地址,隨后發(fā)送功能編碼。此外,與該站相連的現(xiàn)場設(shè)備在數(shù)據(jù)線上一個字節(jié)一個字節(jié)地將它們的數(shù)據(jù)、尤其是它們的過程輸入數(shù)據(jù)分別放置在為其所提供的字節(jié)空間中。在一個優(yōu)選的實(shí)施例中,所連此再次計(jì)算一個CRC。另外,本發(fā)明還利用了這樣一個事實(shí),即通常不必總是需要傳輸過程輸出數(shù)據(jù),這特別是意味著,如果即將被傳輸?shù)倪^程輸出數(shù)據(jù)沒有發(fā)生任何改變,那么連接到一個現(xiàn)場站的現(xiàn)場設(shè)備就已經(jīng)掌握了最新的過程輸出數(shù)據(jù)。為此,主機(jī)包括一個檢驗(yàn)機(jī)構(gòu),用于確定在要傳輸?shù)臄?shù)據(jù)中一個周期與下一個周期之間是否存在差異。如果所述檢驗(yàn)機(jī)構(gòu)在這種情況下確定不存在差異,并且在前一個周期中沒有出現(xiàn)錯誤報(bào)告,則主機(jī)的一個判斷機(jī)構(gòu)判斷是否要在即將到來的時(shí)縫中傳輸諸如請求數(shù)據(jù)、應(yīng)答數(shù)據(jù)或診斷數(shù)據(jù)的非周期性數(shù)據(jù),以代替本來要傳輸?shù)娜哂鄶?shù)據(jù)。在圖l所示的例子中,根據(jù)本發(fā)明,主機(jī)在PD讀服務(wù)結(jié)束后的一個總線周期內(nèi),在一個原本為PD寫服務(wù)而提供的時(shí)隙中傳輸一個用"請求l"來表示的請求。"從機(jī)"要發(fā)送一個特定的應(yīng)答的時(shí)刻在圖1中標(biāo)注為"應(yīng)答1",其符合目的地由主機(jī)通過功能編碼中的一個比特來確定。因此,根據(jù)圖1,預(yù)先設(shè)定一個直到下一個PD讀服務(wù)完成之后的應(yīng)答延遲,即直到本來是為下一個PD寫服務(wù)而提供的時(shí)隙,這樣就進(jìn)一步保證了確定性,此外使得從機(jī)有更多的時(shí)間來處理請求。特別是對于安全要求較高的傳輸過程,在使用本發(fā)明所述方法時(shí),本發(fā)明進(jìn)一步建議,一個PD寫周期的中斷不能超過最大數(shù)目的連續(xù)數(shù)據(jù)周期,否則將開始執(zhí)行一個預(yù)先參數(shù)化的錯誤處理,例如使現(xiàn)場設(shè)備進(jìn)入安全狀態(tài)。因此,一個PD寫周期的中斷例如可以持續(xù)最多15個連續(xù)的數(shù)據(jù)周期,而在第16個時(shí)隙中必須再次進(jìn)行PD寫訪問。作為替代或補(bǔ)充,為了提高安全性可以進(jìn)行預(yù)先設(shè)定,在一個預(yù)先確定的時(shí)間段內(nèi),例如在1000毫秒內(nèi),必須進(jìn)行至少一次有效的、即沒有錯誤的周期性數(shù)據(jù)交換,否則所有相連的現(xiàn)場設(shè)備將識別出一個錯誤,并開始執(zhí)行預(yù)先參數(shù)化的錯誤處理。在一個PD寫周期、PD讀周期或非周期性數(shù)據(jù)周期期間,一種優(yōu)選的、然而基本上與協(xié)議相關(guān)的幀結(jié)構(gòu)在圖2中示出。其中相應(yīng)的報(bào)文長度包括68個字符,并且符合目的地被實(shí)現(xiàn)為對于作為從機(jī)連接的現(xiàn)場設(shè)備來說沒有額外的存儲器需求。因此,該報(bào)文中包含一個l字節(jié)的地址,它確定了作為接收方的一個特定的用戶,或者在廣播地址的情況下表示所有的用戶。后面跟著的是一個功能編碼,在這種情況下也包含l個字節(jié),其定義了后續(xù)有效數(shù)據(jù)所希望實(shí)現(xiàn)的功能。在這個例子中,原本的有效數(shù)據(jù)包含64個字節(jié),后面跟著的是一個包含2個字節(jié)的CRC。在這樣的報(bào)文的各個字符之間進(jìn)行傳輸時(shí)不能超過一個最大間歇,因?yàn)榉駝t的話就會識別出一個錯誤。這個間歇例如預(yù)定為1毫秒,它也被稱作字符間時(shí)間間隔(Inter-Charaker-Timeout)。此外,在兩個前后連續(xù)的才艮文之間還有一個空閑時(shí)間(Inter-Frame-Timeout)(圖l),例如為2毫秒,從而可以由接收方在必要時(shí)正確執(zhí)行所需的錯誤處理。如圖2示出的錯誤-異常碼(Error-Exception-Code)和錯誤碼的反向傳輸,即檢測到一個錯誤并識別出什么錯誤的通知,最好僅在識別出一個這樣的錯誤時(shí)由接收方實(shí)現(xiàn),并且符合目的地在接收方接收到來自發(fā)送者的CRC之后一到兩個毫秒內(nèi)開始反向傳輸。因此,上述優(yōu)選的、但僅僅是示例性的幀結(jié)構(gòu)以及時(shí)間關(guān)系對于其他的協(xié)議是兼容的,例如與Modbus協(xié)議兼容。然而與這樣的Modbus協(xié)議不同的是,在應(yīng)用本發(fā)明時(shí),功能編碼符合目的地被限制在功能編碼字節(jié)中的低7位。對于非周期性服務(wù),主機(jī)通過對最高有效位進(jìn)行置位向一個或多個從機(jī)傳遞信號,表明主機(jī)只有等到下一個PD讀訪問之后才有可能得到對于請求的應(yīng)答,如圖1所示。然而,由于這個最高有效位只是在發(fā)送方和接收方的協(xié)i義棧之間才被插入到數(shù)據(jù)流中,因此在OSI層次模型第7層中的命令也與Modbus總線兼容。數(shù)據(jù)字(16位)的傳輸例如以Big-Endiaii格式來實(shí)現(xiàn),即首先傳輸高字節(jié)。如同前面已經(jīng)指出的,本發(fā)明是基于基礎(chǔ)的周期性架構(gòu)的數(shù)據(jù)交換,其以固定定義的間隔進(jìn)行,并且最好被劃分成上述的PD讀訪問和PD寫訪問,或者說被劃分成PD讀周期和PD寫周期,使得通過PD寫訪問將數(shù)據(jù)從主機(jī)發(fā)送到從機(jī),并通過PD讀訪問實(shí)現(xiàn)另一個方向上的傳輸,即主要是將數(shù)據(jù)從從機(jī)發(fā)送到主機(jī)。對于下面的描述,進(jìn)一步參考了以下事實(shí),即相應(yīng)的過程數(shù)據(jù)是由16位組成的,并被稱為過程數(shù)據(jù)信道(PDC)。因此,PD寫訪問特別被用在當(dāng)主機(jī)要把周期性信息發(fā)送到一個包含許多現(xiàn)場設(shè)備的站的時(shí)候。相應(yīng)地,在這種情況下,所有連接到的數(shù)據(jù)),從而近于同步地^行所期望的動作。這樣的PD寫訪問例如在圖3中示出。如果一個用戶,甚至也可能是主機(jī)本身,在傳輸之后或傳輸期間確定了一個錯誤,則它會在基于PD寫服務(wù)的傳輸結(jié)束之后生成一個例如在圖3中示出的錯誤應(yīng)答。由于當(dāng)識別出錯誤時(shí)這個錯誤應(yīng)答被傳輸回來,并且如前面已經(jīng)提到的,根據(jù)一個優(yōu)選實(shí)施例,所有相連的用戶同時(shí)讀取所有的數(shù)據(jù),本發(fā)明建議所有用戶都響應(yīng)于一個共同讀取的錯誤應(yīng)答丟棄最后所傳輸?shù)臄?shù)據(jù),使得來自最后有效的、即無錯誤的周期的數(shù)據(jù)繼續(xù)有效。由主機(jī)執(zhí)行的報(bào)文重復(fù)不會馬上進(jìn)行,而是在為PD寫服務(wù)所預(yù)留的下一個時(shí)隙之中進(jìn)行。要傳輸?shù)腜DC的數(shù)目原則上是通過主機(jī)配置來確定的。如果將其設(shè)置為0,則不執(zhí)行PD寫訪問。與PD寫服務(wù)及對數(shù)據(jù)線的相應(yīng)訪問不同的是,PD讀服務(wù)不是可任選的。原則上它用于將數(shù)據(jù)從所述站中的現(xiàn)場設(shè)備傳輸?shù)缴霞壍目刂葡到y(tǒng)或主機(jī)。然而,根據(jù)本發(fā)明,參照PD讀服務(wù)及對數(shù)據(jù)線的相關(guān)訪問,其使得數(shù)據(jù)也能在所述站內(nèi)被分發(fā),即實(shí)際上在各個現(xiàn)場設(shè)備之間進(jìn)行分發(fā)。一個PD讀訪問期間的示例性協(xié)議幀結(jié)構(gòu)在圖4中示出。對于圖4中所示的每個PDC都存在一個所謂的"生成器(Produzent)",它在正確的時(shí)刻將數(shù)據(jù)字(16位)輸出到主線上。根據(jù)本發(fā)明,本發(fā)明所述系統(tǒng)的從機(jī)和主機(jī)都能作為生成數(shù)據(jù)的裝置。其不僅可以發(fā)布上級系統(tǒng)的數(shù)據(jù),而且還能發(fā)布它自身的數(shù)據(jù),例如數(shù)字輸入數(shù)據(jù)。主機(jī)以傳輸相應(yīng)的地址和功能編碼開始執(zhí)行每一次PD讀訪問。緊接著第一個PDC的生成器例如有500微秒的時(shí)間開始執(zhí)行它的數(shù)據(jù)傳輸。如果例如在750微秒之后傳輸仍沒有開始,主機(jī)就知道該生成器還沒有準(zhǔn)備就緒或者不可用。在這種情況下,它通過嵌入一個相應(yīng)的與特性(Profile)有關(guān)的錯誤碼而為相應(yīng)的PDC生成一個占位符。通過這樣的錯誤處理,后續(xù)的生成器不會察覺到有任何差別,并且在為它們所提供的時(shí)間窗口中開始它們的傳輸。如果所有的PDC均已被讀入,則主機(jī)生成一個校驗(yàn)和CRC。所有的用戶也同樣計(jì)算一個校驗(yàn)和,并將其與主機(jī)所生成的校驗(yàn)和進(jìn)行比較。如果發(fā)現(xiàn)有差異,則生成例如圖4中所示的錯誤應(yīng)答,并且根據(jù)所有用戶同時(shí)讀取所有數(shù)據(jù)的這個優(yōu)選實(shí)施例,所有用戶將丟棄最后這個周期中的數(shù)據(jù)。此外,為了生成校驗(yàn)和,有利的是,生成器并不是用它們從總線讀取回來的數(shù)據(jù),而是用它傳輸?shù)娇偩€上的數(shù)據(jù)來執(zhí)行校驗(yàn)和的生成,因?yàn)橹挥羞@樣才能保證完整的監(jiān)控。這種PD讀訪問的一個明顯的應(yīng)用例如是將數(shù)據(jù)在顯示器上進(jìn)行可視化。另夕卜,其它的實(shí)際應(yīng)用還包括現(xiàn)場設(shè)備的有效功率值的輸出,例如包括模擬輸出端上的電子負(fù)栽繼電器發(fā)動機(jī)控制(ELR-MM,ElectronicLoadRelay-MotorManagement),或者借助附加的數(shù)字輸入端和輸出端對ELR-MM的擴(kuò)展。各個PDC的配置最好通過以下的建議來實(shí)現(xiàn)。正如已經(jīng)提到過的,一個PDC最好由一個16位數(shù)據(jù)字構(gòu)成,它通過二進(jìn)制補(bǔ)碼形式來表示。因此,一般的用戶可以通過所定義的描述來解釋該數(shù)據(jù),其中對所述描述的請求也可以通過一個服務(wù)來實(shí)現(xiàn)。這樣的一個描述的內(nèi)容除了特性之外還包括過程數(shù)據(jù)值的尺度范圍和一個符號名稱,該符號名稱可包含16個字符。因此,一個PDC例如根據(jù)下式建立8080,當(dāng)測量值<尺度下限(S丄)時(shí)8001,當(dāng)測量值>尺度上限(5//)時(shí)'測量值-虹)*65024其它其中過程數(shù)據(jù)的表述實(shí)現(xiàn)了根據(jù)本發(fā)明的傳輸系統(tǒng)與總線在一個相應(yīng)的兼容模式中的綁定集成,并通過上式實(shí)現(xiàn)了PDC的尺度調(diào)節(jié)。通過這個特性進(jìn)一步規(guī)定了當(dāng)一個用戶不可用時(shí)主機(jī)發(fā)送哪個數(shù)值。在下面的表格中再次表明了作為示例的特性、其相應(yīng)的描述、以及分別對應(yīng)的基本單位和錯誤碼的列表。<table>tableseeoriginaldocumentpage14</column></row><table><table>tableseeoriginaldocumentpage15</column></row><table>除了由主機(jī)生成的錯誤碼8040h以外,符合目的的是,還定義了其它的錯誤碼,但它們通常與PDC的狀態(tài)有關(guān)而不是與整個現(xiàn)場設(shè)備的狀態(tài)有關(guān)。因此,與應(yīng)用有關(guān)的診斷信息通過非周期性服務(wù)"診斷訪問"在站中被分發(fā),下面的表格列出幾個作為示例的錯誤碼及其相應(yīng)的錯誤描述。<table>tableseeoriginaldocumentpage15</column></row><table><table>tableseeoriginaldocumentpage16</column></row><table>在根據(jù)本發(fā)明的傳輸系統(tǒng)中或者根據(jù)本發(fā)明的方法中,診斷數(shù)據(jù)的分析最好通過輪詢(Polling)來實(shí)現(xiàn),即通過發(fā)送輪詢請求來實(shí)現(xiàn)。只要一旦有一個空閑的時(shí)隙可用,分配給所述傳輸系統(tǒng)的主機(jī)就自動執(zhí)行診斷周期。被規(guī)定作為生成器的用戶通過診斷訪問而被監(jiān)控。所有其它用戶將按順序被輪詢。在復(fù)位之后,不僅在診斷數(shù)據(jù)中而且在過程數(shù)據(jù)中,具有等于或大于一個例如為10h的特性數(shù)的特性的所有PDC都發(fā)送錯誤編碼8020h。只有等該用戶的配置數(shù)據(jù)已經(jīng)由主機(jī)檢驗(yàn)并確認(rèn)后,它的PDC才被激活。根據(jù)本發(fā)明,可嵌入到周期性傳輸協(xié)議模式中的診斷訪問的基本工作方式是可以與前面提到的PD讀訪問相類比的。然而,一個主要區(qū)別在于,所傳輸?shù)氖菭顟B(tài)信息而非過程數(shù)據(jù)。在診斷訪問過程中的報(bào)文幀的一個例子在圖5中示出。如果一個用戶擁有很多PDC,它可以同時(shí)報(bào)告不同的事件。如果只有一個信道可用于診斷,那么出于安全性的原因始終只傳輸最高優(yōu)先級的信息。診斷信息例如由兩個字節(jié)組成,即狀態(tài)類和狀態(tài)碼。狀態(tài)碼作為位字段而被分析,也就是說,多個字段也是可以或者說是可能的。狀態(tài)類的編碼越高,事件的優(yōu)先級也越高。例如,所有低于80h的類被認(rèn)作是消息,而不會被歸為錯誤。診斷信息的幾個例子在下表中列出。<formula>formulaseeoriginaldocumentpage17</formula><table>tableseeoriginaldocumentpage18</column></row><table><table>tableseeoriginaldocumentpage19</column></row><table>圖6示出了一種本發(fā)明所述傳輸系統(tǒng)的可能的配置拓樸結(jié)構(gòu)。一個主機(jī)單元l,在本例中是筆記本電腦,根據(jù)圖l通過一個USB接口與現(xiàn)場站10相連,該站包括多個現(xiàn)場設(shè)備ll?,F(xiàn)場站IO中的現(xiàn)場設(shè)備11或從機(jī)的物理連接不僅可以通過集成主線(例如通過底板總線)而且也可以通過一條單獨(dú)的電纜12來實(shí)現(xiàn)。除了圖6中所示的拓樸結(jié)構(gòu)之外,本發(fā)明所述傳輸系統(tǒng)也可以例如被用于將現(xiàn)場站集成到如圖7所示的現(xiàn)場總線環(huán)境中。在這里,才艮據(jù)本發(fā)明的傳輸系統(tǒng)例如通過一個網(wǎng)關(guān)13連接到一個現(xiàn)場總線,如Profi總線,其它現(xiàn)場總線系統(tǒng),如Interbus總線、CAN總線、設(shè)備網(wǎng)(DeviceNet)、以太網(wǎng)或者甚至是無線解決方案也可以連接到本發(fā)明所述的傳輸系統(tǒng)。本發(fā)明所述傳輸系統(tǒng)的PDC的形成以1:1的比例實(shí)現(xiàn)在目標(biāo)系統(tǒng)、現(xiàn)場總線系統(tǒng)中,其中非周期性數(shù)據(jù)(例如參數(shù)、特征曲線和測量數(shù)據(jù))的傳輸就像操作軟件的集成那樣與目標(biāo)系統(tǒng)相關(guān)。例如基于Profi總線系統(tǒng),非周期性數(shù)據(jù)通過DPV1服務(wù)傳輸。各個現(xiàn)場設(shè)備的配置不僅可以通過Profi總線經(jīng)由DTM(設(shè)備類型管理)來實(shí)現(xiàn),即具有第2類主機(jī)的引導(dǎo)系統(tǒng),也可以以本地方式在所描述的現(xiàn)場站中通過用作傳輸系統(tǒng)主機(jī)l的筆記本電腦來實(shí)現(xiàn)。如果目標(biāo)系統(tǒng)不允許任何制造商無法掌控的參數(shù)化,或者如果為此而付出開發(fā)成本過高,例如在Interbus、CAN、設(shè)備網(wǎng)的情況下,這種本地配置應(yīng)當(dāng)始終作為一種出路。通過把本發(fā)明所述傳輸系統(tǒng)的本地主機(jī)1插入到現(xiàn)場站11的網(wǎng)關(guān)13中,通知所述網(wǎng)關(guān)13,用于建立本發(fā)明所述傳輸系統(tǒng)的具有更高優(yōu)先級的主機(jī)接管了現(xiàn)場站10的控制。于是,網(wǎng)關(guān)13停止所有目前的非周期性命令,接著告知現(xiàn)場總線系統(tǒng)或第2類主機(jī)的上級控制器(第l類主機(jī))整個站不可用。此外,例如有l(wèi)秒鐘的時(shí)間以使所述站進(jìn)入安全狀態(tài)。在這段時(shí)間結(jié)束后,集成在站中的總線耦合器變?yōu)榉腔顒拥?,本發(fā)明所述傳輸系統(tǒng)的主機(jī)l最好在例如500毫秒的總線超時(shí)之后接管所述站的本地控制。這樣,本發(fā)明所述傳輸系統(tǒng)的主機(jī)1繼續(xù)不時(shí)地發(fā)起周期性數(shù)據(jù)交換,以便從過程輸入數(shù)據(jù)中讀取,其中應(yīng)當(dāng)選擇比例如2秒鐘的總線復(fù)位時(shí)間更短的時(shí)間,各現(xiàn)場設(shè)備保持在安全狀態(tài)。網(wǎng)關(guān)13同樣也讀取這些數(shù)據(jù),并再次更新它的現(xiàn)場總線一側(cè)的過程輸出數(shù)據(jù)。如果網(wǎng)關(guān)13檢測到與本發(fā)明所述傳輸系統(tǒng)的主機(jī)l的連接被斷開,它自動開始周期性數(shù)據(jù)交換以讀取過程數(shù)據(jù)。如果一個完整周期已經(jīng)結(jié)束,那么現(xiàn)場總線一側(cè)的過程數(shù)據(jù)被再次更新,并告知上級控制器現(xiàn)場站已經(jīng)可用。因此,本發(fā)明將熱插拔能力和周期性過程數(shù)據(jù)、非周期性過程數(shù)據(jù)(包括診斷數(shù)據(jù))的與條件有關(guān)的傳輸結(jié)合起來,其具有協(xié)議開銷低的優(yōu)點(diǎn),并且實(shí)現(xiàn)了向所有用戶同時(shí)傳送和傳輸過程數(shù)據(jù)。協(xié)議效率導(dǎo)致傳輸介質(zhì)中的總體數(shù)據(jù)速率降低,使得協(xié)議處理不必再由特殊的協(xié)議芯片完成,而是可以通過用戶已有的微控制器來實(shí)現(xiàn)。因此,用于總線耦合的硬件開銷只來自物理總線,特別是線路驅(qū)動器。根據(jù)本發(fā)明,低時(shí)鐘頻率的其它附帶效應(yīng)是工作中具有高抗干擾性和低發(fā)射干擾,并且免去了額外的外部定時(shí)。盡管仍然需要為每個設(shè)備分配一個地址,但DIP或編碼開關(guān)的容易出錯的設(shè)置可以通過并非本發(fā)明目標(biāo)的特殊機(jī)制而得以避免。總的來說,基于上述描述,本發(fā)明能夠?qū)崿F(xiàn)在一個通信部件內(nèi)多個用戶之間的數(shù)據(jù)交換,尤其是在PD讀訪問過程中。這樣得到了協(xié)議的高效率以及數(shù)據(jù)傳遞/傳輸時(shí)的同步。這些數(shù)據(jù)最好由所有用戶同時(shí)讀取進(jìn)一步提高了效率,因?yàn)檫@使得PDC只需要在總線上被傳輸一次,另外還省去了用于多主機(jī)系統(tǒng)的仲裁開銷。另外,本發(fā)明舍棄了冗余信息,尤其是在PD寫訪問過程中,并用包括診斷數(shù)據(jù)在內(nèi)的非周期性數(shù)據(jù)來填充相應(yīng)的時(shí)隙,而且對于非周期性的數(shù)據(jù)交換來說,不會由于可能出現(xiàn)的所需應(yīng)答的延遲而影響PDC傳輸中的實(shí)時(shí)性。權(quán)利要求1.一種用于通過傳輸信道在連接到所述傳輸信道的至少兩個用戶單元之間傳輸周期性數(shù)據(jù)和非周期性數(shù)據(jù)的方法,其中針對協(xié)議特定的周期性數(shù)據(jù)傳輸至少在一個用作主機(jī)的用戶單元和至少一個用作從機(jī)的用戶單元之間執(zhí)行,其特征在于,對要在一個即將到來的傳輸周期內(nèi)傳輸?shù)臄?shù)據(jù)進(jìn)行檢驗(yàn),以檢驗(yàn)該數(shù)據(jù)相對于在前一周期內(nèi)的相應(yīng)數(shù)據(jù)的冗余性和現(xiàn)實(shí)性,當(dāng)發(fā)現(xiàn)在一個即將到來的傳輸周期內(nèi)只有冗余數(shù)據(jù)而沒有新的信息內(nèi)容時(shí),用非周期性數(shù)據(jù)來代替所述數(shù)據(jù)插入到為所述數(shù)據(jù)而提供的數(shù)據(jù)區(qū)域中。2.根據(jù)上述權(quán)利要求的方法,其特征還在于,在每個傳輸周期內(nèi),主機(jī)單元分別在第一個數(shù)據(jù)周期期間從從機(jī)單元讀出過程輸入數(shù)據(jù),并在相應(yīng)接下來的第二個數(shù)據(jù)周期期間傳輸過程輸出數(shù)據(jù)或非周期性數(shù)據(jù)。3.才艮據(jù)上述權(quán)利要求之一的方法,其特征還在于,非周期性數(shù)據(jù)被插入以用于由主機(jī)單元傳輸至至少一個從機(jī)單元和/或由至少一個從機(jī)單元傳輸至主機(jī)單元。4.根據(jù)上述權(quán)利要求之一的方法,其特征還在于,周期性數(shù)據(jù)被插入以用于在各個從機(jī)單元之間傳輸、由從機(jī)單元傳輸至主機(jī)單元、和/或由主機(jī)單元傳輸至從機(jī)單元。5.根據(jù)上述權(quán)利要求之一的方法,其特征還在于,所有的用戶單元在一個數(shù)據(jù)周期內(nèi)同時(shí)讀取所傳輸?shù)男畔ⅰ?.根據(jù)上述權(quán)利要求之一的方法,其特征還在于,用戶單元通過分別接收的數(shù)據(jù)或同時(shí)讀取的數(shù)據(jù)形成一個CRC,并將其與附加在所接收的或同時(shí)讀取的數(shù)據(jù)上的CRC進(jìn)行比較。7.根據(jù)前一權(quán)利要求的方法,其中當(dāng)識別出錯誤時(shí)傳送回一個錯誤報(bào)告。8.根據(jù)上述權(quán)利要求之一的方法,其特征還在于,每個數(shù)據(jù)周期以傳輸?shù)刂烽_始,接著傳輸功能編碼。9.根據(jù)上述權(quán)利要求之一的方法,其特征還在于,傳輸請求數(shù)據(jù)、應(yīng)答數(shù)據(jù)或診斷數(shù)據(jù)作為所述非周期性數(shù)據(jù)。10.根據(jù)上述權(quán)利要求之一的方法,其特征還在于,由主機(jī)單元預(yù)先確定一個或多個從機(jī)用戶要傳輸非周期性數(shù)據(jù)的相應(yīng)指定的時(shí)刻。11.根據(jù)上述權(quán)利要求之一的方法,其特征還在于,為了預(yù)先確定所述相應(yīng)的指定時(shí)刻,主機(jī)單元在其中傳輸非周期性數(shù)據(jù)的前一個數(shù)據(jù)周期內(nèi)同時(shí)傳輸一個相應(yīng)的功能編碼。12.根據(jù)上述權(quán)利要求之一的方法,其特征還在于,至少在傳輸了預(yù)定的最大數(shù)目的包含非周期性數(shù)據(jù)的連續(xù)數(shù)據(jù)周期之后,執(zhí)行一個包含周期性數(shù)據(jù)的普通數(shù)據(jù)周期。13.根據(jù)上述權(quán)利要求之一的方法,其特征還在于,如果在一個預(yù)先確定的時(shí)間段內(nèi)不存在沒有錯誤的周期性數(shù)據(jù)交換,則識別出一個錯誤并開始執(zhí)行一個預(yù)先參數(shù)化的錯誤處理。14.根據(jù)上述權(quán)利要求之一的方法,其特征還在于,在每個數(shù)據(jù)周期期間傳輸一個由地址、功能編碼、有效數(shù)據(jù)及CRC所組成的報(bào)文。15.根據(jù)上述權(quán)利要求之一的方法,其特征還在于,在兩個前后連續(xù)的報(bào)文之間具有一個空閑時(shí)間,在所述空閑時(shí)間內(nèi)沒有數(shù)據(jù)傳輸。16.4艮據(jù)上述權(quán)利要求之一的方法,其特征還在于,在一個數(shù)據(jù)周期期間有錯誤地傳輸?shù)臄?shù)據(jù)直到相應(yīng)的下一個數(shù)據(jù)周期才會被重復(fù)發(fā)送。17.根據(jù)上述權(quán)利要求之一的方法,其特征還在于,當(dāng)識別出在一個預(yù)計(jì)要進(jìn)行數(shù)據(jù)傳輸?shù)臄?shù)據(jù)周期內(nèi)沒有可用的從機(jī)單元時(shí),主機(jī)單元在分配給從機(jī)單元的相應(yīng)時(shí)間窗口內(nèi)嵌入一個占位符。18.根據(jù)上述權(quán)利要求之一的方法,其特征還在于,在一個數(shù)據(jù)周期期間,為進(jìn)行分析而傳輸?shù)脑\斷數(shù)據(jù)以主機(jī)單元的一個發(fā)送請求而開始。19.根據(jù)前一權(quán)利要求的方法,其特征還在于,在一個診斷周期中優(yōu)先傳輸具有較高優(yōu)先級的信息。20.—種用于執(zhí)行上述權(quán)利要求之一所述方法的傳輸系統(tǒng),包括至少一個作為主機(jī)(1)的用戶單元和至少一個作為從機(jī)并通過一條數(shù)據(jù)線與主機(jī)相連的用戶單元(11),其中所述數(shù)據(jù)線用于發(fā)送和接收數(shù)據(jù),所述數(shù)據(jù)基于針對應(yīng)用特定的協(xié)議以周期性的時(shí)間間隔在主機(jī)和至少一個從機(jī)之間、以及在至少一個從機(jī)和主機(jī)之間傳輸,主機(jī)(1)具有一個專門的檢驗(yàn)機(jī)構(gòu),用于對為即將到來的周期性傳輸而提供的數(shù)據(jù)進(jìn)行檢驗(yàn),以檢驗(yàn)該數(shù)據(jù)相對于在前一個周期性傳輸期間已經(jīng)傳輸?shù)摹⒋鎯υ诖鎯ζ髦械臄?shù)據(jù)的冗余性和現(xiàn)實(shí)性,并且還具有一個與所述檢驗(yàn)機(jī)構(gòu)相連的專門的判斷機(jī)構(gòu),用于判斷是否要將非周期性數(shù)據(jù)插入到本來只傳輸冗余數(shù)據(jù)而不傳輸新信息內(nèi)容的數(shù)據(jù)區(qū)域中,并且在答案為"是"的情況下判斷將哪些非周期性數(shù)據(jù)插入到這個數(shù)據(jù)區(qū)域中。21.根據(jù)前一權(quán)利要求的傳輸系統(tǒng),包括多個從機(jī)(ll),這些從機(jī)形成了一個用戶站(10),主機(jī)(1)通過一條共用的用于發(fā)送和接收數(shù)據(jù)的數(shù)據(jù)線連接到這個用戶站。全文摘要本發(fā)明的一個目的在于,指出一種通過傳輸信道傳輸數(shù)據(jù)的途徑,其有效避免了目前由環(huán)狀結(jié)構(gòu)和線狀結(jié)構(gòu)所帶來的缺點(diǎn),并將一種拓?fù)漕愋偷膬?yōu)點(diǎn)與另一種拓?fù)漕愋偷膬?yōu)點(diǎn)結(jié)合起來。為此,本發(fā)明建議了一種用于通過傳輸信道在連接到所述傳輸信道的至少兩個用戶單元之間傳輸周期性數(shù)據(jù)和非周期性數(shù)據(jù)的方法,其中針對協(xié)議特定的周期性數(shù)據(jù)傳輸至少在一個用作主機(jī)的用戶單元和至少一個用作從機(jī)的用戶單元之間執(zhí)行,其特征在于,對要在一個即將到來的周期內(nèi)傳輸?shù)臄?shù)據(jù)進(jìn)行檢驗(yàn),以檢驗(yàn)該數(shù)據(jù)相對于在前一周期內(nèi)的相應(yīng)數(shù)據(jù)的冗余性和現(xiàn)實(shí)性,當(dāng)發(fā)現(xiàn)在一個即將到來的傳輸周期內(nèi)只有冗余數(shù)據(jù)而沒有新的信息內(nèi)容時(shí),用非周期性數(shù)據(jù)來代替所述數(shù)據(jù)插入到為所述數(shù)據(jù)而提供的數(shù)據(jù)區(qū)域中。文檔編號G05B19/042GK101300534SQ200680041032公開日2008年11月5日申請日期2006年10月31日優(yōu)先權(quán)日2005年11月4日發(fā)明者A·科瑞克申請人:菲尼克斯電氣公司