🎯 控制器基类
介绍
Controller
是控制器的基类,封装了控制器的基础接口和核心行为。
该类设计为抽象基类,需通过子类继承并实现关键方法(如 set_up()
和 get_information()
)后方可使用。
主要功能:
- 设置采集字段列表
- 获取控制器状态信息
- 发送控制命令
- 提供基础调试信息输出
类定义
class Controller:
控制器基类,不能直接实例化使用,必须由子类实现具体细节。
成员属性
属性名 | 类型 | 说明 |
---|---|---|
name |
str |
控制器名称,默认为 "controller" |
controller_type |
str |
控制器类型标识,默认为 "base_controller" |
is_set_up |
bool |
是否完成初始化,默认 False |
collect_info |
List[str] |
需要采集的字段列表,调用 set_collect_info 设置 |
函数
init(self)
初始化控制器基本属性。
- 参数:无
- 返回:无
set_collect_info(self, collect_info: List[str])
设置需要采集或控制的信息字段。
- 参数:
collect_info
(List[str]
):字段名称列表- 返回:无
get(self) -> Dict[str, Any]
根据 self.collect_info
获取对应字段状态。
若未设置 collect_info
,抛出异常。若采集字段对应数据为 None
,输出错误日志。
- 参数:无
- 返回:
Dict[str, Any]
:采集字段对应的状态字典。
move(self, move_data, is_delta=False)
发送控制指令,支持增量(is_delta=True
)或绝对控制(is_delta=False
)。
调用子类实现的 move_controller()
。如发生异常,输出警告日志。
- 参数:
move_data
:控制字段及对应数据is_delta
(bool
, 可选):是否为增量控制,默认False
- 返回:无
set_up(self)
初始化控制器(抽象方法,必须在子类中实现)。
- 参数:无
- 返回:无
- 异常:默认抛出
NotImplementedError
repr(self) -> str
控制器的字符串表示,便于调试输出。
- 参数:无
- 返回:
str
:描述控制器名称与类型的字符串。