Category Archives: RoboCup

RoboCup仿真3D正式比赛环境搭建——其他细节

本文介绍一些Linux使用中的技巧。

使用sudo命令

Fedora默认安装是不会把建立的用户添加到sudoers里的,要手动添加。
编辑/etc/sudoers,找到如下内容。
## Allow root to run any commands anywhere
root ALL=(ALL) ALL

添加一行,比如账号为robocup
robocup ALL=(ALL) ALL
这样使用sudo命令的时候,就不会出错了。

换源

Fedora默认的源那是慢的要死,推荐科大的源。
参见下面文章修改源。
中科大开源软件镜像站源设置
Continue reading

RoboCup , , , , , , ,

RoboCup仿真3D正式比赛环境搭建——比赛系统使用

比赛系统要在Monitor上进行安装配置。

1. 配置ssh

比赛系统的原理即是用ssh控制Server和Client机器,执行相应的程序。所以这里必须要开启ssh服务,除了Monitor,其他机器的ssh服务都必须打开。
但ssh登陆的时候,需要输入密码,显然这样非常不友好,我们可以把主机添加到信任列表中。
在Monitor上执行如下命令,后面跟需要无密码登陆的服务器IP,一组机器里要添加三台:Server,ClientA、ClientB。
ssh-copy-id 192.168.1.2

2. 比赛系统的配置与使用

由于使用了NFS,而且比赛时为只读的。但有些队伍需要将stdout或者stderr重定向到文件以备调试之用,所以这里要设置一个可读写的文件夹,之前在配置NFS服务器的时候,我写的那个脚本已经建立了一个符号链接,这里将建立符号链接对应的实际文件夹。脚本点击这里下载。
Continue reading

RoboCup , , , , ,

RoboCup仿真3D正式比赛环境搭建——服务器架设

这里介绍NFS和NIS服务器的架设,当然是在文件服务器上架设。这两个服务并不是比赛系统所必须的,但有了这两个服务,可以非常方便的同步队伍Binaries,不用scp不停的拷贝,非常节约时间,也省事。

1. NFS服务器架设

首先安装服务端软件
yum install nfs-utils

这里我们假设整个网段为192.168.1.x,编辑/etc/exports文件
/home 192.168.1.0/24(rw)

启动服务
/etc/init.d/rpcbind start
/etc/init.d/nfs start
/etc/init.d/nfslock start
chkconfig rpcbind on
chkconfig nfs on
chkconfig nfslock on

Continue reading

RoboCup , , , , , , ,

RoboCup仿真3D正式比赛环境搭建——仿真环境安装

之前我写过一篇文章《在Arch下编译安装Simspark,使用多线程ODE》,过程基本是一样的,就是依赖包稍微有点区别。这里同样使用多线程ODE。

1. 安装Simspark

首先安装依赖包,这里不安装ODE,用自己编译的多线程版本
sudo yum -y install boost boost-devel freetype freetype-devel freeglut freeglut-devel ruby ruby-devel SDL* DevIL DevIL-devel

下载ODE,这个是Sander van Dijk写的
wget http://homepages.feis.herts.ac.uk/~sv08aav/ode-0.11.1-tbb.tar.gz

配置时打开shared和malloc,这里还要加一个参数,不然无法编译通过。
./configure --enable-shared --enable-malloc LIBS=-lX11
make
sudo make install

Continue reading

RoboCup , , , , , , ,

RoboCup仿真3D正式比赛环境搭建——操作系统安装配置

1.使用U盘安装Fedora

2011年RoboCup全国赛和世界杯都使用的是Fedora 14 64bit。
下载地址如下:
http://mirror.web-ster.com/fedora/releases/14/Live/x86_64/Fedora-14-x86_64-Live-Desktop.iso

推荐使用U盘安装,这样不需要光驱,也不需要硬盘里有Windows系统。只要一个至少1G的U盘即可。

http://download.gna.org/grubutil/grubinst-1.1-bin-w32-2008-01-01.zip下载grubinst。
首先将U盘格式化为FAT32格式,卷标设置为FEDORA,然后用grubinst_gui.exe往U盘的MBR里写入引导。记住,一定只能写到U盘里,不要选成了硬盘。

下载GRUB4DOS,http://download.gna.org/grub4dos/grub4dos-0.4.4-2009-06-20.zip
将其中的grldr文件复制到U盘根目录。如果你需要中文版的GRUB,请复制chinese目录下的grldr文件。
Continue reading

RoboCup , , , , , , , ,

RoboCup仿真3D正式比赛环境搭建——系统需求

其实在2009年的时候,我就开始参与国内RoboCup仿真3D的组织工作了。而2010年和2011年,作为全国赛的TC,我当然是全权负责整个组的比赛,从规则指定到赛场搭建,所有的事情都要承担。最近有不少人问我比赛环境是如何搭建的,考虑到我快要毕业了,以后TC就要交给其他人了,我应该留下点东西才行。所以这里,我想把搭建比赛环境的所有细节公布出来。

由于比赛环境搭建比较复杂,步骤很多,我决定分为一下几篇文章。全文已更新完毕
1.《系统需求》
2.《操作系统安装配置
3.《仿真环境安装
4.《服务器架设
5.《比赛系统使用
6.《其他细节
Continue reading

RoboCup , , , , ,

在Arch下编译安装Simspark,使用多线程ODE

Simspark是RoboCup 3D Simulation League的官方比赛平台。2010年世界杯用的是ubuntu10.04系统,但我实在受不了一年装两次系统的感觉,又不希望自己的系统不是最新版,所以目光转向Arch。以下安装教程在Arch 64bit下完成。

首先安装所需的依赖软件
pacman -S cmake boost devil ruby freetype2 sdl intel-tbb subversion

2011年伊朗公开赛已经使用9VS9的阵容,世界杯当然也是如此,以后很有可能直接11打11。而原有的物理引擎无法有效的利用CPU资源,会造成仿真非常缓慢,这个问题可以用多线程的ODE解决。

下载ODE,这个是Sander van Dijk写的
wget http://homepages.feis.herts.ac.uk/~sv08aav/ode-0.11.1-tbb.tar.gz

配置时打开shared和malloc
./configure --enable-shared --enable-malloc
make
make install

Continue reading

RoboCup , , , ,

我对RoboCup的感情

最近在赶2011伊朗赛的代码,但实在没有心情写下去。在这不想干活的真空期,回忆下我的RoboCup经历。

进入实验室

我是大一下学期了解到工大有个创新实验室,当时有人在食堂门口摆摊宣传,感觉就跟一般的社团招新、做活动一样,没有什么特别之处。因为进入大学一个学期了,什么活动都见多了,所以这些东西根本不放在眼里。也不知那天为什么,鬼使神差的就跑去报了个名,还填了个问卷调查。这里赞一下那个问卷调查,蛮技术的,有一栏问你知道下列哪些操作系统,我华丽的全勾上了。

在我报名后,有人通知我说哪天晚上有个技术讲座,相当于入门介绍。我因为上公选就没去,现在想想我当时的行为,真是可笑。然后有一场笔试,考察C++基础的,我又因为要上高数没去,现在想想,我已经无地自容了。反正一句话总结,我进实验室就不是走正常路线。有一次,一个人发短信调查有谁会装系统,我就回我会,他又继续问会装什么系统,我说安装版,Ghost版,Linux什么都会。然后他叫我哪一天去哪个地方,并且带上电脑。于是乎我就去了,那是一个装系统的交流会吧,南区来的学长们给我们装开发环境,然而我确是给别人装系统,还搞定了几台他们都搞不定的电脑,然后就被各种围观。也就在这时,我第一次认识了李栋,他当时是3D组的组长,之后我们也经常联系,又因为是老乡,关系也比较好。说句不太谦虚的话,我觉得我在技术折腾方面比实验室的所有人都强,即使是研究生,但就实际编程能力而言,我还比过他们。举个例子,我是进了实验室才知道什么是STL,之前还号称自己会C++。当然这也不能全怪我,我初二开始学的C++,那时买的书就没讲STL,估计那时还没这个标准吧。我觉得李栋是因为我技术好才想把我招进来,什么笔试、宣讲、校赛都是形式,主要目的是选拔人才,这是我当组长时才体会到的。
Continue reading

RoboCup, Thoughts , ,