dobot-plus-toolkit
v1.0.38
Published
该工具为 [DobotStudio Pro](https://dobot.cn/service/download-center) Dobot+ 插件开发工具,用于快捷高效的开发 Dobot+ 插件
Downloads
64
Readme
Dobot+ 插件开发工具集
该工具为 DobotStudio Pro Dobot+ 插件开发工具,用于快捷高效的开发 Dobot+ 插件
依赖
NodeJS
该工具依赖于 v20+ 版本的 NodeJS,在开发时,请保持 NodeJs 版本的一致性。
安装
安装 dobot-plus-toolkit
使用 npm
安装
npm install -g dobot-plus-toolkit
使用
创建插件
dpt create
该指令需要开发者提供:
- 插件名,插件名不得与当前路径下子文件夹同名
- 描述,可选,默认为空
- 版本号,默认 1-0-0,版本号请遵循
[主版本]-[次要版本]-[更新/修复]-[状态]
使用-
连接的格式 - 真机的 ip 地址,默认是
192.168.5.1
后续调试可变更
创建成功后文件夹结构如下:
my-plugin
├── Resources # 资源文件夹
│ ├── document
│ │ └── config.json
│ ├── i18n # 国际化资源
│ │ ├── client # 积木编程、脚本编程、插件在客户端展示的翻译资源
│ │ │ ├── de.json # 德语
│ │ │ ├── en.json # 英语
│ │ │ ├── es.json # 西班牙语
│ │ │ ├── hk.json # 繁体中文
│ │ │ ├── ja.json # 日语
│ │ │ ├── ko.json # 韩语
│ │ │ ├── ru.json # 俄语
│ │ │ └── zh.json # 中文
│ │ └── plugin # 插件 UI 界面的国际化翻译资源
│ │ ├── de.json
│ │ ├── en.json
│ │ ├── es.json
│ │ ├── hk.json
│ │ ├── ja.json
│ │ ├── ko.json
│ │ ├── ru.json
│ │ └── zh.json
│ └── images
│ └── pallet.svg
├── configs # 配置文件
│ ├── Blocks.json # 积木编程配置文件
│ ├── Main.json # 插件信息配置文件
│ ├── Scripts.json # 函数编程配置文件
│ └── Toolbar.json # 工具栏配置文件
├── dpt.json
├── lua # 控制器lua脚本文件夹
│ ├── daemon.lua # 主进程
│ ├── httpAPI.lua # 响应http请求的进程
│ ├── userAPI.lua # 脚本编程、积木编程对外接口进程
│ ├── control.lua # 插件核心控制逻辑
│ └── utils # lua工具函数
│ ├── await485.lua #485 通道使用的工具
│ ├── mqtt.lua # mqtt 连接工具
│ ├── num_convert.lua # 数字运算工具
│ ├── util.lua # 通用工具
│ └── variables.lua # 变量模块
├── package.json
├── pnpm-lock.yaml
├── tsconfig.json
└── ui # 插件UI界面
├── Blocks.tsx # 积木弹窗页面
├── Main.tsx # 插件主页面
└── Toolbar.tsx # 插件工具栏
开发者可以根据需要对具体的文件内容进行变更。项目中有一个 .dobot
文件夹,里面是该工具内置的函数和组件,旨在减少开发者初始化项目的操作,开发者可以根据需要,自由更改里面的内容,但请保持文件夹和文件的完整性。
调试
dev
dpt dev
上述指令会执行:
- 建立 sftp 连接,用于代码同步到控制器
- 建立本地开发服务,用于调试页面
- 根据
httpAPI.lua
文件生成前端请求接口,在界面可根据ide提示自动引入
lua
dpt lua
上述指令会执行:
- 便利项目下lua文件夹的所有文件
- 配置lua的模块加载路径
- 执行用户选择的lua脚本并打印其中的日志
gui
dpt gui
上述指令会执行:
- 启动本地文件服务,执行本地文件的读写操作
- 开发Web端的图形界面,提供用户编辑积木配置、脚本编程配置、插件翻译配置的能力
打包
dpt build
在构建的过程中,ui
路径下的第一层的 .tsx
文件会被构建成对应的页面
Main.tsx
对应插件主页面Toolbar.tsx
对应插件工具栏Blocks.tsx
对应插件的积木弹窗页面- 其他一级自定义页面也会进行同类型构建,所以请开发者注意
ui
文件夹下一级目录中.tsx
文件的命名
在程序顺利执行完毕后,当前文件夹下会出现 dist
文件夹和 output
文件夹。
dist
文件夹中存放着本次构建后的插件代码,用于开发者检查构建结果output
文件夹存放着压缩后的zip
文件,文件名格式为<插件名>-<版本号>.zip
,该文件为实际在客户端导入使用的的插件。
构建后未压缩的文件夹结构如下:
├── Blocks
│ ├── config.json # 积木编程配置文件
│ └── index.html # 积木编程点击积木块展示的页面
├── Main
│ ├── config.json # 插件基础配置
│ └── index.html
├── Resources
│ ├── document
│ │ └── config.json # 脚本编程文档配置
│ ├── i18n # 国际化翻译数据
│ │ ├── Deutsch # 德语翻译
│ │ │ ├── blocks.json # 积木编程翻译
│ │ │ ├── config.json # 基础配置的翻译
│ │ │ └── scripts.json # 脚本编程的翻译
│ │ ├── English
│ │ │ ├── blocks.json
│ │ │ ├── config.json
│ │ │ └── scripts.json
│ │ ├── Español
│ │ │ ├── blocks.json
│ │ │ ├── config.json
│ │ │ └── scripts.json
│ │ ├── Русский язык
│ │ │ ├── blocks.json
│ │ │ ├── config.json
│ │ │ └── scripts.json
│ │ ├── 日本語
│ │ │ ├── blocks.json
│ │ │ ├── config.json
│ │ │ └── scripts.json
│ │ ├── 简体中文
│ │ │ ├── blocks.json
│ │ │ ├── config.json
│ │ │ └── scripts.json
│ │ ├── 繁體中文
│ │ │ ├── blocks.json
│ │ │ ├── config.json
│ │ │ └── scripts.json
│ │ └── 한국어
│ │ ├── blocks.json
│ │ ├── config.json
│ │ └── scripts.json
│ └── images
│ └── pallet.svg
├── Scripts
│ └── config.json # 脚本编程的配置文件
├── Toolbar
│ ├── config.json
│ └── index.html
├── daemon.lua # lua入口文件、守护进程
├── httpAPI.lua # 控制器和GUI的数据交互模块,处理GUI界面的http请求
├── userAPI.lua # 积木编程和脚本编程的模块
├── control.lua # 插件核心控制模块,对应实际控制机械臂末端的方法
└── utils
└── await485.lua
命令行指令
全局安装成功后,dobot-plus-toolkit 会自动注册一个名为 dpt
的命令行工具。
dpt
是一个集成了多种功能的命令行工具,旨在简化插件开发流程。以下是该工具中包含的主要指令及其详细用法说明:
| 命令 | 用途 | 用法 | 选项 | 详细说明 |
|-------------|------------------------------------------------------------|-----------------------------------------|-----------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| create
| 创建一个新的插件项目 | dpt create
| 无 | 运行此命令时,系统会引导您创建一个新的插件项目。您可以通过一系列的选择,设置项目的名称、版本号以及插件的基础结构。生成的项目将包含初始的配置文件和文件结构,方便后续开发。 |
| dev
| 启动开发服务器,并将代码同步到真实设备进行调试 | dpt dev [--port <port>]
| --port <port>
:指定开发服务器的端口,默认为 8080
| 运行 dpt dev
后,系统会启动 Webpack 开发服务器,并根据配置文件 dpt.json
与真实设备建立连接。您可以选择是否在真实设备上调试 Lua 脚本。如果选择调试,系统会通过 SFTP 将代码同步到设备,并监控文件变动。每当 Lua 脚本发生变化时,系统会自动更新设备上的文件并重新加载插件。 |
| lua
| 运行 Lua 脚本,并在项目中选择目标 Lua 文件执行 | dpt lua
| 无 | 此命令会列出 ./lua
目录中的所有 Lua 文件,并让您选择目标文件执行。选择完成后,命令会通过 lua54.exe
运行该脚本,输出执行结果。此功能适合开发过程中快速测试和运行 Lua 代码。 |
| gui
| 通过图形化界面(GUI)配置项目 | dpt gui [--dev]
| --dev
:以开发模式启动 GUI | 运行此命令时,系统会启动一个 Web GUI 界面,允许用户通过浏览器进行项目配置。该界面支持实时预览和交互操作。如果指定 --dev
选项,命令会以开发模式启动 GUI,适用于调试和开发场景。 |
| build
| 打包项目 | dpt build
| 无 | 此命令用于将项目代码进行打包处理,生成最终的插件发布版本。打包时会根据项目的 Webpack 配置,优化代码并生成最终的可发布文件。 |
vscode 插件建议
该工具在使用时,创建完项目后,会提示用户安装一些 vscode 插件,强烈建议开发者使用这些插件,对于开发的效率和便利性有很大的帮助。
- 该插件是调试开发lua的首选,具备代码检查、自动补全和代码提示的功能
- 使用 GO 开发的一款 lua 开发工具,可以执行代码的检查、补全、提示和格式化
- 功能稳定
- 在 vscode 中提供可视化的翻译资源编辑工具
- 联网状态下可以一键翻译文案
- 在组件内,可以预览文案