OEM 包制作流程
本文档介绍如何根据客户定制化需求制作 OEM 包。包含有线版本和无线版本的配置项说明,以及详细的示例和注意事项。
1 制作流程
1.1 模板下载与存放目录
点击下载模板 ,模板文件夹中包含四个类型模板,推荐使用默认模板(default_release);
将模板文件放置控制柜or虚拟机
/root
目录下,或/root
目录下任意文件夹均可;默认模板:模板中不包含任何定制内容,制作者可根据需求进行修改
1.2 解压与命名
解压模板文件至当前目录,并将模板文件重命名为定制包名 ,下面以制作
E10_release.oem
为例:将默认模板
default_release.zip
解压至/root/oem/
,并重命名default_release
为E10_release
。1.3 修改定制参数
文件
oem.conf
, 可以定制示教器软件的配置、机械臂和控制柜的名称、软件logo等。文件
before.sh
,可以设置禁用、开启有线和无线。文件
setup.sh
,设置更换开关机logo,更新桌面图标,替换模型文件和皮肤等功能。文件
deploy.sh
, 设置oem包名和打包版本。具体修改内容请按照客户定制需求参考 4 示例 章节内容
1.4 打包
修改完成定制内容后,需要将定制内容打包成为OEM包交给客户使用,具体打包流程如下: 注:打包后生成的OEM包无法修改,建议在打包前对文件进行压缩存档,方便修改定制内容
打开脚本文件
deploy.sh
将default
更改成本OEM包定制名称 ,例如E10
OEM_PACKAGE_NAME="default-${VERSION_NUM}+${GIT_HASH}.oem"
因为是本地打包所以需要自己手动修改
oem
包版本号,例如 1.0.1VERSION_NUM=1.0.* #版本号根据具体情况设置
在
/root/default_release/
目录下打开终端(注意:此处的目录应该是定制者你自己存放模板的解压后的目录),并执行脚本./deploy.sh
,打包成功后,在build
目录下,会生成oem
包 ;此时,定制OEM包制作完成;
1.5 安装使用
打包完成后,请参考 OEM 定制包使用指南 进行安装和使用。 如制作的OEM包不生效,请检查步骤1.3中定制参数是否正确或OEM包安装是否正确;
2 有线版本可配置项
2.1 上位机可配置项
在 /config/oem.conf
文件中,根据实际需求修改或添加配置参数,若该参数不使用时,可以用 #
注释掉,有定制需要时再解开注释,以下是详细参数说明。
# 以下配置参数均为默认配置
[Teachpendant]
hide_logo = false # 默认不隐藏 logo, true-隐藏、false-不隐藏
hide_tp_3pe_config = false # 默认不隐藏示教器三档位开关配置, true-隐藏、false-不隐藏
default_tp_3pe_for_handguide = true # 默认的三档位开关作为拖动功能,true-拖动、false-安全防护
logo_pic_path = "oem/1.png" # 指定自定义 logo 的加载路径
splash_path = "xx/2.png" # 指定自定义 splash 的加载路径
login_pic_path= "oem/3.png" # 指定高级模式登录页面的记载路径
default_language = "en" # 默认语言为英文,目前支持 en(英文)、zh_CN(中文)、ja(日语)、ru(俄语)、ko(韩语)
default_theme = "orange" # 默认主题颜色为橙色,目前支持 orange(橙色)、blue(蓝色)
default_loop_forever = true # 默认勾选一直循环, true-勾选、false-不勾选
default_authority_mode = 0 # 默认模式为经典模式,0-经典模式 1-高级模式
lock_language = false # 默认不锁定语言,允许修改设置,true-锁定语言、false-不锁定语言
lock_theme = false # 默认不锁定主题,允许修改设置,true-锁定主题、false-不锁定主题
operation_auto_to_manual_lock_screen = false# 操作模式从自动切换到手动后触发所屏效果(io触发),默认不锁定,true-锁定、false-不锁定
edit_stop_program = true # 程序运行后是否可以编辑程序 默认可以编辑, true-可以编辑、false-不可以编辑
measure_unit = "radian" # 姿态单位 radian:弧度 "angle":度 默认为radian(弧度)
running_disable_io_trigger = false # 程序运行时,禁止主动触发IO 默认可以触发,true-不可以触发、false-可以触发
io_action_slow_down = false # IO动作中显示非一级减速、非二级减速 默认不显示,true-显示、false-不显示
io_action_safe_guard = false # IO动作中显示安全停止、运行中保护 默认不显示,true-显示、false-不显示
passwd_protected_operation_mode_switch = "manual" # always:模式切换都需要密码 manual:切换到手动需要密码 nerver: 模式切换不需要密码 默认切换到手动需要密码
hide_safety_mode_dlg = false # 是否隐藏示教器上次异常退出弹窗,默认不隐藏,true-隐藏、false-不隐藏
lock_dragdamping = false # 配置中的拖动阻尼页是否开启密码保护,默认不开,true-开启、false-不开启
check_use_age = false # 是否开启使用年限检查,默认 false-不开启
use_age_limit = 36 # 额定质保年限配置,整数(月)。 要大于等于1,才能正常开启功能
# 宁德定制
collision_level_1_force = 300 # 等级1碰撞力
collision_level_2_force = 290 #等级2碰撞力
collision_level_3_force = 280 #等级3碰撞力
collision_level_4_force = 270 # 等级4碰撞力
collision_level_5_force = 260 # 等级5碰撞力
collision_level_6_force = 250 # 等级6碰撞力
collision_level_7_force = 240 # 等级7碰撞力
collision_level_8_force = 230 # 等级8碰撞力
collision_level_9_force = 220 # 等级9碰撞力
collision_level_10_force = 210 # 等级10碰撞力
collision_force_info = "" # 碰撞力信息
## 机器人/控制柜型号和名字的映射
[RobotType]
aubo_i10H = "i10H"
cb_standard-zh_CN = "改进型控制柜"
cb_standard-ko = "향상된 제어 캐비닛"
cb_ISStation-zh_CN = "iS控制柜"
cb_standard-zh_CN = "改进型控制柜"
cb_iSstandardStation-zh_CN = "iS控制柜"
cb_CStation-zh_CN = "C系列控制柜"
cb_SmartStation-zh_CN = "S系列控制柜"
cb_PStation-zh_CN = "工业机器人控制柜"
cb_i-zh_cn = "改进型控制柜"
## 指定安装包的路径/过滤器
[Sources]
arcs_update_url=["https://download.aubo-robotics.cn/arcs/", "https://download.aubo-robotics.cn/oem/"] # 更新链接
arcs_update_prefix=["arcs_update","xxx"]
arcs_update_contain=["NSL"]
2.2 控制器可配置项
# 以下配置参数均为默认配置
[aubo_control]
opmode_stop_strategy = 0 #0:默认值,手动切到自动模式,运行的程序会暂停;1: 手动切到自动模式,运行的程序会停止
collision_pause_rtm = true #true:默认值,碰撞后暂停运行时;false: 碰撞后停止运行时
estop_speed_fraction = 0.01 #0.01: 默认值,范围:[0-1],紧急停止后的速度比例值设置
manual_mode_active_linked_io = false #false:默认值,配置联动IO在手动模式下不生效;true:配置联动IO在手动模式下生效
log_count = 20 #20:默认值,范围:[20-1000],log日志数量设置
linkage_mode_active = true #true:默认值,联动模式默认生效;false:禁用联动模式,自动模式等效于联动模式
2.3 OEM中默认值逻辑的字段与INI中字段的对应
Teachpendant/hide_logo<===>customization/hide_logo
Teachpendant/default_language<===>system/language
Teachpendant/default_theme<===>system/themes
Teachpendant/default_loop_forever<===>system/loop_forever
Teachpendant/default_authority_mode<===>authority/advanced_mode
Teachpendant/edit_stop_program<===>system/edit_stop_program
Teachpendant/measure_unit<===>system/measure_unit
3 无线版本可配置项
在 /config/oem.conf
文件中,根据实际需求修改或添加配置参数,若该参数不使用时,可以用 #
注释掉,有定制需要时再解开注释,以下是详细参数说明。
# 根据实际需求修改或添加配置参数
[Teachpendant]
default_language = "en" # 默认语言为英文,目前支持 en(英文)、zh_CN(中文)、ja(日语)、ru(俄语)、ko(韩语)
edit_stop_program = true # 程序运行后是否可以编辑程序 默认可以编辑, true-可以编辑、false-不可以编辑
measure_unit = "radian" # 姿态单位 radian:弧度 "angle":度 默认为radian(弧度)
hide_logo = false # 默认不隐藏 logo, true-隐藏、false-不隐藏
default_loop_forever = true # 默认勾选一直循环, true-勾选、false-不勾选
running_disable_io_trigger = false # 程序运行时,禁止主动触发IO 默认可以触发,true-不可以触发、false-可以触发
io_action_slow_down = false # IO动作中显示非一级减速、非二级减速 默认不显示,true-显示、false-不显示
io_action_safe_guard = false # IO动作中显示安全停止、运行中保护 默认不显示,true-显示、false-不显示
collision_level_1_force = 300 # 等级1碰撞力
collision_level_2_force = 290 #等级2碰撞力
collision_level_3_force = 280 #等级3碰撞力
collision_level_4_force = 270 # 等级4碰撞力
collision_level_5_force = 260 # 等级5碰撞力
collision_level_6_force = 250 # 等级6碰撞力
collision_level_7_force = 240 # 等级7碰撞力
collision_level_8_force = 230 # 等级8碰撞力
collision_level_9_force = 220 # 等级9碰撞力
collision_level_10_force = 210 # 等级10碰撞力
collision_force_info = "" # 碰撞力信息
4 示例
4.1 无logo模式
无logo模式是指需要将所有图标中的aubo
字样替换或者隐藏,替换图标包含开关机的logo和桌面快捷方式logo;隐藏logo包含软件加载页面/关于页面/高级模式登录页面,参考模板nologo.zip
。
如需要定制图标,参考步骤 4.2 定制软件logo。
4.2 定制软件logo
定制开关机图标。
1、将开关机定制的logo图标放到目录
/resources/logo/
下;2、根据
setup.sh
脚本中设置的名称,将定制的开机图片重命名为logo_16bit.png
,关机图片重命名为logo.png
,(开关机必须是同一个图标样式)。3、打开
setup.sh
脚本,将模板中注释的处理开关机图片代码解开注释 。
定制软件启动页面图标。
1、将想定制替换的logo图片放到目录
/resources/logo/
下;2、打开
/config/oem.conf
,软件启动加载背景配置为splash_path= "resources/logo/start_0_en_16_10.png"
,将存放在/resources/logo/
中的定制logo图片重命名为对应的名称。3、隐藏软件原生logo,打开
/config/oem.conf
文件,修改hide_logo = true
, 即会隐藏图标。此时定制的logo即会生效;
定制高级模式登录页面图标。
1、将定制的logo放到目录
/resources/logo/
下;2、打开
/config/oem.conf
,软件启动加载背景的配置为login_pic_path = "resources/logo/login.png"
,把/resources/logo/
中对应的定制登录页面logo图片重命名为该名称。定制桌面快捷方式图标。
1、将替换的logo放到目录
/resources/logo/
下,重命名定制图标为arcs.png
;2、在
setup.sh
脚本文件中,解开更新桌面图标的对应代码;备注:替换的图标有尺寸要求,详细尺寸参考表格 :尺寸要求
定制关于页面图标。
1、将替换的logo放到目录
/resources/logo/
下;2、打开
/config/oem.conf
,软件启动加载背景配置为logo_pic_path= "resources/logo/technored_logo.png"
,把/resources/logo/
中对应的定制关于页面logo图片重命名为该名称。
4.3 定制机械臂名称
如果需要定制机械臂名称或控制柜名称,则需要在文件/config/oem.conf
中配置相关与机械臂原名称替换的定制名称,在文件中找到实际机械臂的名称参数,将定制名称赋值给对应参数,若配置文件中没有该臂型号,可自行添加。如:
若需定制实际机械臂 aubo_i3H
显示为 i3HFY
,则修改或添加参数 aubo_i3H = "i3HFY"
,
若需定制控制柜 cb_ISStation-zh_CN
显示 IS控制柜
,则修改或添加参数 cb_ISStation-zh_CN = "iS控制柜"
,以此类推。
4.4 定制模型颜色
如需定制系统中显示的机械臂模型颜色,则需要替换模型文件并解开替换模型代码注释,(模型文件找算法同事刘赛男提供);例如定制 i5H 模型为 red 模型。流程如下:
1、将算法同事提供的i5H_red模型文件拷贝至 /resources/
目录下
2、修改 setup.sh
脚本,将 i5H 模型 替换为 i5H_red 模型文件:增加如下代码(模板已增加,使用时解开注释即可);
3、将代码中i5H_red模型名称修改为实际的定制模型的文件名称;如将 i5H_red 修改为 i5H_white。
4.5 禁用有线/禁用无线
打开配置文件 before_setup.sh
# 配置安装
export INSTALL_AUBO_SCOPE=true #true:默认值,启用有线示教器;false: 关闭有线示教器
export INSTALL_WEBSCOPE=false #false:默认值,关闭无线;true: 启用无线
export INSTALL_NGINX=false #false:默认值,关闭nginx网页访问;true: 启用nginx网页访问
5 注意事项
- 建议使用 git 或者其他方式将自己的修改进行留存,有利于后续的变更及追溯。
- 隐藏 logo,是隐藏 arcs 软件中带有 aubo 的字样,指关于页面/软件启动页面/桌面快捷方式/高级模式登录页面。
- 系统开关机只有aubo图标,没有xubuntu的logo,所以 aubo_oem.conf 中隐藏 logo,开关机的 logo无法隐藏,只能替换新 logo。(参考模板
nologo.zip
) - 开机和关机的 logo 需要是同一张 logo。
- 替换软件加载页面的 logo,需要先设置
hide_logo=true
。 - 如制作的 OEM 包不生效,请检查步骤1.3中定制参数是否正确或 OEM 包安装是否正确;