One SDK 概述
Coretech One 运动控制器的官方开发包,提供 C 语言原生接口和 .NET 托管接口两套编程界面,用于与 OneController 实时控制进程通信。
交付内容
CLibrary(C/C++ 原生接口)
| 文件 | 说明 |
|---|---|
OneSysC.h |
公共 C/C++ API 头文件,含所有 DLL* 函数声明、ONE_DRIVE_INFO 结构体、事件常量、状态码宏 |
ErrorCode.h |
错误码枚举(C 和 C++ 双语兼容),含 ErrorCategory / ErrorSeverity 辅助枚举 |
OneSysCore.lib |
导入库(x64),链接时使用 |
OneSysCore.dll |
原生运行时 DLL(x64),运行时应与可执行文件同目录或在 PATH 中 |
DotNet(.NET 托管接口)
| 文件 | 说明 |
|---|---|
Coretech.One.dll |
主 SDK 程序集,含 Controller 门面类及全部命令、参数、变量、任务、数据采集、固件更新 API |
Coretech.One.xml |
IntelliSense XML 文档文件,与 DLL 同一目录,IDE 自动加载 |
Coretech.Base.dll |
基础支撑库 |
Coretech.Resources.dll |
内嵌资源(错误消息字符串、异常帮助链接等) |
OneSysCore.dll |
原生 DLL(x64),.NET 通过 P/Invoke 调用,运行时必须存在 |
架构
客户应用程序
│
├── CLibrary ── P/Invoke ──► OneSysCore.dll ── UDP/FlatBuffers ──► One.exe :60049(实时控制)
│
└── DotNet ── P/Invoke ──► OneSysCore.dll ── UDP/FlatBuffers ──► One.exe :60049(实时控制)
└──► OneLauncher.exe :60050(固件更新)
- 实时指令通道:
One.exe监听 UDP 60049,通过 FlatBuffers 序列化与客户端交换数据 - 固件更新通道:
OneLauncher.exe监听 UDP 60050,提供 .onepkg 包的差分/完整更新能力
系统要求
- Windows x64(不支持 x86)
- .NET 10 SDK(仅 DotNet 接口需要)
- Visual C++ Redistributable(运行时依赖)
两种编程模型
扁平 C API(CLibrary)
直接调用 OneSysC.h 中声明的 DLL* 函数,错误以 ErrorCode 返回码表示。推荐以 DLLExecute 为统一主入口执行指令(运动、使能、标定、诊断等),状态与参数读取使用 DLLStatusGetItem / DLLGetParameter。
托管门面 API(DotNet)
使用 Coretech.One.Controller 单例门面,通过强类型对象模型(Commands、Variables、Tasks、Information 等)操作控制器,错误通过异常模型(OneException 及其子类)报告。
相关页面
| 页面 | 说明 |
|---|---|
| SDK_GettingStarted | 快速上手:第一个程序、构建示例 |
| SDK_Conventions | API 约定:错误码、句柄、缓冲区、线程模型 |
| SDK_Samples | 示例程序说明 |
| CSharp/index | .NET API 参考 |
| C/index | C/C++ API 函数索引 |