我是靠谱客的博主 悲凉小熊猫,最近开发中收集的这篇文章主要介绍无人驾驶虚拟仿真(一)--环境搭建1、安装git、pip32、下载gym-duckietown源码3、安装gym-duckietown4、运行模拟器5、模拟器地图文件相关说明6、自制地图环境,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

简介:安装部署无人驾驶虚拟仿真平台,通过键盘控制仿真小车移动,简单介绍仿真环境切换以及自制方法

基础环境:ubuntu20.04,python3.8.10

1、安装git、pip3

$ sudo apt install git -y

$ sudo apt install python3-pip -y


2、下载gym-duckietown源码

$ git clone https://github.com/duckietown/gym-duckietown.git


3、安装gym-duckietown

$ cd gym-duckietown

$ pip3 install -e .


4、运行模拟器

1)默认环境(udem1)

$ python3 manual_control.py --env-name Duckietown

2)指定地图

$ python3 manual_control.py --env-name Duckietown --map-name mapname

mapname:udem1、4way、small_loop、loop-empty、straight_road、loop_obstacles、zigzag_dists、loop_dyn_duckiebots等,更多地图可查看目录:~/.local/lib/python3.8/site-packages/duckietown_world/data/gd1/maps

3)模拟器中,可通过↑↓←→按键操作小车行走,Enter键截图当前视野,保存到当前目录下的screen.png,Esc退出模拟器。


5、模拟器地图文件相关说明

1)地图文件格式:yaml

2)地图文件保存路径:~/.local/lib/python3.8/site-packages/duckietown_world/data/gd1/maps

3)地图路面贴图路径:~/.local/lib/python3.8/site-packages/duckietown_world/data/gd1/textures/tiles-processed/photos

4)地图路面对象模型文件路径:~/.local/lib/python3.8/site-packages/duckietown_world/data/gd1/meshes


6、自制地图环境

一个地图文件内容格式类似下图:

6.1.地图文件字段说明

1)titles:地图路面清单,包含以下几种类型

straight:直线路面,两侧白线,中间黄色虚线(后缀加/+E/S/W/N可指定路面方向指向)

curve_left:左转弯(后缀加/+E/S/W/N可指定路面入口指向)

curve_right:右转弯(后缀加/+E/S/W/N可指定路面入口指向)

3way_left:左转丁字路口(后缀加/+E/S/W/N可指定路面直线方向指向)

3way_right:右转丁字路口(后缀加/+E/S/W/N可指定路面直线方向指向)

4way:十字路口

calibration_tile:棋盘格

floor:空白地面,默认草绿色

grass:空白地面,默认草绿色

asphalt:空白地面,默认黑色路面

2)tile_size:每块地图尺寸,默认0.585米。

3)start_tile:初始化小车地图块坐标(最小为[0,0]),例:[1,3],表示小车重置位置时出现在第2行第4列的地图块上。

4)start_pose:初始化时小车在地图块上的位置,例:[[0.480, 0, 0.2925], 0],0.480表示前后位置,0代表上下(此处无意义),0.2925表示左右位置,0表示旋转弧度。

5)objects:路面障碍物及景观清单(每一个物体称之为一个对象(object)),主要包含以下对象类型:

barrier:水泥障碍

building:多层建筑

bus:公共汽车

checkerboard:棋盘格立方体

cone:路障

duckie:小黄鸭

duckiebot:小车

house:房子

signs:交通标志牌,

trafficlight:交通灯(红绿灯)

tree:树

truck:货车

其中,signs交通标志牌细分为停止、慢行、T型路口、十字路口、单行道、避让等不同的标志,具体如下:

6)路面障碍物及景观属性字段说明

kind:类型,参考上文objects类型。

pos:对象坐标,单位为地图块,例:[1.5, 3.5]表示对象坐标为地图块第2行中心 与第4列中心交叉点。

rotate:旋转角度,单位为角度(°)

height:对象高度,单位米

static:是否为静止对象,只对duckie、duckiebot和checkerboard有效,其他景观不能添加此属性,其中,duckie对象非静止状态表现为间隔固定时间,穿越面向的马路,穿越距离默认为0.585,即一个地图块的宽度,固定时间后反向返回原地;duckiebot非静止状态表现为沿当前道路行驶,然后直到行驶至最外圈,然后沿着外圈巡航。

上一篇 :无                                                      下一篇:无人驾驶虚拟仿真(二)--ROS系统安装                                                                                            

最后

以上就是悲凉小熊猫为你收集整理的无人驾驶虚拟仿真(一)--环境搭建1、安装git、pip32、下载gym-duckietown源码3、安装gym-duckietown4、运行模拟器5、模拟器地图文件相关说明6、自制地图环境的全部内容,希望文章能够帮你解决无人驾驶虚拟仿真(一)--环境搭建1、安装git、pip32、下载gym-duckietown源码3、安装gym-duckietown4、运行模拟器5、模拟器地图文件相关说明6、自制地图环境所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(78)

评论列表共有 0 条评论

立即
投稿
返回
顶部