跳转至

Controller

Controller 是 .NET SDK 的主入口类,提供对控制器所有功能的统一访问。Controller.Connect() 建立与控制器的 UDP 连接(默认 127.0.0.1:60049),返回进程级单例实例。

方法

Connect

public static Controller Connect()

与控制器建立 UDP 连接并返回 Controller 实例。若已有活动连接,先自动断开。内部完成以下操作:调用 OneSysConnect、检查系统初始化状态、必要时调用 InitializeSystem、启动诊断轮询器。

返回值:新建立的 Controller 实例。

异常:若连接失败或初始化失败,抛出 OneException


Disconnect

public static void Disconnect()

断开当前连接,停止所有轮询线程并释放资源。finally 块中推荐调用此方法,确保运动指令安全停止。


Reset

public void Reset()

请求控制器复位。复位为控制器进程级重启:控制器安全下电、应答后退出,由 OneLauncher 守护进程重新拉起。本方法在收到应答后即返回,连接随即断开;之后请重新 Connect(连接流程会自动执行系统初始化)完成恢复。


属性

属性 类型 说明
ConnectedController static Controller 当前活动连接实例,若无连接则 null
IsRunning static bool 控制器系统是否已初始化并运行
Commands TaskSelectionCommands 任务选择命令,提供 [TaskId] 索引器
Variables ControllerVariableContainer 全局变量和 VirtualIO 访问入口
Tasks TasksCollection 任务集合,提供 [TaskId] 索引器
Information ControllerInformation 控制器信息(轴列表、型号等)

示例

// 连接
var controller = Controller.Connect();

// 查询系统是否运行
Console.WriteLine($"System running: {Controller.IsRunning}");

// 获取轴信息
var axes = controller.Information.Axes;

// 执行运动
controller.Commands.Motion.MoveAbs("X", 10.0, 10.0);

// 断开
Controller.Disconnect();

相关页面