37款傳感器與模塊的提法,在網(wǎng)絡(luò)上廣泛流傳,其實Arduino能夠兼容的傳感器模塊肯定是不止37種的。鑒于本人手頭積累了一些傳感器和模塊,依照實踐出真知(一定要動手做)的理念,以學(xué)習(xí)和交流為目的,這里準備逐一動手試試做實驗,不管成功與否,都會記錄下來---小小的進步或是搞不定的問題,希望能夠拋磚引玉。?
【Arduino】108種傳感器模塊系列實驗(資料+代碼+圖形+仿真)
實驗五十六: 8路LED流水的燈跑馬燈模塊SUNLEPHANT

發(fā)光二極管
簡稱為LED。由含鎵(Ga)、砷(As)、磷(P)、氮(N)等的化合物制成。當(dāng)電子與空穴復(fù)合時能輻射出可見光,因而可以用來制成發(fā)光二極管。在電路及儀器中作為指示燈,或者組成文字或數(shù)字顯示。砷化鎵二極管發(fā)紅光,磷化鎵二極管發(fā)綠光,碳化硅二極管發(fā)黃光,氮化鎵二極管發(fā)藍光。因化學(xué)性質(zhì)又分有機發(fā)光二極管OLED和無機發(fā)光二極管LED。

LED發(fā)光原理
它是半導(dǎo)體二極管的一種,可以把電能轉(zhuǎn)化成光能。發(fā)光二極管與普通二極管一樣是由一個PN結(jié)組成,也具有單向?qū)щ娦?。?dāng)給發(fā)光二極管加上正向電壓后,從P區(qū)注入到N區(qū)的空穴和由N區(qū)注入到P區(qū)的電子,在PN結(jié)附近數(shù)微米內(nèi)分別與N區(qū)的電子和P區(qū)的空穴復(fù)合,產(chǎn)生自發(fā)輻射的熒光。不同的半導(dǎo)體材料中電子和空穴所處的能量狀態(tài)不同。當(dāng)電子和空穴復(fù)合時釋放出的能量多少不同,釋放出的能量越多,則發(fā)出的光的波長越短。常用的是發(fā)紅光、綠光或黃光的二極管。發(fā)光二極管的反向擊穿電壓大于5伏。它的正向伏安特性曲線很陡,使用時必須串聯(lián)限流電阻以控制通過二極管的電流。限流電阻R可用下式計算:
R=(E-UF)/IF
式中E為電源電壓,UF為LED的正向壓降,IF為LED的正常工作電流。發(fā)光二極管的核心部分是由P型半導(dǎo)體和N型半導(dǎo)體組成的晶片,在P型半導(dǎo)體和N型半導(dǎo)體之間有一個過渡層,稱為PN結(jié)。在某些半導(dǎo)體材料的PN結(jié)中,注入的少數(shù)載流子與多數(shù)載流子復(fù)合時會把多余的能量以光的形式釋放出來,從而把電能直接轉(zhuǎn)換為光能。PN結(jié)加反向電壓,少數(shù)載流子難以注入,故不發(fā)光。這種利用注入式電致發(fā)光原理制作的二極管叫發(fā)光二極管,通稱LED。 當(dāng)它處于正向工作狀態(tài)時(即兩端加上正向電壓),電流從LED陽極流向陰極時,半導(dǎo)體晶體就發(fā)出從紫外到紅外不同顏色的光線,光的強弱與電流有關(guān)。

LED的優(yōu)點主要有:
1、節(jié)能,比白熾燈節(jié)能80%以上,比節(jié)能燈節(jié)能50%以上。
2、體積小,重量輕,不怕震動。
3、光效高,是白熾燈15m/w的8倍,是熒光燈50 Lm/w的2倍多。
4、光色可選擇,LED光源的發(fā)光顏色和色溫都可以靈活應(yīng)用。
5、.方向性好,LED發(fā)光角度可以靈活調(diào)整。
6、環(huán)保:沒有節(jié)能燈所含的汞等有害物質(zhì)。
7、.冷光源無紫外線和紅外線,故沒有熱量,沒有輻射。
8、壽命長,壽命可達5萬-10萬小時比傳統(tǒng)光源壽命長10-50倍以上。
9、.響應(yīng)速度快,納秒級。

LED的缺點:
1、散熱問題,LED在電致光的過程中另外一部分能量轉(zhuǎn)化成熱量,如無法及時散發(fā)出去,PN結(jié)的結(jié)溫將會升高,加速芯片和封裝樹脂的老化,使芯片失效,影響LED的使用壽命與發(fā)光表現(xiàn)。
2、防水性能差,是戶外使用的一個致命弱點光源內(nèi)部吸水后內(nèi)部金屬氧化影響輸出或產(chǎn)生內(nèi)應(yīng)力、熒光粉吸潮變色,光色漂移。
3、成本較高.光源.散熱器.電源.高透燈罩/透鏡/反射罩.四者成本集體推高LED成本。
4、需要驅(qū)動器提供恒流電源,驅(qū)動器壽命是影響燈具壽命的重要因素。
5、半導(dǎo)體器件,對靜電影響比較敏感,易被靜電擊穿PN結(jié)導(dǎo)致漏電流或死燈。



LED發(fā)光二極管特性
1、極性
發(fā)光二極管的兩根引線中較長的一根為正極,應(yīng)接電源正極。有的發(fā)光二極管的兩根引線一樣長,但管殼上有一凸起的小舌,靠近小舌的引線是正極。
LED單向?qū)ㄐ?,LED只能往一個方向?qū)ǎㄍ姡凶髡蚱茫ㄕ蚱珘海?,?dāng)電流流過時,電子與空穴在其內(nèi)復(fù)合而發(fā)出單色光,這叫電致發(fā)光效應(yīng),而光線的波長、顏色跟其所采用的半導(dǎo)體材料種類與摻入的元素雜質(zhì)有關(guān)。具有效率高、壽命長、不易破損、開關(guān)速度高、高可靠性等傳統(tǒng)光源不及的優(yōu)點。白光LED的發(fā)光效率,在近幾年來已經(jīng)有明顯的提升,同時,在每千流明的購入價格上,也因為投入市場的廠商相互競爭的影響,而明顯下降。雖然越來越多人使用LED照明作辦公室、家具、裝飾、招牌甚至路燈用途,但在技術(shù)上,LED在光電轉(zhuǎn)換效率(有效照度對用電量的比值)上仍然低于新型的熒光燈,是國家以后發(fā)展民用的去向。
2、適合做光源與信號顯示器
與白熾燈泡和氖燈相比,發(fā)光二極管的特點是:工作電壓很低(有的僅一點幾伏);工作電流很小(有的僅零點幾毫安即可發(fā)光);抗沖擊和抗震性能好,可靠性高,壽命長;通過調(diào)制通過的電流強弱可以方便地調(diào)制發(fā)光的強弱。由于有這些特點,發(fā)光二極管在一些光電控制設(shè)備中用作光源,在許多電子設(shè)備中用作信號顯示器。把它的管心做成條狀,用7條條狀的發(fā)光管組成7段式半導(dǎo)體數(shù)碼管,每個數(shù)碼管可顯示0~9,10個阿拉伯?dāng)?shù)字以及A,B,C,D,E,F(xiàn)等部分字母(必須區(qū)分大小寫)。
3、主要參數(shù)
LED的光學(xué)參數(shù)中重要的幾個方面就是:光通量、發(fā)光效率、發(fā)光強度、光強分布、波長。
4、發(fā)光效率和光通量
發(fā)光效率就是光通量與電功率之比,單位一般為lm/W。發(fā)光效率代表了光源的節(jié)能特性,這是衡量現(xiàn)代光源性能的一個重要指標。
5、發(fā)光強度和光強分布
LED發(fā)光強度是表征它在某個方向上的發(fā)光強弱,由于LED在不同的空間角度光強相差很多,隨之而來我們研究了LED的光強分布特性。這個參數(shù)實際意義很大,直接影響到LED顯示裝置的最小觀察角度。比如體育場館的LED大型彩色顯示屏,如果選用的LED單管分布范圍很窄,那么面對顯示屏處于較大角度的觀眾將看到失真的圖像。而且交通標志燈也要求較大范圍的人能識別。
6、波長
對于LED的光譜特性我們主要看它的單色性是否優(yōu)良,而且要注意到紅、黃、藍、綠、白色LED等主要的顏色是否純正。因為在許多場合下,比如交通信號燈對顏色就要求比較嚴格,不過據(jù)觀察我國的一些LED信號燈中綠色發(fā)藍,紅色的為深紅,從這個現(xiàn)象來看我們對LED的光譜特性進行專門研究是非常必要而且很有意義的。

直針8路流水燈、跑馬燈模塊單片機外擴模塊

模塊規(guī)格:
1.PCB尺寸:47mm(長)*19mm(寬)*1.6mm(厚)
2.LED:5mm紅發(fā)紅發(fā)光二極管
3.排阻阻值470歐姆或者1000歐姆


模塊電原理圖




/*
【Arduino】168種傳感器模塊系列實驗(56)
實驗五十六: 8路LED流水燈跑馬燈模塊SUNLEPHANT
*/
int BASE = 6 ;
int NUM = 8;??
void setup()
{
? ?for (int i = BASE; i < BASE + NUM; i ++)
? ?{
? ???pinMode(i, OUTPUT);? ?
? ?}
}
void loop()
{
? ?for (int i = BASE; i < BASE + NUM; i ++)
? ?{
? ???digitalWrite(i, LOW);? ?
? ???delay(200);? ?? ???
? ?}
? ?for (int i = BASE; i < BASE + NUM; i ++)
? ?{
? ???digitalWrite(i, HIGH);? ?
? ???delay(200);? ?? ???
? ?}??
}

/*
【Arduino】168種傳感器模塊系列實驗(56)
實驗五十六: 8路LED流水燈跑馬燈模塊SUNLEPHANT
程序之二,流水燈效果:全滅的燈逐個往一邊點亮,再逐
個往開始端滅掉,循環(huán)即可,當(dāng)然也可以其它效果,可自己設(shè)定
*/
int led1 = 6;
int led2 = 7;
int led3 = 8;
int led4 = 9;
int led5 = 10;
int led6 = 11;
int led7 = 12;
int led8 = 13;
int i;
void setup() {
for (i = 6; i < 14; i++)
{
pinMode(i, OUTPUT);
}
}
void loop() {
for (i = 5; i < 14; i++)
{
digitalWrite(i, HIGH);
delay(100);
} for (i = 13; i > 5; i--)
{
digitalWrite(i, LOW);
delay(100);
}
}
/*
【Arduino】168種傳感器模塊系列實驗(56)
實驗五十六: 8路LED流水燈跑馬燈模塊SUNLEPHANT
程序之三,控制多個LED實現(xiàn)多種閃爍效果
*/
intled1 =6;
intled2 =7;
intled3 =8;
intled4 =9;
intled5 =10;
intled6 =11;
intled7 =12;
intled8 =13;
intn;
void setup()
{
for(n=6;n<=13;n++)
{
??pinMode(n, OUTPUT);??
}
}
void loop()
{
??turn1();
??clean();
??turn2();
??clean();
??turn3();
??clean();
}
void turn1()
{
for(n=6;n<=13;n++)
{
? ? digitalWrite(n,HIGH);
delay(300);
}
for(n=6;n<=13;n++)
{
? ? digitalWrite(n,LOW);
delay(300);
}
}
void turn2()
{for(intx=0;x<=2;x++)
{
for(n=6;n<=13;n++)
{
? ? digitalWrite(n,HIGH);? ?
}
delay(300);
for(n=6;n<=13;n++)
{
? ? digitalWrite(n,LOW);
}
delay(300);
}
}
void turn3()
{
for(intx=0;x<=2;x++)
??{
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
for(n=8;n<=13;n++){
? ? digitalWrite(n,LOW);
??}
delay(300);
digitalWrite(10,HIGH);
digitalWrite(11,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(8,LOW);
digitalWrite(9,LOW);
digitalWrite(12,LOW);
digitalWrite(13,LOW);
delay(300);
digitalWrite(12,HIGH);
digitalWrite(13,HIGH);
for(n=6;n<=11;n++){
? ? digitalWrite(n,LOW);
??}
delay(300);
}
}
void clean()
{for(n=6;n<=13;n++)
{
? ? digitalWrite(n,LOW);? ?
}
delay(300);
}


