当前位置: 主页 > 程序 >

ubuntu下3D仿真机器人环境搭建(二)

时间:2015-06-17  作者:haden   点击:
【摘要】继续上一篇内容,这次终于把环境搭建好了。

第一次安装,如果有大神看到,有错误还请多多指教,帮助更多的人少走弯路!



按照上一篇的操作后,会遇到很多的问题,我们先来解决问题。

  • 输入simspark后报错
查找资料,因为最新版中simspark被分为了两个部分,所以simspark命令不再具体执行3d任务窗。使用新的命令rcsoccersim3d后,即可以看到3D足球场。
关于OpenGLServer的报错可以忽略,不影响模拟仿真。
  • 编译会遇到的问题(提前安装)
之后的编译时会用到某些库文件,提前安装
$ sudo apt-get install libxml2-dev
$ sudo ln -s /usr/include/libxml2/libxml /usr/include/libxml
【我的电脑里没有/usr/include/libxml,尽管安装后的目录三libxml2/libxml,但是打开原文件后可以看到他的引用路径是libxml】
【解决方法是把libxml2/libxml文件复制到/usr/include文件夹下】
【$ cd /usr/include/libxml2】
【$ sudo cp libxml /usr/include/】
  • 其他问题
因为开始也在摸索中,走了好多弯路,还尝试过安装其他软件,不知道对最终仿真有没有影响,索性全部写出来。如果大家执行之前的操作后仍有问题,执行下列代码。
1.安装库文件
$ sudo apt-get install g++ libfreetype6-dev libsdl-dev ruby ruby-dev libdevil-dev libboost-dev libboost-thread-dev libboost-regex-dev libboost-system-dev
$ sudo apt-get install boost boost-devel freetype freetype-devel freeglut freeglut-devel ruby ruby-devel SDL* DevIL DevIL-devel ode ode-devel
$ sudo apt-get install libxl2-dev
$ cmake libfreetype6-dev libode-dev ruby ruby-dev libdevil-dev libboost-dev libboost-thread-dev libboost-regex-dev libboost-system-dev
  • 安装roboviz
不清楚这个是不是必须装的,懒得再次配置,索性写上来。
网址:http://sourceforge.net/p/rcroboviz/code/88/tree/
先把文件下载到本地
安装roboviz:
$ cd roboviz
$ ./build-linux64.sh
[接下来的操作我的电脑上反而出问题了,为了万一还是都写上来吧]
$ vi /usr/local/bin/rcsoccersim3d
找到27行,修改为roboviz所在的具体路径,例如
MON=“/home/haden/downloads/roboviz/bin/linux-amd64/roboviz.sh”
然后修改roboviz的那个roboviz.sh文件
在第二行加一句,cd到所在目录,例如
cd /home/haden/downloads/roboviz/bin/linux-amd64/


准备编译程序,加载机器人


百度云盘:http://pan.baidu.com/s/1dDdbgXz
【如果过期有需要可以联系我:ayshx(a)qq.com】
【文件结构:strive3d下是项目的原文件】
【文件机构:rebuild.sh是编译脚本,每次更改代码后需要执行】
【文件结构:BehaviorControl 目录下的Strive3dbehaviorcontrl.cpp文件是上层决策策略】
  1. 测试代码
cd到strive3d下的all_build目录下,修改start.sh和kill.sh的权限。
$ chmod a+x start.sh
$ chmod a+x kill.sh
[加载球员]
$ ./start.sh localhost
[如果出现Running agent No.X 代表球员加载成功]
  1. 安装kdevelop软件(软件管理中心)
主要用来编辑程序,方便调试
  1. 修改代码后回到bisai目录下,进行编译
$ ./rebuild.sh
编译执行后脚本会自动启动rcsoccersim3d
  1. 另外的启动方式
$ rcsoccersim3d
[启动后打开另外的终端,进入原文件目录下]
$ cd all_build
$ ./start.sh localhost
[即可看到运动员加载入比赛场]
[两个不同队名的队伍可以通过这种方式在一台机器上对抗]

其他注意

仿真官网:https://simspark.svn.sourceforge.net/

机器人结构参数位置:
(异构球员的参数位置/usr/local/share/rcssserver3d/rsg/agent/nao/naorobottypes.rb中type0到type4)
对应代码修改的地方在RobotModel文件夹中的nao.cppd的Nao::Nao();

引用不同类机器人:
worldModel文件夹中的self.cpp的string Self::GetModelFileName();

喊话定位:
/strive3d/BaseAgent.cpp的void BaseAgent::CommunicateWithTeammate();

角色分配:
WorldModel文件夹中的void WorldModel::AnalysePlayerPosition();

底层动作:
行走轨迹的代码在Geometry文件夹中的geometry.cpp;
动态踢球动作代码Action文件夹中的NaoDynamicKick.cpp;
起身动作代码Action文件夹中的NaoGetup;

上层策略修改:
BehaviorControl文件夹中的.cpp部分,主要在String3DBehaviorControl.cpp;

每次代码修改都要进行编译,执行 ./rebuild.sh
或在/strive3d/build目录下执行 cmake ../make/sudo make install

修改队名:
在WorldModel/fieldinfo.cpp中our_teamname("你的队伍的名字");



其他问题欢迎讨论
顶一下
(5)
100%
踩一下
(0)
0%
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
验证码: 点击我更换图片

推荐内容