<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 空調溫控電子膨脹閥驅動(dòng)電路的設計

空調溫控電子膨脹閥驅動(dòng)電路的設計

作者: 時(shí)間:2008-02-20 來(lái)源:網(wǎng)絡(luò ) 收藏
摘要:介紹了一種利用單片機方案。單片機對傳感器測得的溫度和其他信號進(jìn)行處理,步進(jìn)電機開(kāi)閉閥,并通過(guò)RS485將信息傳給上位機。給出的軟硬件實(shí)現方案,該已成功地應用于某制冷閥測試系統。
關(guān)鍵詞:單片機;電子膨脹閥;步進(jìn)電機;DSl8B20;RS485


1 引言
電子膨脹閥是用電子電路控制的膨脹閥,它是變頻制冷設備中的關(guān)鍵部件。由于電子膨脹閥能夠根據CPU的指令迅速調節閥的開(kāi)啟度,快速控制制冷劑的流量,減小房間內的溫差,因而既能增強房間的舒適程度,又可最大限度地節能。電子膨脹閥的驅動(dòng)部件是一個(gè)4相8拍步進(jìn)電機。本文給出了一種電子膨脹閥的驅動(dòng)電路。

2 系統硬件
整個(gè)系統采用模塊化。系統硬件電路主要由單片機、溫度傳感器、電池供電的RAM、步進(jìn)電機驅動(dòng)部件、RS485等組成,其單片機硬件電路如圖1所示。

由于程序比較大和中間變量比較多,這里采用了Atmel公司的AT89C55型單片機。它具有20 KB的Flash程序存儲空間和256字節的RAM。圖1中:
P0.1和P0.2口模擬I2C總線(xiàn)SDA、SCL;
P0.3口實(shí)現計數脈沖清零;
P0.4口實(shí)現步進(jìn)電機正轉10個(gè)脈沖;
P0.5口實(shí)現步進(jìn)電機反轉lO個(gè)脈沖;
PO.6口實(shí)現溫差增加l℃;
P0.7口實(shí)現溫差減少l℃;
P1.O口控制是否上拉T_IN;
P1.1口上單總線(xiàn)掛接4個(gè)DSl8B20;
P1.2口接收工作模式(“1”是制冷、“0”是制熱);
P1.7口輸出底電平是使能接收,輸出高電平是使能發(fā)送;
P2.0、P2.1、P2.2、P2.3口連接D、C、B、A控制步進(jìn)電機。
其中PCF8583與單片機通過(guò)I2C總線(xiàn)通信,其硬件電路連接如圖2所示。

與上位機的通信方式是RS485,其硬件電路連接如圖3所示。

步進(jìn)電機采用的是4相8拍制,通過(guò)AT89C55的I/O口驅動(dòng),其硬件電路連接如圖4所示。

3 軟件設計
在本程序設計中,采用置事件標志和分時(shí)控制辦法對事件進(jìn)行處理。如在T0中斷子程序中,每隔2.5 ms驅動(dòng)步進(jìn)電機1個(gè)脈沖,同時(shí)在中斷服務(wù)程序中將計數脈沖保存在PCF8583中的RAM。P0.3口、P0.4口、P0.5口、P0.6口、P0.7口5個(gè)I/O對應的5個(gè)按鍵與74LS08相連,執行相與的關(guān)系觸發(fā)外部中斷方式0進(jìn)入中斷服務(wù)程序,執行相應的功能。因為溫度傳感器部分用單總線(xiàn)通信方式,且PCF8583與單片機通過(guò)I2C總線(xiàn)通信,二者對時(shí)序要求很?chē)栏?,在此期間不可被中斷程序打斷,故在此期間關(guān)中斷。主程序流程如圖5所示。

整個(gè)軟件采用結構化的程序設計方法設計。程序分為三大模塊:主程序模塊、EXO中斷服務(wù)子程序模塊、T0中斷服務(wù)子程序模塊。
主程序模塊按照功能又分為:初始化子程序、I2C總線(xiàn)通信程序、溫度傳感器測溫程序、RS485通信程序和PID控制程序。在初始化子程序中,主要包括RS485通信和DSl8B20傳感器初始化。I2C總線(xiàn)通信部分則是讀出上次掉電保存的脈沖數。溫度傳感器測溫程序模塊測得二點(diǎn)溫度。將每個(gè)傳感器的序列號測出,以數組的形式和程序存放在一起,并且給每個(gè)測溫點(diǎn)編號,做成標簽粘貼在對應的傳感器上。當系統中的傳感器出故障時(shí),必須測出備用傳感器序列號,貼上相應的標簽,并在程序中修改數組,再將程序固化到程序存儲器中。
執行機構需要控制量的增量(例如驅動(dòng)步進(jìn)電動(dòng)機)時(shí),需要用PID的“增量算法”,這種算法在有關(guān)文獻中已有具體說(shuō)明。

4 結束語(yǔ)
目前,該步進(jìn)電機驅動(dòng)電路已成功用于某空調制冷電子膨脹閥測試系統中。經(jīng)過(guò)1個(gè)月的運行,情況良好,達到了客戶(hù)的要求。

DIY機械鍵盤(pán)相關(guān)社區:機械鍵盤(pán)DIY




評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>