太陽の光には、目に見える光(可視光線)のほかに、目に見えない赤外線や紫外線が含まれています。
紫外線は、地表に届く光の中で、最も波長の短いものです。
紫外線は、波長によって、A、B、C の3つにわけられます
日焼けを起こしたり、皮膚がんの原因となる。
今回は、紫外線センサーを使用して、紫外線を測定し、その強度を表示させて見ました。
使用した紫外線センサーは、浜松フォトニクス社製の拡散型フォトダイオード「G7189」です。
次のような特長を持ったセンサーです。
<特長>
このセンサーの出力をオペアンプで、IV(電流電圧)変換し、紫外線強度(mW/cm2)をLCDに表示します。
有効受光面積と受光感度より、1mW/cm2の時の電圧を求めます。
//********************************************************************** /* <紫外線計> ■紫外線センサー 浜松ホトニクス社製 GaAsPフォトダイオード<G7189> 有効受光面積:0.58mm2 受光感度:0.25A/W 1.45μA=(0.58×10^-5)×(250×10^-3) オペアンプでI/V変換(100kΩ)した時の1mW/cm2の電圧 145mV=1.45μA×100kΩ */ //********************************************************************** unsigned int measurement(unsigned short channel) { unsigned int ad, cnt; // ad = 0; for (cnt = 0; cnt < 50; cnt++) { ad += Adc_Read(channel); } return (ad); } //********************************************************************** void main() { static unsigned char buf[12], cnt; static unsigned int ad; static double tmp; // OSCCON = 0b01110000; // クロックは8Mhz CMCON = 0b00000111; // コンパレータは使用しない。 // A/D変換を使用する。 ANSEL = 0b00010100; ADCON1.VCFG1 = 1; ADCON1.VCFG0 = 0; // ポートを初期化する。 TRISA = 0b10111100; TRISB = 0b00001111; // LCDを初期化する。 Lcd_Custom_Config(&PORTB,7,6,5,4,&PORTA,6,0,1); Lcd_Custom_Cmd(LCD_CURSOR_OFF); Lcd_Custom_Cmd(LCD_CLEAR); // while (1) { ad = measurement(2); tmp = ((double)ad * 2.44140625) / 50.0; // WordToStr((tmp * 1000.0) / 145.0, buf); Lcd_Custom_Out(1, 1, buf); Lcd_Custom_Out(1, 6, "uW/cm2"); // for (cnt = 0; cnt < 16; cnt++) { if (cnt < ((unsigned int)tmp / 156)) Lcd_Custom_Chr(2, cnt + 1, 0xFF); else Lcd_Custom_Chr(2, cnt + 1, ' '); } // Delay_ms(500); } } //**********************************************************************