使用手册 - Linux MDCS部署配置和操作说明:修订间差异
无编辑摘要 |
无编辑摘要 |
||
| 第146行: | 第146行: | ||
2. 打开Clumsy 输入 mono Clumsy.exe -no_ui | 2. 打开Clumsy 输入 mono Clumsy.exe -no_ui | ||
4. 打开浏览器,输入http://IP:8008/simple.html 进入clusmy web界面 | 4. 打开浏览器,输入http://IP:8008/simple.html 进入clusmy web界面 | ||
2025年6月23日 (一) 14:14的最新版本
MDCS 环境部署
自行配置
1.配置mono
注意:不同的cpu对应不同的离线软件包 一定先确定系统版本 输入lscpu 即可查看-建议离线安装比较快
根据mono官网要求和系统版本配置mono环境,要求mono版本>=6.12 Download - Stable | Mono (mono-project.com)
- 联网--需要根据对应的unbutun版本进行下载
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF echo "deb https://download.mono-project.com/repo/ubuntu xenial main" | sudo tee /etc/apt/sources.list.d/mono-official.list sudo apt update sudo apt install mono-complete mono --version
- 不联网
拷贝6.12的安装包至没网的电脑。然后执行以下命令。解压完后将解压目录下对应的文件夹里的内 容拷贝至/usr/local目录下对应的文件夹内。 安装前务必保证硬件空间大于2G mkdir mono tar xvf mono-6.12.0.182.tar.xz cd mono-6.12.0.182 ./configure -prefix=/home/local //如果没有local mkdir /home/local make -j4 make install
2. 配置. Net 根据. Net官网要求和系统版本配置dotnet环境,要求dotnet版本=6 在 Linux 上手动安装 .NET - .NET | Microsoft Docs
- 联网
sudo apt-get update; \ sudo apt-get install -y apt-transport-https && \ sudo apt-get update && \ sudo apt-get install -y dotnet-sdk-6.0
- 不联网
Download .NET 6.0 (Linux, macOS, and Windows) (microsoft.com) 在有网的电脑上下载对应架 构的二进制文件压缩包,拷贝至没网的电脑。然后 export DOTNET_ROOT=~/.dotnet mkdir -p "$DOTNET_ROOT" && tar zxf dotnet-sdk-6.0.100-linux-x64.tar.gz -C "$DOTNET_ROOT" export PATH=$PATH:$DOTNET_ROOT 在/home/usename/MDCS/Detour路径下执行以下命令
前面的 export 命令只会使 .NET CLI 命令对运行它的终端会话可用。 你可以编辑 shell 配置文件,永久地添加这些命令。 Linux 提供了许多不同的 shell,每个都有不同 的配置文件。 例如:
Bash Shell :~/.bash_profile、~/.bashrc Korn Shell :~/.kshrc 或 .profile Z Shell :~/.zshrc 或 .zprofile
为 shell 编辑相应的源文件,并将 :$~/.dotnet 添加到现有 PATH 语句的末尾。 如果不包含 PATH 语句,则使用 export PATH=$PATH:$~/.dotnet 添加新行。 另外,将 export DOTNET_ROOT=$~/.dotnet 添加至文件的末尾。
如果打不开Detour可以看下报错 ,可能出现的是,这种情况是libOpenCvSharpExtern.so文件损坏,可以ldd libOpenCvSharpExtern.so看看是否损坏,需要更新或者需要下载对应cpu版本的libOpenCvSharpExtern。
MDCS 配置
路径配置
为了确保以下所有的配置和操作在任意linux系统中都适配,请按照以下要求构建文件夹保存 MDCS文件。
在任意位置创建MDCS文件夹,文件夹下创建Medulla、Clumsy文件夹,每个文件夹下分别存放 对应软件的相关文件。 MDCS文件夹下创建DetouLite文件夹, DetourLite文件下再创建 DetourLite文件夹用以存放相关软件,同时创建lib文件夹用以存放
libOpenCvSharpExtern.so。
以下操作以文件夹创建在home/username为例,若创建在其他路径请自行修改对应路径。
1. Medulla配置
1. 首先Medulla文件夹里至少要有Medulla.exe和plugins文件夹, plugins文件夹里包含 CartActivator.dll和LidarController.dll等dll文件。
2. 将生成编译的Medulla适配程序(例xxx_m.dll)放入同目录下的plugins文件夹,如果适配程 序还引用了其它的库,也一并放入plugins文件夹(例如雷达、 USB摄像头等)
3. 在medulla目录下新建startup.iocmd文件,拷入以下内容
loader = io load plugins/CartActivator.dll cart = loader load plugins/xxx.dll lidar = io load plugins/LidarController.dll frontlidar = lidar init SimulateLidar frontlidar3d = lidar init SimulateLidar3D 4. 运行Medulla.exe,如果打不开出现闪退,可能的原因是MSVC运行库未安装, 官方下载地 址。 2. Detour配置 1. 打开Detour之前要先打开Medulla 2. 首先DetourLite/DetourLite文件夹里至少要有DetourLite.dll , DetourLite/lib文件夹下要有 libOpenCvSharpExtern.so ,没有so文件可能会闪退。 3. Clumsy配置
1. 打开Clumsy之前要先打开Medulla、 Detour。
MDCS操作说明
Medulla 1. 进入ssh,获取root权
2. mono启动Medulla
4. 打开Edge浏览器,输入http://IP:8007/simple.html进入medulla web 界面。(请确保使用Edge打 开页面) ( IP地址查找命令: ifconfig 或 hostname - I)
5. Web界面信息
单击查看点云后会进入点云显示界面,可以用滚轮调整大小,或是按住鼠标中键拖动。
1. 进入ssh,获取root权限,进入 cd MDCS/DetourLite目录
2. 打开detour软件,输入~/.dotnet/dotnet DetourLite.dll
3. 打开Detour软件(自己或服务器电脑桌面上或者MDCS文件夹里),选择概览-使用远程算法核-远程 设备,输入IP 点击连接
4. 如果地图已经建好,请选择 单线激光SlAM-选择图层-下载远程地图即可
5. 如果未建图,选择建图模式-遥控小车进行运行业务路线完成后,锁定图层-上传本机图层到远程图 层即可
Clumsy 1. 进入ssh,获取root权限,进入小车Clumsy目录 cd MDCS/Clumsy
2. 打开Clumsy 输入 mono Clumsy.exe -no_ui
4. 打开浏览器,输入http://IP:8008/simple.html 进入clusmy web界面 ( IP同查找见Medulla第四条)
此处,运动参数和小车状态的具体条目可将鼠标移至每个条目上,会自动显示参数解释
左侧的按钮单击即可执行对应的功能。其中,单击遥控器按钮后会出现遥控器界面
此处的遥控器是一个示例,不同项目的遥控器不同,可以在对应的remoteconfig.json中修改和绑定。
Simple
此处展示在同一局域网下的windows系统电脑中使用simple。
以上3个软件都成功开启后,我们打开simple调度软件
1. 打开SimpleComposer
2. 添加小车,双击修改小车IP以及基础速度
3. 选中小车,点击定位即可看到小车
4. 绘制路径以及其他请参考《MDCS建图和路线绘制》
Q&A 1. Q:为什么mono和dotnet运行软件会出错 A:请确保mono版本>=6.12 , dotnet版本==5 2. Q:出现以下错误是什么原因?
A:请和对接人员确认是否把以上dll拷到RosLIdar.dll目录下了。 3. Q:如果出现Error: Adress Already in use这个报错,无法打开网页怎么办? A:检查有没有监听8007口的mono进程。这个进程不会在 ps -a 的时候显示,但是会在后台一直 监听导致端口占用。可以用 netstat -tunlp | grep 8007 来检查一下,有的话直接把进程杀了就行 了。 4. Q:如果出现以下报错怎么处理?
A:这个报错是缺libOpenCvSharpExtern.so ,和对接人员确认是否已经拷过来了。没有的话拷到 DetourLite.dll相同目录下,执行 ldd命令,然后执行 export LD_LIBRARY_PATH=./ 即可。 5. Q:如何读取bag文件?
A:首先确认已经安装好roscore和rosbridge环境。新开终端执行roslaunch rosbridge_server rosbridge_websocket.launch。新开一个终端执行 rosbag play filename.bag --topic /scan_orig播放medulla中需要接收的topic,如此topic名字是scan_orig
















