串口软件Vofa+,超好用。可用于高速采集数据直观化显示动态

(上一次写的不够完整,有好多人还会遇到问题,我再回来完善下)

使用背景:

在调试无感的无刷直流电机的应用中,需要高速采集3路驱动电压,用于检测反电动势的“过零点”。

(其实后来接触控制领域,发觉高速采样模拟信号是非常常见的事情,动辄10k、100k的采样率——2021/06/02)

【因为无刷电机一般转速都比较高。比如每分钟12万转,即2000转/S。而如果无刷电机1个机器周期有3个电气周期,则转速相当于有6000转/S。采样率按信号的十倍算,所以采样率得60k,即采样16.7uS采集一次。而我一次采集3个路,一路数据1Byte(我使用8Bit,没有用10bit、12bit,因为考虑到数据量的问题),即数据量为:60k*3*8=1080000bit,超过了1M/S】

我需要把以上那么多的数据通过数据协议发出来,并且实时直观的显示,这样能查看验证采集到的数据是什么情况,通过什么方法来进行算法处理,就像这样

所算需要传输速度快,而且是大约每16.7uS发送一次,一次发3个byte的有效数据。找了些工具:J-Link Scope/ STM Studio/ SerialChart.exe,但是都由于速度不够不能使用。

最终在群友的帮助下,找到了“Vofa+”这个串口软件。

软件说明:

Vofa支持3种数据流方式:分别为:RawData、firewater、justfloat。

RawData:协议适用于不需要解析数据,仅仅查看字节流的需求。【可以直接当串口助手使用

意思是发什么,显示什么,可以字符串显示,可以Hex显示,就跟一般常见的下面图片这个一样

firewater:本协议是CSV风格的字符串流,直观简洁,编程像printf简单。但由于字符串解析消耗更多的运算资源(无论在上位机还是下位机),建议仅在通道数量不多、发送频率不高的时候使用。

justfloat:本协议是小端浮点数组形式的字节流协议,纯十六进制浮点传输,节省带宽。此协议非常适合用在通道数量多、发送频率高的时候。

使用情况:

我使用以上说的第三种数据格式:justfloat。根据上位机所需要的协议,数据格式为:浮点数,浮点数……End(32bit)。比如说仅让上位机显示一个点,数值为1,那么以内存中存放的数据看起来就是发送:“0x3F80 0000,0x7f80 0000”。以上0x7f80 0000为协议固定需要的尾。

我需要发送3个数据,所以我的数据格式为:float Chan1,float Chan2,float Chan3,uint32_t End。Chan1,Chan2,Chan3分别是我要发的3个数据(把定点数需要转为浮点数),End为协议所需要的尾。这样把我的3个8Bit数据,通过4个32Bit数据传输到PC上位机。

软件代码编写:通过如下把代码实现传输

uint8_t AdcGetVal[3];                    //为定义的3个电压采集值
float tempFloat[3];                    //定义的临时变量
uint8_t tempData[16];                    //定义的传输Buffer
tempFloat[0] = (float)AdcGetVal[0];    //转成浮点数
tempFloat[1] = (float)AdcGetVal[1];
tempFloat[2] = (float)AdcGetVal[2];
memcpy(tempData, (uint8_t *)tempFloat, sizeof(tempFloat));//通过拷贝把数据重新整理
tempData[12] = 0x00;                    //写如结尾数据
tempData[13] = 0x00;
tempData[14] = 0x80;
tempData[15] = 0x7f;HAL_UART_Transmit_IT(&huart6, (uint8_t *)tempData, 16);    //通过串口传输16个数据

而由于把8Bit加载在32Bit数据进行传输,导致数据量变大4倍。所以我设计的16.7uS采集发送一次带宽不够。

最终我调试串口波特率为:3Mbps,每60uS发送一次数据。

我所使用的USB转串口为FT232芯片,最高支持3M波特率。

效果显示:

在网站:VOFA+ | VOFA+进行下载软件(可下载免安装的),并进行设置。

以下是我设置后显示的波形。发送数据周期为60uS,相当于是:16.6k的速度。

问题1:有些人说自己不显示波形?

回答:我给个提议:1、先使用RawData格式,查看是否收到了数据;2、检查收到数据是否符合协议格式(最后一个结尾的数据是固定的);3、查看自己是否按照我上面图片设置了显示波形。

问题2:怎么增加波形数?

回答:先把一个波形能显示了之后,发送数据的时候多发一个浮点数数据,再加End。比如说一个波形的数据为:float,end;2个波形的数据就为:float,float,end。

在下一篇文章中,介绍使用VOFA+调试PID算法

使用VOFA+工具用于调试PID算法_一个做底层的码农的博客-CSDN博客本文介绍使用VOFA+工具用于调试PID算法(重点是实现使用此工具用于调试,而非介绍算法,我也不确定以下算法的正确性,大家参考即可)。一、首先验证发的数据正确性。当我配置发送“0”和“0”数据时,上位机收到数据如图。00 00 80 7F为帧尾。当我配置发送“1”和“2”数据时,上位机收到数据如图。00 00 80 7F为帧尾。如果收到数据不是以上情况,则说明串口发送数据的格式不正确。定时器中断中调用,控制算法和发送函数均在一个函数中实现。//定时器中,1Ms调用一次,固定https://blog.csdn.net/weixin_42316458/article/details/121502912

以上完结。

本人新建了个QQ群,如想进一步沟通可添加:947187213。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/33856.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

国内IT软件外包公司汇总(2023 最新版)!

关注、星标公众号,直达精彩内容 原文:https://sourl.cn/Y757iG 最近很多读者问我只有外包的 offer 能去吗? 大环境不行,面试太少了,很多本科生想进外包都没机会。非常时期,不需要在意那么多,外包…

鼎捷T100权限管控设定

文章目录 一、名称解释1.1 角色1.2 用户1.3 账号 二、权限结构2.1 权限设置作业 三、权限实作3.1 角色规划3.2 用户数据设置 一、名称解释 1.1 角色 角色代表企业中的一个职能权限集合,例如业务职能需要有估报价单维护、订单维护等操作权限。 角色定义操作权限如作…

聚焦装备制造行业数智化转型 鼎捷软件勇担产业先锋

国务院政府工作报告指出:“十四五期间加快数字化发展,打造数字经济新优势,协同推进数字产业化和产业数字化转型”。制造业数字化转型作为产业数字化的重点体现,将成为未来中国制造业实现新发展的焦点所在。作为国民经济的支柱产业…

畅捷通T+和旺店通·企业奇门单据接口对接

数据源平台:旺店通企业奇门 慧策最先以旺店通ERP切入商家核心管理痛点——订单管理,之后围绕电商经营管理中的核心管理诉求,先后布局流量获取、会员管理、仓库管理等其他重要经营模块。慧策的产品线从旺店通ERP起步,向前向后延伸&#xff0c…

阿里云联合鼎捷软件发布云上数字工厂解决方案,实现云MES系统本地化部署

5月18日,阿里云与鼎捷软件联合主办的“云上数字工厂与中小企业数字化转型创新论坛”于线上举行。本次创新论坛上,阿里云弹性计算解决方案及运营负责人胡晓博与鼎捷软件上海事业部总经理袁能飞共同宣布“鼎捷MES&阿里云云盒云上数字工厂解决方案”正式…

鼎捷T100,TOPGP Debug时更改user

鼎捷T100,TOPGP Debug时更改user 有一些程序可能根据不同的用户设置了一些卡控或权限之类的,而我们debug的时候却用的是tiptop账号,如何在debug的时候更改用户呢? T100在debug的时候要过 CALL cl_ap_init(“cim”,“”) 函数 tip…

鼎捷T100标准接口调用

一、接口信息 我们先找接口信息,它们正常情况下都存在azzi700集成服务基本数据维护作业内, 接口地址:http://服务IP/wtoptst/ws/r/awsp920,鼎捷会给你的。 接口文档:在上图中的“API语系清单”内,标准接口一般包含简体和繁体两种模板。 二、接口调用步骤 以下用前面…

鼎捷软件顾华杰:鼎捷雅典娜是数智驱动的最佳典范

“人类自始至终就是数据驱动的物种,通过各种感官来取得对应的数据,通过脑内存储的知识来判断和回应外在的变化。现在,我们把未来数智系统的设计思路,回归到像人一样的简单,用数据来驱动和回应。”鼎捷软件副总裁顾华杰…

鼎捷T100 Oracle基础

文章目录 一、Oracle架构1.1 Oracle SGA架构简介1.2 Oracle SGA数据库运作说明1.3 Oracle实体与逻辑结构1.5 Oracle实体与逻辑结构 二、Oracle常用的一些指令三、管理Oracle Instance3.1 shutdown3.2 startup3.3 parameter files 四、常用Data Dictonary五、network六、Oracle常…

[管理]鼎捷软件售后服务体验

地点:白鹭洲大酒店 直接上图吧:

【观察】数智驱动+知识封装,鼎捷软件如何炼就“雅典娜”这个“新物种”?...

毫无疑问,过去几年随着数字化转型逐渐深入千行百业,越来越多的行业也正从“浅层次”数字化走向“深层次”数字化,因此未来如何进一步深化数智化转型,实现企业业务和商业模式的创新不仅是“大势所趋”,更是未来企业增长…

鼎捷软件:“数字化转型”喧嚣下,企业管理者们需要冷思考

随着时代的进步,势必会出现高唱着“转型”阔步向前的人和被大势裹挟着挪步的人。 作者丨周雅 这是希望之春,也是纷扰之冬。 全球疫情与百年未有之大变局交织,企业面临的不确定性与日俱增——来自技术演进、政策调整、需求变化、市场竞争等多个…

鼎捷软件易飞9.0ERP操作手册

亲手编制的鼎捷软件易飞9操作手册,共计:161页,全网最全。 技术支持QQ:395068518 承接易飞、易助ERP实施服务、二次开发服务、年(半年)维护服务! 百度网盘链接:https://pan.baidu.…

ChatGPT下的自动化工具Auto-GPT、AgentGPT、BabyAGI和GodMode

ChatGPT 对于一个大目标来说,他是不知道怎么一步一步的帮我们构建出来。有了Auto-GPT、AgentGPT、BabyAGI和GodMode 这些自动化工具,我们只需要输入一个大目标,这些自动化工具能够帮我们一步一步轻松实现。 1.Auto-GPT 网址:htt…

用chatgpt学习pythonwebUI自动化

一、使用背景 之前写过javaselenium的web UI自动化,使用的selenium是偏老版本的,另外python初学,还不会使用。但在java编写的经历中,有几个概念: 1、需要使用测试框架,对测试用例进行生命周期管理&#x…

图解国家网信办《生成式人工智能服务管理办法(征)》| 附下载

伴随ChatGPT兴起,生成式人工智能技术正作为一种创造性应用,牵引场景创新,推动新技术迭代升级和产业快速增长。由于生成式人工智能处于发展初期,技术成熟度、政策合规性等发展不足,导致其极易面临非法获取数据、个人隐私…

中期答辩干什么?

时光飞逝,又到了许多小伙伴们要进行中期答辩的时候了。对于初次接触中期答辩的小伙伴,一定都感觉到非常的陌生。当我们遇到问题的时候该怎么办呢?欸!对了,应用三个“W”原则: 1. 为什么? 2…

高质量毕业答辩PPT模板+PPT网站

文章目录 前言一、iSlide二、office plus三、优品PPT总结 前言 提示:这里可以添加本文要记录的大概内容: 又是一年毕业季,又到了快要答辩的时候,最近有一些小伙伴找我要毕业答辩PPT模板,本着这不能拒绝啊的心态&…

深圳大学毕业答辩PPT模板

模板介绍 一份高质量的PPT模板,可以让你在日常的工作中展示自我、脱颖而出、去赢得更多机会,今天小编分享一份精美的深圳大学毕业答辩PPT模板 PPT模板名称:深圳大学毕业答辩PPT模板,模板编号:P84774,大小1…

毕业论文答辩ppt怎么写?

一份好的毕业答辩PPT模板能给你毕业成绩加分不少,在制作ppt模板的过程中,需要注意些什么呢?ppt模板制作一定不要太花哨!语言尽量精炼,突出重点,避免长篇大论。下面ppt家园就来介绍一下毕业论文答辩ppt内容怎…