RoboDK的C# API是一个名为RoboDK.cs的源文件,其中包含RoboDK类(类似于Python中的Robolink 类)、RoboDK.Item类(与Python的Robolink.Item类API相似),以及其他机器人工具,例如用于位姿变换矩阵运算的Matrix类(RoboDK.Mat)。
C#是由微软开发的一种编程语言,可以用于构建和运行在.NET Framework之上的各种应用程序。C#是简单、强大、类型安全、面向对象的高级程序设计语言。本文档的主要部分介绍了将 RoboDK API 与 C# 等广泛使用的编程语言一起用于机器人编程的优点。
C#版RoboDK API附带了一个示例项目(包含完整源代码),如下图所示。此外,你也可通过NuGet包将其集成到任意.NET项目中。

选择 "加载文件",打开 RoboDK 工作站或 RoboDK 支持的任何其他文件。如果加载了机器人,ROBOT 变量将相应更新(与使用"选择机器人 "相同)。
Video:以下视频展示了使用RoboDK API的C#示例项目https://www.youtube.com/watch?v=3I6OK1Kd2Eo。
Note:加载和运行项目示例时需要Microsoft Visual Studio软件。你可以到Visual Studio Community (Express)下载它的免费版本。
Tip:本 C# 示例的最新版本可在此处获取。
当机器人使用此类命令时(如MoveJ、MoveL或setDO),系统将默认在C#仿真下运行该程序。当C#示例项目启动时,系统也会默认设置C#为仿真模式。

这意味着机器人运动将在RoboDK中进行仿真。例如,我们可以通过右侧按钮(+Tx、-Tx等)以10毫米为步长移动机器人,也可以选择"运行测试程序"让机器人在当前位置周围执行六边形轨迹运动。
设置一些断点来调试应用程序并测试该机器人的目标范围。机器人的目标范围可以定义为关节坐标或Mat变量(4x4姿态矩阵),通过使用XYZWPR形式可以帮助排除一些程序问题。更多相关信息请查阅参考坐标系。

此外,也可以将运行模式切换为离线编程模式或在线编程在线编程模式(在机器人上运行),具体内容如下一节所示。
可以使用模拟机器人所用相同 C# 代码离线生成C# 程序(离线编程)。请按照以下步骤测试该功能:
1.在运行模式部分选择离线编程
2.选择 "运行测试程序 "或任何其他动作组合
3.选择 "生成程序",获取供应商专用的机器人程序
基于这种操作,可以快速通过执行一个特定于机器人控制器的机器人程序获得相应结果,这个操作可以代替仿真程序。

Tip:右键单击机器人,选择 "选择后处理程序",为离线编程指定不同的后处理器(如后处理器部分所示)。
Note:当离线编程模式激活时,机器人将不会移动,因为这时将运行模式更改为 RUNMODE_MAKE_ROBOTPROG,如 Python离线编程部分所示。
C# 程序可直接在机器人上执行,使用与仿真相同的 C# 代码。在线编程允许使用机器人驱动器在特定机器人控制器上运行通用程序。请按照以下步骤使用 C# 示例项目测试该功能:
1.在运行模式部分选择在机器人上运行
2.选择能让机器人移动的其他命令
动作将在真实机器人上运行,模拟器将与机器人同步动作。
Important: 使用机器人驱动器(右键单击机器人,然后选择连接到机器人...)时,需要在电脑和机器人之间建立连接。更多信息,请参阅 "机器人驱动器”。

Note: RDK/Robolink 连接的运行模式改为 RUNMODE_RUN_ROBOT,以便在机器人上执行动作。例如
RDK = Robolink();
RDK.setRunMode(RUNMODE_RUN_ROBOT);
Tip:C:/RoboDK/Library/Macros/ 文件夹中的SampleOnlineProgramming.py宏提供了一个在 RoboDK 图形用户界面外进行在线编程的 Python 示例。
Note:有关通过 API 使用机器人驱动器的更多信息,请参阅 "机器人驱动器 "。