国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于STM32的電位測(cè)量及過(guò)電位保護(hù)裝置設(shè)計(jì)

2021-12-17 09:08戚海艷
電子制作 2021年22期
關(guān)鍵詞:電位串口繼電器

戚海艷

(廣東省機(jī)械技師學(xué)院,廣東廣州,510450)

0 引言

測(cè)量是工業(yè)生產(chǎn)中常見(jiàn)的項(xiàng)目,根據(jù)使用目的的不同,測(cè)量得到的數(shù)值可開(kāi)環(huán)或閉環(huán)地輸入給控制系統(tǒng)。目前,工業(yè)現(xiàn)場(chǎng)使用的測(cè)量裝置的主流控制核心包括PLC、DSP、FPGA和STM32等,不同的控制器具有不同的特點(diǎn)和功能,可滿足不同的使用需求。STM32是一種基于ARM內(nèi)核的32位高性能處理器,以STM32F103ZET6為例,該處理器集成了AD轉(zhuǎn)換與 PWM 輸出功能,可以直接進(jìn)行數(shù)據(jù)采集和PWM輸出,通過(guò)功能配置實(shí)現(xiàn)低功耗的目的[1],使用STM32進(jìn)行開(kāi)發(fā)的項(xiàng)目也越來(lái)越多[2,3]。黃琦[4]等設(shè)計(jì)了一套基于STM32的高精度恒溫控制系統(tǒng),并進(jìn)行了上位機(jī)和下位機(jī)的設(shè)計(jì),實(shí)驗(yàn)結(jié)果表明上位機(jī)可準(zhǔn)確反映溫度的數(shù)值和變化趨勢(shì),滿足了實(shí)際控溫需求。李明[5]等基于UCOS操作系統(tǒng)和STM32F4單片機(jī)設(shè)計(jì)實(shí)現(xiàn)了多通道實(shí)時(shí)酒精測(cè)量與數(shù)據(jù)存儲(chǔ)系統(tǒng),通過(guò)開(kāi)發(fā)板試驗(yàn)得到了系統(tǒng)運(yùn)行良好穩(wěn)定的酒精檢測(cè)裝置。柳浩[6]等提出一種主控系統(tǒng)和控制實(shí)施系統(tǒng)共同協(xié)作對(duì)發(fā)生火情的環(huán)境進(jìn)行處理,采用STM32F103C8T6微處理器作為控制實(shí)施系統(tǒng)的控制核心,STM32F103C8T6亦屬于STM32F1系列控制器中的一種,實(shí)驗(yàn)證明該系統(tǒng)可以有效監(jiān)測(cè)環(huán)境數(shù)據(jù),實(shí)現(xiàn)小車(chē)搜尋火源和噴水功能。

本文針對(duì)某生產(chǎn)設(shè)備對(duì)電位測(cè)量及電路保護(hù)的實(shí)際需求,設(shè)計(jì)研制一種基于STM32F103ZET6處理器的電位測(cè)量及保護(hù)裝置,通過(guò)控制器的GPIO模擬輸入功能實(shí)現(xiàn)電位測(cè)量的模數(shù)轉(zhuǎn)換,通過(guò)繼電器控制實(shí)現(xiàn)電路的通斷。對(duì)裝置進(jìn)行了軟件設(shè)計(jì),將電位控制參數(shù)直接集成到軟件中,對(duì)裝置進(jìn)行調(diào)試,得到了滿足需求的產(chǎn)品。

1 需求分析

某生產(chǎn)設(shè)備的某段電路對(duì)整個(gè)電路系統(tǒng)的影響較大,在生產(chǎn)中發(fā)現(xiàn)設(shè)備正常工作時(shí),該部分電路的電位總是穩(wěn)定在1.15~1.35V之間,當(dāng)產(chǎn)生異常情況時(shí),該部分電路的電壓會(huì)高于1.35V,因此急需一種可對(duì)該部分電路進(jìn)行電位測(cè)量的裝置,一旦測(cè)到異常電位,則立刻斷開(kāi)電路通電,以保護(hù)整個(gè)系統(tǒng)。

根據(jù)實(shí)際需求,可知需研制的裝置必須具有電位測(cè)量功能,而當(dāng)設(shè)備正常工作時(shí),電位穩(wěn)定在1.15~1.35V之間,正常的電位值小于3.3V,因此可采用使用標(biāo)準(zhǔn)3.3 V供電的STM32處理器,又該需求并不復(fù)雜,因此無(wú)需使用更高性能和更高處理速度的控制器,可選用STM32F103ZET6處理器,以在控制性能和經(jīng)濟(jì)性上取得平衡。由于在檢測(cè)到電位異常時(shí),需立刻斷開(kāi)電路通電,因此需對(duì)電路加裝開(kāi)關(guān)裝置,以實(shí)現(xiàn)弱電控制強(qiáng)電的功能,可使用標(biāo)準(zhǔn)的5V直流供電的繼電器,實(shí)現(xiàn)電位正常時(shí)保持通電狀態(tài),而電位異常時(shí),繼電器通電,裝置斷電。根據(jù)需求分析,可進(jìn)行相關(guān)的硬件和軟件設(shè)計(jì)。

2 硬件設(shè)計(jì)

■2.1 STM32F103ZET6處理器

STM32F103ZET6處理器的內(nèi)核為ARMCortex-M3,該內(nèi)核技術(shù)為ARM公司設(shè)計(jì),在Cortex-M3內(nèi)核上,ST公司又對(duì)其進(jìn)行了總線矩陣設(shè)計(jì),提供過(guò)總線矩陣將內(nèi)核封裝為三個(gè)部分:FLASH、SRAM和外部設(shè)備。其中,F(xiàn)LASH為內(nèi)部閃存存儲(chǔ)器,用于放置編寫(xiě)好的程序;內(nèi)部SRAM用于存放程序的變量,堆和棧的消耗均基于內(nèi)部SRAM;外部設(shè)備又包含了眾多的通用輸入輸出口GPIO、異步串行總線USART、IIC總線、SPI總線等等,外設(shè)的寄存器通過(guò)系統(tǒng)總線進(jìn)行訪問(wèn),為用戶(hù)提供了豐富的可擴(kuò)展接口。

■2.2 ADC功能

STM32F103ZET6有3個(gè)ADC。ADC的精度均為12位,其中ADC1有16個(gè)外部通道,對(duì)應(yīng)ADCx_IN0、ADCx_IN1...ADCx_IN5,其中PA0對(duì)應(yīng)ADC1的ADC1_IN0上,因此可在程序中配置該功能,實(shí)現(xiàn)PA0引腳的電位采集功能,并同時(shí)配置PA1和PA2引腳作為PA0數(shù)據(jù)采集引腳的備用。具體配置方法為:

GPIO_InitTypeDef GPIO_InitStructure;

//打開(kāi) ADC IO端口時(shí)鐘

ADC_GPIO_APBxClock_FUN( ADC_GPIO_CLK, ENABLE );// 配置 ADC IO 引腳模式

GPIO_InitStructure.GPIO_Pin = ADC_PIN;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AIN; // 必須為模擬輸入

// 初始化 ADC IO

GPIO_Init(ADC_PORT, &GPIO_InitStructure);

■2.3 繼電器電路

繼電器通常應(yīng)用于開(kāi)關(guān)中,是一種用較小的電流去控制較大電流的一種“自動(dòng)開(kāi)關(guān)”,在電路中起著安全保護(hù)、轉(zhuǎn)換電路等功能。如圖 1所示,采用6腳繼電器實(shí)現(xiàn)開(kāi)關(guān)控制電路,電路中電源為設(shè)備的供電電源,在默認(rèn)狀態(tài)下與K2是直接連接的,繼電器采用5V的直流電源供電(CT2),CT1與一個(gè)三級(jí)管連接,三級(jí)管的e級(jí)與一個(gè)10kΩ電阻連接,電阻與控制器的GPIO引腳連接,以保護(hù)繼電器和單片機(jī)引腳不至電流過(guò)大而燒壞。配置繼電器通斷控制的GPIO為PC3引腳,并配值PB3和PB5引腳作為PC3引腳的備用。

圖1 繼電器(Relay)開(kāi)關(guān)電路

■2.4 外部FLASH存儲(chǔ)電路

外部FLASH主要用于存儲(chǔ)電位保護(hù)次數(shù)和過(guò)電位的具體數(shù)值,電位保護(hù)次數(shù)以累加形式進(jìn)行存儲(chǔ),但并不擦寫(xiě)上一次保存數(shù)據(jù),即若有3次產(chǎn)生了過(guò)電位現(xiàn)象,則存儲(chǔ)器將依地址16位累進(jìn)方式保存:1、2、3。并將這三次的過(guò)電位值通用以16位累進(jìn)方式保存。外部FLASH電路如圖 2所示,外部FLASH芯片選擇為W25Q64的8MB芯片,芯片的數(shù)據(jù)輸入腳連接單片機(jī)的PF9引腳,數(shù)據(jù)輸出腳SO_IO1連接單片機(jī)的PF8引腳,芯片默認(rèn)不進(jìn)行寫(xiě)保護(hù),將寫(xiě)保護(hù)引腳WP_IO2(低電平有效)直接接在3.3 V電源上,因此芯片在硬件電路上即實(shí)現(xiàn)了無(wú)寫(xiě)保護(hù)。

圖2 外部FLASH電路

3 軟件設(shè)計(jì)

■3.1 系統(tǒng)整體流程

根據(jù)需求分析和硬件設(shè)計(jì),可設(shè)計(jì)裝置的軟件如圖3所示。系統(tǒng)首先進(jìn)入初始化程序,包括系統(tǒng)時(shí)鐘初始化、串口初始化、ADC初始化、繼電器等GPIO的初始化。

圖3 裝置軟件整體流程

設(shè)置系統(tǒng)時(shí)鐘為最高頻率工作模式,系統(tǒng)的USART采用中斷處理機(jī)制,設(shè)置串口中斷在第4分組,中斷通道為DEBUG_USART_IRQ,中斷響應(yīng)優(yōu)先級(jí)為6,子優(yōu)先級(jí)為0。串口輸出口對(duì)應(yīng)單片機(jī)的PA9引腳,輸入口對(duì)應(yīng)單片機(jī)的PA10引腳。

ADC初始化基本步驟為:

// 打開(kāi)ADC時(shí)鐘ADC_APBxClock_FUN

// 只使用一個(gè)ADC,屬于獨(dú)立模式

ADC_InitStructure.ADC_Mode = ADC_Mode_Independent; // 禁止掃描模式

ADC_InitStructure.ADC_ScanConvMode = DISABLE; // 連續(xù)轉(zhuǎn)換模式

ADC_InitStructure.ADC_ContinuousConvMode = ENABLE;// 不用外部觸發(fā)轉(zhuǎn)換,軟件開(kāi)啟即可

ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;// 轉(zhuǎn)換結(jié)果右對(duì)齊

ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;

初始化結(jié)束后系統(tǒng)進(jìn)入ADC數(shù)據(jù)采集函數(shù),該函數(shù)為while(1)循環(huán)函數(shù),首先進(jìn)行ADC數(shù)據(jù)的采集,采集函數(shù)為,并經(jīng)過(guò)2萬(wàn)次的循環(huán)采集,得到總的電位值,總的電位值除去2萬(wàn)次的for循環(huán),從而得到電位的平均值a,對(duì)平均值a進(jìn)行正常點(diǎn)位區(qū)間判斷,若為正常值,則再次進(jìn)行ADC數(shù)據(jù)的采集,并向串口發(fā)送“正常”信息,包括電位的平均值;若為異常值,則立刻斷開(kāi)繼電器,并向串口發(fā)送“故障”信息,包括電位的平均值,以提醒用戶(hù)設(shè)備出現(xiàn)了異常。

■3.2 調(diào)試結(jié)果

圖4 測(cè)量數(shù)據(jù)變化曲線

從串口中得到數(shù)據(jù)保存為文本文件,通過(guò)數(shù)據(jù)處理得到測(cè)量得到的電位變化曲線如圖 3所示,可知,該部分的電位值均處于正常點(diǎn)位區(qū)間內(nèi),電位值每次測(cè)量的值的變化差別較大,這與測(cè)量誤差和電磁干擾有關(guān),但電位值的精確度可達(dá)0.01 V,完全可滿足使用需求,通過(guò)一定的處理算法處理亦可提高測(cè)量的抗干擾能力。

4 結(jié)束語(yǔ)

研制了一種基于STM32F103ZET6的電位測(cè)量及過(guò)電位保護(hù)裝置,對(duì)實(shí)際生產(chǎn)設(shè)備進(jìn)行了需求分析,得出裝置硬件設(shè)計(jì)和軟件設(shè)計(jì)的依據(jù)。根據(jù)需求分析進(jìn)行了控制器的ADC配置,以及繼電器開(kāi)關(guān)保護(hù)電路的設(shè)計(jì),對(duì)裝置進(jìn)行了軟件設(shè)計(jì),通過(guò)調(diào)試得到了電位變化曲線,滿足了實(shí)際需求。裝置還可集成LCD和上位機(jī),以滿足友好的人機(jī)交互功能。

猜你喜歡
電位串口繼電器
測(cè)量模擬土體zeta電位的簡(jiǎn)易流動(dòng)電位裝置及其使用方法*
耳蝸微音器電位臨床操作要點(diǎn)
關(guān)于汽車(chē)?yán)^電器的解析
繼電器在電氣工程自動(dòng)化低壓電器中的應(yīng)用探討
MCS—51單片機(jī)中的多串口通訊技術(shù)的應(yīng)用
繼電器控制電路轉(zhuǎn)換為PLC的方法
地極布設(shè)對(duì)電位降法測(cè)量接地電阻值的影響
全國(guó)計(jì)算機(jī)等級(jí)考試機(jī)房準(zhǔn)備工作探討
簡(jiǎn)析線性電路電位與電壓的關(guān)系
微機(jī)串口的測(cè)試診斷