資料介紹
描述
為什么燈帶
我一直對可尋址的 RGB LED 燈帶著迷。無窮無盡的色彩效果和動畫功能一直吸引著我的創造力,所以幾年前我決定為 Arduino 板開發一個名為 ALA(Arduino Light Animations)的庫。Alexa 現在讓我可以用我的聲音控制房間的燈光和效果,這太棒了!
項目概況
有這個項目所必需的組件。
- Amazon Alexa:自定義 Alexa 技能(Light Strip)定義語音交互模型并翻譯發出到 Lambda 函數的命令(意圖)。
- Arduino :這個不錯的微控制器將運行ALA 庫來驅動 LED 燈條,通過 USB 串行端口接收來自 Raspberry PI 的命令。您可以使用 Arduino Uno、Nano 或 Mega 開發板。
- WS8212 RGB LED 燈條:這些是可尋址的 LED 燈條,因此每個 LED 燈都可以單獨控制。這允許美麗多彩的燈光動畫。
項目中沒有什么是非常具有挑戰性的,但是有很多相互關聯的部分。我建議您按照建議的結構在堅實的基礎上構建您的項目,然后再繼續下一步。為了使事情盡可能簡單,我將項目拆分為兩個子項目。
該項目的第一部分在我的Web-Controlled LED Animations with Raspberry Pi and Arduino Hackster.io 項目中有所描述,它將指導您完成連接 Raspberry PI、Arduino 板和 WS8212 LED 燈條所需的步驟。在此階段結束時,您將能夠使用網絡瀏覽器從智能手機或 PC 控制 LED 動畫。
此處描述的項目的第二部分將使用 Amazon Alexa 在之前的實施中添加語音控制。要正確設置整個鏈條,需要執行幾個步驟,因此請耐心等待并仔細按照說明操作。
亞馬遜物聯網
你完成硬件部分了嗎?現在是上云的時候了!我們將使用 AWS IoT 平臺來管理來自互聯網的“事物”。
我們將使用“設備影子”,它是事物狀態的副本,以及所需的更改。Raspberry PI 將訂閱一個通知提要,將更改(“增量”)發布到此影子。查看此鏈接以了解有關 AWS IoT 平臺和 API 的更多信息。
創建物聯網事物
登錄AWS 控制臺。如果您還沒有這樣做,則需要創建一個免費帳戶。
確保您已登錄右上角的美國東部(弗吉尼亞北部)或歐洲(愛爾蘭)區域。
搜索“IoT”并選擇AWS IoT服務。單擊“開始”按鈕(如果有)以關閉介紹教程。
我們首先需要為我們的“事物”創建一個安全策略。轉到Secure > Policies菜單,然后單擊Create a Policy按鈕并輸入以下信息:
- 名稱:LightStripPolicy
- 行動: *
- 資源: *
- 效果 - 允許:選中
- 點擊“創建”
現在我們可以創建 IoT Thing了。
- 選擇Manage > Things菜單并通過單擊Register a Thing按鈕(或右上角的Create按鈕)然后單擊Create a single thing創建一個新的 AWS IoT Thing 。
- 在名稱字段中鍵入“LS01”。保留其他字段的默認值并單擊下一步。
- 單擊一鍵式證書創建部分中的創建證書按鈕。
- 為您的設備和根 CA 下載 3 個證書。對于 Root CA,您可能需要右鍵單擊并保存它。
- 下載證書后,單擊“激活”按鈕。
- 單擊Attach a Policy按鈕,選擇您之前創建的LightStripPolicy ,然后單擊Register Thing 。
在繼續之前,您需要記下 AWS IoT 端點。單擊AWS IoT 網頁左下角的設置菜單,打開它并記下端點。
配置 Raspberry PI 以收聽“事物”
我們首先需要在 Raspberry PI 命令行上使用以下命令安裝AWS IoT Device SDK for Python :
sudo pip3 install AWSIoTPythonSDK
現在從 GitHub 下載LightStrip 存儲庫并解壓縮。
mkdir
cd /home/pi/LightStrip
wget https://github.com/bportaluri/LightStrip/archive/master.zip
unzip master.zip
將創建 IoT 事物時下載的四個證書復制到/home/pi/LightStrip/LightStrip-master/pi文件夾中。
編輯lightstripcfg.py腳本。您可以使用任何文本編輯器。以下是nano編輯器的命令。
cd /home/pi/LightStrip/LightStrip-master/pi
nano lightstripcfg.py
現在編輯設置以匹配您的配置。
- AWSIOT:輸入您之前記下的 AWS IoT 終端節點。
- ROOT_CA:根CA證書文件名
- CERTIFICATE:證書的文件名
- PRIVATE_KEY:私鑰文件名
- DEVICE_NAME:保持不變為“LS01”
關閉 nano 編輯器并按“Ctrl+X”然后按“Y”保存文件。
按如下方式啟動 lig??htstrip.py 腳本。
sudo python3 lightstrip.py
該腳本將列出連接的 USB 端口。Arduino 應該連接到 /dev/ttyACM0 所以運行腳本傳遞這樣的端口。
sudo python3 lightstrip.py /dev/ttyACM0
測試客戶端將連接到 Amazon Thing Shadow 服務并訂閱LS01影子設備的更改。成功連接后,客戶端腳本會將其狀態更新為 LS01 設備影子,并收到這樣的確認消息。
要驗證一切是否正常工作,請返回 AWS IoT 控制臺并選擇“管理”>“事物”菜單,然后打開LS01設備。選擇陰影菜單,您將看到設備陰影狀態。
單擊 Shadow Document 部分中的Edit鏈接,并將以下 JSON 文檔粘貼到 Shadow state 框中。
{
"desired": {
"animation": "101"
}
}
這是你應該看到的。
單擊“保存”鏈接時,“增量”消息將發送到 Raspberry PI 上的 MQTT 客戶端,這將打開 LED 燈帶。
以下 JSON 文檔會將顏色變為藍色。
{
"desired": {
"color": "0066CC"
}
}
在這一點上,我們能夠從 ASW 物聯網服務控制我們的 LED 燈條,所以你應該為你感到驕傲。
AWS Lambda 函數
AWS Lambda 允許在云中運行代碼而無需配置或管理服務器。它是 Alexa Skills Kit 之間的完美橋梁,將在該項目的最后一步啟用語音控制。
登錄到AWS 控制臺。從服務列表中,選擇Lambda 。
確保您登錄的區域與您在上一步中使用的區域相同:右上角的美國東部(弗吉尼亞北部)或歐洲(愛爾蘭)區域。
單擊創建函數按鈕。點擊Author from scratch ,配置如下:
- 名稱 = LightStrip
- 運行時 = Python 3.6
- 現有角色:lambda_basic_execution
- 單擊創建函數按鈕
記下右上角的 Lambda ARN ID。
單擊LightStrip框以顯示功能代碼部分。
代碼輸入類型:內聯編輯代碼
- 運行時:Python 3.6
- 處理程序:lambda_function.lambda_handler
應該已經定義了lambda_function.py腳本。將LightStrip\lambda\lambda_function.py文件中的代碼粘貼到代碼編輯器中。
創建另一個名為ala_controller.py的文件,并將LightStrip\lambda\ala_controller.py文件中的代碼粘貼到代碼編輯器中。
這就是整個事情的樣子。
完成后,單擊右上角的橙色保存按鈕。
Alexa 技能
我們現在可以為 Alexa 創建 Light Strip 自定義技能。
轉到Amazon Developer Console并根據需要登錄。您可能需要先注冊您的帳戶。
轉到Alexa > Alexa Skills Kit(入門)。
單擊右上角的添加新技能按鈕,然后在技能信息選項卡中輸入以下數據:
- 技能類型:自定義交互模型
- 語言:英語(美國)
- 名稱:燈帶
- 調用名稱:燈帶
- 點擊保存
這創造了技能。請注意技能 ID。
選擇“交互模型”菜單,然后單擊“啟動技能生成器”按鈕。
單擊代碼編輯器按鈕并將LightStrip/alexaskill/lightstrip_skill.json文件的內容粘貼到文本框中。
單擊保存模型和構建模型按鈕。構建模型需要幾分鐘時間,請耐心等待。單擊技能信息按鈕返回技能配置頁面。
現在點擊配置菜單。
在服務端點類型中,選擇AWS Lambda ARN ,然后粘貼您在上面記下的 Lambda 函數 ARN。
保留所有默認值并單擊下面的“保存”按鈕。
將 Alexa 技能連接到 Lambda 函數
返回您的 Lambda 函數。在右側有一個預定義觸發器列表。選擇Alexa Skills Kit ,它將添加到您的函數中。
配置如下:
- 應用程序 ID = 您在上面記下的技能 ID
- 點擊添加
- 點擊保存
你完成了
該項目現已完成。嘗試以下語音命令:
- 打開燈帶
- 打開
- 將亮度設置為 20%
- 將亮度設置為 50%
- 將顏色設置為紅色
- 將顏色設置為綠松石色
- 關掉
- 運行令人興奮的動畫
- 播放輕松的動畫
LightStrip 技能還允許更高級的語音交互
- 我:Alexa,打開 Light Strip
- Alexa:歡迎使用 LightStrip - LED 燈條會發出藍光
- 我:啟動動畫
- Alexa:你想要輕松還是刺激的動畫?
- 我:放松
- Alexa:好的 - LED 燈帶將顯示隨機動畫
- 我:下一個動畫
- Alexa:好的 - 將顯示另一個隨機動畫
為了更好地理解這里的交互模型是技能的完整 VUI 圖。
增強和改進
開機自動啟動 AlaWeb
該項目的一個小改進是在啟動時自動啟動lig??htstrip.py腳本,這樣您就不需要在每次啟動 Raspberry PI 或出現問題時手動啟動它,而您必須重新啟動。按照此說明進行操作。
添加和調整動畫
Light Strip cskill 已經定義了 20 個動畫變化。但是,ALA 庫允許您輕松地設置您自己的動畫,選擇動畫預設、調色板和速度。您可以添加自己的動畫或調整ala_controller.py腳本中的現有動畫。在第 80 行左右,您將看到一個動畫設置列表,您可以根據自己的喜好修改或增強這些設置。
?
- 由Alexa Echo控制的Arduino機器人
- Arduino動畫矩陣骰子
- 使用Raspberry Pi和Arduino實現Web控制的LED動畫
- Arduino IoT Cloud ESP32 Alexa Control智能家居
- 使用Google Assistant和Alexa制作基于物聯網的Arduino智能家居
- Arduino物聯網云智能家居與Alexa使用NodeMCU
- Hello Alexa使用OLED顯示模塊和Arduino
- 帶有Neopixel環形動畫的Arduino時鐘
- 使用Alexa和Arduino IoT Cloud完全控制您的電視
- Arduino控制時鐘和動畫開源分享
- 貴州省智能燈桿標準設計圖集 2019
- 基于Arduino硬件光控燈制作資料 6次下載
- 使用Arduino通過程序控制LED燈
- 使用Arduino進行智能語音燈設計的接線說明和程序資料免費下載 0次下載
- Arduino教程之如何使用Arduino制作一個寶寶使用的小桔燈詳細資料概述 14次下載
- 26張電路原理動畫圖解 2774次閱讀
- 在QML動畫設計中通過指定關鍵幀創建時間線動畫 1859次閱讀
- 如何使用屬性動畫實現簡單屬性變化的動畫效果 1280次閱讀
- 如何使用Arduino構建一個電子動畫眼睛 2299次閱讀
- Arduino WS2812B LED燈帶設計方案 1.2w次閱讀
- 如何從網頁控制arduino? 3836次閱讀
- Lottie組件提升ArkUI開發框架的動畫能力 1846次閱讀
- dfrobotRGB LED燈帶驅動拓展板簡介 2717次閱讀
- 微雪電子智能車Arduino AlphaBot2簡介 2085次閱讀
- 微雪電子智能車學習板配件包Arduino開發板簡介 1391次閱讀
- 微雪電子ROC-RK3308主板CC-Amazon Alexa簡介 1282次閱讀
- 最全的機械動畫原理合集免費下載 1.5w次閱讀
- 利用Arduino制作8×10 LED矩陣 8489次閱讀
- 遠程控制通訊--基于Arduino + ESP8266控制LED燈 3.9w次閱讀
- arduino是什么以及arduino能干什么 4.4w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數據手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多