資料介紹
描述
注意:本教程可能已過(guò)時(shí),請(qǐng)到此處獲取更新版本。
?
該項(xiàng)目展示了如何將MKR FOX 1200和一堆 I2C 傳感器變成一個(gè)簡(jiǎn)單的電池供電氣象站。
我們將使用:
- 板載溫度傳感器(低精度,± 1 °C)
- HTU21D I2C 傳感器獲取濕度水平
- 博世 BMP280 獲取大氣壓力和精確溫度
- TSL2561光傳感器獲取光度
硬件設(shè)置
該項(xiàng)目的硬件連接非常簡(jiǎn)單:所有傳感器都使用 I2C 接口并在 3.3V 下運(yùn)行。
它們需要來(lái)自 MKR FOX 1200 的四根線:GND、3.3V、引腳 11 上的 SDA 和引腳 12 上的 SCL。相同的四個(gè)連接可以與三個(gè)傳感器并聯(lián)共享,因?yàn)樗鼈兠總€(gè)都有一個(gè)特定的 I2C 地址,因此相關(guān)的庫(kù)和函數(shù)將負(fù)責(zé)區(qū)分它們中的每一個(gè)。
整個(gè)項(xiàng)目可以由兩節(jié)AA或AAA堿性電池串聯(lián)產(chǎn)生3V并接線到板上的螺絲接線端子塊供電。
Sigfox 消息
由于 Sigfox 網(wǎng)絡(luò)每天最多可以發(fā)送 140 條消息,因此我們將優(yōu)化讀數(shù)并以緊湊的二進(jìn)制格式發(fā)送數(shù)據(jù)。
數(shù)據(jù)打包很重要,因?yàn)槟梢园l(fā)送的消息的最大大小為 12 個(gè)字節(jié)。一個(gè)浮點(diǎn)數(shù)占用 4 個(gè)字節(jié),所以我們需要將我們的讀數(shù)打包成一些更小的表示形式。
浮點(diǎn)格式非常寬(您可以表示大到 3.402823e+38 (!) 的數(shù)字),我們不需要整個(gè)數(shù)據(jù)空間;然后我們可以決定安全限制(基于我們將要部署站點(diǎn)的位置)并在后端恢復(fù)原始表示。
云服務(wù)的配置
我們將使用兩種云服務(wù):
使用FirstConfiguration 示例提供的 PAC 和 ID 在 Sigfox 后端注冊(cè)您的開(kāi)發(fā)板(如果您已經(jīng)為之前的項(xiàng)目做過(guò),可以跳過(guò))。
兩者都需要配置為相互交談并以正確的格式解釋數(shù)據(jù)。在 Thingspeak 上注冊(cè)并創(chuàng)建幾個(gè)頻道。配置如下圖所示。
我們配置的第一個(gè)通道將接收原始數(shù)據(jù)(readChannelID
),而第二個(gè)將收集重新縮放的數(shù)據(jù)(writeChannelID
)。

是時(shí)候使用 Arduino Create Editor 上傳草圖了。默認(rèn)草圖允許您在現(xiàn)場(chǎng)部署之前廣泛測(cè)試所有基礎(chǔ)架構(gòu)。
記得聲明:
oneshot = false
當(dāng)您確信所有后端基礎(chǔ)架構(gòu)設(shè)置正確時(shí)。草圖等待串口,所以我們現(xiàn)在不會(huì)啟動(dòng)它。相反,打開(kāi)SigFox 后端并配置回調(diào):
單擊設(shè)備類(lèi)型->列表-> 右鍵單擊??您的電路板,然后單擊編輯。

點(diǎn)擊左側(cè)菜單中的回調(diào):

你會(huì)看到這樣的窗口:
點(diǎn)擊窗口右上角的新建按鈕:

選擇自定義回調(diào):

?

相關(guān)配置報(bào)告如下。確?;卣{(diào)設(shè)置為:
-
類(lèi)型:
DATA/UPLINK
-
渠道:
URL
-
方法:
GET
作為自定義有效負(fù)載,設(shè)置:
status::uint:8 temp1::int:16:little-endian temp2::int:16:little-endian press::uint:16:little-endian hum::uint:16:little-endian light::uint:16:little-endian lastMsg::uint:8
這代表了我們?cè)诓輬D中打包的結(jié)構(gòu)。我們?yōu)槊總€(gè)字段分配了一個(gè)變量,因此我們可以在 HTTP 回調(diào)中引用它們。
作為 URL 模式,設(shè)置:
https://api.thingspeak.com/update?api_key=XXXXXXXXXXXX&field1={customData#temp1}&field2={customData#press}&field3={customData#temp2}&field4={customData#hum}&field5={customData#light}&field6={customData#status}&field7={customData#lastMsg}
配置完成后,您的窗口應(yīng)如下所示:

請(qǐng)記住將 API 密鑰更改為api_key
Thingspeak 提供的Write API Key
密鑰Channel1
。

保存并退出。我們現(xiàn)在可以打開(kāi)串口并觀察正在發(fā)送的第一條消息。萬(wàn)歲!
從原始到圖形
我們配置的設(shè)置會(huì)將我們的數(shù)據(jù)路由到 Thingspeak 后端,但它們?nèi)匀皇窃几袷剑?/font>要重新轉(zhuǎn)換它們,讓我們使用帶有此代碼段的Thingspeak 分析工具
% TODO - Replace the [] with channel ID to read data from:
readChannelID = [];
% TODO - Enter the Read API Key between the '' below:
readAPIKey = 'T6UK7XO6A4H2AGT7';
% TODO - Replace the [] with channel ID to write data to:
writeChannelID = [];
% TODO - Enter the Write API Key between the '' below:
writeAPIKey = 'XU4TGY261P6B5USN';
%% Read Data %%
data = thingSpeakRead(readChannelID, 'ReadKey', readAPIKey,'OutputFormat','table');
analyzedData = data;
%% Analyze Data %%
INT16_t_MAX = 32767;
UINT16_t_MAX = 65536;
analyzedData.('Temperature1') = data.('Temperature1') / INT16_t_MAX * 120 ;
analyzedData.('Temperature2') = data.('Temperature2') / INT16_t_MAX * 120 ;
analyzedData.('Pressure') = data.('Pressure') / UINT16_t_MAX * 200000 ;
analyzedData.('Light') = data.('Light') / UINT16_t_MAX * 100000 ;
analyzedData.('Humidity') = data.('Humidity') / UINT16_t_MAX * 110 ;
%% Write Data %%
thingSpeakWrite(writeChannelID, analyzedData, 'WriteKey', writeAPIKey);
%% Schedule action: React -> every 10 minutes
通過(guò)用我們自己的替換通道 ID,我們最終可以將原始數(shù)據(jù)轉(zhuǎn)換回實(shí)際值。請(qǐng)記住使用React每 10 分鐘安排一次分析操作,否則將永遠(yuǎn)不會(huì)執(zhí)行!

?

?

我們終于有了精彩的圖表。

?

?
- 使用USCI I2C主站
- XV4001BC車(chē)載用SPI/I2C輸出接口的數(shù)字輸出
- 帶BME280傳感器的Arduino簡(jiǎn)易氣象站
- MKR FOX 1200運(yùn)動(dòng)觸發(fā)器開(kāi)源分享
- 基于ESP8266的氣象傳感器—DubosAirNano2氣象站 1次下載
- 基于LoPy4的氣象站設(shè)計(jì) 0次下載
- 基于Particle Photon的氣象站 0次下載
- 基于Arduino的無(wú)線氣象站 0次下載
- 基于Arduino UNO的氣象站 2次下載
- 使用太陽(yáng)能電池板的氣象站
- 使用DHT11傳感器和OLE顯示屏構(gòu)建氣象站
- 使用dht傳感器、HC12模塊和I2C LCD顯示器制作遠(yuǎn)程氣象站
- ADT7420:±0.25°C精度、16位數(shù)字I2C溫度傳感器
- 使用MPU6050傳感器讀取I2C總線數(shù)據(jù)的程序免費(fèi)下載 15次下載
- 如何將I2C從地址左移1位
- I2C通信協(xié)議及其工作原理 4991次閱讀
- Linux I2C驅(qū)動(dòng)入門(mén)知識(shí)科普 1734次閱讀
- 如何利用ESP8266實(shí)現(xiàn)防雨物聯(lián)網(wǎng)氣象站的設(shè)計(jì) 5136次閱讀
- 如何使用ESP32創(chuàng)建一個(gè)氣象站 4040次閱讀
- 如何使用兩個(gè)dht傳感器及HC12模塊制作遠(yuǎn)程氣象站? 2977次閱讀
- 基于創(chuàng)建帶有空氣質(zhì)量傳感器的室內(nèi)氣象站 2358次閱讀
- 什么是I2C通信協(xié)議? 7829次閱讀
- 開(kāi)源軟件opencores I2C master控制器控制I2C接口操作原理 7195次閱讀
- i2c總線用來(lái)做什么_i2c總線數(shù)據(jù)傳輸過(guò)程 7305次閱讀
- dfrobotSHT20 I2C防水型溫濕傳感器簡(jiǎn)介 3110次閱讀
- dfrobotDIY智能氣象站套件簡(jiǎn)介 1756次閱讀
- I2C總線的工作原理以及優(yōu)缺點(diǎn)解析 1.5w次閱讀
- 詳細(xì)講解RT-Thread I2C設(shè)備驅(qū)動(dòng)框架及相關(guān)函數(shù) 2w次閱讀
- 基于I2C接口與上級(jí)無(wú)線傳感器網(wǎng)絡(luò)通信的環(huán)境監(jiān)測(cè)系統(tǒng) 3408次閱讀
- 基于STM32的自動(dòng)氣象站控制模塊設(shè)計(jì) 8676次閱讀
下載排行
本周
- 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)論