摘要: 數(shù)控網(wǎng)絡(luò)系統(tǒng)是數(shù)控系統(tǒng)發(fā)展的趨勢(shì),在這類系統(tǒng)中,結(jié)點(diǎn)之間通信的最大要求是高實(shí)時(shí)性、高可靠性,最大特點(diǎn)是通信數(shù)據(jù)量較小,且具有周期性。本論文將根據(jù)數(shù)控網(wǎng)絡(luò)的這些特點(diǎn),詳細(xì)介紹如何在物理層,用VHDL 語(yǔ)言設(shè)計(jì)一個(gè)滿足這些要求的模塊,通過光纖實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的通信。
1:引言:
數(shù)控技術(shù)是制造業(yè)實(shí)現(xiàn)現(xiàn)代化的戰(zhàn)略性基礎(chǔ)技術(shù),同時(shí)也是提高國(guó)家綜合國(guó)力和國(guó)防現(xiàn)代化的重要戰(zhàn)略性基礎(chǔ)技術(shù)。隨著數(shù)字驅(qū)動(dòng)技術(shù)及各種制造技術(shù)的發(fā)展,提高數(shù)控系統(tǒng)的靈活多變性,可擴(kuò)展性,可移植性、互操作性、互交換性、可重用性已成為迫切的需要。為此,世界各先進(jìn)工業(yè)國(guó)家紛紛將研制開放式數(shù)控系統(tǒng)體系結(jié)構(gòu)列入重點(diǎn)發(fā)展計(jì)劃,為適應(yīng)這一發(fā)展態(tài)勢(shì),及進(jìn)一步提高工廠生產(chǎn)的自動(dòng)化,數(shù)控網(wǎng)絡(luò)系統(tǒng)必將成為未來數(shù)控技術(shù)競(jìng)爭(zhēng)的制高點(diǎn)。而解決在這類網(wǎng)絡(luò)中數(shù)據(jù)的高實(shí)時(shí),高可靠地傳輸,是構(gòu)成數(shù)控網(wǎng)絡(luò)的一個(gè)核心問題。本論文將根據(jù)這網(wǎng)絡(luò)的特點(diǎn)集中介紹如何用光纖實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的高速高可靠傳輸。
2:網(wǎng)絡(luò)數(shù)控的特點(diǎn):
目在數(shù)控網(wǎng)絡(luò)系統(tǒng)中,應(yīng)用的協(xié)議有SERCOS(Serial Real-time Communication System)和HSB (Highspeech Serial Bus)等。
圖 1 :SERCOS 網(wǎng)絡(luò)拓樸
SERCOS 接口的控制器可以根據(jù)需要接上一個(gè)或幾個(gè)環(huán)結(jié)構(gòu)。圖1 的拓樸圖只是一個(gè)例子,由其拓樸結(jié)構(gòu)也可以看出,它糅合使用了主從結(jié)構(gòu)和環(huán)狀結(jié)構(gòu)。HSB 的拓樸結(jié)構(gòu)相對(duì)SERCOS 要簡(jiǎn)單些。它主要是主從式結(jié)構(gòu)。由于數(shù)控系統(tǒng)的特點(diǎn),它對(duì)底層設(shè)備間的數(shù)據(jù)通信要求比較高,必須保證高實(shí)時(shí)性和高可靠性的要求。例如CNC(Computer Numeric Controller)控制器主機(jī)單元和插補(bǔ)軸單元、驅(qū)動(dòng)單元等的連接,這類控制器具有ms 級(jí)的較短控制周期,同時(shí)要求較高的通信可靠性,通信錯(cuò)誤將導(dǎo)致較嚴(yán)重的后果,如加工零件的報(bào)廢等。為了在工廠那種比較惡劣的環(huán)境中確保這些要求的滿足,構(gòu)成的數(shù)控網(wǎng)絡(luò)的通信介質(zhì)得用光纖。
這類高實(shí)時(shí)性、高可靠性的底層設(shè)備間典型的通信周期是1~5ms 之間,典型的有效通信數(shù)據(jù)量在500~2000bit 之間。以上特點(diǎn)決定了CNC控制器通信存在短周期、短數(shù)據(jù)幀等特點(diǎn),所以在物理層用VHDL在FPGA 上設(shè)計(jì)點(diǎn)對(duì)點(diǎn)通信模塊時(shí),必須考慮到這些基本的要求。不管是構(gòu)成 SERCOS 還是HSB 網(wǎng)絡(luò),為了能夠擴(kuò)展更多的結(jié)點(diǎn),點(diǎn)對(duì)點(diǎn)的有效位速度都應(yīng)該不小于4M,雖然組網(wǎng)要求的有效位速率大于4Mbps,但是由于協(xié)議本身的開銷,以及為了保證高可靠性而必須的通信冗余量,這類網(wǎng)絡(luò)中實(shí)際通信位速率要遠(yuǎn)大于有效位速率。其通信效率保守估計(jì)只有15%~30%。
3:光纖通信在數(shù)控網(wǎng)絡(luò)中的實(shí)現(xiàn)
不管是 SERCOS 還是HSB 結(jié)構(gòu)的數(shù)控網(wǎng)絡(luò)系統(tǒng),當(dāng)經(jīng)過仲裁從站獲得總線控制權(quán)后,主站跟從站的通信就是點(diǎn)對(duì)點(diǎn)的通信。所以依據(jù)數(shù)控系統(tǒng)中傳輸?shù)臄?shù)據(jù)特點(diǎn),實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的高實(shí)時(shí)、高可靠光纖通信是基本環(huán)節(jié)。這一環(huán)節(jié)是在物理層來實(shí)現(xiàn)的。
在物理層點(diǎn)對(duì)點(diǎn)通信的外圍接口模型如下:
圖 2 :外圍接口模型
該模塊是用VHDL 語(yǔ)言在FPGA 中實(shí)現(xiàn)的。它的功能是將在數(shù)據(jù)鏈路層打包好的數(shù)據(jù)幀編碼后通過光纖傳送到總線上去,以及從總線上接收串行的數(shù)據(jù)解碼后交給數(shù)據(jù)鏈路層。物理層的主要工作幾乎都由該模塊來實(shí)現(xiàn)。
該模塊的具體任務(wù)包括:與數(shù)據(jù)鏈路層接口、與光纖收發(fā)器的接口、數(shù)據(jù)的編解碼、數(shù)據(jù)的并串轉(zhuǎn)換、數(shù)據(jù)過采樣或數(shù)據(jù)時(shí)鐘恢復(fù)、數(shù)據(jù)字對(duì)齊等功能。
1):與鏈路層接口:
Outport[15..0]:要發(fā)送到總線中的十六位數(shù)據(jù),低八位是高八位數(shù)據(jù)的地址。
inport[15..0]:從總線中接受到的十六位數(shù)據(jù), 低八位是高八位數(shù)據(jù)的地址。
senddata:發(fā)送數(shù)據(jù)信號(hào),當(dāng)給它一個(gè)跳變時(shí),outport 中數(shù)據(jù)將進(jìn)行CRC、4b/5b 編碼,然后從data_out中串行發(fā)送。
Ack_y:當(dāng)接收到一個(gè)對(duì)方發(fā)送過來的,表明對(duì)方已經(jīng)正確接收到數(shù)據(jù)的握手信號(hào)時(shí),它會(huì)發(fā)生一次跳變。
Ack_n:當(dāng)接收到一個(gè)對(duì)方發(fā)送過來的,表明對(duì)方?jīng)]有正確接收到數(shù)據(jù)的握手信號(hào)時(shí),它會(huì)發(fā)生一次跳變。
Receive_ok:當(dāng)接收到對(duì)方發(fā)來的數(shù)據(jù)并且crc 校驗(yàn)正確后,它會(huì)有一個(gè)跳變,同時(shí)把數(shù)據(jù)從inport端口輸出,給對(duì)方發(fā)送一個(gè)接收正確的握手信號(hào)幀。當(dāng)接收的數(shù)據(jù)沒有通過crc 校驗(yàn)時(shí),receive_ok 不變,數(shù)據(jù)不輸出,只給對(duì)方發(fā)送一個(gè)接收錯(cuò)誤的握手信號(hào)幀。
2):與光纖的接口:
data_in:發(fā)送的串行數(shù)據(jù)。
data_out:接收的串行數(shù)據(jù)。