• 方案介紹
  • 附件下載
  • 相關(guān)推薦
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

【RT-Thread作品秀】工業(yè)多點(diǎn)傳感器信息收集子系統(tǒng)

2020/12/22
463
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

597988609.jpg

共4個(gè)文件

?

 概述:

  多點(diǎn)傳感器采集子系統(tǒng)是用基于 STM32 系類芯片STM32H750開(kāi)發(fā)板ART-Pi開(kāi)發(fā),支持無(wú)線采集多種傳感器數(shù)據(jù),子系統(tǒng)收集數(shù)據(jù)后通過(guò)無(wú)線網(wǎng)絡(luò)上傳分站。訪問(wèn)該子系統(tǒng)時(shí)會(huì)展示一個(gè)網(wǎng)頁(yè)顯示本系統(tǒng)采集到的傳感器數(shù)據(jù)。該系統(tǒng)適用與工業(yè)現(xiàn)場(chǎng)各種傳感器數(shù)據(jù)收集轉(zhuǎn)儲(chǔ),可以用在傳感器較多的場(chǎng)景中。

開(kāi)發(fā)環(huán)境

硬件:ART-Pi主板

擴(kuò)展板 ESP8266 WIFI模塊

RT-Thread版本RT-Thread V 4.0.3

開(kāi)發(fā)工具及版本RT-Thread Studio 2.0.0

RT-Thread使用情況概述

內(nèi)核部分:調(diào)度器,信號(hào)量,消息隊(duì)列。

調(diào)度器:創(chuàng)建多個(gè)線程來(lái)實(shí)現(xiàn)不同的工作。

信號(hào)量:用來(lái)同步線程。

消息隊(duì)列:用來(lái)實(shí)現(xiàn)線程之間傳遞的數(shù)據(jù)。

組件部分SPI框架, Sensor框架,SAL 套接字抽象層

軟件包部分

Webnet:建立一個(gè)簡(jiǎn)單Web服務(wù)器,提供數(shù)據(jù)顯示界面。

cJSONC語(yǔ)言實(shí)現(xiàn)的極簡(jiǎn)的解析 JSON 格式的軟件包。

TFTP:上傳配置數(shù)據(jù),網(wǎng)頁(yè)文件等。

MicroPython:邏輯實(shí)現(xiàn)的主要部分。實(shí)現(xiàn)與ESP8266的連接以傳輸收集的傳感器數(shù)據(jù)。還要實(shí)現(xiàn)對(duì)展示數(shù)據(jù)的網(wǎng)頁(yè)的動(dòng)態(tài)生成。

硬件框架

 

將接收到ESP8266的數(shù)據(jù)轉(zhuǎn)儲(chǔ)后傳輸?shù)椒终?a class="article-link" target="_blank" href="/tag/%E4%B8%8A%E4%BD%8D%E6%9C%BA/">上位機(jī)。

軟件框架

 

軟件框架說(shuō)明

本項(xiàng)目使用2個(gè)線程,其中一個(gè)負(fù)責(zé)基于ESP8266的采集板通過(guò)發(fā)送UDP數(shù)據(jù)包給ARIT-Pi獲得傳感器數(shù)據(jù),另一個(gè)線程負(fù)責(zé)根據(jù)數(shù)據(jù)池的數(shù)據(jù)生成動(dòng)態(tài)網(wǎng)頁(yè)并上傳數(shù)據(jù)。

第一部分:數(shù)據(jù)接收線程

此線程負(fù)責(zé)接收由基于ESP8266的采集板發(fā)送來(lái)的UDP數(shù)據(jù)。并儲(chǔ)存在數(shù)據(jù)池內(nèi)。

第二部分:網(wǎng)頁(yè)生成線程

另一個(gè)線程負(fù)責(zé)從數(shù)據(jù)池內(nèi)提取數(shù)據(jù),并根據(jù)數(shù)據(jù)生成網(wǎng)頁(yè)供展示傳感器數(shù)據(jù)。然后將接收到ESP8266的數(shù)據(jù)轉(zhuǎn)儲(chǔ)后傳輸?shù)椒终旧衔粰C(jī)。

軟件模塊說(shuō)明

server_run接收UDP數(shù)據(jù)包線程,提取有用傳感器數(shù)據(jù),保存在數(shù)據(jù)池。

web_run:根據(jù)采集到的數(shù)據(jù)生成網(wǎng)頁(yè)文件,并保存在/flash/webnet目錄下。然后將數(shù)據(jù)上傳至上位機(jī)。

main:負(fù)責(zé)led 閃爍,用來(lái)顯示當(dāng)前系統(tǒng)的運(yùn)行狀態(tài)。

演示效果

 

從傳感器傳來(lái)的數(shù)據(jù)是隨時(shí)變化的。

使用的材料其實(shí)也很簡(jiǎn)單,就是一個(gè)ART-Pi主板和一個(gè)ESP8266模塊。

 

視頻觀看:

比賽感悟

通過(guò)這次實(shí)踐,我學(xué)習(xí)了RT-Thread 操作系統(tǒng)的裁剪和各種組件和軟件包的搭配使用。在過(guò)程中學(xué)到了許多以前沒(méi)有接觸過(guò)的知識(shí),也對(duì)RT-Thread RTOS也有了新的認(rèn)識(shí)。對(duì)這種小操作系統(tǒng)能做到這樣的程度感到非常吃驚。這讓我以后使用該系統(tǒng)更有底氣。

RT-Thread的軟件包非常豐富,我在這個(gè)小操作系統(tǒng)上找到了需要的web服務(wù)器、TFTP服務(wù)器、socket組件,令人意外的是集成了MicroPython,而且在MicroPython中支持re和json,可以快速開(kāi)發(fā)應(yīng)用,不用每一次修改程序都重新燒寫一遍芯片。但是我在試圖使用動(dòng)態(tài)模塊時(shí)卻不順利,這讓我對(duì)這種操作系統(tǒng)的配置復(fù)雜性有一點(diǎn)卻步,感覺(jué)上手有一點(diǎn)難,其實(shí)還可以做的更好一些。

最后感謝主辦方提供了這么好的一個(gè)平臺(tái),讓我學(xué)到了許多RT-Thread操作系統(tǒng)的特性。通過(guò)這次的實(shí)踐我對(duì)RT-Thread的許多特性有了了解,并且感受到此產(chǎn)品在工程開(kāi)發(fā)上提供的許多便利性,我會(huì)在以后的作品中更多的使用RT-Thread產(chǎn)品,也會(huì)向朋友推薦這款產(chǎn)品。

?

  • 597988609.jpg
    下載
    描述:使用的是大賽配的ART-Pi板
  • art_pi_wifi_sub.zip
    下載
    描述:工程文件
  • README.md
    下載
    描述:簡(jiǎn)單說(shuō)明
  • 【RT-Thread作品秀】工業(yè)多點(diǎn)傳感器信息收集子系統(tǒng).docx
    下載
    描述:【RT-Thread作品秀】工業(yè)多點(diǎn)傳感器信息收集子系統(tǒng)

相關(guān)推薦