亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        生化分析儀的ARM-SoC控制系統(tǒng)設(shè)計

        2012-12-01 10:08:10張海江黎海文吳一輝于正林
        自動化儀表 2012年3期
        關(guān)鍵詞:下位上位串口

        張海江 黎海文 吳一輝 于正林

        (長春理工大學(xué)機電工程學(xué)院1,吉林 長春 130028;中國科學(xué)院長春光學(xué)精密機械與物理研究所2,吉林 長春 130033)

        0 引言

        生化分析儀是一種集光、機、電、液于一體的大型檢驗設(shè)備,主要用于檢驗人體體液的各項生化指標。目前,關(guān)于這方面的研究主要集中在兩個方面:一是采用較低檔次處理器(單片機)的小型產(chǎn)品,這類產(chǎn)品成本低,但硬件結(jié)構(gòu)復(fù)雜、測試速度慢、人機交互性能差;二是搭配PC上位機的大型產(chǎn)品,這類產(chǎn)品的數(shù)據(jù)存貯和查詢方便,人機交互界面友好,但系統(tǒng)成本較高、體積大、運動控制實時性差[1-3]。針對以上問題,提出基于ARM-雙單片機系統(tǒng)的小型全自動生化分析儀。該方案采用S3C2440A(ARM)為上位機、C8051F060單片機為下位機的雙系統(tǒng)架構(gòu),可實時多任務(wù)并行處理。采用該方案設(shè)計的產(chǎn)品具有成本低、體積小、處理速度快等優(yōu)點,適用于小型全自動生化分析系統(tǒng)。

        1 系統(tǒng)的硬件設(shè)計

        1.1 系統(tǒng)的總體架構(gòu)

        系統(tǒng)框架如圖1所示。

        圖1 系統(tǒng)結(jié)構(gòu)框圖Fig.1 Structure of the system

        由圖1可知,系統(tǒng)由上位機模塊和下位機模塊兩部分組成。

        上位機模塊主要負責(zé)數(shù)據(jù)的分析處理、病人信息的存儲查詢、人機交互和向下位機發(fā)送命令等工作;下位機模塊主要負責(zé)加樣、混合、數(shù)據(jù)采集、轉(zhuǎn)盤轉(zhuǎn)動、清洗系統(tǒng)的控制和接收上位機的命令等工作。上位機模塊與下位機模塊之間采用異步串行通信。為實現(xiàn)多任務(wù)并行處理,下位機模塊采用雙單片機結(jié)構(gòu)。

        系統(tǒng)上位機模塊的核心是三星公司推出的基于ARM920T架構(gòu)的S3C2440A處理器。這是一款專門針對低價格、低功耗、高性能應(yīng)用推出的32位RISC指令集處理器,其最高主頻可達400 MHz,并具有加強的ARM體系內(nèi)存管理單元(memory management unit,MMU),用于支持 WinCE、EPOC32和嵌入式 Linux系統(tǒng)、三通道UART、兩端口USB主機、LCD控制器等豐富的資源。S3C2440A共有130個I/O口和24路外部中斷,足以滿足小型全自動生化分析儀上位機的要求[4]。

        系統(tǒng)下位機模塊的核心采用美國Silab公司的C8051F060單片機。該單片機內(nèi)核采用流水線結(jié)構(gòu),速度比普通的51系列單片機快10倍,其指令和標準系列51單片機兼容,芯片支持在線調(diào)試。片上有64 kB的Flash、4352 B內(nèi)部RAM、59個I/O口;片內(nèi)集成有兩個UART、一個SM(兼容I2C)和一個SPI等豐富的資源,完全滿足下位機的要求[5]。

        為快速完成復(fù)雜的測試動作并縮短測試時間,提出了雙單片機系統(tǒng)的設(shè)計方案。該方案將復(fù)雜的測試動作分配給兩個單片機,其中一個單片機負責(zé)轉(zhuǎn)盤定位和數(shù)據(jù)采集等工作,另一個單片機負責(zé)加樣臂旋轉(zhuǎn)、樣品加樣混合和清洗系統(tǒng)控制等工作。該方案大大提高了測試速度,減輕了單片機的工作任務(wù)。

        下位機采用C8051F060單片機的優(yōu)點主要有以下幾點:單片機實時性好;速度比普通的單片機快,大大提高了測試速度;采用雙單片機結(jié)構(gòu)(兩個下位機),可實現(xiàn)多任務(wù)并行處理,提高了工作效率;上位機與下位機之間采用串口通信傳輸指令與數(shù)據(jù),提高了系統(tǒng)的抗干擾能力。

        1.2 上位機與下位機之間的串口通信

        系統(tǒng)上位機模塊與下位機模塊之間、下位機模塊中兩個單片機之間都采用異步串行通信。在異步通信中,數(shù)據(jù)是以字符為單位組成字符幀進行傳送的。發(fā)送端與接收端分別按字符幀規(guī)定的格式和波特率來協(xié)調(diào)數(shù)據(jù)的發(fā)送和接收。字符幀和波特率可由用戶根據(jù)實際情況選擇。字符幀由起始位、數(shù)據(jù)位、停止位和空閑位四部分組成[6-7]。

        ARM與單片機之間的串口通信電氣連接如圖2所示。ARM與單片機之間使用MAX3232SOP芯片,提高了系統(tǒng)的抗干擾能力和穩(wěn)定性。

        圖2 串口通信電氣連接圖Fig.2 Electrical connections of the serial communications

        2 系統(tǒng)的軟件設(shè)計

        2.1 總體結(jié)構(gòu)

        系統(tǒng)軟件分為上位機程序和下位機程序兩部分。上位機程序部分采用模塊化設(shè)計,由主程序、顯示子程序、數(shù)據(jù)處理子程序和命令發(fā)送接收子程序等部分組成。

        下位機程序部分主要負責(zé)接收上位機命令、加樣、混合、轉(zhuǎn)盤的轉(zhuǎn)動、控制微型光譜儀采集數(shù)據(jù)以及將數(shù)據(jù)發(fā)回給上位機等工作。

        該系統(tǒng)的軟件流程如圖3所示。

        2.2 串口通信

        在系統(tǒng)中,上位機與下位機之間主要通過串口傳送數(shù)據(jù)與命令。因此,串口通信是系統(tǒng)的核心。本系統(tǒng)以嵌入式Linux系統(tǒng)為應(yīng)用平臺,這是由于嵌入式Linux具有內(nèi)核精悍、運行穩(wěn)定所需資源少及支持硬件數(shù)量龐大等優(yōu)點[8]。在嵌入Linux系統(tǒng)中添加串口通信,首先將串口的設(shè)備驅(qū)動程序添加進內(nèi)核,然后編寫測試程序。

        編譯串口設(shè)備文件的內(nèi)核,其主要步驟如下。

        ① 將串口驅(qū)動保存為 serial.c,并保存在目錄linux-2.6.32.2/drivers/char下。

        ② 在 linux-2.6.32.2/drivers/char目錄下,打開Kconfig文件,在文件中添加以下語句:

        ③ 在 linux-2.6.32.2/目錄下執(zhí)行 make menuconfig命令。在出現(xiàn)的界面中,將光標下調(diào)至Device Drivers,按回車鍵進入另一界面。在這個界面中,將光標下調(diào)至Character Devices,按回車鍵進入另一界面。最后用方向鍵選中"Support for Serial(new)",并按空格鍵使該行最前面的符號變?yōu)椋? >(<M>表示為編譯成Module形式,默認<* >為編譯入內(nèi)核)。配置完成后,退出并保存。

        ④ 在 linux-2.6.32.2/drivers/char目錄下,修改Makefile文件,添加如下語句并保存。

        obj-$(SERIAL_NAME)+=serial.o

        ⑤最后執(zhí)行命令make zImage生成內(nèi)核文件。

        編寫串口測試程序,其主要步驟如下。

        ①使用open()函數(shù)打開串口設(shè)備文件。CommFd=open(DeviceName,O_RDWR,0),其中DeviceName為串口設(shè)備名。

        ②設(shè)置串口,TryATttr為存儲串口設(shè)置參數(shù)的結(jié)構(gòu)體名稱,設(shè)置波特率、數(shù)據(jù)位、停止位、奇偶校驗位等相關(guān)參數(shù),然后使用下面的函數(shù)進行設(shè)置:tcsetattr(CommFd,TCSANOW,&TtyAttr)。

        ③ 使用read()、write()函數(shù)對串口進行讀寫。

        ④最后關(guān)閉串口設(shè)備文件,與關(guān)閉其他設(shè)備文件相同,使用close()函數(shù),close(CommFd)。

        至此,上位機模塊中含有串口驅(qū)動的內(nèi)核以及測試程序全部完成。

        2.3 應(yīng)用程序的實現(xiàn)

        友好的人機交互界面簡化了復(fù)雜的操作,降低了操作人員的工作強度,提高了自動化水平。上位機系統(tǒng)軟件結(jié)構(gòu)如圖4所示。

        圖4 上位機系統(tǒng)軟件結(jié)構(gòu)圖Fig.4 Software structure of the host computer system

        系統(tǒng)采用嵌入式Linux作為操作系統(tǒng),管理軟硬件資源;采用QT/E來完成對圖形化界面和應(yīng)用程序的開發(fā)。QT/E是挪威Trolltech公司專門為嵌入式系統(tǒng)開發(fā)的基于C++的應(yīng)用框架和窗口系統(tǒng),它可在含有ARM處理器的嵌入式Linux操作系統(tǒng)跨平臺運行,且支持多線程編程[9]。

        該應(yīng)用程序主要分為參數(shù)的讀取與設(shè)置、命令的發(fā)送與接收、數(shù)據(jù)接收與處理、結(jié)果的顯示與查詢四大部分。首先使用 QT Creator界面,然后遵循 Qt/Embedded編程一般規(guī)則編寫代碼,最后編譯并通過網(wǎng)絡(luò)文件系統(tǒng)(network file system,NFS)進行板上測試。

        由于圖形用戶界面應(yīng)用程序都只有一個執(zhí)行線程,且一次只執(zhí)行一個操作。而系統(tǒng)中的數(shù)據(jù)處理或串口通信都是較耗時的操作。當這些操作被執(zhí)行時,雖然實際上該操作正在進行,但用戶界面通常會被凍結(jié)而不再響應(yīng)。在QT/E應(yīng)用程序中,子類化QThread并重新實現(xiàn)它的run()函數(shù),實現(xiàn)多線程,從而解決以上問題[10]。根據(jù)系統(tǒng)要求,創(chuàng)建兩個新的線程類,分別用于與兩個下位機進行通信。創(chuàng)建語句如下。

        class Thread_master_SCM:public QThread;

        class Thread_slave_SCM:public QThread;

        兩個線程類在主界面類MainWindow類中創(chuàng)建對象,線程創(chuàng)建后通過QThread::run()函數(shù)開始執(zhí)行。要實現(xiàn)兩個不同的線程對共有數(shù)據(jù)的互斥訪問,還需使用互斥鎖QMutex mutex來進行線程間的協(xié)調(diào)與同步工作。

        3 結(jié)束語

        針對小型全自動生化分析儀產(chǎn)品體積小、處理速度快以及人機交互友好等需求,提出了基于ARM-雙單片機系統(tǒng)的設(shè)計方法。該系統(tǒng)采用以ARM為上位機、單片機為下位機的雙系統(tǒng)架構(gòu),提高了測試速度與測試效率。在上下位機之間使用串口傳送數(shù)據(jù)與命令,增強了系統(tǒng)的抗干擾能力。上位機系統(tǒng)模塊采用嵌入式Linux系統(tǒng)為操作系統(tǒng),應(yīng)用程序使用QT/E開發(fā),并使用液晶觸摸屏使人機交互更加方便快捷。試驗結(jié)果表明,控制系統(tǒng)人機交互方便快捷、運動控制實時性好、運算處理能力強、性能穩(wěn)定可靠。

        [1]錢超.全自動生化分析儀機械系統(tǒng)研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2009.

        [2]陳東.基于嵌入式Linux的全自動生化分析儀的研究與設(shè)計[D].長沙:湖南大學(xué),2006.

        [3]吳海波.全自動生化分析儀電子控制系統(tǒng)的設(shè)計與實現(xiàn)[D].沈陽:東北大學(xué),2006.

        [4]侯冬晴.基于ARM9的指紋識別器的設(shè)計[J].自動化儀表,2007,28(11):29 -31.

        [5]潘琢金,施國君.C8051FXXX高速SOC單片機原理及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2002.

        [6]張洪輝,黎海文,高春海,等.面向小型全自動生化分析儀的同步可靠的 UART 通信[J].電子技術(shù)應(yīng)用,2010,36(1):128-131.

        [7]莫易敏,覃君愷.應(yīng)用ARM920T的S3C2410A與PC間的異步串行通信設(shè)計[J].現(xiàn)代制造工程,2008(6):96-98.

        [8]陳佳男,李欣,張海燕.基于ARM+Linux的異步串行通信設(shè)計[J].微計算機信息,2009,25(3):139 -140.

        [9]岑海洪,楊艷娟.基于ARM和Linux的注塑機上位控制器設(shè)計[J].工業(yè)儀表與自動化裝置,2010(6):23-26.

        [10]Jasmin Blanchette,Mark Summerfield++GUI Programming with QT 4[M].2nd edition.閆鋒欣,譯.北京:電子工業(yè)出版社,2008:255-269.

        猜你喜歡
        下位上位串口
        淺談AB PLC串口跟RFID傳感器的通訊應(yīng)用
        發(fā)射機房監(jiān)控系統(tǒng)之下位機
        特斯拉 風(fēng)云之老阿姨上位
        車迷(2018年12期)2018-07-26 00:42:22
        “三扶”齊上位 決戰(zhàn)必打贏
        基于ZigBee和VC上位機的教室智能監(jiān)測管理系統(tǒng)
        景洪電廠監(jiān)控系統(tǒng)下位機數(shù)據(jù)傳輸網(wǎng)絡(luò)改造
        圍觀黨“下位”,吐槽帝“登基”
        北京紀事(2016年5期)2016-05-07 13:17:02
        USB接口的多串口數(shù)據(jù)并行接收方法探索
        基于藍牙串口適配器的GPS接收機與AutoCAD的實時無線通信
        地礦測繪(2015年3期)2015-12-22 06:27:26
        以新思路促推現(xiàn)代農(nóng)業(yè)上位
        国产成人美女AV| 色狠狠色噜噜av天堂一区| 看全色黄大色大片免费久久| 中文字幕国产91| 久久久久成人亚洲综合精品 | 中文www新版资源在线| 最新国产乱视频伦在线| 国产精品久久一区性色a| 日本一级二级三级不卡| 亚洲字幕av一区二区三区四区| 护士奶头又白又大又好摸视频| 精选麻豆国产AV| 日本熟妇免费一区二区三区| 国产精品自产拍在线18禁| 99在线精品视频在线观看| 亚洲av无码一区二区乱子伦as| 日本韩国三级aⅴ在线观看| 人日本中文字幕免费精品| av无码国产在线看免费网站| 国产亚洲精品第一综合麻豆| 精品国产爱在线观看| 中文字幕在线乱码亚洲| 人妻少妇精品视频专区| 日韩中文字幕欧美亚洲第一区| 精品中文字幕手机在线| 亚洲综合中文字幕综合| 国产精品免费精品自在线观看| 51精品视频一区二区三区| 白色白色白色在线观看视频| 欧美激情肉欲高潮视频| 中文亚洲欧美日韩无线码| 午夜亚洲AV成人无码国产| 中文字幕久久国产精品| 九九在线中文字幕无码| 精品少妇ay一区二区三区| 国产精彩视频| 国产亚洲日本精品二区| 疯狂做受xxxx高潮视频免费| 在线观看免费午夜大片| 国内精品福利在线视频| 青青草免费在线视频久草 |