2016/04/17

LinkIt ONE:簡單試用Grove紫外線感測器

簡單試用,真的非常簡單,就只是試一試而已,能動就收工。

首先感謝MakerPRO歐先生拿給我一套Grove感測器組合。

拿出Grove紫外線感測器

感測器是GUVA-S12D,可偵測波長200nm ~ 400nm。
官方網站給的圖,紫外線指數越強,會產生越大的光電流,呈線性關係。
背面照。
我裝在A0。
程式碼,都是從Seeed Studio官網抄來的:
void setup() {
  Serial.begin(115200);
}


void loop() {
  // 收集1024次
  long analog = 0;
  for(int i = 0; i < 1024; i++){
    analog += analogRead(A0);
    delay(2);
  }
  analog >>= 10; // 算出平均值
 
  float v = analog * 4.98 / 1023.0; // 電壓
  float intensity = v * 307; // 照射強度
  float uv_index = intensity / 200; // 紫外線指數
 
  Serial.print("The voltage value: ");
  Serial.print(v);
  Serial.println("V");

  Serial.print("Illumination intensity: ");
  Serial.print(intensity);
  Serial.println("mW/m^2");

  Serial.print("UV index: ");
  Serial.println(uv_index);
 
  delay(20);
}


開啟序列埠監控視窗,每10秒得到一次量測結果。第一項是模組輸出的電壓值;第二項是照射強度(illumination intensity),然後算出第三項紫外線指數。
不過我手裡也沒有別的紫外線指數測量儀器可供比對,也不知道對不對。

嘿,可到中央氣象局即時查詢紫外線指數喔。
或者到維基百科看看紫外線指數的定義吧。
收工。

4 comments:

  1. 想請問,紫外線照射強單位為mW/cm^2,可是程式結果為mW/m^2,是還需要另外計算嗎?

    ReplyDelete
    Replies
    1. 需要換算。
      搜尋「mW/cm^2 mW/m^2」就會有了。

      Delete
    2. 感謝你,另外方便請問紫外線照射是由信號電壓*307,那個307是怎麼得到的?官方網站只有寫乘上307,假如我今天只有photo-diode跟放大電路,得出來的電壓要計算照射強度,也是乘上307嗎?還是另外的規則?

      Delete
    3. 官方網站說的,
      http://wiki.seeed.cc/Grove-UV_Sensor/

      About our Grove - UV Sensor, we have converted Photocurrent to corresponding voltage value collected by Arduino/Seeeduino. The output voltage and the UV index is linear:

      illumination intensity = 307 * Vsig

      至於怎麼得到的,那就是製作該感測器的廠商,他們給的spec,詳細理論則要看感測器相關書籍。我不會,只會用而已。

      Delete