机器人创新实验室任务三参考文档

news/2024/10/19 6:23:49/

一、JAVA环境配置

比赛要用java语言编程,所以需要在Linux里面下载并且安装java。

sudo apt-get install openjdk-17-jre-headless

打开终端并且运行指令,用apt下载安装java。官方用的好像是java11,我安装的是java17。

如果无法定位软件安装包,可以试试更新一下

sudo apt-get update

安装之后可以在终端输入指令验证是否安装成功

java -version

如果输出的是java版本,这就意味着安装成功。

二、代码下载

上面已经将代码运行成功。或者也可以在终端用git下载代码。

如果没有git可以在终端中输入指令安装

sudo apt-get install git

用git下载代码的方法如下

git clone https://github.com/roborescue/adf-sample-agent-java.git
 
git clone git@github.com:roborescue/rcrs-server.git

分别下载的是客户端和服务器两个工程项目。

三、编译项目

当代码下载好后,在两个工程所在的文件夹里面分别打开终端

1.服务器端编译

在服务器端的终端依次输入指令

cd rcrs-server
./gradlew completeBuild

先进入到工程的文件夹里面,然后全编译

注:这里需要工具gradle,得安装一下,可以用指令

sudo apt install gradle

2。客户端编译

在客户端的终端依次输入指令

cd adf-sample-agent-java
 
./gradlew clean
 
./gradlew build

打开工程文件并编译。

注:代码编译过之后,如果没有做修改,后面的运行可以不用再重新编译。

编译过后,都会有一个绿色的successful 。

四、运行项目

服务器端依次输入指令

 cd scripts
 
./start.sh -m ../maps/test/map -c ../maps/test/config

上面test是测试地图,智能体数量并不多,可以修改为kobe、berlin等地图,这个可以到文件中查看。

这时服务器已经准备好了,同时也会打开图形化界面

服务端准备好后,在刚刚已经打开的客户端的终端中输入指令

./launch.sh

可以看到对于lanuch脚本,我们可以进行很多操作

 我们选择全部运行,即输入下面的这个指令

./launch.sh -all

就会启动整个项目,等待项目中所有智能体的连接。

再非预计算模式下(NON_PRECOMPUTE),进度条只能到75%,当出现Done connecting to server,就意味着所有的智能体都挂载到服务端了。

这是整个项目都已经准备就绪,点击GUI界面的RUN就可以看到智能体开始运动,跑图开始

 在地图上也出现了很多黑色的障碍。

如果出现了这个界面,并且不同颜色的智能体也在运动,恭喜你考核成功。


http://www.ppmy.cn/news/1279026.html

相关文章

【easy-ES使用】1.基础操作:增删改查、批量操作、分词查询、聚合处理。

easy-es、elasticsearch、分词器 与springboot 结合的代码我这里就不放了,我这里直接是使用代码。 基础准备: 创建实体类: Data // 索引名 IndexName("test_jc") public class TestJcES {// id注解IndexId(type IdType.CUSTOMI…

Kubernetes pod ip 暴露

1. k8s pod 和 service 网络暴露 借助 iptables 的路由转发功能,打通k8s集群内的pod和service网络,与外部网络联通 # 查看集群的 pod 网段和 service 网段 kubectl -n kube-system describe cm kubeadm-config networking:dnsDomain: cluster.localpod…

AI时代Python量化交易实战:ChatGPT引领新时代

文章目录 《AI时代Python量化交易实战:ChatGPT让量化交易插上翅膀》关键点内容简介作者简介购买链接 《AI时代架构师修炼之道:ChatGPT让架构师插上翅膀》关键点内容简介作者简介 赠书活动 《AI时代Python量化交易实战:ChatGPT让量化交易插上翅…

任天堂,steam游戏机通过type-c给VR投屏与PD快速充电的方案 三type-c口投屏转接器

游戏手柄这个概念,最早要追溯到二十年前玩FC游戏的时候,那时候超级玛丽成为了许多人童年里难忘的回忆,虽然长大了才知道超级玛丽是翻译错误,应该是任天堂的超级马里奥,不过这并不影响大家对他的喜爱。 当时FC家用机手柄…

VUE前端导出文件之file-saver插件

VUE前端导出文件之file-saver插件 安装 npm install file-saver --save # 如使用TS开发,可安装file-saver的TypeScript类型定义 npm install types/file-saver --save-dev如果需要保存大于 blob 大小限制的非常大的文件,或者没有 足够的 RAM&#xff0…

LeetCode-146.LRU缓存(Python)

此题看题解 题目链接 class ListNode:def __init__(self, keyNone, valueNone):self.key keyself.value valueself.prev Noneself.next Noneclass LRUCache:def __init__(self, capacity: int):self.capacity capacityself.cache {}self.head ListNode()self.tail Li…

数据结构 | 查漏补缺

目录 数据的基本单位 冒泡排序 DFS和BFS中文 Prim 比较 中序线索二叉树 顺序栈 链栈 时间复杂度 循环队列 求第K个结点的值 数据的基本单位 数据元素 循环队列sq中,用数组elem[0‥25]存放数据元素,设当前sq->front为20,sq-&g…

TCP/IP,UDP,DNS,NAT,DHCP,HTTP协议

1.TCP/IP协议 TCP/IP协议是Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。通俗而言:TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传…