插件

RoboDK插件是针对RoboDK软件的功能扩展模块,用户可以为特定操作或场景自定义工具。第三方开发者可轻松创建插件,为RoboDK软件增添新功能。

RoboDK支持自定义添加RoboDK插件,以便于执行某些特定的任务。

Note:访问插件市场,浏览需要的插件。任何人都可以创建 RoboDK 插件,包括RoboDK和第三方公司或开发人员。

Add ins - 图片 1

插件是能够扩展RoboDK功能的软件模块,通过提供额外工具、特性或功能来实现。

RoboDK的插件有:

1.用户自定义脚本,用于自动化重复性任务。

2.附加仿真功能或库(作为库的插件)。

3.可与其他软件工具或硬件设备集成的应用程序。

插件通过RoboDK API进行开发,该API提供了一系列可用于与RoboDK软件交互的函数和类。此API支持多种编程语言,包括Python、C++、C#和MATLAB。

插件一旦创建完成,便可以加载到RoboDK中,用户既可通过主界面访问,也能通过自定义菜单或按钮调用。这使得用户能够根据特定需求和工作流程定制RoboDK,并实现复杂任务或流程的自动化处理。

Add-in Manager

Add-in Manager是RoboDK中的一款工具,用户可通过它安装、管理和配置RoboDK插件。实际上,Add-in Manager本身就是一个RoboDK插件!

Note:Add-in Manager已取代所谓的App Loader插件,因其不仅涵盖后者的全部功能,还支持通过用户界面编辑应用程序。

Add ins - 图片 2

Add-in Manager通过提供完整的用户界面简化了安装、更新和导出插件的流程,用户可在此界面浏览可用插件、启用或禁用插件、管理依赖项、查看每个插件的详细信息,并将其打包以供部署。

要使用Add-in Manager,必须首先在 RoboDK 设置中启用Add-in Manager插件:

1.选择工具➔插件 (Shift+I)

2.如果Add-in Manager插件未启用,需要双击加载红色圆点启用该插件。

3.选择工具➔ Add-in Manager (Shift+A)

Add ins - 图片 3

用户界面

Add-in Manager界面划分了五个区域:

Add ins - 图片 4

1.左侧窗格按类型(应用程序、后处理器、机器人驱动器等)对插件进行分类。通过分类查找让你更容易找到需要的插件。

2.上方的工具栏用于控制插件列表的显示模式、排序和按名称或描述搜索插件。它还包含一个按钮,用于更新已安装插件的列表或立即禁用所有插件。

Add ins - 图片 5

3.中间是主区域,以列表或表格(详细信息视图)的形式显示插件。

Add ins - 图片 6

4.左侧的说明区域,包含所选插件的类型、当前状态和位置、说明和文档链接等信息。

5.下方的面板包含用于执行辅助功能的按钮:打开Add-in Manager设置、运行插件创建器、打开 RoboDK 插件市场、安装新插件或关闭窗口。

管理插件

可以通过右键单击列表或表格中选定的插件来打开菜单。在列表模式下,也可以点击 "Actions"按钮打开菜单。

Add ins - 图片 7

Enable/Disable:启用或禁用插件。该菜单项的类似功能是列表模式下的启用/禁用按钮或表格模式下的双击。

Reload:强制插件管理器重新读取该插件的所有配置文件(清单)。当插件文件在磁盘上被修改时,此功能在极少数情况下非常有用。

Terminate sub processes:终止属于该加载项的所有正在运行的应用程序。此功能仅适用于类型为App的加载项。

Edit...:将插件资产和清单载入插件创建器,以创建插件的衍生版本。

Install requirements...:应用程序类型的插件安装附加模块。如果你在安装插件时拒绝安装所需的模块,可以通过此菜单项启动自动安装过程。

Create package...:打开插件创建向导,从现有的遗留应用程序中创建 RoboDK 包(.rdkp 文件)。

Uninstall:禁用该插件并将其从磁盘中彻底删除。

安装新插件

安装新插件,可以通过点击面板右下方的"Install...",然后在打开的文件夹中搜索.rdkp 文件。也可以将文件从文件夹拖放到Add-in Manager窗口完成加载文件。

Add ins - 图片 8

在安装插件之前,Add-in Manager会询问你所需的插件位置。

Add ins - 图片 9

Current user storage 将插件安装到系统上运行的当前用户的文件夹中。如果插件只能供一个用户使用,或者当前用户的访问权限不足以将插件安装到 RoboDK 文件夹中,则此选项非常有用。

RoboDK global storage会将插件安装到主程序文件夹中。这种情况下,该插件将对计算机上的所有用户可用。如果当前用户没有对RoboDK文件夹的写入权限,尝试安装到全局存储可能会失败。

插件接口

RoboDK 插件接口是一个应用程序接口,允许用户使用 C++ 编程语言和 Qt 库为 RoboDK 创建自定义插件。

Note:创建新插件的技术文档可从以下链接获取: https://robodk.com/doc/en/PlugIns/index.html。

插件接口提供了一系列C++类和函数,可用于与RoboDK交互,包括创建自定义菜单、工具栏和对话框的能力,并通过添加新工具、功能或特性来扩展RoboDK的功能。

开发者可利用插件接口创建与其他软件工具或硬件设备集成的插件,或在RoboDK内部实现复杂任务与流程的自动化。插件可编译为动态链接库(DLL),在运行时加载至RoboDK,从而实现便捷的安装与分发。

总体而言,C++版RoboDK插件接口为开发者提供了强大而灵活的方式,能够根据特定需求和工作流程来扩展和定制RoboDK的功能。

Apps

RoboDK应用程序(Apps)是一种插件类型,旨在提供特定功能或工作流程,并能轻松定制和共享,从而为特定用途定制RoboDK用户界面。

例如,一个RoboDK应用程序可能用于生成特定类型的机器人程序,或与特定硬件/软件进行交互。

RoboDK应用程序通常是基于RoboDK Python API开发的Python脚本,并打包为独立的.rdkp文件。这类插件可便捷地在不同计算机间共享。安装后,用户可通过主工具栏、自定义菜单或界面中的按钮访问这些应用程序。

任何开发者均可利用RoboDK API开发应用程序,并将其分发给其他RoboDK用户。这一机制既方便用户发现和安装新应用,也帮助开发者通过定制工具和工作流程触达更广泛的受众。

创建Apps

应用程序(Apps)是为特定应用场景定制RoboDK用户界面的最便捷方式。您只需通过一个或多个Python脚本即可轻松创建专属应用,从而自定义工具栏并实现任务自动化。

Note:请阅读创建插件文档,了解有关如何使用此工具创建插件的更多详情。

创建步骤:

1.获取模板:从GitHub上的RoboDK插件库下载应用程序模板或示例,在本地创建新文件夹。

2.配置脚本:修改/添加/删除需作为应用功能的Python脚本。每个脚本将自动识别为独立功能项并显示在工具栏中(以下划线"_"开头的脚本文件除外)。

3.添加图标(可选项):可添加与脚本同名的图标文件(支持PNG/SVG/JPG格式),也可后续通过界面补充。

从此时开始,你可以在Add-in Manager底部选择Create Add-in,选择你创建的插件文件夹,然后按照Tip操作,就可以使用用户界面了。

Add ins - 图片 10

或者,你也可以通过重命名文件,和自定义 AppConfig.ini 文件来手动配置应用程序

4.放置应用:将应用文件夹放入:C:/RoboDK/Apps/

5.打开Add-in Manager,在左侧栏点击Legacy Apps

6.刷新:如果没有看到你的应用程序,请单击 "刷新"。

7.激活应用:双击你的应用程序以启用它,并在 RoboDK 用户界面中看到它。这将在你的应用程序文件夹中自动创建一个AppConfig.ini 文件。

8.定制界面集成:修改AppConfig.ini 文件,自定义应用程序与 RoboDK UI 的集成方式。每个脚本都会被自动检测为一个动作(除非以下划线开头)。默认情况下,所有操作都被置于RoboDK菜单和工具栏的新条目中。你可以自定义是否要在菜单、工具栏中查看每个动作/脚本,或将其作为一个或多个项目的上下文菜单选项。

9.实时预览:右键点击应用,选择​Reload​,即刻查看界面变更。

10.打包分发:最后,你可以选择 "创建软件包... "并按照说明将应用程序打包为RDKP 插件。你可以选择编译应用程序的代码。

你可以用 RoboDK 打开此 RDKP 文件,在任何装有 RoboDK 的计算机上安装此应用程序/插件。

Add ins - 图片 11

Note:更多技术细节,参考GitHub的插件界面的应用程序RoboDK API 文档的应用程序

Tip:如果你是一家销售产品或服务的公司,并且你希望在RoboDK市场中列出你的插件,你可以通过联系我们向RoboDK提交你的插件。共享源代码并非必要条件。只需提供一个自述文件和清单文件即可。这将为你的公司、产品和服务提供知名度。请查看提交你的插件了解更多信息。

Add-in Creator

Add-in Creator工具可帮助你轻松创建及修改RoboDK的插件包。该工具集成于Add-in Manager中。

打开方式:通过菜单栏选择工具-Add-in Manager,然后单击Add-in Manager底部的Create Add-in按钮,即可打开Add-in Creator。

Add ins - 图片 12

打开插件创建向导后,你可以选择以下选项:

Create new add-in from scratch这将生成全新的RoboDK插件包(.RDKP文件)。

Create new add-in from folder or legacy application指定插件文件所在路径进行转换。勾选Do not create a package选项可直接编辑文件夹内的插件文件,无需打包。

Modify existing add-in打开已有的RoboDK插件包进行编辑并生成新版本。

创建Add-in Creator

你可通过填写基础信息(如类型、名称、作者信息等)快速创建新插件。

Add ins - 图片 13

Add-in Creator工具窗口中,​加粗字段为必填项,共5项:

1.Type插件类型,如应用程序(App)、机器人驱动器(Robot Driver)、语言包等。

2.Name插件名称。

3.Unique Identifier属于此特定插件的唯一标识符。该字段旁的复选框允许你激活编辑模式并设置任意标识符,标识符可包含拉丁字母、数字和其他字符,如减号、点、下划线。该插件的唯一ID。勾选右侧复选框可手动编辑,允许使用拉丁字母、数字及连字符(-)、点(.)、下划线(_)。

Note推荐采用 ​domain.company.type.name​ 格式(如com.example.robot.welder)。虽支持其他形式,但建议遵循此规范。

4.Versions需符合语义化版本格式(主版本号.次版本号.修订号,如1.0.0)。

5.Revision插件修改次数,从1开始递增。

其余为选填项,用于完善插件描述:

6.Author个人姓名或公司/团队名称(多人协作时)。

7.Company公司名称。

8.Language插件使用的语言。列出了IETF BCP 47 标准中的所有语言。

9.Content Status开发阶段,例如正式版(Final)、内测版(Internal Testing)、测试版(Beta)等。

10.Description插件简介。

11.Modified by当有人修改了另一位作者的插件,并希望作为修改作者被提及时,可以使用此字段。

12.Created插件第一个版本的创建日期(自动生成的)。

13.Modified插件修改日期(自动生成的)。

14.Email用于销售、支持或反馈的电子邮件地址。

15.Website贵公司(插件开发商)的网站。

16.Documentation Link指向插件文档的链接。

17.Repository Link对于开源插件,指向插件所在的 GitHub 代码库或其他公共代码库的链接。

18.Keywords关键字(标签)列表,用于简化在插件市场中搜索插件的过程。

Add-in Assets

插件必须包含一个或多个资源文件(Assets),例如脚本和图标,这些资源决定了插件的功能和行为。

Add ins - 图片 14

​Add-in Assets页面分为三个功能区​:

1.包图标选择区​:设置插件的显示图标。

2.​文件树区​:管理插件包含的所有文件(如脚本、配置文件等)。

3.文件内容预览区​:查看选中文件的内容。

本页按钮和复选框的用途:

TargetPath目标路径按钮会打开当前图标文件的属性窗口,并允许你设置目标属性(请参阅软件包内部的相应章节)。

Change icon…更改图标按钮允许你用新图标替换当前软件包图标。

Remove Icon 移除图标按钮会删除当前软件包的图标,并设置与正在创建的软件包类型相对应的默认图标。

New Folder新建文件夹按钮可在选定的文件树分支中创建一个新的子文件夹。

Add Asset....新建文件夹按钮可将新文件添加到文件树的选定分支中。

Remove删除按钮可从文件树中删除所选项目,锁定的项目除外。

Make Python Package 生成Python复选框可将 __init__.py 文件添加到项目中,这样 Python 解释器就能将项目文件作为外部可加载模块使用。

Note此选项仅在创建App类型插件时显示。

Python脚本可标记为后续编译成.pyc文件(优化执行速度),编译过程将在向导的下一页显示。

Add ins - 图片 15

Target Path:目标路径字段允许你为每个文件设置目标属性。你可以手动输入所需的路径和变量名,也可以在单击目标上的齿轮按钮时调用属性窗口:

Add ins - 图片 16

文件属性对话框允许你设置目标属性值,并提供可用变量的便捷列表。此外,还可以定义部署文件的目标平台参数(操作系统类型和版本、CPU 型号)。

Add ins - 图片 17

Python Compilation

当你在添加插件资源时选择了至少一个Python脚本,将会打开Python Compilation页面。

 

Add ins - 图片 18

编译将由所有可用的Python解释器执行。可用及已使用的解释器列表可在Add-in Manager设置窗口中编辑。编译过程本身无需用户干预,页面会显示详细的编译日志以便捕捉潜在问题。

Important:通过编译脚本可以轻松混淆应用程序的源代码。但若需妥善保护知识产权,建议探索使用Cython等其他编译方式,将Python脚本转换为pyd文件或可执行文件。此外,也可采用自定义可执行文件作为操作项。

App Configuration

App Configuration (应用程序配置)页面允许用户自定义操作或脚本如何从RoboDK用户界面(菜单和工具栏)链接。如果用户正在创建应用程序类型的插件,你将看到应用程序配置窗口。”

Add ins - 图片 19

本页参数用于定义AppConfig.ini文件的内容。本页列出了所有可能的键值及其对应取值。每个应用程序在RoboDK中都有专属菜单和工具栏,这些菜单项与工具栏按钮在应用程序术语中统称为" Actions "。你可自定义动作的显示条件、菜单排序规则,并为动作分配快捷键。

基本参数集包括:

Menu Name:菜单名称,RoboDK 主菜单条目名称。

Visible:可见,取消选中该复选框,可防止菜单显示在 RoboDK 的主菜单中。

Parent Menu:父菜单,选择将为其创建App 子菜单的主菜单项,或选择主菜单创建新的主菜单项。

Priority:优先级,设置优先级,决定本应用程序菜单与其他应用程序菜单的显示顺序(低者优先)。

Toolbar Area:工具栏区域,应用程序工具栏在 RoboDK 主窗口上的位置(侧面)。

Toolbar Scale:工具栏比例,工具栏图标与当前 RoboDK 工具栏图标大小的比例。

Commands:命令激活插件时将执行的 RoboDK API 命令。

对于与AppConfig.ini文件同目录下的每个Python脚本,系统都会创建一个对应的操作项。若该脚本属于辅助性质,可通过Visible属性隐藏此类操作项。

操作属性:

Name:名称,菜单和工具栏中显示的操作名称。

Description:描述,当鼠标指针悬停在菜单项或工具栏按钮上时的工具Tip文本。

Priority:优先级,与本应用程序其他操作相比,该操作的显示顺序(低者优先)。

Shortcut快捷方式

Visible可见

Developer Only仅开发者模式只有当 RoboDK 切换到开发者模式(Ctrl+Alt+Shift+G)时,才会显示此操作。

Show in Menu在菜单中显示

Show in Toolbar在工具栏中显示

Checkable:可检查,创建一个可检查的操作,可检查操作也可按数字分组。

Context Menu Filter:上下文菜单筛选器,定义将此操作添加到上下文菜单的 RoboDK 树元素类型。

Double-Click Filter:双击过滤器,定义双击时将调用此操作的 RoboDK 树元素类型。

创建插件包

创建插件的过程通过将RoboDK包构建为RDKP文件完成。这是创建插件的最后一步。

Add ins - 图片 20

在最后阶段,也就是创建软件包之前,可以使用以下选项:

Encrypt package:加密包,对文件进行加密,使其可以轻松通过电子邮件发送,绕过威胁检测系统(谷歌邮件服务直接禁止在附件中传输可执行文件和 Python 脚本)。

Install after building:让Add-in Manager安装新创建的软件包。

Open containing folder打开创建软件包的文件夹。

提交插件包

如果你希望其他RoboDK用户能够使用你的插件,可以将你的RoboDK插件提交至RoboDK应用市场进行展示。我们欢迎所有外部公司和开发者的提交。

你可以选择将你的插件上架销售或免费提供。无论选择哪种方式,都能为你的公司、产品及服务带来曝光机会。

请通过电子邮件联系我们以提交您的插件。以下信息将有助于RoboDK在RoboDK应用市场中正确列出你的插件:

1.插件描述文件(readme文件)。

2.清单文件(Manifest file),包括开发者网站、标价(如适用)等附加信息。

3.RoboDK插件包(RDKP 文件,由Add-in Creator创建)。

4.至少一张展示插件功能的图片或屏幕录像。

你可以参考RoboDK开源插件示例,了解如何创建清单文件以及插件在RoboDK应用商店中的呈现效果。使用Add-in Manager可以创建或更新文件。

Note:提交RDKP文件时无需附带源代码,只需包含readme文件及插件演示内容即可满足上架要求。