2018年7月9日 星期一

蜂鳴器模組練習



蜂鳴器是一種利用直流電來發出聲音的電子零件,依據發聲的方式,大致可以分為有源和無源蜂鳴器。

1、有源蜂鳴器:簡單的說只要給一個適合的電壓就會發出聲音,它的聲音音調單一、頻率固定,適合製作警報聲、提示聲。

2、無源蜂鳴器:類似喇叭,可依據輸入的不同頻率電壓訊號,可以發出高低不同的音階,可用來演奏樂曲。


⧪說明:在kittenbot的蜂鳴器積木中,7表示電線接在第七腳位,200hz表示聲音的頻率,頻率越高所產生的聲音尖銳,下面是常用的音階頻率對照表。


音階 Do Re Mi Fa So La Si
頻率 262 294 330 349 392 440 494
頻率(高八度) 523 587 659 698 784 880 988
現在我們利用kittenbot所附的無源蜂鳴器來彈奏一曲"小蜜蜂"吧!

小蜜蜂簡譜



2018年7月8日 星期日

kittenbot三色LED燈練習2--呼吸燈


編程要求:讓左右兩個LED燈由最亮慢慢熄滅,接著再慢慢變到最亮。顏色:紫色。
動動腦:
1、變數light在這裡扮演麼角色?一個儲存數據的容器
2、如果變數起始數值設為50,要達成一樣的效果,有哪些地方可能要修改呢?重複次數或改變量


kittenbot三色LED燈練習1



在貓型耳朵上的三色LED是利用3號腳位連結到主板,左右兩邊分別是像素1與像素2,仔細觀察其實它們都是由三顆更小的LED所組成,讓我們來練習控制吧!

編程要求:左邊先亮,再換右邊,然後熄滅。左邊亮紫燈,右邊亮綠燈。
動動腦:
1、光的三原色是哪三種?
2、三色LED如何產生紫色的光呢?
3、左邊的LED在積木中名稱為何?

kittenbot 超音波模組練習1

步驟一、將超音波模組插上後,先測試超音波偵測距離的範圍。

動動腦 :超音波距離最大與最小是多少呢?

步驟二、

編程邏輯:利用超音波偵測到的距離來改變角色的大小,距離讀數越大,角色放大越多,反之則越小。


動動腦:
1.如果超音波距離結果是10,那角色尺寸會變多大呢?
2.請問編程中,為什麼超音波距離還要乘上10呢,如果沒有發生什麼問題?



kittenbot 超音波模組介紹與轉接板


kittenbot的超音波模組可安裝在一塊裝有舵機的轉接板上,因為轉接板的電路已經將超音波Trig和Echo引腳合併一起(代號1)因此只要將vcc(+)、gnd(-)、1-->D2(訊號) 三條線連接到主板即可使用超音波功能

貓型耳朵上裝有兩顆三色LED,如果要使用,則需要轉接板2號腳位接到主板的D3位置。




轉接板可支援"超音波模組"以及"八字彩燈燈環",直接插拔不需重新接線,方便教學上使用。



#補充說明:在kittenbot中,LED位置是用"像素"這個名稱進行定義。



uno無線進化版--kittenbot




Kittenbot主板與uno核心相同,加入了數組的舵機控制腳位以及馬達接腳。kittenbot採用常見的針腳接法,有不錯的相容性與擴充性。
腳位擴充部分,具有10組帶有電源的針腳組,可接10個舵機,或是分開用,支援四-五個類比輸入,可使用五路灰階巡跡模塊、超音波等常見類比模組。

特別的是馬達驅動部分,除了可支援四組直流馬達,也可以接上兩組步進馬達。
(上圖擷取自官網)
此外無線部分使用esp8266wifi模組,相較藍芽傳輸,只要有wifi訊號的地方即可在線控制,可取代傳統usb連接電腦的傳輸方式,更可方便延伸至物聯網的教學!


(上圖擷取自官網)

這張特製版的網卡,只使用四個腳位,vcc gnd tx rx ,即可工作,相較市面上的esp8266模組,連接上更簡易,可以直上一般擴充板上預留的藍芽接腳,算是意外之喜。

後續將針對kittenbot在教學上的實務應用,敬請期待~












2018年7月7日 星期六

編程1---循跡感應器





Brain GO 所使用的是這種不可微調的循跡感應器,本身會發出紅外光,並具有一個接收器,如果接收到反射回來的紅外線,會發出數位訊號1,且上方的紅色LED會亮光,若沒接收到發射的紅外光,則送出數位訊號0,LED熄滅。

因為黑色的物體會吸收光線,所以可以利用這種特性來做黑線的判斷,這就是簡易的循線原理,當然白線、黑底也可以做循線,這就要看需求作編程的調整了!

一般進行循線,會使用兩個以上的感應器,感應器越多越能針對不同的狀況進行判斷,當然程式也會更加複雜!

以下僅對於兩個循線感應器的使用進行介紹,一個感應器具有0與1的兩種變化,兩個就有2X2=4種變化

編程邏輯:考慮四種可能遇到的狀況,進行左右馬達轉速的修正,改變車身行走方向,達到巡跡的動態平衡。


以上只是最簡單的狀況考量,雖然已經可以讓小車沿著黑線行走,但若要走的順暢需要再考慮更多的狀況,例如彎道急轉彎、交叉線、斷線.......等狀況,進階可以參考PID計算方法。
參考資料:
http://robotrabbit.blogspot.com/2012/07/pid.html
http://www.inpharmix.com/jps/PID_Controller_For_Lego_Mindstorms_Robots.html

2018年7月6日 星期五

Brain GO ! Let's Go

Brain GO 是由一塊以ATmega 328P做為核心,整合了H橋電機驅動組、蜂鳴器、LED燈、溫度感應器、藍牙模組等功能的Arduino整合板。

與一般arduino整合板差別在於它是由彰師大所主導開發的整合板,當然運用在教育上是它很重要的任務! 因此為了能讓學校更專注在運算思維的教學,各項感應器的採用了彩色XH2.54接頭,具有防呆以及容易辨識的好處,大幅度降低接線上的debug,並由不同的顏色來設定傳感器編號。

當然這樣做有優點也有缺點,優點正如前面所述,而缺點就是缺少了一些彈性,插座上也沒有腳位編號,要用IDE寫程式必須自己試出對應腳位,不過瑕不掩瑜,這些的腳位對於國中小學生來說,確實也夠用了(而且課堂教學也不會用到IDE介面)。

程式設計部分,採用mblock為基礎的scratch積木堆疊模式,自己發展出專屬的積木包,傳感器的使用不在類似以往的腳位對應,改由以主板插座顏色做為定應名稱,更為直覺。
電源
以一顆18650鋰電池做供電,不過因主板上的minusb接頭同時做為資料傳輸與電源供應,欠缺2.1mm電源輸入孔,因此電源的選擇性不高,且這顆行動電源夾在主板與底板中間,不容易拆卸,充點只能用usb慢慢充,確實較為不便。
目前解決的方法是用一個5V的行動電源來取代。