資料介紹
描述
注意:由于#cloudgames2022 提交截止日期,我沒(méi)有時(shí)間添加我設(shè)計(jì)的所有功能。待定功能將被標(biāo)記為TBR (待發(fā)布),一些視覺(jué)效果的“裝扮”也將被標(biāo)記。在我的日常工作和我的激情之間的無(wú)休止的戰(zhàn)斗中,我將繼續(xù)重溫這篇文章。
#CLOUDGAMES2022
非常感謝 Arduino 讓我參與這些 cloudgames2022。通過(guò) Opla IoT Kit 和始終在線(xiàn)的 Arduino 社區(qū),我了解了音頻再現(xiàn)、數(shù)模轉(zhuǎn)換、與云服務(wù)的集成、PIR 傳感器、光元素中的顏色、TFT 屏幕、UNIX 時(shí)間戳等等。在這篇文章中,我分享了我對(duì)這些以及我在過(guò)去一年中學(xué)到的其他主題的研究和發(fā)現(xiàn)(以及許多鏈接)(自從我開(kāi)始研究這個(gè)微電子兔子洞以來(lái)),希望為其他人提供同樣的禮物:在生產(chǎn)有用的東西的同時(shí)學(xué)習(xí)的機(jī)會(huì)。
背景
該項(xiàng)目是使用技術(shù)為自閉癥患者提供替代通信選項(xiàng)的另一項(xiàng)努力(請(qǐng)參閱我的電容式觸摸和藍(lán)牙信板)。認(rèn)識(shí)到他們?cè)诎l(fā)起互動(dòng)時(shí)面臨的挑戰(zhàn)(“自閉癥慣性”,一種影響他們意圖的經(jīng)常使人衰弱的困難),我將 Opla IoT 套件用作遠(yuǎn)程互動(dòng)的預(yù)定義消息促進(jìn)者(文本和語(yǔ)音)。
預(yù)定義消息通過(guò)多感官(即語(yǔ)音、文本和 RGB LED 序列)為自閉癥個(gè)體提供可重復(fù)的體驗(yàn),以嘗試加速其熟悉、重復(fù)并因此加速其使用。發(fā)送給 Opla 運(yùn)營(yíng)商的消息可以針對(duì)特定事件或白天的時(shí)刻(例如“晚安,兒子”、“我為你在學(xué)校的努力感到自豪”、“我愛(ài)你”等) 和那些使用 Opla 運(yùn)營(yíng)商作為來(lái)自主題的常規(guī)或重復(fù)消息發(fā)送到儀表板(即“我想要壽司”、“我很高興”、“ ETC。)。
為了進(jìn)一步提高對(duì) Opla 載體的熟悉度并幫助自閉癥患者將其變成自己的,我們添加了一些應(yīng)用程序,例如智能夜燈。
和大多數(shù)與自閉癥有關(guān)的事情一樣,這是反復(fù)試驗(yàn)......
OPLA IOT 套件的增強(qiáng)功能
Opla IoT 套件基于 MKR IoT Carrier (備忘單)和 Arduino IoT Cloud (備忘單),并具有許多開(kāi)箱即用的功能。但與每個(gè)微電子項(xiàng)目一樣,每個(gè)用例都可以/將需要一些增強(qiáng)功能,因此我添加了兩個(gè)新功能:
1. 手機(jī)定向通知。當(dāng)IoT Cloud 儀表板中的某些變量發(fā)生變化時(shí), Arduino IoT 遠(yuǎn)程應(yīng)用程序(iOS/Android) 不會(huì)產(chǎn)生通知,從而使您錯(cuò)過(guò)重要的閾值,或者在這種情況下,錯(cuò)過(guò)消息。
我開(kāi)始研究 IFTTT與ClickSend的SMS 集成,以便在我的手機(jī)中接收 SMS 消息。雖然簡(jiǎn)單且實(shí)用,但問(wèn)題在于在美國(guó)和加拿大以外(我在墨西哥),每條消息都涉及成本。
然后我測(cè)試了IoT Cloud 與 Telegram 的集成,這很容易實(shí)現(xiàn),但由于它暗示了一個(gè)額外的應(yīng)用程序,我為了更簡(jiǎn)單而放棄了它。
最后,我意識(shí)到 IFTTT 移動(dòng)應(yīng)用程序 (iOS) 確實(shí)會(huì)產(chǎn)生通知,因此通過(guò)IoT Cloud Webhook將 Arduino 儀表板與 IFTTT 小程序綁定是可行的方法。
這種方法有一個(gè)警告:物聯(lián)網(wǎng)云儀表板上的 webhook會(huì)在任何變量上發(fā)生任何更改時(shí)被調(diào)用。無(wú)法進(jìn)行過(guò)濾或選擇,即如果事物有 10 個(gè)變量,則 webhook 將在啟動(dòng)時(shí)被調(diào)用10 次。解決方案 #1 是獲得 IFTTT Pro 訂閱,并在 IFTTT 小程序中添加帶有 JavaScript 的過(guò)濾器。解決方案 #2 是在 MKR1010 的代碼中對(duì) IFTTT 服務(wù)器使用有針對(duì)性的 GET HTTP 語(yǔ)句(只需確保使用安全的 https 連接)。我想將其卸載到云端,但選項(xiàng) 2 更簡(jiǎn)單。
因此,要?jiǎng)?chuàng)建您的 IFTTT 小程序,請(qǐng)從Maker Webhook開(kāi)始,然后在文檔下(僅在您免費(fèi)創(chuàng)建 IFTTT 帳戶(hù)后才會(huì)出現(xiàn)),您將獲得您的密鑰和 JSON 詳細(xì)信息以添加到您的代碼中。請(qǐng)務(wù)必訪(fǎng)問(wèn)他們的Connect API 文檔以獲取完整的詳細(xì)信息。
2.在運(yùn)營(yíng)商中播放預(yù)先錄制的消息。IoT Cloud 儀表板提供向運(yùn)營(yíng)商發(fā)送開(kāi)放或預(yù)定義的文本消息。我添加了此音頻功能,以在發(fā)生特定觸發(fā)時(shí)播放存儲(chǔ)在 SD 卡(庫(kù))中的預(yù)先錄制的消息。
我將D 類(lèi)單聲道放大器連接到 DAC0 以發(fā)送 WAV 數(shù)據(jù)。但由于 DAC0 也用作載體的其中一個(gè)觸摸傳感器中的 A0,因此在檢查傳感器中的觸摸事件時(shí),載體代碼的每個(gè)循環(huán)都會(huì)產(chǎn)生咔噠聲。禁用 A0 上的觸摸會(huì)限制運(yùn)營(yíng)商的功能,因此使用連接到 MKR1010 板的數(shù)字引腳 14 的放大器的關(guān)閉引腳(我沒(méi)有使用分配給 D14 的運(yùn)營(yíng)商繼電器)允許僅在播放時(shí)打開(kāi)放大器信息。
對(duì)于這個(gè)用例,我發(fā)現(xiàn)了幾個(gè)具有不同限制的音頻庫(kù):
- ArduinoSound非常好,但僅適用于 I2S 設(shè)備(即I2S 3W Amplifie r)
- 我選擇了 D34G 出色的SamdAudioSD (針對(duì)基于 SAMD 的 MCU),盡管進(jìn)行了一些修改:我在我的本地SamdAudioSD.cpp副本中注釋掉了所有對(duì)數(shù)字 Pot 功能的引用,因?yàn)槲覜](méi)有使用數(shù)字電位器并且這些部分創(chuàng)建編譯錯(cuò)誤。
從 DAC0 發(fā)送音頻僅限于 8 位單聲道 PCM WAV 格式(未壓縮和模擬)。SamdAudioSD 庫(kù)允許在 WAV 文件中使用 44.1 kHz 的采樣率,從而提供可接受的語(yǔ)音質(zhì)量。使用Audacity輕松制作、增強(qiáng)和轉(zhuǎn)換預(yù)先錄制的消息,這是一個(gè)了不起的開(kāi)源音頻編輯器和錄音機(jī)。您還可以從Freesound添??加各種聲音和特殊效果。
預(yù)錄消息的回放還允許在本地產(chǎn)生事件的反饋或確認(rèn),即當(dāng)通過(guò)移動(dòng)或觸摸檢測(cè)到存在時(shí)或當(dāng)從載體發(fā)出消息時(shí)。下面是播放的子程序。
IoT Cloud Dashboard for his Use Case的其他限制
- “Messenger”類(lèi)型的小部件(處理字符串)不識(shí)別轉(zhuǎn)義序列(即\n),也不包含長(zhǎng)字符串。結(jié)果:長(zhǎng)字符串將被截?cái)唷?/font>
- 如果接收到的字符串值(即“檢測(cè)到存在”)與前一個(gè)值相同,即使在不同的時(shí)間間隔,也不會(huì)創(chuàng)建其接收實(shí)例。解決方法:將一個(gè)簡(jiǎn)單的時(shí)間戳添加到發(fā)送到小部件的字符串中以使其唯一。
消息功能
從運(yùn)營(yíng)商到儀表板的消息傳遞
- 通過(guò)抓住或觸摸載體來(lái)檢測(cè)存在,然后向接收者的移動(dòng)設(shè)備和物聯(lián)網(wǎng)云儀表板發(fā)送遠(yuǎn)程通知,表明個(gè)人可能已準(zhǔn)備好接收消息。
- 通過(guò) 5 個(gè)觸摸傳感器選擇預(yù)定義消息之一。觸摸 時(shí),播放所選文本的預(yù)錄語(yǔ)音,作為消息發(fā)送的確認(rèn)。(TBR)
從儀表板到運(yùn)營(yíng)商的消息傳遞
- 從物聯(lián)網(wǎng)云儀表板(PC 或移動(dòng)設(shè)備)中,按相應(yīng)按鈕發(fā)送 4 條預(yù)定義消息中的任何一條。消息以文本形式在屏幕上接收,帶有蜂鳴器和 LED 通知,并播放其分配的預(yù)先錄制的消息。
- 開(kāi)放文本消息也可以發(fā)送給運(yùn)營(yíng)商,盡管除了簡(jiǎn)單的通知之外沒(méi)有分配的預(yù)先錄制的消息。
- 每條消息都有一個(gè)獨(dú)特的 GIF 圖像或屏幕上顯示的特征Opla UI 。(TBR)
智能小夜燈
智能夜燈服務(wù)考慮使用單獨(dú)的儀表板來(lái)管理應(yīng)打開(kāi)服務(wù)的時(shí)間表以及用作夜燈的燈光類(lèi)型(顏色和亮度)。如果檢測(cè)到的房間亮度低于定義的閾值,則夜燈會(huì)在時(shí)間表內(nèi)自動(dòng)打開(kāi)。這也有助于在白天或房間燈打開(kāi)時(shí)節(jié)省電池使用量。
此外,該服務(wù)將使用帶有過(guò)濾器的PIR 運(yùn)動(dòng)傳感器,根據(jù)定義的時(shí)間范圍內(nèi)的大量檢測(cè)來(lái)確定檢測(cè)到的運(yùn)動(dòng)是否應(yīng)被視為相關(guān)。這將有助于消除誤報(bào),例如當(dāng)對(duì)象上床時(shí)(與對(duì)象醒著時(shí)相反)。發(fā)生這種情況時(shí),該服務(wù)會(huì)將夜燈變?yōu)榫G色:有一些研究表明燈光顏色如何影響睡眠。
還要考慮使用 PIR 傳感器的其他一些注意事項(xiàng)。關(guān)于靈敏度和阻塞時(shí)間的一些細(xì)微差別不容忽視。
為了選擇夜燈顏色和亮度,我首先嘗試使用與Color 小部件關(guān)聯(lián)的CloudColor 變量(簡(jiǎn)單而優(yōu)雅),但這些元素使用 HSV(色相飽和度值)配色方案,而 LED 燈條上運(yùn)營(yíng)商使用 RGB(紅-綠-藍(lán);嗯,實(shí)際上是 BGR。參見(jiàn) MKRIoTCarrier.h 的第 128 行)。運(yùn)營(yíng)商 LED 燈條的DotStar 庫(kù)具有 HSV 到 RGB 的轉(zhuǎn)換功能,但因?yàn)樗轻槍?duì) RGB(不是 BGR)的,所以我無(wú)法及時(shí)讓它工作。所以我為每種 RGB 顏色使用了一個(gè)單獨(dú)的變量和滑塊小部件。
附加夜燈功能 (TBR)
- 通過(guò)檢測(cè)到的運(yùn)動(dòng)增加流明輸出。
- 使用RTCZero或RTC庫(kù)和一個(gè)簡(jiǎn)單的子程序?qū)?GMT(從物聯(lián)網(wǎng)云獲得)轉(zhuǎn)換為本地時(shí)間(參見(jiàn)代碼中的 updateLocalTime() )。
- 在檢測(cè)到定義的移動(dòng)閾值后,播放預(yù)定義的消息(即“返回睡眠”等)并將通知發(fā)送到云和/或移動(dòng)設(shè)備。
下一步是什么
隨著項(xiàng)目的進(jìn)展要添加的其他功能:
- 遠(yuǎn)程更新運(yùn)營(yíng)商 SD 卡上的 WAV 文件。初步選項(xiàng) 1 是從儀表板接收指令,然后觸發(fā) GET HTTP 到數(shù)據(jù)服務(wù)器(如Firebase 或 Firestore )保存音頻文件。選項(xiàng) 2 是在 MKR1010 上運(yùn)行 Web 服務(wù)器,網(wǎng)頁(yè)在 SD 卡上,并使用像ngrok這樣的公共 URL 服務(wù)來(lái)訪(fǎng)問(wèn)客戶(hù)端的文件系統(tǒng),選擇一個(gè)文件,然后將其傳輸?shù)?SD 卡。
- OTA系統(tǒng)更新。這不應(yīng)該出現(xiàn)問(wèn)題,因?yàn)樗?/font>由 Arduino 的物聯(lián)網(wǎng)云服務(wù)提供的。
- 電池監(jiān)控。讀取 MKR1010 上的 ADC_Battery(可能通過(guò)BatterySense ),并在需要充電時(shí)通過(guò)儀表板和運(yùn)營(yíng)商的 TFT 屏幕進(jìn)行報(bào)告。
- 動(dòng)畫(huà) GIF。這將增強(qiáng)載體在幾個(gè)功能上對(duì)主體的適口性。迄今為止最好的選擇是使用 Larry Bank 的AnimatedGIF和他自己的圖像轉(zhuǎn)換工具。真正的問(wèn)題將是 MKR 1010 上的總可用內(nèi)存。
- 3 呼吸應(yīng)用程序。可以在通過(guò)智能夜燈服務(wù)的某個(gè)移動(dòng)閾值后調(diào)用,或由主體有意選擇(或由于過(guò)度搖晃載體)或作為儀表板用戶(hù)發(fā)送的消息。當(dāng)對(duì)象向載體呼吸 3 次時(shí),TFT 屏幕中的氣球圖像會(huì)膨脹和放氣(參見(jiàn)動(dòng)畫(huà) GIF),由濕度傳感器檢測(cè)到。呼吸順序由預(yù)先錄制的信息輔助(即“吸氣”、“緩慢呼氣”等)
- 帶無(wú)線(xiàn)按鈕和運(yùn)動(dòng)探測(cè)器的夜燈
- HARDWARIO IoT智能運(yùn)動(dòng)控制夜燈
- 希哈科技LED智能燈
- 尖叫激活夜燈開(kāi)源分享
- 用LDR做一個(gè)自動(dòng)夜燈
- 帶亮度控制的距離激活夜燈
- 貴州省智能燈桿標(biāo)準(zhǔn)設(shè)計(jì)圖集 2019
- 由PCB制成的火影忍者主題夜燈
- PLC的智能計(jì)費(fèi)樓道燈系統(tǒng)
- 基于STM32單片機(jī)的智能燈電路圖設(shè)計(jì) 354次下載
- 關(guān)于單片機(jī)、定時(shí)器等開(kāi)發(fā)軟件及輔助工具下載 16次下載
- 6塊LED組成的燈條PCB設(shè)計(jì) 52次下載
- 低功耗輔助振蕩器的晶振選擇的詳細(xì)中文手冊(cè)
- 《MATLAB輔助OptiSystem實(shí)現(xiàn)光學(xué)反饋環(huán)路的模擬》論文資料下載.pdf 27次下載
- 基于單片機(jī)的船舶輔助鍋爐智能控制系統(tǒng)
- 基于全志V853處理器的智能輔助駕駛算法介紹 72次閱讀
- 人工智能輔助編程工具的定義和工作原理 715次閱讀
- 使用白光LED的USB夜燈電路 2185次閱讀
- 基于230V自動(dòng)夜燈的光敏電阻感應(yīng)光環(huán)境的電路圖 2371次閱讀
- 基于Blackfin系列處理器實(shí)現(xiàn)車(chē)輛輔助駕駛系統(tǒng)的設(shè)計(jì) 2024次閱讀
- 高壓汞燈的種類(lèi)_高壓汞燈的特點(diǎn) 1.1w次閱讀
- 交流接觸器主觸點(diǎn)和輔助觸點(diǎn)的作用和用途 10.3w次閱讀
- 基于光電傳感器的智能燈控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 5817次閱讀
- 智能家居燈控可以做到,讓你隨喜好手動(dòng)調(diào)整亮度 2838次閱讀
- 基于超聲計(jì)數(shù)的智能交通燈控制系統(tǒng) 3204次閱讀
- 基于FPGA+DSP的視頻控制的智能交通燈設(shè)計(jì) 2044次閱讀
- 帶有LED警示燈的騎行夜服設(shè)計(jì) 3736次閱讀
- 斷路器上安裝輔助觸點(diǎn)的作用 3.1w次閱讀
- 新世紀(jì)玩物,國(guó)產(chǎn)智能LED燈詳細(xì)拆解 2.2w次閱讀
- 流動(dòng)燈序列發(fā)生器 1641次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開(kāi)發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多