在現(xiàn)代工業(yè)生產(chǎn)中,顏色識(shí)別技術(shù)已經(jīng)成為了一個(gè)非常重要的技術(shù)。顏色識(shí)別可以用于產(chǎn)品質(zhì)量檢測(cè)、物料分類、機(jī)器視覺等領(lǐng)域。本文將介紹如何使用FPGA結(jié)合ZC-CLS381RGB進(jìn)行顏色識(shí)別。
本教程通過對(duì)采集到的圖像信息中,R、G、B三個(gè)顏色分量的占比,來判斷識(shí)別到的顏色信息。本教程只實(shí)現(xiàn)對(duì)紅色、綠色、藍(lán)色的識(shí)別,如果各位讀者要想實(shí)現(xiàn)對(duì)其它色彩信息的識(shí)別,可根據(jù)三個(gè)色彩分量的占比來判斷。
ZC-CLS381RGB簡(jiǎn)介
ZC-CLS381RGB是一款基于RGB三基色原理的顏色識(shí)別傳感器。它可以通過對(duì)物體反射光的RGB三基色分量進(jìn)行測(cè)量,來判斷物體的顏色。該傳感器具有高精度、快速響應(yīng)、穩(wěn)定性好等特點(diǎn),廣泛應(yīng)用于自動(dòng)化生產(chǎn)線、機(jī)器人、智能家居等領(lǐng)域。
配置寄存器組
ZC-CLS381RGB是一款RGB LED驅(qū)動(dòng)器芯片,需要通過配置寄存器來讓該模塊正常工作。下面就對(duì)顏色識(shí)別需要配置的寄存器進(jìn)行介紹。
主控寄存器
01
MAIN_CTRL Register是主控寄存器,下圖是主控寄存器的配置介紹:

? bit7~bit5,bit3,bit0:保留位(Reserved),使用時(shí)將這幾位置0即可。
? bit4:軟件復(fù)位位(SW Reset),當(dāng)該位被置1時(shí),芯片會(huì)進(jìn)行軟件復(fù)位,即將所有寄存器的值恢復(fù)為默認(rèn)值。在使用ZC-CLS381RGB時(shí),如果出現(xiàn)異常情況,例如芯片無法正常工作或者輸出異常,可以通過將SW Reset位置1來進(jìn)行軟件復(fù)位,以恢復(fù)芯片的正常工作狀態(tài)。同時(shí),在初始化芯片時(shí),也可以通過將SW Reset位置1來確保芯片的寄存器值處于默認(rèn)狀態(tài),以避免出現(xiàn)不可預(yù)期的問題。但是如果軟件復(fù)位位一直為高電平,模塊就無法正常采集顏色,一直處于復(fù)位狀態(tài),如果要關(guān)閉該位則還需要發(fā)送一次指令。因此在本設(shè)計(jì)初始化時(shí),將該位置為0,不啟用軟件復(fù)位。
? bit2:顏色傳感器模式位(CS Mode),該位置為1時(shí),表示所有的光傳感器通道都被激活,包括RGB(三原色)、IR(紅外光)和COMP(環(huán)境光)。這意味著該傳感器可以同時(shí)測(cè)量紅、綠、藍(lán)三種顏色的光線強(qiáng)度、紅外線的強(qiáng)度以及環(huán)境光的強(qiáng)度,并將這些數(shù)據(jù)傳輸?shù)郊拇嫫髦羞M(jìn)行處理。初始化配置時(shí),需將該位置為1。
? bit1:環(huán)境光傳感器/顏色傳感器使能位(ALS/CS Enable),當(dāng)該位置1時(shí),表示使能環(huán)境光傳感器和顏色傳感器。在本設(shè)計(jì)中,需要使用到這兩個(gè)傳感器,因此在初始化時(shí)需要將該位置為1。
檢測(cè)速率寄存器
02
ALS_CS_MEAS_RATE Register是環(huán)境光傳感器和顏色傳感器檢測(cè)速率寄存器,下圖是對(duì)該寄存器的配置介紹:

?bit7、bit3:保留位(Reserved),使用時(shí)這兩位需要置0。
? bit6,bit5,bit4:環(huán)境光傳感器和顏色傳感器速率位(ALS/CS Resolution),初始化時(shí)設(shè)置{bit6,bit5,bit4}=100,利用最快的時(shí)間對(duì)采集到的數(shù)據(jù)進(jìn)行轉(zhuǎn)換。
?bit2,bit1,bit0:環(huán)境光傳感器和顏色傳感器測(cè)量速率位(ALS/CS Measurement Rate),初始化設(shè)置{bit2,bit1,bit0}=000,利用最快的采集速率采集數(shù)據(jù)。
增益寄存器
03
ALS_CS_MEAS_RATE Register是環(huán)境光傳感器和顏色傳感器增益寄存器,下圖是對(duì)該寄存器的配置介紹:

?bit7~bit3:保留位(Reserved),使用時(shí)這兩位需要置0。
? bit2~bit0:環(huán)境光傳感器和顏色傳感器增益率位(Reserved),初始化時(shí)設(shè)置{bit2,bit1,bit0}=100,將增益率調(diào)到最大,以此增強(qiáng)信號(hào)的強(qiáng)度,使得信號(hào)更容易被檢測(cè)到。
線上交流會(huì)
04
因?yàn)楸窘坛滩杉氖羌t色、綠色、藍(lán)色數(shù)據(jù),芯片手冊(cè)提供的寄存器組如下圖所示:

0x0D、0x0E、0x0F分別表示綠色信息的低8位、中8位、高8位數(shù)據(jù);0x10、0x11、0x12分別表示紅色信息的低8位、中8位、高8位數(shù)據(jù);0x13、0x14、0x15分別表示藍(lán)色信息的低8位、中8位、高8位數(shù)據(jù)。在使用中,直接讀取這些寄存器內(nèi)的數(shù)據(jù),然后拼接起來,即可得到紅、綠、藍(lán)色數(shù)據(jù),再根據(jù)三個(gè)數(shù)據(jù)的占比,從而對(duì)采集到的物體顏色進(jìn)行判斷。
狀態(tài)轉(zhuǎn)移圖和信號(hào)波形圖繪制
在正式開始使用器件時(shí),需要等待一段時(shí)間讓器件穩(wěn)定下來,如圖所示:

待機(jī)喚醒時(shí)間最大為10ms,表示在測(cè)量的時(shí)候,兩次獲取數(shù)據(jù)的時(shí)間間隔最大為10ms。由于在數(shù)據(jù)手冊(cè)內(nèi),未說明上電后直到模塊穩(wěn)定需要等待的時(shí)間,在這里我們?nèi)藶樵O(shè)置上電等待的時(shí)間為20ms,給模塊一個(gè)緩沖的時(shí)間,然后再對(duì)它進(jìn)行配置。配置寄存器組信號(hào)波形圖如下圖所示:

其中,i2c_start作為i2c控制模塊的開始信號(hào),檢測(cè)到該開始信號(hào)后,就開始配置寄存器,向各個(gè)寄存器內(nèi)寫入數(shù)據(jù)。綜上繪制的i2c控制模塊配置寄存器組的狀態(tài)轉(zhuǎn)移圖如下圖所示:

為了設(shè)計(jì)方便,對(duì)于50MHZ的系統(tǒng)時(shí)鐘,將其分頻為1MHZ的i2c驅(qū)動(dòng)時(shí)鐘用來驅(qū)動(dòng)后續(xù)模塊,同時(shí)令一個(gè)SCL時(shí)鐘周期為4us,高電平持續(xù)時(shí)間為2us,低電平持續(xù)時(shí)間也為2us。這樣設(shè)計(jì)的好處是,滿足SCL高電平持續(xù)時(shí)間大于0.6us,SCL低電平持續(xù)時(shí)間大于1.3us。如下圖所示:

綜上,繪制的分頻信號(hào)波形圖如下圖所示:

結(jié)合狀態(tài)轉(zhuǎn)移圖,繪制的配置寄存器信號(hào)波形圖如下圖所示:



需要注意的是,配置寄存器組跳轉(zhuǎn)條件為skip_en_0,這里配置的寄存器是向寄存器里面寫入數(shù)據(jù),總共需要配置三個(gè),三個(gè)寄存器配置完成后,才能讀出顏色數(shù)據(jù)。因此,step從0自增到1,必須要在cfg_num為3并且檢測(cè)到結(jié)束信號(hào)的情況下進(jìn)行。
審核編輯:劉清
-
傳感器
+關(guān)注
關(guān)注
2573文章
54316瀏覽量
785398 -
FPGA
+關(guān)注
關(guān)注
1654文章
22273瀏覽量
629889 -
寄存器
+關(guān)注
關(guān)注
31文章
5587瀏覽量
128991 -
RGB
+關(guān)注
關(guān)注
4文章
820瀏覽量
61480
原文標(biāo)題:【知識(shí)分享】ZC-CLS381RGB顏色識(shí)別+8x8點(diǎn)陣指示——配置顏色識(shí)別寄存器組(上)
文章出處:【微信號(hào):FPGA創(chuàng)新中心,微信公眾號(hào):FPGA創(chuàng)新中心】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
求助。8x8點(diǎn)陣的接法
Protues16x16點(diǎn)陣庫(kù)文件(非4個(gè)8x8拼接而成)
8x8點(diǎn)陣仿真
51單片機(jī)學(xué)習(xí)記錄(8) “8X8點(diǎn)陣 精選資料推薦
【實(shí)驗(yàn)102】8X8點(diǎn)陣實(shí)驗(yàn)
如何使用51單片機(jī)實(shí)現(xiàn)8x8點(diǎn)陣顯示的程序免費(fèi)下載
使用51單片機(jī)進(jìn)行8x8點(diǎn)陣的詳細(xì)資料說明
8x8點(diǎn)陣字模提取軟件應(yīng)用程序免費(fèi)下載
8X8點(diǎn)陣應(yīng)用演示的keil程序和電路圖免費(fèi)下載

ZC-CLS381RGB顏色識(shí)別+8x8點(diǎn)陣指示—配置顏色識(shí)別寄存器組(上)
評(píng)論