src.transport.server package

Submodules

src.transport.server.log module

src.transport.server.rtu_server module

RTU 服务器模块。

本模块实现了 DLT645 协议的 RTU(串口)服务器功能。

class src.transport.server.rtu_server.RtuServer(port, data_bits=8, stop_bits=1, baud_rate=9600, parity='N', timeout=5.0, service=None)[源代码]

基类:object

RTU 服务器类,用于与 DLT645 客户端进行串口通信。

该类实现了 RTU(Remote Terminal Unit)服务器功能, 支持与 DLT645 协议客户端进行串口通信。

变量:
  • port -- 串口名称。

  • data_bits -- 数据位。

  • stop_bits -- 停止位。

  • baud_rate -- 波特率。

  • parity -- 校验位。

  • timeout -- 超时时间(秒)。

  • service -- 服务实例,用于处理业务逻辑。

  • conn -- 串口连接对象。

初始化 RTU 服务器。

参数:
  • port (str) -- 串口端口名(如 '/dev/ttyUSB0')。

  • data_bits (int) -- 数据位,默认 8。

  • stop_bits (int) -- 停止位,默认 1。

  • baud_rate (int) -- 波特率,默认 9600。

  • parity (str) -- 校验位,默认无校验。

  • timeout (float) -- 超时时间(秒),默认 5.0。

  • service (Any) -- 服务实例,用于处理业务逻辑。

start()[源代码]

启动RTU服务器(非阻塞,在后台线程中运行)

返回类型:

bool

stop()[源代码]

停止RTU服务器

返回类型:

bool

is_running()[源代码]

检查服务器是否正在运行

返回类型:

bool

handle_connection(conn)[源代码]

处理单个串口连接

返回类型:

None

Args:

conn: 串口连接对象,必须是 serial.Serial 实例

src.transport.server.tcp_server module

TCP 服务器模块。

本模块实现了 DLT645 协议的 TCP 服务器功能。

class src.transport.server.tcp_server.TcpServer(ip, port, timeout, service)[源代码]

基类:object

TCP 服务器类,用于与 DLT645 客户端进行 TCP 通信。

变量:
  • ip -- 服务器 IP 地址。

  • port -- 服务器端口号。

  • timeout -- 连接超时时间(秒)。

  • ln -- 监听套接字。

  • service -- 服务实例,用于处理业务逻辑。

初始化 TCP 服务器。

参数:
  • ip (str) -- 服务器 IP 地址(如 '0.0.0.0')。

  • port (int) -- 服务器端口号。

  • timeout (float) -- 连接超时时间(秒)。

  • service (Any) -- 服务实例,用于处理业务逻辑。

start()[源代码]

启动TCP服务器(非阻塞,在后台线程中运行)

stop()[源代码]

停止TCP服务器

is_running()[源代码]

检查服务器是否正在运行

handle_connection(conn)[源代码]

Module contents