L Master 2.3
2.3.9
针对高级用户的更新说明
- 使得 Lua 的
print
语句打印小于 1e-8 时显示为 0 - EtherCAT 异常时主动停止 Lua
- 增加错误码 1144/2014
针对开发者的更新说明
- 合并多个仓库
- 替换 SQLite 数据库驱动以支持交叉编译
- 完善版本号相关工作逻辑
- 内嵌配置文件到二进制中避免误改动引起软件异常
- 更新所有依赖项以获得更强的功能性与稳定性
- 修正 Socket 接口并完善其逻辑
- 抽离 gRPC 相关逻辑以简化代码管理
- 整合质量平台相关 API 到 DS 中
- 重写网络配置逻辑以简化控制流程
- 清理未使用的逻辑(如 DS 端实现的 Lua 解析器)
- 整理并简化配置文件管理逻辑
- 增加连接和断开外置 I/O 的接口
ConnectExternalIO
- 减少法兰异常日志导致的死机
- 每个实时周期按优先级仅处理一个命令,解决手爪和运动相关问题
- 解决
movept
和movej
交替时的运动组切换问题
软件版本和下载地址
2.3.8
针对高级用户的更新说明
- 修复了 TCP 更新时候
target_tcp_pose
无变化的问题
针对开发者的更新说明
- 增加规划错误码 -10 在
move_pt
时候 - 修复清空队列线程逻辑
- 增加了一些注释
软件版本和下载地址
2.3.7
针对普通用户的更新说明
- 修复:机器无手爪,场景任务中有手爪,运行到手爪后的任务,点击停止任务,任务要延迟几秒才能完全停止
针对高级用户的更新说明
- 增加支持 MovePt,Lua 增加指令
move_pt(pose[], time)
- 增加错误码1144
- 修复微调无法停止的问题
针对开发者的更新说明
- 增加 Dockerfile,支持云效平台构建和上传
- 急停和停止清空队列
- 移除无效代码,增加注释,完善按钮事件处理
- KDL 增加错误码 -9 规划超速
软件版本和下载地址
2.3.5
针对普通用户的更新说明
- 增加「离线仿真」功能
- 增加「扩展I/O」功能
- 修复无线网络设置问题
针对高级用户的更新说明
- 规划算法失败后急停
- 坐标空间微调不再报规划错误
- I/O 默认命名增加设备名前缀
- Lua 的
kinematics_inverse
指令增加第二个关节参数 - Lua 修复
sync
指令暂停的问题 - Lua 增加
move_pvt
,move_pvat
指令
针对开发者的更新说明
simulate
接口更改,显示仿真模式切换标签- 版本号由
a.b.c.yymmddhh
改为a.b.c+yymmddhh
,符合语义化版本 2.0.0规定 - 仿真功能重写
- 实现外置扩展 I/O 开关功能
- 完善翻译
- 修复网络问题,设置 WiFi 接入点 SSID 命名规则,根据不同类型网卡可用状态选择网卡设置优先级
- 修复调试页面 OTA 数据校验开关开启系统更新失败问题
- 修复质量平台因 gRPC 重复注册无法启动问题(通过修改 CI 打包编译参数)
- App 版本更新程序支持兼容 SemVer 版本语义
- Lua 仅当非
program_begin
时判断完整性 - Lua 状态每秒通知一次
- gRPC 的
RobotInfo
增加simulated
字段 - gRPC 增加
SwitchSimulate
方法
软件版本和下载地址
2.3.4
针对普通用户的更新说明
- 完成扩展 I/O 功能
- 修复场景名称包含英文逗号导出时报错
- 修复备份恢复后跳转到登录页报错
- 修复删除已设置默认启动任务场景在设置-条件任务关闭状态问题
- 修正场景模糊搜索
- 修复 OTA 升级版本号显示问题
针对高级用户的更新说明
- 时间轴转换为代码编辑器的头注释,
leb
改为lua
move_until_rt
的逻辑关系默认为AND
wait_xxx
的比较关系如果是非法值,默认为相等比较- 优化 Lua 执行循环任务效率,UI 运行任务与手臂状态不同步
- 修复 Lua
require('libmodbus')
失效
针对开发者的更新说明
- 未启用扩展 I/O 时 PIN 脚列表返回空
- 修复官网后台设备在线状态显示
- 修复新法兰代码合并问题
- 修复重复精度测试机器人撞停后启动运行一段程序
- 修复质量平台退出精标将 TCP 设置原点
- 修复 gRPC 调用部分错误未处理导致空指针
- 修复 RC 重启和 DS 重启 DS 重复配置无线网卡
- 隐藏仿真模式切换标签
- DS 重启或关闭异常处理
软件版本和下载地址
2.3.3
针对普通用户的更新说明
- 修复仿真切换按钮不显示的问题
- 修改任务历史和消息中心按钮点击热区
- 检查 RC>=2.3.3 设置信号量语法为
set_signal
- 场景全局速度控件隐藏时间控件
- 修复 虚拟控制页面,点击消息 ,消息弹框显示在虚拟控制页面的下方
- 修复 控制和设备来回切换,设备页面,显示机器人图案,无论选择TCP设置还是末端设备,都显示机器人图案
- 修复 主页左上角显示更新,实际软件已是最新的版本
- 修复 设备昵称修改不起作用
- 修复 英语,德语,西班牙语,法语语言下,批量微调页面内容显示超出框内
针对开发者的更新说明
- 新增扩展 I/O 功能
- 配置文件新增
extra_di/do/ai/ao
字段,默认值 12/12/2/2 - 新增 Lua 指令:
set_extra_do(pin, value)
get_extra_di(pin)
wait_extra_di(pin, value, relation)
set_extra_ao(pin, value)
get_extra_ai(pin)
wait_extra_ai(pin, value, relation)
- 新增 gRPC
RobotController
方法:SetExtraDIO
GetExtraDIO
SetExtraAIO
GetExtraAIO
SetExtraAInMode
GetExtraAInMode
SetExtraAOutMode
GetExtraAOutMode
- gRPC
RobotController::GetRobotIOData
方法新增扩展IO字段 - gRPC
RobotPrivateController::Init
方法新增扩展IO配置字段 - Lua 增加同步
sync()
指令:- 参数为0或不传,表示等待机器人所有指令执行完成
- 其他表示等待某一类型的指令执行完成
- 非阻塞指令
- 阻塞指令
- 移动指令
- 多指令
- 控制指令
- Lua 新增
scene(id)
指令,支持运行指定场景 - 新增 Lua 指令,明确
io
是i
还是o
,更改tcp
为flange
。仍兼容老的指令。set_do
get_di
wait_di
set_ao
get_ai
wait_ai
set_flange_do
get_flange_di
wait_flange_di
- 新增 Lua 指令,使得信号量语法与I/O一致:
set_signal
get_signal
wait_signal
add_signal
- 【破坏性】修改 Lua 指令,将
select
改为option
(因为select
是Lua自带的函数) - 优化 Lua 解释器:
- 优化 GC 选项,运行中不GC,仅在运行完成后空闲时GC
- 支持 Lua Chunk,可以区分「代码不完整」和「代码语法错误」,不再需要手动添加
program_begin/end
- 将
pcallk
改为pcall
,优化异常处理,错误提示精确到场景和行 - 【破坏性】gRPC的RobotController中的方法全部改为非阻塞,提供
Sync
和SyncFor
方法,将同步的控制权限交给调用方(Python SDK可支持交融半径) - 实现 gRPC 的
Sleep
方法 - 处理 gRPC 的返回值,如果浮点数是 NaN 则格式化为 0
- gRPC 的 Move 系列方法,如果非空闲、暂停、运行状态,则会报错
- gRPC 的
GetRobotData
方法新增关节速度字段 - CI 打包移除电路板和关节测试,加快打包速度
软件版本和下载地址
- RC 2.3.3 (20.9MB)
- DS 2.2.0
- UI 1.8.2
2.3.2
针对普通用户的更新说明
- 新增「设置」「条件任务」,可以设置开机自启动场景(默认程序)
- 场景列表页卡片,增加设置默认程序功能,增加删除背景图功能
- 移动「TCP设置」从「设置」到「设备」
- 新增「设备」「机器人」列表,展示局域网内在线机器人设备列表
- 修改「设置」下功能的图标
- 标题栏左侧展示设备昵称、版本号,将功能入口移动到左侧并添加文字说明
- 机器人控制侧边栏(首页、虚拟控制、位置恢复对话框等)
- 移除关节温度圆环、整机温度
- 拆分实际位置和目标位置,改名为「当前位置」和「目标位置」
- 新增展示设备负载、TCP设置和所有关节温度,可折叠
- 修改微调控件
- 相对于和坐标系单选框移动到上方
- 下方新增关节空间和坐标空间切换按钮
- 关节空间新增「临时禁用关节位置限制」功能,当关节位置超限导致急停时,可利用此功能临时解除关节限位并通过微调恢复关节位置
- 将网络设置从系统设置中拆分出到「设置」「网络连接」页面
- 场景编辑器的速度和加速度控件
- 新增运动时间设置,范围0-1s,不为0时禁用速度和加速度设置
- 新增最大交融半径设置,范围0-1m,为0时表示不平滑
- 「备份恢复」功能新增恢复时验证设备信息对话框
- 修改「安全设置」页面,默认展开碰撞检测和运行安全设置
- 登录页新增登录失败后的提示语
- 修复设备信息表格展示
- 「移动到目标位置」非空闲时展示为灰度
- 设备发现列表数据显示问题修复
- 登录密码修改问题修复
- 修复灯板控制有两个空闲状态
- 场景列表支持模糊搜索
- 添加仿真模式硬切换
针对高级用户的更新说明
- 修复删除场景背景图bug,同时删除背景图文件,跟更新场景做兼容
- 修复一移动就急停的问题,对获取的实际 TCP 位置数据做合法性容错
- 处理开机任务无法更新问题以及根据状态过滤任务列表时错误的把状态写死
- 实现 HTTP 协议下对 Lua 指令
movec
的支持 - WLAN 网络处于 AP 模式时,设置了设备昵称,SSID 名称显示
lebai-设备名称
的问题,开机启动任务时其他字段无法修改问题修复 - 文件备份时添加全局锁避免频繁请求时的冲突
- 代码编辑器从 CodeMirror 换成 Monaco(VS Code)
针对开发者的更新说明
- 修复等效半径空指针异常,默认等效半径设置为 1m
- Lua 每次运行前均设置
package.path
和package.cpath
(解决偶现socket
包找不到) - 规划算法:优化速度计算内容,移除调试日志
- 非调试模式下禁用 EtherCAT 调试日志
- 修正
movej
设置交融半径后movel
速度过大报错的问题 - 条件任务记录增加 ID 和场景名称字段
- 修复定时器使用需要退出释放资源及执行定时器退出问题
- 修复修改条件任务时不传参数其他参数被改为默认值
软件版本和下载地址
- RC 2.3.2 (20.9MB)
- DS 2.1.9
- UI 1.8.0
2.3.1
针对普通用户的更新说明
- 增加备份与恢复备份功能
- 系统设置增加设置设备昵称,昵称长度范围3-56字节
- 增加登录密码设置接口,设置时校验原密码和新密码,密码格式只允许四位数字
- WLAN 网络处于 AP 模式时,当设置了设备昵称时,SSID 名称使用设备昵称
针对高级用户的更新说明
- 断开连接时不处理命令,解决开机启动时过早调用启动命令导致启动中的问题
针对开发者的更新说明
- 当 CAN 不稳定时仍然发送位置指令,解决运行中振动的问题
- 增加 EtherCAT 通信的调试日志
- 更新 KDL 从 1.4.0 至 1.4.1
- 修正等效半径误设置为交融半径的错误,会导致交融半径设置得越大速度越慢)
- Go 语言版本更新到 1.16.3
- 设备上线时通过 mDNS 设备发现方式向 WebSocket 连接中广播通知,通知周期60s
- 公共接口获取系统状态
/public/system/status
返回设备名称、设备昵称、IP、MAC、无线网卡状态、机器人实际关节位置、实际 TCP 位置、机器人状态 - 增加公共接口获取设备列表
/public/robot/list
返回通过 mDNS 发现的局域网所有设备的系统状态数据列表,在设备上线或请求接口更新数据列表 - 添加容器镜像构建脚本
- 机器人控制器初始化提前
- 导出备份时默认设备型号为 LM3
- 场景改动后自动导出相应的 Lua 脚本
- 启动时自动对比并重建场景相关 Lua 脚本
- 删除遗留的 test 目录
- 恢复备份后通过
systemctl
自动重启 DS 和 RC - 登录接口增加密码校验逻辑,验证失败返回字段验证信息
软件版本和下载地址
- RC 2.3.1 (26.4MB)
- DS 2.1.8
- UI 1.7.1
2.3.0
针对高级用户的更新说明
- 引入
lua-libmodbus
库 - 引入
luasocket
库 - 引入
lua-json
库
针对开发者的更新说明
- 重构交融半径规划算法,支持不同移动类型的交融半径设置,非 PVAT 移动统一为
TG_TP
- 修改
debug.sh
支持 scp 传输文件并重启 RC - 修改法兰 Modbus 实现机制
- 将
motion_segment
的std::string key
改为char[] key
的Plain Object - 修复命令队列类型下标判断
- 将线程改为 1ms,将
wait_pop
改为try_pop
,将moodycamel::BlockingReaderWriterQueue
改为tbb::concurrent_queue
,优化线程通信 - 修改规划算法空闲的判断为运行中
TRS_RUNNING
,Lua 中判断移动结束的逻辑增加规划器空闲判断,解决 Ignored 问题 - 将
issue
方法的传引用改为传值 - 取消
program_begin
的start_sys
逻辑,当机器人停止时认为失败 - Lua 支持通过
require('scene.1001')
调用其他场景 - 修复 ROS 中 movel 指令的解析错误
软件版本和下载地址