官术网_书友最值得收藏!

第2課 會發(fā)光的LED燈

LED(LightEmittingDiode)燈又稱發(fā)光二極管,是一種能夠直接將電能轉(zhuǎn)化為可見光的固態(tài)半導體器件,如圖2-1所示。

圖2-1 LED燈

課程目標

· 熟練使用順序結(jié)構(gòu)控制LED燈的亮和滅;

· 理解PWM脈沖寬度調(diào)制技術并控制LED燈的明暗;

· 掌握程序的循環(huán)結(jié)構(gòu)和呼吸燈的程序設計。

任務描述

· 制作臺燈,編寫程序控制臺燈的亮或滅;

· 編寫程序制作呼吸燈。

動手制作

1.使用樂高積木搭建臺燈

使用樂高積木能夠很容易地搭建出臺燈。本課臺燈的結(jié)構(gòu)利用樂高的梁和銷進行搭建,如圖2-2所示。

圖2-2 積木搭建的燈

知識加油站

樂高梁分為直梁和彎梁,如圖2-3和2-4所示。為了搭建方便,也可以使用四邊形梁,如圖2-5所示。我們搭建的機器人主要依靠這幾種梁搭建出不同的機器人結(jié)構(gòu)。

圖2-3 直梁

圖2-4 彎梁

圖2-5 四邊形梁

銷分為黑色銷和灰色銷,如圖2-6所示。黑色銷和灰色銷的區(qū)別在于,黑色銷連接部分更加堅固,灰色銷連接部分比較松動。當需要固定結(jié)構(gòu)的時候,我們利用黑色銷搭建;當需要轉(zhuǎn)動結(jié)構(gòu)的時候(如連桿機構(gòu)),就可以利用灰色銷搭建。

圖2-6 灰色銷和黑色銷

十字軸如圖2-7所示,它可以很方便地連接兩根梁,固定的時候兩端連接軸套。

圖2-7 十字軸

拋磚引玉

使用樂高積木零件進行搭建更加簡單、易學,可以在非常短的時間制作出滿意的作品。使用的梁和銷,相當于工業(yè)產(chǎn)品中的金屬梁和螺絲釘。在熟練使用本套課件制作機器人后,同學們再去嘗試金屬零件的制作就輕而易舉了。

2.主板與I/O擴展板連接

將I/O擴展板插入Arduino主板上方,插針要與主板底座相對應,連接圖如圖2-8所示。

圖2-8 主板與I/O擴展板連接

知識加油站

I/O擴展板

主板可以方便地與I/O擴展板相互連接。擴展板提供14個數(shù)字3P針腳、6個模擬3P針腳;中部可直接插入Xbee封裝的藍牙、WiFi和Xbee通信模塊,并配有普通藍牙模塊、APC和SD卡的擴展接口;擴展板角落接線柱為主控器和擴展板供電,中部接線柱為數(shù)字口上的舵機供電,如圖2-9所示。

圖2-9 FansMakerI/O擴展板

3.LED燈與主板連接

LED燈模塊如圖2-10所示。

圖2-10 LED燈模塊

知識加油站

LED燈的優(yōu)點是體積小、發(fā)熱量少、壽命長、省電、光源色彩豐富、抗沖擊和抗震性能好、不易破損、安全性高。

LED燈有3個引腳,VCC、GND、D分別代表正極、地和數(shù)據(jù)。通過導線與主板的3個引腳對應連接,注意線序不要接錯(顏色要對應),將LED燈連接到主板的數(shù)字4針腳上,如圖2-11所示。

圖2-11 LED燈與擴展板連接

拋磚引玉

導線的顏色與數(shù)字針腳的顏色是對應的,分別是黑色、紅色和藍色,連接時黑色接大地,紅色連接正極,藍色連接數(shù)據(jù),這樣就不會出錯了。注意,一旦連接出現(xiàn)問題,有可能會燒壞設備,如果看到煙霧或聞到燒焦的氣味,要立刻拔掉電源。

4.LED燈與積木連接

通過螺絲和螺母將LED燈與積木進行連接,如圖2-12所示。

圖2-12 LED燈與積木連接

程序設計

本節(jié)課編寫程序控制臺燈的亮或滅。

1.控制LED燈亮或滅

控制數(shù)字針腳4設定值為高,LED燈亮,如圖2-13所示。當設定值為低時,燈滅。這里要注意在燈亮和滅程序之間加入延時,否則,我們的肉眼可能無法看到燈亮。

圖2-13 LED燈亮

制作SOS信號燈時,SOS信號燈亮的時間是三長兩短,如圖2-14所示的程序是一長一短,試編寫三長兩短的程序。

圖2-14 LED燈亮

2.控制LED燈亮、較亮、暗和滅

LED燈有亮和滅,如果需要稍亮一些或稍暗一些,是否可以用程序進行控制呢?答案是肯定的,我們需要使用PWM脈沖寬度調(diào)制技術,Arduino主板的PWM端口分別是3、5、6、9、10、11。注意,應該將LED連接到具有PWM功能的接口上,這里將它連接到數(shù)字接口3上。

知識加油站

PWM脈沖寬度調(diào)制

數(shù)字信號只有高(5V)、低(0V)兩種電壓信號。如果要使燈變暗,可以通過串聯(lián)電阻實現(xiàn),但是程序中如果要實現(xiàn)頻繁地變換燈的不同亮度,用電阻的方法就不現(xiàn)實了,我們需要使用PWM技術。

PWM使用占空比控制方波,從而輸出不同的電壓。占空比就是高電平保持的時間與該PWM的時鐘周期的時間之比,占空比越大,電壓越高,燈就越亮。如圖2-15所示。

圖2-15 PWM方波

PWM使用數(shù)字手段控制模擬的輸出,例如00000000表示0V,11111111表示5V, 10101010表示2.5V。這樣,利用PWM技術就可以將數(shù)字針腳的設備當成模擬口使用了,例如燈的明暗、電機的轉(zhuǎn)速都是依靠PWM脈沖寬度調(diào)制技術實現(xiàn)的。

程序如圖2-16所示,由于使用PWM技術,在程序設計中應使用“設定模擬針腳值”模塊。

圖2-16 設定模擬針腳值

拋磚引玉

Arduino主板上數(shù)字接口前有“~”標記的是支持PWM技術的接口,在傳感器擴展板和電機擴展板上面有“*”標記的是支持PWM技術的接口,可以通過這個方法查找支持PWM技術的數(shù)字接口。

3.呼吸燈的程序設計

LED燈可以像人的呼吸一樣緩慢地變暗和變亮,呼吸燈的程序設計需要使用“當循環(huán)”語句。在“當循環(huán)”語句中,程序會被循環(huán)執(zhí)行。程序如圖2-17所示。

圖2-17 呼吸燈

知識加油站

當循環(huán)

當test條件成立時,執(zhí)行commands命令語句并循環(huán);當條件不成立時退出循環(huán),如圖2-18所示。像這種可以循環(huán)執(zhí)行的語句結(jié)構(gòu)叫做循環(huán)結(jié)構(gòu)。

圖2-18 當循環(huán)

變量

變量是用來儲存數(shù)值或字符的,它可以進行數(shù)學運算。舉個例子,變量就像水杯一樣,數(shù)值或字符會像水一樣存放在水杯中,變量內(nèi)容在第6課會重點講解。

變量可以重復儲存數(shù)值,新存儲的數(shù)值會覆蓋掉前面存儲的數(shù)值。如圖2-19所示,led變量加1后,將結(jié)果再賦值給led變量。

圖2-19 設置變量led加1

?完成效果

臺燈的完成效果如圖2-20所示,你也可以加上按鈕,這樣就可以制作一個腳踏燈了。

圖2-20 制作的臺燈

圖2-20(續(xù))

?我問你答

你對PWM技術是如何理解的?

________________________________________________________________________

知識拓展

PWM技術對直流電機的控制

利用PWM技術可以控制燈光的明暗,它還可以控制直流電機的轉(zhuǎn)速。設置模擬針腳值0~255(0是停止,255是最大值)。可以通過PWM控制電機的轉(zhuǎn)速。

主站蜘蛛池模板: 广宁县| 常宁市| 安阳县| 丹巴县| 新民市| 罗定市| 张掖市| 灯塔市| 宜春市| 治多县| 徐州市| 石棉县| 怀安县| 樟树市| 桃源县| 沙坪坝区| 邻水| 潜山县| 翁源县| 陈巴尔虎旗| 盐津县| 漾濞| 中超| 新丰县| 长春市| 陆川县| 灵台县| 龙州县| 长宁县| 盐山县| 黄平县| 双辽市| 微山县| 丹寨县| 迭部县| 利辛县| 石林| 建湖县| 滨海县| 岳池县| 通化县|