1.0.38 • Published 7 months ago

dobot-plus-toolkit v1.0.38

Weekly downloads
-
License
MIT
Repository
-
Last release
7 months ago

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

    • 该插件是调试开发lua的首选,具备代码检查、自动补全和代码提示的功能
  • lua-helper

    • 使用 GO 开发的一款 lua 开发工具,可以执行代码的检查、补全、提示和格式化
    • 功能稳定
  • i18n

    • 在 vscode 中提供可视化的翻译资源编辑工具
    • 联网状态下可以一键翻译文案
    • 在组件内,可以预览文案
1.0.38

7 months ago

1.0.37

9 months ago

1.0.36

9 months ago

1.0.35

9 months ago

1.0.34

9 months ago

1.0.33

9 months ago

1.0.32

9 months ago

1.0.31

9 months ago

1.0.30

9 months ago

1.0.29

9 months ago

1.0.28

9 months ago

1.0.27

9 months ago

1.0.26

9 months ago

1.0.25

9 months ago

1.0.24

9 months ago

1.0.23

9 months ago

1.0.22

9 months ago

1.0.21

9 months ago

1.0.20

9 months ago

1.0.19

9 months ago

1.0.18

9 months ago

1.0.17

9 months ago

1.0.16

9 months ago

1.0.15

9 months ago

1.0.14

9 months ago

1.0.13

9 months ago

1.0.12

9 months ago

1.0.11

9 months ago

1.0.10

9 months ago

1.0.9

9 months ago

1.0.8

9 months ago

1.0.7

9 months ago

1.0.6

9 months ago

1.0.5

9 months ago

1.0.4

9 months ago

1.0.3

9 months ago

1.0.2

9 months ago

1.0.1

9 months ago

1.0.0

9 months ago