自動滅火的機器人肯定要具備至少兩項技能: 一是發(fā)現并接近火源;二是靠近火源 后用滅火裝置把火源熄滅。
1.繼電器的作用
先來看看,如果機器人已經找到火源了,應該怎樣把它熄滅。說到熄滅蠟燭的裝 置,同學們D一個想到的方案是什么呢?是不是用風去吹滅它呢?沒錯,在滅火比賽中, Z容易被想到用來滅火的裝置就是小型電風扇了,這是Z簡單直接的滅火方案。它的結 構非常簡明,控制也很容易,只需要一個小小的直流電機加上一片扇葉就足夠了。滅火比 賽的規(guī)則要求滅火裝置只有在機器人發(fā)現并靠近火源的時候才可以被開啟。也就是說, 機器人的主控程序要在到達蠟燭近前的時候才可以控制直流電機開始轉動,而在平時小 風扇是不轉動的。這個規(guī)定聽起來似乎就像用程序控制一個開關一樣簡單。
也許同學們已經聯想到了我們用主控板對 LED 小燈模塊的控制。沒錯,其實我們的 · 小機器人需要做的就只是一個開關動作而已,和控制小燈并沒有什么本質的區(qū)別。但是, 有一點決定了我們不能直接套用以前的老辦法到小風扇上。這個原因就是:讓小風扇的 直流電機(注意,這里所用的不是直流減速電機,因為這里希望風扇能夠快速轉動,但并不 需要有太大的力量)轉動所需的電流要遠遠大于點亮一盞LED 小燈所需要的電流。而機器 人主控板的端口所能夠直接提供的電流就只有幾十毫安那么多。如果輸出的電流大于這個 數字,電機就難以有力地轉動了,嚴重時還可能會造成主控板端口燒毀的事故。既然如此, 我們就不能直接把小風扇接到數字輸出端口上,然后用digitalWrite 函數控制它的轉動了。
那么應該怎么辦呢?不用擔心,有一個很 巧妙的辦法可以用來繞過大電流的問題。那 就是使用 一種叫作繼電器的電子元件,如 圖13-1所示,來完成用“弱電”控制“強電”的任 務。在我們這兒,主控板上的數字輸出端口上 的電流就是弱電,而驅動小風扇和直流電機的 就是強電。Z經典的繼電器結構就是靠弱電 驅動一塊小電磁鐵來開合強電電路的。
當我 們用 digitalWrite 函數控制繼電器的弱電端 時,電磁鐵就會產生磁場,然后開關就會在磁 力的作用下吸合,之后強電端的電路就接通了。這樣只需要一點點的電流,就可以控制電 機轉動起來。圖13-1中就是我們所使用的繼電器模塊。
繼電器模塊有兩個接口,3根線那邊就是弱電端,直接接到主控板的數字輸出上。而 兩根線的那端則是強電端,可以用來連接直流小電機,連線如圖13-2所示。有了繼電器 的幫助,在程序員看來控制直流小電機的轉動就和控制一個LED 小燈模塊的亮滅沒什么 不同了。
2.用“復眼”發(fā)現火源
機器人又是如何去發(fā)現火源的呢?同學們都知道,很多昆蟲都是有復眼的,這些復眼 可以幫助它們做到真正的眼觀六路。在我們的課程所用的機器人套件中也為大家提供了 一個“復眼”傳感器,如圖13-3所示。它就是小機器人專門用來尋找火源的工具。其實, “復眼”傳感器是由朝向5個不同方向的紅外線探頭組成的傳感器電路。火焰所發(fā)出的光 中紅外線是很主要的成分,因此,我們用程序讀取復眼的紅外線探頭的探測值,并且找到信號Z強的方向就可以得知蠟燭相對機器人的位置了。
顯然,復眼傳感器所返回的探測值應該是一組5個模擬值。在使用時,需要把它連接 到5個模擬輸入端口上去,然后分別用analogRead 函數獲取它的讀數。在執(zhí)行滅火任務 時,主控程序每隔一小段時間,就要去挨個查看一遍這些模擬輸入端口上的數值,并且比 較判斷哪個方向是信號Z強的方向。而火源就應該處在信號Z強的方向上。發(fā)現火源 后,機器人可以根據這方向信息生成電機控制指令,朝著火源前進。而當滅火裝置正前方 的紅外傳感器接收到的足夠強的信號時,說明我們已經離火源很近了。這時還等什么? 讓機器人立刻全力開動風扇,把蠟燭熄滅吧!
![]() |
| 機器人底盤 Disinfection Robot 消毒機器人 講解機器人 迎賓機器人 移動機器人底盤 商用機器人 智能垃圾站 智能服務機器人 大屏機器人 霧化消毒機器人 展廳機器人 服務機器人底盤 具身智能教育機器人 智能配送機器人 導覽機器人 |