KSB065擴展板積木
KSB065家庭自動化擴展板是凱斯電子公司的產品,可以同時適用於micro:bit、PocketCard,以及ESP32-S。板子上有許多感測器、插槽及指撥開關,方便不同開發板的使用者彈性切換選擇使用不同的感測器。在此也製作了KSB065相關的積木,積木位於「吉哥積木」→「ESP32」→「KSB065」內。
相關還有TFT液晶螢幕及CAMERA相機的使用,請另外參看這兩篇:
KSB065的腳位、開關等資訊,請詳閱凱斯電子公司的KSB065使用官網
板子上的各種元件大概有以下:
兩個按鈕
滑桿
DHT11溫濕度感測器
光感測器
繼電器
蜂鳴器
紅外線接收器
L9110馬達驅動
TFT彩色液晶螢幕(ST7735,160X128)
超音波感測器插槽
microSD讀卡插槽
WS2812燈泡四顆
鋰電池14500電池座
二組相機插槽(一組PocketCard使用,一組ESP32-S使用)
腳位切換指撥開關
IO排針腳位
範例一:顯示KSB065板子上感測器的偵測值
這個範例將板子上的一些感測器偵測到的值顯示在TFT彩色液晶螢幕上,包含滑桿、亮度、溫度、濕度及距離。因為PocketCard和NodeMCU-32在KSB065上的腳位設定是一致的,所以這些積木同時適用於PocketCard和NodeMCU-32。超音波感測器必須接到板子右邊的SONAR插槽上。
指撥開關的使用:
依據凱斯公司的官網,要使用板子上的感測器,必須設定開關,將某個感測器的開關打開才能使用。指撥開關一和二是屬於PocketCard和micro:bit的專屬開關,指撥開關三和四是屬於NodeMCU-32的開關。使用PocketCard和micro:bit時,不需要理會指撥三和指撥四。相關開關及腳位的定義,請參考凱斯電子公司的KSB065使用官網
使用PocketCard時,以下所提到的指撥開關請往上調到ON的位置,指撥三和指撥四不用理會。
使用NodeMCU-32時,以下所提到的指撥開關請往上調到ON的位置,指撥三和指撥四則全部往上撥到ON的位置
指撥一的編號2開關:滑桿開關
指撥一的編號5、6、7、8開關:TFT彩色液晶螢幕的開關
指撥二的編號1開關:光感測器(光感測器和SD卡的CS使用相同腳位,所以使用光感時,不能使用SD卡)
指撥二的編號5開關:DHT11溫濕度感測器
超音波感測器不需要指撥開關控制,但是不能同時使用SD卡。
程式執行結果:
NodeMCU-32的執行畫面
超音波感測器必須接到板子右邊的SONAR插槽上
PocketCard的執行畫面
超音波感測器必須接到板子右邊的SONAR插槽上
KSB065家控板感測資料的顯示
範例二:KSB065按鈕和WS2812燈光的控制
KSB065上面有四顆LED燈,它們都是屬於WS2812,要使用這些燈,PocketCard必須要指撥二的開關6往上撥到ON。
NodeMCU-32則需要把指撥二的開關6往上撥到ON,同時指撥三和指撥四全數往上撥到ON。
以下的程式,初始化時設定燈泡的亮度,當A按鈕被按下時,可以個別控制每個燈顯示不同的顏色。最右邊的燈的編號是0,最左邊的燈編號是3。當B按鈕按下時,所有的燈都顯示紅色;A+B按鈕同時按,所有的燈都顯示黑色(關閉燈泡)。
按下A鍵,每個燈泡分別顯示不同顏色
按下B鍵,所有燈泡都顯示紅色
範例三:KSB065蜂鳴器及馬達控制
KSB065上面已經有一個馬達控制晶片,並且有一個馬達的連接埠,可以直接控制一顆馬達正轉、反轉,且可以調整速度。
使用PocketCard時,以下所提到的指撥開關請調到適當的位置,指撥三和指撥四不用理會。
使用NodeMCU-32時,以下所提到的指撥開關請調到適當的位置,指撥三和指撥四則全部往上撥到ON的位置。
指撥一的編號1開關:蜂鳴器開關,往上調到ON
指撥二的編號2、7開關:馬達使用到二個腳位,這兩個開關要往上調到ON
指撥一的編號2開關:馬達的一個腳位會和滑桿重複,所以使用馬達時,需要把滑桿關掉,這個開關要往下撥到OFF,才不會衝突。(圖中綠色部份)
以下的程式按下A鍵,馬達以255的速度正轉,同時蜂鳴器發出中音Do的聲音;按下B鍵,馬達以255的速度反轉,同時蜂鳴器發出中音Ti的聲音;同時按下A+B鍵,馬達停止,蜂鳴器也停止發出聲音。
使用馬達時,需要將馬達的兩條線接在KSB065下方的馬達接口中,接反沒關係,只是轉動方向不同而已,如果轉動方不是你要的話,把兩條線交換,或是在程式上把正反轉交換即可。另外需要裝上14500鋰電池,並把電池開關調到ON,才足以供應馬達所需的電流。