基于CAN總線和CCll00芯片的嵌入式遠(yuǎn)程測(cè)控系統(tǒng)的設(shè)計(jì)
引言
本文引用地址:http://butianyuan.cn/article/151583.htm文中提出了一種基于無(wú)線測(cè)控的工業(yè)通信分布式網(wǎng)絡(luò)模型,它將嵌入式技術(shù)、無(wú)線通信技術(shù)和自動(dòng)控制技術(shù)有機(jī)地結(jié)合起來(lái),采用兩級(jí)組網(wǎng)方式,將有線與無(wú)線技術(shù)結(jié)合起來(lái),并結(jié)合嵌入式硬件平臺(tái)和無(wú)線通信模塊,解決了數(shù)據(jù)采集系統(tǒng)和控制設(shè)備的數(shù)據(jù)傳輸問(wèn)題。該系統(tǒng)實(shí)時(shí)性強(qiáng)、可靠性高、結(jié)構(gòu)小巧、開(kāi)發(fā)費(fèi)用低廉,在現(xiàn)代工業(yè)測(cè)控系統(tǒng)已經(jīng)發(fā)揮了經(jīng)濟(jì)效益。
1、系統(tǒng)總體設(shè)計(jì)方案
分布式網(wǎng)絡(luò)模型實(shí)際方案如圖1所示。
圖1 分布式網(wǎng)絡(luò)模型實(shí)際方案
該方案中,服務(wù)器采用嵌入式硬件平臺(tái),基于Linux操作系統(tǒng),建立嵌入式Web服務(wù)器和分布式現(xiàn)場(chǎng)的測(cè)控應(yīng)用程序。測(cè)控應(yīng)用程序通過(guò)驅(qū)動(dòng)CAN總線模塊,以輪詢方式實(shí)現(xiàn)嵌入式平臺(tái)與終端節(jié)點(diǎn)之間的通信。數(shù)據(jù)采集器使用無(wú)線通信與各終端設(shè)備連接,通過(guò)無(wú)線傳輸方式負(fù)責(zé)對(duì)測(cè)控應(yīng)用程序發(fā)出命令進(jìn)行響應(yīng),啟動(dòng)無(wú)線通信過(guò)程,完成分布式現(xiàn)場(chǎng)的數(shù)據(jù)采集和控制動(dòng)作執(zhí)行。
系統(tǒng)采用了分級(jí)組網(wǎng)的方式,由有線和無(wú)線通信兩級(jí)網(wǎng)絡(luò)組成。考慮到工業(yè)干擾比較嚴(yán)重,以及通信范圍能有較大的冗余,嵌入式服務(wù)器與數(shù)據(jù)采集器之間使用有線網(wǎng)絡(luò),采用CAN總線傳輸。另外,系統(tǒng)使用了數(shù)據(jù)采集器作為中間媒介,將無(wú)線終端和ARM主控機(jī)連接在一起,解決了無(wú)線系統(tǒng)因受通信距離、空闖布局、外部干擾等因素的限制,致使無(wú)線通信的節(jié)點(diǎn)無(wú)法直接與主控機(jī)通信的問(wèn)題。對(duì)附近的無(wú)線終端,數(shù)據(jù)采集器使用無(wú)線信道通信,對(duì)主控機(jī),使用CAN連接,這樣就較好地解決了應(yīng)用環(huán)境對(duì)無(wú)線通信網(wǎng)絡(luò)的不利影響。而且,更為重要的是,可根據(jù)實(shí)際需要使用你N個(gè)數(shù)據(jù)采集器分別掛在CAN總線上,采用N個(gè)頻段傳輸,減少了無(wú)線通信中的沖突,增加了通信的可靠性。
系統(tǒng)由客戶端瀏覽器、嵌入式服務(wù)器平臺(tái)、無(wú)線通信模塊3部分組成??蛻舳藶g覽器是運(yùn)行在桌面計(jì)算機(jī)中的通用瀏覽器應(yīng)用程序;嵌入式服務(wù)器是以S3C2410A芯片為核心組建的網(wǎng)絡(luò)服務(wù)平臺(tái);無(wú)線通信模塊由數(shù)據(jù)采集器和終端節(jié)點(diǎn)2部分構(gòu)成,是以CCll00無(wú)線通信芯片和8051F310單片機(jī)為核心構(gòu)成的測(cè)控執(zhí)行部件。其中嵌入式服務(wù)器平臺(tái)是系統(tǒng)的核心部件,基于Linux操作系統(tǒng),負(fù)責(zé)對(duì)現(xiàn)場(chǎng)設(shè)備進(jìn)行測(cè)控?cái)?shù)據(jù)的處理、存儲(chǔ)、轉(zhuǎn)發(fā)及與遠(yuǎn)程客戶端瀏覽器的數(shù)據(jù)交互。
通過(guò)公共網(wǎng)關(guān)接口CGI(Common Gateway Interface)實(shí)現(xiàn)嵌入式Web服務(wù)器和分布式現(xiàn)場(chǎng)的測(cè)控應(yīng)用程序接口。CGI使編寫的程序處理wwW上客戶端送來(lái)的表單和數(shù)據(jù),并對(duì)此做出響應(yīng),這樣可使編寫的程序和Web服務(wù)器間的接口標(biāo)準(zhǔn)化。
嵌入式服務(wù)器正常工作要引入文件系統(tǒng)。Linux操作系統(tǒng)可以提供文件系統(tǒng);同時(shí)利用Linux操作系統(tǒng)自身所帶的TCP/IP協(xié)議棧,只要在應(yīng)用層上利用操作系統(tǒng)提供的網(wǎng)絡(luò)API編寫服務(wù)器端程序即可,從而節(jié)省了開(kāi)發(fā)時(shí)間。
2、系統(tǒng)硬件設(shè)計(jì)
對(duì)于一個(gè)嵌入式系統(tǒng),硬件系統(tǒng)設(shè)計(jì)相當(dāng)重要,一方面要考慮所選擇的器件是否適合應(yīng)用要求,硬件資源是否足夠用來(lái)編程調(diào)試并保證系統(tǒng)性能優(yōu)良;另一方面硬件資源要在滿足系統(tǒng)需求前提下盡可能降低成本??紤]以上因素,服務(wù)器的硬件采用模塊化設(shè)計(jì),分為嵌入式服務(wù)器模塊、CAN通信接口模塊、無(wú)線測(cè)控模塊3部分。
2.1 嵌入式服務(wù)器模塊設(shè)計(jì)
該系統(tǒng)的嵌入式服務(wù)器平臺(tái)的設(shè)計(jì)如圖2所示。
圖2 嵌入式服務(wù)器設(shè)計(jì)方案
基于S3C2410A擴(kuò)展了CAN接口模塊、sD卡等,CPU采用$3C2410A微處理器作為整個(gè)系統(tǒng)的控制核心。S3C2410A是基于ARM920內(nèi)核開(kāi)發(fā)的32位RISC微處理器,集成了豐富的外圍功能模塊,如以太網(wǎng)接121,便于低成本設(shè)計(jì)嵌入式應(yīng)用系統(tǒng)。S3C2410A主要功能就是通過(guò)控制以太網(wǎng)接口芯片CS8900A及CAN通信接口芯片MCP2510的工作,實(shí)現(xiàn)CAN通信協(xié)議與以太網(wǎng)通信協(xié)議的轉(zhuǎn)換,使遠(yuǎn)端用戶借助瀏覽器經(jīng)由Intemet對(duì)現(xiàn)場(chǎng)設(shè)備實(shí)施遠(yuǎn)程監(jiān)控。
2.2 CAN通信接口模塊設(shè)計(jì)
由于多數(shù)嵌入式處理器都不帶CAN總線控制器,在嵌入式處理器的外部總線上擴(kuò)展CAN總線接口芯片是通用的解決方案。設(shè)計(jì)采用了MCP2510芯片作為CAN總線的控制器,該芯片支持CAN2.0B標(biāo)準(zhǔn)。TJAl050作為CAN總線的收發(fā)器。
MCP2510可在3-5.5 V范圍內(nèi)供電,因此能直接與3.3V I/0口的嵌入式處理器連接。系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,與處理器之間的SPI串行接口,減少了總線的物理連接,提高了系統(tǒng)的可靠性。
S3C2410A帶有SPI總線控制器,可直接與MCP2510連接。如圖3所示。
圖3 嵌入式節(jié)CAN節(jié)電設(shè)計(jì)方案
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論