首页 > 编程语言 >用Python完成THKA的MODBUS传输

用Python完成THKA的MODBUS传输

时间:2025-01-11 20:34:26浏览次数:3  
标签:THKA 字节 ser Python self MODBUS ._ data temperature

一、THKA温湿度监控
要对THKA温湿度进行监控,采用Modebus RTU通信协议

产品的接线图
在这里插入图片描述
基本通讯协议
在这里插入图片描述
在这里插入图片描述
二、部分代码
可以采用QT做个界面,也可以跟数据库进行关联,并在最后可以根据记录的曲线进行做图,上温度获取代码

#com打开
self._ser = serial.Serial(self.com, self.baud_rate, parity=serial.PARITY_NONE, bytesize=serial.EIGHTBITS,stopbits=serial.STOPBITS_ONE)

#温度获取
def get_temperature(self):
# 要发送的数据(基本固定)
data_to_send = [0x00, 0x04, 0x00, 0x00, 0x00, 0x01, 0x30, 0x1B]
# 将数据转换为字节串并发送
self._ser.write(bytes(data_to_send))
# 读取数据包, 分字节和功能读取, 数据位为2字节
address = self._ser.read(1) # 读取地址字节
function_code = self._ser.read(1) # 读取功能码字节
data_length = self._ser.read(1) # 读取数据字节数字节
# humidity = ser.read(2) # 读取湿度数据(2字节)
temperature = self._ser.read(2) # 读取温度数据(2字节)
crc = self._ser.read(2) # 读取CRC校验(2字节)
# 将字节串转换为整数
temperature_data = int.from_bytes(temperature, byteorder=‘big’)
# 温度计算
# 将温度数据转换为有符号的十进制数
if temperature_data & 0x8000: # 如果温度数据的最高位为1
# 温度数据的最高位为1,表示温度为负数, 则需要先取反再加1
temperature_decimal = -(0x10000 - temperature_data)
else:
# 温度数据的最高位为0,表示温度为正数, 直接赋值
temperature_decimal = temperature_data
# 计算实际温度值
temperature = temperature_decimal / 10.0 # 温度(摄氏度)
return temperature

标签:THKA,字节,ser,Python,self,MODBUS,._,data,temperature
From: https://blog.csdn.net/fmdpenny/article/details/144955403

相关文章

  • Python、R用深度学习神经网络组合预测优化能源消费总量时间序列预测及ARIMA、xgboost
    全文链接:https://tecdat.cn/?p=38726原文出处:拓端数据部落公众号分析师:QingxiaWang在能源领域,精准预测能源消费总量对制定合理能源战略至关重要。当前,能源消费预测分析主要运用单一模型(如灰色预测法、时间序列分析法等)和组合模型两种方式。然而,单一模型存在系统误差较高、预测......
  • Python深度学习GRU、LSTM 、BiLSTM-CNN神经网络空气质量指数AQI时间序列预测及机器学
    全文链接:https://tecdat.cn/?p=38742原文出处:拓端数据部落公众号分析师:ZhixiongWeng 人们每时每刻都离不开氧,并通过吸入空气而获得氧。一个成年人每天需要吸入空气达6500升以获得足够的氧气,因此,被污染了的空气对人体健康有直接的影响,空气品质对人的影响更是至关重要。每出现......
  • python毕设 新能源汽车租赁系统程序+论文
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、选题背景随着新能源汽车行业的蓬勃发展,汽车租赁业务也逐渐向新能源汽车领域倾斜。关于新能源汽车租赁系统的研究,现有研究主要集中在新能源汽车......
  • Python 常用 150 个英语单词
    一、交互式环境与print输出1、print:打印/输出2、coding:编码3、syntax:语法4、error:错误5、invalid:无效6、identifier:名称/标识符7、character:字符二、字符串的操作1、user:用户2、name:姓名/名称3、attribute:字段/属性4、value:值5、key:键三、重复/转换/替换/原始字符......
  • 我在python上的学习方向
    前言    随着python学习的深入,接触的东西越来越多,要学习的东西也越来越多。但精力有限,必须有所取舍。因此必须追溯过去、立足现在、畅想未来,给自己一个指引。追溯过去        学python前        上学时学的是vb,也仅仅是考过了计算机二级的水平。......
  • 使用Python脚本提取文件中的特定内容
    使用Python脚本提取文件中的特定内容是一个常见的任务,通常可以通过读取文件、处理内容并输出所需的部分来完成。以下是一个示例脚本,展示了如何从一个文本文件中提取特定行或特定模式的内容。假设我们有一个名为example.txt的文件,内容如下:Thisisthefirstline.Thislin......
  • 使用Python和Neo4j驱动程序来实现小规模数据的CSV导入
    要将CSV数据导入到Neo4j数据库中,你可以使用Neo4j提供的工具,比如neo4j-adminimport命令(适用于大规模数据导入),或者使用Python的Neo4j驱动程序通过Cypher查询逐行插入数据(适用于小规模数据导入)。下面我将介绍如何使用Python和Neo4j驱动程序来实现小规模数据的CSV导入。步骤1......
  • 代码点亮夜空:Python制作炫酷烟花与音效大秀
    谁不喜欢烟花呢?它们在夜空中绽放的瞬间,总是能让人瞬间忘记烦恼,沉浸在那片五光十色的绚烂中。而如果你是一个编程爱好者,那就更不能错过这场“数字烟花”的盛宴!通过Python的Pygame库,我们不仅可以让烟花在电脑屏幕上bigbang,还可以随心所欲地控制它们的颜色、爆炸方式,甚至播......
  • 风靡B站的《看漫画学Python》到底是什么来头?
    学习Python的小伙伴大部分应该都知道《看漫画学Python:有趣、有料、好玩、好用(全彩版)》这本书!毕竟,如果在B站搜索“漫画Python”等相关关键词,会看到整个页面都是和这本书相关的视频……这本《看漫画学Python》到底是什么来头,竟然引得B站各位UP主自发地疯传?《看漫画学Pyth......
  • 用Python制作可视化报表,没有比它更快的!
    众所周知,在数据展示中使用图表来分享自己的见解,是个非常常见的方法。这也是Tableau、PowerBI这类商业智能仪表盘持续流行的原因之一,这些工具为数据提供了精美的图形解释。当然了,这些工具也有着不少缺点,比如不够灵活,无法让你自己创建设计。当你对图表展示要求定制化时,编程也......