《電子技術(shù)應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > PSoC單片機及其在燃氣變頻輸配與流量計量中的應用
PSoC單片機及其在燃氣變頻輸配與流量計量中的應用
怯肇乾
摘要: 介紹了PSoC單片機實現(xiàn)的燃氣變頻輸配與精確計量,。從硬軟件設計的簡潔易用性,、系統(tǒng)的穩(wěn)定可靠性,、開發(fā)生產(chǎn)成本的低廉性等方面,,重點闡述了PSoC單片機測控體系的巨大優(yōu)勢,。
Abstract:
Key words :

    摘 要:  介紹了PSoC" title="PSoC">PSoC單片機實現(xiàn)的燃氣變頻輸配與精確計量,。從硬軟件設計的簡潔易用性,、系統(tǒng)的穩(wěn)定可靠性,、開發(fā)生產(chǎn)成本的低廉性等方面,,重點闡述了PSoC單片機測控體系的巨大優(yōu)勢,。
    關鍵詞:  PSoC  變頻輸配  測量控制  流量計算

 

    在燃氣的變頻輸配與計量方面,以普通單板機/單片機組成的大流量范圍的燃氣計量儀表和工控機實現(xiàn)的一器多控自動變頻調(diào)速輸配系統(tǒng)廣為應用,,有力地提高了計量精度并節(jié)約了大量的能源,。但是用“單板機/單片機+外圍器件”計量燃氣,系統(tǒng)復雜,,穩(wěn)定性差,;用工控機變頻輸配燃氣,造成資源浪費,。從提高系統(tǒng)穩(wěn)定可靠性,、簡化硬軟件設計、降低產(chǎn)品成本等角度出發(fā),,結(jié)合現(xiàn)代科學技術(shù)的發(fā)展,,非常需要一種構(gòu)成系統(tǒng)簡單、靈活易用的器件,,去改造上述兩個體系,,并盡可能把它們合二為一。選用Cypress公司新近推出的一系列PSoC單片機進行上述技術(shù)改進,,不僅可以很好達到預期目的,,并且還可以有效提高系統(tǒng)測控的實時性能。
1 PSoC單片機及其特點
    PSoC即Programmable System On Chip,。Cypress公司的PSoC系列單片機CY8C25xxx" title="CY8C25xxx">CY8C25xxx/26xxx,,片內(nèi)有一個高速內(nèi)核、Flash快速閃存和SRAM數(shù)據(jù)內(nèi)存,,以及設計者可配置的模擬模塊和數(shù)字模塊:
    (1)CPU內(nèi)核,8位哈佛結(jié)構(gòu),速度可達24MHz;且含一乘加器MAC,能執(zhí)行帶符號8×8乘法和32位加法運算;
    (2)4~16KB片內(nèi)Flash閃存及256B SRAM,可通過串口在系統(tǒng)編程(ISSP)Flash閃存,,F(xiàn)lash具有可加密保護功能;
    (3)12個PSoC模擬模塊可靈活配置成6~13位A/D轉(zhuǎn)換器、可編程增益放大器(PGA),、采樣保持功能、可編程濾波器,、差分比較器,、溫度傳感器等;
    (4)8個數(shù)字模塊可靈活配置成定時/計數(shù)器,、脈寬調(diào)制器(PWM),、循環(huán)冗余校驗塊(CRC)、串行通信塊(UARTS或SPI)及復雜的時鐘源等,;
    (5)4~44個通用I/O口,,可編程為上/下拉輸出、集電極開路輸出,、強輸出,,可用作邊沿/電平觸發(fā)的中斷輸入或Smith觸發(fā)器TTL輸入;
    (6)專用的中斷控制器,,2級中斷優(yōu)先級,,中斷源:通用I/O、電源監(jiān)控單元,、Sleep定時器,、8個PSoC數(shù)字模塊和4個模擬列;
    (7)24/48MHz的片內(nèi)主振蕩器和32.768kHz片內(nèi)低速振蕩器,;WatchDog/Sleep定時器,、可編程的電源電壓檢測器、采樣抽取器,、片內(nèi)電壓參考源等專用外設,;可選用的模塊端口(E2PROM、LCD,、I2C等),;
    (8)全靜態(tài)CMOS工藝,3~5.5V DC工作電壓,專用的開關式電壓泵,可使工作電壓降到1V,真正的高速低壓性能;
    (9)配套的低廉開發(fā)工具:在線仿真器,、評估板和集成開發(fā)環(huán)境PSoC Designer,,其PSoC Designer內(nèi)嵌匯編器、C編譯器,、器件資源配置器和調(diào)試器,。
    PSoC系列單片機將傳統(tǒng)的單片機系統(tǒng)集成在一顆芯片里,用戶模擬和數(shù)字陣列的可配置性是其最大特點,。
2 變頻輸配與大流量范圍計量的機理
2.1 一器多控變頻燃氣輸配的機理

    燃氣輸配主要是維持氣源端的壓力,。壓力不足時,逐步加開輸配機組,升高壓力到設定值;反之,壓力過高時,逐步減停機組,降低壓力到設定值。由于大功率交流電機反復啟停的巨大耗能和器件沖擊,所以引入了變頻調(diào)速器,。為進一步降低成本,通常采用一臺變頻器控制多臺交流電機,即所謂的“一器多控”,其機理如下:加壓時,變頻啟動并加速一臺電機,達到最大速度時,壓力仍沒有增上來,則把這臺電機轉(zhuǎn)為工頻運行,轉(zhuǎn)而對下一臺電機做變頻啟動并加速,如此逐步變頻啟動加速并做工頻切換,直到把壓力提上來,;反之,減壓時,則逐步做變頻切換并變頻減速停機,直到把壓力降到要求值。
2.2 大流量范圍燃氣計量的機理
    孔板式差壓流量計在不變節(jié)流件開孔直徑下擴展量程比,主要是采用增設差壓量程切換單元的方法:在流量小,、差壓低時,使用小差壓量程檢測計算,;反之,使用大差壓量程檢測計算。檢測計量流程如圖1所示,。圖1中參數(shù)T,、P、ΔP,、d,、D、K,、Z,、η、β,、ρ,、ε、α0,、rRe,、M分別表示溫度、壓力,、差壓,、孔板開口直徑、計量管段直徑,、介質(zhì)等熵指數(shù),、氣體壓縮系數(shù)、介質(zhì)粘度,、d/D,、密度、流速系數(shù),、流出系數(shù),、管道雷諾數(shù)、流量,。

 


3 PSoC單片機測控系統(tǒng)的構(gòu)建
3.1 整體方案的設計

    整體設計方案如圖2所示,,說明如下:
    (1)數(shù)據(jù)采集,采用1~5V的三通道11位A/D轉(zhuǎn)換器,擬定采樣率7.8ksps;壓力作頻繁采樣,以增強變頻輸配控制的實時性;差壓與溫度只在計量計算需要時采樣;
    (2)輸出通道,采用一8位D/A轉(zhuǎn)換器控制變頻器,若干工/變頻切換控制信號,一手動/自動變頻切換控制信號,,D/A輸出為0~5V DC信號,切換控制信號具有驅(qū)動能力,;
    (3)人機接口,,使用日立HD44780LCD點陣模塊顯示狀態(tài)參數(shù)、報警種類及鍵盤操作等,,使用一個6位A/D轉(zhuǎn)換器作鍵盤輸入識別以減少對I/O口的占用,;
    (4)存儲關鍵性數(shù)據(jù),采用串行E2PROM;外界通信采用異步串行接口UART,并以此實現(xiàn)在系統(tǒng)串行編程ISSP,;
    (5)使用乘加器加速CPU速度,;使用看門狗保證程序正常運行;使用實時時鐘記錄流量或故障統(tǒng)計的時刻,;使用定時器產(chǎn)生所需工/變頻切換時間和流量累計時間;使用OSC振蕩器產(chǎn)生系統(tǒng)時鐘等,。

 


    上述方案,選用Cypress PSoC系列單片機,圖2中虛線部分均可由一片單片機實現(xiàn),這里選用CY8C26443(28 Pin Dual inline),;否則,采用普通單板機/單片機,則各個模塊均要設法構(gòu)造,還要考慮把它們設計連成一體。
3.2 鍵盤輸入電路的設計
    鍵盤輸入,通過一I/O口,由一6位A/D轉(zhuǎn)換器識別,。這里選用8個按鍵,用以實現(xiàn)參數(shù)輸入,、時間核對、記錄查詢,、通信等功能,電路如圖3所示,。圖3所示各個電阻值,據(jù)A/D轉(zhuǎn)換特點和常用電阻規(guī)格系列確定。

 


3.3 一器多控變頻電路的設計
    該部分電路用以實現(xiàn)“手動/自動變頻”和“工頻/變頻狀態(tài)的切換”,。這里選用日本富士FRN75P11S- 4CX風機專用變頻器,切換電路采用傳統(tǒng)的接觸器-繼電器控制,。變頻加/減速,手動控制通過一個1~5kΩ的可調(diào)電阻器實現(xiàn);自動控制通過0~5V的DC變化輸入實現(xiàn)。構(gòu)成如圖4所示,。

 


3.4 信號的輸入與輸出
    設計系統(tǒng)應用在燃氣行業(yè),安全防護十分重要,。壓力、溫度,、差壓信號的采集,現(xiàn)場的一次儀表全部采用一體化防曝類型,現(xiàn)場引入的信號采用隔離型安全柵,。輸出信號全部采用繼電器控制,與現(xiàn)場控制器件隔離。
4  PSoC單片機測控系統(tǒng)的設計
4.1  PSoC單片機的資源使用與配置

    11位A/D轉(zhuǎn)換器,,選用DelSig11用戶模塊(Δ-Σ型A/D),,占用一PSoC模擬模塊、一PSoC數(shù)字模塊和專用的采樣抽取器,,為增強實時性與精度而取其最大采樣率7.8ksps(即每次采樣需128.2μs),。
    6位A/D轉(zhuǎn)換器,選用SAR6用戶模塊(逐次逼近型A/D),,轉(zhuǎn)換時間25μs,,占用一PSoC模擬模塊。
    8位D/A轉(zhuǎn)換器,,選用DAC8用戶模塊(電壓輸出型D/A),,其時鐘更新率為125kHz(即每次變換需31μs),。
    A/D與D/A的參考電壓設定:AGnd=0V,AVdd=5V,。
    切換控制輸出I/O口,,選定內(nèi)部上拉電阻輸出,以得到大的驅(qū)動能力,。取工/變頻切換控制為5個,。
    LCD模塊接口,選定LCD用戶模塊,,該模塊使用標準HD44780LCD顯示驅(qū)動協(xié)議,,占用7個I/O口,驅(qū)動顯示2×16個8×8點陣字符,。
    E2PROM,,選用E2PROM用戶模塊。這是使用內(nèi)部Flash memory模擬的E2PROM,,不限容量大小,,取為2KB。
    串行通信口,,選用UART用戶模塊(8位通用UART),,占用2個PSoC數(shù)字模塊和2個I/O口,設定其初始值為96-N-8-1,,為將來擴展連接Modem預留一個I/O口,。
    定時器,選用Timer8用戶模塊(8位減計數(shù)型),占用一PSoC數(shù)字模塊;一定時器周期設定為變頻器“工/變頻切換”的時間值;一定時器周期取最大值,,以用于流量累計,。
    OSC振蕩器全部選定用內(nèi)部模塊,外圍不再配備晶體,。啟用內(nèi)部看門狗和實時時鐘(RTC)功能,。
    確定采用4個中斷:壓力轉(zhuǎn)換中斷(11AD_ ISR)、鍵盤操作中斷(6AD_ISR),、工/變頻切換中斷(Timer8_ISR),、串行接收中斷(Uart_ISR)。中斷優(yōu)先級編排如下:11AD_ISR,、Timer8_ISR,、6AD_ISR、Uart_ISR,。
    打開PSoC Designer IDE應用軟件,,選用CY8C26443器件,指定編程語言(匯編或C語言),,創(chuàng)建項目工程,;在軟件的器件編輯器窗口中,,按上述選擇,配置各個用戶模塊,。本設計共使用8個PSoC數(shù)字模塊,、5個PSoC模擬模塊、24個I/O口,。器件編輯器的使用,,大多是圖形和文本選擇操作,十分簡易直觀,,這里不再贅述,。
    用戶模塊配置完成后,在IDE環(huán)境中,點擊'Generate Application Files'按鈕,產(chǎn)生boot.sam和PSoCconfig.asm文件,并生成應用程序接口函數(shù)(API)與中斷服務程序、主程序框架文件,以便填寫應用代碼,、編制用戶程序,。
    boot.sam和PSoCconfig.asm文件,是所有程序的基礎,,boot.sam文件定義了系統(tǒng)啟動和執(zhí)行的次序,PSoCconfig.asm文件包含了進入系統(tǒng)的配置,。
4.2  軟件設計的整體構(gòu)思
    主程序完成初始化設置并循環(huán)采樣溫度,、壓力、差壓,選擇適當量程計算流量并累計,、存儲與顯示,。
    壓力轉(zhuǎn)換中斷程序(11AD_ISR)據(jù)壓力實測值與要求值,確定變頻加/減速和工/變頻轉(zhuǎn)換中斷的啟停。
    鍵盤操作中斷(6AD_ISR),,識別操作的按鈕,,進行參數(shù)預置、狀態(tài)顯示,、記錄查看等,。
    工/變頻切換中斷(Timer8a_ISR),完成指定端口的工頻與變頻的切換,,并設置相關標記,。
    串行接收中斷(Uart_ISR), 連接PC或做遠程通信。
    在PSoC Designer IDE環(huán)境的應用程序編輯器窗口中編制程序,,編譯所有文件,生成可下載或仿真的.rom文件,。
4.3  軟件仿真與測試
    使用Cypress的PSoC仿真器(ICE)及其Designer IDE調(diào)試器窗口環(huán)境,進行程序仿真和測試。重點說明兩點:
    (1)斷點調(diào)試和動態(tài)事件點調(diào)試
    斷點調(diào)試,與很多常用器件調(diào)試工具功能類似,在此不再贅述,著重說明動態(tài)事件點調(diào)試,。動態(tài)事件點調(diào)試是Cypress很有特色的工具,。動態(tài)事件點是定義的可滿足許多條件的復雜斷點,可控制調(diào)試在動態(tài)事點到來時停止、開/關跟蹤文件或觸發(fā)一外部引腳,。使用動態(tài)事件點調(diào)試,可觀察到很多斷點調(diào)試得不到的程序邏輯設計錯誤,。
    (2)各個程序段執(zhí)行時間的調(diào)試
    關掉所有中斷,,測定主程序中流量計算循環(huán)程序的執(zhí)行時間;一次開放一個中斷,,測定每個設計中斷的執(zhí)行時間,。適當設置斷點,正常執(zhí)行程序,,測定每個中斷與主程序流量計算循環(huán)的執(zhí)行周期,。
    PSoC單片機的各種中斷功能能很好地滿足現(xiàn)代嵌入應用,這里構(gòu)建一個基于PSoC單片機的實時操作系統(tǒng)(RTOS)的雛形,,是有任務中斷的單調(diào)比例調(diào)度類型,。因此,可以在無法預知軟件整體邏輯設計是否滿足工業(yè)測控實際的情況下,,用有任務中斷的單調(diào)比例調(diào)度的條件要求和上述測量時間值,,在理論上,去恒量一下軟件整體邏輯設計的合理性,,并進行適當調(diào)整,。
    有任務中斷的單調(diào)比例調(diào)度的條件公式:
   

    式中,n是最大任務數(shù),,E是任務j的執(zhí)行時間,,P是任務j的周期,B是任務j的阻塞時間,。
4.4 程序的ISSP下載
    PSoC單片機支持在系統(tǒng)串口編程(ISSP),可以通過UART串口,輕易完成程序的ISSP下載,。PSoC單片機Flash中內(nèi)含不能被覆蓋的ISP例程,只要復位重啟時硬件電路的ISP例程觸發(fā)按鈕有效,PSoC單片機就轉(zhuǎn)而ISSP編程操作。完成ISSP后,器件自動從Flash的0x0址處執(zhí)行用戶代碼,。ISSP例程的觸發(fā),即將器件P0.5口有效上拉,。
4.5 軟件設計的注意事項
    (1)SRAM空間的分配:用戶模塊配置信息、編程變量參數(shù),、上下文切換堆棧等,都占用SRAM空間,。SRAM空間只有256B,雖然比傳統(tǒng)MCS51單片機擴大了一倍,但還是十分有限,。一定要合理選好開辟堆??臻g的大小和位置,以避免極端情況下程序跑飛。
    (2)看門狗的使用:為防程序“跑飛”或“死機”,。程序中,要及時“喂狗”(清零看門狗計數(shù)器),。關閉看門狗,調(diào)試好各個程序段,然后再打開看門狗調(diào)試。
    (3)11位AD用戶模塊的動態(tài)配置:輪流采樣現(xiàn)場壓力,、溫度,、差壓信號,AD轉(zhuǎn)換器通常定位在壓力通道不斷地采樣壓力信號,并在AD轉(zhuǎn)換中斷中完成變頻調(diào)速控制,只有在需要時才切換到溫度或差壓通道采樣,。信號通道的切換,采用動態(tài)用戶模塊配置完成,即在需要時改變用戶模塊配置寄存器值,定向到需要的信號通道,。
    使用PSoC單片機CY8C26443組成燃氣測控系統(tǒng),以一個28Pin微控器加上極少外圍器件,成功地把“變頻輸配控制與大流量范圍燃氣計量”合二為一,構(gòu)成電路簡單,免除了芯片選型和搭建復雜外圍電路之煩,明顯地增強了系統(tǒng)的穩(wěn)定可靠性,,降低了生產(chǎn)成本。應用所提供的開發(fā)工具,直接為設計生成API函數(shù),屏蔽了繁瑣的寄存器操作,方便了對器件內(nèi)部資源的調(diào)用,大大縮短了項目開發(fā)時間,。同時因PSoC單片機CPU速度的自增強,系統(tǒng)的數(shù)學運算功能明顯提高,工業(yè)測控的實時性更強了,。
參考文獻
1 翟秀貞. 差壓型流量計.北京:中國計量出版社出版,1995
2 怯肇乾. 一器多控自動變頻調(diào)速技術(shù)在燃氣輸配中的應用.自動化儀表,,1997,; (12)
3 怯肇乾. 一種大流量范圍的燃氣計量.自動化儀表,1998,;(2):28~29
4 郭 師. PSoC的動態(tài)配置能力及其實現(xiàn)方法. 單片機與嵌入式系統(tǒng)應用,,2003;(1):21~23
5 何永義. PSoC片上系統(tǒng)的原理與應用.上海:上海大學出版社,,2003

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。