• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 嵌入式系統(tǒng)在曙光4000A大規(guī)模機(jī)群監(jiān)控系統(tǒng)中的應(yīng)用

    嵌入式系統(tǒng)在曙光4000A大規(guī)模機(jī)群監(jiān)控系統(tǒng)中的應(yīng)用

    作者: 時(shí)間:2009-04-02 來(lái)源:網(wǎng)絡(luò) 收藏

      對(duì)于采集卡主芯片的選擇,由于需要支持TCP/IP網(wǎng)絡(luò),需要支持IIC接口,同時(shí)還可以支持內(nèi)存控制以及Flash控制器,因此選擇了三星公司的ARM芯片S3C4510B,該芯片采用ARM7TDI內(nèi)核,32位RISC架構(gòu)。對(duì)于操作的選擇,uClinux具有免費(fèi)、開(kāi)源、可裁減性好、對(duì)TCP/IP網(wǎng)絡(luò)協(xié)議支持的較好并且穩(wěn)定性高等優(yōu)點(diǎn),因此選擇uClinux作為操作。同時(shí)由于IIC總線(xiàn)技術(shù)有連接簡(jiǎn)單、數(shù)據(jù)傳輸速率高、高可靠性等優(yōu)點(diǎn),所以采集卡的主芯片和采集單片機(jī)使用IIC總線(xiàn)相連。

      2.2 采集卡(多路器)的功能

      采集卡的主要作用,一方面是從與每組節(jié)點(diǎn)機(jī)相連的采集單片機(jī)中通過(guò)IIC總線(xiàn)讀取節(jié)點(diǎn)機(jī)的信息,另一方面監(jiān)聽(tīng)自身的事先約定的端口,當(dāng)有連接請(qǐng)求并收到發(fā)送數(shù)據(jù)的命令后送出從采集卡中讀取的數(shù)據(jù)。硬件上已經(jīng)有了IIC和網(wǎng)絡(luò)接口,軟件方面,可以從網(wǎng)上資源中獲取S3C4510B芯片的IIC控制器和網(wǎng)絡(luò)驅(qū)動(dòng)程序,然后集成到uClinux操作中。此外還需要一段采集程序?qū)崿F(xiàn)系統(tǒng)的主要功能。

      采集程序根據(jù)系統(tǒng)需要的功能,分為兩個(gè)部分,一部分定時(shí)從IIC總線(xiàn)讀取數(shù)據(jù),另一部分監(jiān)聽(tīng)某個(gè)約定端口、收取命令并發(fā)送數(shù)據(jù)。這兩個(gè)部分分別由兩個(gè)線(xiàn)程來(lái)執(zhí)行。兩個(gè)線(xiàn)程共享同一塊數(shù)據(jù)緩沖區(qū)。線(xiàn)程一通過(guò)IIC總線(xiàn)讀取采集卡中的數(shù)據(jù),寫(xiě)入緩沖區(qū)中,線(xiàn)程二一方面讀取緩沖區(qū)中的數(shù)據(jù)發(fā)送,另一方面在發(fā)送完畢后,把已經(jīng)發(fā)送了的緩沖區(qū)填寫(xiě)為無(wú)效數(shù)據(jù)。由于數(shù)據(jù)緩沖區(qū)屬于臨界區(qū)域,這兩個(gè)線(xiàn)程在使用緩沖區(qū)的時(shí)候要嚴(yán)格互斥。

      程序的主體結(jié)構(gòu)如下:

      read_iic(){ //線(xiàn)程一運(yùn)行的函數(shù)

      打開(kāi)iic設(shè)備;

      while(1) {

      讀取iic設(shè)備的數(shù)據(jù);

      寫(xiě)入全局緩沖區(qū)中;

      休眠一定的時(shí)間;

      }

      }

      send_data() { //線(xiàn)程二運(yùn)行的函數(shù)

      綁定本地端口;

      監(jiān)聽(tīng)本地端口;

      while(1) {

      收到命令;

      發(fā)送全局緩沖區(qū)中的數(shù)據(jù);

      填寫(xiě)無(wú)效數(shù)據(jù);

      }

      }

      main() {

      初始化全局緩沖區(qū);

      創(chuàng)建線(xiàn)程一;

      創(chuàng)建線(xiàn)程二;

      }

      2.3 運(yùn)行情況以及發(fā)展方向

      在實(shí)際運(yùn)行1周后,集群運(yùn)行狀況良好,其中采集卡功能良好,在規(guī)定的延遲內(nèi)數(shù)據(jù)傳輸流暢,沒(méi)有出現(xiàn)數(shù)據(jù)漏傳、丟失等現(xiàn)象,說(shuō)明中的運(yùn)行很穩(wěn)定,發(fā)揮了預(yù)期的作用。

      在將來(lái)的升級(jí)工作中,可以考慮在這個(gè)采集卡中加入嵌入式數(shù)據(jù)庫(kù)技術(shù),把收到的數(shù)據(jù)存儲(chǔ)起來(lái),并且和uClinux提供的Web服務(wù)結(jié)合,在Web服務(wù)中顯示監(jiān)控系統(tǒng)的數(shù)據(jù),這樣就可以在任何一臺(tái)機(jī)器上以瀏覽網(wǎng)頁(yè)的形式監(jiān)控整個(gè)集群,從而節(jié)省了監(jiān)控節(jié)點(diǎn)的開(kāi)銷(xiāo),提高了采集卡的利用率。

    三:結(jié)束語(yǔ)

      體積小、靈活性高,已經(jīng)被到各行各業(yè),例如汽車(chē)、家電、航空、精密儀器等等。本文介紹的監(jiān)控系統(tǒng)中的,結(jié)合了ARM技術(shù)、IIC總線(xiàn)技術(shù),采用了uClinux嵌入式操作系統(tǒng),體積小、可擴(kuò)展性好、成本低,數(shù)據(jù)流向清晰明確,現(xiàn)在已經(jīng)作為配套產(chǎn)品提供給用戶(hù)。

    linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)

    上一頁(yè) 1 2 下一頁(yè)

    評(píng)論


    相關(guān)推薦

    技術(shù)專(zhuān)區(qū)

    關(guān)閉
    主站蜘蛛池模板: 渭南市| 丽水市| 衡东县| 乌审旗| 平南县| 昂仁县| 梨树县| 孟村| 东方市| 岢岚县| 贺州市| 梁平县| 麦盖提县| 通河县| 甘洛县| 公安县| 沙河市| 钟祥市| 恩施市| 庄河市| 宣武区| 虎林市| 新巴尔虎右旗| 宜黄县| 永泰县| 固镇县| 泗阳县| 志丹县| 镇远县| 三门峡市| 武川县| 延吉市| 岳普湖县| 印江| 崇礼县| 新丰县| 永吉县| 安徽省| 读书| 巴彦县| 山丹县|