MCU結合微結構LED 可見光通訊系統傳輸更可靠

白光LED將成為21世紀主流照明光源,因此若具有通訊功能將使智慧照明系統創新應用更多想像。接下來將介紹一種以微控制器(MCU)為系統控制核心,來驅動聚光型微結構白光LED模組發射(Tx)與接收(Rx)達到雙向資料通訊,並展示以Matlab圖形使用者介面(GUI)設定調光命令,透過光通訊方式傳送調光命令至(紅-綠-藍-琥珀)RGBA光源端MCU,達到調控RGBA光源的效果。有別於追求高速通訊的可見光通訊(VLC)研究。
無線通訊是透過電磁波於兩個設備之間交換數據,毋須使用任何電線,目前射頻(RF)通訊是主流技術,例如手機使用3G通訊,網路或通訊設備使用2.4GHz頻率,從事短距離無線區域網路(Wi-Fi)或藍牙(Bluetooth)通訊,或是具低功耗且中長距離通訊特性的ZigBee。

但在選擇應用於室內照明系統通訊控制時一般會考量低成本、安全、可靠等因素,在特定場域(例如醫院或飛機)應用時更須考慮電磁干擾(EMI),近紅外光(NIR;光波長:750奈米?1.4微米)通訊及可見光(光波長:380?700奈米)通訊是符合室內照明系統通訊之短距離(小於10公尺)通訊下低成本、安全,且無電磁干擾的問題。

LED光通訊廣受注目

NIR及可見光皆可以由LED產生。LED具有成本低、體積小、功耗低、壽命長及熱輻射低等優點,其相對高的調製速度允許短距離高速通訊,可用於家用電視、冷氣等紅外線控制器商品。

事實上,NIR已經成為標準通訊方式,甚至少數可調光燈具亦採用紅外線控制器,因此已有學者探討使用微控制器整合紅外線從事低成本雙向通訊相關議題。

至於LED已經廣泛用於顯示和照明領域,主要因為其具有相當高的發光效率及壽命,預估2020年白光LED元件效率可到達225流明/瓦,燈具效率預估200流明/瓦,相較於60流明/瓦螢光燈泡及20流明/瓦鹵素燈泡,白光LED將成為全球主流光源。

因此如何使用LED可見光通訊技術被大量探討,利用調變LED發射訊號,以空氣當媒介,在接收端以光二極體接收訊號,探討方向著重於使用LED及光感應器(Light Sensor)達到高數據速率(大於Gbit/s)、雙向傳輸、即時(Real-time)影音資料傳輸等,證實可見光通訊具有高速無線通訊的功能。

結合照明/無線通訊技術 雙向傳輸架構開先河

目前,研究人員還想進一步在室內照明應用上結合照明和無線通訊的功能,將室內燈具內建光通訊功能模組,對被照物執行雙向通訊且滿足照明亮度需求,但其中還存在多重光源及雜訊影響可靠度、成本問題、人員在室內移動造成訊號不穩定,以及雙向通訊中如何有效上載(Upload)資訊回燈具等問題,其實用性及可行性尚須更進一步研究。

本研究使用三種架構測試MCU1與MCU2之間資料傳輸,雙向通訊架構圖如圖1所示,使用個人電腦(PC)不同之COM PORT(COM16及COM17)與MCU1及MCU2連接,MCU使用ARDUINO NANO V3.0,MCU分別與通訊模組做連結。

圖1左為RS485模組(Module),RS485模組使用MAX485晶片,RS485模組之間以三條線連接,代號分別為A、B、G。A及B傳送差動訊號,G為接地(GND),NIR模組使用發射波長940奈米之紅外線LED,接收端使用TSOP31238紅外線接收器,MCU1送出編碼後之調光訊號至NIR模組,紅外線以38kHz載波頻率傳送資訊,另一端紅外線接收器接收到紅外光後,將光訊號解調後轉成電訊號,送至MCU2進行解碼。

圖1右為白光LED模組,白光LED模組使用螢光粉轉換發光二極體(Phosphor-converted LED, PC LED)發射白光,白光由波長450奈米藍光加上受藍光激發之黃色螢光粉所發出波長550奈米黃光,形成白光LED(White LED),接收端使用矽光接收二極體(Silicon Detector),MCU1送出編碼後之調光訊號至LED模組。

圖1 雙向通訊架構圖(左圖RS485、中圖NIR LED、右圖白光LED)

另一端矽光接收二極體接收到白光後透過轉阻放大器(Transimpedance Amplifier, TIA)將光訊號轉成電壓訊號,再接至一開關電路(Switch)轉成On/Off訊號,再經過OP(LM358)進行訊號放大,最後再通過兩個Hex Schmitt Trigger Inverter(HD74LS14)做訊號正向波形修正(Shaping),再將訊號送至MCU2進行解碼。

利用三種通訊設定測試雙向傳輸

本研究使用三種通訊協定做測試,分別為RS485協議(Protocol)、NEC IR協議、及通用非同步收發傳輸器(Universal Asynchronous Receiver Transmitter, UART)協議,圖2分別為三種通訊協定之通訊訊號量測結果,圖2左上/下為RS485模組A對地(A-G)及B對地(B-G)之訊號量測結果,PC端送字元訊號至電腦COM PORT,透過USB介面送至MCU1(Arduino Nano),MCU1傳送UART訊號至RS485模組,接著,RS485模組以差動訊號形式傳送至另一RS485模組接收,再轉換成UART訊號送至MCU2,MCU2經USB介面送回PC端。

圖2右上為NIR LED收發訊號,MCU1以NEC CODE形式送出調變電訊號(Tx),其中調變訊號以38kHz為載波頻率,紅外線接收器收到光訊號後轉換成電訊號並去除38kHz載波,並將電訊號(Rx)送至MCU2,MCU2解碼後將訊號經USB介面送回PC端。

圖2 通訊訊號量測結果(圖左上/下為RS485模組收發訊號,圖右上為NIR LED模組收發訊號,圖右下為白光LED模組收發訊號)

圖2右下為白光LED收發訊號,MCU1以UART協議形式送出調變電訊號,矽光接收二極體收器收到光訊號後經訊號處理電路轉換成電訊號送至MCU2,MCU2解碼後將訊號經USB介面送回PC端,其PC端收發以9,600bit/s鮑率(Baud Rate)進行,皆能正確雙向接收字元。

有別於有線RS485模組及NIR LED模組收發訊號,白光LED模組收發訊號具有時間延遲現象,圖3顯示當MCU1以UART協議形式送出調變電訊號,矽光二極體接收器收到光訊號後經TIA+Switch+OP轉換成電訊號時,啟動位元(Start Bit)延遲36微秒,當經過Inv-trigger時Rx延遲達到44微秒,當再經過inv-trigger時Rx延遲達到56微秒,然後才將訊號送至MCU2。也就是說,過多的訊號處理程序將有效的提升通訊的可靠度,但也將降低通訊速度。

圖3 白光LED模組收發訊號延遲現象

圖4顯示微結構白光LED收發模組圖,其通訊架構與圖1白光LED雙向通訊架構圖完全相同,只有砲彈型低功率(0.06瓦)PC LED換成本研究團隊開發之微結構白光LED,在高功率(1瓦)藍光晶片上塗布黃色螢光粉,在封裝模具上製作微結構,於一次光學矽膠封裝時在封裝體上形成微結構,便可形成高效率聚光型微結構白光LED,其可聚光、高亮度、高效率及高調變特性非常適合用於可見光通訊之光源。

圖4 微結構白光LED模組

本研究在PC端以Open-source Arduino Software內的序列埠控制軟體Serial Monitor進行雙向字元對傳測試,圖5為電腦以Serial Monitor資料雙向互傳結果,其PC端收發以4,800bit/s鮑率由圖左COM16傳送字元至MCU1,透過微結構白光LED模組,傳送資料至MCU2,MCU2再將資料由圖5右的COM17接收,傳送至Serial Monitor的接收螢幕,同樣的,字元也可以由圖右COM17傳送,透過可見光通訊並由COM16接收,並顯示於螢幕。該研究成功透過可見光通訊於兩個MCU之間傳送資訊並於PC端顯示,不過受限於PC與MCU通訊速度,最高鮑率為9,600bit/s,後續實驗也以此鮑率做測試。

圖5 電腦Serial Monitor資料雙向互傳

此次研究在PC端以自行撰寫Matlab GUI,測試可見光通訊傳送文字檔案,圖6為Matlab GUI文字檔案資料互傳介面及測試結果,圖6 A區域顯示,當按下傳送按鈕,Matlab將讀取txtfilea1.txt內容,txtfilea1.txt內容為1至255 ASCII碼字元格式。Matlab每送出1個字元至COM PORT便顯示Send a1 Done,並顯示其傳送值。Matlab將透過光通訊讀取該字元,如成功便顯示Received al Done並顯示其接收值,並存檔於txtfileb1.txt,如不成功便顯示0並存檔於txtfileb1.txt。

圖6 Matlab GUI文字檔案資料互傳介面

圖6 B區域顯示,txtfilea1.txt內容傳送至txtfileb1.txt的位元錯誤率(Byte Error Rate),本次測試時於傳送期間刻意用手遮住光線,在兩百五十五次傳送下有八十二次不成功,其位元錯誤率=82/255=3215.69(單位:萬分之一)。

圖6 C區域顯示Matlab由開始檔案傳送至結束總共花了33.5026秒,為維持通訊穩定度,Matlab與Arduino Nano通訊時每次重設時間(需要花2.5秒)過長,圖6 A區域右方顯示,當按下傳送按鈕,Matlab將讀取txtfileb2.txt內容,txtfileb2.txt內容為1至255 ASCII碼字元格式,Matlab每送出1個字元至COM PORT便顯示Send b2 Done並顯示其傳送值,Matlab將透過光通訊讀取該字元,如成功便顯示 Received a2 Done並顯示其接收值,並存檔於txtfilea2.txt。

如不成功便顯示0並存檔於txtfileb1.txt,本次測試時於傳送期間不刻意用手遮住光線,在兩百五十五次傳送下完全成功,其位元錯誤率為零,圖6 C區域右方顯示Matlab由開始檔案傳送至結束總共花33.4126秒,此實驗結果顯示以MCU為核心架構已可以透過可見光通訊完成文字檔案雙向對傳。

圖7為微結構LED光通訊控制RGBA LED之Matlab GUI介面設計,圖7 A區域有四個拉BAR可分別設定RGBA的LED亮度值(0?1),1為全亮,當按下Send and Read Data按鈕,Matlab將設定值透過COM PORT傳送至MCU1,並於圖7 B區域顯示傳送值,亦於圖7 D區域顯示Sent Done,當MCU2收到設定值時將傳送相對應的PWM值至四通道RGBA LED DRIVER。

圖7 結構LED光通訊控制RGBA LED之Matlab

RGBA LED DRIVER點亮RGBA LED,MCU2並透過光通訊回傳設定值至MCU1,MCU1透過COM PORT傳至PC,Matlab讀取MCU1回傳值,並顯示於圖7 C區域,並於圖7 D區域顯示Rceived Done。 圖8顯示此智慧照明系統架構圖及研究結果,透過Matlab GUI可分別點亮RGBA光源內的紅光晶片、綠光晶片、藍光晶片或琥珀光晶片,並設定特定亮度比例,可混光形成白光,如再加一球型光學外殼(Optic Lens),便形成白光燈泡,對任意目標之亮度,顏色或光譜都可以透過演算法得到RGBA亮度比例並透過此Matlab GUI輸出目標之設定值。

圖8 微結構LED光通訊控制RGBA LED之應用GUI介面

(本文作者皆任職於工研院綠能所先進照明關鍵技術研究室)

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!