發布日期:2022-05-11 點擊率:39
《Scratch 傳感器板編程》由會員分享,可在線閱讀,更多相關《Scratch 傳感器板編程(27頁珍藏版)》請在人人文庫網上搜索。
1、模塊二:Scratch 傳感器板編程,XXX,武漢市創客教育導師 武漢 創客空間負責人,講 師:,武漢市中小學“創在基層”創客教育師資培訓系列活動,彈球游戲案例,使用說明,安裝好好搭搭插件,安裝完成后,雙擊桌面上“在線編程插件”圖標運行插件,選擇相應的串口。 在平臺編輯狀態,找到更多模塊,如連接狀態是紅色說明平臺沒有和傳感板通訊成功,如顯示綠色說明通訊成功。 如通訊未成功,點擊“在線編程插件”軟件的“連接”按鈕,再點擊Scratch綠旗運行平臺的作品,更多模塊連接狀態顯示綠色通訊成功。 通訊成功后,本模版舞臺上的傳感器參數就會跳動,程序中就可以調用這些傳感器制作互動多媒體作品。 瀏覽器優先使用
2、谷歌瀏覽器,360瀏覽器請使用極速模式,IE無法進行硬件下載請不要使用。,板卡介紹,(1)板卡上包含滑動傳感器、聲音傳感器、按鍵傳感器、光線傳感器、搖桿控制器、3個LED燈、4個模擬輸入接口。 (2)通信接口:micro USB 接口 (3)主控芯片:haohaodada (4)通信芯片:CH340G,在 Scratch 中使用按鍵,1,案例1:在 Scratch 中使用按鍵點亮臥室里的燈,利用傳感器板上的“Up”鍵與“Down”鍵設計一個程序,對房間里的燈進行控制。,讀取傳感器板上“Up”按鍵的狀態 “Up”鍵按下,數值為“1” “Up”鍵彈起,數值為“0”,讀取傳感器板上“Down”按鍵的
3、狀態 “Down”鍵按下,數值為“1” “Down”鍵彈起,數值為“0”,編寫腳本,編寫舞臺背景腳本,編寫小貓角色腳本,在 Scratch 中使用LED燈,2,案例2:在 Scratch 中使用 LED 燈防火小衛士,把煙霧濃度作為森林火災預警依據:,設置綠色和黃色LED 燈亮滅,取值范圍為(0,1) “0”:燈滅 “1”:燈亮,設置紅色 LED 燈的亮度,取值范圍為(0-100) “0” :燈滅 “1”-”100”:參數值越大,燈越亮,設置舞臺背景與初始化,舞臺背景,變量,初始化腳本,代碼參考,當“煙霧”變量值=“0”時,綠色 LED 燈亮,表示森林安全。 用黃色 LED 燈表示有煙霧且在安
4、全范圍內( “煙霧變量數值”“0”并且“煙霧變量值”“30”時,紅色 LED 燈亮起,表 示森林存在危險。,在 Scratch 中使用滑桿,3,案例3:在 Scratch 中使用滑桿,讀取傳感器板上滑桿的數值,取值范圍是(0,1023) 。該指令的數值會隨著滑片的左右移動呈線性變化,越往左移,數值越小;越往右移,數值越大。,在 Scratch 中使用搖桿,4,讀取傳感器板上搖桿的數值。 取值范圍(實際會有偏差): X(0-1023) ,Y(0-1023) 該指令的數值會隨著搖桿的上下左右移動呈線性變化: 越往左(下)移,數值越小;越往右(上)移,數值越大。,在 Scratch 中使用聲音,5,案例5:在 Scratch 中使用聲音,讀取傳感器板上的聲音傳感器當前接收到的聲音強度的數值,取值范圍(0,4095) 。聲音的強度又稱音量,也叫響度。人耳感受到的聲音強弱,是人對聲音大小的一個主觀感受。對于同一個聲音來說,距離越遠,聲音強度越小。,在 Scratch 中使用亮度傳感器,6,案例6:使用亮度傳感器,在 Scratch 中使用蜂鳴器,7,案例7:在 Scratch 中使用蜂鳴器,音調 低音 中音 高音,案例7:在 Scratch 中使用蜂鳴器,
讀取傳感器板上搖桿的數值。 取值范圍(實際會有偏差): X(0-1023) ,Y(0-1023) 該指令的數值會隨著搖桿的上下左右移動呈線性變化: 越往左(下)移,數值越小;越往右(上)移,數值越大。 在 Scratch 中使用聲音 5 案例5:在 Scratch 中使用聲音 讀取傳感器板上的聲音傳感器當前接收到的聲音強度的數值,取值范圍(0,4095) 。聲音的強度又稱音量,也叫響度。人耳感受到的聲音強弱,是人對聲音大小的一個主觀感受。對于同一個聲音來說,距離越遠,聲音強度越小。 在 Scratch 中使用亮度傳感器 6 案例6:使用亮度傳感器 在 Scratch 中使用蜂鳴器 7 案例7:在 Scratch 中使用蜂鳴器 音調 低音 中音 高音 案例7:在 Scratch 中使用蜂鳴器 * “ ” 模塊二:Scratch 傳感器板編程 彈球游戲案例 使用說明 安裝好好搭搭插件,安裝完成后,雙擊桌面上“在線編程插件”圖標運行插件,選擇相應的串口。 在平臺編輯狀態,找到更多模塊,如連接狀態是紅色說明平臺沒有和傳感板通訊成功,如顯示綠色說明通訊成功。 如通訊未成功,點擊“在線編程插件”軟件的“連接”按鈕,再點擊Scratch綠旗運行平臺的作品,更多模塊連接狀態顯示綠色通訊成功。 通訊成功后,本模版舞臺上的傳感器參數就會跳動,程序中就可以調用這些傳感器制作互動多媒體作品。 瀏覽器優先使用谷歌瀏覽器,360瀏覽器請使用極速模式,IE無法進行硬件下載請不要使用。 板卡介紹 (1)板卡上包含滑動傳感器、聲音傳感器、按鍵傳感器、光線傳感器、搖桿控制器、3個LED燈、4個模擬輸入接口。(2)通信接口:micro USB 接口(3)主控芯片:haohaodada(4)通信芯片:CH340G 在 Scratch 中使用按鍵 1 案例1:在 Scratch 中使用按鍵——點亮臥室里的燈 利用傳感器板上的“Up”鍵與“Down”鍵設計一個程序,對房間里的燈進行控制。 讀取傳感器板上“Up”按鍵的狀態 “Up”鍵按下,數值為“1” “Up”鍵彈起,數值為“0” 讀取傳感器板上“Down”按鍵的狀態 “Down”鍵按下,數值為“1” “Down”鍵彈起,數值為“0” 編寫腳本 編寫舞臺背景腳本 編寫小貓角色腳本 在 Scratch 中使用LED燈 2 案例2:在 Scratch 中使用 LED 燈——防火小衛士 把煙霧濃度作為森林火災預警依據: 有無煙霧 LED燈狀態 狀態說明 沒有煙霧 綠燈亮 安全無火警 有少量煙霧 黃燈亮 提示火警隱患 有大量煙霧 紅燈亮 提示火警危險 設置綠色和黃色LED 燈亮滅,取值范圍為(0,1) “0”:燈滅 “1”:燈亮 設置紅色 LED 燈的亮度,取值范圍為(0-100) “0” :燈滅 “1”-”100”:參數值越大,燈越亮 設置舞臺背景與初始化 舞臺背景 變量 初始化腳本 代碼參考 當“煙霧”變量值=“0”時,綠色 LED 燈亮,表示森林安全。 用黃色 LED 燈表示有煙霧且在安全范圍內( “煙霧變量數值”>“0”并且“煙霧變量值”
Scratch傳感器板能夠將傳感器檢測到的數據傳送到Scratch程序,成為連接實體世界與虛擬世界的一座橋梁。我一直對這塊傳感器板很感興趣,后來發現可以用Arduino代替傳感器板的功能。我先做了一些嘗試,并在Scratch教師培訓活動推薦給其他老師使用。
做實驗用的Arduino板
用Arduino做傳感器實驗
老師們對于傳感器的使用表現出了極大的興趣,相信學生也會很感興趣。
用Arduino代替Scratch傳感器板,雖然能夠實現傳感器數據的轉換和傳輸,但是使用起來不太方便。原因在于Arduino板上不帶任何傳感器,使用時必須外接傳感器。而且Arduino連接傳感器通常需要加裝一塊接口板,防止傳感器接錯插針燒毀零件。這無疑又提高了學生、老師的操作要求。
再三考慮下還是決定仿制官方的Scratch傳感器板。先根據MIT網站上提供的資料準備了一些實驗材料,使用實驗板焊好了實驗電路。測試證明電路是正確可用的,買到的零件也是可用的。實驗視頻如下
MIT上的傳感器板電路用的是串口連接電腦。現在不少電腦已經取消了串口,于是我給傳感器板加上了USB接口電路。最后實驗電路做成了下面這個模樣。
實驗板畢竟是做實驗用的,實際用起來容易短路或者出現其他故障。接下來要設計傳感器板的PCB電路板了。整個外觀布局參考了原傳感器板。較大的差別在于串口換成了USB口,傳感器板四個角加上了螺絲固定孔。
PCB文件發給廠家打樣,幾天后就收到樣板了。做工很好哦
焊上零件,連接電腦,測試各個功能都正常,傳感器板終于做出來了。
拿到掌控板有一段時間了。對于這么強大的一塊開源硬件在我一個python菜鳥的手里有些浪費。一開始我只能仿著做一些簡單的效果,看著大伽和專家們的作品,好生羨慕。在迷茫之際,謝作如老師給我帶來了好消息,掌控板可以當scratch傳感板來用了。這無疑給我打了強心劑,讓一個菜鳥又可以玩掌控板了。于是謝老師把scratch傳感器板模式的源碼(scratch1.2(文字提示).py)發給了我,讓我好好玩。在此特別感謝謝老師對我的關照。下面我就把這兩天玩得結果與大家分享一下。
scratch1.2(文字提示).rar
(1.43 KB, 下載次數: 80)
2018-11-14 13:51 上傳
點擊文件名下載附件
scratch1.2(文字提示).py
一、scratch與掌控板的連接1.刷入程序:
a.打開mpython,并把scratch1.2(文字提示).py加載進去。
1.png (226.27 KB, 下載次數: 10)
下載附件
保存到相冊
2018-11-14 12:25 上傳
b.將scratch1.2(文字提示).py刷入掌控板(刷入成功如下圖)。
2.png (228.88 KB, 下載次數: 7)
下載附件
保存到相冊
2018-11-14 12:26 上傳
c.將其設為默認運行程序。掌握板如下顯示表示啟動成功。
3.png (303.18 KB, 下載次數: 7)
下載附件
保存到相冊
2018-11-14 12:28 上傳
2.連接方法
scratch1.4版本(一)初次使用。 刷入成功之后,即可連接scratch了。連接步驟如下:
a.打開scratch1.4,并編寫一個讀取傳感器值的程序,并單擊綠旗運行。等待10來秒,當三個RGB燈都亮綠燈時,表示連接成功。
4.png (88.98 KB, 下載次數: 5)
下載附件
保存到相冊
2018-11-14 12:29 上傳
5.png (484.95 KB, 下載次數: 7)
下載附件
保存到相冊
2018-11-14 12:30 上傳
(二)斷電再次使用。 如果不是刷入之后的首次使用,而是斷電之后的重新啟用,其步驟如下:
a.掌控板啟動后,打開scratch1.4,并編寫一個讀取傳感器值的程序,并按綠旗運行(參考初次使用)。保存程序,然后關閉scratch1.4。
b.再次打開scratch1.4,并打開剛剛保存的測試程序,按綠旗運行,等待10來秒,當三個RGB燈都亮綠燈時,表示連接成功。
scratch2.0版本scratch2.0版本同樣存在初次使用與斷電后再次使用的區別。
(一)初次使用。
連接步驟如下:
a.打開scratch2.0,單擊“更多模塊”模塊中的“添加擴展”。
6.png (239.4 KB, 下載次數: 7)
下載附件
保存到相冊
2018-11-14 12:36 上傳
b.掌控板啟動后,打開scratch2.0,添加“更多模塊”中的“PicoBroad”模塊。然后關閉scratch2.0。
7.png (227.23 KB, 下載次數: 8)
下載附件
保存到相冊
2018-11-14 12:37 上傳
c.此時軟件界面上出現“PicoBoard”指令模塊,當。“PicoBoard”右邊的黃色圖標變成綠色時表示連接成功,同時掌控板上的三個RGB燈為綠色閃爍狀態。
8.png (253.44 KB, 下載次數: 4)
下載附件
保存到相冊
2018-11-14 12:44 上傳
(二)斷電再次使用。 斷電之后的重新啟用,其步驟如下:a.掌控板啟動后,打開scratch2.0,添加“更多模塊”中的“PicoBroad”模塊。然后關閉scratch2.0。
b.再次打開scratch2.0,并添加“更多模塊”中的“PicoBroad”模塊,當三個RGB燈為綠燈閃爍時,表示連接成功。
除此之外,也可在網頁(上應用,但要根據要求安裝插件。
二、小試牛刀
連接成功之后,我們就可以來用一用了。下面我以2.0版本為例利用“滑桿”來做一個“黃山日出”的效果。
(一)前期準備:
1.下載黃山圖片,并利用“美圖秀秀”圖片中的山摳出來。
2.掌控板滑桿數值取值的測試。(掌控板對應的滑桿為6個觸摸按鈕)
9.png (22.28 KB, 下載次數: 7)
下載附件
保存到相冊
2018-11-14 12:49 上傳
測試發現:滑桿的初始值約為50.0…… 按鈕 11—2間22—3間…………5—6之間6取值0約10約20約30…………約90約100
(二)制作過程 1、硬件連接 將掌控板設置為scratch傳感器板模式,并與scratch成功連接。
5.png (484.95 KB, 下載次數: 8)
下載附件
保存到相冊
2018-11-14 14:11 上傳
2、添加角色
以黃山圖片為背景,黃山摳圖為角色1,太陽為角色2。
10.png (314.62 KB, 下載次數: 10)
下載附件
保存到相冊
2018-11-14 13:06 上傳
3、腳本編寫
背景:
因滑桿的初始值約為50,所以將滑桿傳感器值進行四舍五入,如果其等于50的話一直等待。然后亮度隨著滑桿傳感器值的變化而變化。
11.png (22.05 KB, 下載次數: 7)
下載附件
保存到相冊
2018-11-14 13:47 上傳
角色1(黃山摳圖): 開始移至最上層,這樣可以擋住太陽,讓日出效果更佳。同樣在滑桿傳感器值沒有發生變化時一直等待,然后亮度隨著滑桿傳感器值的變化而變化。
12.png (23.2 KB, 下載次數: 6)
下載附件
保存到相冊
2018-11-14 13:47 上傳
角色2(太陽): 開始先將太陽固定在(-20,-20)的坐標位置。同樣在滑桿傳感器值沒有發生變化時一直等待。為了實現太陽斜向上的效果,將X,Y坐標都隨著滑桿傳感器值的變化而變化。
13.png (23.2 KB, 下載次數: 6)
下載附件
保存到相冊
2018-11-14 13:48 上傳
這樣當單擊綠旗運行時,我們用手指從掌握板的按鈕1劃向按鈕6,這時太陽會慢慢從山的后面升起,而且天色也慢慢變亮了。
下面我們來看看演示效果
三、返回編程模式——repl模式
當掌握板處在scratch傳感器板模式時是無法讀取文件和刷入程序的。如果想進入讀取文件或刷入程序的編程模式,那得讓掌握板進入repl模式,方法如下: 1. 打開“mpython”,單擊軟件上的訪問掌控板上的文件系統按鈕“文件”,與此同時按上掌控板上的復位鍵與按鍵B,然后松開復位鍵,直到OLED顯示屏上顯示“replMode”字樣才松開按鍵B。此時軟件界面顯示掌控板上的文件,如圖:
14.png (219.14 KB, 下載次數: 8)
下載附件
保存到相冊
2018-11-14 13:56 上傳
2.然后將掌控板上的其他文件設置為默認程序,在OLED顯示屏黑了的同時按住掌控板上的復位鍵與按鍵B,然后松開復位鍵,直到OLED顯示屏上顯示“replMode”字樣才松開按鍵B。掌控板就運行其他程序了,就不會自動進入scratch傳感器板模式了。又可以進行編程刷入程序了。
我的分享到此為止,有不到之處還請各位專家、老師多多批評指正。
掌控板
下一篇: PLC、DCS、FCS三大控
上一篇: 電氣控制線路圖控制原