<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è) > 嵌入式系統 > 設計應用 > 基于RS485的嵌入式電池化成充放電控制系統的設計

基于RS485的嵌入式電池化成充放電控制系統的設計

作者: 時(shí)間:2013-10-14 來(lái)源:網(wǎng)絡(luò ) 收藏


后臺任務(wù)1由系統定時(shí)器T0每100ms產(chǎn)生一次中斷,形成基本時(shí)鐘源,為控制和通信任務(wù)提供各類(lèi)軟件計數器。主控調度程序根據定時(shí)器計數狀態(tài)調度各個(gè)任務(wù),控制4路充電機的運行。這些任務(wù)包括:每隔1秒掃描一次鍵盤(pán),根據鍵盤(pán)輸入的命令激活相應任務(wù),如啟動(dòng)或終止過(guò)程、顯示設置參數等;每隔1秒進(jìn)行例行數據采集與處理,分別采集4路充電機的電壓、電流量,并對轉換的結果作相應的處理;每隔1秒循環(huán)顯示4路充電機的實(shí)時(shí)工作狀態(tài)參數,包括當前工作階段、工作方式、運行時(shí)間、電壓電流值、安時(shí)數等;每隔2秒分別計算4路充電機的安時(shí)數;每隔3秒進(jìn)行閉環(huán)反饋控制PI調節;每隔1分鐘分別累計4路充電機的安時(shí)數,同時(shí)備份相關(guān)的數據到E2PROM中。運行過(guò)程中定時(shí)檢查電流、電壓信號,如遇異常、斷流、過(guò)流、過(guò)壓等故障則及時(shí)顯示故障類(lèi)型和對應的充電機號。

后臺任務(wù)2為串行通信中斷任務(wù)。由于采用主從式異步串行通信,通信中斷任務(wù)的優(yōu)先級比定時(shí)器中斷的優(yōu)先級高。通信中斷包括接收中斷和發(fā)送中斷兩種情況,并需根據需要進(jìn)行切換控制和處理。平時(shí)處于接收中斷允許狀態(tài),當收到上位機輪詢(xún)報文時(shí)即組織發(fā)送報文,將報文幀送到發(fā)報緩沖區,啟動(dòng)發(fā)送中斷和發(fā)送計數器,在以后的發(fā)送中斷任務(wù)中按計數器發(fā)送一個(gè)字節直到發(fā)完該幀即禁止發(fā)送中斷。如收到上位機數據/命令報文頭則清理收報緩沖區,等待下次接收中斷字節。

4.2模塊化的軟件設計

本控制器的軟件設計采用模塊化結構,使程序明晰簡(jiǎn)潔。同時(shí)各模塊間相對獨立,可以單獨調試,程序擴充時(shí),不要更改原有的結構,只需修改相應的模塊。根據圖2中系統任務(wù)的劃分,程序模塊主要由主控程序及定時(shí)器中斷程序模塊、通信程序模塊、顯示及鍵盤(pán)處理模塊、輸入輸出及控制量計算模塊構成。各模塊之間的聯(lián)系是采用單片機的邏輯處理功能,設置標志位,通過(guò)查詢(xún)標志位的操作進(jìn)行控制和調用。

由于篇幅的原因,就不詳細介紹各模塊工作的流程。

5通信系統的設計

本文的應用對象是蓄電池工廠(chǎng)的極板或密閉電池充放電控制裝置,為了降低成本,便于管理并提高系統可靠性,控制系統設計可以采用小型的分散型控制系統,即兩層結構:分散的多回路控制器配一個(gè)操作站(俗稱(chēng)上位機和下位機)。通過(guò)低成本、高可靠的RS-485實(shí)時(shí)通信網(wǎng)絡(luò ),將數十臺多回路控制器與PC機相連,實(shí)現對生產(chǎn)過(guò)程的集中監控操作。上位機和下位機之間的通信包括數據下載、數據上裝、命令下發(fā)等。通信系統設計如下:

(1)系統物理層協(xié)議采用RS-485標準,為了在允許范圍內盡量提高通信速率,波特率選擇了非標準的3125bps。當上位機采用軟件輪詢(xún)方式與20個(gè)現場(chǎng)控制器逐個(gè)通信,通過(guò)適當的軟件設計,可基本滿(mǎn)足充放電過(guò)程操作的實(shí)時(shí)性要求。

(2)據鏈路層協(xié)議參考HDLC,采用短幀定長(cháng)傳送,每幀有效字節為7個(gè)。應用層要求實(shí)現即時(shí)數據上裝、歷史數據上裝、控制參數數據下載和命令下發(fā)等功能。

(3)本系統采用主站輪詢(xún)的主從方式,由主站發(fā)起通信,沒(méi)有網(wǎng)絡(luò )沖突;由主站選擇它要求通信的次站,各次站可以有不同的優(yōu)先級。相對于總線(xiàn)式控制網(wǎng)絡(luò ),這種方式易于理解和實(shí)現。

6結束語(yǔ)

實(shí)驗和現場(chǎng)實(shí)際運行表明,該多回路化成充放電控制器具有較好的人機對話(huà)窗口,結構簡(jiǎn)單,操作簡(jiǎn)便,參數設置靈活,有較強的適應性。系統軟硬件設備工作正常,功能齊全,穩定可靠,具有完善的系統自診斷、故障定位功能。而且具有成本低、體積?。?0×160×100)的特點(diǎn)。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 充放電控制系統 RS485 AT89C55

評論


相關(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>