
CAN是ControllerAreaNetwork的縮寫(以下稱為CAN),是ISO*1國際標準化的串行通信協(xié)議。在當前的汽車產業(yè)中,出于對安全性、舒適性、方便性、低公害、低成本的要求,各種各樣的電子控制系統(tǒng)被開發(fā)了出來。由于這些系統(tǒng)之間通信所用的數(shù)據(jù)類型及對可靠性的要求不盡相同,由多條總線構成的情況很多,線束的數(shù)量也隨之增加。為適應“減少線束的數(shù)量”、“通過多個LAN,進行大量數(shù)據(jù)的高速通信”的需要,1986年德國電氣商博世公司開發(fā)出面向汽車的CAN通信協(xié)議。此后,CAN通過ISO11898及ISO11519進行了標準化,現(xiàn)在在歐洲已是汽車網絡的標準協(xié)議,F(xiàn)在,CAN的高性能和可靠性已被認同,并被廣泛地應用于工業(yè)自動化、船舶、醫(yī)療設備、工業(yè)設備等方面。CAN控制器根據(jù)兩根線上的電位差來判斷總線電平?偩電平分為顯性電平和隱性電平,二者必居其一。發(fā)送方通過使總線電平發(fā)生變化,將消息發(fā)送給接收方。
一、CAN的特點:
CAN協(xié)議具有以下特點。
1、多主控制:在總線空閑時,所有的單元都可開始發(fā)送消息(多主控制)。最先訪問總線的單元可獲得發(fā)送權(CSMA/CA方式*1)。多個單元同時開始發(fā)送時,發(fā)送高優(yōu)先級ID消息的單元可獲得發(fā)送權。
2、消息的發(fā)送:在CAN協(xié)議中,所有的消息都以固定的格式發(fā)送。總線空閑時,所有與總線相連的單元都可以開始發(fā)送新消息。兩個以上的單元同時開始發(fā)送消息時,根據(jù)標識符(Identifier以下稱為ID)決定優(yōu)先級。ID并不是表示發(fā)送的目的地址,而是表示訪問總線的消息的優(yōu)先級。兩個以上的單元同時開始發(fā)送消息時,對各消息ID的每個位進行逐個仲裁比較。仲裁獲勝(被判定為優(yōu)先級最高)的單元可繼續(xù)發(fā)送消息,仲裁失利的單元則立刻停止發(fā)送而進行接收工作。
3、系統(tǒng)的柔軟性:與總線相連的單元沒有類似于“地址”的信息。因此在總線上增加單元時,連接在總線上的其它單元的軟硬件及應用層都不需要改變。
4、通信速度:根據(jù)整個網絡的規(guī)模,可設定適合的通信速度。在同一網絡中,所有單元必須設定成統(tǒng)一的通信速度。即使有一個單元的通信速度與其它的不一樣,此單元也會輸出錯誤信號,妨礙整個網絡的通信。不同網絡間則可以有不同的通信速度。
5、遠程數(shù)據(jù)請求:可通過發(fā)送“遙控幀”請求其他單元發(fā)送數(shù)據(jù)。
6、錯誤檢測功能:錯誤通知功能·錯誤恢復功能所有的單元都可以檢測錯誤(錯誤檢測功能)。檢測出錯誤的單元會立即同時通知其他所有單元(錯誤通知功能)。正在發(fā)送消息的單元一旦檢測出錯誤,會強制結束當前的發(fā)送。強制結束發(fā)送的單元會不斷反復地重新發(fā)送此消息直到成功發(fā)送為止(錯誤恢復功能)。
7、故障封閉:CAN可以判斷出錯誤的類型是總線上暫時的數(shù)據(jù)錯誤(如外部噪聲等)還是持續(xù)的數(shù)據(jù)錯誤(如單元內部故障、驅動器故障、斷線等)。由此功能,當總線上發(fā)生持續(xù)數(shù)據(jù)錯誤時,可將引起此故障的單元從總線上隔離出去。
8、連接:CAN總線是可同時連接多個單元的總線?蛇B接的單元總數(shù)理論上是沒有限制的。但實際上可連接的單元數(shù)受總線上的時間延遲及電氣負載的限制。降低通信速度,可連接的單元數(shù)增加;提高通信速度,則可連接的單元數(shù)減少。
二、PCB說明:
1、概述:
電路板(除通信電路板之外)采用核心板+地板的設計思路,核心板設計完全相同,只需要根據(jù)不同的底板焊接不同的功能模塊。底板的電源部分及通信接口部分設計是完全相同的,其他部分電路實現(xiàn)具體的功能。
電路板分為:核心板、DO(數(shù)字量輸出)底板、DIN(數(shù)字量輸入)底板、RO(繼電器輸出)底板、AIN(模擬量輸入)底板、AO(模擬量輸出)底板和通信板組成。
2、核心板:

3、核心板資源介紹:

(1)CPU及最小單元。
(2)4位八段數(shù)碼管2個,用來指示當前板子名稱:如CanbusdO,CanbusrO,CanbusdI,CanbusAO,CanbusAI分別代表數(shù)字量輸出、繼電器輸出、數(shù)字量輸入、模擬量輸出、模擬量輸入電路板。
(3)調試及復位接口。
(4)底板接口。
(5)底板接口。
(6)底板接口。
(7)底板接口。
(8)DA單元。
(9)AD單元。
(10)AD單元。
(11)模擬量電源單元。
(12)USB轉TTL接口單元。
(13)CAN接口單元。
(14)RS485接口單元。
(15)RS232接口單元。
(16)狀態(tài)指示燈:針對輸出(DO/RO/AO)類型的電路板,如果該區(qū)域指示燈有紅色顯示,代表軟件控制輸出功能,如果顯示藍色,代表硬件(其他輸入電路板)控制器輸出通道。
(17)功能選擇開關。(固定設置,絕對不能更改。)
(18)掉電數(shù)據(jù)存儲芯片。
(19)數(shù)碼管驅動單元。
(20)DA單元。
(21)運行指示。(電路板運行指示燈,以1hz的頻率閃爍。)
4、底板共性資源介紹:

(1)電源輸入接口,控制電路和數(shù)字量驅動電路建議分別單獨供電,也可以共用一路電源。針對DI/DO/RO三塊電路板,因為都涉及到外部數(shù)字量的驅動,全部采用光電隔離的形式,因此需要兩路電源同時供給,對于AI/AO可以只提供控制電路24V。從上往下接口定義:控制電源24V+,控制電源24V-,IO電源24V+,IO電源24V-。
下面兩個船型開關是電源開關,控制電源和IO電源分別控制,上面控制的是控制電源24V,下面控制IO電源24V。
(2)控制電源處理單元。
(3)內部輸入/輸出,外部輸入/輸出切換開關,有的電路板模塊可以同時對內對外輸出,比如RO/DO模塊,這樣的模塊不需要切換開關,其他的都需要該開關來切換內外信號源及目標。在該開關附近都有IN<--->OUT字樣的絲印,撥碼開關朝向IN所指示的方向,代表使用內部的信號源或輸出給電路內部,朝向OUT所示的方向,對標使用外部的信號源或者輸出給外部電路。
(4)外部接線端子。
(5)CANBUS接口。
(6)RS485接口。
(7)RS232接口。
(8)控制位置選擇開關,對于輸出性質的電路板,可以選擇軟件控制或者硬件控制。在該開關附近有BDCtrl和SFCtrl的絲印,開關撥到BDCtrl方向代表受硬件控制,對應核心板的狀態(tài)指示燈顯示藍色;撥到SFCtrl方向代表受軟件控制,對應核心板的狀態(tài)指示燈顯示紅色。
(9)核心板接入?yún)^(qū)域。
以上9個功能區(qū)域對應的功能每塊電路板都一樣,不再贅述。
5、數(shù)字量輸入電路板:

(1)光電隔離單元。
(2)光電隔離單元。
(3)電壓轉化單元。5V轉為3.3V輸入到CPU對應的GPIO通道。
(4)輸入船型開關。
在硬件控制模式下,改電路板的1-10通道控制DO通道的1-10;11-20通道控制RO通道的1-10。
6、數(shù)字量輸出電路板:

(1)P-MOS管單元。
(2)光電隔離單元。
(3)指示單元,雙色LED指示,輸出通道激活顯示綠色,輸出通道不激活顯示紅色。
(4)CPU電源轉化單元。
(5)PTC,1A自恢復保險絲。
在硬件控制模式下,改電路板受電路板第1-10路輸入信號控制。
7、繼電器輸出電路板:

(1)P-MOS單元。
(2)光電隔離單元。
(3)繼電器單元。
(4)指示單元。繼電器激活時顯示綠色,繼電器沒激活顯示紅色。
(5)CPU電壓轉換單元。
在硬件控制模式下,改電路板受DI電路板第11-20路輸入信號控制。
8、模擬量輸入電路板:

(1)電壓表指示單元,指示0-25.00范圍,內應的輸入電壓為0-2.5V,對應的外部輸入電流為0-25mA。
(2)電位計單元。
(3)數(shù)碼管驅動單元。
(端子接線定義具體根據(jù)電路板絲印來確定,按照圖中視角,下方從左到右依次是:電流輸入+/電流輸入-/24V電源+/24V電源-,該24V電源是電路板對外提供的,用來給外部傳感器供電的,可以分別接入2/3/4線制的4-20mA電流輸出傳感器)
在硬件控制模式下,該輸入信號控制模擬量輸出對應的通道輸出。
9、模擬量輸出電路板:

(1)輸出電流顯示,對應顯示00.00-25.00,對應輸出0-25mA電流。
(2)數(shù)碼管驅動電路。
(端子接線定義具體根據(jù)電路板絲印來確定,按照圖中視角,下方從左到右依次是:電流輸出+/電流輸出-/24V電源+/24V電源-,該24V電源是電路板對外提供的,用來給外部執(zhí)行部件供電,可以分別驅動2/3/4線制的4-20mA電流輸入執(zhí)行器)
在硬件控制模式下,該輸出信號受AI電路板對應通道控制。
10、通信電路板:

(1)CPU及最小系統(tǒng)單元。
(2)Can接口芯片單元。
(3)RS485接口芯片單元。
(4)USB供電處理單元。
(5)指示單元。
(6)掉電數(shù)據(jù)保存單元。
(7)RS232單元。
(8)調試單元。
(9)USB接口芯片單元。
(10)功能選擇開關。
(11)電源保護單元。
(12)USB接口。
(13)Can總線接口。
(14)RS232接口。
(15)RS485接口。
三、總結:
該系統(tǒng)主要針對Canbus通信原理及通信應用進行演示,系統(tǒng)所有控制數(shù)據(jù)及反饋數(shù)據(jù)全部經過Canbus總線進行交叉?zhèn)鬏。每一塊電路板存儲著在網所有數(shù)據(jù),對兩兩之間的Can總線通信狀態(tài)都有實時的記錄,并且該記錄也通過Canbus傳輸?shù)骄W絡上,數(shù)據(jù)在DI/DO/RO/AO/AI之間實時的周期性的交換(交換周期大約0.7s),通信電路板的作用是將Canbus網絡上的數(shù)據(jù)通過USB-TTL路由到PC上,給PC軟件提供數(shù)據(jù)源,同時通過USB-TTL接受PC軟件的指令,并同步到Canbus網絡上,實現(xiàn)軟件的控制,因此通信電路板不僅僅默默地監(jiān)視著Canbus網絡上的數(shù)據(jù),同時還要下發(fā)命令,與其他所有電路板產生交互,其在網狀態(tài)也要受到監(jiān)控,于是這6塊電路板形成了兩兩交叉的Can數(shù)據(jù)交互模型。在軟件中可以監(jiān)視每兩塊電路板之間的Canbus聯(lián)通情況。
|