0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于ARM9芯片S3C2410實現(xiàn)測量監(jiān)控系統(tǒng)的應(yīng)用方案

牽手一起夢 ? 來源:上海電力學(xué)院計算機(jī)與信 ? 作者:袁三男,王紹徐 ? 2020-10-04 17:29 ? 次閱讀

1. 概述

目前嵌入式系統(tǒng)發(fā)展非常迅速,各類基于 ARM 處理器的應(yīng)用開發(fā)更是如火如荼,這主要是由于嵌入式系統(tǒng)的高性價比和較短的開發(fā)周期短,并且可以實現(xiàn)于多種多樣的應(yīng)用系統(tǒng)中。本文介紹了基于三星公司的 ARM9 嵌入式芯片 S3C2410 構(gòu)建的測量監(jiān)控系統(tǒng),以該 ARM 芯片為主 CPU,實現(xiàn)了交流、直流電壓、電流的測量,本地及附近溫度的測量以及光敏度的測量,將測量的結(jié)果存儲于本地 MIB 數(shù)據(jù)庫中,并通過 IP 網(wǎng)絡(luò)協(xié)議實現(xiàn)遠(yuǎn)程訪問監(jiān)控。系統(tǒng)設(shè)計方案先進(jìn),集成度較高,在實踐中得到了廣泛的應(yīng)用。

2. 嵌入式 ARM9 S3C2410X 簡介

S3C2410X 是三星公司提供的基于 ARM920T 內(nèi)核的 32 位 RISC 處理器,它的低功耗、低價格、高性能設(shè)計特別適合于手持設(shè)備和通用嵌入式應(yīng)用場合,為降低整個系統(tǒng)的成本,它提供了豐富的內(nèi)部設(shè)備,包括分開的 16KB 指令 Cache 和 16KB 數(shù)據(jù) Cache,MMU 虛擬存儲器管理,24bbp 模式下最大 16M 色 TFT LCD 控制器,支持 NAND Flash 系統(tǒng)引導(dǎo),片選邏輯和dram 控制器的系統(tǒng)管理器,3 通道 UART,4 通道 DMA,4 通道 PWM 定時器,117個通用 IO 端口和 24 通道外部中斷源,具有日歷功能的 RTC,8 通道 10 位 ADC 和觸摸屏接口,IIC、IIS 接口,USB 主從設(shè)備,SD&MMC 卡接口,2 通道的 SPI 以及 PLL 時鐘倍頻器。它采用了 AMBA 新型微控制器總線結(jié)構(gòu),極大地提高了數(shù)據(jù)及指令的傳輸速度。其加強(qiáng)的ARM體系結(jié)構(gòu)MMU可用于WinCE和Linux操作系統(tǒng)的移植, 并支持各種低價格、大容量的 NOR/NAND Flash 或 EEPROM 啟動。最高工作頻率達(dá)到 266MHz,并基于小封裝272FBGA。ARM 內(nèi)核具有標(biāo)準(zhǔn) JTAG 結(jié)構(gòu),為應(yīng)用系統(tǒng)開發(fā)提供了方便的調(diào)試工具。目前市場上具有很多通用的開發(fā)工具可以用于 S3C2410X 的調(diào)試開發(fā)。

由于 S3C2410X 具有豐富的接口和內(nèi)嵌硬件控制器,因此使用其最簡系統(tǒng)即可實現(xiàn)大部分應(yīng)用系統(tǒng)的功能。其最簡系統(tǒng)如圖 1 所示,僅包括 S3C2410X ARM9 芯片、32 位 sdram,價格低廉的大容量 Nand Flash。為了實現(xiàn)串口和網(wǎng)口通信,需增加串口電平轉(zhuǎn)換芯片MAX232 和網(wǎng)絡(luò) MAC 和 PHY 芯片 DM9000(或 LAN9115) 。系統(tǒng)中其他模塊均用于實現(xiàn)各種參數(shù)的測量傳感等功能。

3. 嵌入式測量監(jiān)控系統(tǒng)設(shè)計

本系統(tǒng)需對被測設(shè)備如電力設(shè)備或太陽能的電壓、電流或溫度、光照度等進(jìn)行測量、參數(shù)采集、存儲,并實現(xiàn)遠(yuǎn)程監(jiān)控。數(shù)據(jù)存儲格式為 SNMP 的 MIB 數(shù)據(jù)庫方式,數(shù)據(jù)庫能夠通過系統(tǒng)的NMP 代理被遠(yuǎn)方操作員的 SNMP 控制平臺所訪問存取。傳輸協(xié)議為以太網(wǎng)的 IP 協(xié)議。信息同時能夠被本地操作顯示,因此本地附有串行接口,基于以上應(yīng)用需求,實現(xiàn)系統(tǒng)框圖如下圖 1 所示。

基于ARM9芯片S3C2410實現(xiàn)測量監(jiān)控系統(tǒng)的應(yīng)用方案

圖 1 系統(tǒng)原理框圖(Fig1 System Diagram)

本系統(tǒng)需采集遠(yuǎn)端、本地兩個溫度檢測,一個光照度檢測,三個直流 DC 8-130V 電壓檢測,三個直流 DC 0-20A@12VDC 電流檢測,一個交流 AC 105-280V 電壓檢測,一個交流AC 0-20A@120VAC 電流檢測。測量使用原理及所用傳感器件下節(jié)敘述。系統(tǒng)硬件平臺采用3C2410X 標(biāo)準(zhǔn)硬件平臺,主 CPU 帶 sdram 作為主存,NAND Flash 作為程序存儲空間,并從 NAND Flash 進(jìn)行啟動,其臨時數(shù)據(jù)庫存放于 sdram 中,當(dāng)?shù)揭欢〞r間間隔,或者接收到命令時,將sdram 中的數(shù)據(jù)庫備份到 Flash 中。測量時通過 ARM9 的 IO 端口測量溫度和光照度, 通過片內(nèi)ADC將交直流電壓電流通過傳感器轉(zhuǎn)變后的輸出電壓進(jìn)行采樣,然后通過 CPU 計算后存入數(shù)據(jù)庫。

4. 參數(shù)測量實現(xiàn)

各參數(shù)測量是本系統(tǒng)的前端電路,也是最終目的。由于 ARM 系統(tǒng) 3.3V 供電,具有通用IO 接口和內(nèi)置 ADC 電路,因此只要將各測量參數(shù)通過相應(yīng)的傳感設(shè)備轉(zhuǎn)換為 IO 數(shù)據(jù)或0-3.3V 的模擬電壓量,就可通過 ARM 處理器采集,從而轉(zhuǎn)換為數(shù)字信號進(jìn)而數(shù)字存儲或通過網(wǎng)絡(luò)傳輸。各參數(shù)的測量采集電路見圖 2 所示。

直流電壓的采集可以直接通過電阻分壓取得,因為已知需要采集的直流電壓的范圍,將最大電壓值映射為 3.3V,即可獲得圖 2 中的兩個分壓電阻的值。測量時,將 ARM 采集得到的 ADC 值乘以已知的系數(shù)即可得到當(dāng)前的直流電壓值。為了對 CPU IO 的保護(hù),電路中加了BAV99雙二極管進(jìn)行保護(hù)。 設(shè)分壓電阻分別是12KΩ和470KΩ, 則Uo = 12/(12+470)×Ui = Ui/40,按照 ARM 10 位 ADC 采樣結(jié)果,如 ADC 采樣值為 Uadc,則采集到的輸入電壓值為:Ui = [ Uadc/1024] ×3.3×40(V)。

交流電壓的采集采用 TV19G_E 系列精密電壓互感器,該器件采用坡膜合金鐵芯,線性度優(yōu)于 0.1%。體積小,直接焊接在電路板。全封閉,抗電強(qiáng)度高。它是一種電流型電壓互感器,不同的輸入電壓通過限流電阻使一次側(cè)流過不同的電流,二次得到一個與一次相同的電流。經(jīng)運(yùn)算放大器或電阻直接取樣,得到不同的輸出電壓,如圖 2 所示。

此時采集到的電壓值實際上是交流電壓的瞬時值,其實時性好,相位失真小,本文用軟件代替硬件實現(xiàn)交流電壓采集可以使得硬件投資減小,實踐證明,采用該方法并通過算法計算后獲得的電壓、電流、有功功率、功率因數(shù)等電力參數(shù)有著較好的精確度和穩(wěn)定性。

電壓有效值公式為

將其離散化,以一個周期內(nèi)有限個采樣電壓數(shù)字量來代替一個周期內(nèi)連續(xù)變化的電壓函數(shù)值,則

式中 ΔTm為相鄰兩次采樣的時間間隔;um 為第 m-1 個時間間隔的電壓采樣瞬時值;N 為 1 個周期的采樣點數(shù)。若相鄰兩采樣的時間間隔相等,即 ΔTm 為常數(shù) ΔT,考慮到 N=(T/ΔT)+1,則有

值。功率因數(shù)為 cosφ=P/UI。系統(tǒng)的采樣時間間隔由用戶確定。采樣時,在 1 個信號周期內(nèi)等時間間隔準(zhǔn)確采樣 16 點并存儲結(jié)果,采集完后,對采集的數(shù)據(jù)進(jìn)行數(shù)字濾波并計算得到相應(yīng)的值。

交直流電流的采集采用霍爾器件 ACS752SCA-050 和 ACS706ELC-20A,其工作原理相同,支持的最大電流分別為-50A 到+50A 和-20A 到+20A。它將流過該器件的電流通過霍爾感應(yīng)后再處理放大輸出相應(yīng)的電壓值,該電壓值和流過的電流值成正比,其比例關(guān)系如圖3a 所示。當(dāng)流過電流為 0 時,輸出電壓為 2.5V(5V 供電),當(dāng)流過電流為 50A 時,輸出電壓為 4.5V,當(dāng)流過電流為-50A 時,輸出電壓為 0.5V,其間為線性變化,由此按照測出的電壓值可以計算出電流為 I=25×(V-2.5)A,由于電流可以正反方向,因此用同樣的方法可以測試交流和直流電流。

系統(tǒng)中溫度測量采用 DS18B20 分辨率可編程單線數(shù)字溫度計,并可結(jié)聯(lián)使用,其應(yīng)用原理如圖 2 所示。測量溫度范圍為-55 度至+125 度,精度可達(dá) 0.5 度,數(shù)字精度可編程為9 至12bit。該芯片僅單線輸出,可連接 CPU 的 IO 管腳,需進(jìn)行編程控制。本系統(tǒng)采用Linux 操作系統(tǒng)下的 IO 輸入輸出設(shè)備驅(qū)動控制進(jìn)行讀寫操作,進(jìn)而實現(xiàn)溫度數(shù)據(jù)的采集,具體的程序流程如下節(jié)所述。

圖 3a 電流感應(yīng)輸出電壓關(guān)系圖 圖 3b 光照度頻率關(guān)系圖

系統(tǒng)中光照度測量采用光敏傳感器 TSL235 電路,該電路是光照度到頻率的轉(zhuǎn)換電路,內(nèi)置一個硅光敏二極管和電流到頻率的轉(zhuǎn)換器,輸出為 50%占空比的不同頻率的方波,管腳只有電源、地和輸出,輸出可直接和 CPU 的 IO 相連,CPU 通過 TIMER 控制或中斷檢測即可測得該方波的頻率,從而可計算出相應(yīng)的光照度。其光照度和頻率的關(guān)系曲線如圖 3b 所示。

5. 軟件模塊

本系統(tǒng)軟件在 linux 操作系統(tǒng)下實現(xiàn),其軟件結(jié)構(gòu)如圖 4 所示。按照需求定義,需實現(xiàn)多種軟件協(xié)議,有 EIA232, IEEE802.3, IPv4, ICMP, ARP, TCP, UDP, SNMP V2,3 Agent, NTP Client, DNS Client, TFTP Server, HTTP Server, TELNET Server 等。系統(tǒng)啟動時需對硬件和軟件模塊進(jìn)行初始化和診斷,并將診斷結(jié)果實時輸出到串口。然后將控制權(quán)交給操作系統(tǒng)。 操作系統(tǒng)和應(yīng)用程序存儲于 flash 中, 當(dāng)具體運(yùn)行時裝載到 sdram 中。啟動時讀取用戶配置文件(或默認(rèn)配置)并進(jìn)行各種參數(shù)的配置,如通信速率、IP 地址等,然后開始測量、收集、存儲數(shù)據(jù)在sdram 和 flash 的 MIB 數(shù)據(jù)庫中。當(dāng)有網(wǎng)絡(luò)或串口用戶進(jìn)行通信時完成數(shù)據(jù)交換和命令的實現(xiàn)。

系統(tǒng)中 ADC、IO 等操作均采用設(shè)備驅(qū)動方法實現(xiàn),先編寫設(shè)備驅(qū)動程序,將驅(qū)動加入到操作系統(tǒng)中,然后在應(yīng)用中調(diào)用驅(qū)動程序。如 DS18B20 溫度采集采用 IO 操作的方法。先建立 IO 驅(qū)動, module_init(DS18B20_init), 主要實現(xiàn)設(shè)備注冊 register_chrdev(240, “ds18b20”, &DS18B20_fops)。DS18B20_fops 文件操作主要包括 ioctl,通過 ioctl 中WriteOneChar,ReadOneChar 等 IO 的控制實現(xiàn)溫度的采集。

6.結(jié)語

本文介紹了基于 S3C2410X ARM 的參數(shù)測量系統(tǒng),該系統(tǒng)可針對電力設(shè)備的電壓、電流、溫度、光敏度等進(jìn)行測量、采集,存儲于系統(tǒng)內(nèi)部基于 SNMP 的 MIB 數(shù)據(jù)庫中,并通過網(wǎng)絡(luò)協(xié)議進(jìn)行遠(yuǎn)程訪問。系統(tǒng)采用 ARM 嵌入式實現(xiàn),性價比高,功能強(qiáng),在實際中得到了很好的應(yīng)用。

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19103

    瀏覽量

    228824
  • ARM
    ARM
    +關(guān)注

    關(guān)注

    134

    文章

    9028

    瀏覽量

    366496
  • 監(jiān)控系統(tǒng)

    關(guān)注

    21

    文章

    3844

    瀏覽量

    173425
收藏 人收藏

    評論

    相關(guān)推薦

    基于ARM9核的S3C2410芯片和操作系統(tǒng)實現(xiàn)調(diào)色板顯示系統(tǒng)的設(shè)計

    ARM9核的S3C2410芯片可通過內(nèi)置的LCD控制器來實現(xiàn)對LCD顯示的控制。以TFT LCD為例,S3C2410
    的頭像 發(fā)表于 10-04 17:45 ?2686次閱讀
    基于<b class='flag-5'>ARM9</b>核的<b class='flag-5'>S3C2410</b><b class='flag-5'>芯片</b>和操作<b class='flag-5'>系統(tǒng)</b><b class='flag-5'>實現(xiàn)</b>調(diào)色板顯示<b class='flag-5'>系統(tǒng)</b>的設(shè)計

    基于S3C2410和AT2042芯片實現(xiàn)服務(wù)器的遠(yuǎn)程監(jiān)控系統(tǒng)的設(shè)計

    硬件部分以三星公司的ARM9芯片S3C2410和韓國的專用視頻芯片AT2042為核心。S3C2410主要
    的頭像 發(fā)表于 10-19 10:06 ?3751次閱讀
    基于<b class='flag-5'>S3C2410</b>和AT2042<b class='flag-5'>芯片</b><b class='flag-5'>實現(xiàn)</b>服務(wù)器的遠(yuǎn)程<b class='flag-5'>監(jiān)控</b><b class='flag-5'>系統(tǒng)</b>的設(shè)計

    [求助]關(guān)于ARM9 S3C2410和GPRS的疑問

    目前使用ARM9 S3C2410開發(fā)板在做實驗想請問下S3C2410芯片和GPRS模塊的工作過程,兩者之間是如何進(jìn)行訪問以及控制的簡單說就是想了解兩者之間的關(guān)聯(lián)和工作原理之類的,在線等
    發(fā)表于 03-04 18:02

    ARM9 S3C2410 串口通信

    基于ARM9 S3C2410 串口通信與外部中斷實現(xiàn)查詢方式串口的收發(fā)功能:接收來自PC機(jī)(dnw.exe)的字符,將所收小寫字母轉(zhuǎn)為大寫,或?qū)⑺沾髮懽帜窤SCII值向上偏移2(大寫41~5A
    發(fā)表于 06-24 15:26

    ARM9 S3C2410

    求幫設(shè)計ARM9 S3C2410的小設(shè)計 價格可以談~~~急
    發(fā)表于 07-06 12:24

    ARM9 S3C2410X參數(shù)測量系統(tǒng)怎么實現(xiàn)?

    嵌入式系統(tǒng)由于性價比高開發(fā)周期短等優(yōu)點目前得到了迅猛發(fā)展,各類基于 ARM 處理器的應(yīng)用開發(fā)更是如火如荼。這里介紹基于 ARM9 嵌入式芯片 S3C
    發(fā)表于 08-14 07:30

    ARM9芯片S3C2410怎么驅(qū)動VGA接口?

    大多數(shù)嵌入式產(chǎn)品的顯示終端都選擇LCD,但在某些需要大屏幕顯示的應(yīng)用中,工業(yè)級LCD的價格比較昂貴,且現(xiàn)有的大屏幕顯示器(包括CRT顯示器和LCD顯示器)一般都采用統(tǒng)一的15針VGA顯示接口。三星公司ARM9芯片S3C2410
    發(fā)表于 08-16 06:36

    怎樣測試基于ARM9 s3c2410的SD卡驅(qū)動傳輸速度呢

    SD卡的傳輸速度 自己寫了一個基于ARM9 s3c2410的SD卡驅(qū)動,現(xiàn)在想測試一下它的傳輸速度,應(yīng)該怎么做?
    發(fā)表于 07-22 11:46

    基于ARM9 s3c2410的SD卡驅(qū)動它的傳輸速度如何測試呢

    SD卡的傳輸速度 自己寫了一個基于ARM9 s3c2410的SD卡驅(qū)動,現(xiàn)在想測試一下它的傳輸速度,應(yīng)該怎么做?
    發(fā)表于 11-16 14:16

    基于ARM9的網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)實現(xiàn)

    傳統(tǒng)的實時網(wǎng)絡(luò)監(jiān)控系統(tǒng)是通過視頻采集卡在PC 機(jī)上構(gòu)建網(wǎng)絡(luò)視頻。提出了網(wǎng)絡(luò)數(shù)字視頻監(jiān)控系統(tǒng), 其系統(tǒng)硬件以
    發(fā)表于 04-21 23:39 ?57次下載

    基于S3C2410嵌入式系統(tǒng)的網(wǎng)絡(luò)接口設(shè)計

    本文介紹了一個基于三星ARM9 芯片S3C2410 嵌入式系統(tǒng)的網(wǎng)絡(luò)接口電路設(shè)計方案,采用了工業(yè)級以太網(wǎng)控制器CS8900A 成功
    發(fā)表于 09-26 09:51 ?28次下載

    ARM9 S3C2410PCB設(shè)計指南

    ARM9 S3C2410PCB設(shè)計指南 高速數(shù)字電路PCB 設(shè)計考慮----以ARM9 S3C2410 系統(tǒng)為例隨著現(xiàn)代數(shù)字
    發(fā)表于 03-01 15:37 ?0次下載

    ARM9微處理器S3C2410的IP電話通信設(shè)計

    ARM9微處理器S3C2410的IP電話通信設(shè)計 0  概述IP電話以其通話費(fèi)率低、方便集成和智能化等優(yōu)勢而得到了眾多消費(fèi)者的極大認(rèn)可,并因此而對
    發(fā)表于 03-31 10:17 ?1348次閱讀
    <b class='flag-5'>ARM9</b>微處理器<b class='flag-5'>S3C2410</b>的IP電話通信設(shè)計

    ARM9系列嵌入式處理器S3C2410系統(tǒng)中LCD驅(qū)動開發(fā)

    本文以三星公司ARM9內(nèi)核芯片S3C2410的LCD接口為基礎(chǔ),介紹了在Linux平臺上開發(fā)嵌入式LCD驅(qū)動程序的一般方法。
    發(fā)表于 10-10 11:50 ?3314次閱讀

    ARM9嵌入式系統(tǒng)設(shè)計課件-基于S3C2410與Linux-pp

    ARM9嵌入式系統(tǒng)設(shè)計課件-基于S3C2410與Linux,北京航空航天大學(xué)出版社,第二版課件。
    發(fā)表于 03-15 10:22 ?5次下載