基于總線協議標準實現DeviceNet適配器的應用設計


原標題:基于總線協議標準實現DeviceNet適配器的應用設計
基于總線協議標準實現DeviceNet適配器的應用設計是一個復雜但重要的過程,它涉及到硬件和軟件的多個方面。以下是一個詳細的設計概述,包括關鍵組件、功能實現以及協議規范的應用。
一、DeviceNet概述
DeviceNet是一個開放的網絡標準,其規范和協議都是開放的。供應商將設備連接到系統時,無需為硬件、軟件或授權付費。任何人都能以名義上的復制成本(目前為250美元+郵費)從開放式DeviceNet供應商協會(ODVA)獲得DeviceNet規范。DeviceNet是基于CAN總線的一種總線協議標準,因此實現DeviceNet適配器首先需要實現CAN總線的基本功能。
二、硬件設計
DeviceNet適配器的硬件設計主要包括以下幾個關鍵組件:
電源:為整個系統提供穩定的電力供應。
單片機系統:
選用高性能的單片機,如Winbond公司的W78E58。這款單片機功能、引腳與80C52完全兼容,提供256B的內部RAM以及32KB的Flash EEPROM,滿足DeviceNet協議程序的容量要求。
單片機主頻高達40MHz,處理速度完全滿足DeviceNet節點通信的實時性要求。
CAN控制器SJA1000:
負責DeviceNet總線報文的收發以及媒體訪問控制等功能。
由于DeviceNet總線協議采用11位的標識符,因此SJA1000應工作在BasicCAN模式。
CAN收發器82C251:
主要作用是收發CAN總線上的信號。一方面將總線信號轉換為CAN控制器所需的信號,另一方面將CAN控制器的輸出信號轉化為CAN總線信號。
雙口RAM IDT7005:
提供與其他應用電路的通信接口。具有2套完全獨立的數據線、地址線、讀寫控制線,允許2個CPU對雙口RAM的同一個單元在不同的時間進行讀寫。
其最高2個字節(1FFEH和1FFFH)分別兼做2個端口的中斷邏輯單元。
撥碼開關及狀態LED顯示:
用于設置波特率(如125kbps、250kbps、500kbps)和MAC ID(0~63)。
提供狀態指示,如通信狀態、錯誤狀態等。
看門狗及掉電保護電路:
保證系統的穩定性和可靠性,防止因單片機死機或掉電導致的數據丟失。
AnyBus接口:
作為一種通用的現場總線通信節點,提供與其他應用電路之間進行數據交換的接口標準,并對接口的引腳進行了嚴格的定義。
三、軟件設計
軟件設計主要圍繞DeviceNet協議的實現展開,包括以下幾個方面:
協議棧實現:
根據DeviceNet規范實現協議棧,包括連接管理、報文傳輸、錯誤處理等功能。
報文處理:
支持DeviceNet定義的兩種報文類型:I/O報文和顯式報文。
I/O報文適用于實時性要求較高和面向控制的數據傳輸;顯式報文適用于設備間的多用途點對點報文傳遞。
連接管理:
實現連接的建立、維護和釋放。為每個連接分配唯一的連接標識符(CID),并管理連接的優先級和狀態。
對象模型和設備描述:
根據DeviceNet規范定義的對象模型和設備描述,實現設備屬性的管理、服務的調用和行為的控制。
實時性和可靠性保證:
通過優化軟件算法和硬件資源的使用,保證通信的實時性和可靠性。
四、應用設計
DeviceNet適配器可廣泛應用于工業自動化領域,如智能泵/閥控制器、傳感器、執行器等設備的通信接口。通過實現DeviceNet協議,這些設備可以方便地接入DeviceNet網絡,實現與其他設備的互連互通和數據交換。
總之,基于總線協議標準實現DeviceNet適配器的應用設計是一個涉及硬件、軟件和協議棧等多個方面的復雜過程。通過合理的設計和實現,可以開發出穩定、可靠、高效的DeviceNet適配器產品,滿足工業自動化領域的各種需求。
責任編輯:David
【免責聲明】
1、本文內容、數據、圖表等來源于網絡引用或其他公開資料,版權歸屬原作者、原發表出處。若版權所有方對本文的引用持有異議,請聯系拍明芯城(marketing@iczoom.com),本方將及時處理。
2、本文的引用僅供讀者交流學習使用,不涉及商業目的。
3、本文內容僅代表作者觀點,拍明芯城不對內容的準確性、可靠性或完整性提供明示或暗示的保證。讀者閱讀本文后做出的決定或行為,是基于自主意愿和獨立判斷做出的,請讀者明確相關結果。
4、如需轉載本方擁有版權的文章,請聯系拍明芯城(marketing@iczoom.com)注明“轉載原因”。未經允許私自轉載拍明芯城將保留追究其法律責任的權利。
拍明芯城擁有對此聲明的最終解釋權。