精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于uClinux和Nios II處理器實現電網參數遠程測控系統的設計

電子設計 ? 來源:電測與儀表 ? 作者:趙不賄,孫智權, ? 2021-06-15 15:31 ? 次閱讀

作者:趙不賄,孫智權,徐雷鈞,郭文彬

嵌入式系統是指被嵌入到各種產品或工程應用中以微處理器微控制器為核心的軟硬件系統。嵌入式系統與Internet技術相結合,形成的嵌入式Internet技術是近幾年隨著計算機網絡技術的普及而發展起來的一項新興技術。工程技術人員、管理人員或調試人員通過Web而不用親臨現場就可以得到遠程數據,并對測控儀器進行控制、校準等工作。這里介紹利用嵌入式軟核處理器Nios II及廣泛應用的嵌入式操作系統uClinux來實現電網參數的遠程測控服務器的功能。

1、功能及體系結構

圖1是系統結構,其中嵌入式Web服務器和監控端位于現場,它們之間的連接可以用串行口、并行口、USB等實現。現場監控端完成對目標地區電網參數(電壓、電流、諧波等數據)的檢測,并將檢測結果實時傳送至web界面,使得無論監控人員在哪里,只要連接至Internet網絡,便可對目標區域電網參數實時觀測。其實現過程是:三相電壓、電流分別通過電壓互感器、電流互感器變換后,經電路調理送至AID轉換,每周期采樣128點,DSP芯片對采樣數據進行FIR數字濾波、FFT運算、計算各參數值、存儲、顯示等操作。測量電路與Nios之間的通信通過串口傳輸,根據事先約定的通信協議(基于Modbus協議)可以方便地把所測數據發送至以Nios II處理器為核心的嵌入式服務器。通過CGI技術,完成遠程監控端的命令傳輸及將測量數據實時傳送至遠程監控端。

圖1 系統結構圖

2、硬件結構

系統的硬件結構如圖2所示。硬件系統的核心是構建于Ahera Cyclone FPGA中的Nios II嵌入式軟核處理器。Nios II系列嵌入式處理器是一款通用的RISC結構的CPU,它定位于廣泛的嵌入式應用。Nios II處理器系列包括了三種核心:快速的(Nios II/f)、經濟的(Nios II/e)和標準的(Nios II/s)內核,每種都針對不同的性能范圍和成本而優化。這三種核都使用共同的32位的指令集結構(ISA),都兼容二進制代碼。

圖2 硬件系統圖

對于Nios II的配置在SOPC Builder中完成。通過配置所需要的外部/內部元件,SOPC Builder將自動生成適合選定元件的CPU,以符合系統的需求。16M的CF卡作為系統的外存儲器,用來存儲測量數據,網頁文件和應用程序。以太網接口芯片采用的SMSC的Lan91cl11芯片,這是一種非PCI接口的單芯片網絡控制器,具有8k的FIFO,可以實現和8位、16位、32位的CPU接口,廣泛地應用于嵌入式系統設計中。

3、軟件結構

系統軟件結構如圖3所示。uClinux是一個完全符合GNU/GPL(通用公共許可證)公約的項目和完全開發代碼。它是標準Linux的一個分支,現在由Lineo公司支持維護。它專門針對沒有MMU的CPU,并且為嵌入式系統做了許多小型化的工作。uClinux For Nios是Microtronics公司專門針對Nios CPU 定制的uClinux操作系統,使用方便,不需要復雜的移植過程,并自動地集成于Nios/Nios II的開發環境(IDE)中。只要根據自身的需求對內核和文件系統進行配置即可,這里的Web服務器、TCP/IP協議棧及底層的接口驅動程序即是集成于uClinux中的。除此之外,自行編寫CGI腳本來實現動態網頁的功能。CGI(Common Gate Interface)動態網關接口是外部擴展應用程序與WWW 服務器交互的一個標準接口。按照CGI標準編寫的外部擴展應用程序可以處理客戶端(一般是WW W瀏覽器)輸入的協同工作數據,完成客戶端與服務器的交互操作。可以編寫CGI外部擴展程序來訪問外部數據系統,客戶端用戶可以通過它和WWW 服務器來進行數據查詢。CGI可以由PERL、C及大部分的腳本語言來編寫,不過由于是用于嵌入式系統中的程序,而腳本語言又需要解釋器,故選擇C語言來編寫CGI腳本比較合適,還可節省很大的系統資源。

圖3 軟件結構圖

3.1 uClinux操作系統內核及文件系統的配置

(1) uClinux的內核配置。內核是一個操作系統的核心,它負責管理系統的進程、內存、設備驅動程序、文件和網絡系統,決定著系統的性能和穩定性。嵌入式uClinux具有高度可靈活定制內核,保持了Linux的源代碼公開、穩定、可裁減大小等特性。這里采用Microtronix公司專門為Nios/Nios II移植的uClinux1.3版本,并根據需要進行重新配置:在“Developing Board”選項中要選擇自己所用的開發板,添加CF卡作為系統的硬盤等。

(2) 文件系統配置。文件系統是操作系統的重要組成部分。對用戶而言,文件系統也是操作系統中最直接可見的部分,它負責管理外存上的文件,并為操作系統和用戶提供文件的存取、共享和保護等功能。這里要在文件系統配置中,選中Install Minimal、然后增加agetty、boa、dhcpcd、ftpd、inetd、init、ping、route和telnetd等選項。

3.2 Web服務器配置

圖4 Web 服務器工作流程

本文所使用的Web Server為Boa,它是一個單任務的http服務器,源代碼開放、性能高、速度快。其工作流程如圖4所示。目前,uClinux的代碼中已經包含Boa的源代碼,在uClinux下實現Boa,需要對Boa做一些配置和修改。配置Boa包括以下幾個步驟:

(1) 打開所建立文件系統中的“/target/etc/config”文件夾中的“boa.conf’文件。

(2) 將“ChRoot”更改為“/mnt/ide0/www”,其目的是將CF卡上面的“www”文件夾作為Web Server的主文件夾。鍵入系統IP時,服務器自動解析為在此目錄內尋找名為“index.htm”的網頁,也就是本設計的主頁。

(3) 在“SeriptAlias”選項中添加命令:“ScriptAlias/mnt/ide0/www/cgi-bin//cgi-bin/“,其目的是將前面的具有完整路徑的文件夾的地址映射為后一個文件夾,一是可以省去在地址欄內輸入地址的很多時間,方便用戶操作;二是增加了系統的保密性和安全性。其他選項可以選擇默認選項。

(4) 保存配置好的文件。當下載文件系統后,要在“/mnt/ide0/www”文件中,建立“csi-bin”目錄來存放CGI腳本文件。

3.3 CGI程序設計

CGI程序使用C語言編寫,內嵌html腳本,所以當CGI執行的時候,即可以完成對特定端口的操作,又可以將其返回的結果顯示在網頁上供監控人員查看。具體操作是:首先,CGI腳本采用GET的方式,接收Web Server解析的從網頁所傳輸過來的“QUERY_STRTING”,它代表的是用戶的監控命令。接到命令后,CGI程序將命令譯碼后傳送到串口,向現場監控模塊發送采集命令,并接受其傳回來的采集結果,并迅速傳到監控用戶所瀏覽的Web界面。需要注意的是,在編寫過CGI程序并成功編譯后,要將其移動至CF卡相關目錄,也就是上面所介紹的Boa Web Server所設置的“www/csi-bin”中,并將其后綴更改為“.cgi”,屬性改為“可執行”,這樣,Web Server才可以正確識別并執行此CGI程序。

圖5 顯示實時測量結果的網頁畫面

4、結論

本文將嵌入式系統與Internet技術相結合,在FPGA上開發了一個嵌入式Web服務器,并與電網參數測量儀器相結合,構成遠程電網參數測量系統,為電網系統網絡化管理提供了技術支持,具有很好的應用前景。

責任編輯:gt

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 微控制器
    +關注

    關注

    48

    文章

    7496

    瀏覽量

    151085
  • 處理器
    +關注

    關注

    68

    文章

    19178

    瀏覽量

    229200
  • 嵌入式
    +關注

    關注

    5072

    文章

    19026

    瀏覽量

    303517
收藏 人收藏

    評論

    相關推薦

    基于NIOS II嵌入式處理器的LCD控制實現

    本文介紹了一種基于NIOS II軟核處理器實現對LCD-LQ057Q3DC02控制的新方法。在設計中利用FPGA的Altera的SOPC Builder定制
    發表于 11-09 11:30 ?2084次閱讀
    基于<b class='flag-5'>NIOS</b> <b class='flag-5'>II</b>嵌入式<b class='flag-5'>處理器</b>的LCD控制<b class='flag-5'>實現</b>

    基于Nios IIuClinux實現遠程測控服務的設計

    系統的硬件結構如圖2所示。硬件系統的核心是構建于Ahera Cyclone FPGA中的Nios II嵌入式軟核處理器
    發表于 06-28 14:49 ?711次閱讀
    基于<b class='flag-5'>Nios</b> <b class='flag-5'>II</b>和<b class='flag-5'>uClinux</b><b class='flag-5'>實現</b><b class='flag-5'>遠程</b><b class='flag-5'>測控</b>服務<b class='flag-5'>器</b>的設計

    基于NIOS II 軟核處理器的SOPC 技術

    基于NIOS II 軟核處理器的SOPC 技術摘要:介紹了基于NIOS II 軟核處理器的SOP
    發表于 10-06 15:05

    nios II架構uclinux的過程

    個最小系統僅僅需要:1、NIOS II f 或者s 處理器,帶硬件乘法器(建議使用NIOS II
    發表于 02-21 15:55

    請問一下遠程測控中嵌入式Web服務的FPGA的實現方法

    本文介紹利用嵌入式軟核處理器Nios II及廣泛應用的嵌入式操作系統uClinux實現
    發表于 05-28 06:26

    SOPC系統建立及uClinux移植實現

    本文通過具體實現一個可以運行uClinux 操作系統的最小SOPC 系統,較為完整地介紹了構建SOPC 系統以及構建
    發表于 08-13 11:13 ?28次下載

    基于Nios II處理器的USB接口設計

    本文以Nios II 嵌入式軟處理器為核心,利用USB 控制芯片CH372,設計了基于Nios II 嵌入式軟
    發表于 08-28 11:34 ?33次下載

    Nios II 嵌入式處理器 7.1 的新特性

    Nios II 嵌入式處理器 7.1 的新特性
    發表于 08-04 14:40 ?4次下載

    Nios II處理器-世界上最通用的處理器

      Nios II系列軟核處理器是Altera的第二代FPGA嵌入式處理器,其性能超過200DMIPS,在Altera FPGA中實現僅需3
    發表于 11-30 16:33 ?2858次閱讀
    <b class='flag-5'>Nios</b> <b class='flag-5'>II</b><b class='flag-5'>處理器</b>-世界上最通用的<b class='flag-5'>處理器</b>

    Nios II處理器內核詳解

    電子發燒友網核心提示 :與其他軟核處理器相比,世界上越來越多的設計人員使用了Nios II嵌入式處理器,該處理器一直是FPGA和HardCo
    發表于 10-17 13:50 ?6924次閱讀

    Nios II 系列處理器配置選項

    Nios II 系列處理器配置選項:This chapter describes the Nios II Processor paramet
    發表于 10-17 14:08 ?17次下載

    怎樣使用Nios II處理器來構建多處理器系統

    怎樣使用Nios II處理器來構建多處理器系統 Chapter 1. Creating Multiprocessor
    發表于 10-17 14:51 ?19次下載

    遠程配置Nios II處理器應用筆記

    通過以太網遠程配置Nios II 處理器 應用筆記 Firmware in embedded hardware systems is frequently updated over
    發表于 10-17 15:26 ?16次下載

    使用 Nios II 處理器進行設計(1)

    使用 Nios II 處理器進行設計”第一部分
    的頭像 發表于 06-20 00:17 ?3861次閱讀
    使用 <b class='flag-5'>Nios</b> <b class='flag-5'>II</b> <b class='flag-5'>處理器</b>進行設計(1)

    啟動 Nios II 處理器的方法

    Nios II 處理器的各種啟動方法
    的頭像 發表于 06-20 01:22 ?3632次閱讀
    啟動 <b class='flag-5'>Nios</b> <b class='flag-5'>II</b> <b class='flag-5'>處理器</b>的方法