Can網(wǎng)絡(luò)中主站掉電保護(hù)系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及CAN網(wǎng)絡(luò)通信領(lǐng)域,更具體地說,涉及一種CAN網(wǎng)絡(luò)中主站掉電保護(hù)系統(tǒng)及方法。
【背景技術(shù)】
[0002]隨著時代的進(jìn)步,在工業(yè)控制系統(tǒng)中,越來越趨向于使用節(jié)省硬件成本與安裝費用的工業(yè)現(xiàn)場總線(即CAN總線)XANopen是一種應(yīng)用于工業(yè)控制現(xiàn)場總線上的高層通信協(xié)議,包括通信子協(xié)議與設(shè)備子協(xié)議。CiA301是CANopen應(yīng)用層和通信子協(xié)議規(guī)范,涵蓋了網(wǎng)絡(luò)管理從站設(shè)備功能。
[0003]基于CAN總線控制的PLC通信控制主站產(chǎn)品也變得越來越普及。對于CAN總線上各個站點的在線狀態(tài),CANopen協(xié)議采用的是檢測特定通信幀的方式來監(jiān)控站點的在線狀態(tài),這種特定幀被稱為心跳幀。例如當(dāng)主站的心跳幀沒有按照預(yù)先設(shè)定方式被接收到時,從站便切換自己的狀態(tài)到非運行狀態(tài),并且停止當(dāng)前正在執(zhí)行的操作。
[0004]這種通過心跳幀監(jiān)控從站在線狀態(tài)的方法被普遍應(yīng)用,但如果通信線正常,此時主站突然斷電,那么從站必須要等到主站的心跳幀超時才會切換狀態(tài)。如果想縮短響應(yīng)的時間,就要增大心跳幀發(fā)送的頻率。但心跳幀本身對于從站的控制并沒有實際意義,還會增加網(wǎng)絡(luò)負(fù)載。
【發(fā)明內(nèi)容】
[0005]本發(fā)明要解決的技術(shù)問題在于,針對上述CAN網(wǎng)絡(luò)中主站斷電保護(hù)增加網(wǎng)絡(luò)負(fù)載的問題,提供一種新的CAN網(wǎng)絡(luò)中主站掉電保護(hù)系統(tǒng)及方法。
[0006]本發(fā)明解決上述技術(shù)問題的技術(shù)方案是,提供一種CAN網(wǎng)絡(luò)中主站掉電保護(hù)系統(tǒng),所述CAN網(wǎng)絡(luò)包括通過CANopen協(xié)議通信的主站和多個從站,且所述主站具有儲能元件,所述系統(tǒng)包括位于主站的掉電檢測單元和復(fù)位啟動單元,所述從站包括復(fù)位單元,其中:所述掉電檢測單元,用于實時偵測主站供電電源并在所述供電電源失效時將主站切換到儲能元件供電,同時向復(fù)位啟動單元發(fā)送啟動信號;所述復(fù)位啟動單元,用于在接收到所述啟動信號時生成復(fù)位命令并將該復(fù)位命令廣播發(fā)送到CAN網(wǎng)絡(luò);所述從站的復(fù)位單元在接收到所述復(fù)位命令時使該從站切換到預(yù)運行狀態(tài)。
[0007]在本發(fā)明所述的CAN網(wǎng)絡(luò)中主站掉電保護(hù)系統(tǒng)中,所述主站包括心跳幀發(fā)送單元,所述從站包括狀態(tài)檢測單元,且所述心跳幀發(fā)送單元用于在主站正常運行時以固定頻率向CAN網(wǎng)絡(luò)廣播心跳幀,所述狀態(tài)檢測單元在從站處于運行狀態(tài)且超過預(yù)定時間未接收到心跳幀時使從站切換到預(yù)運行狀態(tài)。
[0008]在本發(fā)明所述的CAN網(wǎng)絡(luò)中主站掉電保護(hù)系統(tǒng)中,所述主站在完成初始化操作后向復(fù)位啟動單元發(fā)送啟動配置命令;所述從站在完成初始化操作后進(jìn)入預(yù)運行狀態(tài),并在接收到啟動配置命令后進(jìn)入運行狀態(tài)。
[0009]本發(fā)明還提供一種CAN網(wǎng)絡(luò)中主站掉電保護(hù)方法,所述CAN網(wǎng)絡(luò)包括通過CANopen協(xié)議通信的主站和多個從站,且所述主站具有儲能元件,所述方法包括以下步驟:
[0010](a)實時偵測主站供電電源并在所述供電電源失效時將主站切換到儲能元件供電;
[0011](b)生成復(fù)位命令并將該復(fù)位命令廣播發(fā)送到CAN網(wǎng)絡(luò),從站在接收到所述復(fù)位命令時切換到預(yù)運行狀態(tài)。
[0012]在本發(fā)明所述的CAN網(wǎng)絡(luò)中主站掉電保護(hù)方法中,所述方法還包括:所述主站在正常運行時以固定頻率向CAN網(wǎng)絡(luò)廣播心跳幀,所述從站進(jìn)入運行狀態(tài)后進(jìn)行心跳幀檢測,并在超過預(yù)定時間未接收到心跳幀時使從站切換到預(yù)運行狀態(tài)。
[0013]在本發(fā)明所述的CAN網(wǎng)絡(luò)中主站掉電保護(hù)方法中,所述主站在完成初始化操作后生成啟動配置命令并將該配置命令發(fā)送對應(yīng)的從站,所述從站在完成初始化操作后進(jìn)入預(yù)運行狀態(tài),并在接收到啟動配置命令后進(jìn)入運行狀態(tài)。
[0014]本發(fā)明的CAN網(wǎng)絡(luò)中主站掉電保護(hù)系統(tǒng)及方法,通過在主站掉電時廣播復(fù)位命令,使得主站可快速切換到非運行狀態(tài),而無需等到心跳幀超時,提高了系統(tǒng)的安全性。
【附圖說明】
[0015]圖1是本發(fā)明CAN網(wǎng)絡(luò)中主站掉電保護(hù)系統(tǒng)實施例的示意圖。
[0016]圖2是圖1中CAN網(wǎng)絡(luò)中主站掉電保護(hù)系統(tǒng)響應(yīng)時間的示意圖。
[0017]圖3是本發(fā)明CAN網(wǎng)絡(luò)中主站掉電保護(hù)方法實施例中主站運行的流程示意圖。
[0018]圖4是本發(fā)明CAN網(wǎng)絡(luò)中主站掉電保護(hù)方法實施例中從站運行的流程示意圖。
【具體實施方式】
[0019]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0020]如圖1所示,是本發(fā)明CAN網(wǎng)絡(luò)中主站掉電保護(hù)系統(tǒng)實施例的示意圖,該系統(tǒng)可直接應(yīng)用于使用CAN網(wǎng)絡(luò)通信的系統(tǒng)中。上述CAN網(wǎng)絡(luò)包括通過CANopen協(xié)議通信的主站10和多個從站20,且主站10具有儲能元件,本實施例中的主站掉電保護(hù)系統(tǒng)包括位于主站10的掉電檢測單元11和復(fù)位啟動單元12,從站20包括復(fù)位單元21,上述掉電檢測單元11和復(fù)位啟動單元12可結(jié)合運行于主站10的PLC(可編程邏輯單元)的軟件實現(xiàn)。而從站20的復(fù)位單元21則可與現(xiàn)有從站20的復(fù)位邏輯相同。
[0021]掉電檢測單元11用于實時偵測主站10供電電源并在供電電源失效時將主站10切換到儲能元件供電,在切換電源的同時,掉電檢測單元11還向復(fù)位啟動單元12發(fā)送啟動信號;復(fù)位啟動單元12用于在接收到掉電檢測單元11生成的啟動信號時,創(chuàng)建復(fù)位命令并將該復(fù)位命令廣播發(fā)送到CAN網(wǎng)絡(luò),使接入CAN網(wǎng)絡(luò)的各個從站20可接收到該復(fù)位命令;從站20的復(fù)位單元21在接收到復(fù)位命令時使該從站20切換到預(yù)運行狀態(tài)。
[0022]上述CAN網(wǎng)絡(luò)中主站掉電保護(hù)系統(tǒng),通過在主站10的PLC的掉電瞬間,利用自身的儲能元件延遲斷開自身的電源,并且利用短暫的斷電延遲,廣播發(fā)送復(fù)位命令(例如復(fù)位節(jié)點或者復(fù)位連接命令),從而使得從站20不用等到心跳幀超時,而立即切換狀態(tài),減少因從站20失控導(dǎo)致的異常。
[0023]上述主站10可包括心跳幀發(fā)送單元,相應(yīng)地,每一從站20則可包括狀態(tài)檢測單元,且心跳幀發(fā)送單元用于在主站10正常運行時以固定頻率向CAN網(wǎng)絡(luò)廣播心跳幀,狀態(tài)檢測單元在從站20處于運行狀態(tài)且超過預(yù)定時間未接收到心跳幀時使從站20切換到預(yù)運行狀態(tài)。通過心跳幀,可在從站20連接異常時,使該從站20切換