主機(jī)工作狀態(tài)的監(jiān)測(cè)系統(tǒng)和監(jiān)測(cè)方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及工業(yè)控制領(lǐng)域,特別是涉及一種主機(jī)工作狀態(tài)的監(jiān)測(cè)系統(tǒng)和監(jiān)測(cè)方 法。
【背景技術(shù)】
[0002] 在工業(yè)控制領(lǐng)域,使用的主機(jī)(即工控機(jī))很少用到顯示接口、鼠標(biāo)、鍵盤(pán)等外圍設(shè) 備,甚至并沒(méi)有這些外圍設(shè)備,因此,很多情況下,主機(jī)處于無(wú)顯示器等輸出設(shè)備顯示的工 作狀態(tài)。為了解決工控主機(jī)在無(wú)輸出設(shè)備顯示的工作情況下查看工控主機(jī)的工作狀態(tài),目 前主要采用的方法是應(yīng)用程序運(yùn)行在操作系統(tǒng)上,對(duì)硬件系統(tǒng)和軟件系統(tǒng)信息采集后,將 數(shù)據(jù)發(fā)送給顯示器進(jìn)行顯示。然而該種方法存在以下缺點(diǎn):
[0003] 1)需要在操作系統(tǒng)上運(yùn)行信息采集應(yīng)用程序,會(huì)占有一定的CPU(Central ProcessingUnit,中央處理器)和內(nèi)存資源;
[0004] 2)由于在操作系統(tǒng)上訪問(wèn)硬件需要向操作系統(tǒng)申請(qǐng),可能會(huì)出現(xiàn)申請(qǐng)不成功導(dǎo)致 硬件信息采集時(shí)無(wú)法正常獲取的問(wèn)題;
[0005] 3)工控主機(jī)因開(kāi)關(guān)機(jī)或調(diào)試等情況,使得沒(méi)有在既定的操作系統(tǒng)上工作時(shí),應(yīng)用 程序無(wú)法運(yùn)行,導(dǎo)致監(jiān)測(cè)失效。
【發(fā)明內(nèi)容】
[0006] 基于此,有必要針對(duì)現(xiàn)有采用在操作系統(tǒng)上運(yùn)行應(yīng)用程序監(jiān)測(cè)主機(jī)工作狀態(tài)而占 有系統(tǒng)資源和可能存在監(jiān)測(cè)失效的問(wèn)題,提供一種能節(jié)省系統(tǒng)資源且能避免監(jiān)測(cè)失效的主 機(jī)工作狀態(tài)的監(jiān)測(cè)系統(tǒng)和方法。
[0007] -種主機(jī)工作狀態(tài)的監(jiān)測(cè)系統(tǒng),包括:
[0008] 輸入模塊,用于獲取用戶輸入的指令;
[0009] 處理模塊,與所述輸入模塊相連,用于解析輸入模塊的輸入指令,通過(guò)總線監(jiān)測(cè)主 機(jī),獲取所述主機(jī)當(dāng)前工作狀態(tài)的數(shù)據(jù)信息,并將所述的數(shù)據(jù)信息傳輸給顯示模塊;
[0010] 所述顯示模塊與所述處理模塊相連,用于顯示處理模塊所要顯示輸出的數(shù)據(jù)信 肩、。
[0011] 在其中一個(gè)實(shí)施例中,所述輸入模塊還用于選擇用戶所需的顯示模式;所述顯示 模塊還用于根據(jù)所述顯示模式顯示所述處理模塊所要顯示輸出的數(shù)據(jù)信息。
[0012] 在其中一個(gè)實(shí)施例中,所述顯不模式包括信息滾動(dòng)模式和信息固定模式。
[0013] 在其中一個(gè)實(shí)施例中,所述總線為能與傳感器進(jìn)行數(shù)據(jù)通訊的數(shù)據(jù)總線中任意一 種。
[0014] 在其中一個(gè)實(shí)施例中,所述處理模塊為微型處理器、ARM、FPGA或CPLD;
[0015] 在其中一個(gè)實(shí)施例中,通過(guò)所述微型處理器、ARM、FPGA或CPLD的兩根可編程引腳 模擬出所述總線,通過(guò)所述模擬的總線與所述主機(jī)通訊,獲取當(dāng)前所述主機(jī)工作狀態(tài)的數(shù) 據(jù)信息。
[0016] 一種主機(jī)工作狀態(tài)的監(jiān)測(cè)方法,包括:
[0017] 獲取用戶輸入的指令;
[0018] 解析輸入指令,通過(guò)總線監(jiān)測(cè)主機(jī),獲取所述主機(jī)當(dāng)前工作狀態(tài)的數(shù)據(jù)信息;
[0019] 顯示所要顯示輸出的數(shù)據(jù)信息。
[0020] 在其中一個(gè)實(shí)施例中,所述獲取用戶輸入的指令包括:
[0021] 獲取用戶選擇的顯示模式,所述顯示模式包括信息滾動(dòng)模式和信息固定模式;
[0022] 所述顯示所要顯示輸出的數(shù)據(jù)信息的步驟包括:
[0023] 根據(jù)所述顯示模式顯示所要顯示輸出的數(shù)據(jù)信息。
[0024] 在其中一個(gè)實(shí)施例中,所述總線為能與傳感器進(jìn)行數(shù)據(jù)通訊的數(shù)據(jù)總線中任意一 種;
[0025] 所述解析指令,通過(guò)總線監(jiān)測(cè)主機(jī),獲取所述主機(jī)的當(dāng)前工作狀態(tài)的數(shù)據(jù)信息的 步驟包括:
[0026] 解析輸入指令,通過(guò)能與傳感器進(jìn)行數(shù)據(jù)通訊的數(shù)據(jù)總線中任意一種總線監(jiān)測(cè)主 機(jī),并獲取所述主機(jī)當(dāng)前工作狀態(tài)的數(shù)據(jù)信息。
[0027] 在其中一個(gè)實(shí)施例中,所述總線為通過(guò)微型處理器、ARM、FPGA或CPLD的兩根可編 程引腳模擬出所述總線。
[0028] 上述主機(jī)工作狀態(tài)的監(jiān)測(cè)系統(tǒng)和監(jiān)測(cè)方法,根據(jù)輸入的指令獲取主機(jī)的當(dāng)前工作 狀態(tài),并顯示當(dāng)前工作狀態(tài)的數(shù)據(jù)信息,因監(jiān)測(cè)系統(tǒng)獨(dú)立于主機(jī),如此不管主機(jī)處于何種工 作情況,只要主機(jī)是一部可正常使用的設(shè)備且處于正常開(kāi)機(jī)狀態(tài)時(shí),即可實(shí)時(shí)進(jìn)行監(jiān)測(cè),且 不會(huì)占有主機(jī)的系統(tǒng)資源,通過(guò)總線與主機(jī)相連即可使用,使用方便。
【附圖說(shuō)明】
[0029] 圖1為一個(gè)實(shí)施例中主機(jī)工作狀態(tài)的監(jiān)測(cè)系統(tǒng)的結(jié)構(gòu)框圖;
[0030] 圖2為一個(gè)實(shí)施例中主機(jī)工作狀態(tài)的監(jiān)測(cè)方法的流程圖;
[0031] 圖3為MCU通過(guò)SMBUS讀取寄存器數(shù)據(jù)的過(guò)程的示意圖;
[0032] 圖4為MCU通過(guò)SMBUS寫(xiě)寄存器數(shù)據(jù)的過(guò)程的示意圖;
[0033] 圖5為NCT6776讀寫(xiě)寄存器的流程圖。
【具體實(shí)施方式】
[0034] 為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì) 本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。
[0035] 圖1為一個(gè)實(shí)施例中主機(jī)工作狀態(tài)的監(jiān)測(cè)系統(tǒng)的結(jié)構(gòu)框圖。該主機(jī)工作狀態(tài)的監(jiān) 測(cè)系統(tǒng)100,包括輸入模塊120、處理模塊140和顯示模塊160。監(jiān)測(cè)系統(tǒng)100的處理模塊 140分別與所述輸入模塊120和顯示模塊160相連,且處理模塊140與主機(jī)200通過(guò)總線連 接。
[0036] 其中,輸入模塊120用于獲取用戶輸入的指令。
[0037] 具體的,輸入模塊120用于獲取用戶通過(guò)鍵盤(pán)、鼠標(biāo)或觸摸屏等輸入設(shè)備輸入的 指令。
[0038] 處理模塊140用于根據(jù)該指令通過(guò)總線監(jiān)測(cè)主機(jī)200,并獲取該主機(jī)200當(dāng)前工作 狀態(tài)的數(shù)據(jù)信息。
[0039] 具體的,處理模塊140解析該指令,并通過(guò)總線訪問(wèn)主機(jī)200的硬件,以及獲取硬 件當(dāng)前工作狀態(tài)的數(shù)據(jù)信息。該當(dāng)前工作狀態(tài)的數(shù)據(jù)信息包括主機(jī)200上各種器件的工作 溫度、主板工作電壓、主機(jī)風(fēng)扇工作狀態(tài)等。
[0040] 該總線可為能與傳感器進(jìn)行數(shù)據(jù)通訊的數(shù)據(jù)總線中任意一種,如SMBUS (SystemManagementBus,系統(tǒng)管理總線)總線、I2C(Inter-IntegratedCircuit)總 線、CAN(ControllerAreaNetwork,控制器局域網(wǎng)絡(luò))總線、ISA(IndustryStandard Architecture)中至少一種。其中,SMBUS是由Intel提出的,應(yīng)用于移動(dòng)個(gè)人計(jì)算機(jī)和桌面 個(gè)人計(jì)算機(jī)系統(tǒng)中的低速率通訊總線,主要是通過(guò)功能強(qiáng)大的總線來(lái)控制主板上的設(shè)備, 并收集相應(yīng)的信息。使用SMBUS總線,設(shè)備可提供自身的生產(chǎn)信息、型號(hào)、部件號(hào)等。針對(duì) 掛起事件保存它的狀態(tài),報(bào)告不同類(lèi)別的錯(cuò)誤,接收控制參數(shù),并返回自身的狀態(tài)等。在工 控主機(jī)中,絕大部分采用具有SMBUS總線的傳感器作為監(jiān)控器件,如此,處理模塊140可根 據(jù)SMBUS總線通訊協(xié)議訪問(wèn)并獲取傳感器信息,從而達(dá)到監(jiān)測(cè)工控主機(jī)的目的。
[0041]I2C總線是由PHLIPS開(kāi)發(fā)的兩線式串行總線,用于連接微控制器及其外圍設(shè)備。 另外,SMBUS總線實(shí)際上為I2C總線的一個(gè)子集。
[0042]CAN總線屬于現(xiàn)場(chǎng)總線范疇,是一種有效支持分布式控制或?qū)崟r(shí)控制的串行通信 網(wǎng)絡(luò)總線。
[0043]處理模塊 140 可為MCU(MicroControlUnit,微處理器)、ARM、FPGA(Field ProgrammableGateArray,現(xiàn)場(chǎng)可編程門(mén)陣列)或CPLD(ComplexProgrammableLogic Device,復(fù)雜可編程邏輯器件)等但不限于上述幾種處理器,只要具備和傳感器一致的通訊 總線或能通過(guò)編程處理器中足夠多的管腳模擬出同樣的總線功能的處理器均可。其中,MCU 又稱單片微型計(jì)算機(jī)或單片機(jī),是指將計(jì)算機(jī)的〇?1狀11、1?(通、定時(shí)計(jì)數(shù)器和多種1/0接口 集成在一片芯片上,形成芯片級(jí)的計(jì)算機(jī)。
[0044] 將微型處理器、ARM、FPGA或CPLD的兩