You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Python串口读取UHF天线数据的程序改为以太网端口读取?

把串口UHF标签读取程序改成以太网版本的方法

首先你要把原来依赖的串口库换成Python标准库的socket,以太网通信靠它实现。下面是具体的修改步骤:

1. 替换导入的库

把原来的import serial, binascii改成import socket, time,串口相关的库就不需要了。

2. 初始化以太网连接(以TCP为例,多数UHF设备用TCP Server模式)

原来的串口初始化代码,替换成socket连接逻辑。你需要提前从设备手册里查到UHF天线的IP地址和端口号(常见的比如5000、9000):

# 替换成你的UHF设备实际参数
UHF_IP = "192.168.1.100"
UHF_PORT = 5000

# 创建TCP socket并连接设备
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect((UHF_IP, UHF_PORT))
# 设置超时,和原串口的timeout逻辑一致
sock.settimeout(1)

3. 修改循环读取逻辑

原来的ser.read()要换成socket.recv(),两者都返回字节流,所以数据处理逻辑可以直接复用:

while True:
    try:
        # 读取25字节,和原串口的read(25)对应
        data = sock.recv(25)
        if data:  # 收到非空数据
            print(f"tag: {data}")
        else:
            print("no hay tag")
    except socket.timeout:
        # 超时对应原串口没读到数据的情况
        print("no hay tag")
    time.sleep(1)

4. 增加连接关闭的处理(可选但建议)

如果需要正常退出程序,记得关闭socket连接:

# 捕获Ctrl+C信号来优雅关闭
try:
    while True:
        # 上面的读取逻辑
except KeyboardInterrupt:
    sock.close()
    print("连接已关闭")

完整修改后的代码示例

import socket
import time

# 配置UHF设备的网络参数
UHF_IP = "192.168.1.100"  # 替换为你的设备实际IP
UHF_PORT = 5000            # 替换为设备的实际端口号

# 初始化TCP连接
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect((UHF_IP, UHF_PORT))
sock.settimeout(1)

try:
    while True:
        try:
            # 读取25字节数据,和原串口逻辑保持一致
            data = sock.recv(25)
            if data:
                print(f"tag: {data}")
            else:
                print("no hay tag")
        except socket.timeout:
            print("no hay tag")
        time.sleep(1)
except KeyboardInterrupt:
    print("\n正在关闭连接...")
    sock.close()
    print("连接已关闭")

注意事项

  • 先确认你的UHF天线支持以太网通信,且已配置好和电脑同网段的IP地址
  • 设备的端口号必须和手册标注一致,不同厂商的UHF设备端口可能不同
  • 如果设备用UDP通信,只需把socket.SOCK_STREAM改成socket.SOCK_DGRAM,并改用recvfrom接收数据,但多数UHF读写器默认用TCP
  • 原代码里的ser.flushInput()在socket中不需要,网络缓冲区的读取逻辑和串口不同,无需手动清空

内容的提问来源于stack exchange,提问作者cesarkmp

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 19:48:23