0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

助力数据采集 推动信息化系统云端发展

芯片开放社区 来源:芯片开放社区 作者:芯片开放社区 2022-11-28 10:01 次阅读

开发者nbfei 通过调用串口与测量板通信,接收测量板的测量数据,并对其测量范围进行控制。另外控制W800连接IOT studio,将数据上传并接收控制指令,完成便携仪器云端数据系统。

便携仪器云端数据系统的实现过程,请见本文详细介绍。

01项目背景

本人参加2021年电赛并取得A题THD测量装置的国家二等奖,正在对该装置进行全方面的升级,包括测量范围,精度,带宽,测量参数等方面,目的实现硬件便携(口袋仪器与数据采集卡的结合),手机+PC上位机显示,系统不限于特定测量仪器功能,后续可通过便捷的方式更换具有示波,信号发生,万用表等功能的测量板扩展相应功能。申请本开发板想要用来进行远程控制,无线传输方案原型设计,以及云端数据系统的原型设计。

02作品简介

由于上述内容除了使用RVB2601实现云端数据系统外均为本人的毕业设计,所以本次作品提交以RVB2601的使用介绍为主。

图片左端为本人设计制作的测量板第一版,主要实现输入任意波形信号的采集,THD测量,频率、VPP、谐波归一化幅值等参数的测量,单周期波形的采集等功能,具体见第三部分。测量板将采集到的数据通过串口发送至PC,蓝牙发送至手机,在本作品提交中,由于需要使用串口,因此将蓝牙模块串口断开接至CH2601的串口0,RVB2601接收数据解析出各测量参量,然后将数据上传至IOT studio显示,个别数据在LCD显示。

9bc6a20c-6ebe-11ed-8abf-dac502259ad0.jpg

03各部分功能说明和解析

非常感谢平头哥的支持,在这次评测活动中,由于前期忙着考研复试与毕业设计,至今才来发帖来分享自己对本次申请板卡RVB2601的使用体验,我大概5月开始前前后后花了应该有八九天的时间来使用板卡熟悉环境,构建一个简单的应用。当时申请板卡的时候,目的也是为了给毕设增加一个数据上传云端的功能,但是后面做完前面的任务后剩余的时间裕量也不足了,但也基本实现了Web显示的功能,遗憾的是暂未实现采集的单周期波形显示功能。

首先我的毕业设计来源于2021年电赛A题信号失真度测量装置,在比赛时我也是将比赛要求完成,因此毕设主要是对整个电路的集成与参数的优化,另外增加PC上位机显示控制功能,整体较为简单。在毕业设计制作过程中,电路设计阶段参照DSO模拟前级电路原理,单片机程序设计综合运用等效时间采样、平顶窗、频谱分析等应用原理实现了整个测量系统的设计制作。在毕设整体设计完成后,我预想使用申请的RVB2601+IOT studio实现WEB端数据查看与测量控制,设计过程如下。

9bef5076-6ebe-11ed-8abf-dac502259ad0.png

首先接触一个新的板卡或单片机,比如使用MSP430与MSP432时,参照官网提供的详细的datasheet和usersguide,搭配例程来可以较深刻的理解工作机制并构建应用。刚收到RVB2601后,我是这样想的,但奈何官方资料比较少,例程至今也比较有限,我对物联网操作系统的认识仅限于使用过小熊派和LiteOS连接华为云,其主控为熟悉STM32的低功耗系列,另外我主要方向是底层的板级设计与程序开发信号处理,所以刚开始对RVB2601用起来很不习惯,在我看来只uart的操作就一次又一次的封装,分在不同的包中,函数功能不尽相同,且各函数也不易查找,缺少注释与文件支持。

好在我本次需要用到的外设不多,只调用一个串口即可,作用是与测量板通信,接收测量板的测量数据,并对其测量范围进行控制。另外控制W800连接IOT studio,将数据上传并接收控制指令。

3.1 串口方面

由于本装置的PC端与手机端应用都是基于.NET框架开发的,本人在两个平台上也都使用异步接收数据,对数据进行拼接解析协议,因此我在本单片机的使用中也首选异步收发,这和我之前裸跑32/432不大相同,我按照GitBook指导文档中CSI2驱动接口的异步收发接口说明与例程实现了TX但是不能实现非固定的字节接收,这困扰了我很长时间,为此我想了好多办法,去串口接收寄存器读缓存个数等等,但基本都失败了。后面看了sipower的发帖,嗯,去试了试,嗯,可以,但是由于我需要快速接收数据,测量板发送数据周期<100ms,每次发送300字节左右,由于我水平与时间有限,并且对操作系统认识不足,所以没能调试出来。

后面,还是使用了同步收发,成功完成收发任务。

//串口接收函数
void get_input(char * str)
{
char input = 'a';
uint32_t i ;
uint32_t num = 0;
for( i = 0; i<500 ;i++)str[i] = '';
while(uart_getc() != 'T'){
num++;
if(num == 2200000)return;//超时退出
}
str[0] = 'T';
i = 1;
while(input != 'E')
{
input = uart_getc() ;
str[i] = input;
i++;
}
}

3.2 传输协议

解决了物理层后,需要在协议层规定数据传输格式,由于下位机向电脑与手机端发送数据与接收数据均采用同一格式,因此本着效果不错就不修改方案的原则,我没有再去改下位机单片机MSP432的程序,使用同一协议格式通信,如下:

发送:T0.67Amp0.01,0.00,0.00,0.00F10000V1.97,W 799, 875, 949,1017,1087,1150,1208,1259,1299,1334,1359,1375,1376,1375,1358,1334,1299,1256,1206,1149,1086,1017, 947, 873, 797, 721, 646, 574, 503, 437, 376, 321, 273, 233, 201, 177, 163, 160, 166, 181, 205, 238, 279, 329, 384, 445, 513, 582, 656, 732,E

接收:‘0’或‘1’(分别表示频率测量范围为“1k~500k”或“500k~1M”)

其中T后A前为THD,Amp后F前为归一化幅值逗号隔开,F后V前为频率,V后W前为峰峰值,W后为50个点的波形数据逗号隔开,T和E为数据开始与数据结束,通过串口接收。

串口接收任务如下:

//串口接收任务
static void uart_task(void *arg)
{
char str[500];
uint32_t i;

while(1)
{
//串口接收
get_input(str);
//printf("%s
",str);
if(str[0]=='T'){
rec_flag = 1;
//解析出各参数
char *T_adr = strchr(str,'T');
char *A_adr = strchr(str,'A');
char *F_adr = strchr(str,'F');
char *V_adr = strchr(str,'V');
char *W_adr = strchr(str,'W');
//THD
for(i = 0;i < strlen(T_adr)-strlen(A_adr)-1;i++)THD[i] = T_adr[i+1];
T_adr[i] = '';
//Amp
for(i = 0;i < 4; i++)H2[i]  = A_adr[i+3];
for(i = 0;i < 4; i++)H3[i]  = A_adr[i+8];
for(i = 0;i < 4; i++)H4[i]  = A_adr[i+13];
for(i = 0;i < 4; i++)H5[i]  = A_adr[i+18];
//FRE
for(i = 0;i < strlen(F_adr)-strlen(V_adr)-1;i++)FRE[i] = F_adr[i+1];
FRE[i] = '';
//VPP
for(i = 0;i < strlen(V_adr)-strlen(W_adr)-1-1;i++)VPP[i] = V_adr[i+1];
VPP[i] = '';
//Wave
for(i = 0;i < strlen(W_adr)-3;i++)
{
Wave[i] = W_adr[i+1];
}

}


//printf("THD = %s
",THD);
//printf("H2 = %s
",H2);
//printf("H3 = %s
",H3);
//printf("H4 = %s
",H4);
//printf("H5 = %s
",H5);
//printf("FRE = %s
",FRE);
//printf("VPP = %s
",VPP);
//printf("Wave = %s
",Wave);

aos_msleep(20);
}
}

3.3 上传云端

ESP8266类似,W800可以AT指令控制,所以这个过程就变得简单了,这里使用sipower博主分享的四个AT指令控制函数和上云例程,非常感谢博主的分享。这里在IOT Studio上创建产品,增加功能定义,添加设备。在数据上传函数中将前面的参数与后面的波形数据分开发送,波形数据用数组发送。

9c22fe1c-6ebe-11ed-8abf-dac502259ad0.png

9c3b1ff6-6ebe-11ed-8abf-dac502259ad0.png

9c5b91aa-6ebe-11ed-8abf-dac502259ad0.png

9c7463ce-6ebe-11ed-8abf-dac502259ad0.png

9c95e666-6ebe-11ed-8abf-dac502259ad0.png

在这里注意:在printf里\表示,”表示”

9cb8e0d0-6ebe-11ed-8abf-dac502259ad0.png

9ccc2ad2-6ebe-11ed-8abf-dac502259ad0.png

04作品源码

链接:https://pan.baidu.com/s/1Z4kLJfqyFD5iI0tun0NZxw?pwd=d8tx

提取码:d8tx

05视频演示

视频链接:

链接:https://pan.baidu.com/s/1YTGGdCWo1JxIpNaMdr4-qw?pwd=6s4n

提取码:6s4n

9cd7cce8-6ebe-11ed-8abf-dac502259ad0.jpg

审核编辑 :李倩



声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据采集
    +关注

    关注

    39

    文章

    6138

    浏览量

    113740
  • 信息化
    +关注

    关注

    1

    文章

    490

    浏览量

    21152
  • 数据系统
    +关注

    关注

    0

    文章

    18

    浏览量

    10209

原文标题:应用速递 | 助力数据采集 推动信息化系统云端发展

文章出处:【微信号:芯片开放社区,微信公众号:芯片开放社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    相关推荐

    大型农田灌区信息化管理监测系统方案

    大型农田灌区信息化管理监测系统是一个集数据采集、传输、分析与决策支持于一体的农田灌区信息化管理监测系统,实现灌区的精细化管理与高效运作
    的头像 发表于 12-24 16:29 171次阅读
    大型农田灌区<b class='flag-5'>信息化</b>管理监测<b class='flag-5'>系统</b>方案

    制造业数字信息化、智能跟MES系统有什么关联?

    万界星空科技MES系统作为连接企业计划层与车间执行层的桥梁,不仅实现了生产数据的实时采集和分析,还通过与其他信息系统的集成和智能技术的应用
    的头像 发表于 10-30 11:45 187次阅读

    泵站信息化系统

    一、系统介绍泵站信息化系统是集智能传感、物联网、自动控制、计算机监控、信息通信技术等完成泵站机械电气设备监视、运行数据测量、自动
    的头像 发表于 09-19 15:48 278次阅读
    泵站<b class='flag-5'>信息化</b><b class='flag-5'>系统</b>

    数据采集模块在应力应变、仪器仪表和自动信息化领域的广泛应用

    数据采集
    稳控自动化
    发布于 :2024年09月18日 10:24:46

    纺织工厂数据采集网关的功能作用有哪些

    纺织工厂数据采集网关是现代工业自动信息化系统中的关键设备,主要用于收集、处理和传输工厂中各种设备和系统
    的头像 发表于 08-15 13:47 279次阅读

    工控数据采集网关是什么

    工控数据采集网关是一种专门用于工业控制系统中的设备,它的主要功能是采集和传输现场设备的数据到上位机或者云端服务器。它在工业自动
    的头像 发表于 07-23 15:21 434次阅读
    工控<b class='flag-5'>数据采集</b>网关是什么

    智慧医院信息化建设方案

    智慧医院 信息化建设方案是医疗机构实现数字转型、提升医疗服务水平的重要举措。通过整合信息技术、数据管理、智能
    的头像 发表于 07-17 14:17 1030次阅读

    智慧灌区信息化系统完整解决方案

    一、背景随着科技的快速发展,智慧灌区信息化系统正逐渐成为提高农业灌溉效率、优化水资源配置的重要手段。本文将详细介绍智慧灌区信息化系统的完整解
    的头像 发表于 07-15 15:23 843次阅读
    智慧灌区<b class='flag-5'>信息化</b><b class='flag-5'>系统</b>完整解决方案

    数据采集系统分为几类

    和应用场景. 1. 概述 大数据采集系统是实现数据收集、处理和存储的关键环节。随着大数据技术的快速发展,大
    的头像 发表于 07-01 15:44 1601次阅读

    光伏智能运维系统助力光伏电站信息化管理

           光伏智能运维系统助力光伏电站信息化管理        由于光伏电站的独特特点,在系统的运维、运营上面临着诸多无法回避的问题,如设备众多、设备分散、环境复杂、导致集中管理困
    的头像 发表于 06-27 14:35 744次阅读
    光伏智能运维<b class='flag-5'>系统</b><b class='flag-5'>助力</b>光伏电站<b class='flag-5'>信息化</b>管理

    plc物联网数据采集平台是什么

    PLC物联网数据采集平台是基于物联网技术,将多个PLC设备连接到云端数据采集与管理系统。通过采集和分析PLC产生的
    的头像 发表于 06-24 15:18 808次阅读

    如何借用物联网快速实现高标准农田信息化

    (Internet of Things, IoT)技术,凭借其强大的数据采集、处理与分析能力,为实现高标准农田信息化提供了强有力的技术支撑。以下是借助物联网快速实现高标准农田信息化的几个关键方面: 智能感知与精准监测 通过部署各
    的头像 发表于 06-24 13:50 319次阅读
    如何借用物联网快速实现高标准农田<b class='flag-5'>信息化</b>

    数据采集边缘网关解决企业数据采集痛点的关键

    网关 应运而生,成为解决企业数据采集痛点的关键所在。 一、企业背景与痛点分析 在当前信息化、智能的时代背景下,许多企业面临着海量数据采集和处理的难题。这些企业通常拥有多个分散的业务场
    的头像 发表于 04-07 13:56 394次阅读

    焊接信息化系统

    ,通信协议等也不尽相同,在整体应用层面上有一定限制。为了解决这一问题,德州迪格特电子科技有限公司研究开发了一套适用于多种焊机型号的焊接信息化系统。该系统针对工业现场的模拟和数字焊机的
    的头像 发表于 02-02 17:30 856次阅读
    焊接<b class='flag-5'>信息化</b><b class='flag-5'>系统</b>

    水利信息化监测平台 助力现代水利

    随着物联网、大数据、云计算等新技术在水利行业的广泛应用,水利信息化监测平台应运而生,在提升水利工程监测预警、增强水资源管理调度能力等方面发挥着重要作用。 一、水利信息化监测平台概述 水利信息化
    的头像 发表于 01-22 15:09 440次阅读
    水利<b class='flag-5'>信息化</b>监测平台 <b class='flag-5'>助力</b>现代水利