王志新鐘睿蕓李月娥
(蘭州大學(xué)信息科學(xué)與工程學(xué)院,甘肅 蘭州 730000)
顏色的產(chǎn)生源于物體對(duì)光的選擇性吸收,隨著近代科學(xué)特別是色度學(xué)的發(fā)展,顏色成為一種可被客觀定義的事物,而且廣泛用于生物、化學(xué)、材料學(xué)的科學(xué)研究中[1-4]。在傳統(tǒng)的如印染業(yè)、釀造業(yè)、污水處理業(yè)等涉及化學(xué)變化的行業(yè),復(fù)雜的生產(chǎn)流程中需要對(duì)每個(gè)環(huán)節(jié)的顏色和其他生產(chǎn)元素進(jìn)行實(shí)時(shí)監(jiān)測(cè)和控制。但是目前國(guó)內(nèi)大部分生產(chǎn)廠家還是依靠工程師和老技術(shù)工人們的經(jīng)驗(yàn)來(lái)進(jìn)行生產(chǎn),很難將顏色的實(shí)時(shí)定量監(jiān)測(cè)應(yīng)用到生產(chǎn)過(guò)程中去[5]。近年來(lái)利用光電積分法(Photoelectric integration),分光光度法(spectrophotometry)原理所制造電子檢測(cè)儀的出現(xiàn)為顏色檢測(cè)的自動(dòng)化,標(biāo)準(zhǔn)化,高效化提供了基礎(chǔ)[6]。
相對(duì)于其他大型化智能設(shè)備的使用,目前存在的顏色檢測(cè)設(shè)備還有待提高。第一,嚴(yán)格要求的外部條件?,F(xiàn)在使用的識(shí)別方案是根據(jù)Swain和Ballard[7]提出的顏色直方圖來(lái)表示和匹配圖像。這項(xiàng)工作為顏色識(shí)別做出了重大貢獻(xiàn),然而當(dāng)照明條件不相等時(shí)物體識(shí)別精度顯著降低。第二,檢測(cè)樣品的色彩分布要求是線性均勻的。實(shí)驗(yàn)中通過(guò)大量樣本建立起來(lái)的標(biāo)準(zhǔn)色與實(shí)際使用中的樣本差距可能很大,實(shí)際數(shù)據(jù)庫(kù)中可能根本沒(méi)有這種顏色,這也直接導(dǎo)致基于此原理的儀器只能針對(duì)特定顏色色調(diào)的物品。華中科技大學(xué)胡雪婷等報(bào)道了基于圖像識(shí)別的吸藍(lán)量滴定終點(diǎn)自動(dòng)判定新方法[8],武漢科技大學(xué)的研究團(tuán)隊(duì)提出了顏色檢測(cè)和人機(jī)交互的高效破碎玻璃分選裝置[9],通過(guò)圖像處理達(dá)到顏色識(shí)別的目的需要,但建模要求較高且對(duì)RGB采集設(shè)備要求過(guò)高,不能大范圍普及。
顏色檢測(cè)技術(shù)在多領(lǐng)域不斷發(fā)展,如Funt和Finlayson根據(jù)Land的理論對(duì)其方法進(jìn)行了擴(kuò)展,通過(guò)索引從鄰近點(diǎn)計(jì)算的顏色比率來(lái)實(shí)現(xiàn)顏色檢測(cè)[8,10-11]。遼寧技術(shù)大學(xué)團(tuán)隊(duì)研發(fā)的膨潤(rùn)土吸藍(lán)量自動(dòng)分析檢測(cè)技術(shù),在帶有篩網(wǎng)和濾紙的超聲波分散器中投放給定光從而檢測(cè)綠色暈環(huán)[12]。中山大學(xué)譚洪舟團(tuán)隊(duì)和南京理工大學(xué)胡茂海團(tuán)隊(duì)用顏色傳感器對(duì)滴定過(guò)程中的顏色進(jìn)行檢測(cè)[13-14],提供了根據(jù)滴定曲線自動(dòng)判斷滴定終點(diǎn)的實(shí)現(xiàn)方法。但在液體顏色檢測(cè)方面,檢測(cè)對(duì)象幾何形狀和表面材質(zhì)等因素的影響依然存在,同時(shí)試圖利用單一數(shù)字標(biāo)尺描述顏色可能產(chǎn)生錯(cuò)誤[15-16]。本文提出并實(shí)現(xiàn)了一種基于光反射與透射及物聯(lián)網(wǎng)技術(shù)的動(dòng)態(tài)顏色監(jiān)測(cè)系統(tǒng),提供了一種在實(shí)驗(yàn)室和工廠中智能化過(guò)程監(jiān)測(cè)的新思路,有望實(shí)現(xiàn)工作效率與操作精度的提高,填補(bǔ)國(guó)內(nèi)相關(guān)設(shè)備的空白。
RGB檢測(cè)模塊選用TCS230傳感器[17],如圖1所示。將RGB檢測(cè)模塊與光強(qiáng)檢測(cè)模塊合并成一個(gè)整體傳感器,該傳感器把可配置的硅光電二極管與電流頻率轉(zhuǎn)換器集成在一個(gè)單一的CMOS電路上,同時(shí)在單一芯片上集成了RGB三種濾光器,芯片集成了模數(shù)轉(zhuǎn)換器(Analog-to-Digital Converter,ADC),最高采樣頻率500 KSPS,最高支持10通道的模擬信號(hào)采集,采用8引腳的SOIC表面貼裝式封裝。兩個(gè)整體傳感器對(duì)稱放置,中間設(shè)置有遮光光路及放置待測(cè)物體的平臺(tái),可以實(shí)時(shí)監(jiān)測(cè)待測(cè)物體的顏色,并轉(zhuǎn)化為RGB值,同時(shí)檢測(cè)待測(cè)物體的透光性及環(huán)境光強(qiáng),滿足光學(xué)檢測(cè)的信號(hào)采集對(duì)于采樣精度和采樣頻率的要求。RGB檢測(cè)模塊與光強(qiáng)檢測(cè)模塊理論相似,將透射或反射的光分別透過(guò)對(duì)應(yīng)的光透鏡,頻率轉(zhuǎn)換器根據(jù)透過(guò)透鏡光顏色和光強(qiáng)的不同輸出不同頻率的方波,通過(guò)模數(shù)轉(zhuǎn)換和歸一化計(jì)算即可得到待測(cè)數(shù)值。
圖1 TCS230傳感器示意圖
將傳感器如圖2排布,分為反射光檢測(cè)傳感器、透射光檢測(cè)傳感器和散射光檢測(cè)傳感器陣列三部分,由遮光材料構(gòu)成遮光光路。將帶有LED燈且發(fā)出入射光的傳感器,稱為反射光檢測(cè)傳感器;接收透射光的傳感器稱為透射光檢測(cè)傳感器;多個(gè)相同傳感器組成陣列接收散射光,稱為散射光檢測(cè)傳感器陣列。
圖2 顏色檢測(cè)硬件示意圖
顏色檢測(cè)硬件整體可以通過(guò)調(diào)節(jié)形狀的方式以適應(yīng)不同大小的物體監(jiān)測(cè),遮光光路由內(nèi)部全反射的白色平滑、外部黑色磨砂的絕緣耐熱硬紙板制成。內(nèi)部全反射的白色平滑面用于折射入射光或反射光,盡量不引起光能量損失。外部黑色磨砂面用于隔絕外部雜光的影響。通過(guò)設(shè)置遮光光路,提高光學(xué)檢測(cè)的準(zhǔn)確性。放置待測(cè)物體的平臺(tái)由導(dǎo)熱耐腐蝕金屬制成,遮光光路和放置待測(cè)物體的平臺(tái)可以更換,以適應(yīng)不同物體的監(jiān)測(cè)。內(nèi)部監(jiān)控?cái)z像頭為全彩廣角攝像頭,帶有紅外夜視功能,與遠(yuǎn)程控制設(shè)備、本地客戶端、服務(wù)器通訊連接,可以實(shí)現(xiàn)實(shí)時(shí)通信,通過(guò)直播或者錄像方式可以在遠(yuǎn)程控制設(shè)備或觸摸顯示屏上實(shí)時(shí)觀察待測(cè)物體的狀態(tài)。
為適應(yīng)不同的監(jiān)測(cè)需求,系統(tǒng)設(shè)定了多種監(jiān)測(cè)模式。
①待測(cè)物體若為不透明高反射系數(shù)物體,例如石膏、金屬、大理石、木材等,透射光檢測(cè)傳感器獲得的測(cè)量數(shù)據(jù)將遠(yuǎn)小于反射光檢測(cè)傳感器獲得測(cè)量數(shù)據(jù),則只讀取反射光檢測(cè)傳感器獲得的數(shù)據(jù)計(jì)算RGB值。在輸出光強(qiáng)已知的情況下,可以通過(guò)兩檢測(cè)傳感器的光強(qiáng)數(shù)據(jù)計(jì)算反射系數(shù)和折射率。
②待測(cè)物體若為透明且低反射系數(shù)物體,例如有色玻璃、結(jié)晶體、透明液體等,透射光檢測(cè)傳感器獲得的測(cè)量數(shù)據(jù)將遠(yuǎn)大于反射光檢測(cè)傳感器獲得測(cè)量數(shù)據(jù),則可只讀取透射光檢測(cè)傳感器獲得的測(cè)量數(shù)據(jù)計(jì)算RGB值。在輸出光強(qiáng)已知的情況下,吸收特定波長(zhǎng)的光服從朗伯-比爾(Lambert-Beer)吸收定律來(lái)確定吸光物質(zhì)的濃度及其厚度間的關(guān)系,即可通過(guò)兩檢測(cè)傳感器的光強(qiáng)數(shù)據(jù)計(jì)算透射系數(shù)和折射率。
③待測(cè)物體反射系數(shù)與透射系數(shù)接近時(shí),透射光檢測(cè)傳感器獲得的測(cè)量數(shù)據(jù)和反射光檢測(cè)傳感器獲得的測(cè)量數(shù)據(jù)將同時(shí)輸入光學(xué)檢測(cè)下位機(jī)進(jìn)行計(jì)算,獲得兩側(cè)RGB值并獲得兩側(cè)光強(qiáng)值。
該顏色檢測(cè)硬件與顏色檢測(cè)下位機(jī)相連,通過(guò)UART轉(zhuǎn)換為USB接口將所獲得的數(shù)據(jù)上傳至上位機(jī)處理器及服務(wù)器,配合散射光檢測(cè)傳感器陣列的數(shù)據(jù),進(jìn)一步在上位機(jī)處理器可推出色坐標(biāo)、顏色飽和度、色溫,物體透光性、折射率、反射率等,可以進(jìn)行比對(duì)粗略預(yù)測(cè)物質(zhì)種類。
為滿足實(shí)際實(shí)驗(yàn)室和工廠的需要,本文設(shè)計(jì)的監(jiān)測(cè)系統(tǒng),其整體結(jié)構(gòu)可參考監(jiān)測(cè)控制系統(tǒng)整體結(jié)構(gòu)(圖3),整個(gè)系統(tǒng)由上位機(jī)處理器、光學(xué)檢測(cè)下位機(jī)、環(huán)境監(jiān)控下位機(jī)、控制專用下位機(jī)、遠(yuǎn)程控制設(shè)備、服務(wù)器、備用電源、本地控制系統(tǒng)及相關(guān)軟件組成。
圖3 基于光反射與透射及物聯(lián)網(wǎng)技術(shù)的動(dòng)態(tài)顏色監(jiān)測(cè)控制系統(tǒng)整體結(jié)構(gòu)
總體設(shè)計(jì)采用“服務(wù)器+單上位機(jī)+多下位機(jī)+雙控制系統(tǒng)”模式,職責(zé)不同的下位機(jī)分別采集實(shí)時(shí)數(shù)據(jù)并進(jìn)行放大、解調(diào)、濾波等簡(jiǎn)單處理分析計(jì)算,并同時(shí)發(fā)送給上位機(jī)處理器,上位機(jī)處理器采用多通道數(shù)據(jù)采集方式進(jìn)行連接,使得系統(tǒng)可對(duì)多路信號(hào)進(jìn)行高速采集,采集率可由遠(yuǎn)程控制設(shè)備或本地控制系統(tǒng)手動(dòng)進(jìn)行控制,支持高速SPI通信,可以加入更多的下位機(jī)以拓展系統(tǒng)功能。
為保證系統(tǒng)數(shù)據(jù)監(jiān)測(cè)的實(shí)時(shí)性,上位機(jī)使用Linux操作系統(tǒng),接收到的數(shù)據(jù)先通過(guò)TCP/IP協(xié)議將數(shù)據(jù)發(fā)送到服務(wù)器進(jìn)行備份,然后進(jìn)行條件判斷和基本檢測(cè)并轉(zhuǎn)化為圖表的操作,將變化點(diǎn)和疑似錯(cuò)誤結(jié)果在該數(shù)據(jù)點(diǎn)進(jìn)行標(biāo)注,完成后再通過(guò)網(wǎng)絡(luò)接口發(fā)送給服務(wù)器和控制系統(tǒng)。系統(tǒng)實(shí)際運(yùn)行界面觸摸屏如圖4所示。
圖4 系統(tǒng)實(shí)際運(yùn)行界面觸摸屏展示
另外,實(shí)時(shí)控制的本地控制系統(tǒng)通過(guò)UART轉(zhuǎn)換為USB數(shù)據(jù)將提前設(shè)計(jì)好的閾值參數(shù)信息發(fā)送給上位機(jī)處理器,用戶端可以依據(jù)監(jiān)測(cè)結(jié)果靈活調(diào)整搭配生產(chǎn)線上的具體設(shè)備,同時(shí)可以進(jìn)行遠(yuǎn)程控制,完成操作過(guò)程中的標(biāo)注和篩選。觸摸顯示屏用于對(duì)整個(gè)系統(tǒng)的各項(xiàng)參數(shù)進(jìn)行實(shí)時(shí)顯示,還可以通過(guò)與揚(yáng)聲器的配合提醒疑似錯(cuò)誤的結(jié)果或警告監(jiān)測(cè)數(shù)據(jù)超出閾值。監(jiān)測(cè)到的數(shù)據(jù)可以實(shí)時(shí)顯示在觸摸顯示屏上,為方便用戶使用,上位機(jī)還對(duì)范式的顯示進(jìn)行支持,可同步記錄數(shù)據(jù)標(biāo)簽,方便數(shù)據(jù)的離線分析。
根據(jù)德國(guó)物理學(xué)家赫姆霍茲(Helinholtz)的三原色理論,各種顏色是由不同比例的三原色(紅、綠、藍(lán))混合而成的。本文采用Arduino作為光學(xué)檢測(cè)下位機(jī),Arduino內(nèi)部頻率為16 MHz,選取8分頻后的2 MHz作為時(shí)鐘,對(duì)應(yīng)周期為0.5μs。
RGB值及光強(qiáng)的識(shí)別流程如圖5所示,在進(jìn)行白平衡調(diào)整后,對(duì)TCS230傳感器的輸出脈沖依次進(jìn)行計(jì)數(shù),定時(shí)到時(shí)間基準(zhǔn)結(jié)束,分別計(jì)算每個(gè)通道所用的時(shí)間。這些時(shí)間對(duì)應(yīng)于實(shí)際測(cè)試時(shí)每種濾波器所采用的時(shí)間基準(zhǔn),在這段時(shí)間內(nèi)所測(cè)得的脈沖數(shù)就是所對(duì)應(yīng)的R、G和B的值。
圖5 顏色檢測(cè)與光強(qiáng)程序流程圖
透射光檢測(cè)傳感器、反射光檢測(cè)傳感器、散射光檢測(cè)傳感器陣列同時(shí)運(yùn)行該程序,經(jīng)過(guò)時(shí)間校對(duì)和計(jì)算后,可得到RGB值、兩側(cè)光強(qiáng)、散射光情況,并可進(jìn)一步計(jì)算常見(jiàn)光學(xué)參數(shù)指標(biāo),如色坐標(biāo)、顏色飽和度、色溫,物體透光性、折射率、反射率等,從而適應(yīng)不同的監(jiān)測(cè)需求。
在RGB模式下,某一色彩是由紅、綠、藍(lán)三原色組成,三原色會(huì)在0到255之間變化,各有256個(gè)值,可以組成16 777 216種顏色。我們沒(méi)有必要這么精準(zhǔn)地定義顏色,本文中以測(cè)得的R、G、B值為中心,設(shè)置一個(gè)距離中心值10的范圍值,判斷RGB值是否落在范圍內(nèi),如果落在范圍內(nèi),則說(shuō)明顏色并沒(méi)有發(fā)生變化。將獲得的RGB值在以R、G、B為坐標(biāo)軸的三維直角坐標(biāo)系中取點(diǎn),繪制的(R,G,B)空間即為RGB顏色空間圖,如圖6所示。
圖6 RGB顏色空間圖
假定測(cè)得的(R,G,B)為(110,110,110),若(R,G,B)在圖7紅色正方體內(nèi)變化時(shí),實(shí)際顏色基本沒(méi)有變化,則判定其顏色沒(méi)有變化。用這種方法來(lái)判斷顏色變化,雖然準(zhǔn)確度沒(méi)有(R,G,B)一點(diǎn)對(duì)應(yīng)一個(gè)顏色精準(zhǔn),但是考慮存在的脈沖計(jì)數(shù)誤差,傳感器引腳產(chǎn)生的方波可能不是非常準(zhǔn)確的方波,在計(jì)數(shù)上會(huì)有1-3數(shù)值的偏差,給定一個(gè)范圍可以降低顏色變化識(shí)別的錯(cuò)誤率。否則,系統(tǒng)將頻繁給出顏色變化的提示,而實(shí)際上顏色可能并沒(méi)有發(fā)生變化。在具體的應(yīng)用環(huán)境中,使用者也可以適當(dāng)調(diào)整算法以適應(yīng)具體精度要求。
圖7 閾值范圍RGB顏色空間判別圖
系統(tǒng)的準(zhǔn)確性測(cè)試通過(guò)一個(gè)專門的實(shí)驗(yàn)檢測(cè)來(lái)說(shuō)明,圖8為顏色監(jiān)測(cè)系統(tǒng)現(xiàn)場(chǎng)測(cè)試圖。選擇國(guó)際顏色標(biāo)準(zhǔn)比色卡,在其中任意選取部分樣本,從中間沿著紙張縫隙任意分離,同時(shí)逆向在部分樣本反面均勻隨機(jī)粘貼多層白紙使其厚度不一。以上操作主要是用來(lái)模仿不同物體透光情況。使用適量酒精清洗表面雜質(zhì)后,依次做好標(biāo)記。
圖8 顏色監(jiān)測(cè)系統(tǒng)現(xiàn)場(chǎng)測(cè)試圖
將處理過(guò)的標(biāo)準(zhǔn)比色卡放置在待測(cè)物體區(qū),對(duì)顏色檢測(cè)硬件部分進(jìn)行密封遮光處理。每個(gè)樣本重復(fù)“取出-放置-采樣”的操作三次,取三次重復(fù)實(shí)驗(yàn)的數(shù)據(jù)均值。獲得具體RGB數(shù)值如表1所示,其中R1、G1、B1為顏色標(biāo)準(zhǔn)比色卡上的數(shù)值,即待測(cè)樣本的理論顏色的RGB數(shù)值。R2、G2、B2為本系統(tǒng)通過(guò)重復(fù)實(shí)驗(yàn)獲得的樣本實(shí)際檢測(cè)值。
表1 系統(tǒng)測(cè)試實(shí)驗(yàn)RGB數(shù)據(jù)表
將數(shù)據(jù)繪制在以2為閾值半徑的RGB顏色空間判別圖內(nèi),如圖9所示。在隨機(jī)選取的12個(gè)樣例中,只有1例在該閾值設(shè)定的情況下未能檢測(cè)成功。
圖9 RGB顏色空間判別圖
為了能更好的反映系統(tǒng)性能,對(duì)RGB三個(gè)通道分別進(jìn)行數(shù)據(jù)分析。因?yàn)轭伾珨?shù)值是定義量而不是真實(shí)的物理反饋,不能像測(cè)試物質(zhì)含量等使用類似
這樣的相對(duì)誤差計(jì)算方法來(lái)確定。
例如理論顏色(2,0,0)與實(shí)際測(cè)得(1,0,0),理論顏色(255,255,255)與實(shí)際測(cè)得(254,255,255),這兩組比對(duì)都是在R通道上的1數(shù)值變化。在單通道情況下使用該公式可得:誤差=|((2-1))/2|為50%,誤差=|((255-254))/255|,約為0.39%。
在定量變化下,計(jì)算得到的結(jié)果差距極大。而在三通道同時(shí)使用類似公式計(jì)算,所獲得的數(shù)據(jù)遠(yuǎn)小于1%,不能將其作為系統(tǒng)的性能判斷標(biāo)準(zhǔn)。因此,本文通過(guò)單通道檢測(cè)再多通道計(jì)算的方式計(jì)算系統(tǒng)的誤差情況。
因?yàn)镽GB系統(tǒng)是對(duì)通道內(nèi)的刺激值進(jìn)行標(biāo)點(diǎn),標(biāo)點(diǎn)范圍為0~255,則在單一通道內(nèi),其誤差計(jì)算可設(shè)定為:
從RGB顏色空間判別圖以及表2可以看出,系統(tǒng)可以準(zhǔn)確地對(duì)顏色RGB進(jìn)行識(shí)別,尤其對(duì)R通道、B通道效果較好,系統(tǒng)平均誤差在4%以下,該誤差在實(shí)際使用過(guò)程中完全可以接受。標(biāo)準(zhǔn)色的實(shí)測(cè)值與標(biāo)準(zhǔn)值尤為接近,從而能夠準(zhǔn)確判斷顏色變化。針對(duì)具體的應(yīng)用場(chǎng)合要求,也可以編寫簡(jiǎn)單的代碼實(shí)現(xiàn)所需求的個(gè)性化功能,以檢測(cè)實(shí)驗(yàn)和生產(chǎn),測(cè)試系統(tǒng)完善且具有的實(shí)用效果。
表2 系統(tǒng)誤差對(duì)照表
針對(duì)當(dāng)前工業(yè)生產(chǎn)線及實(shí)驗(yàn)室在化學(xué)反應(yīng)過(guò)程中對(duì)時(shí)間、過(guò)程、精度的控制需求,尤其是在化學(xué)反應(yīng)變化中出現(xiàn)的顏色變化的監(jiān)測(cè)與控制,設(shè)計(jì)了一種基于光反射與透射及物聯(lián)網(wǎng)技術(shù)的動(dòng)態(tài)顏色監(jiān)測(cè)控制系統(tǒng),由上位機(jī)處理器、光學(xué)檢測(cè)下位機(jī)、環(huán)境監(jiān)控下位機(jī)、控制專用下位機(jī)、遠(yuǎn)程控制設(shè)備、服務(wù)器、備用電源、本地控制系統(tǒng)及相關(guān)軟件組成。以無(wú)線通信技術(shù)、傳感器技術(shù)為基礎(chǔ),涉及物聯(lián)網(wǎng)智能設(shè)備、光譜分析、顏色識(shí)別、化學(xué)反應(yīng)監(jiān)測(cè)領(lǐng)域,討論了監(jiān)測(cè)系統(tǒng)的總體設(shè)計(jì)方案、具體硬件及軟件設(shè)計(jì)。系統(tǒng)中各輔助器件可用于智能化應(yīng)用操作及延伸拓展開發(fā),基本解決了操作員在檢測(cè)過(guò)程,尤其是化學(xué)反應(yīng)過(guò)程中因個(gè)人造成的誤差問(wèn)題。論文提供了一種在實(shí)驗(yàn)室和工廠中智能化操作的新思路,有望實(shí)現(xiàn)工作效率與操作精度的提高,給國(guó)內(nèi)相關(guān)設(shè)備的研發(fā)提供思路。