熟女人妻水多爽中文字幕,国产精品鲁鲁鲁,隔壁的少妇2做爰韩国电影,亚洲最大中文字幕无码网站

技術頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網 > 技術頻道 > 技術百科 > 基于LPC2294的CAN與以太網網關互聯(lián)的設計

基于LPC2294的CAN與以太網網關互聯(lián)的設計

時間:2013-08-07 15:45:28來源:傳動網

導語:?闡述了以ARM7系列LPC2294為核心的以太網與CAN總線網絡互聯(lián)的通信網關實現(xiàn)過程,概述了本網關中采用的以太網和CAN總線的報文格式及其自定義UDP數據報文的結構。并提出了網關的軟、硬件實現(xiàn)方法。

控制器局域網(ControllerAreaNetwork,CAN)最先由德國BOSCH公司開發(fā),并成為一種國際標準(IS011898)。由于CAN總線具有靈活、可靠、實時、開放性好、糾錯能力強等優(yōu)點,成為目前最有前途的現(xiàn)場總線之一。但任何事物都具有兩面性,CAN總線也有不足之處,由于其收發(fā)器驅動能力有限,導致總線上可連接的最大節(jié)點數和最遠直接傳輸距離受到了限制,無法進行遠程控制,這給系統(tǒng)組網帶來了一定的制約條件。相較而言,以太網憑借著成本低、易于組網、擁有眾多應用軟硬件的支持且根據網絡需求的實際情況,不斷地進行完善和改進,并逐步發(fā)展了標準以太網(10Mbit/s)、快速以太網(100Mbit/s)千兆以太網和萬兆以太網等,成為目前應用最為廣泛的局域網絡技術。若將以太網與CAN總線互聯(lián),可降低成本,增加系統(tǒng)的最大CAN節(jié)點數,擴大系統(tǒng)的組網范圍,還可實現(xiàn)不同傳輸速度的現(xiàn)場總線子網的相互通信,及其設備層到管理層的一體化。所以,文中提出一種以太網與CAN總線互聯(lián)的通信網關設計方案。

1硬件設計

圖1所示為本網關模塊設計與實現(xiàn)的整體方案框圖,網關模塊使用LPC2294作為主控制器,μC/OS—II操作系統(tǒng)為平臺,擴展了兩個網卡接口和CAN接口,并通過軟件設計完成CAN總線協(xié)議與以太網協(xié)議相互轉換,最終實現(xiàn)CAN網絡與以太網之間的雙冗余通信。

網關互聯(lián)的設計

硬件電路可劃分為5個部分:控制電路、存儲電路、輔助電路、以太網接口電路和CAN總線接口電路。下面主要對控制電路、以太網接口電路和CAN總線接口電路進行分析。

1.1系統(tǒng)控制器

系統(tǒng)選用ARM處理器LPC2294作為控制芯片,主要是LPC2294具有超強的功能、功耗低及豐富的片上資源,更重要的是集成了4個支持CAN2.0B協(xié)議的CAN控制器,并帶有先進的驗收濾波器,提供了系統(tǒng)的集成度和復雜度,還提供了系統(tǒng)的穩(wěn)定性。為滿足系統(tǒng)的程序和數據存儲需要,外擴了1MB的16位Flash芯片SST39VF160,用于存儲程序代碼。其中Flash的地址線A1~A20連接至LPC2294的A1~A20,數據線ED0~ED15通過一個雙電源供電的雙向收發(fā)器連接至LPC2294的DQ0~DQ15,CE#接至LPC2294的CS0,將其分配到Bank0單元,其地址范圍0x80000000~0x80001000。OE#、OW#分別連接至LC2294的OE#和WE#。同時外接了1MB的16位SRAM存儲器IS61LV25616AL,用于堆棧和數據的存儲。其中SRAM的地址線A1~A20連接至LPC2294的A0~A19,數據線IO0~IO15通過一個雙電源供電的雙向收發(fā)器連接至LPC2294的D0~D15,CE#接至LPC2294的CS1,將其分配到Bank1單元,該地址范圍0x81000030~0x81001000。LB#、UB分別與BLS0、BLS1相連,用于控制8位或16位讀寫數據。OE#、OW#分別連接至LC2294的OE#和WE#。

1.2CAN接口電路設計

系統(tǒng)有兩個CAN接口,其中一個是主接口,另一個是冗余接口,均接入同一個CAN網絡,其目的是增加系統(tǒng)的可靠性。CAN2.0B控制器由LPC2294直接集成,無需外加獨立的CAN控制器,且LPC2294中集成了4個CAN控制器,在此系統(tǒng)中選用第1個和第2個CAN接口。CAN收發(fā)器選用了CAT8250T,主要作用是將CAN控制器的邏輯電平轉換為CAN總線的差分電平,但與常用的CAN收發(fā)器TJA1050T不同的是該CAN收發(fā)器將CAN節(jié)點的收發(fā)與高速光耦、電源隔離集成在一個電路模塊中,且隔離電壓高達DC2500V,接口簡單、使用方便,并對CAN總線有過電壓保護作用。同時還要在CANH和CANL與地之間并聯(lián)一個120Ω的電阻,來匹配傳輸阻抗,吸收總線回波,確保有較低的電磁輻射和通信可靠性。

1.3以太網接口電路設計

系統(tǒng)由DM9000E以太網控制器,HR601860網卡變壓器,及RJ45接口,組成以太網接口電路。同樣選用了兩個網口電路,一個是主網口,另一個是冗余網口。其中,LPC2294使用16位總線方式對DM9000E進行控制,并使其工作在100MHz全雙工模式下。對兩個網口的選用,是通過LPC2294的CS3、A22引腳來控制主網口的片選信號,即這兩個引腳與74AC32的引腳1和2相連,而引腳3連接主網口的ANE引腳。同理將LPC2294的CS3、A23,經74AC32與冗余網口的ANE引腳相連。再將DM9000E的CMD引腳與LPC2294的A2連接??蓪⒅骶W和冗余網卡芯片的數據端口地址與索引端口地址分別配置成0x8380000、0x83800004和0x83400000、0x83400004。DM9000E的物理層發(fā)送和接收端口TXO+、TXO-、RXI+、RXI-經網絡變壓器芯片HR601680接到RJ45接口。對于DM9000E的其余引腳可根據Datasheet中的說明,按要求連接即可,如圖2所示。

網關互聯(lián)的設計

最終,對DM9000E芯片進行驅動。該芯片的驅動主要由3部分完成:voidInitNic()用以對芯片進行初始化,配置片內寄存器等;voidSend_P-acket(struct_pkst*TxdData)為數據發(fā)送程序,uint8Rec_Packet(uint8num)為數據接收程序,上層協(xié)議通過調用這兩個函數來發(fā)送以太網數據幀。

2軟件設計

2.1報文結構

CAN總線與以太網互聯(lián)的軟件設計主要包括從以太網中提取CAN數據和將CAN總線的數據轉換成以太網的數據。其中,CAN報文結構可分為兩種不同的幀格式,而兩種幀格式的區(qū)別在于其標識符的長度不同:標準幀中有11位標識符,擴展幀中有29位標識符。本設計中采用的是擴展幀,且在本網關模塊收到CAN板卡的報文時,需按上述以太網數據傳輸報文格式對CAN數據進行封裝及打包并通過以太網發(fā)送。在此過程中不必對CAN報文的13Byte數據進行高低位轉換和移位處理,采用透明轉換方式。便可減少數據解析及處理的時間,并提高了數據在傳輸過程中的可靠性。

網關互聯(lián)的設計

 

如圖3所示,該網關中規(guī)定的以太網幀格式包括5部分,按照封裝的先后順序分別為:封裝的數據(如本系統(tǒng)中的CAN數據幀等)、自定義UDP首部、標準UDP/TCP首部、IP首部、以太網首部和最終校驗。本系統(tǒng)中主要采用的是UDP協(xié)議,目的是為了自定義控制字來區(qū)別不同類型的報文,包括有:CAN數據報文、時統(tǒng)報文、工作狀態(tài)請求報文、心跳報文及設備故障診斷信息報文。其中時統(tǒng)報文是在開機時或每30分鐘系統(tǒng)發(fā)送的對時請求。工作狀態(tài)報文是在各設備開機或復位并正常工作后自動發(fā)送的,還有收到詢問報文或狀態(tài)改變后發(fā)送,主要發(fā)送時戳和設備ID信息。心跳報文是在各設備開機或復位并正常工作后,每5s周期發(fā)送,作用是通知其所在的網絡,是否工作狀態(tài)正常。設備故障診斷信息報文是當接收到故障診斷請求報文或網關根據CAN板卡數據接收情況,自行檢測到網關箱內該板卡故障情況的變化,一般網關在30分鐘內未收到參數設置報文中指定的CAN板卡對應節(jié)點的數據和遠程幀等,可認定此節(jié)點故障,并發(fā)送故障信息報文。這增添了系統(tǒng)的一些管理信息,根據不同的報文類型完成系統(tǒng)不同的通信功能。自定義UDP封裝格式如圖4所示。

網關互聯(lián)的設計

在自定義UDP封裝格式中,字節(jié)0~3為固定的幀頭信息,用以識別本網關模塊的數據報信息,無論是CAN報文、時統(tǒng)報文或工作狀態(tài)請求報文均使用該格式,若不符合該幀頭的數據報網關模塊不進行處理。需注意的是,第20bit開始才是真正的數據,每個信息單元均有各自的序號、標識和長度等信息。其中信元的序號表示該信元在UDP數據報中的位置;標識代表信息單元內報文的類型。

2.2程序設計

網關模塊的主要功能是以太網數據包與CAN數據幀之間的格式相互轉換,進而完成以太網和CAN網絡間通訊。本模塊使用嵌入式μC/OS—II作為操作系統(tǒng),通過裁剪、移植使其能順利運行于LPC2294控制器。另外,在系統(tǒng)中移植了TCP/IP協(xié)議的核心功能函數,并編寫了6個任務函數,使其分工合作實現(xiàn)了模塊的各項功能,并通過μC/OS—II系統(tǒng)的任務調度管理機制來進行系統(tǒng)資源的分配。

系統(tǒng)首先建立設備初始化任務Task0,將該任務函數主要完成上電自檢,兩路CAN故障自檢,網口斷線檢測,本機IP、兩路CAN波特率及兩路網口等網關參數的初始化。在完成以上工作后,創(chuàng)建5個子任務,按優(yōu)先級由高到低依次為TaskB、TaskC、TaskF、TaskD、TaskE的5個子任務的具體功能如下:

TaskB:主要功能為接收UDP報文并解析,下發(fā)至CAN;若接收到時統(tǒng)報文,按照協(xié)議解析,并將時戳信息寫入時鐘芯片。

TaskC:主要功能為接收TCP報文,按照協(xié)議解析并下發(fā)到CAN。

TaskD:完成接收CAN1口或CAN2口的數據,根據規(guī)定的傳輸方式將數據封裝成報文格式,并發(fā)送至以太網。

TaskE:完成接收CAN1口或CAN2口的數據,并按照TCP傳輸方式,將數據封裝并發(fā)送到以太網。

TaskF:主要功能為定時發(fā)送特殊報文,如:心跳報文、時統(tǒng)報文、工作狀態(tài)請求報文及設備故障診斷信息報文等,完成網關模塊的工作狀態(tài)檢測及參數配置等功能。

5個子任務創(chuàng)建完成后,TaskB和TaskC進入阻塞狀態(tài),等待各自的信號量RecUdpQFlag和RecTcpQ一Flag,由于這兩個任務的優(yōu)先級較高,說明網關模塊優(yōu)先轉換以太網向CAN總線方向的數據。因此,當以太網中有數據到來時根據報文的類型可得到相應的信號量,TaskB或TaskC立即進入就緒狀態(tài)等待執(zhí)行,若當前執(zhí)行的任務優(yōu)先級低于這兩個任務,TaskB和TaskC可進行搶占執(zhí)行。當網關模塊未收到以太網數據或處理完成后,任務函數TaskF檢測模塊的定時器,判斷是否需要發(fā)送工作狀態(tài)報文和心跳報文等特殊報文。執(zhí)行完成后,判斷CAN節(jié)點是否有數據,并選擇用UDP或TCP方式發(fā)送到以太網,即選擇執(zhí)行TaskD或TaskE,完成CAN向以太網方向的數據傳輸過程,在此期間允許TaskB和TaskC進行搶占執(zhí)行。系統(tǒng)通過調度這5個任務函數完成以太網數據包與CAN數據幀間的格式轉換與傳輸,該程序流程如圖5所示。

網關互聯(lián)的設計

3測試

將該上位機IP地址設置為192.1.1.11,打開網關參數設置界面對一些參數進行設置,如:網關參數回復IP地址、網關參數回復端口、網關模塊IP地址、網關接收端口號和CAN數據目標IP地址等參數。隨后將CAN總線數據報文測試軟件ZLGCANTest打開,設置CAN總線的波特率為250khit·s-1,將CAN報文發(fā)出后用ZLGCAN—Test、Tcp&Udp測試工具及EtherPeekNX軟件來查看網絡的通信情況。圖6便是由ZLGCANTest軟件所得到的,從圖中可知,CAN發(fā)送數據的幀類型是擴展幀,幀格式是數據幀,幀ID為0x00000000,每個CAN協(xié)議中發(fā)送8bit的數據。而圖7是通過Tcp&Udp測試工具得到的數據,并已在圖中標出,此報文頭由Etherner協(xié)議報文頭、IP協(xié)議報頭、UDP協(xié)議報頭和自定義UDP報頭組成,并從自定義UDP報頭中的報文標識可判別出CAN報文,而后面的數據正是圖6中CAN報文中的13bit數據,即對CAN報文采用透明轉換方式,將CAN網絡數據成功發(fā)送到以太網。同樣方法可測試到以太網中數據也成功發(fā)送至CAN。網絡中其他類型的報文也同樣如此。

網關互聯(lián)

4結束語

文中闡述了以ARM7系列LPC2294為核心的以太網與CAN總線網絡互聯(lián)的通信網關實現(xiàn)過程,概述了本網關中采用的以太網和CAN總線的報文格式及其自定義UDP數據報文的結構。并提出了網關的軟、硬件實現(xiàn)方法。通過實驗該網關模塊實現(xiàn)了以太網與CAN總線間的數據傳遞,且具有穩(wěn)定性和較高的可靠性。

 

標簽:

點贊

分享到:

上一篇:ABB變頻器維修方法

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.hysjfh.com)獨家所有。如需轉載請與0755-82949061聯(lián)系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。

本網轉載并注明其他來源的稿件,均來自互聯(lián)網或業(yè)內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。

網站簡介|會員服務|聯(lián)系方式|幫助信息|版權信息|網站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網-工業(yè)自動化與智能制造的全媒體“互聯(lián)網+”創(chuàng)新服務平臺

網站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2025 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網安備 44030402000946號

主站蜘蛛池模板: 武夷山市| 九江县| 临邑县| 池州市| 简阳市| 治多县| 东乌| 洛南县| 随州市| 青龙| 巫溪县| 宜黄县| 沙坪坝区| 游戏| 鹤庆县| 海晏县| 民丰县| 五常市| 衡东县| 呼伦贝尔市| 五华县| 绍兴县| 太仓市| 昂仁县| 桂平市| 高密市| 辽宁省| 滕州市| 三台县| 大荔县| 化州市| 甘德县| 阿勒泰市| 伊金霍洛旗| 丹凤县| 江川县| 大邑县| 夏邑县| 德清县| 察哈| 桃江县|