使用樹莓派和Telegram Bot控制LED
掃描二維碼
隨時(shí)隨地手機(jī)看文章
Telegram是一款基于云的即時(shí)通訊應(yīng)用。Telegram幾乎與Whatsapp類似,可以在安卓、IOS、Windows、Mac和linux等所有設(shè)備上使用。用戶可以發(fā)送貼紙、消息、圖片、音頻文件和視頻。因此,Telegram有一個(gè)API機(jī)器人,允許人類與機(jī)器交談。電報(bào)機(jī)器人就像一個(gè)機(jī)器人,它被編程成一套指令和答案,與用戶互動(dòng)。
早些時(shí)候,我們做了一個(gè)Twitter Bot,可以在Twitter上自動(dòng)發(fā)布樹莓派的溫度。在這個(gè)項(xiàng)目中,我們將使用Telegram Bot控制與樹莓派連接的LED。為此,我們將創(chuàng)建一個(gè)電報(bào)機(jī)器人,它能夠從樹莓派發(fā)送和接收消息。不僅是LED,我們還可以用這個(gè)Telegram機(jī)器人控制任何家用電器。
組件的要求
?覆盆子π
?LED
?電路試驗(yàn)板
?電阻(250歐姆)
?跳線
線路圖
LED的正引腳與Pi的GPIO26連接,負(fù)引腳與接地地通過250歐姆電阻連接。
電報(bào)機(jī)器人設(shè)置與Pi
如果你的手機(jī)沒有Telegram應(yīng)用,那就去play store或Iphone的應(yīng)用商店下載。
現(xiàn)在打開應(yīng)用程序,它會(huì)問你的號(hào)碼。注冊并驗(yàn)證您的號(hào)碼,以創(chuàng)建一個(gè)帳戶。另外,請?jiān)隍?yàn)證后為您的帳戶提供一個(gè)名稱。
在此之后,它將帶您到主屏幕?,F(xiàn)在我們需要?jiǎng)?chuàng)建一個(gè)新的bot,它將通過Raspberry Pi發(fā)送和接收消息。在搜索菜單中搜索‘ botfather ’。
現(xiàn)在寫入“/start”開始與機(jī)器人聊天。
之后,寫入“/newbot”來請求一個(gè)新的bot。
現(xiàn)在,它將要求您輸入新機(jī)器人的名稱。
接下來,它將要求您輸入機(jī)器人的用戶名。輸入唯一的用戶名來創(chuàng)建您的機(jī)器人。
因此,檢查您收到的消息,會(huì)有令牌。保存它,因?yàn)槲覀儗⒃诖a中需要它。
接下來,使用機(jī)器人的用戶名搜索機(jī)器人,以確認(rèn)機(jī)器人已經(jīng)創(chuàng)建。
樹莓派設(shè)置電報(bào)機(jī)器人
首先在Pi上安裝傳送庫。在終端輸入以下命令安裝:
現(xiàn)在,用下面的命令創(chuàng)建一個(gè)新文件:
之后,復(fù)制最后給出的完整代碼,并保存到上述創(chuàng)建的文件中。
編程代碼說明
在代碼中導(dǎo)入所有必要的庫,如下所示:
初始化并定義LED引腳作為輸出引腳,并設(shè)置GPIO。
每當(dāng)Pi收到來自Telegram bot的消息時(shí),它將調(diào)用action函數(shù),該函數(shù)將讀取消息并從中分離文本。
現(xiàn)在使用if條件將檢查關(guān)鍵字并根據(jù)關(guān)鍵字切換led。而消息字符串用于回復(fù)用戶。
現(xiàn)在,在下面的代碼中,在逗號(hào)中輸入令牌的詳細(xì)信息?!癰ot. getme()”將通過打印響應(yīng)來檢查Pi和Telegram bot之間是否成功建立了連接。
在此之后,使用以下命令運(yùn)行代碼:
樹莓派終端看起來像這樣:
現(xiàn)在啟動(dòng)您的機(jī)器人并發(fā)送命令來打開和關(guān)閉led。
因此,我們已經(jīng)成功地用telegram app控制了LED,你也可以用任何其他家用電器替換LED。此外,請查看我們之前使用樹莓派開發(fā)的Twitter Bot項(xiàng)目。
本文編譯自iotdesignpro