時間:2014-08-08 17:19:28來源:趙志方 盧欣霽 董巖
摘要:BiSS通信協議是一種全雙工同步串行總線通信協議,專門為滿足實時、雙向、高速的傳感器通信而設計,在硬件上兼容工業標準SSI(同步串行接口協議)總線協議。其典型應用是在運動控制領域實現伺服驅動器與編碼器通信。
編碼器總線的現狀和發展趨勢
隨著現場總線技術發展,SOC片上系統逐漸普及,控制系統全數字化已成該領域的發展方向和研究熱點。編碼器也在向數字化發展,從而帶來傳絕對式編碼器和相關通信總線的技術進步。由于編碼器在運動控制領域應用最多,編碼器總線要滿足運動控制器對精度、分辨率、響應速度的要求,應包括如下幾個特征:
1、高速通信
2、時延固定
3、數據診斷
4、雙向通信
5、低成本
高速通信有助于提高響應速度;編碼器的精度和分辨率決定了控制系統的精度,時延是影響編碼器精度的重要因素。運動控制器發出“讀指令”的時刻到編碼器開始采樣這段時間理想情況下應是是固定的。這個時延越小,編碼器的編碼值的物理意義越準確。從而有利于伺服控制器的算法調節。
試想利用CAN總線實現編碼器通信的情況。首先,伺服控制器發出一個CAN通信幀;然后,編碼器從CAN通信幀提取出“讀指令”;最后,編碼器進行數據采樣,并回傳數據。這樣的采樣滯后是多長時間,時長是固定的么?作為對比,BiSS在MA(MA是主機發出的時鐘)的第一上升沿采樣數據,理論上是沒有延遲的。
可以說,通用現場總線目前還不適合高速編碼器通信。專門用于高速數據通信的傳感器總線大都是編碼器廠商開發,有很強的封閉性。比較有代表性的總線通信協議有EnDat2.2、Hiperface、SSI、NRZ等等。BiSS是國際通用協議且協議開放。BiSS通信協議目前的版本是BISS-C,應用BISS無需任何許可費用,BiSS協會會員還可以申請獲得免費的IP核源代碼和相關技術支持,維持BiSS協會會員資格無需繳納任何費用,申請入會也是免費的
BiSS通信協議的關鍵技術特征
1、二線串行同步數據總線,采用RS422接口,波特率達到10Mbit/s;采用LVDS接口,波特率>10Mbit/s,這反映了BiSS有高的響應速度;
2、通信效率高,每10uS傳輸超過64個比特,有效負載率大于80%。這反映出BiSS能承載高分辨率編碼器數據;
3、線路時分復用,包括每個通信周期傳輸一幀的數據通信信道和傳輸一個幀位的寄存器通信信道。其中,寄存器通信和數據通信完全獨立,互不干涉。對于不需要寄存器通信的應用場合,可以使用BiSS-CUnidirectional版本。這個版本的協議沒有寄存器通信。
這反映了采用BiSS的控制系統有更好的穩定性和便利性。
4、多種安全機制確保數據可靠,BiSS的延遲補償技術能補償傳輸線帶來的信號延遲,采用兩組CRC生成多項式分別對傳感器數據與寄存器數據進行校驗。BiSS協議幀還包括一位報警位和一位錯誤位,CRC生成多項式可自定義。6位CRC能滿足大多數應用,對于高安全場合(例如需要滿足歐洲安全標準的場合),BiSS可以使用16位CRC。
這反映了BiSS傳輸更可靠,采用BiSS的控制系統更可靠。
5、數據同步,BiSS利用時鐘信號同步傳感器數據,傳感器在第一個時鐘脈沖到來時進行數據更新,每一幀到達后續電子設備的數據其傳輸延遲都是相同的,方便后續電子設備進行時延補償,特別適合電機控制等對時間位置關系要求苛刻的應用場合。
這反映BiSS對于編碼器精度的影響很小,有助于提高控制系統的高速特性。
6、組網能力,通過BiSS可以構成單總線傳感器環網,一個通信周期采集全部傳感數據,并且信號采集是同步的。
這反映BiSS的擴展性和前瞻性。
7、即插即用,BiSS支持從寄存器讀出編碼器參數,來配置數據通信。凡是支持BiSS標準EDS和Profile的編碼器和控制系統都可以直接通信,無需修改任何程序。
這反映了BiSS高度的開放性和兼容性。
BiSS通信協議的基本內容
1、組網方式
圖1是BiSS的基本組網方式,叫point-to-point方式。后續電子設備(圖中為PLC),通過差分信號向傳感器提供時鐘,傳感器同步地通過差分信號向后續電子設備發出傳感數據。在BiSS協議中后續電子設備被稱為Master,傳感器被稱為Slave。在point-to-point方式下,Master可以接收Slave的數據,同時與Slave進行雙向數據通信。
圖1point-to-point組網
圖2是BiSS的多從機組網方式,叫Multi-slaveNetworking。Master在一個周期可以內完成與多個Slave之間的通信。所有的設備按照菊花鏈首尾連接,每個Slave有兩個端口,分別用于接收前端信號和向后端發送信號。這是一種類似流水線的工作方式,每個Slave接收上一個Slave的數據放在自己的發送隊列隊尾,同時將自身的數據優先發出。整個通信由Master發出的時鐘信號進行同步。Master通過MO信號將Actuator數據串行地移入到每個Slave,同時通過SL信號依次接收每個Slave的數據。
圖2Multi-slaveNetworking組網
2、BiSS的幀結構和數據通信
圖3描繪了point-to-point組網時的BiSS通信幀。MA由Master發出用于驅動通信,SL是Slave發出的數據信號。完成1個BiSS通信幀表示Master收到1幀數據。
圖3point-to-point組網的BiSS幀結構
圖4描繪了Multi-slaveNetworking組網的BiSS通信幀,對于每一個Slave而言,不但要發送自己的數據,而且要接收并轉發前一個Slave發過來的數據。
圖4Multi-slaveNetworking組網的BiSS幀結構
BiSS通信過程可以描述為如下幾個狀態的切換:IDLE(空閑),StartFrame(幀開始),Tranmission(發送),Timeout(超時)。
IDLE,空閑狀態;BiSS通信空閑,MA,SL保存常高。
StartFrame,開始幀通信:MA發送時鐘,在MA第一個上升沿,Slave鎖存傳感器狀態。在MA第二個上升沿,編碼器將SL拉低,用于應答Master的通信請求。
理想狀態下,SL拉低與MA第二上升沿的時延很小,在實際系統中,由于長線延遲、信號整形、濾波以及信號傳遞通過多級門電路等因素的綜合作用,SL相對MA信號存在一定的相移,造成SL拉低滯后MA第二上升沿一段時間,這個時間被稱為line-delay線路延遲,如果SL信號采樣電路不能修正這個延遲,那么總線的通信距離和通信速率都要降低,以保證SL信號被可靠地采樣。BiSS規定每個通信幀發起時都要檢測一次line-delay,并加以修正。從而確保BiSS通信波特率可以達到10Mbit/s。
在line-delay期間,MA持續輸出脈沖。
Tranmission,(發送):當SL信號從常高拉低后維持一段時間。這段時間叫ACK,表示Slave響應了MA信號,正在進行數據準備。通常ACK維持0.1us到8us之間,這與Slave數據是否準備就緒有關,對于特定的Slave,其ACK的長度是基本上是固定的。ACK期間MA持續輸出脈沖。當SL發送1個BIT的START位(常‘1’),表示Slave數據準備就緒。開始數據發送。
SL會順次發1個BIT的CDS信號,1個單周期字段(SCD);BiSS規定單周期字段長度要大于4個BIT,小于64個BIT。對于特定應用,字段長度由Slave廠商規定(例如:禹衡公司多圈編碼器的單周期位域包括16個BIT的多圈計數、17個BIT的單圈位置,2個BIT的錯誤告警和6個BIT的CRC校驗)。這個期間,MA持續輸出脈沖。
Timeout,(超時):當SCD發出完成后,SL維持0.5~40us的低電平,這個時間段被稱為Timeout,對于特定的應用,Timeout由Slave廠商規定。MA在Timeout期間發送CDM信號,該信號一直維持到SL被拉高,SL被拉高后,本次通信完全結束。
2、BiSS的寄存器通信
CDM和CDS是Master和Slave進行寄存器通信的信號。當Master與Slave進行個多個周期的數據通信后,Slave收到的Master發送的CDM序列和Master接收的CDS序列構成了BiSS寄存器通信幀,如下圖5所示。
圖5多個BiSS幀構成的寄存器通信序列
圖6、圖7描述了BiSS寄存器通信讀寫時序。通過時序圖,可以了解BiSS可以與編碼器進行雙向數據交換。BiSS的寄存器通信有CRC校驗,和讀回校驗(針對寫時序)。
BiSS的寄存器通信占用帶寬很少,對比EnData2.2和NRZ等有優勢。這是由于伺服控制器初始化時讀編碼器參數情況多,正常工作時用戶通常只關注錯誤報警信息,BiSS將錯誤報警信息放在實時性高的數據通信中,把耗時的寄存器通信用CDS和CDM實現,這種根據數據實時性設計不同的通信速率的方法,能夠大幅節約通信帶寬,有效降低通信時延。所以,使用BiSS編碼器能帶來更好的控制效果。
圖6BiSS寄存器通信寫時序
圖7BiSS寄存器通信讀時序
BiSS通信協議的實現方法
1、硬件解碼
對于采用硬件解碼的用戶,可以根據需要選擇IC-HAUS提供的解碼芯片,或者采用IC-HAUS提供的IP軟核進行解碼。也可以選擇帶有IP硬核的MCU。如果想利用IC-HAUS提供的IP軟核實現數據通信和寄存器兩種功能,需采用FPGA解碼。FPGA資源數需大于1300個LE(將BiSS與MCU的接口設置為SPI時的編譯的結果)或等效資源數。如果僅想實現數據通信,可以采用CPLD解碼。CPLD資源數需大于96個LE(增加時鐘分頻電路和SPI接口后需150個以上的LE)或等效資源數。自行設計的難點是線延遲的處理,對于外引線很短或無外引線的應用,線延遲的變化很小,這時可以設計延遲固定的采樣時鐘,否則每個周期要進行一次線延遲補償。
2、軟件解碼
用戶可以通過IO模擬的BiSS時序,但這種方法不推薦使用。推薦使用MCU的硬件外設解碼,這樣能夠將BiSS通信速度設定很高。而且節約了外部邏輯電路的成本,對于很多應用,節約的成本十分可觀,同時對于產品的系列化有優勢。一個功能強大的通用串行解碼模塊,采用不同的解碼程序應該能夠支持多種串行通信協議、全雙工、半雙工等等。例如:對于BiSS可以利用SPI的SCK可以用來模擬MA,MISO可以模擬SL。這樣用需考慮三個問題:
1、MCU硬件模塊的FIFO深度。有些MCU,外設的SPI寄存器長度是固定的,完成一幀BiSS通信需通信多次,中斷多次。結果造成MA的波形不連續。這可能帶來問題,造成通信出錯。
2、MCU硬件模塊是否具備線延遲補償的能力。具有線延遲補償能力的外設,可以應對實際應用環境的變化帶來的影響,可以是需求的變化,環境的變化,線路老化等等。具有線延遲的系統,其可靠性和適應性比沒有線延遲補償的系統高得多。
3、CRC解碼能力,CRC校驗對MCU的處理能力提出了要求。
使用MCU進行解碼要充分考察不同MCU外設的特點和處理能力,以及芯片廠家技術支持的力度,是否有成熟的設計等等。
3、混合解碼
如果既想利用硬件解碼,又想降低成本。可以使用混合解碼的方法。例如用FPGA或CPLD的部分資源完成數據通信,將CDM和CDS信號引出交給MCU處理。這種方案是一種過渡性質的方案,同時也是很實用的做法。需要注意的是,CDM必須在通信發起前準備好。隨著MCU和FPGA的發展。這種方案會逐漸淘汰,以降低系統之間的耦合性。
4、BiSS通信幀實例
圖8給出了BiSS通信幀的實例,幫助讀者直觀地了解BiSS通信過程。
圖8:BiSS通信幀實例
BiSS通信協議與其他通信協議的對比
如下表1標所示,BiSS通信協議在協議開放性(Availablity)、網絡結構(Connectivity、Master/slavecount、Multi-slavesynchronization)和線延遲補償(Linedelaycompensation)具有領先優勢,在高速性(Transmissionrate)和時延(Mincycletime)與Endat2.2相當。同時,BiSS的數據通信和寄存器通信占用不同的通信信道,互不影響。
表1不同編碼器協議的參數對比
BiSS通信協議的現狀和發展
BiSS通信協議經過十余年的發展,在歐洲應用較廣,在中國也得到主要驅動器、編碼器廠商的支持。2002年在歐洲推出BiSS,2003年BiSS解碼芯片IC-MB3面世。2009年推出BiSSunidirectional版本。BiSS總線幀格式保持穩定,眾多的編碼器廠商推出了基于BiSS的編碼器產品。目前全球共有超過278家廠商成為BiSS協議會員。
歐洲在工業控制領域引領時代的潮流,從CiA402、IEC61131-3等協議的發展來了,協議開放漸成潮流。BiSS已經先走一步,為用戶帶來兼容性、低成本、穩定性諸多好處。未來在中國必將取得更大發展。
標簽:
下一篇:影響光源照明效果的重要因素...
中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.hysjfh.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。
本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。
產品新聞
更多>2025-05-19
2025-04-30
2025-04-11
2025-04-08
2025-03-31
2025-03-26