不同版本的软件,文件名可能稍有不同,核对下文件名,以实际为准。
在当前用户的主目录创建文件夹rokit用于存放跟ROKIT相关的所有文件。
mkdir ~/rokit
1. ROKIT Locator
当前定位软件Locator只有Linux版本,支持Ubuntu 22.04、20.04、18.04等,建议使用Ubuntu最新的长期支持版本。
先安装依赖的一些软件
1.1 安装docker
需要Internet连接。Internet connection is necessary.
参考Install Docker Engine on Ubuntu
sudo apt update # 必要,更新软件源
sudo apt upgrade -y # 可选,升级已安装的软件
sudo apt install openssh-server # openssh-server是为了远程终端,很有用
sudo apt install docker.io
将当前用户添加到docker用户组。
bosch@mekotronics-r58x:~$ sudo usermod -aG docker $USER
bosch@mekotronics-r58x:~$ su - $USER
Password:
bosch@mekotronics-r58x:~$ id -nG
bosch tty disk dialout sudo audio video plugdev games users systemd-journal input netdev bluetooth docker
注销、登录系统,或者重启电脑,以便使用户以新的用户组身份登录桌面系统。
使能docker服务,查看服务状态,确定是active.
bosch@mekotronics-r58x:~$ sudo systemctl enable docker.service
bosch@mekotronics-r58x:~$ systemctl status docker.service
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2023-07-28 13:14:16 CST; 5min ago
TriggeredBy: ● docker.socket
Docs: https://docs.docker.com
Main PID: 6427 (dockerd)
Tasks: 13
Memory: 20.9M
CPU: 526ms
CGroup: /system.slice/docker.service
└─6427 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
7月 28 13:14:16 mekotronics-r58x dockerd[6427]: time="2023-07-28T13:14:16.333092297+08:00" level=info msg=">
7月 28 13:14:16 mekotronics-r58x dockerd[6427]: time="2023-07-28T13:14:16.333173966+08:00" level=info msg=">
7月 28 13:14:16 mekotronics-r58x dockerd[6427]: time="2023-07-28T13:14:16.333226467+08:00" level=info msg=">
7月 28 13:14:16 mekotronics-r58x dockerd[6427]: time="2023-07-28T13:14:16.398943341+08:00" level=info msg=">
7月 28 13:14:16 mekotronics-r58x dockerd[6427]: time="2023-07-28T13:14:16.632700108+08:00" level=info msg=">
7月 28 13:14:16 mekotronics-r58x dockerd[6427]: time="2023-07-28T13:14:16.711294350+08:00" level=info msg=">
7月 28 13:14:16 mekotronics-r58x dockerd[6427]: time="2023-07-28T13:14:16.739360889+08:00" level=info msg=">
7月 28 13:14:16 mekotronics-r58x dockerd[6427]: time="2023-07-28T13:14:16.739807149+08:00" level=info msg=">
7月 28 13:14:16 mekotronics-r58x systemd[1]: Started Docker Application Container Engine.
7月 28 13:14:16 mekotronics-r58x dockerd[6427]: time="2023-07-28T13:14:16.806069744+08:00" level=info msg=">
1.2 安装CodeMeter密码狗软件
从CodeMeter官网下载对应系统的最新版的CodeMeter User Runtime.
选择完整安装包,不要选Driver Only.
对于Ubuntu x86_64系统,选择Linux 64-bit DEB Package.
对于Ubuntu Arm 64-bit,选择Linux/AArch64 64-bit DEB Package.
sudo dpkg -i codemeter_7.60.5609.501_amd64.deb
用浏览器打开localhost:22352,配置CodeMeter Server Access, Enable Network Server, Apply.
1.3 开始安装Locator
1.3.1 载入镜像 Load images
解压ROKIT_Locator_version.zip,两个image分别是ROKIT Locator client与ROKIT Locator server.
如果电脑是x86架构,导入corei7-64文件夹下的images.
damon@damon-lenovo:~/rokit/software/ROKIT_Locator-1.8.3/Build$ docker load -i corei7-64/ROKIT_Locator_client.docker
88b983260a10: Loading layer 168.2MB/168.2MB
4804d18339c9: Loading layer 59.9kB/59.9kB
dbc1012dde18: Loading layer 695.8kB/695.8kB
58860eb398df: Loading layer 132.6kB/132.6kB
c0a055ce5593: Loading layer 170.8MB/170.8MB
Loaded image: rokit_locator_client:lls-1.8.3-final
damon@damon-lenovo:~/rokit/software/ROKIT_Locator-1.8.3/Build$ docker load -i corei7-64/ROKIT_Locator_server.docker
af0fc28afa61: Loading layer 164.9MB/164.9MB
baa07b058b9a: Loading layer 59.9kB/59.9kB
b7eaef0bf4ed: Loading layer 306.7kB/306.7kB
9841857c48c9: Loading layer 128.5kB/128.5kB
aa8df8431a2c: Loading layer 167.2MB/167.2MB
Loaded image: rokit_locator_server:lls-1.8.3-final
如果电脑是Arm架构,导入armv8-64文件夹下的images.
bosch@mekotronics-r58x:~$ cd rokit/Locator-1.6.4/Build/
bosch@mekotronics-r58x:~/rokit/Locator-1.6.4/Build$ ls
armv8-64 codemeter_7.10.4196.501_amd64.deb corei7-64 createRexrothDockerContainer.sh LLSInterfaceCodeExamples TLSCerts
bosch@mekotronics-r58x:~/rokit/Locator-1.6.4/Build$ docker load -i armv8-64/boschrexroth-laserlocalization-client.docker
d55a100a6241: Loading layer [==================================================>] 134.8MB/134.8MB
1754f7a02001: Loading layer [==================================================>] 59.9kB/59.9kB
2ed21c2f2b29: Loading layer [==================================================>] 643.1kB/643.1kB
606d6eb15e44: Loading layer [==================================================>] 124.4kB/124.4kB
308e1f41357c: Loading layer [==================================================>] 137.4MB/137.4MB
Loaded image: boschrexroth-laserlocalization-client:lls-1.6.4-final-armv8-64
bosch@mekotronics-r58x:~/rokit/Locator-1.6.4/Build$ docker load -i armv8-64/boschrexroth-laserlocalization-server.docker
e97962ea839e: Loading layer [==================================================>] 131.4MB/131.4MB
10b2f2001cfa: Loading layer [==================================================>] 59.9kB/59.9kB
9811fdee3482: Loading layer [==================================================>] 303.1kB/303.1kB
225619935a49: Loading layer [==================================================>] 116.2kB/116.2kB
cd44698208a3: Loading layer [==================================================>] 133.6MB/133.6MB
Loaded image: boschrexroth-laserlocalization-server:lls-1.6.4-final-armv8-64
1.3.2 创建容器 Create containers
脚本createRexrothDockerContainer.sh会删除之前创建的Locator容器,所以不管是重建还是新建容器,都用这个脚本。
如果电脑是Arm架构,需要修改脚本createRexrothDockerContainer.sh第77行(因为脚本更新,位置会变)附近的TAG,
TAG='lls-1.6.4-final-armv8-64'
每个版本的TAG可能会变化,查询当前image的TAG,
$ docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
boschrexroth-laserlocalization-server lls-1.6.4-final-armv8-64 723c9c00695f 3 weeks ago 262MB
boschrexroth-laserlocalization-client lls-1.6.4-final-armv8-64 5ad8c7fd7dae 3 weeks ago 269MB
创建Locator client容器
日志出现TPM相关的警告没有关系,只要最后两行显示容器启动成功、脚本完成成功。
bosch@mekotronics-r58x:~/rokit/Locator-1.6.4/Build$ bash createRexrothDockerContainer.sh localization-client
Stopping and removing running docker containers.
Creating docker container from image boschrexroth-laserlocalization-client:lls-1.6.4-final-armv8-64
WARNING: /dev/tpmrm0 not found or not a character device, disabling TPM support
Disable docker log output.
2e2207e9c1064b20871a816070f0cb7288fb49c7df341ba67f3f04226c2e365f
Successfully created Docker container.
Note: No TPM file specified or TPM support disabled.
BoschRexrothLocalizationClient
Successfully started Docker container.
Finish script successfully!
创建Locator server容器
bosch@mekotronics-r58x:~/rokit/Locator-1.6.4/Build$ bash createRexrothDockerContainer.sh localization-server
Stopping and removing running docker containers.
Creating docker container from image boschrexroth-laserlocalization-server:lls-1.6.4-final-armv8-64
WARNING: /dev/tpmrm0 not found or not a character device, disabling TPM support
Disable docker log output.
6111ad48ba52fb2e096f84e73122e7b3531610c40207785a835a7686da5697f5
Successfully created Docker container.
Note: No TPM file specified or TPM support disabled.
BoschRexrothLocalizationServer
Successfully started Docker container.
Finish script successfully!
1.3.3 检查容器 Check running containers
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6111ad48ba52 boschrexroth-laserlocalization-server:lls-1.6.4-final-armv8-64 "/usr/bin/bstarter" 14 minutes ago Up 14 minutes 0.0.0.0:8082->8082/tcp, :::8082->8082/tcp, 0.0.0.0:8086->8086/tcp, :::8086->8086/tcp, 0.0.0.0:8445->8445/tcp, :::8445->8445/tcp, 0.0.0.0:8449->8449/tcp, :::8449->8449/tcp, 0.0.0.0:9000-9001->9000-9001/tcp, :::9000-9001->9000-9001/tcp, 0.0.0.0:9015->9015/tcp, :::9015->9015/tcp, 0.0.0.0:9017-9018->9017-9018/tcp, :::9017-9018->9017-9018/tcp, 0.0.0.0:9440-9441->9440-9441/tcp, :::9440-9441->9440-9441/tcp, 0.0.0.0:9455->9455/tcp, :::9455->9455/tcp, 0.0.0.0:9457-9458->9457-9458/tcp, :::9457-9458->9457-9458/tcp, 0.0.0.0:21638-21643->21638-21643/tcp, :::21638-21643->21638-21643/tcp BoschRexrothLocalizationServer
2e2207e9c106 boschrexroth-laserlocalization-client:lls-1.6.4-final-armv8-64 "/usr/bin/bstarter" 14 minutes ago Up 14 minutes 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp, 0.0.0.0:8084->8084/tcp, :::8084->8084/tcp, 0.0.0.0:8443->8443/tcp, :::8443->8443/tcp, 0.0.0.0:8447->8447/tcp, :::8447->8447/tcp, 0.0.0.0:9002-9014->9002-9014/tcp, :::9002-9014->9002-9014/tcp, 0.0.0.0:9016->9016/tcp, :::9016->9016/tcp, 0.0.0.0:9019-9020->9019-9020/tcp, :::9019-9020->9019-9020/tcp, 0.0.0.0:9442-9454->9442-9454/tcp, :::9442-9454->9442-9454/tcp, 0.0.0.0:9456->9456/tcp, :::9456->9456/tcp, 0.0.0.0:6060-6061->6060-6061/udp, :::6060-6061->6060-6061/udp, 0.0.0.0:9459-9460->9459-9460/tcp, :::9459-9460->9459-9460/tcp BoschRexrothLocalizationClient
2 ROKIT aXessor
aXessor是人机界面,支持Windows x64和Ubuntu x64,暂不支持Arm.
解压ROKIT aXessor的压缩包(一个名字包含aXessor的压缩文件)。
2.1 在Windows安装aXessor
运行安装包\Build\Windows\ROKIT aXessor Installer.exe,按照引导完成安装。
2.2 在Linux安装aXessor
2.2.1 解压
解压安装包/Build/Ubuntu/ROKIT_aXessor_[version]_ubuntu.zip到某个文件夹,比如~/rokit/aXessor,目录最好不要使用中文(这个要求不是必须的,只是为了某些操作方便)。目录中扩展名为x86_64的是启动文件,双击打开软件或从右击快捷菜单选择run。
# axessor启动文件默认有可执行权限,如果没有,则赋予
# axessor 1.6.x
chmod +x ~/rokit/aXessor/ROKIT\ aXessor.x86_64
# axessor 1.8.x
chmod +x ~/rokit/aXessor/ROKIT_Locator_1.8_aXessor_1.8.0.x86_64
2.2.2 创建快捷方式
- 对于运行于Ubuntu 22.04的aXessor
需要配置环境变量GDK_BACKEND=x11,否则会有闪退的问题。可以在桌面新建文件start_aXessor.sh,设为可执行,其内容如下,其中第4行文件名及路径以实际为准。右击start_aXessor.sh,在快捷菜单点击执行,脚本会启动aXessor.
#!/bin/bash
export GDK_BACKEND=x11;
sleep 0.3;
/home/$USER/rokit/ROKIT_Locator_1.8_aXessor_1.8.0_ubuntu/ROKIT_Locator_1.8_aXessor_1.8.0.x86_64
也可以将Ubuntu 22.04系统显示服务协议由Wayland改为x11,编辑文件/etc/gdm3/custom.conf,使WaylandEnable=false,重启系统。具体内容可参考文章How to Use X11 instead of Wayland on Ubuntu 22.04。
sudo nano /etc/gdm3/custom.conf
WaylandEnable=false
- 对于运行于Ubuntu 20.04或18.04的aXessor
可这样创建桌面链接
ln -s ~/aXessor/ROKIT\ aXessor.x86_64 ~/Desktop/aXessor
注意
- 源文件要用完整路径,目标文件可以使用相对路径。
- 如果文件名里有空格,空格前加"\".
- 如果双击桌面链接打不开软件,
- 检查下链接目标文件ROKIT aXessor.x86_64属性是否为可执行;
- 右击桌面链接选择Run as a program.
3 视频教程
tutorial01_rokit_locator_axessor_installation_on_ubuntu_bosch_rexroth
tutorial01