資料介紹
描述
客觀的
該項目涵蓋了使用大數(shù)據(jù)生態(tài)系統(tǒng)的開源技術(shù)部分在 Arduino 上部署一個簡單架構(gòu)以實時和批處理溫度傳感器數(shù)據(jù)的過程。該解決方案的目的是舉例說明通過不同工具的數(shù)據(jù)流,從捕獲到轉(zhuǎn)換和洞察生成。
在所呈現(xiàn)的架構(gòu)中,數(shù)據(jù)的發(fā)布、傳輸和存儲服務(wù)與 Arduino 板發(fā)送數(shù)據(jù)的格式無關(guān)。這推動了構(gòu)建集中式服務(wù)的想法,用于將消息從不同的發(fā)送設(shè)備分發(fā)到能夠使用這些數(shù)據(jù)的許多客戶端或服務(wù)。
在此前提下,該架構(gòu)的適用可能性與信息發(fā)射設(shè)備的實現(xiàn)創(chuàng)意成正比。
版本
- Arduino IDE 1.8.5
- 蜂巢 1.2.1
- 卡夫卡 0.10.0
- 火花 1.6.2
- 齊柏林筆記本 0.6.0
- NiFi 1.2.0
數(shù)據(jù)流
1.- 從濕度/溫度傳感器生成數(shù)據(jù)
- 加載在 Arduino 平臺中的代碼每 3 秒通過 DHT 傳感器讀取一次,捕獲:
- 環(huán)境中的濕度百分比。
- 攝氏溫度 (°C)
- 華氏溫度 (°C)
- 計算熱量指數(shù)。這個度量決定了人們?nèi)绾胃鶕?jù)環(huán)境的濕度來感知溫度。
- 向外部 Web 服務(wù)發(fā)出請求,以根據(jù)預(yù)定義的時區(qū)確定閱讀時間。
2.- 數(shù)據(jù)發(fā)布到 MQTT 服務(wù)器
- 構(gòu)建將發(fā)送到 MQTT 服務(wù)器的消息或有效負(fù)載:
- 有效負(fù)載為 JSON 格式。
- 它包含傳感器捕獲的數(shù)據(jù)、計算的信息、讀數(shù)的日期/時間、自 Arduino 平臺啟動以來經(jīng)過的毫秒數(shù)以及發(fā)射器設(shè)備的唯一標(biāo)識符。
- 驗證 Internet 和 MQTT 代理連接。
- 有效負(fù)載在預(yù)定義的用戶名和密碼下發(fā)布到特定主題的 MQTT 代理。
- MQTT 代理有一個權(quán)限列表,定義了哪些用戶可以發(fā)布現(xiàn)有主題的信息。
3, 4 & 5.- 實時數(shù)據(jù)采集
- Apache NiFi 服務(wù)有一組有組織的指令,可在捕獲數(shù)據(jù)時編排數(shù)據(jù)流:
- NiFi 連接或訂閱 Mosquitto 主題并實時捕獲消息。
- NiFi 通過在消息之外定義與消息和 MQTT 代理的技術(shù)方面相關(guān)的新字段來補(bǔ)充接收到的消息(JSON 字符串)。
- NiFi 將消息和新字段插入 Hive 數(shù)據(jù)存儲。
- NiFi 在 Kafka 中發(fā)布原始消息。
- Hive 和 Kafka 存儲數(shù)據(jù):
- Hive 允許對歷史數(shù)據(jù)進(jìn)行批處理。
- Kafka 允許實時處理 Arduino 平臺發(fā)送的數(shù)據(jù)。
6 & 7.- 數(shù)據(jù)處理
- Zeppelin 運行代碼塊(Scala 和 SQL):
- 可以查詢存儲在數(shù)據(jù)倉庫中的數(shù)據(jù)。
- 可以實時訂閱Kafka主題,處理不同時間窗口下的消息。
- 代碼在 Spark 上執(zhí)行。
- 在每個時間窗口中獲得的數(shù)據(jù)被轉(zhuǎn)換并存儲在 Hive 表中。
- 在每個窗口上計算捕獲的溫度平均值。
圖書館
- Adafruit 統(tǒng)一傳感器 1.0.2
- DHT 傳感器庫 1.3.0
- 發(fā)布訂閱客戶端 2.6.0
- 時間 1.5.0
- NTP客戶端 3.1.0
ARDUINO IDE 配置
通用設(shè)置:
- 板:“ESP8266 通用模塊”
- 閃光模式:“DIO”
- 閃存大?。骸?12K(64 SPIFFS)”
- 調(diào)試端口:“已禁用”
- 調(diào)試級別:“無”
- 重置方法:“ck”
- 晶體頻率:“26 MHz”
- 閃光頻率:“40 MHz”
- CPU頻率:“80兆赫”
- 上傳速度:“115200”
- 程序員:“AVRISP mkII”
串口監(jiān)視器
- 自動滾屏
- 安博斯 NL & CR
- 115200 波特
觀察
在這個項目中,指令沒有加載到 Arduino 板,而是加載到 ESP8266 模塊,因為正是這個模塊將操作、轉(zhuǎn)換和發(fā)送數(shù)據(jù)。
要將指令加載到 WiFi 模塊,必須在啟動時進(jìn)入 Flash 模式,這是通過Pinout 圖(Flash 模式)中顯示的引腳配置來實現(xiàn)的。
建議 Arduino 板在對 ESP8266 模塊進(jìn)行代碼加載時沒有加載指令。
執(zhí)行
在串口監(jiān)視器中,我們可以觀察到連接、捕獲和發(fā)布消息的過程。
如果我們訂閱 Mosquitto 主題,我們可以看到消息是如何由 Arduino 板實時發(fā)布的。
NiFi 在 Kafka 和 Hive 上發(fā)布捕獲的消息。在后者中,與 MQTT 服務(wù)器相關(guān)的附加字段記錄在表中。
一旦 NiFi 模板啟動,如果我們訂閱將消息重定向到的 Kafka 主題,我們將能夠觀察消息是如何在 Mosquitto 收到時立即發(fā)布的。在下圖中,我們可以看到 Mosquitto 主題(左)和 Kafka 主題(右)中的消息接收情況。
另一方面,如果我們定期查閱 Hive 表,我們會注意到寄存器的數(shù)量根據(jù) NiFi 捕獲的消息而增加。
Scala開發(fā)的notebook是JSON格式,可以導(dǎo)入Zeppelin,分為7段:
1.- 設(shè)置。
2.- 數(shù)據(jù)采集。
3.- 按窗口計算溫度平均值。
4.- Kmeans 模型創(chuàng)建和訓(xùn)練。
5.- 數(shù)據(jù)分類(窗口)
6.- 數(shù)據(jù)分類(隨機(jī)數(shù)據(jù))
7.- 數(shù)據(jù)檢查。
?
?
下一步改進(jìn)
該項目缺乏以下可以增加這些技術(shù)可能應(yīng)用價值的特征:
- Arduino 板與不同類型的傳感器集成。
- 多路復(fù)用發(fā)送到 WiFi 模塊的信號。
- 開發(fā)狀態(tài)和控制指示器(LED、警報、警報)。
- 閃光模式激活/停用按鈕。
資源
復(fù)制此項目的詳細(xì)說明可在此Github 存儲庫中找到,以及使用的草圖、模板、筆記本和測試數(shù)據(jù)。
目前它是西班牙語,所以當(dāng)它被翻譯成英語時,你可以用這種語言練習(xí)你的技能;)。
- 使用Edison、Pi等將傳感器數(shù)據(jù)流式傳輸到Octoblu
- 使用DHT22和Arduino進(jìn)行溫度監(jiān)測
- 大數(shù)據(jù)環(huán)境下的移動學(xué)習(xí)發(fā)展趨勢 21次下載
- 車聯(lián)網(wǎng)場景下汽車大數(shù)據(jù)應(yīng)用模式綜述 13次下載
- 醫(yī)療大數(shù)據(jù)面臨的挑戰(zhàn)及相應(yīng)的隱私保護(hù)技術(shù) 16次下載
- 關(guān)于對大數(shù)據(jù)的專題研究 1次下載
- 大數(shù)據(jù)時代有什么樣的利與弊 11次下載
- 使用STM32F103VE芯片設(shè)計無線傳輸的溫度采集系統(tǒng)的論文概述 39次下載
- 使用ZigBee技術(shù)實現(xiàn)溫度采集傳輸系統(tǒng)的設(shè)計資料免費下載 9次下載
- 如何使用Arduino和LabVIEW進(jìn)行多路數(shù)據(jù)采集系統(tǒng)的設(shè)計
- 大數(shù)據(jù)的基礎(chǔ)起源發(fā)展和處理流程應(yīng)用及面臨的挑戰(zhàn)和展望 12次下載
- 大數(shù)據(jù)與推薦系統(tǒng) 18次下載
- 流式大數(shù)據(jù)實時處理技術(shù)及應(yīng)用 10次下載
- 基于流式傳輸模式的可靠多播協(xié)議 25次下載
- 流式傳輸的實現(xiàn)途徑 18次下載
- 大數(shù)據(jù)技術(shù)是干嘛的 大數(shù)據(jù)核心技術(shù)有哪些 2295次閱讀
- 針對大數(shù)據(jù)安全架構(gòu)設(shè)計的思路和原則 968次閱讀
- 從四個方面對大數(shù)據(jù)進(jìn)行闡述 4010次閱讀
- 同步整流式和異步整流式DC/DC轉(zhuǎn)換器變壓器方式的區(qū)別 5673次閱讀
- 大數(shù)據(jù)技術(shù)如何進(jìn)行融合發(fā)展 9207次閱讀
- 大數(shù)據(jù)是什么_大數(shù)據(jù)技術(shù)和應(yīng)用的現(xiàn)狀與前景 2.3w次閱讀
- 基于流式計算的DPI數(shù)據(jù)處理方案 4875次閱讀
- 深入解析大數(shù)據(jù)處理基本步驟 4114次閱讀
- 什么是大數(shù)據(jù)分析?大數(shù)據(jù)分析的含義與目前形式 1.6w次閱讀
- AR對于大數(shù)據(jù)有什么意義?電力大數(shù)據(jù)有什么作用?詳細(xì)案例說明 7929次閱讀
- 大數(shù)據(jù)時代智能配電網(wǎng)該如何融合大數(shù)據(jù) 1w次閱讀
- 國內(nèi)有哪些大數(shù)據(jù)公司_最新中國大數(shù)據(jù)公司排名 5.3w次閱讀
- 大數(shù)據(jù)分析到底需要多少種工具_大數(shù)據(jù)分析總結(jié) 1.1w次閱讀
- 最新大數(shù)據(jù)概念股龍頭_大數(shù)據(jù)概念龍頭股有哪些 4.3w次閱讀
- 大數(shù)據(jù)環(huán)境下的綜合布線技術(shù)探析 1297次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 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十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多