基于STM32數據采集器的設計
數據采集技術(shù)在工業(yè)、航天、軍事等方面具有很強的實(shí)用性,隨著(zhù)現代科技發(fā)展,數據采集技術(shù)在眾多領(lǐng)域得到了廣泛的應用和發(fā)展。同時(shí)對數據采集器的精度、抗干擾能力、安全和通信兼容等方面提出了更高的要求?;谏鲜鲆筇岢隽艘环N基于STM32F101的數據采集器的設計方案,該數據采集器使用MODBUS協(xié)議作為RS485通信標準規約,信號調理電路與STM32F101的AD采樣通道之間均采用硬件隔離保護,可同時(shí)采樣3路DC0-5V電壓信號、3路DC4-20mA電流信號和6路開(kāi)關(guān)量輸入信號,實(shí)驗證明本數據采集器具有較高的測量精度,符合工業(yè)現場(chǎng)應用需求。
本文引用地址:http://dyxdggzs.com/article/263936.htm信號采集主要包括電壓信號、電流信號、頻率信號以及開(kāi)關(guān)量信號,隨著(zhù)現代技術(shù)的發(fā)展,傳感器主要輸出標準的電壓電流信號,而傳感器是將外部的非電量信號轉換成標準的電信號進(jìn)行輸出,本課題所設計的數據采集器可以同時(shí)采集電壓、電流、開(kāi)關(guān)量輸入輸出信號,且每個(gè)部分獨立工作,硬件調理電路中均采用信號隔離技術(shù),數據采集器與上位機采用RS485通信,使用MODBUS協(xié)議作為通信規約,便于數據采集器與其他工業(yè)設備實(shí)現數據共享。
課題設計的基于STM32的數據采集器,使用性?xún)r(jià)比較高的STM32F101作為核心處理器,時(shí)鐘倍頻后處理速度可達36MHz;內部自帶12位AD轉換通道,保證數據采樣和處理的速度和精度。
1數據采集器工作原理
數據采集器具有標準的電壓、電流以及開(kāi)關(guān)量輸入信號采樣接口。模擬量信號采樣接口電路,使用HCNR201線(xiàn)性光耦進(jìn)行信號隔離。電壓信號接口可輸入DC0-5V信號,輸入的電壓信號經(jīng)過(guò)電壓信號調理電路對信號進(jìn)行濾波、隔離和限幅后送入STM32F101的AD采樣通道;電流信號接口可輸入4-20mA信號,輸入的電流信號通過(guò)精密采樣電阻,將電流信號轉換成電壓信號,然后再將轉換的電壓信號送入電壓信號調理電路進(jìn)行處理,最后再送入AD采樣通道;開(kāi)關(guān)量輸入接口采用光耦進(jìn)行隔離,實(shí)現光電轉換和隔離保護。STM32F101將采樣的數據進(jìn)行軟件處理后,再通過(guò)RS485通信接口將數據上傳至上位機或者其他設備,完成數據采集處理和通信的功能。
2數據采集器硬件設計
數據采集器硬件結構包括STM32最小系統、電源、開(kāi)關(guān)量輸入接口電路、電壓信號采樣接口電路、電流信號采樣接口電路和RS485通信接口電路,數據采集器結構圖如圖1所示。

圖1 基于STM32的數據采集器結構圖
2.1 STM32F101最小系統
STM32F101最小系統包括晶振電路、復位電路和SW程序調試接口電路,晶振電路主要為系統工作提供所需要的時(shí)鐘,通過(guò)初始化配置STM32F101內部的時(shí)鐘寄存器,可將外部時(shí)鐘頻率倍頻到36MHz;復位電路主要用于防止數據采集器程序跑飛或者死機時(shí)手動(dòng)復位,同時(shí)在程序內部加入看門(mén)狗復位,程序在正常運行時(shí)正常喂狗,而當程序跑飛時(shí)數據采集器也可自動(dòng)完成復位,使程序重新執行;SW程序調接口電路,主要用于開(kāi)發(fā)人員對STM32F101進(jìn)行編程和在線(xiàn)仿真調試,完成數據采集器的軟件設計。由于STM32F101性?xún)r(jià)比較高,片內集成資源豐富,在設計數據采集器時(shí)可大大簡(jiǎn)化外部硬件電路設計。
2.2電源電路
本課題所設計的數據采集器可工作于DC12V,輸入的DC12V經(jīng)過(guò)LM7805CT轉換為+5V電壓,并通過(guò)電感L15實(shí)現輸入DC12V電源GND與+5V電源DGND的隔離,DC12V轉DC+5V電源轉換電路如圖2所示。由于STM32F101工作電壓為3.3V,因此還需通過(guò)電源模塊LT1117-3.3轉為DC+3.3V,供給CPU使用。DC+5V轉DC3.3V電源轉換電路如圖3所示。

圖2 DC12V轉DC+5V電源轉換電路

圖3 DC+5V轉換DC3.3V電源轉換電路
另外在所設計的硬件電路中,對RS485通信電路和模擬量的信號采樣電路均用了信號隔離技術(shù),供給RS485芯片工作的電源和模擬量信號處理電路中的線(xiàn)性光耦電源均需通過(guò)隔離電源模塊B0505S轉換產(chǎn)生,該模塊可將+5V電源輸出為另一路隔離電源,而且芯片隔離電壓能達到1000VDC,溫度特性較好。線(xiàn)性光耦電源AD+5V和RS485電源S+5V轉換電路如圖4、圖5所示。

圖4 DC+5V轉DC AD+5V電源轉換電路

圖5 DC+5V轉DC 5+5V電源轉換電路
2.3開(kāi)關(guān)量輸入接口電路
開(kāi)關(guān)量輸入接口主要用于采集外部開(kāi)關(guān)量信號,此部分電路使用TLP521光耦進(jìn)行隔離,保證信號采樣電路的安全性,同時(shí)可減小電路干擾。開(kāi)關(guān)量信號從IN輸入,COM為信號輸入公共端。開(kāi)關(guān)量信號經(jīng)光耦輸出至STM32的GPIO口,實(shí)現對外部開(kāi)關(guān)量信號的檢測。
2.4電壓電流信號采樣接口電路
傳感器將非電量信號轉換為電信號,一般輸出標準電壓電流信號,STM32F101自帶AD轉換通道允許輸入電壓范圍為0-3.3V,因此傳感器輸出信號需經(jīng)信號調理電路調整到AD通道有效采樣電壓范圍。本課題的設計的數據采集卡可采樣DC0-5V電壓信號和DC4-20mA電流信號,使用HCNR201線(xiàn)性光耦進(jìn)行隔離,輸出跟隨輸入變化,線(xiàn)性度較好,保證了信號采樣的準確性。
電壓信號采樣接口電路輸入電壓范圍為DC0-5V,輸入電壓經(jīng)電阻R1A和R1B分壓后經(jīng)電阻R63輸入至運放U30A反相端,電容C107構成反饋電容,主要用來(lái)消除噪聲和干擾。運放U30A在此處構成比較器,當有外部電壓信號接入時(shí),U30A的1端輸出低電平,線(xiàn)性光耦HCNR201的LED發(fā)光,當光照到PD1、PD2時(shí)分別形成通路,線(xiàn)性光耦主要實(shí)現光電轉換和隔離,經(jīng)過(guò)線(xiàn)性光耦輸出的電流信號通過(guò)運放U31B構成的電路形成電壓信號,經(jīng)過(guò)U31B輸出的電壓信號經(jīng)過(guò)運放U31A構成的3.3V限幅電路,將輸出電壓限定在0-3.3V范圍內,以保證STM32F101的AD通道采集到正常的電壓信號。
2.5 RS485通信接口電路
RS485通信主要實(shí)現采集的數據傳輸,為保證數據傳輸的安全性和通信的兼容性,在硬件設計上使用SP3485作為收發(fā)控制器,同時(shí)使用TLP521光耦進(jìn)行隔離,保證數據采集卡硬件通信的安全;在軟件設計上使用工業(yè)標準的MODBUS協(xié)議作為RS485通信規約,保證系統良好的兼容性和數據傳輸的準確性。
3軟件設計
數據采集器軟件設計主要采用模塊化編程,主程序流程圖主要包括關(guān)中斷、各功能模塊初始化、開(kāi)相關(guān)中斷、看門(mén)狗定時(shí)、開(kāi)關(guān)量輸入采集、AD采樣處理、RS485通信數據處理和定時(shí)喂狗;主程序流程圖如圖6所示。

圖6 數據采集卡主程序流程圖
4結語(yǔ)
通過(guò)Multism對電壓信號采樣電路進(jìn)行仿真,采樣輸入信號接入示波器A通道,電壓幅值范圍為DC0-5V,輸入信號經(jīng)過(guò)電壓信號處理電路后輸出電壓信號輸入示波器B通道,當輸入電壓為100mV時(shí),經(jīng)過(guò)電壓信號處理電路輸出電壓為101.541mV;當輸入電壓為3.28V時(shí),經(jīng)過(guò)電壓信號處理電路輸出電壓為3.28V;當輸入電壓為5V時(shí),經(jīng)過(guò)3.3V限幅電路后電壓被鉗在3.3V,由仿真圖觀(guān)察可知,HCNR201具有良好的線(xiàn)性度,保證了數據采樣的精度。

圖7 100mv電壓信號采樣處理電路Multism仿真

圖8 3.28V電壓信號采樣處理電路Multism仿真

圖9 5V電壓信號采樣處理電路Multism仿真
光耦相關(guān)文章:光耦原理
晶振相關(guān)文章:晶振原理
評論