基于PSoC單片機(jī)的燃?xì)庾冾l輸配與精確計(jì)量實(shí)現(xiàn)[圖]

相關(guān)專(zhuān)題: 芯片

在燃?xì)獾淖冾l輸配與計(jì)量方面,以普通單板機(jī)/單片機(jī)組成的大流量范圍的燃?xì)庥?jì)量?jī)x表和工控機(jī)實(shí)現(xiàn)的一器多控自動(dòng)變頻調(diào)速輸配系統(tǒng)廣為應(yīng)用,有力地提高了計(jì)量精度并節(jié)約了大量的能源。但是用“單板機(jī)/單片機(jī)+外圍器件”計(jì)量燃?xì),系統(tǒng)復(fù)雜,穩(wěn)定性差;用工控機(jī)變頻輸配燃?xì),造成資源浪費(fèi)。從提高系統(tǒng)穩(wěn)定可靠性、簡(jiǎn)化硬軟件設(shè)計(jì)、降低產(chǎn)品成本等角度出發(fā),結(jié)合現(xiàn)代科學(xué)技術(shù)的發(fā)展,非常需要一種構(gòu)成系統(tǒng)簡(jiǎn)單、靈活易用的器件,去改造上述兩個(gè)體系,并盡可能把它們合二為一。選用Cypress公司新近推出的一系列PSoC單片機(jī)進(jìn)行上述技術(shù)改進(jìn),不僅可以很好達(dá)到預(yù)期目的,并且還可以有效提高系統(tǒng)測(cè)控的實(shí)時(shí)性能。

1 PSoC單片機(jī)及其特點(diǎn)

PSoC即Programmable System On Chip。Cypress公司的PSoC系列單片機(jī)CY8C25xxx/26xxx,片內(nèi)有一個(gè)高速內(nèi)核、Flash快速閃存和SRAM數(shù)據(jù)內(nèi)存,以及設(shè)計(jì)者可配置的模擬模塊和數(shù)字模塊:

(1)CPU內(nèi)核,8位哈佛結(jié)構(gòu),速度可達(dá)24MHz;且含一乘加器MAC,能執(zhí)行帶符號(hào)8x8乘法和32位加法運(yùn)算;

(2)4~16KB片內(nèi)Flash閃存及256B SRAM,可通過(guò)串口在系統(tǒng)編程(1SSP)Flash閃存,F(xiàn)lash具有可加密保護(hù)功能;

  (3)12個(gè)PSoC模擬模塊可靈活配置成6~13位A/D轉(zhuǎn)換器、可編程增益放大器(PGA)、采樣保持功能、可編程濾波器、差分比較器、溫度傳感器等;  PSoC系列單片機(jī)將傳統(tǒng)的單片機(jī)系統(tǒng)集成在一顆芯片里,用戶(hù)模擬和數(shù)字陣列的可配置性是其最大特點(diǎn)。

(4)8個(gè)數(shù)字模塊可靈活配置成定時(shí)/計(jì)數(shù)器、脈寬調(diào)制器(PWM)、循環(huán)冗余校驗(yàn)塊(CRC)、串行通信塊(UARTS或SPI)及復(fù)雜的時(shí)鐘源等;

(5)4~44個(gè)通用I/O口,可編程為上/下拉輸出、集電極開(kāi)路輸出、強(qiáng)輸出,可用作邊沿/電平觸發(fā)的中斷輸入或Smith觸發(fā)器TTL輸入;

(6)專(zhuān)用的中斷控制器,2級(jí)中斷優(yōu)先級(jí),中斷源:通用I/O、電源監(jiān)控單元、Sleep定時(shí)器、8個(gè)PSoC數(shù)字模塊和4個(gè)模擬列;

(7)24/48MHz的片內(nèi)主振蕩器和32.768kHz片內(nèi)低速振蕩器;WatchDog/Sleep定時(shí)器、可編程的電源電壓檢測(cè)器、采樣抽取器、片內(nèi)電壓參考源等專(zhuān)用外設(shè);可選用的模塊端口(E2PROM、LCD、I2C等);

(8)全靜態(tài)CMOS工藝,3~5.5V DC工作電壓,專(zhuān)用的開(kāi)關(guān)式電壓泵,可使工作電壓降到1V,真正的高速低壓性能;

(9)配套的低廉開(kāi)發(fā)工具:在線仿真器、評(píng)估板和集成開(kāi)發(fā)環(huán)境PSoC Designer,其PSoC Designer內(nèi)嵌匯編器、C編譯器、器件資源配置器和調(diào)試器。

2 變頻輸配與大流量范圍計(jì)量的機(jī)理

2.1 一器多控變頻燃?xì)廨斉涞臋C(jī)理

燃?xì)廨斉渲饕蔷S持氣源端的壓力。壓力不足時(shí),逐步加開(kāi)輸配機(jī)組,升高壓力到設(shè)定值;反之,壓力過(guò)高時(shí),逐步減停機(jī)組,降低壓力到設(shè)定值。由于大功率交流電機(jī)反復(fù)啟停的巨大耗能和器件沖擊,所以引入了變頻調(diào)速器。為進(jìn)一步降低成本,通常采用一臺(tái)變頻器控制多臺(tái)交流電機(jī),即所謂的“一器多控”,其機(jī)理如下:加壓時(shí),變頻啟動(dòng)并加速一臺(tái)電機(jī),達(dá)到最大速度時(shí),壓力仍沒(méi)有增上來(lái),則把這臺(tái)電機(jī)轉(zhuǎn)為工頻運(yùn)行,轉(zhuǎn)而對(duì)下一臺(tái)電機(jī)

做變頻啟動(dòng)并加速,如此逐步變頻啟動(dòng)加速并做工頻切換,直到把壓力提上來(lái);反之,減壓時(shí),則逐步做變頻切換并變頻減速停機(jī),直到把壓力降到要求值。

2.2 大流量范圍燃?xì)庥?jì)量的機(jī)理

孔板式差壓流量計(jì)在不變節(jié)流件開(kāi)孔直徑下擴(kuò)展量程比,主要是采用增設(shè)差壓量程切換單元的方法:在流量小、差壓低時(shí),使用小差壓量程檢測(cè)計(jì)算;反之,使用大差壓量程檢測(cè)計(jì)算。檢測(cè)計(jì)量流程如圖1所示。圖1中參數(shù)T、P、△P、d、D、K、Z、η、β、ρ、ε、α0、rRe、M分別表示溫度、壓力、差壓、孔板開(kāi)口直徑、計(jì)量管段直徑、介質(zhì)等熵指數(shù)、氣體壓縮系數(shù)、介質(zhì)粘度、d/D、密度、流速系數(shù)、流出系數(shù)、管道雷諾數(shù)、流量。

3 PSoC單片機(jī)測(cè)控系統(tǒng)的構(gòu)建

3.1 整體方案的設(shè)計(jì)

整體設(shè)計(jì)方案如圖2所示,說(shuō)明如下:

(1)數(shù)據(jù)采集,采用1~5V的三通道11位A/D轉(zhuǎn)換器,擬定采樣率7.8ksps;壓力作頻繁采樣,以增強(qiáng)變頻輸配控制的實(shí)時(shí)性;差壓與溫度只在計(jì)量計(jì)算需要時(shí)采樣;

(2)輸出通道,采用一8位D/A轉(zhuǎn)換器控制變頻器,若干工/變頻切換控制信號(hào),一手動(dòng)/自動(dòng)變頻切換控制信號(hào),D/A輸出為0~5V DC信號(hào),切換控制信號(hào)具有驅(qū)動(dòng)能力;

(3)人機(jī)接口,使用日立HD44780LCD點(diǎn)陣模塊顯示狀態(tài)參數(shù)、報(bào)警種類(lèi)及鍵盤(pán)操作等,使用一個(gè)6位A/D轉(zhuǎn)換器作鍵盤(pán)輸入識(shí)別以減少對(duì)I/O口的占用;

(4)存儲(chǔ)關(guān)鍵性數(shù)據(jù),采用串行E2PROM;外界通信采用異步串行接口UART,并以此實(shí)現(xiàn)在系統(tǒng)串行編程ISSP;

(5)使用乘加器加速CPU速度;使用看門(mén)狗保證程序正常運(yùn)行;使用實(shí)時(shí)時(shí)鐘記錄流量或故障統(tǒng)計(jì)的時(shí)刻;使用定時(shí)器產(chǎn)生所需工/變頻切換時(shí)間和流量累計(jì)時(shí)間;使用OSC振蕩器產(chǎn)生系統(tǒng)時(shí)鐘等。

上述方案,選用Cypress PSoC系列單片機(jī),圖2中虛線部分均可由一片單片機(jī)實(shí)現(xiàn),這里選用CY8C26443(28Pin Dual inline);否則,采用普通單板機(jī)/單片機(jī),則各個(gè)模塊均要設(shè)法構(gòu)造,還要考慮把它們?cè)O(shè)計(jì)連成一體。

3.2 鍵盤(pán)輸入電路的設(shè)計(jì)

鍵盤(pán)輸入,通過(guò)一I/O口,由一6位A/D轉(zhuǎn)換器識(shí)別。這里選用8個(gè)按鍵,用以實(shí)現(xiàn)參數(shù)輸入、時(shí)間核對(duì)、記錄查詢(xún)、通信等功能,電路如圖3所示。圖3所示各個(gè)電阻值,據(jù)A/D轉(zhuǎn)換特點(diǎn)和常用電阻規(guī)格系列確定。

3.3 一器多控變頻電路的設(shè)計(jì)

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

3.4 信號(hào)的輸入與輸出

設(shè)計(jì)系統(tǒng)應(yīng)用在燃?xì)庑袠I(yè),安全防護(hù)十分重要。壓力、溫度、差壓信號(hào)的采集,現(xiàn)場(chǎng)的一次儀表全部采用一體化防曝類(lèi)型,現(xiàn)場(chǎng)引入的信號(hào)采用隔離型安全柵。輸出信號(hào)全部采用繼電器控制,與現(xiàn)場(chǎng)控制器件隔離。

4 PSoC單片機(jī)測(cè)控系統(tǒng)的設(shè)計(jì)

4.1 PSoC單片機(jī)的資源使用與配置

11位A/D轉(zhuǎn)換器,選用DelSigll用戶(hù)模塊(△—∑型A/D),占用一PSoC模擬模塊、一PSoC數(shù)字模塊和專(zhuān)用的采樣抽取器,為增強(qiáng)實(shí)時(shí)性與精度而取其最大采樣率7.8ksps(即每次采樣需128.2μs)。

6位A/D轉(zhuǎn)換器,選用SAR6用戶(hù)模塊(逐次逼近型A/D),轉(zhuǎn)換時(shí)間25μs,占用一PSoC模擬模塊。

8位D/A轉(zhuǎn)換器,選用DAC8用戶(hù)模塊(電壓輸出型D/A),其時(shí)鐘更新率為125kHz(即每次變換需31μs)。

A/D與D/A的參考電壓設(shè)定:AGnd=0V,AVdd=5V。

切換控制輸出I/O口,選定內(nèi)部上拉電阻輸出,以得到大的驅(qū)動(dòng)能力。取工/變頻切換控制為5個(gè)。

LCD模塊接口,選定LCD用戶(hù)模塊,該模塊使用標(biāo)準(zhǔn)HD44780LCD顯示驅(qū)動(dòng)協(xié)議,占用7個(gè)I/O口,驅(qū)動(dòng)顯示2x16個(gè)8x8點(diǎn)陣字符。

E2ROM,選用E2PROM用戶(hù)模塊。這是使用內(nèi)部Flash memory模擬的E2ROM,不限容量大小,取為2KB。

串行通信口, 選用UART用戶(hù)模塊(8位通用UART),占用2個(gè)PSoC數(shù)字模塊和2個(gè)I/O口,設(shè)定其初始值為96-N-8-1,為將來(lái)擴(kuò)展連接Modem預(yù)留一個(gè)I/O口。

定時(shí)器,選用Timer8用戶(hù)模塊(8位減計(jì)數(shù)型),占用一PSoC數(shù)字模塊;一定時(shí)器周期設(shè)定為變頻器“工/變頻切換”的時(shí)間值;一定時(shí)器周期取最大值,以用于流量累計(jì)。

OSC振蕩器全部選定用內(nèi)部模塊,外圍不再配備晶體。啟用內(nèi)部看門(mén)狗和實(shí)時(shí)時(shí)鐘(RTC)功能。

確定采用4個(gè)中斷:壓力轉(zhuǎn)換中斷(11AD_ISR)、鍵盤(pán)操作中斷(6AD—ISR)、工/變頻切換中斷(Tliner8—ISR)、串行接收中斷(Uart_ISR)。 中斷優(yōu)先級(jí)編排如下:11AD_ISR、Timer8_ISR、6AD_ISR、Uart_ISR。

打開(kāi)PSoC Designer IDE應(yīng)用軟件,選用CY8C26443器件,指定編程語(yǔ)言(匯編或C語(yǔ)言),創(chuàng)建項(xiàng)目工程;在軟件的器件編輯器窗口中,按上述選擇,配置各個(gè)用戶(hù)模塊。本設(shè)計(jì)共使用8個(gè)PSoC數(shù)字模塊、5個(gè)PSoC模擬模塊、24個(gè)I/O口。器件編輯器的使用,大多是圖形和文本選擇操作,十分簡(jiǎn)易直觀,這里不再贅述。

用戶(hù)模塊配置完成后,在IDE環(huán)境中,點(diǎn)擊“GenerateApplication Files”按鈕,產(chǎn)生boot.sam和PSoCconfig.a(chǎn)sm文件,并生成應(yīng)用程序接口函數(shù)(APl)與中斷服務(wù)程序、主程序框架文件,以便填寫(xiě)應(yīng)用代碼、編制用戶(hù)程序。

boot.sam和PSoCconfig.a(chǎn)sm文件,是所有程序的基礎(chǔ),boot.sam文件定義了系統(tǒng)啟動(dòng)和執(zhí)行的次序,PSoCconfig.a(chǎn)sm文件包含了進(jìn)入系統(tǒng)的配置。

4.2 軟件設(shè)計(jì)的整體構(gòu)思

主程序完成初始化設(shè)置并循環(huán)采樣溫度、壓力、差壓,選擇適當(dāng)量程計(jì)算流量并累計(jì)、存儲(chǔ)與顯示。

壓力轉(zhuǎn)換中斷程序(11AD_ISR)據(jù)壓力實(shí)測(cè)值與要求值,確定變頻加/減速和工/變頻轉(zhuǎn)換中斷的啟停。

鍵盤(pán)操作中斷(6AD_ISR),識(shí)別操作的按鈕,進(jìn)行參數(shù)預(yù)置、狀態(tài)顯示、記錄查看等。

工/變頻切換中斷(Timer8a_ISR),完成指定端口的工頻與變頻的切換,并設(shè)置相關(guān)標(biāo)記。

串行接收中斷(Uart_ISR),連接PC或做遠(yuǎn)程通信。

在PSoC Designer IDE環(huán)境的應(yīng)用程序編輯器窗口中編制程序,編譯所有文件,生成可下載或仿真的.rom文件。

4.3 軟件仿真與測(cè)試

使用Cypress的PSoC仿真器(1CE)及其Designer IDE調(diào)試器窗口環(huán)境,進(jìn)行程序仿真和測(cè)試。重點(diǎn)說(shuō)明兩點(diǎn):

(1)斷點(diǎn)調(diào)試和動(dòng)態(tài)事件點(diǎn)調(diào)試

斷點(diǎn)調(diào)試,與很多常用器件調(diào)試工具功能類(lèi)似,在此不再贅述,著重說(shuō)明動(dòng)態(tài)事件點(diǎn)調(diào)試。動(dòng)態(tài)事件點(diǎn)調(diào)試是Cypress很有特色的工具。動(dòng)態(tài)事件點(diǎn)是定義的可滿(mǎn)足許多條件的復(fù)雜斷點(diǎn),可控制調(diào)試在動(dòng)態(tài)事點(diǎn)到來(lái)時(shí)停止、開(kāi)/關(guān)跟蹤文件或觸發(fā)一外部引腳。使用動(dòng)態(tài)事件點(diǎn)調(diào)試,可觀察到很多斷點(diǎn)調(diào)試得不到的程序邏輯設(shè)計(jì)錯(cuò)誤。

(2)各個(gè)程序段執(zhí)行時(shí)間的調(diào)試

關(guān)掉所有中斷,測(cè)定主程序中流量計(jì)算循環(huán)程序的執(zhí)行時(shí)間;一次開(kāi)放一個(gè)中斷,測(cè)定每個(gè)設(shè)計(jì)中斷的執(zhí)行時(shí)間。適當(dāng)設(shè)置斷點(diǎn),正常執(zhí)行程序,測(cè)定每個(gè)中斷與主程序流量計(jì)算循環(huán)的執(zhí)行周期。

PSoC單片機(jī)的各種中斷功能能很好地滿(mǎn)足現(xiàn)代嵌入應(yīng)用,這里構(gòu)建一個(gè)基于PSoC單片機(jī)的實(shí)時(shí)操作系統(tǒng)(RTOS)的雛形,是有任務(wù)中斷的單調(diào)比例調(diào)度類(lèi)型。因此,可以在無(wú)法預(yù)知軟件整體邏輯設(shè)計(jì)是否滿(mǎn)足工業(yè)測(cè)控實(shí)際的情況下,用有任務(wù)中斷的單調(diào)比例調(diào)度的條件要求和上述測(cè)量時(shí)間值,在理論上,去恒量一下軟件整體邏輯設(shè)計(jì)的合理性,并進(jìn)行適當(dāng)調(diào)整。

有任務(wù)中斷的單調(diào)比例調(diào)度的條件公式:

式中,n是最大任務(wù)數(shù),E是任務(wù)j的執(zhí)行時(shí)間,P是任務(wù)j的周期,B是任務(wù)j的阻塞時(shí)間。

4.4 程序的ISSP下載

PSoC單片機(jī)支持在系統(tǒng)串口編程(1SSP),可以通過(guò)UART串口,輕易完成程序的ISSP下載。PSoC單片機(jī)Flash中內(nèi)含不能被覆蓋的ISP例程,只要復(fù)位重啟時(shí)硬件電路的ISP例程觸發(fā)按鈕有效,PSoC單片機(jī)就轉(zhuǎn)而ISSP編程操作。完成ISSP后,器件自動(dòng)從Flash的0x0址處執(zhí)行用戶(hù)代碼。ISSP例程的觸發(fā),即將器件PO.5口有效上拉。

4.5 軟件設(shè)計(jì)的注意事項(xiàng)

(1)SRAM空間的分配:用戶(hù)模塊配置信息、編程變量參數(shù)、上下文切換堆棧等,都占用SRAM空間。SRAM空間只有256B,雖然比傳統(tǒng)MCS51單片機(jī)擴(kuò)大了一倍,但還是十分有限。一定要合理選好開(kāi)辟堆棧空間的大小和位置,以避免極端情況下程序跑飛。

(2)看門(mén)狗的使用:為防程序“跑飛”或“死機(jī)”。程序中,要及時(shí)“喂狗”(清零看門(mén)狗計(jì)數(shù)器)。關(guān)閉看門(mén)狗,調(diào)試好各個(gè)程序段,然后再打開(kāi)看門(mén)狗調(diào)試。

(3)11位AD用戶(hù)模塊的動(dòng)態(tài)配置:輪流采樣現(xiàn)場(chǎng)壓力、溫度、差壓信號(hào),AD轉(zhuǎn)換器通常定位在壓力通道不斷地采樣壓力信號(hào),并在AD轉(zhuǎn)換中斷中完成變頻調(diào)速控制,只有在需要時(shí)才切換到溫度或差壓通道采樣。信號(hào)通道的切換,采用動(dòng)態(tài)用戶(hù)模塊配置完成,即在需要時(shí)改變用戶(hù)模塊配置寄存器值,定向到需要的信號(hào)通道。

使用PSoC單片機(jī)CY8C26443組成燃?xì)鉁y(cè)控系統(tǒng),以一個(gè)28Pin微控器加上極少外圍器件,成功地把“變頻輸配控制與大流量范圍燃?xì)庥?jì)量”合二為一,構(gòu)成電路簡(jiǎn)單,免除了芯片選型和搭建復(fù)雜外圍電路之煩,明顯地增強(qiáng)了系統(tǒng)的穩(wěn)定可靠性,降低了生產(chǎn)成本。應(yīng)用所提供的開(kāi)發(fā)工具,直接為設(shè)計(jì)生成API函數(shù),屏蔽了繁瑣的寄存器操作,方便了對(duì)器件內(nèi)部資源的調(diào)用,大大縮短了項(xiàng)目開(kāi)發(fā)時(shí)間。同時(shí)因PSoC單片機(jī)CPU速度的自增強(qiáng),系統(tǒng)的數(shù)學(xué)運(yùn)算功能明顯提高,工業(yè)測(cè)控的實(shí)時(shí)性更強(qiáng)了。

來(lái)源:計(jì)算機(jī)應(yīng)用

  免責(zé)聲明:本文僅代表作者個(gè)人觀點(diǎn),與C114中國(guó)通信網(wǎng)無(wú)關(guān)。其原創(chuàng)性以及文中陳述文字和內(nèi)容未經(jīng)本站證實(shí),對(duì)本文以及其中全部或者部分內(nèi)容、文字的真實(shí)性、完整性、及時(shí)性本站不作任何保證或承諾,請(qǐng)讀者僅作參考,并請(qǐng)自行核實(shí)相關(guān)內(nèi)容。


微信掃描分享本文到朋友圈
掃碼關(guān)注5G通信官方公眾號(hào),免費(fèi)領(lǐng)取以下5G精品資料
  • 1、回復(fù)“YD5GAI”免費(fèi)領(lǐng)取《中國(guó)移動(dòng):5G網(wǎng)絡(luò)AI應(yīng)用典型場(chǎng)景技術(shù)解決方案白皮書(shū)
  • 2、回復(fù)“5G6G”免費(fèi)領(lǐng)取《5G_6G毫米波測(cè)試技術(shù)白皮書(shū)-2022_03-21
  • 3、回復(fù)“YD6G”免費(fèi)領(lǐng)取《中國(guó)移動(dòng):6G至簡(jiǎn)無(wú)線接入網(wǎng)白皮書(shū)
  • 4、回復(fù)“LTBPS”免費(fèi)領(lǐng)取《《中國(guó)聯(lián)通5G終端白皮書(shū)》
  • 5、回復(fù)“ZGDX”免費(fèi)領(lǐng)取《中國(guó)電信5GNTN技術(shù)白皮書(shū)
  • 6、回復(fù)“TXSB”免費(fèi)領(lǐng)取《通信設(shè)備安裝工程施工工藝圖解
  • 7、回復(fù)“YDSL”免費(fèi)領(lǐng)取《中國(guó)移動(dòng)算力并網(wǎng)白皮書(shū)
  • 8、回復(fù)“5GX3”免費(fèi)領(lǐng)取《R1623501-g605G的系統(tǒng)架構(gòu)1
  • 本周熱點(diǎn)本月熱點(diǎn)

     

      最熱通信招聘

    業(yè)界最新資訊


      最新招聘信息