嵌入式TCP/IP技術(shù)在恒溫振蕩器中的應用

發(fā)布時(shí)間:2010-8-16 11:54    發(fā)布者:lavida
關(guān)鍵詞: 恒溫振蕩器 , 嵌入式
恒溫振蕩器(又稱(chēng)恒溫搖床)是一種溫度可控的恒溫的生化儀器,是植物、生物、微生物、遺傳、*、環(huán)保、醫學(xué)等科研、教育和生產(chǎn)部門(mén)作精密培養制備不可缺少的實(shí)驗室設備。而目前大部分恒溫振蕩器的同類(lèi)產(chǎn)品都不具有網(wǎng)絡(luò )數據通信的功能。TCP/IP協(xié)議采用一種層次結構,為用戶(hù)提供了豐富的應用服務(wù),已成為網(wǎng)絡(luò )通信協(xié)議的事實(shí)上的國際工業(yè)標準,并已得到普遍推廣。同時(shí),嵌入式系統的Internet 網(wǎng)絡(luò )化的研究與應用是近幾年來(lái)嵌入式應用領(lǐng)域的一個(gè)研究熱點(diǎn),這一技術(shù)在許多領(lǐng)域都得到廣泛應用。  

本文為了保證實(shí)時(shí)監控恒溫振蕩器的轉速、溫度等參數,采用了以ARM7處理器為核心的嵌入式系統與TCP/IP 網(wǎng)絡(luò )互聯(lián)的方式進(jìn)行通*問(wèn),使上位機能夠實(shí)時(shí)地掌握恒溫振蕩器的各種參數狀況,保證對恒溫振蕩器工作過(guò)程實(shí)時(shí)遠程監控,不需要浪費人力和時(shí)間到現場(chǎng)勘查數據。  

1 總體設計及系統架構  

本系統使用的是以ARM7為內核、主頻達72 MHz的32位微處理器LPC2368,可以滿(mǎn)足高速實(shí)時(shí)處理及大容量數據傳輸的要求,且具有內置的以太網(wǎng)模塊,該模塊包含一個(gè)功能齊全的10 Mb/s或100 Mb/s以太網(wǎng)媒體訪(fǎng)問(wèn)控制器(MAC),這個(gè)以太網(wǎng)MAC通過(guò)使用加速的DMA硬件來(lái)提供優(yōu)化的性能。系統還采用了美國國家半導體公司的DP83848單路10 Mb/s或100 Mb/s以太網(wǎng)收發(fā)器和支持10 Mb/s和100 Mb/s自適應的網(wǎng)絡(luò )連接速度的以太網(wǎng)接口RJ45來(lái)組成網(wǎng)絡(luò )通信模塊,同時(shí)此主控芯片也控制溫度和速度等其他多個(gè)模塊。整個(gè)設計體系具有強大的網(wǎng)絡(luò )處理能力,系統框圖如圖1所示。  


  
2 網(wǎng)絡(luò )通信模塊設計  

2.1 以太網(wǎng)硬件實(shí)現  

本系統CPU采用飛利浦公司的LPC2368,它是以ARM7為內核主頻達72 MHz的32位微處理器,內部集成了一個(gè)以太網(wǎng)模塊,支持10 Mb/s或100 Mb/s PHY器件,帶有分散/集中式DMA的DMA管理器以及幀描述符數組,通過(guò)緩沖和預取來(lái)實(shí)現存儲器通信的優(yōu)化,并且發(fā)送和接收均支持多播幀、廣播幀和超長(cháng)幀傳輸,允許幀長(cháng)度為任意值。通過(guò)標準的媒體獨立接口(MII)或標準的簡(jiǎn)化MII接口可連接外部PHY芯片,該特性是通過(guò)軟件來(lái)選擇,然后可對PHY寄存器進(jìn)行訪(fǎng)問(wèn)。  

網(wǎng)卡芯片DP83848是10 Mb/s/100 Mb/s單路物理層以太網(wǎng)收發(fā)器件,包含1個(gè)智能電源關(guān)閉,具有低功耗性能。在本系統中DP8384S工作在50 MHz晶振頻率下,具有能量檢測模式的特性,可為系統提供一個(gè)智能節能工作模式。它是一個(gè)鏈路可控制節能模式,目的是當在線(xiàn)上檢測不到活動(dòng)的時(shí)候,器件能夠進(jìn)入休眠的低功耗狀態(tài),即狀態(tài)-能量檢測模式。能量檢測功能通過(guò)寄存器設定來(lái)控制,在電源狀態(tài)發(fā)生轉換的時(shí)候,電源上電/重置算法遵循其正常流程,而且能量檢測模式并不會(huì )影響之前設定的工作模式。在電源狀態(tài)發(fā)生轉換時(shí),器件將會(huì )保留其原先的模式(強制模式或者自動(dòng)協(xié)商、MDI或者M(jìn)DIX)。能量檢測算法能夠在不同的電源狀態(tài)之間自動(dòng)或手動(dòng)轉換,當一個(gè)電源狀態(tài)的改變未成功或者發(fā)生太多誤差事件時(shí),能量檢測邏輯能夠發(fā)出中斷信號。能量檢測邏輯在采取動(dòng)作之前需要多倍數據和誤差事件來(lái)調節一些噪聲。計數器深度則由寄存器設置來(lái)確定,并默認其為包含數據和誤差的一個(gè)事件。  

最后與常用的以太網(wǎng)接口RJ45連接,該接口支持10 Mb/s和100 Mb/s自適應的網(wǎng)絡(luò )連接速度。本系統設計的以太網(wǎng)硬件電路連接如圖2所示。  


  
2.2 系統通信協(xié)議和通信過(guò)程  

2.2.1 以太網(wǎng)數據幀傳輸和接收  

在以太網(wǎng)中數據傳遞靠的是MAC地址,而不是IP地址,IP地址和MAC地址具有映射關(guān)系。1個(gè)以太網(wǎng)包包括:1個(gè)導言區(preamble)、1個(gè)起始幀定界符和1個(gè)以太網(wǎng)幀。以太網(wǎng)幀由目標地址、源地址、1個(gè)可選的VLAN區、長(cháng)度/類(lèi)型區、有效載荷以及幀校驗序列組成,如圖3所示。每一個(gè)以太網(wǎng)幀均由1個(gè)或多個(gè)片段組成,每個(gè)片段對應1個(gè)描述符。以太網(wǎng)模塊中的DMA管理器能夠將1個(gè)以太網(wǎng)幀的多個(gè)片段進(jìn)行分散(用于接收)和集中(用于發(fā)送)。  

傳輸的以太網(wǎng)包中7個(gè)字節的導言區用來(lái)使接收方的時(shí)鐘和發(fā)送方的時(shí)鐘同步,然后再由幀分界符來(lái)表述1個(gè)數據幀的起始,進(jìn)而進(jìn)入數據幀的傳輸通信過(guò)程,數據幀主要是通過(guò)目標地址和源地址的位置建立通信。6個(gè)字節的目標地址是指目的站點(diǎn)的MAC地址,表明要把數據送到哪個(gè)站點(diǎn)。若目標地址第1位為0,則這個(gè)字段指定了一個(gè)特定的站點(diǎn);若為1,則表示目標地址為一組地址,而該地址是事先定義好的;若所有位全為1,則表示接收者為局域網(wǎng)上的所有站點(diǎn),即該地址是一個(gè)廣播地址。6個(gè)字節的源地址是指源主機的MAC地址,表明該幀來(lái)自哪個(gè)主機。VLAN是一種將局域網(wǎng)(LAN)設備從邏輯上劃分成一個(gè)個(gè)網(wǎng)段,從而實(shí)現虛擬工作組(單元)的數據交換技術(shù),如果選用基于MAC地址的VLAN的方法就根據每個(gè)主機的MAC地址來(lái)劃分,即對每個(gè)MAC地址的主機都配置分組,它實(shí)現的機制就是每一塊網(wǎng)卡都對應唯一的MAC地址,跟蹤屬于VLAN MAC的地址。在幀傳輸的最后進(jìn)行幀校驗,使用4個(gè)字節的循環(huán)冗余效驗碼進(jìn)行錯誤檢驗。  


  
2.2.2 TCP/IP協(xié)議  

TCP/IP協(xié)議是面向連接的、端對端的可靠通信協(xié)議,共分為4層,即網(wǎng)絡(luò )接口層、網(wǎng)絡(luò )層、傳輸層和應用層,如圖4所示。  


  
網(wǎng)絡(luò )接口層負責將IP數據報以數據幀的格式發(fā)送和接收,具體過(guò)程為數據從TCP/IP應用程序通過(guò)TCP傳遞到傳輸層TCP,然后交給IP。IP協(xié)議提供邏輯地址信息,并將數據封裝在分組中。接著(zhù)IP分組進(jìn)入網(wǎng)絡(luò )接口層,網(wǎng)絡(luò )接口層創(chuàng )建1個(gè)或多個(gè)數據幀,以便進(jìn)入物理網(wǎng)路,數據幀最后被轉換成在網(wǎng)絡(luò )傳輸介質(zhì)上傳送的(bit)流。  

TCP/IP的核心層是網(wǎng)絡(luò )層(IP)和傳輸層(TCP),對應的主要協(xié)議是IP和TCP兩大協(xié)議。網(wǎng)絡(luò )層提供計算機間的IP分組傳輸,包括高層數據的分組生成、底層數據報的分組組裝,以及路由處理、流量控制、擁塞處理等問(wèn)題。IP數據報中含有發(fā)送它的主機的地址(源地址)和接收它的主機的地址(目的地址)。傳輸層(TCP)作為網(wǎng)絡(luò )應用程序與網(wǎng)絡(luò )之間的接口,根據端口通過(guò)TCP傳輸控制協(xié)議提供應用程序間的通信,包括格式化信息流和提供可靠傳輸,實(shí)際上也就是將TCP數據送往一個(gè)由IP地址與端口號組成的套接字(Socket)。  

應用層提供常用的應用服務(wù)程序,如HTTP服務(wù)、SMTP服務(wù)等。HTTP應用程序在Web服務(wù)器上運行的是面向對象的協(xié)議,工作方式為收聽(tīng)請求,然后響應請求,向請求方發(fā)回文件。  

2.2.3 本系統TCP/IP通信過(guò)程  

TCP/IP協(xié)議軟件上的數據傳輸可分為3個(gè)階段:建立連接、傳輸數據和斷開(kāi)連接。它的實(shí)現過(guò)程可以用狀態(tài)機來(lái)描述。建立連接有2種方法,即主動(dòng)打開(kāi)和被動(dòng)打開(kāi)。服務(wù)器端是被動(dòng)打開(kāi),然后一直在偵聽(tīng)連接請求;而客戶(hù)端是主動(dòng)打開(kāi),發(fā)送連接請求以建立連接。斷開(kāi)連接有2種方式:主動(dòng)斷開(kāi)連接和被動(dòng)斷開(kāi)連接。在需要主動(dòng)斷開(kāi)連接時(shí),發(fā)送1個(gè)FIN數據包,接收到對FIN數據包的確認后,再發(fā)送1個(gè)RESET數據包,即可順利完成1次主動(dòng)斷開(kāi)連接。  

本系統中通信過(guò)程主要分為4個(gè)部分:  

(1)網(wǎng)卡芯片DP83848和RJ45組成的硬件接口。  

(2)TCP/IP協(xié)議棧。用這個(gè)協(xié)議棧進(jìn)行數據通信,網(wǎng)卡芯片已經(jīng)完全固化了從MAC層、網(wǎng)絡(luò )層到傳輸層所需要的協(xié)議,因此,用戶(hù)無(wú)需了解這些協(xié)議的實(shí)現方法和實(shí)現代碼。  

(3)接收和發(fā)送緩沖區。主控芯片LPC2368通過(guò)以太網(wǎng)與網(wǎng)絡(luò )上其他主機進(jìn)行通信的數據都是通過(guò)這些緩沖區來(lái)進(jìn)行交換的。  

(4)以太網(wǎng)物理層接口。網(wǎng)卡芯片DP83848實(shí)現10/100BaseT以太網(wǎng)傳輸數據功能。  

在主機端訪(fǎng)問(wèn)由嵌入式ARM芯片LPC2368為主控的從機,然后在主機顯示出由LPC2368控制下的恒溫振蕩器的速度和溫度等實(shí)時(shí)數據。具體過(guò)程是:先對底層進(jìn)行初始化,包括對LPC2368主控芯片上的局域網(wǎng)控制器配置端口和對DP83848的物理層的設備、讀寫(xiě)狀態(tài)寄存器、MAC配置和控制寄存器、接收和發(fā)送端描述符寄存器、局域網(wǎng)地址寄存器、以及指定DP83848工作模式具體是10 Mb/s還是100 Mb/s;然后進(jìn)行定時(shí)編程,處理網(wǎng)絡(luò )、TCP/IP堆棧和用戶(hù)事件;再設置*TCP通信的端口,進(jìn)行端口連接,服務(wù)器則被動(dòng)打開(kāi)等待呼叫,之后就可以確定是否接收數據包然后進(jìn)行幀處理等;最后實(shí)現動(dòng)態(tài)的HTTP服務(wù)器,等到被連接之后才發(fā)送1個(gè)HTTP的幀頭,存儲HTML代碼,這里的HTML代碼存放在自定義的一個(gè)數組當中,該數組包括溫度和速度等實(shí)時(shí)數據,只要在應用層程序中調用該數組,就可以訪(fǎng)問(wèn)到實(shí)時(shí)數據,并把得到的實(shí)時(shí)數據顯示到網(wǎng)頁(yè)頁(yè)面上,以此實(shí)現對恒溫振蕩器的遠程監控。  

恒溫振蕩器網(wǎng)絡(luò )通信實(shí)現的程序流程如圖5所示。  


  
3 其他模塊設計  

3.1 轉速模塊  

主要實(shí)現轉速調節的功能。在運行狀態(tài)下設置速度值,再通過(guò)DA輸出改變可控硅的導通角進(jìn)行電機速度的調節。運行狀態(tài)又分為A、B、C、D四段運行:首先是按照A段設置的轉速參數運行,當A段運行時(shí)間結束就調入B段參數,B段開(kāi)始運行;當B段運行時(shí)間結束時(shí)就調入C段參數,C段就開(kāi)始運行;同理,C段運行時(shí)間結束時(shí)調入D段參數,從而開(kāi)始D段參數的運行;當D段運行時(shí)間結束時(shí),就設置待機狀態(tài)。在運行狀態(tài)下,當速度達到穩定狀態(tài)時(shí),判斷轉速是否超出設置速度±5轉且超時(shí)大于2 min,選擇是否進(jìn)入超欠速轉速處理動(dòng)作的執行;否則就退出超欠速程序,繼續進(jìn)行轉速控制調整。  

3.2 溫度模塊  

主要實(shí)現溫度控制以及超溫和欠溫溫度調整的功能。溫度控制主要是通過(guò)制冷和加熱這兩個(gè)手段來(lái)調節。首先是在運行的狀態(tài)下設置溫度參數值,然后由A/D轉換來(lái)采集振蕩器箱體內部環(huán)境溫度,按照箱內溫度和設置溫度的偏差,再根據PID溫度控制的算法[6]進(jìn)行分區域控制。該恒溫振蕩器劃分了3個(gè)區間進(jìn)行處理:(1)當設置溫度處于(箱內溫度-4℃)箱內溫度區間時(shí),控制打開(kāi)制冷風(fēng)扇和加熱時(shí)間;(2)當設置溫度低于箱內溫度4℃區間時(shí),制冷常開(kāi),控制加熱時(shí)間;(3)當設置溫度大于箱內溫度區間時(shí),制冷不開(kāi),控制加熱時(shí)間,直到把溫度調整在誤差范圍之內為止。如果恒溫振蕩器進(jìn)入穩定工作狀態(tài),但箱內溫度超出設置值的正負4℃且時(shí)間大于5 min時(shí),就執行超溫處理動(dòng)作;否則,退出超欠溫程序,繼續進(jìn)行溫度控制。  

本文闡述了基于TCP/IP的恒溫振蕩器的設計原理,以嵌入式ARM芯片LPC2368為主控芯片控制多個(gè)模塊的功能實(shí)現。詳細說(shuō)明了基于TCP/IP的控制模塊對于恒溫振蕩器的遠程監控功能的實(shí)現,目前市場(chǎng)上的大部分同類(lèi)產(chǎn)品都不具備該項功能。另外,通過(guò)硬件與軟件的結合來(lái)實(shí)現恒溫振蕩器的調速和調溫的功能,保證了恒溫振蕩器的恒溫恒轉速持續穩定的工作狀態(tài)。根據本設計制造的恒溫振蕩器具有很強的實(shí)用性和穩定性,能夠滿(mǎn)足用戶(hù)遠程獲取數據的使用需求。
本文地址:http://selenalain.com/thread-21531-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页