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

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

3天內不再提示

基于S3C2410和操作系統(tǒng)實現(xiàn)遠程測控系統(tǒng)的應用方案

電子設計 ? 來源:成都紡織高等??茖W校學 ? 作者:祝紅軍;朱霞 ? 2021-06-08 15:54 ? 次閱讀

目前,大多數(shù)遠程測控系統(tǒng)中,系統(tǒng)的硬件采用8/16位的單片機,軟件多采用匯編語言編程,該編程僅包含一個簡單的循環(huán)處理的控制流程;單片機與單片機(或上位機)之間的通信通過RS232、RS485CAN總線來組成局域網(wǎng),再用Pc機作為 Web服務器,與Internet進行通訊。這樣的遠程測控設備成本高、體積大、速度慢、功耗大?,F(xiàn)在,32位嵌入式CPU價格已下降,性能指標也有提高,為嵌入式系統(tǒng)的廣泛應用提供了可能性?;谏鲜銮闆r,我們將嵌入式系統(tǒng)應用于遠程測控系統(tǒng),大大提高了測控系統(tǒng)的性能,同時降低了成本和功耗,體積也大大減小。

嵌入式系統(tǒng)一般應用嵌入式操作系統(tǒng)來開發(fā)。在嵌入式操作系統(tǒng)的選擇上,由于Linux有完整開放的源代碼,因而它具有修改和優(yōu)化系統(tǒng)、內核穩(wěn)定、適用于多種CPU和多種硬件平臺、支持網(wǎng)絡等特點,所以選擇Linux作為嵌入式操作系統(tǒng)較好。本文提出的基于ARMlinux的嵌入式遠程測控系統(tǒng)不僅能夠實現(xiàn)本地數(shù)據(jù)采集與控制,還能實現(xiàn)遠程測控任務。

1、硬件系統(tǒng)

硬件系統(tǒng)如圖1。S3C2410包含一個16/32-bit的Risc(ARM920T)的CPU內核,主頻200Hz,內部含有8通道1O位AD轉換器和大量的I/O口、LCD控制器等豐富接口,能運行Ucosll、ARMlinux和Wince嵌入式操作系統(tǒng),DM 9OOO是10M/100M以太網(wǎng)接口控制芯片。本硬件系統(tǒng)結構簡單,成本低,不需要Pc機就可直接接入Internet。

2、軟件系統(tǒng)

嵌入式操作系統(tǒng)是整個嵌入式系統(tǒng)的核心。本系統(tǒng)選擇ARMlinux系統(tǒng)。由于嵌入式系統(tǒng)的存儲容量很小,因此要把ARMLinux操作系統(tǒng)裝入有限的存儲器內,就要對它進行裁剪。很多資料對此都有論述,這里就不再累述。下面主要介紹基于操作系統(tǒng)上的遠程測控軟件設計。其體系結構如圖2。

2.1 基于Boa的Web服務器

嵌入式linux主要有三個web Server:Hapd、Thttpd和Boa。Httpd是最簡單的一個web Server。它的功能最弱,不支持認證,不支持CG1。Thttpd和Boa都支持認證、CGI等,功能都比較全。Boa是一個單任務的小型Httpd 服務器,源代碼開放、性能優(yōu)秀,特別適合應用在嵌入式系統(tǒng)中。下面介紹Boa的移植與編譯。

對于有MMU嵌入式linux,把Boa下載到Redhat宿主機上后,解壓到任意目錄,再修改Boa/src/Makefde里面的編譯器。例如:

CC=/opfhosfarmv41/bin/armv41—unkllown—linux—gcc

CPP=/opt/host/army41/bin/armv41—unknown—linux—g++

此后直接在Boa/src目錄下執(zhí)行make即可生成Boa可執(zhí)行文件。將其復制到ramdisk加載mount的目錄的bin里面后,等一同加入配置文件和HTML/CGI文件后,重做ramdisk即可。

配置文件Boa.conf的編制見下。

需要說明的是,Linux下的應用程序的配置都是以配置文件的形式提供的,~般都是放在目標板/ete/目錄下或者/ctc/config目錄下,但Boa 的配置文件Boa.conf一般都放置在目標板/home/httpd/目錄下。本系統(tǒng)Boa.conf文件的編寫程序為:

Servername S A M S U N G—A R M

DocumentRoot/home/httpd/cgi—bin/

ScfiptAlias/index.html/home/httpd/html/index.html

它指定了HTML頁面index.html必須放/home/httpd/html目錄下,CGI可執(zhí)行文件必須放到/home/httpd/cgi~bin目錄下。

2.2 CGI程序技術原理

CGI(Common Gateway Interface)是外部擴展應用程序與WWW服務器交互的一個標準接口。按照CGI標準編寫的外部擴展應用程序可以處理客戶端瀏覽器輸入的數(shù)據(jù),從而完成客戶端與服務器的交互操作。而CGI規(guī)范定義了Web服務器如何向擴展應用程序發(fā)送消息,在收到擴展應用程序的信息后又如何進行處理等內容。通過 CGI可以提供許多靜態(tài)的Html網(wǎng)頁無法實現(xiàn)的功能。其www與CGI的工作原理如下。

HTTP協(xié)議是WWW的基礎,它基于客戶/服務器模型。一個服務器可以為分布在網(wǎng)絡各處的客戶提供服務。它是建立在TCP/IP協(xié)議之上的“無連接”協(xié)議。每次連接只處理一個請求。當一個請求到來時,便創(chuàng)建一個子進程為用戶的連接服務。根據(jù)請求的不同,服務器會返回HTML文件或通過CGI凋用外部應用程序,返回處理結果。服務器通過CGI與外部程序和腳本之問進行交互,根據(jù)客戶端在進行請求時所采取的方法,服務器會收集客戶所提供的信息,并將該部分信息發(fā)送給指定的CGI擴展程序。CGI擴展程序對信息進行處理并將結果返回服務器。服務器對信息進行分析后,將結果發(fā)送網(wǎng)客戶端。

外部CGI程序與www服務器進行通信、傳遞有關參數(shù)和處理結果是通過環(huán)境變量、命令行參數(shù)和標準輸入來進行的。服務器提供了客戶端(瀏覽器)與CGI擴展程序之問的信息交換的通道。客戶的請求通過服務器的標準輸出傳送給CGI的標準輸入。CGI對信息進行處理后,會將結果發(fā)回到它的標準輸入,然后由眼務器將處理結果發(fā)送給客戶端。

2.3 CGI外部擴展程序的編制

服務器程序可以通過三種途徑接收信息:環(huán)境變量、命令行和標準輸入。具體使用哪一種方法要由標簽的Method屬性來決定。在“Method=GET”時,向CGI程序傳遞表單編碼信息的正常做法是通過命令來進行的。

大多數(shù)表單編碼信息都是通過Qucry-String的環(huán)境變量來傳遞的。如果“Method=POST”,表單信息將通過標準輸入來讀取。還有一種不使用表單就可以向CGI傳送信息的方法。那就是把信息直接追回在URL地址后面,信息和URL之間用問號(?)來分隔。本測控系統(tǒng)采用的是GET方法。下面是遠程控制LED閃爍快慢的程序。其網(wǎng)頁如下頁圖3,其程序如下。

;LED測試

<input type=“radio”name=“speed”value=“show”checked>慢速

<input type=“radio”name=“speed”value=“normal”>中速

<input type=“radio”name=“speed”value=“rast”>高速

<input type=“submit”value=確定“name=”submit>

其中l(wèi)eds.cgi程序如下:

#! /bin/sh

Period=1+case $QUERY-STRING in

*slow*)

period=0.25

;;

* normal *)

period = 0.125

;;

* fast *

period=0.0625+;;

*fast * ) + period =0.0626

;;

esac

/bin/echo $ period ? /tmp/led-control//通過Query_String的環(huán)境變量傳遞給應用程序。

echo “Content-type:texe/html;charset=gb2312”

echo

/bin/cat led =result.template

exit 0

led—control是編譯好的可執(zhí)行的應用程序,通過led驅動來實現(xiàn)對LED的控制。因為S3C2410有MMU,所以通過操作系統(tǒng)來對硬件控制需要驅動程序來實現(xiàn)。其數(shù)據(jù)采集部分也類似,不再單獨說明。

圖3 實驗結果

3、測試結果

首先建立好基于S3C2410嵌入式開發(fā)環(huán)境,把編譯好的booloader、嵌入式linux內核和ramdisk燒人Flash中,然后起動Boa服務器,在PC機的瀏覽器上輸人嵌入式系統(tǒng)的IP地址,即顯示出如圖3的網(wǎng)頁。通過點擊慢速、中速和高速,再點擊確定,測控板上LED的閃爍由慢變快,圓滿實現(xiàn)了設計目標。

4、結論

找們開發(fā)的基于ARMLinux的遠程測控系統(tǒng),在真正意義上實現(xiàn)了通過互聯(lián)網(wǎng)進行遠程測控。它具有一般通用平臺性能,特別適合實時性要求不很強的家電網(wǎng)絡監(jiān)控和遠程工業(yè)控制。當然隨著硬件和網(wǎng)絡速度提高及操作系統(tǒng)實時性的改善,將會大大提高此測控系統(tǒng)的性能,因此有很好的應用前景。

責任編輯:gt

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

    關注

    6030

    文章

    44489

    瀏覽量

    631980
  • 嵌入式
    +關注

    關注

    5059

    文章

    18973

    瀏覽量

    302033
  • 操作系統(tǒng)

    關注

    37

    文章

    6684

    瀏覽量

    123140
收藏 人收藏

    評論

    相關推薦

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

    ARM9核的S3C2410芯片可通過內置的LCD控制器來實現(xiàn)對LCD顯示的控制。以TFT LCD為例,S3C2410芯片的LCD控制器可以對TFT LCD提供1位、2位、4位、8位調色板彩色顯示和16位、24位真彩色顯示,并支持
    的頭像 發(fā)表于 10-04 17:45 ?2684次閱讀
    基于ARM9核的<b class='flag-5'>S3C2410</b>芯片和<b class='flag-5'>操作系統(tǒng)</b><b class='flag-5'>實現(xiàn)</b>調色板顯示<b class='flag-5'>系統(tǒng)</b>的設計

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

    硬件部分以三星公司的ARM9芯片S3C2410和韓國的專用視頻芯片AT2042為核心。S3C2410主要實現(xiàn)系統(tǒng)控制功能,例如對AT2042的配置,接收視頻流數(shù)據(jù)并利用USB存儲設備進
    的頭像 發(fā)表于 10-19 10:06 ?3750次閱讀
    基于<b class='flag-5'>S3C2410</b>和AT2042芯片<b class='flag-5'>實現(xiàn)</b>服務器的<b class='flag-5'>遠程</b>監(jiān)控<b class='flag-5'>系統(tǒng)</b>的設計

    斯道s3c2410

    斯道s3c2410
    發(fā)表于 03-25 11:52 ?21次下載

    s3c2410開發(fā)板原理圖,s3c2410原理圖pcb

    s3c2410
    發(fā)表于 09-09 15:41 ?954次下載
    <b class='flag-5'>s3c2410</b>開發(fā)板原理圖,<b class='flag-5'>s3c2410</b>原理圖pcb

    基于S3C2410的電話遠程家電智能控制系統(tǒng)

    利用雙音多頻編解碼技術實現(xiàn)了電話遠程控制家用電器的智能控制系統(tǒng)。該系統(tǒng)采用S3C2410芯片作為核心控制模塊,利用其強大的音頻處理和大容量存
    發(fā)表于 12-09 02:52 ?17次下載

    s3c2410 datasheet

    s3c2410 da
    發(fā)表于 03-14 16:05 ?166次下載

    Linux實時操作系統(tǒng)s3c2410的移植

             本文描述了linux實時操作系統(tǒng)移植到arm處理器的方法和嵌入式linux實時操作系統(tǒng)的結構特征,論述了利用交叉編譯環(huán)境,進行基于s3c2
    發(fā)表于 09-11 08:27 ?34次下載

    基于S3C2410的嵌入式串口通信設計

    本文通過基于S3C2410的嵌入式串口通信的實現(xiàn),按照嵌入式系統(tǒng)的軟、硬件結構組成,較為詳細地介紹了串行通信的硬件電路和軟件實現(xiàn)方法。該系統(tǒng)
    發(fā)表于 12-23 16:11 ?120次下載

    基于S3C2410的手持監(jiān)控終端的研究與設計

    本文介紹了一種基于S3C2410 和嵌入式Linux 操作系統(tǒng)的手持監(jiān)控設備的設計方案。文中首先闡明了整個系統(tǒng)的硬件平臺,然后詳細論述了系統(tǒng)
    發(fā)表于 01-25 15:39 ?59次下載

    觸摸屏在S3C2410上的應用實例

    摘要:給出S3C2410上觸摸屏的實現(xiàn)原理、硬件結構和軟件程序;對軟件進行優(yōu)化,改進軟件濾波的實現(xiàn)方法。其算法使用C語言實現(xiàn),可移植到任
    發(fā)表于 04-07 00:32 ?1467次閱讀
    觸摸屏在<b class='flag-5'>S3C2410</b>上的應用實例

    基于S3C2410的RTC模塊應用設計

    基于S3C2410的RTC模塊應用設計 摘 要:本文簡要介紹了S3C2410嵌入式微處理器,分析了RTC(Real-time clock)硬件構架及其工作
    發(fā)表于 04-08 23:13 ?1596次閱讀
    基于<b class='flag-5'>S3C2410</b>的RTC模塊應用設計

    基于S3C2410和Windows CEnet的智能移動終端設計

    本文介紹 S3C2410 微處理器的性能以及 Windows CE. net 作為嵌入式操作系統(tǒng)的開發(fā)流程 。闡述基于 S3C2410芯片和 Windows CE. net 操作平臺設
    發(fā)表于 04-18 10:46 ?0次下載

    基于S3C2410處理器對Windows CE 5.0操作系統(tǒng)實現(xiàn)BSP移植

    移植基于S3C2410的Windows CE 5.0 BSP,需要分析Windows CE 5.0 及BSP結構。Windows CE 5.0是一款開放的、可升級的32位嵌入式操作系統(tǒng),具有高可靠性
    發(fā)表于 03-06 10:10 ?1024次閱讀
    基于<b class='flag-5'>S3C2410</b>處理器對Windows CE 5.0<b class='flag-5'>操作系統(tǒng)</b><b class='flag-5'>實現(xiàn)</b>BSP移植

    基于Linux操作系統(tǒng)S3C2410微處理器實現(xiàn)GPS實時導航系統(tǒng)的設計

    這里提出一種實用的設計方案,通過對系統(tǒng)的各方面配置,實現(xiàn)GPS實時導航功能。系統(tǒng)主控器件采用韓國Samsung公司生產的ARM核32位RISC微處理器
    發(fā)表于 03-09 10:47 ?1055次閱讀
    基于Linux<b class='flag-5'>操作系統(tǒng)</b>和<b class='flag-5'>S3C2410</b>微處理器<b class='flag-5'>實現(xiàn)</b>GPS實時導航<b class='flag-5'>系統(tǒng)</b>的設計

    基于S3C2410和nRF24LEl的智能家居系統(tǒng)

    基于S3C2410和nRF24LEl的智能家居系統(tǒng)設計。
    發(fā)表于 03-26 10:55 ?14次下載
    基于<b class='flag-5'>S3C2410</b>和nRF24LEl的智能家居<b class='flag-5'>系統(tǒng)</b>