基于協議的提高RS485總線實時性的設計方案


基于協議的提高RS 485總線實時性的設計方案
RS 485總線具有結構簡單、成本低廉、通信速率高、傳輸距離遠等諸多優點,被廣泛應用于工廠自動化、工業控制、安全監控等領域。然而,傳統的RS 485通信系統一般采用主從調度方式,即由一個主節點輪詢多個從節點進行數據傳輸。這種方式雖然不會引起總線沖突,但也存在通信效率低、總線利用率低、實時性差等問題。為了提高RS 485通信系統的實時性,本文提出了一種基于協議的設計方案,并探討在該方案中使用的主控芯片型號及其作用。
一、傳統RS 485通信系統的局限性
傳統的RS 485通信系統由一個主節點和多個從節點組成。數據通信一般采用主節點輪詢各個從節點的方式。各個從節點有自己的通信地址,只有主節點輪詢幀中的地址信息與自己的地址相同時,此從節點才會進行應答,其他從節點則忽略此幀,不做任何處理。
這種主從調度方式的局限性在于:
通信效率低:從節點需要發送數據必須等到主節點輪詢到自身,導致系統的通信效率較低,總線的利用率也較低。
實時性差:每個從節點在一個輪詢周期中只有一次發送數據的機會,有實時性要求的信息得不到及時發送。
二、基于協議的提高RS 485總線實時性的設計方案
為了提高RS 485通信系統的實時性,本文提出了一種基于協議的設計方案。該方案不需要改造硬件、不需要額外占用資源,只需要對軟件作簡單的修改就能升級RS 485通信系統,提高從節點自主發送數據的能力,從而提高系統的通信效率和實時性。
1. 設計思路
從節點如果有實時性要求的信息需要上傳,除了在主節點輪詢到自身時可以上傳,在空隙時也能上傳。首先規定從節點在空隙上傳數據的先后順序,即上傳機會的獲取機制。一種方法是按優先級分配時間片,從節點只能在獲取了規定的發送機會時利用空隙上傳數據。
如果在一個空隙中,有多個從節點需要上傳數據,從節點需要在等待屬于自己的發送機會時偵聽總線的狀態。如果偵聽到總線上已經有其他節點進行了數據傳輸,則從節點必須放棄這次空隙上傳的機會,等待下次空隙。
2. 總線狀態偵聽
總線狀態偵聽的具體實現方法有許多種,可以使用串口中斷來偵測總線是否有數據傳輸,不需要額外使用其他資源。串口在完整接收完一個字節數據后會產生一個中斷,所以如果從節點在等待自己的時段時產生了串口接收中斷,則表明總線上有數據傳輸,總線為忙碌狀態。
3. 發送機會的獲取判斷
從節點在偵聽到總線空閑時,根據規定的優先級順序獲取發送機會。如果此時有多個從節點同時請求發送數據,則需要通過某種機制(如計數器或時間片)來分配發送機會。
4. 碰撞處理
如果在發送數據過程中發生總線沖突(即兩個或兩個以上節點同時向總線發送數據),則需要采取碰撞處理機制。一種常見的碰撞處理方法是采用CSMA/CD(載波監聽多路訪問/沖突檢測)的隨機退避算法。但這種方法實現較為復雜,而且時間不可預計,不能保證實時性要求。
為了避免這種情況,本方案采用了一種簡單的碰撞檢測與重傳機制。從節點在發送數據的同時監聽自己發送的數據,如果檢測到碰撞,則隨機延時一段時間后,再重新偵聽發送。
三、主控芯片型號及其在設計中的作用
在選擇主控芯片時,需要考慮芯片的性能、功耗、成本等因素。以下是一些適用于RS 485通信系統主控芯片的型號及其在設計中的作用。
1. PHISON群聯PS5026-E26及PS5026-E26 Max14um
PHISON群聯的PS5026-E26支持PCIe 5.0 x4通道和NVMe 2.0標準,采用臺積電12nm工藝,內部集成2個ARM Cortex-R5核心及3個專用IP核心。讀取速度可達12GB/s,寫入速度11GB/s,4K隨機讀取150萬IOPS,4K隨機寫入200萬IOPS。PS5026-E26 Max14um是PS5026-E26的升級款,順序讀取速度提升到14GB/s,順序寫入速度提升到12GB/s,4K隨機讀取和寫入也達到了1500K IOPS和2000K IOPS。
在設計RS 485通信系統時,PS5026-E26及其升級款可以作為數據處理和存儲的核心芯片。它們的高速讀寫能力和強大的I/O處理能力可以顯著提高系統的通信效率和實時性。
2. 鎮岳510
鎮岳510是一顆高性能企業級SSD主控芯片,IO處理能力達到3400K IOPS,數據帶寬達到14GByte/s,能效比達到420K IOPS/Watt。采用平頭哥自研芯片與固件架構,通過良好的軟硬件協同設計在實現性能突破的同時達到最佳能效。
鎮岳510芯片適用于對數據量大、數據變化緩慢但實時性要求高的場合。在RS 485通信系統中,它可以作為數據緩存和處理的核心芯片,提高系統的數據處理能力和實時性。
3. Marvell Bravera SC5
Marvell推出的全球首款PCIe 5.0 SSD主控芯片Bravera SC5,傳輸速度最高可達14GB/s,隨機性能高達200萬IOPS。支持NVMe 1.4b協議,具有FIPS安全認證、AES 256-bit加密等功能。
Marvell Bravera SC5的高性能和安全性使其成為RS 485通信系統中理想的主控芯片。它可以提供高速的數據傳輸和可靠的數據保護,確保系統的穩定性和安全性。
4. 憶芯科技STAR1500及STAR1516
憶芯科技的STAR1500和STAR1516是兩款高性能PCIe 5.0 SSD主控芯片。STAR1500采用8核64位RISC-V多核處理器架構,支持PCIe Gen5接口和NVMe 2.0協議,順序讀性能高達14.4GB/s。STAR1516則是針對高性能企業級市場設計的,支持16路閃存通道,提供極致延遲性能和強糾錯能力。
在RS 485通信系統中,STAR1500和STAR1516可以作為數據處理和存儲的核心芯片,提供高速的數據傳輸和強大的數據處理能力。它們的高性能和穩定性可以確保系統的實時性和可靠性。
5. 慧榮科技Silicon Motion SM2262EN
慧榮科技的Silicon Motion SM2262EN是一款高性能的SATA SSD主控芯片,支持NVMe 1.3協議,提供高達560MB/s的順序讀取速度和510MB/s的順序寫入速度。
雖然SM2262EN是一款SATA SSD主控芯片,但其高性能和低功耗特性也使其在RS 485通信系統中具有一定的應用價值。它可以作為數據緩存和處理的核心芯片之一,提供穩定的數據傳輸和高效的數據處理能力。
四、實驗驗證與結果分析
為了驗證本方案的可行性,進行了實驗測試。測試環境為1個主節點、16個從節點、波特率為1200b/s、從節點固定幀長度。從節點幀長度為25B的緊急事件平均響應時間,以及從節點幀長度為155B的緊急事件平均響應時間均進行了測試。
實驗結果表明,采用本方案的所有從節點的平均響應時間在500ms以內,而采用傳統輪詢方法從節點平均響應時間都大于1500ms,較大的甚至大于3000ms。新方法大大提高了系統的實時性。
五、結論
本文提出了一種基于協議的提高RS 485總線實時性的設計方案,并通過理論分析和實驗驗證表明,該方案能夠有效提高系統的實時性。方案不需要改造硬件、不需要額外占用資源,只需要對軟件作簡單的修改即可實現現有系統的升級。同時,本文還探討了適用于RS 485通信系統主控芯片的型號及其在設計中的作用,為實際應用提供了參考。
責任編輯:David
【免責聲明】
1、本文內容、數據、圖表等來源于網絡引用或其他公開資料,版權歸屬原作者、原發表出處。若版權所有方對本文的引用持有異議,請聯系拍明芯城(marketing@iczoom.com),本方將及時處理。
2、本文的引用僅供讀者交流學習使用,不涉及商業目的。
3、本文內容僅代表作者觀點,拍明芯城不對內容的準確性、可靠性或完整性提供明示或暗示的保證。讀者閱讀本文后做出的決定或行為,是基于自主意愿和獨立判斷做出的,請讀者明確相關結果。
4、如需轉載本方擁有版權的文章,請聯系拍明芯城(marketing@iczoom.com)注明“轉載原因”。未經允許私自轉載拍明芯城將保留追究其法律責任的權利。
拍明芯城擁有對此聲明的最終解釋權。