docs: 补充代码注释,增强代码可读性
This commit is contained in:
@@ -5,6 +5,7 @@ from line_laser_modbus.config import AppConfig, PollingConfig, SerialConfig
|
||||
from line_laser_modbus.models import DeviceSnapshot, DeviceStatus, ModeCommand, Pose6D
|
||||
from line_laser_modbus.runner import PollingRunner
|
||||
|
||||
# 公开库调用时最常用的类型和入口。
|
||||
__all__ = [
|
||||
"AppConfig",
|
||||
"DeviceSnapshot",
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
"""来自 docs/proto.md 的协议常量"""
|
||||
|
||||
# 固定从站地址和功能码。
|
||||
SLAVE_ID = 0x08
|
||||
|
||||
FUNC_READ_HOLDING_REGISTERS = 0x03
|
||||
FUNC_WRITE_MULTIPLE_REGISTERS = 0x10
|
||||
|
||||
# 保持寄存器绝对地址。
|
||||
ADDR_MODE_COMMAND = 0xD000
|
||||
ADDR_DEVICE_STATUS = 0xD001
|
||||
ADDR_CURRENT_POSE = 0xD00A
|
||||
@@ -13,11 +15,13 @@ ADDR_CORRECTION = 0xD022
|
||||
ADDR_CALIBRATION_RESERVED_START = 0xD02E
|
||||
ADDR_CALIBRATION_RESERVED_END = 0xD04D
|
||||
|
||||
# 协议数据宽度和位姿字段顺序。
|
||||
REGISTER_COUNT_WORD = 1
|
||||
REGISTER_COUNT_POSE = 12
|
||||
REGISTER_COUNT_CALIBRATION_RESERVED = 32
|
||||
AXIS_NAMES = ("x", "y", "z", "a", "b", "c")
|
||||
|
||||
# 默认串口通信参数。
|
||||
DEFAULT_BAUDRATE = 115200
|
||||
DEFAULT_BYTESIZE = 8
|
||||
DEFAULT_PARITY = "N"
|
||||
|
||||
@@ -107,8 +107,10 @@ def can_switch_mode(
|
||||
if current_mode is ModeCommand.EMERGENCY_STOP:
|
||||
return False
|
||||
if current_status is DeviceStatus.CALIBRATION_DONE:
|
||||
# 标定完成后由控制器内部回待机,不直接进入运行模式。
|
||||
return False
|
||||
if current_status is DeviceStatus.TEACHING_DONE:
|
||||
# 示教完成后可进入依赖标准轨迹的运行模式。
|
||||
return target_mode in {
|
||||
ModeCommand.ONLINE_TRACKING,
|
||||
ModeCommand.TRAJECTORY_REPLAY,
|
||||
|
||||
Reference in New Issue
Block a user