最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

樹莓派“識色”圖形化編程案例二則

2021-11-19 12:09 作者:壹零社  | 我要投稿

文/山東省招遠第一中學 牟曉東

常規(guī)的顏色傳感器內(nèi)置有紅、綠、藍三基色傳感元器件,在濾色器的作用下從可視光的區(qū)域中進行顏色數(shù)據(jù)的獲取,輸出RGB數(shù)值如果將顏色傳感器接入樹莓派進行“識色”,然后在古德微機器人網(wǎng)站進行“積木”式圖形化編程,可以非常方便地開發(fā)出一些比較有趣、實用的創(chuàng)客作品模塊,比如看卡識色的“變色龍”燈帶和視覺障礙者的“紅綠燈語音提醒器”。

一、看卡識色的“變色龍”燈帶

1.功能實現(xiàn)

根據(jù)顏色傳感器獲取到不同卡片(或其它物體)的顏色信息,分解出對應的RGB數(shù)值,作為燈帶60顆燈珠的發(fā)光三基色,相當于“復制”卡片的顏色再“粘貼”到每一顆燈珠上,實現(xiàn)“變色龍”燈帶的顯示效果。

2.實驗器材及連接

實驗器材包括樹莓派3B+和古德微擴展板各一塊,GY-33 TCS34725顏色傳感器(帶遮光筒)一個,可編程ws281x燈帶一條,公對母異色杜邦線四根,各種顏色卡片若干。

首先將燈帶插入擴展板的18號引腳,注意三根線的標注要與擴展板一一對應;接著,將四根杜邦線一端連接顏色傳感器(VCC、GND、SCL和SDA端),另一端連接至擴展板IIC接口(VCC、GND、CLK和DATA端);最后,給樹莓派通電,啟動操作系統(tǒng)(如圖1)。

?


3.進行圖形化編程

訪問古德微機器人網(wǎng)站(http://www.gdwrobot.cn),登錄進入自己賬號后點擊“設備控制”進入“積木”界面,開始圖形化編程:

首先,通過模塊語句“設置GPIO‘18’可控制燈帶‘60’個燈并設置亮度為‘50’”對燈帶進行初始化;接著,建立一個“重復當‘真’執(zhí)行”的循環(huán)結構,通過模塊語句“輸出調(diào)試信息‘獲取顏色檢測傳感器的數(shù)據(jù)’”,將顏色傳感器獲取的RGB數(shù)據(jù)以數(shù)組的形式在LOG調(diào)試信息區(qū)輸出,比如:“[172,144,240]”;然后建立三個變量:紅色分量、“綠色分量”和“藍色分量”,分別賦值為從RGB數(shù)據(jù)列表中的“第一”、“第二”和“最后”序列值,即分別獲取對應的顏色分量數(shù)值;再建立一個內(nèi)部循環(huán)結構,設置60個燈珠的發(fā)光顏色為對應的三個變量值;最后,添加“燈帶刷新顯示”模塊語句,控制燈帶按照設置的顏色效果發(fā)光,再添加“等待0.2秒”,防止程序運行占用過多的系統(tǒng)資源而“死機”(如圖2)。

?


4.測試“變色龍”燈帶

將程序保存后點擊“連接設備”,再點擊“運行”按鈕進行測試。此時,會在調(diào)試信息區(qū)不斷顯示有顏色傳感器實時獲取的各組RGB顏色數(shù)據(jù);嘗試將紅色、綠色、藍色和黃色卡片分別放置于顏色傳感器的遮光筒附近,燈帶立刻會隨之變色,發(fā)出對應顏色的光(如圖3),實現(xiàn)了“變色龍”燈帶的顯示效果。

?


?

二、視覺障礙者的“紅綠燈語音提醒器”

1.功能實現(xiàn)

顏色傳感器“負責”實時檢測十字路口的紅綠燈變換情況,根據(jù)不同顏色的燈光信號信息,樹莓派控制音箱發(fā)出對應的語音提醒信息,比如“綠燈,行!”、“紅燈,停!”。

2.實驗器材及連接

實驗器材包括樹莓派3B+和古德微擴展板各一塊,顏色傳感器一個,杜邦線四根,紅色、黃色和綠色LED燈各一支,音箱一個。

保持顏色傳感器與案例1相同的連接方式,然后,將紅色、黃色和綠色LED燈分別連接至擴展板的5號、6號和12號引腳(注意長腿為正極、短腿為負極),用來模擬路口紅綠燈;接著,將音箱的連接線插入樹莓派的圓形音頻輸出孔,通電,啟動操作系統(tǒng)(如圖4)。

?


3.進行圖形化編程

首先,建立一個名為“紅綠燈”的函數(shù),作用是模擬路口“紅綠燈”實現(xiàn)的功能:綠燈(12號)亮10秒,閃爍三次,熄滅;黃燈(6號)亮3秒,熄滅;紅燈(5號)亮10秒,熄滅(如圖5)。

?


接著,建立對應的子線程(注意名稱要與函數(shù)完全一致),對函數(shù)進行調(diào)用;然后,再建立一個“重復當‘真’執(zhí)行”的循環(huán)結構,將顏色傳感器獲取的顏色數(shù)據(jù)在LOG調(diào)試信息區(qū)進行實時顯示輸出;建立兩個變量“紅色分量”和“綠色分量”,分別為其賦值為顏色傳感器輸出數(shù)據(jù)的RGB列表中的第一個和第二個數(shù)據(jù);建立第三個變量,名為“最大值分量”,為其賦值為RGB列表中數(shù)值最大的數(shù)據(jù),表示RGB分量中最“占優(yōu)勢”的顏色對應數(shù)據(jù);接著,建立一個“如果…執(zhí)行…否則如果…執(zhí)行…否則…”三分支選擇結構,判斷條件為“最大值分量”與“綠色分量”或“紅色分量”是否相等,相等則說明對應顏色的LED燈亮起,執(zhí)行的動作分別是輸出文字調(diào)試信息和音箱播放對應的語音信息:“綠燈,行!”和“紅燈,停!”,注意要分別添加“等待3秒”模塊語句,作用是等待音箱播放完語音提醒;如果兩個條件均不符合,說明是黃色LED燈亮起,則執(zhí)行“黃燈,等!”的文字信息輸出和提醒語音的播放(如圖6)。

?


4.測試“紅綠燈語音提醒器”

將程序保存后點擊“運行”按鈕進行測試,“紅綠燈”LED開始循環(huán)閃亮工作,同時顏色傳感器在不斷檢測燈光的顏色,并且音箱中也會響起對應的“綠燈,行!”、“黃燈,等!”和“紅燈,停!”提醒語音,實現(xiàn)了預設的視覺障礙者“紅綠燈語音提醒器”的功能。

?


樹莓派“識色”圖形化編程案例二則的評論 (共 條)

分享到微博請遵守國家法律
万荣县| 铜梁县| 平武县| 太谷县| 呼玛县| 灯塔市| 安岳县| 高台县| 台州市| 桓台县| 东光县| 长沙市| 镇康县| 剑川县| 阜康市| 逊克县| 鄂尔多斯市| 通江县| 淮安市| 文化| 海门市| 伽师县| 晋中市| 长丰县| 沽源县| 和田县| 科技| 贡山| 阜平县| 同心县| 伽师县| 屏东市| 湘西| 巩义市| 临西县| 天峻县| 开阳县| 家居| 临潭县| 安陆市| 昌平区|