一種基于rs485總線通信的多設備掃描方法和電力電子系統的制作方法
【技術領域】
[0001]本發明屬于數據通信技術領域,尤其是指一種基于RS485總線通信的多設備掃描方法和基于其的電力電子系統。
【背景技術】
[0002]RS485通信通常被用作為一種相對經濟、具有相當高噪聲抑制、相對高的傳輸速率、傳輸距離遠、寬共模范圍的通信平臺,目前已廣泛應用于工業、電力等各種領域。
[0003]RS485總線通信可以為多個設備接入同一總線,實現主機可與多個從設備通信,但是RS485沒有設備分發機制,因此RS485不能支持掃描多個設備,否則會造成RS485總線數據沖突。
[0004]中國專利CN201410397853.3,其公開一種基于無沖突協議的全雙工RS485總線通信裝置及方法,總線數據偵聽電路將發送總線上的數據反饋給PLD芯片;PLD芯片電路通過總線探測幀的發送判斷總線被占用狀態并計算數據發送延遲時間因子;為O則搶占RS485數據發送總線發送;不為O則延遲一定時間;直至發送完畢。通過按照無沖突協議計算時間延遲因子以減少發送探測幀時的總線競爭情況,解決現有RS485總線不能滿足對監控節點多、單節點上傳數據量實時系統監控需求問題。但這種裝置和方法的工作和計算過程復雜,成本較高,且不適宜用于較少節點設備的RS485總線通信中。
【發明內容】
[0005]針對現有的RS485總線通信在未知從設備通信地址的情況下不能支持多設備掃描的技術問題,本發明提供一種基于RS485總線通信的多設備掃描方法,其通過GP1控制電源方式實現把多設備掃描轉換成單一掃描,使得RS485可以在不知道多設備地址的時候其進行識別掃描,避免RS485多設備掃描時造成的數據沖突。為實現上述技術目的,本發明采用如下技術方案:
[0006]一種基于RS485總線通信的多設備掃描方法,包括以下步驟:
[0007]SI,主機上電,開始掃描從設備;
[0008]S2,主機打開第一級從設備的電源(N = I);
[0009]S3,主機通過RS485連接鏈路向第N級從設備發送掃描命令;
[0010]S4,第N級從設備做出掃描響應,回應主機的掃描請求;
[0011]S5,主機判斷是否收到第N級從設備的掃描響應:當主機收到掃描響應時,主機對掃描數據進行處理,并命令第N級從設備打開第N+1級從設備的電源,置N = N+1,并返回步驟S3 ;當主機未收到掃描響應時,主機結束掃描并反饋掃描結果。
[0012]進一步地,在步驟S2中,主機的CPU通過控制第一級從設備的電源控制模塊以打開第一級從設備的電源。
[0013]進一步地,主機的CPU通過GP1接口控制第一從設備的電源控制模塊。
[0014]進一步地,在步驟S5中,當主機收到掃描響應時,第N級從設備的MCU通過控制第N+1級從設備的電源控制模塊以打開第N+1級從設備的電源。
[0015]進一步地,第N級從設備的MCU通過GP1接口控制第N+1級從設備的電源控制模塊。
[0016]進一步地,當主機需要掃描若干路從設備時,主機通過CPU的GP1接口控制對多路從設備進彳丁掃描的先后順序。
[0017]相應地,本發明還提供一種可通過RS485總線進行多設備掃描通信的電力電子系統,包括一個主機和若干個從設備,一個從設備作為第一級從設備與主機連接,其余從設備依次與上一級從設備串行連接;所述主機包括RS485接口和CPU,所述從設備包括RS485接口、MCU和電源控制模塊;所述主機的CPU為所述主機的數據處理和中央控制單元,所述主機的RS485接口用于所述主機與所述從設備通信;所述從設備的MCU為所述第一級從設備的數據處理和中央控制單元,所述從設備的RS485接口用于所述從設備與所述主機及下一級從設備通信,所述從設備的電源控制模塊用于由主機的CPU或上一級從設備的MCU控制所在從設備的電源開關。
[0018]與現有技術相比,本發明具有如下有益效果:主機通過CPU的數據接口控制第一級從設備的電源開關,以及主機通過RS485連接鏈路發送命令給已掃描的各級從設備以打開后一級從設備的電源開關,從而控制各級從設備是否與主設備通過RS485通信,把主機對多個從設備的掃描方式轉換成依次對單個從設備掃描,從而實現通過單一掃描方式實現RS485總線對多個從設備的掃描,使得RS485可以在不知道從設備地址的情況下,仍可以對從設備進行掃描識別,解決RS485通信中不支持多設備掃描的技術問題,避免RS485多設備掃描時造成的數據沖突,應用范圍廣泛。
【附圖說明】
[0019]圖1為本發明的控制流程示意圖;
[0020]圖2為本發明的電力電子系統只有一路從設備的示意框圖;
[0021]圖3為本發明的電力電子系統有兩路從設備的示意框圖。
【具體實施方式】
[0022]為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。
[0023]實施例一:
[0024]本實施例提供一種基于RS485總線通信的多設備掃描方法,應用于一個主機和若干個從設備組成的通過RS485總線通信的電力電子系統中,該多設備掃描方法,如圖1所示,包括以下步驟:
[0025]SI,主機上電,開始掃描從設備;
[0026]S2,主機打開第一級從設備的電源(N = I);
[0027]S3,主機通過RS485連接鏈路向第N級從設備發送掃描命令;
[0028]S4,第N級從設備做出掃描響應,回應主機的掃描請求;
[0029]S5,主機判斷是否收到第N級從設備的掃描響應:當主機收到掃描響應時,主機對掃描數據進行處理,并命令第N級從設備打開第N+1級從設備的電源,置N = N+1,并返回步驟S3 ;當主機未收到掃描響應時,主機結束掃描并反饋掃描結果。
[0030]由于RS-485總線一般最大支持32個節點,如果使用特制的485芯片,可以達到128個或者256個節點,最大的可以支持到400個節點。因此在本發明中,N為取值范圍為2彡N彡400的自然數。
[0031 ] 其中,在步驟S2中,主機的CPU通過控制第一級從設備的電源控制模塊以打開第一級從設備的電源。進一步地,主機的CPU是通過GP1接口控制第一級從設備的電源控制模塊。
[0032]其中,在步驟S5中,當主機收到掃描響應時,第N級從設備的MCU通過控制第N+1級從設備的電源控制模塊以打開第N+1級從設備的電源。進一步地,第N級從設備的MCU通過GP1接口控制第N+1級從設備的電源控制模塊。
[0033]如圖2所示,在本實施例中,電力電子系統包括一個主機、第一級從設備和第二級從設備,第二級從設備為第一級從設備的下一級從設備,第一級從設備為第二級從設備的上一級從設備。
[0034]主機上電后,開始掃描第一級從設備和第二