src.model.data package

Subpackages

Submodules

src.model.data.data_handler module

数据项处理模块。

本模块提供了数据项的获取和设置功能,用于管理 DLT645 协议中各类数据项的值。

src.model.data.data_handler.get_data_item(di)[源代码]

根据数据标识 (DI) 获取数据项。

参数:

di (int) -- 数据标识,4字节整数。

返回:

对应的数据项,可能是单个 DataItem 或 DataItem 列表。 如果未找到则返回 None。

返回类型:

Optional[DataItem | List[DataItem]]

src.model.data.data_handler.set_data_item(di, data)[源代码]

设置指定数据标识 (DI) 的数据项值。

根据 DI 的类型自动处理不同的数据格式: - 需量数据 (Demand): 验证值后直接设置 - 事件记录 (0x03xxxxxx): 批量设置事件记录值 - 参变量时段表 (0x04xxxxxx): 批量设置时段表值 - 其他数据: 验证后直接设置

参数:
  • di (int) -- 数据标识,4字节整数。

  • data (Union[int, float, str, Demand, list, tuple]) -- 要设置的数据值,类型取决于数据项类型。

返回:

设置成功返回 True,失败返回 False。

返回类型:

bool

src.model.data.data_handler.is_value_valid(data_format, value)[源代码]

检查值是否符合指定的数据格式。

根据数据格式字符串验证值的有效范围: - XXXXXX.XX: 范围 [-799999.99, 799999.99] - XXXX.XX: 范围 [-7999.99, 7999.99] - XXX.XXX: 范围 [-799.999, 799.999] - XX.XXXX: 范围 [-79.9999, 79.9999] - XXX.X: 范围 [-799.9, 799.9] - X.XXX: 范围 [-0.999, 0.999] - 其他格式: 检查字符串长度或递归验证元组

参数:
  • data_format (str) -- 数据格式字符串。

  • value (Union[int, float, str, tuple]) -- 待验证的值。

返回:

值有效返回 True,无效返回 False。

返回类型:

bool

Module contents