劉曦 國網四川省電力公司信息通信公司
近年來,隨著我國計算機軟件及硬件技術的快速發展,以及集成電路技術的普遍應用,兩者的有機結合技術也被廣泛行業技術人員探索性的應用于提高和優化分布式工業系統的控制,其技術結合呈現出的獨特技術優勢使其在自動化工業領域得到高度認可。其中,CAN總線技術就是計算機技術和集成電路技術完美結合的成功技術之一,其在技術應用上具備靈活性和可靠性等優勢,具有廣闊的開發和應用前景。
基于多主機控制器的串聯數據傳輸是CAN總線技術的顯著技術優勢之一,其通常可以使用光纖電纜或雙絞線進行操作。如果某一節點從總線上發出數據,其他節點就會以消息的方式收到傳輸的數據,此外,通過不同的標識符來區分不同的消息,并且根據不同的標識符來劃分消息的優先級。通常,相同的CAN總線系統使用唯一的識別符號。并迅速轉化為報文發送的狀態。在網站收到消息后,它會檢查以確定信息的值。
CAN協議具有以下特點:①多主控制的特點。通常總線傳輸是經過的第一個節點可以獲得優先傳輸權。不同節點信息的優先級可以充分保證信息的真實性和有效性;②系統的靈活性。通常CAN總線協議可以通過不強行改變節點的方式來靈活地添加控制節點;③通信速度。通常,統一網絡的每個單元中存在相同的通信速度,并且不同的網絡單元具有不同的通信速度;④消息優先判斷的特點。系統逐個比較不同節點的分組信息,判斷其中的獲勝節點,并發送消息信息;⑤遠程數據請求。通常,CAN總線協議可以基于不同節點間發送的數據請求,實時選擇性的向其他節點發送所需的數據信息;⑥錯誤檢測。CAN總線協議可以實現定期的錯誤自身檢測功能。⑦連接和傳輸距離。通常,在實際連接和傳輸中,為了提高總線系統的通信速度,應盡可能減少可連接單元的數量。
通常,CAN總線通信過程可以基于諸如數據幀等不同類型的消息格式來執行數據傳輸的工程。信息傳輸距離通常是影響通信時間的重要因素。通常通信過程中出現的數據累積和過載現象是由于CAN總線傳輸信息過多而導致,這顯然不利于數據的平平穩傳輸。同時,工作人員可以根據需要;添加通信節點,而不更改節點應用程序層結構。此外,在總線操作期間也會由于一些其他因素的干擾而發生沖突現象,此時當總線空閑時,通信單元將發送消息,以解決沖突。
上位機(如PC主機),數據轉換器和現場節點通常是CAN總線系統的主要組成單元。主計算機通過數據轉換器連接到CAN總線。主節點由運行在主機上的LABVIEW編寫的監控軟件實現。數據轉換器采用STM32連接到CAN總線系統,主要是串行協議和CAN協議的橋接,并轉發接收的數據。每個節點不僅需要連接到對應的目標功能儀表,還需要連接到CAN總線,并通過從CAN總線接收或發送數據。
(1)CAN總線的拓撲結構
基于多個節點的分布式控制是CAN總線的拓撲結構的基本原則,可保障CAN總線的可靠性,適合傳輸各種數據信息。
(2)CAN總線節點的硬件組成
CAN總線節點的硬件結構通常可以:①將CAN總線控制器的MCU連接到CAN的收發器,并將其連接到CAN總線。②將控制器MCU連接到獨立的CAN控制器,然后連接CAN收發器以形成CAN總線的硬件結構。兩種兩種類型的硬件結構組成,無論采用何種解決方案,CAN收發器都是CAN總線的節點連接總線的必經之路。
(3)STM32的CAN通信模塊
STM32的CAN通信模塊主要包含初始化模塊,正常工作模式,睡眠模式三種主要模塊。初始化模塊通常基于軟件的設置來完成,而CAN模塊的初始化的啟動和退出通常基于CAN寄存器的設置來實現。一般情況下,在初始化模式下,CAN總線通信模塊無法接收和發送消息。基于STM32的CAN總線在模塊初始化后,將進入正常工作模式,并可以實現對傳輸信息的正常收發。但是,通信模塊的收發模塊功能模塊只能在總線空閑時執行。但當基于STM32的CAN通信模塊處于睡眠模式時,對郵箱寄存器的訪問仍然可以通過軟件控制來實現,即使在CAN通信模塊停止工作時。
(1)系統軟件的設計
微控制器作為CAN總線網絡中最重要的節點,其主要功能是可實現與其他節點的通信,最終實現信息共享。STM32是控制單元CAN通信的核心組件,其設置通常基于對STM32的初始化,此外還需要設置寄存器,波特率和中斷模式等參數。
(2)基于STM32的CAN總線系統的程序流程
整個程序的主要框架首先基于對STM32開發部分的初始化,然后設定要發送的CAN消息,以執行程序的主循環模塊。之后,還要根據實施情況判斷CAN模塊是否可以根據實際情況發送或接受相關信息。如果能正常接收消息,則LED將亮起,反之亦然。
(3)CAN初始化程序設計
CAN初始化程序基于初始CAN模塊時鐘的設置,并通過上拉CAN模塊控制器輸入和輸出功能。通過對其啟用或中斷,以實現開啟或關閉自動重傳機制,通常清除數據寄存器,設置波特率,然后通過接受消息傳輸信號,通過設置寄存器的特定位,以退出初始化模式。
基于自動化控制領域CAN總線技術的廣泛應用及其技術優勢,本文首先概述了CAN總線的基本工作原理及其協議特點和通信過程,然后基于其系統的總體結構設計,分別具體從硬件設計和軟件設計兩個方面系統地討論了基于STM32的CAN總線通信節點的設計方案,并以此詳細探討了一種基于STM32的CAN總線節點方案的設計流程。綜上所述,隨著嵌入式技術與CAN總線技術的聯合應用的日趨增加,這無疑對克服傳統控制系統的局限性具有顯著優勢,總之基于STM32的CAN總線通信節點設計研發,有利于推動我國工業生產中自動控制系統的快速發展。