資源簡介 目錄目錄 2第一單元 小車動起來 3第一課 小車開動起來 3第二單元 小車亮起來 12第四課 前照燈的安裝 15第五課 警燈的安裝 18第三單元 小車響起來 20第六課 小車有聲音 20第七課 小車聲音受控制 23第一單元 小車動起來第一課 小車開動起來【課程目標】用scratch為小車編寫第一個程序:當按下電腦鍵盤的“上移”鍵時,小車向前開動,當松開“上移”鍵時,小車停住。【實驗準備】1.scratch藍牙小車2.電腦上成功安裝了“s2a淄博定制藍牙版”程序3.電腦與小車藍牙配對成功。【原理分析】我們用Arduino uno的PWM模式控制電機。通過改變兩個數字IO針腳和兩個PWM針腳的PWM對直流電動機控制端口實現。如表2-1-1是PWM控制模式的針腳分配,圖2-1-2是對應的藍牙小車實物連接圖。針腳 功能4 電機1的方向控制5 電機1的PWM控制6 電機2的PWM控制7 電機2的方向控制表2-1-1 PWM針腳分配【腳本編寫】1.初始化端口,引腳4、5控制電機M1;引腳6、7控制電機M2。2.設置小車的初始靜止狀態:重復執行如圖2-1-3腳本,引腳4、5、6、7的值設置為0,即讓兩個電機的兩段電壓都設為低電平,電機不動,小車為靜止狀態。3.設置小車的運動狀態:引腳4、5控制電機M1,設置引腳4、5的電壓分別為高電平和低電平,M1開始工作,同理設置引腳6、7為不同的電平,M2開始工作。小車運動的條件是“上移”鍵按下。4. 消除抖動,如果只執行上述腳本,調試時會發現小車的車輪一會兒轉一會兒停,這是因為程序在不停的判斷是否按下了“上移”鍵。因此,我們還應該加入腳本,即在“上移”鍵松開前,程序一直等待著,也就是“一直運動著“。【答疑解惑】按下“上移鍵“后,小車開動,但是為什么走的不是直線?1.小車“走不直”原因分析在目前的智能小車中,差分驅動仍然是主流驅動方式。差分驅動是指左、右兩個輪子分別用左、右兩個電機驅動,通過分別改變兩個電機的轉速來控制小車前進或者后退。在這里,左右兩個電機的特性肯定不會完全相同,這就將直接導致即使設置的轉速一樣,兩個輪子的實際轉速也是不相同的,所以本來應該走直線的小車行駛軌跡會發生偏移,也就產生了所謂的“走不直”的現象。影響小車“走不直”的原因還有很多,比如:道路上的障礙物、輪子瞬間打滑、小車左右重量不一致等等。而且這些因素是無法消除的,我們只有使用其他方法來解決這個問題。簡單的做法:根據小車走直線時,實際路線的偏差,對小車左右電機數值進行微調。2.開環與閉環在了解開環與閉環之前,在地面上畫出一條直線,嘗試先閉著眼睛再睜開眼睛沿著直線走一遍。我們會發現,睜開眼睛走直線比閉著眼睛走直線要簡單得多。事實上,沒有安裝任何傳感器的小車就相當于眼睛閉著的我們,顯而易見,這樣走直線是很困難的。在這里,小車只通過電機控制轉速,而不添加任何傳感器行走的方式稱之為“開環控制”。相對的,閉環控制是指小車通過各種傳感器感應外界信息,根據這些信息調整自己的運動。我們在下面的課程學習中,會增加多種傳感器,繼續了解奧秘所在。第二課 小車轉彎與倒車【課程目標】通過控制鍵盤“左移鍵“、”右移鍵“、”下移鍵“,實現小車的”左轉“、”右轉“和”倒車“。【實驗準備】同上一課。【原理分析】我們的小車是有2個電機和2個輪子的(這里不考慮主要起支撐作用的萬向輪)。對于采用這種驅動方式的小車來說,它運動時會有以下幾種情況出現:(1)小車前進(上節課已經學習過)(2)小車后退(將電機反接,或者程序設置反向電壓即可)(3)小車轉彎左右輪子轉動速度不同時,小車就會轉彎。左右兩個輪子轉動的速度之差決定小車轉彎半徑大小。如果左右兩個輪子轉動的速率相同,方向正好相反,小車會原地轉動。【腳本編寫】1.新建模塊。這節課要實現小車的左轉、右轉、倒車三個方向的運動,如果繼續像上節課一樣設計程序的話,程序會顯得繁瑣且易讀性差,因此,我們可以為四個方向的運動各設計四個程序塊,前、后、左、右四個方向分別對應的程序塊為:go、back、left、right。2.為go模塊添加腳本。3.克隆go模塊腳本,依次修改為另外三個方向的腳本。4.編寫主程序。【答疑解惑】為什么要將5、6腳設為PWM輸出?為什么左轉彎、右轉彎時要將其中一個引腳設為255?設為其他的數值比如256、1000……可以嗎?現今多數系統皆采用數字控制的方式,由核心微處理器接收回傳的感測信息,并針對與目標的差值再調整輸出。而數字信號只有0與1兩種變化,怎么調整控制車輛的轉速呢?我們知道速度可不能只用0和1來表示??!這時我們可以將數字信號轉化成模擬信號,這就是我們為什么要設置5、6腳為PWM的原因了。脈沖寬度調制(PWM),是英文“Pulse Width Modulation”的縮寫,簡稱脈寬調制,是利用微處理器的數字輸出來對模擬電路進行控制的一種非常有效的技術,廣泛應用在從測量、通信到功率控制與變換的許多領域中,它可以將數字信號轉化為模擬信號。仔細觀察圖 2-2-6 Arduino uno控制器,我們會發現它的數字口上有6個針腳支持PWM信號,即3、5、6、9、10和11。PWM的輸出值為0~255,電機模塊接到這幾個針腳上面,就可以控制馬達的轉速,不會只有單純的轉與不轉兩種選擇。第二單元 小車亮起來第三課 轉向燈的安裝【課程目標】給小車安裝好轉向燈,實現車輛轉彎過程中點亮轉向燈。【準備器材】黃色led燈兩只固定塑料片3.雙面膠【原理分析】使用Arduino控制板上的12、13數字引腳的輸出信號來分別表示左轉彎和右轉彎時轉向燈的控制信號,實現轉向時對應一側的轉向燈點亮。【線路連接】【腳本編寫】此腳本是在小車動起來的腳本之上添加轉向時亮燈修改而成的,小車動起來的腳本請參考第二單元內容初始化端口,在第二單元基礎上添加,設置引腳12為左轉向燈輸出,引腳13為右轉向燈輸出設置不轉向時轉向燈為熄滅狀態3.設置左轉時左燈亮4.同理設置右轉時的狀態【答疑解惑】LED(Light Emitting Diode),發光二極管,是一種能夠將電能轉化為可見光的固態的半導體器件,它可以直接把電轉化為光。LED的心臟是一個半導體的晶片,晶片的一端附在一個支架上,一端是負極,另一端連接電源的正極,使整個晶片被環氧樹脂封裝起來。半導體晶片由兩部分組成,一部分是P型半導體,在它里面空穴占主導地位,另一端是N型半導體,在這邊主要是電子。但這兩種半導體連接起來的時候,它們之間就形成一個P-N結。當電流通過導線作用于這個晶片的時候,電子就會被推向P區,在P區里電子跟空穴復合,然后就會以光子的形式發出能量,這就是LED燈發光的原理。而光的波長也就是光的顏色,是由形成P-N結的材料決定的。上個世紀60年代,科技工作者利用半導體PN結發光的原理,研制成了LED發光二極管。當時研制的LED,所用的材料是GaASP,其發光顏色為紅色。經過近30年的發展,大家十分熟悉的LED,已能發出紅、橙、黃、綠、藍等多種色光。第四課 前照燈的安裝【課程目標】給小車安裝頭燈,按L鍵時燈亮,按C鍵燈熄滅。【準備器材】白色LED燈兩只固定塑料片雙面膠【線路連接】【原理分析】使用arduino線路版上的11數字端口作為頭燈的輸出信號端口,通過按鍵控制端口的高低電平輸出實現頭燈的開關。【腳本編寫】此腳本是在小車動起來的腳本之上修改而成的,小車動起來的腳本請參考第二單元內容端口初始化,在第二單元基礎上添加設置11腳為頭燈輸出在主程序中添加按下L鍵時開燈的分支,并發送“open light”廣播同理添加當按下C鍵時關燈的分支,并廣播 “close light”完成“open light”和“close light”兩個廣播中的內容第五課 警燈的安裝【課程目標】給小車安裝警燈,按A鍵時警燈燈亮,按S鍵燈熄滅【準備器材】1、紅藍LED燈各兩只2、塑料固定片3、雙面膠【線路連接】【原理分析】使用arduino線路板的D9、D10端口作為警燈的控制端口,D9控制紅燈,D10控制藍燈,按下a鍵時紅藍燈交替閃爍,按下s鍵時警燈停止閃爍。【腳本編寫】此腳本是在小車動起來的腳本之上修改而成的,小車動起來的腳本請參考第二單元內容1、端口初始化,在第二單元基礎上設置9腳為紅燈輸出,設置10腳為藍燈輸出2、在主程序中添加按下a鍵時打開警燈的分支,并廣播“alarm”警燈閃爍與關閉的腳本如下第三單元 小車響起來第六課 小車有聲音【課程目標】1.用杜邦線在小車上鏈接一個有源蜂鳴器;2.用scratch為小車編寫第一個程序,讓蜂鳴器響起來;【實驗準備】1.scratch藍牙小車2.用杜邦線將有源蜂鳴器鏈接到小車上3.電腦藍牙與小車藍牙配對并連接4.設置并啟動“s2a”和“Scratch2.0”程序【原理分析】有源蜂鳴器工作的理想信號是直流電。因為蜂鳴器內部有一簡單的振蕩電路,能將恒定的直流電轉化成一定頻率的脈沖信號,從面實出磁場交變,帶動鉬片振動發音。我們用杜邦線把Arduino 板子的12號、GND與有源蜂鳴器的正極、負極連接起來,通過改變12號數字IO針腳,來控制蜂鳴器的發聲。圖4-1-1是對應的藍牙小車實物連接圖。針腳 功能12 有源蜂鳴器正極GND 有源蜂鳴器負極表4-1-1針腳分配【腳本編寫】1.初始化端口:引腳12為輸出,用于控制有源蜂鳴器,如圖4-1-2所示。2.設置小車的發出聲音:將引腳12的值設置為1,即讓有源蜂鳴器發出聲音。3.最終實現的腳本如圖4-1-4所示。圖4-1-4【答疑解惑】發出的聲音為什么只有一種呢?因為有源蜂鳴器內部的震蕩器就可以產生固定頻率的信號,只需要在其供電端加上額定直流電壓,其驅動蜂鳴器發出聲音。因此,有源蜂鳴器只發出這一種聲音。第七課 小車聲音受控制【課程目標】用scratch為小車編程,使用鍵盤上的按鍵控制有源蜂鳴器發出聲音;【實驗準備】1.scratch藍牙小車2.用杜邦線將有源蜂鳴器鏈接到小車上3.電腦藍牙與小車藍牙配對并連接4.設置并啟動“s2a”和“Scratch2.0”程序【原理分析】我們用杜邦線把Arduino 板子的12號、GND與有源蜂鳴器的正極、負極連接起來,通過改變12號數字IO針腳,來控制蜂鳴器的發聲。針腳 功能12 有源蜂鳴器正極GND 有源蜂鳴器負極表4-1-1針腳分配【腳本編寫】1.初始化端口:引腳12為輸出,用于控制有源蜂鳴器。2.設置小車的發出聲音:將引腳12的值設置為1,即讓有源蜂鳴器發出聲音3.設置小車的停止發出聲音:將引腳12的值設置為0,即讓有源蜂鳴器停止發出聲音。4.使用鍵盤上的“s”鍵來控制小車的發聲,當按下“s”鍵時,小車發出聲音,沒有按下“s”鍵時,小車停止發出聲音5.最終實現的腳本如圖4-2-5所示。圖4-2-5【答疑解惑】為什么要用重復循環呢?因為我們使用了一個“如果……那么……否則……”的判斷,來判斷“s”鍵是否被按下,由于這個判斷只判斷一次程序就結束了,為了使程序不停的運行下去,需要不停的進行判斷,因此加了一個重復循環。 展開更多...... 收起↑ 資源列表 word10.mp4 藍牙小車課程.docx 縮略圖、資源來源于二一教育資源庫