找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

帖子
查看: 5962|回復(fù): 28
打印 上一主題 下一主題
收起左側(cè)

【Arduino】168種傳感器系列實(shí)驗(yàn)(154)---ML8511紫外線傳感器

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
37款傳感器與模塊的提法,在網(wǎng)絡(luò)上廣泛流傳,其實(shí)Arduino能夠兼容的傳感器模塊肯定是不止37種的。鑒于本人手頭積累了一些傳感器和執(zhí)行器模塊,依照實(shí)踐出真知(一定要?jiǎng)邮肿觯┑睦砟�,以學(xué)習(xí)和交流為目的,這里準(zhǔn)備逐一動(dòng)手試試做實(shí)驗(yàn),不管成功與否,都會(huì)記錄下來---小小的進(jìn)步或是搞不定的問題,希望能夠拋磚引玉。

【Arduino】168種傳感器模塊系列實(shí)驗(yàn)(資料+代碼+圖形+仿真)
實(shí)驗(yàn)一百五十四:ML8511紫外線傳感器模塊  模擬量輸出UV Sensor Breakou









分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:513258 發(fā)表于 2020-4-14 14:21 | 只看該作者
本帖最后由 eagler8 于 2020-4-14 17:21 編輯



ML8511
是紫外線傳感器,適用于獲取室內(nèi)或室外的紫外線強(qiáng)度。 配有內(nèi)部放大器,可根據(jù)紫外線強(qiáng)度將光電流轉(zhuǎn)換為電壓。這項(xiàng)獨(dú)特的功能為與ADC等外部電路提供了便捷的接口。 在掉電模式下,典型待機(jī)電流為0.1μA,因此可以延長電池壽命。
ML8511芯片,是日本商號(hào)沖電氣工業(yè)株式會(huì)社(Oki Electric Industry Co., Ltd.)生產(chǎn)的,敏感波長:UV-A(320-400nm),UV-B(280-320nm) 。



回復(fù)

使用道具 舉報(bào)

板凳
ID:513258 發(fā)表于 2020-4-14 14:24 | 只看該作者
ML8511特征
•對(duì)UV-A和UV-B敏感的光電二極管
•嵌入式運(yùn)算放大器
•模擬電壓輸出
•低電源電流(典型值300uA)和低待機(jī)電流(典型值0.1uA)
•小型薄型表面貼裝封裝(4.0mm x 3.7mm x 0.73mm,12引腳陶瓷QFN)

ML8511應(yīng)用領(lǐng)域
•智能手機(jī),手表,氣象站,自行車導(dǎo)航,配件,游戲



回復(fù)

使用道具 舉報(bào)

地板
ID:513258 發(fā)表于 2020-4-14 14:28 | 只看該作者




回復(fù)

使用道具 舉報(bào)

5#
ID:513258 發(fā)表于 2020-4-14 14:30 | 只看該作者


ML8511主要參數(shù)
RoHS:        是       
產(chǎn)品:        Light to Voltage Converters       
峰值波長:        365 nm       
最大工作溫度:        + 70 C       
最小工作溫度:        - 20 C       
安裝風(fēng)格:        SMD/SMT       
封裝 / 箱體:        QFN-12       
工作電源電壓:        3.3 V       
工作電源電流:        300 uA       
封裝:        Reel       
封裝:        Cut Tape       
工廠包裝數(shù)量:        1000       
電源電壓-最大:        3.6 V       
電源電壓-最小:        2.7 V       
零件號(hào)別名:        ML8511AFCZ05BL

回復(fù)

使用道具 舉報(bào)

6#
ID:513258 發(fā)表于 2020-4-14 14:48 | 只看該作者

回復(fù)

使用道具 舉報(bào)

7#
ID:513258 發(fā)表于 2020-4-14 14:50 | 只看該作者

回復(fù)

使用道具 舉報(bào)

8#
ID:513258 發(fā)表于 2020-4-14 14:51 | 只看該作者

回復(fù)

使用道具 舉報(bào)

9#
ID:513258 發(fā)表于 2020-4-14 14:52 | 只看該作者

回復(fù)

使用道具 舉報(bào)

10#
ID:513258 發(fā)表于 2020-4-14 14:53 | 只看該作者

回復(fù)

使用道具 舉報(bào)

11#
ID:513258 發(fā)表于 2020-4-14 15:12 | 只看該作者



GY-8511紫外線傳感器模塊GY-ML8511 模擬量輸出UV Sensor Breakou

說明:ML8511突破是一個(gè)易于使用的紫外線傳感器。MP8511紫外線(紫外線)傳感器的工作原理是輸出一個(gè)與檢測(cè)到的紫外線數(shù)量相關(guān)的模擬信號(hào)。這種突破可以非常方便地創(chuàng)建設(shè)備,警告用戶曬傷或檢測(cè)紫外線指數(shù),因?yàn)樗c天氣條件有關(guān)。

此傳感器可最有效地檢測(cè)280-390牛米的光線。這被歸為UVB(燃燒射線)光譜和大部分UVA(曬黑射線)光譜的一部分。它輸出的模擬電壓與測(cè)量的紫外線強(qiáng)度(mW/cm~2)成線性關(guān)系。如果你的微控制器可以做一個(gè)模擬到數(shù)字的信號(hào)轉(zhuǎn)換,那么你可以檢測(cè)紫外線的水平!

沖電氣(OKI)推出內(nèi)建運(yùn)算放大器的紫外線(UV)傳感器IC——ML8511。該產(chǎn)品運(yùn)用絕緣上覆硅(SOI)-CMOS,為該公司首款模擬電壓輸出、無濾光器的UV傳感器。ML8511可與UV光量成正比輸出模擬電壓。由于可以輸出電壓,因此可以直接連接內(nèi)建MCU的A/D數(shù)字/模擬轉(zhuǎn)換器,無需光電轉(zhuǎn)換電路。而且使用小型、薄型表面封裝方式,適合于便攜式設(shè)備用途。

回復(fù)

使用道具 舉報(bào)

12#
ID:513258 發(fā)表于 2020-4-14 15:16 | 只看該作者


該模塊采用了通用的ML8511 UV傳感器原件,可以用來檢測(cè)室內(nèi)或室外的紫外線密度。通過將光電流轉(zhuǎn)化成電壓的原理來檢測(cè)UV強(qiáng)度,同時(shí)非常適合被被外部電路所采用。該模塊還具備省電模式可達(dá)0.1uA,適合在智能可穿戴和手機(jī)等設(shè)備上使用。

應(yīng)用
紫外線等級(jí)監(jiān)視器
環(huán)境監(jiān)測(cè)儀、氣象站
DIY紫外線互動(dòng)裝置

技術(shù)規(guī)格
工作電壓:3.3V - 5V
通信接口:Gravity Analog(PH2.0-3P,模擬電壓輸出1V ~ 2.8VDC)
敏感波長:UV-A(320-400nm),UV-B(280-320nm)
工作溫度:-20~70°C
模塊尺寸:30 x 22mm

回復(fù)

使用道具 舉報(bào)

13#
ID:347384 發(fā)表于 2020-5-12 21:18 | 只看該作者
支持!!!!!!!!!!!!!
回復(fù)

使用道具 舉報(bào)

14#
ID:513258 發(fā)表于 2020-5-19 20:32 | 只看該作者

謝謝鼓勵(lì)
回復(fù)

使用道具 舉報(bào)

15#
ID:513258 發(fā)表于 2020-12-25 17:32 | 只看該作者


紫外線(Ultraviolet,UV)

是電磁波譜中波長為400nm~10nm輻射的總稱,不能引起人們的視覺。它是頻率比藍(lán)紫光高的不可見光。英語中,前綴ultra-意為意為“高于,超越”。


1801年,德國物理學(xué)家里特發(fā)現(xiàn):在日光光譜的紫端外側(cè)一段能夠使含有溴化銀的照相底片感光,從而發(fā)現(xiàn)了紫外線的存在。紫外線是由原子的外層電子受到激發(fā)后產(chǎn)生的。自然界的主要紫外線光源是太陽,太陽光透過大氣層時(shí)波長短于 290nm 的紫外線為大氣層中的臭氧吸收掉。


紫外線是陽光中波長為400nm~10nm(納米)的光線。英語為ultraviolet(縮寫為UV),前綴ultra-意為“高于,超越”。太陽光譜上,紫外線的頻率高于可見光線。可以分為UVA(紫外線A,波長400nm~320nm,低頻長波)、UVB(波長320nm~280nm,中頻中波)、UVC(波長280nm~100nm,高頻短波)、EUV(100nm~10nm,超高頻)4種。
其中,UVA的致癌性最強(qiáng),曬紅及曬傷作用是UVB的1000倍。UVC則一般會(huì)被臭氧層阻隔。IR是紅外線(infrared),可造成曬紅、微血管擴(kuò)張、皮膚炎,并促進(jìn)紫外線的致癌性。紫外線照射會(huì)讓皮膚產(chǎn)生大量自由基,導(dǎo)致細(xì)胞膜的過氧化反應(yīng),使黑色素細(xì)胞產(chǎn)生更多的黑色素,并往上分布到表皮角質(zhì)層,造成黑色斑點(diǎn)。紫外線可以說是造成皮膚皺紋、老化、松弛及黑斑的最大元兇。


紫外線照射人體時(shí),能促進(jìn)人體合成維生素D,以防止患佝僂病,經(jīng)常讓小孩曬曬太陽就是這個(gè)道理。紫外線還具有殺菌作用,醫(yī)院里的病房就利用紫外線消毒。但過強(qiáng)的紫外線會(huì)傷害人體,應(yīng)注意防護(hù)。





回復(fù)

使用道具 舉報(bào)

16#
ID:513258 發(fā)表于 2020-12-25 17:56 | 只看該作者


紫外線指數(shù)
是指當(dāng)太陽在天空中的位置最高時(shí)(一般是在中午前后,即從上午十時(shí)至下午三時(shí)的時(shí)間段里),到達(dá)地球表面的太陽光線中的紫外線輻射對(duì)人體皮膚的可能損傷程度。紫外線指數(shù)變化范圍用0-15的數(shù)字來表示,通常,夜間的紫外線指數(shù)為0,熱帶、高原地區(qū)、晴天時(shí)的紫外線指數(shù)為15。當(dāng)紫外線指數(shù)愈高時(shí),表示紫外線輻射對(duì)人體皮膚的紅斑損傷程度愈加劇,同樣地,紫外線指數(shù)愈高,在愈短的時(shí)間里對(duì)皮膚的傷害也愈大。

紫外線指數(shù)由兩部分組成,一部分是測(cè)量得到的不同波長的太陽紫外線強(qiáng)度,另一部分是醫(yī)學(xué)試驗(yàn)得到的不同類型皮膚經(jīng)紫外線照射后出現(xiàn)紅斑反映所需要的紫外線劑量,把這兩部分用數(shù)學(xué)方法組合處理后再按規(guī)定的標(biāo)準(zhǔn)轉(zhuǎn)換成數(shù)字就形成了向公眾發(fā)布的紫外線指數(shù)。因此紫外線指數(shù)可以理解為,到達(dá)地面的太陽紫外線強(qiáng)度以及人類裸露皮膚的影響程度,紫外線指數(shù)的數(shù)字越大,對(duì)皮膚造成的損害越大。醫(yī)學(xué)試驗(yàn)證明,以皮膚變紅為標(biāo)準(zhǔn),紫外線對(duì)皮膚的傷害,不僅和紫外線強(qiáng)度有關(guān),還和皮膚類型以及日曬時(shí)間有關(guān),所以在紫外線指數(shù)的實(shí)際應(yīng)用中,我們不僅需要知道不同紫外線指數(shù)的具體含義,還需要知道更多的防曬知識(shí)。

紫外線指數(shù)等級(jí)(Grade of UV Index)
分為一級(jí)~五級(jí),分級(jí)方法見附表
一級(jí):0,1,2 最弱<5100~180不需要采取防護(hù)措施;若長期在戶外,建議涂擦SPF在8-12之間的防曬護(hù)膚品。
二級(jí):3,4 弱 5~1060~100可以適當(dāng)采取一些防護(hù)措施,涂擦SPF在12-15之間、PA+的防曬護(hù)膚品。
三級(jí):5,6 中等 10~1530~60外出時(shí)戴好遮陽帽、太陽鏡和太陽傘等;涂擦SPF高于15、PA+的防曬護(hù)膚品。
四級(jí):7,8,9 強(qiáng) 15~3020~40避免在10點(diǎn)至14點(diǎn)暴露于日光下.外出時(shí)戴好遮陽帽、太陽鏡和太陽傘等,涂擦SPF20左右、PA++的防曬護(hù)膚品。
五級(jí):10和大于10 很強(qiáng) >=30小于20盡可能不在室外活動(dòng),必須外出時(shí),要采取各種有效的防護(hù)措施。



回復(fù)

使用道具 舉報(bào)

17#
ID:513258 發(fā)表于 2020-12-25 19:22 | 只看該作者

回復(fù)

使用道具 舉報(bào)

18#
ID:513258 發(fā)表于 2020-12-25 19:24 | 只看該作者

回復(fù)

使用道具 舉報(bào)

19#
ID:513258 發(fā)表于 2020-12-25 19:27 | 只看該作者
GY-8511紫外線傳感器模塊電原理圖




回復(fù)

使用道具 舉報(bào)

20#
ID:513258 發(fā)表于 2020-12-25 19:31 | 只看該作者




回復(fù)

使用道具 舉報(bào)

21#
ID:513258 發(fā)表于 2020-12-25 20:06 | 只看該作者
  1. /*
  2.   【Arduino】168種傳感器模塊系列實(shí)驗(yàn)(資料代碼+圖形編程+仿真編程)
  3.   實(shí)驗(yàn)一百五十四:ML8511紫外線傳感器模塊  模擬量輸出UV Sensor Breakou
  4.   接線
  5.   ML8511             arduino uno
  6.   VCC----------------------VCC
  7.   OUT----------------------A0
  8.   GND----------------------GND
  9.   實(shí)驗(yàn)之一:串口顯示ML8511紫外線傳感器數(shù)值
  10. */

  11. int ReadUVintensityPin = A0; //Output from the sensor

  12.     void setup()
  13.     {
  14.       pinMode(ReadUVintensityPin, INPUT);
  15.       Serial.begin(9600); //open serial port, set the baud rate to 9600 bps
  16.       Serial.println("Starting up...");
  17.     }

  18.     void loop()
  19.     {
  20.       int uvLevel = averageAnalogRead(ReadUVintensityPin);

  21.       float outputVoltage = 5.0 * uvLevel/1024;
  22.       float uvIntensity = mapfloat(outputVoltage, 0.99, 2.9, 0.0, 15.0);

  23.       Serial.print("UVAnalogOutput: ");
  24.       Serial.print(uvLevel);

  25.       Serial.print(" OutputVoltage: ");
  26.       Serial.print(outputVoltage);

  27.       Serial.print(" UV Intensity: ");
  28.       Serial.print(uvIntensity);
  29.       Serial.print(" mW/cm^2");

  30.       Serial.println();
  31.       delay(100);
  32.     }

  33.     //Takes an average of readings on a given pin
  34.     //Returns the average
  35.     int averageAnalogRead(int pinToRead)
  36.     {
  37.       byte numberOfReadings = 8;
  38.       unsigned int runningValue = 0;

  39.       for(int x = 0 ; x < numberOfReadings ; x++)
  40.         runningValue += analogRead(pinToRead);
  41.       runningValue /= numberOfReadings;

  42.       return(runningValue);

  43.     }

  44.     //The Arduino Map function but for floats
  45.     float mapfloat(float x, float in_min, float in_max, float out_min, float out_max)
  46.     {
  47.       return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
  48.     }
復(fù)制代碼


回復(fù)

使用道具 舉報(bào)

22#
ID:513258 發(fā)表于 2020-12-25 20:09 | 只看該作者
GY-8511紫外線傳感器模塊測(cè)試室內(nèi)紫外線情況,串口顯示





回復(fù)

使用道具 舉報(bào)

23#
ID:513258 發(fā)表于 2020-12-25 20:16 | 只看該作者
GY-8511紫外線傳感器模塊實(shí)際測(cè)試實(shí)驗(yàn)場(chǎng)景圖




回復(fù)

使用道具 舉報(bào)

24#
ID:513258 發(fā)表于 2020-12-25 20:21 | 只看該作者
GY-8511紫外線傳感器模塊接線示意圖



回復(fù)

使用道具 舉報(bào)

25#
ID:513258 發(fā)表于 2020-12-26 10:51 | 只看該作者
上午測(cè)量的室內(nèi)紫外線情況(前面是昨晚測(cè)量的)



回復(fù)

使用道具 舉報(bào)

26#
ID:513258 發(fā)表于 2020-12-26 11:17 | 只看該作者
  1. /*
  2.   【Arduino】168種傳感器模塊系列實(shí)驗(yàn)(資料代碼+圖形編程+仿真編程)
  3.   實(shí)驗(yàn)一百五十四:ML8511紫外線傳感器模塊  模擬量輸出UV Sensor Breakou

  4.   實(shí)驗(yàn)接線
  5.   ML8511 / Arduino
  6.   3.3V = 3.3V
  7.   OUT = A0
  8.   GND = GND
  9.   EN = 3.3V
  10.   Arduino 3.3V = Arduino A1

  11.   實(shí)驗(yàn)之二:串口顯示ML8511紫外線傳感器數(shù)值(帶3.3V基準(zhǔn)校準(zhǔn))
  12. */

  13. //Hardware pin definitions
  14. int UVOUT = A0; //Output from the sensor
  15. int REF_3V3 = A1; //3.3V power on the Arduino board

  16. void setup()
  17. {
  18.   Serial.begin(9600);

  19.   pinMode(UVOUT, INPUT);
  20.   pinMode(REF_3V3, INPUT);

  21.   Serial.println("MP8511 example");
  22. }

  23. void loop()
  24. {
  25.   int uvLevel = averageAnalogRead(UVOUT);
  26.   int refLevel = averageAnalogRead(REF_3V3);

  27.   //Use the 3.3V power pin as a reference to get a very accurate output value from sensor
  28.   float outputVoltage = 3.3 / refLevel * uvLevel;

  29.   float uvIntensity = mapfloat(outputVoltage, 0.99, 2.9, 0.0, 15.0);

  30.   Serial.print("MP8511 output: ");
  31.   Serial.print(uvLevel);

  32.   Serial.print(" MP8511 voltage: ");
  33.   Serial.print(outputVoltage);

  34.   Serial.print(" UV Intensity (mW/cm^2): ");
  35.   Serial.print(uvIntensity);

  36.   Serial.println();

  37.   delay(100);
  38. }

  39. //Takes an average of readings on a given pin
  40. //Returns the average
  41. int averageAnalogRead(int pinToRead)
  42. {
  43.   byte numberOfReadings = 8;
  44.   unsigned int runningValue = 0;

  45.   for (int x = 0 ; x < numberOfReadings ; x++)
  46.     runningValue += analogRead(pinToRead);
  47.   runningValue /= numberOfReadings;

  48.   return (runningValue);
  49. }

  50. //The Arduino Map function but for floats
  51. //From: http://forum.arduino.cc/index.php?topic=3922.0
  52. float mapfloat(float x, float in_min, float in_max, float out_min, float out_max)
  53. {
  54.   return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
  55. }
復(fù)制代碼


回復(fù)

使用道具 舉報(bào)

27#
ID:513258 發(fā)表于 2020-12-26 11:26 | 只看該作者

回復(fù)

使用道具 舉報(bào)

28#
ID:513258 發(fā)表于 2020-12-26 11:34 | 只看該作者
ML8511分支板連接到Arduino的接線
ML8511 / Arduino的
3.3V = 3.3V
輸出= A0
地=地
EN = 3.3V
Arduino 3.3V = Arduino A1

最后兩個(gè)連接有些不同。將分線上的EN引腳連接到3.3V以啟用設(shè)備。還要將Arduino的3.3V引腳連接到Arduino模擬引腳1。

這里使用了一個(gè)巧妙的技巧。模數(shù)轉(zhuǎn)換完全依靠VCC。我們假設(shè)這是5.0V,但如果該板由USB供電,則可能高達(dá)5.25V或低至4.75V。由于這個(gè)未知的窗口,這使得Arduino上的ADC相當(dāng)不準(zhǔn)確。為了解決這個(gè)問題,我們使用了非常準(zhǔn)確的板載3.3V參考電壓(準(zhǔn)確度在1%以內(nèi))。因此,通過在3.3V引腳上進(jìn)行模數(shù)轉(zhuǎn)換(將其連接到A1),然后將該讀數(shù)與傳感器的讀數(shù)進(jìn)行比較,無論VIN是多少,我們都可以推斷出真實(shí)的讀數(shù)(如只要高于3.4V)。

例如,我們知道Arduino上的ADC在讀取VCC時(shí)將輸出1023。如果從連接到3.3V的連接中讀取669,那么Arduino的電壓是多少?這是一個(gè)簡單的比例!
VCC / 1023 = 3.3V / 669
求解VCC,我們得到5.05V。如果您有數(shù)字萬用表,可以在Arduino上驗(yàn)證5V引腳。

既然我們確切地知道什么是VCC,我們就可以對(duì)UV電壓做一個(gè)更精確的ADC:
UV_Voltage / uvLevel = 3.3 / refLevel
uvLevel這就是我們從OUT圖釘中讀取的內(nèi)容。refLevel這就是我們?cè)?.3V引腳上讀取的內(nèi)容。解決UV_Voltage,我們可以獲得準(zhǔn)確的讀數(shù)。






回復(fù)

使用道具 舉報(bào)

29#
ID:763174 發(fā)表于 2021-4-19 19:19 | 只看該作者
親,焊接ML8511芯片的溫度應(yīng)該控制在什么范圍,該正向焊還是反向焊接呢
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表