【Labview】通过串口通信从上位机读取和写入数据

最近博主需要通过Labview的上位机控制一个温控仪表,主要实现在上位机读取实时温度和设定的目标温度,以及通过上位机设定目标温度。这里将其中遇到的问题和心得分享给大家,博主自己也做一个记录。

由于温控仪表采用的485通讯,modbus RTU协议,因此这里相当于分享的是在Labview中如何通过modbus RTU协议,实现读数据和写数据。

1、读取过程温度与设定的目标温度。

这里先说一下,从GUI面板跳转到程序框图的快捷键是“Ctrl+E”。原始的Labview程序框图如下图:

这里重点要注意写入的时候,一定要定义写入值的模式,比如“十六进制显示”(Hex Display),而不是普通(Normal display)。

写入值Modbus RTU协议的数据结构是:设备地址(如01)+RTU功能码(如03,表示读取单一寄存器)+寄存器地址(如0002,可以在设备通讯说明上看到)+读取的字节数(如0002,是两个字节)+CRC校验码(可以用在线CRC校验码在线计算器得到)。CRC校验码在线计算器的网址如下:16进制(CRC16)(MODBUS RTU通讯)校验码在线计算器 (23bei.com),在空白处输入数据中除CRC校验码的部分,然后点击计算,会在CRC-16 Modbus中看到自动生成的CRC校验码,将其复制到Labview中即可。

然后强制转换的格式一定要是U16的,如果不缺定是哪种数据类型,可以多尝试几种。

温度显示的时候,也一定要注意设定显示数据的格式,比如DBL双浮点。

2、写入设定的温度。

这里和上述读取数据不同的地方在于,数据结构中modbus RTU功能码改为了06,即写入寄存器,因为是十六进制数据,因此要将十进制数据转化为十六进制的,这里为手动提前将十进制的温度转为十六进制后,直接复制到Labview中。

设备ID是01,功能码是06,寄存器地址是0002,写入值的十六进制是0078,CRC校验码是2828,所以整条modbus通讯数据的形式就是“0106 0002 0078 2828”。

例子框图程序中,设定目标温度为120℃,因此120的十六进制数是78,即0078;然后末尾的2828CRC校验码,为通过上面在线计算器求得的。这里一定要注意,输入数值的形式要选择Hex Display;

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

王学岗鸿蒙开发(北向)——————(十)子组件修改父组件的内容与 动画

子组件修改父组件的内容 使用类似Android的回调,父组件传递给子组件一个函数 import { MyComment } from ./component/MyComment import { MyContent } from ./component/MyComtent import { MyTitleComponent } from ./component/MyTitleComponentEntry Componen…

现代x86汇编-环境安装

今天端午节,独自在家,翻阅了张银奎老师编写的《现代x86汇编语言程序设计》一书,前言部分说明书中示例代码都是用微软visual C工具编写并使用微软宏汇编(著名的MASM)编译的,好久没有用微软vc了,假…

18.2 HTTP服务器-处理函数、响应404错误

1. 处理函数 处理来自客户端的请求,并回之以特定的响应,这是处理函数的主要任务。在处理函数中,我们通常会完成如下工作: 验证请求路径 http.Request.URL.Pathhttp.NotFound(...) 当请求没有对应的处理函数时,返回4…

文章解读与仿真程序复现思路——电力自动化设备EI\CSCD\北大核心《计及电-气园区综合能源系统多重不确定性的变置信区间优化调度 》

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源…

物联网概念

物联网 物联网简介物联网体系结构物联网体系结构定义物联网体系结构设计原则物联网体系结构四层物联网体系结构感知控制层数据传输层数据处理层应用决策层 物联网关键技术感知标识技术网络与通信技术云计算技术安全技术 已有物联网相关应用架构无线传感器网络的体系结构EPC/UID…

【讲解下Chrome DevTools,什么是Chrome DevTools?】

🎥博主:程序员不想YY啊 💫CSDN优质创作者,CSDN实力新星,CSDN博客专家 🤗点赞🎈收藏⭐再看💫养成习惯 ✨希望本文对您有所裨益,如有不足之处,欢迎在评论区提出…

精神建设:为什么要学C语言以及如何学习C语言

一,为什么要学习C语言 学习C语言有以下几个重要原因: 基础性:C语言是一种非常基础的编程语言,它接近计算机硬件层面,让你能够更深入地理解计算机系统如何工作,包括内存管理、指针操作等。这对于构建坚实的…

2024年6月最新开源电视影视TVAPP原生源码和后台管理平台源码及完整教程

本套源码为本人维护更新完善半年左右的还在使用开发的源码,与市面上倒卖的残次品不一样,没有可比性,向下兼容安卓4.0,向上兼容安卓13以上TV电视系统, 完全无闪退,弹窗报错,卡死、异常死循环残次…

[FreeRTOS 基础知识] 任务调度 与 链表

文章目录 任务并行的概念RTOS如何实现多任务调度? 任务并行的概念 在生活中,经常出现一心多用的情况。比如你需要一边吃饭一边手机回复信息,这里面就存在两个任务:任务一、吃饭。任务二、手机回复信息。 假如你无法一心多用&…

数据仓库核心:事实表深度解析与设计指南

文章目录 1. 引言1.1基本概念1.2 事实表定义 2. 设计原则2.1 原则一:全面覆盖业务相关事实2.2 原则二:精选与业务过程紧密相关的事实2.3 原则三:拆分不可加事实为可加度量2.4 原则四:明确声明事实表的粒度2.5 原则五:避…

Harmony中的HAP、HAR、HSP区别

Harmony中的HAP、HAR、HSP区别 想要更加合理的开发一个企业级别的Harmony应用,那么就不得不提其中的HAP、HAR、HSP了。 前言 对于普通的用户来说,可能一个普通的应用就等于一个安装文件如安卓下的APK。但是对于Harmony应用开发工程师来讲,…

单田芳mp3百度网盘,单田芳评书下载百度云百度网盘

单老的评书还注重情感的表达。他善于运用声音、语气、语调等手段,将人物的情感刻画得淋漓尽致。无论是喜怒哀乐,他都能准确地把握人物的情感变化,并通过自己的表演将其传递给听众。这种情感的传递,使得听众能够更加深入地理解故事…

构建大语言模型友好型网站

以大语言模型为代表的AI 技术迅速发展,将会影响原有信息网络的方式。其中一个明显的趋势是通过chatGPT 对话代替搜索引擎和浏览器来获取信息。 互联网时代,主要是通过网站(website)提供信息。网站主要为人类阅读的方式构建的。主要…

Vitis HLS 学习笔记--聚合与解聚-AXI主接口

目录 1. 简介 2. 用法及语法 3. 详细解读 4. 总结 1. 简介 在使用 Vitis HLS 工具进行硬件设计时,如果你在接口上使用了结构体,工具会自动把结构体里的所有元素组合成一个整体。就像把一堆零件组装成一个玩具一样。这样做的好处是,数据可…

【VUE3 element时间选择器默认选择七天】

VUE3 element时间选择器默认选择七天 <el-date-pickerv-model"form.timeRange"type"datetimerange"start-placeholder"开始时间"end-placeholder"结束时间"format"YYYY-MM-DD HH:mm:ss"date-format"YYYY/MM/DD dd…

遗传算法笔记:基本工作流程

1 介绍 遗传算法有5个主要任务&#xff0c;直到找到最终的解决方案 2 举例 2.1 问题描述 比如我们有 5 个变量和约束&#xff0c;其中 X1、X2、X3、X4 和 X5 是非负整数且小于 10&#xff08;0、1、2、4、5、6、7、8、9&#xff09;我们希望找到 X1、X2、X3、X4 和 X5 的最…

背包问题—动态规划

01背包问题&#xff1a;没有物品&#xff08;元素&#xff09;只能选择1次 【模板】01背包_牛客题霸_牛客网 (nowcoder.com) #include <array> #include <cstring> #include <iostream> #include<vector> using namespace std; int n,V; int dp[1001…

OJ刷题——2086.AI=?、2087.剪花布条、KPM算法

2086.AI&#xff1f; 题目描述 Problem - 2086 运行代码 #include <iostream> #include <cstdio> using namespace std; const int N 3005; int main() {int n;double Ao, An;double num[N];while (cin>>n) {cin >> Ao>>An;for (int i 1; i…

MATLAB基础应用精讲-【数模应用】二元Logit分析

目录 算法原理 数学模型 极大似然法 Newton牛顿迭代法 logit回归分析步骤 一、二元logit分析 1.基本说明 2.数据处理 3.SPSSAU上传数据 4.分析前提示 5.SPSSAU分析 6.其它说明 二、多分类logit分析 1.基本说明 2.数据要求与处理 3.SPSSAU上传数据 4.SPSSAU分析…

C语言:结构体数组

结构体数组 介绍定义结构体定义结构体数组初始化结构体数组访问和修改结构体数组的元素遍历结构体数组 示例高级用法动态分配结构体数组使用 malloc 动态分配使用 calloc 动态分配 结构体数组作为函数参数结构体数组与指针多维结构体数组使用 typedef 简化结构体定义结构体数组…