
摘 要
本文詳細介紹一種基于單片機技術,使用TCS230傳感器采集衣服等服裝面料RGB數據的系統設計過程。TCS230顏色傳感器將采集到的數據通過單片機的控制與處理,最后通過液晶屏LCD1602進行顯示。本系統具有使用簡單、直觀、高效、穩定的特點。
【關鍵詞】單片機 傳感器 系統設計
隨著信息時代的到來,電子技術在各個領域得到了廣泛的應用。全面實現電子化與智能化是未來電子技術發展的趨勢。而基于以傳感器獲取數據為基礎的物聯網也是近幾年興起的熱門話題。在布料生產、染色或者制衣工廠中,都需要根據不同的布模板來配置顏色,或者對某種顏色進行匹配。這工作對于人工的肉眼來分辨,都是相對比較困難的。雖然現也有相關的顏色識別器,但相對復雜,價錢昂貴。本系統實現簡單,成本低,工作穩定,有一定的實用價值。
1 總體框圖設計
本系統主要由TCS230傳感器、STC89C52單片機系統、LCD1602顯示屏三大模塊構成。如圖1所示。
1.1 TCS230模塊
TCS230管腳圖如圖2所示。TCS230內部集成有64個光電二極管,這些二極管共分為四種類型:16個帶有紅色濾波器光電二極管,16個帶有綠色濾波器光電二極管;16個帶有藍色濾波器光電二極管,其余16個為不帶有任何濾波器的光電二極管,其可以透過全部的光信息。工作時,管腳S0和S1可以通過采用不同的高低電平組合,選通不同的顏色通道。
1.2 單片機STC89C52
STC89C52是一種低功耗,高性能COMOS 8位微處理器,同時也是帶8K字節可編程可檫除FLASH存儲器。該芯片采用ATMEL高密度非易失存儲器制造技術,與工業標準的MCS-51指令集和輸出管腳相兼容,同時做了很多的改進,使芯片具有傳統51單片機不具備的功能。
1.3 LCD1602顯示屏
1602顯示屏是一種專門用來顯示字母、數字、符號等的點陣型液晶模塊。它由若干個5X7或者5X11等點陣字符位組成,每個點陣字符位都可以顯示一個字符,每位之間有一個點距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用。
2 軟件設計
本系統采用C語言編程,具體工作流程如圖4所示。首先對LCD1602顯示屏等進行初始化,接下來判斷是否需要進行白平衡,然后再進行顏色數據的采集,最后通過LCD1602顯示屏進行顯示。
3 白平衡算法
對于TCS230的光傳感器來說,它對RGB三種基本色的敏感度是不相同的,所以導致TCS230的RGB輸出也是不一樣的,因此在測試前必須進行白平衡調整,使得TCS230對所檢測的"白色"中的三原色是相等的。本系統白平衡算法的思想是先根據TCS230的白平衡方法測出基準光源的RGB光強值,再用白光的RGB值(255.255.255)分別去除此三個光強值,得到三個比例因子,最后用此比例因子乘以實際布料測出的數值,即布料的實際顏色。
4 測試效果
通過兩組TCS230探頭分別對不同顏色的布料測試可知,本系統測量的數據穩定,誤差也在可接受的范圍里,能滿足一般的顏色測量要求。
5 結束語
通過測試與對比,本系統能很好的實現所需要的功能,且數據穩定,適合在實驗室、布料加工廠等場合使用。另一方面,本系統功能擴展方便,能廣泛應用于外接物聯網的前端數據采集中。
參考文獻
[1]張松燦,肖本賢.高分辨率顏色傳感器TCS230的原理和應用[J].單片機與嵌入式系統應用,2005(03):44-46.
[2]丁茄,李剛.可編程彩色光/頗轉換器TCS230及其應用[J].國外電子元器件,2005(01):59-62.
[3]鮑可進.C8051F單片機原理及應用[M].北京:中國電力出版社,2006.
作者簡介
羅偉芳(1987-),女,廣東省梅州市人。學士學位。現為廣東省電子職業技術學校助理實驗師。研究方向為數據采集、信號處理、圖像匹配。
作者單位
廣東省電子職業技術學校 廣東省廣州市 510515