欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

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

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

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

由下位機(jī)、傳輸網(wǎng)絡(luò)和上位機(jī)組成的環(huán)境監(jiān)控系統(tǒng)的設(shè)計(jì)方案

電子工程師 ? 來源:網(wǎng)絡(luò)整理 ? 作者:佚名 ? 2018-02-11 14:28 ? 次閱讀

為提高環(huán)境監(jiān)控系統(tǒng)的穩(wěn)定性,節(jié)約系統(tǒng)資源,提出了一種由下位機(jī)、傳輸網(wǎng)絡(luò)上位機(jī)組成的環(huán)境監(jiān)控系統(tǒng)的設(shè)計(jì)方案,詳細(xì)介紹了該系統(tǒng)中下位機(jī)的硬件及軟件設(shè)計(jì)。該下位機(jī)硬件以ARM9處理器S3C2410為核心,軟件采用多線程應(yīng)用程序同時(shí)處理多個(gè)任務(wù),并采用信號(hào)量和互斥量實(shí)現(xiàn)線程間的同步。實(shí)際應(yīng)用表明,該系統(tǒng)運(yùn)行穩(wěn)定,提高了系統(tǒng)效率。

0引言

隨著國(guó)民經(jīng)濟(jì)及工業(yè)技術(shù)的發(fā)展,環(huán)境保護(hù)越來越受到重視。現(xiàn)在市場(chǎng)上已經(jīng)出現(xiàn)了多種環(huán)境監(jiān)控系統(tǒng),但性能不穩(wěn)定?,F(xiàn)場(chǎng)監(jiān)控終端大多采用工控機(jī)或單片機(jī),前者抗干擾性能好,但成本較高;后者處理能力低,人機(jī)界面不友好,不利于現(xiàn)場(chǎng)人員的監(jiān)控管理。針對(duì)上述問題,筆者設(shè)計(jì)了一種基于多線程的環(huán)境監(jiān)控系統(tǒng)。該系統(tǒng)采用多線程技術(shù)有效地實(shí)現(xiàn)了監(jiān)控過程中數(shù)據(jù)的采集與存儲(chǔ)、實(shí)時(shí)數(shù)據(jù)顯示、下位機(jī)(監(jiān)控終端)與上位機(jī)(監(jiān)控中心)的通信、實(shí)時(shí)報(bào)警等功能。本文重點(diǎn)介紹該系統(tǒng)下位機(jī)的設(shè)計(jì)。

1系統(tǒng)總體結(jié)構(gòu)

基于多線程的環(huán)境監(jiān)控系統(tǒng)由現(xiàn)場(chǎng)監(jiān)控終端(下位機(jī))、傳輸網(wǎng)絡(luò)、監(jiān)控中心(上位機(jī))3個(gè)部分組成,其結(jié)構(gòu)如圖1所示。


圖1基于多線程的環(huán)境監(jiān)控系統(tǒng)結(jié)構(gòu)

下位機(jī)是一個(gè)基于A RM9的嵌入式系統(tǒng),用于定時(shí)采集、處理、存儲(chǔ)被監(jiān)測(cè)的特征數(shù)據(jù)。經(jīng)過下位機(jī)處理后的數(shù)據(jù),按照相關(guān)協(xié)議,經(jīng)GPRS模塊發(fā)送給上位機(jī)。上位機(jī)由一臺(tái)PC機(jī)擔(dān)任,負(fù)責(zé)接收多個(gè)下位機(jī)發(fā)送的數(shù)據(jù),并對(duì)這些數(shù)據(jù)進(jìn)行分析、處理和顯示。環(huán)保部門可通過上位機(jī)監(jiān)控其轄區(qū)內(nèi)的污染排放狀況。上位機(jī)基于VB. NET開發(fā)。

2下位機(jī)硬件設(shè)計(jì)

下位機(jī)的硬件核心部分由S3C2410、NandFLASH和SDRAM組成,如圖2所示。S3C2410是三星公司生產(chǎn)的一款基于ARM920T內(nèi)核的32位RISC嵌入式微處理器,帶有獨(dú)立的16 KB指令Cache和16 KB數(shù)據(jù)Cache、LCD控制器、RAM控制器、N and FLASH控制器、并行I/ O口、8路10位ADC,其運(yùn)行頻率可達(dá)203 MHz.8位64 MB的Nand FLASH選用的芯片為K9F1208, 64 MB的SDRAM由2片HY57V561620組成。下位機(jī)通過以太網(wǎng)控制器CS8900A擴(kuò)展了一個(gè)網(wǎng)口,數(shù)據(jù)既可以通過無線傳輸,也可以通過有線傳輸;通過I/ O接口擴(kuò)展了8個(gè)DI口(數(shù)字量輸入)、4個(gè)AI口(模擬量輸入)、4個(gè)DO口(數(shù)字量輸出),下位機(jī)通過這些接口與被監(jiān)控設(shè)備通信。


圖2下位機(jī)硬件組成

3下位機(jī)的需求與結(jié)構(gòu)設(shè)計(jì)

下位機(jī)定時(shí)采集、處理現(xiàn)場(chǎng)數(shù)據(jù),并存儲(chǔ)在數(shù)據(jù)庫(kù)中,把實(shí)時(shí)數(shù)據(jù)發(fā)送給上位機(jī),并響應(yīng)上位機(jī)發(fā)送的控制命令。因此,下位機(jī)需要同時(shí)處理多個(gè)任務(wù),這些任務(wù)并發(fā)執(zhí)行。若使用單線程來完成這些任務(wù),則需要使用多個(gè)定時(shí)器來觸發(fā),而過多的定時(shí)器會(huì)導(dǎo)致系統(tǒng)不穩(wěn)定。Window s是搶先式多任務(wù)的操作系統(tǒng),啟動(dòng)了一個(gè)應(yīng)用程序就等于啟動(dòng)了一個(gè)進(jìn)程。一個(gè)進(jìn)程通常擁有一個(gè)線程,在系統(tǒng)資源管理中,每一個(gè)線程被分配一定的時(shí)間片。采用多線程的設(shè)計(jì)方法可以使程序擁有多個(gè)線程,這樣程序就能同時(shí)處理更多的任務(wù)。因此,若使用多個(gè)進(jìn)程來協(xié)作完成,能避免上述缺點(diǎn)且系統(tǒng)比較穩(wěn)定,但系統(tǒng)對(duì)進(jìn)程的頻繁調(diào)度會(huì)占用過多資源,程序的可讀性也不好。

筆者采用一種并行的、多線程方案能夠很好地處理多個(gè)任務(wù),并充分節(jié)約系統(tǒng)資源。該方案中,下位機(jī)有5個(gè)線程:GU I線程、復(fù)位線程、數(shù)據(jù)采集與存儲(chǔ)線程、網(wǎng)絡(luò)通信線程、決策線程。其中GU I線程為主線程,負(fù)責(zé)界面處理、系統(tǒng)數(shù)據(jù)的初始化以及創(chuàng)建子線程等任務(wù);復(fù)位線程、數(shù)據(jù)采集與存儲(chǔ)線程、網(wǎng)絡(luò)通信線程是后臺(tái)的工作線程,通過優(yōu)先級(jí)調(diào)度、線程同步等機(jī)制保證能可靠執(zhí)行現(xiàn)場(chǎng)數(shù)據(jù)采集、存儲(chǔ)、發(fā)送、顯示等任務(wù)。復(fù)位線程在啟動(dòng)后循環(huán)地對(duì)看門狗操作,不作為任務(wù)處理線程。任務(wù)線程之間的關(guān)系如圖3所示。


圖3任務(wù)線程之間的關(guān)系

4多線程技術(shù)在系統(tǒng)中的應(yīng)用

4. 1線程的創(chuàng)建

Linux環(huán)境下,使用pthread_cr eate()函數(shù)創(chuàng)建一個(gè)新線程,默認(rèn)情況下主線程會(huì)等待被創(chuàng)建的子線程執(zhí)行結(jié)束,得到子線程的返回結(jié)果然后再繼續(xù)往后執(zhí)行。實(shí)時(shí)監(jiān)控程序的子線程都是循環(huán)執(zhí)行的,不需要運(yùn)行結(jié)束后歸并到主線程中,需設(shè)置其屬性為PT HREAD _ CREATE _DETACHED.根據(jù)子線程的重要性進(jìn)行優(yōu)先級(jí)設(shè)置,確保重要線程優(yōu)先執(zhí)行。子線程的優(yōu)先級(jí)從高到低依次為復(fù)位線程、數(shù)據(jù)采集與存儲(chǔ)線程、決策線程、網(wǎng)絡(luò)通信線程。

線程的創(chuàng)建、設(shè)置偽代碼如下:

void * thr ead_wat chdog(void * arg); / /復(fù)位線程函數(shù)

void * thr ead_collect ion(void * arg); / /數(shù)據(jù)采集與存儲(chǔ)線程函數(shù)

void * thr ead_communi cat ion(void * arg); / /網(wǎng)絡(luò)通信線程函數(shù)

void * thr ead_decis e(void * arg); / /決策線程函數(shù)

int dat a[ 12] ; / /數(shù)據(jù)緩沖區(qū),用于存放線程間共享的數(shù)據(jù)函數(shù)

main()

{

/ /初始化工作

……

pthread_t wat chd og; / /線程號(hào)

pthread_t collect ion;

pthread_t commun ication;

pthread_t deci se;

pthread_at t r_init(); / /初始化線程屬性

pthread_at t r_setdetach st at e(); / /不對(duì)線程進(jìn)行重新歸并

pthread_at t r_set s ched param(); / /設(shè)置線程的優(yōu)先級(jí)

sem_init(); / /對(duì)相關(guān)信號(hào)量進(jìn)行初始化

pth read_creat e(); / /創(chuàng)建新線程

/ /啟動(dòng)GUI程序

……

}

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

    關(guān)注

    21

    文章

    3941

    瀏覽量

    177143
  • 上位機(jī)
    +關(guān)注

    關(guān)注

    27

    文章

    945

    瀏覽量

    55027
  • 下位機(jī)
    +關(guān)注

    關(guān)注

    0

    文章

    94

    瀏覽量

    18828
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    地鐵傳輸網(wǎng)擴(kuò)容改造解決方案

    地鐵OTN傳輸系統(tǒng) 目前,地鐵和其他軌道交通通信傳輸系統(tǒng)的技術(shù)方案主要有:開放式傳輸網(wǎng)絡(luò)(OTN
    發(fā)表于 10-26 11:29

    上位機(jī)下位機(jī)數(shù)據(jù)同步完整傳輸

    實(shí)現(xiàn)了 下位機(jī)先采集數(shù)據(jù),上位機(jī)發(fā)送指令給下位機(jī)接收并讀取后,下位
    發(fā)表于 08-17 17:01

    基于通信電源的監(jiān)控系統(tǒng)組網(wǎng)方案

    (SS—Supervision Station)和監(jiān)控單元(SU—Supervision Unit)。對(duì)于通信電源監(jiān)控系統(tǒng)來說,沒有必要設(shè)置監(jiān)控中心,因此可以簡(jiǎn)化為兩級(jí)集散式結(jié)構(gòu),
    發(fā)表于 09-26 17:33

    基于無線傳感器網(wǎng)絡(luò)的溫室環(huán)境監(jiān)控系統(tǒng)設(shè)計(jì)

    ,形成傳輸方便,減少布線的無線網(wǎng)絡(luò)系統(tǒng)還使用了GPRS收發(fā)裝置,可以完成溫室數(shù)據(jù)與上位機(jī)之間的無線交換信息和數(shù)據(jù)處理。
    發(fā)表于 11-06 15:47

    下位機(jī)與遠(yuǎn)程監(jiān)控主機(jī)怎么實(shí)現(xiàn)網(wǎng)絡(luò)通信?

    針對(duì)傳統(tǒng)遠(yuǎn)程通信方式在嵌入式監(jiān)控系統(tǒng)中的低速、傳輸距離短、布線復(fù)雜等問題,提出了一種基于ZigBee與μIP協(xié)議棧的嵌入式網(wǎng)絡(luò)監(jiān)控
    發(fā)表于 08-27 07:20

    ETest_RT系統(tǒng)哪些部分組成

    1.設(shè)備組成ETest_RT系統(tǒng)主要由硬件部分與軟件部分組成。硬件部分由上位機(jī)和實(shí)時(shí)下位
    發(fā)表于 12-17 08:04

    什么是上位機(jī),什么是下位機(jī)

    上位機(jī)發(fā)出的命令首先給下位機(jī),下位機(jī)再根據(jù)此命令解釋成相應(yīng)時(shí)序信號(hào)直接控制相應(yīng)設(shè)備。
    的頭像 發(fā)表于 03-23 10:11 ?2w次閱讀
    什么是<b class='flag-5'>上位</b><b class='flag-5'>機(jī)</b>,什么是<b class='flag-5'>下位</b><b class='flag-5'>機(jī)</b>?

    上位機(jī)下位機(jī)的區(qū)別

    上位機(jī)下位機(jī)的區(qū)別 一、區(qū)別 1)上位機(jī):系統(tǒng)中起
    發(fā)表于 04-26 14:32 ?5079次閱讀

    軟件上位機(jī)下位機(jī)的區(qū)別

    軟件上位機(jī)下位機(jī)的區(qū)別 一、區(qū)別 1)上位機(jī):系統(tǒng)
    發(fā)表于 06-05 11:02 ?2643次閱讀

    上位機(jī)下位機(jī)是什么意思

    上位機(jī)下位機(jī)是什么意思 上位機(jī)的意思是指可以直接發(fā)出操控命令的計(jì)算機(jī),一般是PC/host c
    發(fā)表于 06-05 11:09 ?4707次閱讀

    基于Modbus協(xié)議的程控電源的上位機(jī)監(jiān)控系統(tǒng)設(shè)計(jì)方案

    電子發(fā)燒友網(wǎng)站提供《基于Modbus協(xié)議的程控電源的上位機(jī)監(jiān)控系統(tǒng)設(shè)計(jì)方案.pdf》資料免費(fèi)下載
    發(fā)表于 11-06 11:33 ?3次下載
    基于Modbus協(xié)議的程控電源的<b class='flag-5'>上位</b><b class='flag-5'>機(jī)</b><b class='flag-5'>監(jiān)控</b><b class='flag-5'>系統(tǒng)</b><b class='flag-5'>設(shè)計(jì)方案</b>

    上位機(jī)下位機(jī)關(guān)系示意圖

    上位機(jī)(Host)和下位機(jī)(Slave)是指在計(jì)算機(jī)控制系統(tǒng)中的兩個(gè)或多個(gè)主要組成部分。通常,
    的頭像 發(fā)表于 03-05 16:22 ?1983次閱讀
    <b class='flag-5'>上位</b><b class='flag-5'>機(jī)</b>與<b class='flag-5'>下位</b>機(jī)關(guān)系示意圖

    上位機(jī)下位機(jī)是什么意思 上位機(jī)下位機(jī)的區(qū)別

    上位機(jī)下位機(jī)是計(jì)算機(jī)控制系統(tǒng)中兩個(gè)重要的概念,它們?cè)诳刂?、通信和?shù)據(jù)處理等方面發(fā)揮著關(guān)鍵作用。在本文中,我們將詳細(xì)探討
    的頭像 發(fā)表于 06-06 10:11 ?6382次閱讀

    上位機(jī)下位機(jī)之間的通訊方式

      在工業(yè)自動(dòng)化、數(shù)據(jù)處理和控制系統(tǒng)等領(lǐng)域中,上位機(jī)下位機(jī)之間的通訊是確保系統(tǒng)高效、穩(wěn)定運(yùn)行的
    的頭像 發(fā)表于 06-06 11:23 ?4872次閱讀

    上位機(jī)系統(tǒng)架構(gòu)分析 上位機(jī)下位機(jī)的區(qū)別

    和邏輯判斷。上位機(jī)的主要作用包括: 數(shù)據(jù)采集與處理:從下位機(jī)或其他傳感器收集數(shù)據(jù),并進(jìn)行分析和處理。 用戶界面:提供用戶界面,允許操作人員監(jiān)控
    的頭像 發(fā)表于 12-04 10:17 ?1146次閱讀