├── map
├── race_track.pgm
└── race_track.yaml
├── urdf
├── meshes
│ ├── chassis.stl
│ ├── hinge.stl
│ ├── hokuyo.stl
│ ├── left_wheel.stl
│ └── right_wheel.stl
├── macros.xacro
└── xacros
│ └── macros.xacro.normal
├── world
├── models
│ ├── monza_track
│ │ ├── monza_track.stl
│ │ ├── model.config
│ │ └── model.sdf
│ ├── interlagos_track
│ │ ├── interlagos_track.stl
│ │ ├── model.config
│ │ └── model.sdf
│ ├── silverstone_track
│ │ ├── silverstone_track.stl
│ │ ├── model.config
│ │ └── model.sdf
│ └── asphalt_plane
│ │ ├── materials
│ │ ├── textures
│ │ │ └── tarmac.png
│ │ └── scripts
│ │ │ └── asphalt.material
│ │ ├── model.config
│ │ ├── model.sdf
│ │ └── model-1_4.sdf
├── monza_track.world
├── interlagos_track.world
└── silverstone_track.world
├── launch
├── car_1.access
├── car_2.access
├── car_3.access
├── monza.master
├── interlagos.master
└── silverstone.master
├── config
├── control.yaml
├── one_car.launch.xml
└── vehicle_class.launch.xml
├── utils
└── laser_to_pcd_ros.py
├── scripts
├── keyboard_teleop.py
└── command_multiplexer.py
├── src
├── set_racecar_state.py
└── control_plugin.py
├── package.xml
├── rviz
├── TA_inst_demo_car.rviz
├── car_2.rviz
├── car_3.rviz
├── car_5.rviz
├── car_6.rviz
├── car_7.rviz
├── car_8.rviz
├── car_4.rviz
└── car_1.rviz
├── README.md
├── CMakeLists.txt
└── LICENSE
/map/race_track.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/f1tenth-dev/simulator/HEAD/map/race_track.pgm
--------------------------------------------------------------------------------
/urdf/meshes/chassis.stl:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/f1tenth-dev/simulator/HEAD/urdf/meshes/chassis.stl
--------------------------------------------------------------------------------
/urdf/meshes/hinge.stl:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/f1tenth-dev/simulator/HEAD/urdf/meshes/hinge.stl
--------------------------------------------------------------------------------
/urdf/meshes/hokuyo.stl:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/f1tenth-dev/simulator/HEAD/urdf/meshes/hokuyo.stl
--------------------------------------------------------------------------------
/urdf/meshes/left_wheel.stl:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/f1tenth-dev/simulator/HEAD/urdf/meshes/left_wheel.stl
--------------------------------------------------------------------------------
/urdf/meshes/right_wheel.stl:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/f1tenth-dev/simulator/HEAD/urdf/meshes/right_wheel.stl
--------------------------------------------------------------------------------
/world/models/monza_track/monza_track.stl:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/f1tenth-dev/simulator/HEAD/world/models/monza_track/monza_track.stl
--------------------------------------------------------------------------------
/world/models/interlagos_track/interlagos_track.stl:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/f1tenth-dev/simulator/HEAD/world/models/interlagos_track/interlagos_track.stl
--------------------------------------------------------------------------------
/world/models/silverstone_track/silverstone_track.stl:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/f1tenth-dev/simulator/HEAD/world/models/silverstone_track/silverstone_track.stl
--------------------------------------------------------------------------------
/world/models/asphalt_plane/materials/textures/tarmac.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/f1tenth-dev/simulator/HEAD/world/models/asphalt_plane/materials/textures/tarmac.png
--------------------------------------------------------------------------------
/map/race_track.yaml:
--------------------------------------------------------------------------------
1 | image: race_track.pgm
2 | resolution: 0.050000
3 | origin: [-30.024998, -30.024998, 0.000000]
4 | negate: 0
5 | occupied_thresh: 0.65
6 | free_thresh: 0.196
7 |
8 |
--------------------------------------------------------------------------------
/world/models/monza_track/model.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | monza_track
6 | 1.0
7 | model.sdf
8 |
9 | Varundev Sukhil
10 | varundev@virginia.edu
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/world/models/interlagos_track/model.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | interlagos_track
6 | 1.0
7 | model.sdf
8 |
9 | Varundev Sukhil
10 | varundev@virginia.edu
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/world/models/silverstone_track/model.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | silverstone_track
6 | 1.0
7 | model.sdf
8 |
9 | Varundev Sukhil
10 | varundev@virginia.edu
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/world/models/asphalt_plane/materials/scripts/asphalt.material:
--------------------------------------------------------------------------------
1 | material vrc/asphalt
2 | {
3 | technique
4 | {
5 | pass
6 | {
7 | ambient 0.5 0.5 0.5 1.0
8 | diffuse 0.5 0.5 0.5 1.0
9 | specular 0.2 0.2 0.2 1.0 12.5
10 |
11 | texture_unit
12 | {
13 | texture tarmac.png
14 | filtering anistropic
15 | max_anisotropy 16
16 | scale 0.1 0.1
17 | }
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/world/models/asphalt_plane/model.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Asphalt Plane
5 | 1.0
6 | model-1_4.sdf
7 | model.sdf
8 |
9 |
10 | Thomas Koletschka
11 | thomas.koletschka@gmail.com
12 |
13 |
14 |
15 | An asphalt textured plane.
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/world/models/monza_track/model.sdf:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | model://f1tenth-sim/world/monza_track/monza_track.stl
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | model://f1tenth-sim/world/monza_track/monza_track.stl
21 |
22 |
23 |
24 |
25 |
26 |
27 | 1
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/world/models/interlagos_track/model.sdf:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | model://f1tenth-sim/world/interlagos_track/interlagos_track.stl
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | model://f1tenth-sim/world/interlagos_track/interlagos_track.stl
21 |
22 |
23 |
24 |
25 |
26 |
27 | 1
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/world/models/silverstone_track/model.sdf:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | model://f1tenth-sim/world/silverstone_track/silverstone_track.stl
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | model://f1tenth-sim/world/silverstone_track/silverstone_track.stl
21 |
22 |
23 |
24 |
25 |
26 |
27 | 1
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/world/models/asphalt_plane/model.sdf:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | true
5 |
6 |
7 |
8 |
9 | 20 20 .1
10 |
11 |
12 |
13 |
14 | false
15 |
16 |
17 | 20 20 .1
18 |
19 |
20 |
21 |
26 |
27 |
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/world/models/asphalt_plane/model-1_4.sdf:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | true
5 |
6 |
7 |
8 |
9 | 20 20 .1
10 |
11 |
12 |
13 |
14 | false
15 |
16 |
17 | 20 20 .1
18 |
19 |
20 |
21 |
26 |
27 |
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/launch/car_1.access:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/launch/car_2.access:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/launch/car_3.access:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/config/control.yaml:
--------------------------------------------------------------------------------
1 | # F1/10 individual vehicle control parameters (copy as needed)
2 | # Author: Varundev Suresh Babu
3 | # Date: 06/21/2019
4 |
5 | joint_state_controller:
6 | type: joint_state_controller/JointStateController
7 | publish_rate: 50
8 |
9 | left_rear_wheel_velocity_controller:
10 | type: effort_controllers/JointVelocityController
11 | pid: { p: 1.0, i: 0.0, d: 0.0, i_clamp: 0.0 }
12 |
13 | right_rear_wheel_velocity_controller:
14 | type: effort_controllers/JointVelocityController
15 | pid: { p: 1.0, i: 0.0, d: 0.0, i_clamp: 0.0 }
16 |
17 | left_front_wheel_velocity_controller:
18 | type: effort_controllers/JointVelocityController
19 | pid: { p: 0.5, i: 0.0, d: 0.0, i_clamp: 0.0 }
20 |
21 | right_front_wheel_velocity_controller:
22 | type: effort_controllers/JointVelocityController
23 | pid: { p: 0.5, i: 0.0, d: 0.0, i_clamp: 0.0 }
24 |
25 | left_steering_hinge_position_controller:
26 | type: effort_controllers/JointPositionController
27 | pid: { p: 1.0, i: 0.0, d: 0.5 }
28 |
29 | right_steering_hinge_position_controller:
30 | type: effort_controllers/JointPositionController
31 | pid: { p: 1.0, i: 0.0, d: 0.5 }
32 |
--------------------------------------------------------------------------------
/launch/monza.master:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
33 |
34 |
35 |
42 |
43 |
44 |
--------------------------------------------------------------------------------
/launch/interlagos.master:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
33 |
34 |
35 |
42 |
43 |
44 |
--------------------------------------------------------------------------------
/launch/silverstone.master:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
33 |
34 |
35 |
42 |
43 |
44 |
--------------------------------------------------------------------------------
/utils/laser_to_pcd_ros.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python
2 |
3 | import sensor_msgs.point_cloud2 as pc2
4 | import rospy
5 | from sensor_msgs.msg import PointCloud2, LaserScan
6 | import laser_geometry.laser_geometry as lg
7 | import math
8 |
9 | rospy.init_node('laserscan_to_pointcloud')
10 |
11 | lp = lg.LaserProjection()
12 |
13 | pc_pub = rospy.Publisher('converted_pc', PointCloud2, queue_size = 1)
14 |
15 | def scan_cb(msg):
16 | # convert the message of type LaserScan to a PointCloud2
17 | pc2_msg = lp.projectLaser(msg)
18 |
19 | # now we can do something with the PointCloud2 for example:
20 | # publish it
21 | pc_pub.publish(pc2_msg)
22 |
23 | # convert it to a generator of the individual points
24 | point_generator = pc2.read_points(pc2_msg)
25 |
26 |
27 | # we can access a generator in a loop
28 | sum = 0.0
29 | num = 0
30 | for point in point_generator:
31 | if not math.isnan(point[2]):
32 | sum += point[2]
33 | num += 1
34 | # we can calculate the average z value for example
35 | print(str(sum/num))
36 |
37 | # or a list of the individual points which is less efficient
38 | point_list = pc2.read_points_list(pc2_msg)
39 |
40 | # we can access the point list with an index, each element is a namedtuple
41 | # we can access the elements by name, the generator does not yield namedtuples!
42 | # if we convert it to a list and back this possibility is lost
43 | print(point_list[len(point_list)/2].x)
44 |
45 |
46 |
47 | rospy.Subscriber('/car_1/scan', LaserScan, scan_cb, queue_size = 1)
48 | rospy.spin()
49 |
--------------------------------------------------------------------------------
/scripts/keyboard_teleop.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python
2 |
3 | import rospy
4 | import sys
5 | import select
6 | import termios
7 | import tty
8 |
9 | from ackermann_msgs.msg import AckermannDrive
10 |
11 | keyBindings = {'w':(1.0, 0.0), # move forward
12 | 'd':(1.0, -1.0), # move foward and right
13 | 'a':(1.0 , 1.0), # move forward and left
14 | 's':(-1.0, 0.0), # move reverse
15 | 'q':(0.0, 0.0)} # all stop
16 |
17 | speed_limit = 0.250
18 | angle_limit = 0.325
19 |
20 | def getKey():
21 | tty.setraw(sys.stdin.fileno())
22 | select.select([sys.stdin], [], [], 0)
23 | key = sys.stdin.read(1)
24 | termios.tcsetattr(sys.stdin, termios.TCSADRAIN, settings)
25 | return key
26 |
27 | def vels(speed, turn):
28 | return 'currently:\tspeed {}\tturn {}'.format(speed, turn)
29 |
30 | if __name__== '__main__':
31 | settings = termios.tcgetattr(sys.stdin)
32 | command_pub = rospy.Publisher('/{}/teleop/command'.format(str(sys.argv[1])), AckermannDrive, queue_size = 1)
33 | rospy.init_node('keyboard_teleop', anonymous = True)
34 |
35 | speed = 0.0
36 | angle = 0.0
37 | status = 0.0
38 |
39 | try:
40 | while True:
41 | key = getKey()
42 | if key in keyBindings.keys():
43 | speed = keyBindings[key][0]
44 | angle = keyBindings[key][1]
45 | else:
46 | speed = 0.0
47 | angle = 0.0
48 | if (key == '\x03'):
49 | break
50 | command = AckermannDrive();
51 | command.speed = speed * speed_limit
52 | command.steering_angle = angle * angle_limit
53 | command_pub.publish(command)
54 |
55 | except:
56 | print('raise exception: key binding error')
57 |
58 | finally:
59 | command = AckermannDrive();
60 | command.speed = speed * speed_limit
61 | command.steering_angle = angle * angle_limit
62 | command_pub.publish(command)
63 |
64 | termios.tcsetattr(sys.stdin, termios.TCSADRAIN, settings)
65 |
--------------------------------------------------------------------------------
/src/set_racecar_state.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python
2 |
3 | import rospy
4 | import rospkg
5 | import sys
6 |
7 | from gazebo_msgs.msg import ModelState
8 | from gazebo_msgs.srv import SetModelState
9 |
10 | car_name = str(sys.argv[1])
11 | acceptable_reset = ['true', 'True', '1', '1.0']
12 | loop_quit = False
13 | # x_pos = float(sys.argv[2])
14 | # y_pos = float(sys.argv[3])
15 | # z_pos = float(sys.argv[4])
16 | # x_vel = float(sys.argv[5])
17 | # y_vel = float(sys.argv[6])
18 | # z_vel = float(sys.argv[7])
19 | car_1_reset_pose = [-9.0, -5.0, 0.0]
20 | car_2_reset_pose = [-7.0, -5.0, 0.0]
21 | car_3_reset_pose = [-5.0, -5.0, 0.0]
22 | car_4_reset_pose = [-3.0, -5.0, 0.0]
23 | car_5_reset_pose = [-1.0, -5.0, 0.0]
24 | car_6_reset_pose = [ 1.0, -5.0, 0.0]
25 | car_7_reset_pose = [ 3.0, -5.0, 0.0]
26 | car_8_reset_pose = [ 5.0, -5.0, 0.0]
27 | frame_id = 'odom'
28 |
29 | rospy.set_param('/{}/reset_to_pit_stop'.format(car_name), 'False')
30 |
31 | def racecar_reset_state():
32 | rospy.init_node('racecar_reset_pit_stop', anonymous = True)
33 |
34 | state_msg = ModelState()
35 | state_msg.model_name = car_name
36 | exec('state_msg.pose.position.x = {}_reset_pose[0]'.format(car_name))
37 | exec('state_msg.pose.position.y = {}_reset_pose[1]'.format(car_name))
38 | exec('state_msg.pose.position.z = {}_reset_pose[2]'.format(car_name))
39 | state_msg.pose.orientation.x = 0.0
40 | state_msg.pose.orientation.y = 0.0
41 | state_msg.pose.orientation.z = 0.0
42 | state_msg.pose.orientation.w = 0.0
43 |
44 | rospy.wait_for_service('/gazebo/set_model_state')
45 | try:
46 | set_state = rospy.ServiceProxy('/gazebo/set_model_state', SetModelState)
47 | resp = set_state(state_msg)
48 |
49 | except rospy.ServiceException, error_msg:
50 | print("Service call failed: %s" % error_msg)
51 |
52 | if __name__ == '__main__':
53 | try:
54 | while not loop_quit:
55 | if str(rospy.get_param('/{}/reset_to_pit_stop'.format(car_name))) in acceptable_reset:
56 | racecar_reset_state()
57 | rospy.set_param('/{}/reset_to_pit_stop'.format(car_name), 'False')
58 | except rospy.ROSInterruptException:
59 | pass
60 |
--------------------------------------------------------------------------------
/config/one_car.launch.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
--------------------------------------------------------------------------------
/scripts/command_multiplexer.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python
2 |
3 | import rospy
4 | import sys
5 |
6 | from sensor_msgs.msg import Joy
7 | from ackermann_msgs.msg import AckermannDrive
8 |
9 | global current_command_topic
10 | global offboard_command
11 |
12 | car_name = str(sys.argv[1])
13 | listen_offboard = str(sys.argv[2])
14 | joy_angle_axis = 2
15 | joy_angle_scaler = 1.0
16 | joy_speed_axis = 1
17 | joy_speed_scaler = 0.5
18 | ctl_offboard_button = 7
19 | ctl_teleop_button = 6
20 | command_topic = ['offboard/command',
21 | 'teleop/command']
22 | log_message = 'control priority assigned to - {}'
23 | control_priority = ['JTX2_OFFBOARD',
24 | 'REMOTE_LOGITECH']
25 | current_command_topic = 'teleop/command'
26 | message_display = [False, False]
27 | multiplexer_pub = rospy.Publisher('/{}/multiplexer/command'.format(car_name), AckermannDrive, queue_size = 1)
28 | offboard_command = AckermannDrive()
29 |
30 | def offboard_callback(data):
31 | global offboard_command
32 | offboard_command.steering_angle = -1.0 * data.steering_angle
33 | offboard_command.speed = data.speed
34 |
35 | def joy_command_callback(data):
36 | global current_command_topic
37 | global offboard_command
38 | passthrough_command = AckermannDrive()
39 | # listen to control transfer commands
40 | if data.buttons[ctl_offboard_button] and not data.buttons[ctl_teleop_button]:
41 | if not message_display[0]:
42 | rospy.loginfo(log_message.format(control_priority[0]))
43 | message_display[0] = True
44 | message_display[1] = False
45 | if current_command_topic != command_topic[0]:
46 | current_command_topic = command_topic[0]
47 | if not data.buttons[ctl_offboard_button] and data.buttons[ctl_teleop_button]:
48 | if not message_display[1]:
49 | rospy.loginfo(log_message.format(control_priority[1]))
50 | message_display[0] = False
51 | message_display[1] = True
52 | if current_command_topic != command_topic[1]:
53 | current_command_topic = command_topic[1]
54 | if current_command_topic == command_topic[1]:
55 | # identify and scale raw command data
56 | passthrough_command.steering_angle = data.axes[joy_angle_axis] * joy_angle_scaler
57 | passthrough_command.speed = data.axes[joy_speed_axis] * joy_speed_scaler
58 | elif current_command_topic == command_topic[0] and listen_offboard == 'true':
59 | passthrough_command = offboard_command
60 | multiplexer_pub.publish(passthrough_command)
61 |
62 | if __name__ == '__main__':
63 | try:
64 | rospy.init_node('command_multiplexer', anonymous = True)
65 | if listen_offboard == 'true':
66 | rospy.Subscriber('/{}/offboard/command'.format(car_name), AckermannDrive, offboard_callback)
67 | rospy.Subscriber('/{}/joy'.format(car_name), Joy, joy_command_callback)
68 | rospy.spin()
69 | except rospy.ROSInterruptException:
70 | pass
71 |
--------------------------------------------------------------------------------
/config/vehicle_class.launch.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
28 |
29 |
30 |
35 |
36 |
37 |
41 |
42 |
43 |
44 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/package.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | f1tenth-sim
4 | 0.2.0
5 | UVA F1/10 Autonomous Racecar Simulator
6 |
7 |
8 |
9 |
10 | Varundev Suresh Babu
11 |
12 |
13 |
14 |
15 |
16 | TODO
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 | catkin
52 | gazebo_ros
53 | geometry_msgs
54 | nav_msgs
55 | rospy
56 | sensor_msgs
57 | std_msgs
58 | tf
59 | message_generation
60 |
61 | gazebo_ros
62 | geometry_msgs
63 | nav_msgs
64 | rospy
65 | sensor_msgs
66 | std_msgs
67 | tf
68 |
69 | gazebo_ros
70 | geometry_msgs
71 | nav_msgs
72 | rospy
73 | sensor_msgs
74 | std_msgs
75 | tf
76 | message_runtime
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
--------------------------------------------------------------------------------
/src/control_plugin.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python
2 |
3 | import rospy
4 | import math
5 | import sys
6 | import tf2_ros
7 |
8 | from std_msgs.msg import Header
9 | from std_msgs.msg import Bool
10 | from std_msgs.msg import Float64
11 | from ackermann_msgs.msg import AckermannDrive
12 | from geometry_msgs.msg import Point32
13 | from geometry_msgs.msg import PolygonStamped
14 | from geometry_msgs.msg import Transform
15 | from geometry_msgs.msg import TransformStamped
16 | from nav_msgs.msg import Odometry
17 |
18 | # vehicle name
19 |
20 | car_name = str(sys.argv[1])
21 | x_offset = float(sys.argv[2])
22 | y_offset = float(sys.argv[3])
23 |
24 | # subscriber topics
25 |
26 | gazebo_odom_topic = '/{}/ground_truth'.format(car_name)
27 | command_topic = '/{}/multiplexer/command'.format(car_name)
28 |
29 | # publisher topics
30 |
31 | odom_pub_topic = '/{}/base/odom'.format(car_name)
32 | footprint_topic = '/{}/base/footprint'.format(car_name)
33 |
34 | # control topics
35 |
36 | LRW_topic = '/{}/left_rear_wheel_velocity_controller/command'.format(car_name)
37 | RRW_topic = '/{}/right_rear_wheel_velocity_controller/command'.format(car_name)
38 | LFW_topic = '/{}/left_front_wheel_velocity_controller/command'.format(car_name)
39 | RFW_topic = '/{}/right_front_wheel_velocity_controller/command'.format(car_name)
40 | LSH_topic = '/{}/left_steering_hinge_position_controller/command'.format(car_name)
41 | RSH_topic = '/{}/right_steering_hinge_position_controller/command'.format(car_name)
42 |
43 | # frame names
44 |
45 | odom_frame = 'odom'
46 | base_frame = '{}_base_link'.format(car_name)
47 |
48 | # information publishers
49 |
50 | footprint_pub = rospy.Publisher(footprint_topic, PolygonStamped, queue_size = 1)
51 | odom_pub = rospy.Publisher(odom_pub_topic, Odometry, queue_size = 1)
52 | tf_pub = tf2_ros.TransformBroadcaster()
53 |
54 | # control publishers
55 |
56 | pub_vel_LRW = rospy.Publisher(LRW_topic, Float64, queue_size = 1)
57 | pub_vel_RRW = rospy.Publisher(RRW_topic, Float64, queue_size = 1)
58 | pub_vel_LFW = rospy.Publisher(LFW_topic, Float64, queue_size = 1)
59 | pub_vel_RFW = rospy.Publisher(RFW_topic, Float64, queue_size = 1)
60 | pub_pos_LSH = rospy.Publisher(LSH_topic, Float64, queue_size = 1)
61 | pub_pos_RSH = rospy.Publisher(RSH_topic, Float64, queue_size = 1)
62 |
63 | # footprint parameters
64 |
65 | global seq
66 |
67 | seq = 0
68 | footprint = PolygonStamped()
69 |
70 | side_A = Point32()
71 | side_B = Point32()
72 | side_C = Point32()
73 | side_D = Point32()
74 | side_E = Point32()
75 |
76 | [side_A.x, side_A.y, side_A.z] = [-0.1, -0.2, 0.0]
77 | [side_B.x, side_B.y, side_B.z] = [ 0.5, -0.2, 0.0]
78 | [side_C.x, side_C.y, side_C.z] = [ 0.6, 0.0, 0.0]
79 | [side_D.x, side_D.y, side_D.z] = [ 0.5, 0.2, 0.0]
80 | [side_E.x, side_E.y, side_E.z] = [-0.1, 0.2, 0.0]
81 |
82 | footprint.header.frame_id = base_frame
83 | footprint.polygon.points = [side_A, side_B, side_C, side_D, side_E]
84 |
85 | # footprint visualizer
86 |
87 | def footprint_visualizer():
88 |
89 | global seq
90 |
91 | footprint.header.seq = seq
92 | seq = seq + 1
93 | footprint.header.stamp = rospy.Time.now()
94 | footprint_pub.publish(footprint)
95 |
96 | def odom_callback(data):
97 |
98 | odom = Odometry()
99 | odom.header.frame_id = odom_frame
100 | odom.child_frame_id = base_frame
101 | odom.header.stamp = rospy.Time.now()
102 | odom.pose = data.pose
103 | odom.pose.pose.position.x = odom.pose.pose.position.x - x_offset
104 | odom.pose.pose.position.y = odom.pose.pose.position.y - y_offset
105 | odom.twist = data.twist
106 |
107 | tf = TransformStamped(header = Header(
108 | frame_id = odom.header.frame_id,
109 | stamp = odom.header.stamp),
110 | child_frame_id = odom.child_frame_id,
111 | transform = Transform(
112 | translation = odom.pose.pose.position,
113 | rotation = odom.pose.pose.orientation))
114 |
115 | # visualize footprint everytime odom changes
116 |
117 | footprint_visualizer()
118 |
119 | odom_pub.publish(odom)
120 | tf_pub.sendTransform(tf)
121 |
122 | # command variables
123 |
124 | global previous_speed
125 |
126 | previous_speed = 0.0
127 | min_speed = 0.0
128 | max_speed = 80.0 # 100.0
129 | speed_delta = 5.0 # 1.25
130 | previous_speed = 0.0
131 |
132 | # command callback
133 |
134 | def command_callback(data):
135 |
136 | global previous_speed
137 |
138 | steering_angle = Float64()
139 | speed = Float64()
140 |
141 | steering_angle.data = data.steering_angle * 0.65
142 | speed.data = data.speed * max_speed
143 |
144 | '''
145 | if speed.data >= previous_speed + speed_delta:
146 | speed.data = previous_speed + speed_delta
147 | elif speed.data <= previous_speed - speed_delta:
148 | speed.data = previous_speed - speed_delta
149 |
150 | if speed.data > max_speed:
151 | speed.data = max_speed
152 | elif speed.data < min_speed:
153 | speed.data = min_speed
154 |
155 | previous_speed = speed.data
156 |
157 | if abs(speed.data) < speed_delta:
158 | speed.data = 0.0
159 | previous_speed = 0.0
160 | '''
161 |
162 | pub_vel_LRW.publish(speed)
163 | pub_vel_RRW.publish(speed)
164 | pub_vel_LFW.publish(speed)
165 | pub_vel_RFW.publish(speed)
166 |
167 | pub_pos_LSH.publish(steering_angle)
168 | pub_pos_RSH.publish(steering_angle)
169 |
170 | if __name__ == '__main__':
171 |
172 | try:
173 |
174 | rospy.init_node('control_plugin', anonymous = True)
175 |
176 | rospy.Subscriber(gazebo_odom_topic, Odometry, odom_callback)
177 | rospy.Subscriber(command_topic, AckermannDrive, command_callback)
178 |
179 | rospy.spin()
180 |
181 | except rospy.ROSInterruptException:
182 |
183 | pass
184 |
--------------------------------------------------------------------------------
/rviz/TA_inst_demo_car.rviz:
--------------------------------------------------------------------------------
1 | Panels:
2 | - Class: rviz/Displays
3 | Help Height: 78
4 | Name: Displays
5 | Property Tree Widget:
6 | Expanded:
7 | - /Global Options1
8 | - /Status1
9 | Splitter Ratio: 0.5
10 | Tree Height: 634
11 | - Class: rviz/Selection
12 | Name: Selection
13 | - Class: rviz/Tool Properties
14 | Expanded:
15 | - /2D Pose Estimate1
16 | - /2D Nav Goal1
17 | - /Publish Point1
18 | Name: Tool Properties
19 | Splitter Ratio: 0.5886790156364441
20 | - Class: rviz/Views
21 | Expanded:
22 | - /Current View1
23 | Name: Views
24 | Splitter Ratio: 0.5
25 | - Class: rviz/Time
26 | Experimental: false
27 | Name: Time
28 | SyncMode: 0
29 | SyncSource: LaserScan
30 | Preferences:
31 | PromptSaveOnExit: true
32 | Toolbars:
33 | toolButtonStyle: 2
34 | Visualization Manager:
35 | Class: ""
36 | Displays:
37 | - Alpha: 0.5
38 | Cell Size: 1
39 | Class: rviz/Grid
40 | Color: 160; 160; 164
41 | Enabled: true
42 | Line Style:
43 | Line Width: 0.029999999329447746
44 | Value: Lines
45 | Name: Grid
46 | Normal Cell Count: 0
47 | Offset:
48 | X: 0
49 | Y: 0
50 | Z: 0
51 | Plane: XY
52 | Plane Cell Count: 10
53 | Reference Frame:
54 | Value: true
55 | - Alpha: 1
56 | Class: rviz/Polygon
57 | Color: 25; 255; 0
58 | Enabled: true
59 | Name: Polygon
60 | Topic: /TA_inst_demo_car/base/footprint
61 | Unreliable: false
62 | Value: true
63 | - Alpha: 1
64 | Autocompute Intensity Bounds: true
65 | Autocompute Value Bounds:
66 | Max Value: 10
67 | Min Value: -10
68 | Value: true
69 | Axis: Z
70 | Channel Name: intensity
71 | Class: rviz/LaserScan
72 | Color: 255; 255; 255
73 | Color Transformer: Intensity
74 | Decay Time: 0
75 | Enabled: true
76 | Invert Rainbow: false
77 | Max Color: 255; 255; 255
78 | Max Intensity: 0
79 | Min Color: 0; 0; 0
80 | Min Intensity: 0
81 | Name: LaserScan
82 | Position Transformer: XYZ
83 | Queue Size: 10
84 | Selectable: true
85 | Size (Pixels): 3
86 | Size (m): 0.009999999776482582
87 | Style: Flat Squares
88 | Topic: /TA_inst_demo_car/scan
89 | Unreliable: false
90 | Use Fixed Frame: true
91 | Use rainbow: true
92 | Value: true
93 | - Class: rviz/Image
94 | Enabled: true
95 | Image Topic: /TA_inst_demo_car/camera/image
96 | Max Value: 1
97 | Median window: 5
98 | Min Value: 0
99 | Name: Image
100 | Normalize Range: true
101 | Queue Size: 2
102 | Transport Hint: raw
103 | Unreliable: false
104 | Value: true
105 | Enabled: true
106 | Global Options:
107 | Background Color: 48; 48; 48
108 | Default Light: true
109 | Fixed Frame: TA_inst_demo_car_base_link
110 | Frame Rate: 30
111 | Name: root
112 | Tools:
113 | - Class: rviz/Interact
114 | Hide Inactive Objects: true
115 | - Class: rviz/MoveCamera
116 | - Class: rviz/Select
117 | - Class: rviz/FocusCamera
118 | - Class: rviz/Measure
119 | - Class: rviz/SetInitialPose
120 | Theta std deviation: 0.2617993950843811
121 | Topic: /initialpose
122 | X std deviation: 0.5
123 | Y std deviation: 0.5
124 | - Class: rviz/SetGoal
125 | Topic: /move_base_simple/goal
126 | - Class: rviz/PublishPoint
127 | Single click: true
128 | Topic: /clicked_point
129 | Value: true
130 | Views:
131 | Current:
132 | Class: rviz/Orbit
133 | Distance: 7
134 | Enable Stereo Rendering:
135 | Stereo Eye Separation: 0.05999999865889549
136 | Stereo Focal Distance: 1
137 | Swap Stereo Eyes: false
138 | Value: false
139 | Focal Point:
140 | X: 0
141 | Y: 0
142 | Z: 0
143 | Focal Shape Fixed Size: true
144 | Focal Shape Size: 0.05000000074505806
145 | Invert Z Axis: false
146 | Name: Current View
147 | Near Clip Distance: 0.009999999776482582
148 | Pitch: 0.785398006439209
149 | Target Frame:
150 | Value: Orbit (rviz)
151 | Yaw: 3.141590118408203
152 | Saved: ~
153 | Window Geometry:
154 | Displays:
155 | collapsed: false
156 | Height: 960
157 | Hide Left Dock: false
158 | Hide Right Dock: false
159 | Image:
160 | collapsed: false
161 | QMainWindow State: 000000ff00000000fd00000004000000000000015600000322fc0200000007fb0000001200530065006c0065006300740069006f006e00000001e10000009b0000005c00fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261000000010000032100000322fc0200000004fb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000000a0049006d006100670065010000003d000001d20000001600fffffffc000002150000014a000000e60100001cfa000000010100000002fb000000100044006900730070006c0061007900730100000000ffffffff0000015600fffffffb0000000a0056006900650077007301000006710000010f0000010000fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b200000000000000000000000200000490000000a9fc0100000001fb0000000a00560069006500770073030000004e00000080000002e10000019700000003000007800000003efc0100000002fb0000000800540069006d0065010000000000000780000002eb00fffffffb0000000800540069006d00650100000000000004500000000000000000000004590000032200000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000
162 | Selection:
163 | collapsed: false
164 | Time:
165 | collapsed: false
166 | Tool Properties:
167 | collapsed: false
168 | Views:
169 | collapsed: false
170 | Width: 1920
171 | X: 0
172 | Y: 27
173 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | ## Simulator Paper
2 |
3 | Please cite the paper below if you use this simulator for your research:
4 | ```
5 | @inproceedings{babu2020f1tenth,
6 | title={f1tenth. dev-An Open-source ROS based F1/10 Autonomous Racing Simulator},
7 | author={Babu, Varundev Suresh and Behl, Madhur},
8 | booktitle={2020 IEEE 16th International Conference on Automation Science and Engineering (CASE)},
9 | pages={1614--1620},
10 | year={2020},
11 | organization={IEEE}
12 | }
13 | ```
14 |
15 | ## Installation and Setup
16 |
17 | The simulator has been tested on a variety of hardware configurations, and while Gazebo and ROS dependencies work with bare minimum hardware requirements, the essence of an autonomous racing simulator requires a real-time factor of at-least 0.85. For this reason, we suggest that your local machine meet the requirements stated in the following table.
18 |
19 | | | Suggested Minimum Requirements |
20 | |:----------------:|:------------------------------:|
21 | | Operating System | Ubuntu 18.04 (Bionic) 64-bit |
22 | | Memory | 16 GiB DDR4 |
23 | | GPU | NVIDIA GTX-1660 |
24 |
25 | The simulator itself depends on libraries, packages and objects from ROS and Gazebo. The current version of the simulator uses ROS Melodic and Gazebo 9; along with certain other libraries and their python bindings. Before proceeding with the installation steps in this document, check if your local machine already has the full-desktop version of ROS Melodic installed. If not, follow the instructions provided in this [link](http://wiki.ros.org/melodic/Installation/Ubuntu). When you get to section 1.4 of the ROS installation tutorial, choose the first option: `ros-melodic-desktop-full`. Your local machine will now have the basic dependencies installed. The next steps of the installation tutorial are critical and must be followed in the shown sequence.
26 |
27 | First, we begin by installing the ROS and Gazebo packages that are not installed by default using the above method. This includes SLAM packages, ROS navigation and the MIT GPU particle filter. Some of these packages have a Debian installation candidates and the others have to be downloaded as source codes and locally compiled. We install the Debian packages first; open a new terminal and enter the following command:
28 |
29 | ```console
30 | user@ros-computer: sudo apt-get install -y ros-melodic-navigation ros-melodic-teb-local-planner* ros-melodic-ros-control ros-melodic-ros-controllers ros-melodic-gazebo-ros-control ros-melodic-ackermann-msgs ros-melodic-serial qt4-default
31 | ```
32 |
33 | Once the above installation process is completed, the simulator source along with the particle filter and mapping package will have to be downloaded. To do this, we first need to create a ROS workspace. Open a new terminal and enter the following commands in the given sequence:
34 |
35 | ```console
36 | user@ros-computer: mkdir -p autosim_ws/src
37 | user@ros-computer: cd autosim_ws/src
38 | user@ros-computer: catkin_init_workspace
39 | ```
40 |
41 | The simulator workspace is now initialized. The source for the packages will now have to be placed in the `src` directory to be compiled later. In the same terminal, enter the following commands to pull the sources:
42 |
43 | ```console
44 | user@ros-computer: git clone https://github.com/f1tenth-dev/simulator
45 | user@ros-computer: git clone https://github.com/mit-racecar/particle_filter
46 | user@ros-computer: git clone https://github.com/kctess5/range_libc
47 | user@ros-computer: git clone https://github.com/tu-darmstadt-ros-pkg/hector_slam
48 | ```
49 |
50 | The source for the required packages, including the simulator, are now in the workspace. The simulator depends on the GPU particle filter developed by the MIT RACECAR team and this package has to be configured before compiling the ROS packages. Navigate to the `range_libc` folder to compile the library necessary for the particle filter. Open a new terminal and enter the following commands:
51 |
52 | ```console
53 | user@ros-computer: sudo pip install cython
54 | user@ros-computer: cd autosim_ws/src/range_libc/pywrapper
55 | ```
56 |
57 | There are two methods for installing the particle filter; with GPU support and without GPU support. We recommend using the package with GPU support, but leave the decision to you.
58 |
59 | **Installing with GPU Support**
60 | Keep this terminal open and pay special attention to the next step. The particle filter package depends heavily on the GPU and its architecture, so it becomes very important to match the architecture of the GPU in your local machine to the one listed in the configuration of `setup.py`. We are particularly interested in the `sm_xx` value associated with the GPU and more information can be found in this [article](https://arnon.dk/matching-sm-architectures-arch-and-gencode-for-various-nvidia-cards/) which is a good reference for understanding types NVIDIA's GPU. Once the architecture type has been identified, go back to the terminal and open the setup file using an editor of your choice and navigate to line 96:
61 |
62 | ```python
63 | nvcc_flags = ['-arch=sm_20', '--ptxas-options=-v', '-c', '--compiler-options', "'-fPIC'", "-w","-std=c++11"]
64 | ```
65 |
66 | Replace `-arch=sm_20` with the `-arch=sm_xx` value from the article in the link provided above. Once you have made the changes, save the file and exit back to the terminal and enter the following command to compile the library and follow the instruction on the screen:
67 |
68 | ```console
69 | user@ros-computer: ./compile_with_cuda.sh
70 | ```
71 |
72 | **Installing without GPU Support**
73 | In the same terminal, enter the following command and follow the instructions in the screen:
74 |
75 | ```console
76 | user@ros-computer: ./compile.sh
77 | ```
78 |
79 | With the final dependency installed, the installation process can now be continued using ROS `catkin_make`. This process is relatively simple; open a new terminal and enter the following command:
80 |
81 | ```console
82 | user@ros-computer: cd autosim_ws
83 | user@ros-computer: catkin_make install
84 | ```
85 |
86 | The installation process in now complete, and the workspace needs to be sourced. Sourcing the workspace permanently helps launching the simulator easier. To do this, the `.bashrc` file in the home directory has to be modified; open a new terminal and enter the following command:
87 |
88 | ```console
89 | user@ros-computer: echo "source ~/autosim_ws/devel/setup.bash" >> ~/.bashrc
90 | user@ros-computer: source ~/.bashrc
91 | ```
92 |
93 | You have now completed the steps necessary to install the simulator. The tutorial section will help you get started with the simulator.
94 |
95 | **Uninstalling the Simulator**
96 | Removing the simulator from your local machine is a two-step process: first remove the line from `~/.bashrc` that sources the simulator workspace and then delete the `autosim_ws` directory.
97 |
--------------------------------------------------------------------------------
/world/monza_track.world:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 1
5 | 0 0 100 0 -0 0
6 | 0.8 0.8 0.8 1
7 | 0.1 0.1 0.1 1
8 |
9 | 1000
10 | 0.9
11 | 0.01
12 | 0.001
13 |
14 | -0.5 0.5 -1
15 |
16 |
17 | 1
18 |
19 |
20 |
21 |
22 | 0 0 1
23 | 100 100
24 |
25 |
26 |
27 |
28 |
29 | 100
30 | 50
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 | 10
42 |
43 |
44 | 0
45 |
46 |
47 | 0 0 1
48 | 100 100
49 |
50 |
51 |
52 |
56 |
57 |
58 | 0
59 | 0
60 | 1
61 | 0
62 |
63 |
64 | 0 0 -9.8
65 | 6e-06 2.3e-05 -4.2e-05
66 |
67 |
68 | 0.001
69 | 1
70 | 1000
71 |
72 |
73 | 0.4 0.4 0.4 1
74 | 0.7 0.7 0.7 1
75 | 1
76 |
77 |
78 | EARTH_WGS84
79 | 0
80 | 0
81 | 0
82 | 0
83 |
84 |
85 | 1
86 |
87 |
88 |
89 |
90 | 125 125 0.1
91 |
92 |
93 | 10
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 | 0
109 |
110 |
111 | 125 125 0.1
112 |
113 |
114 |
115 |
120 |
121 |
122 | 0
123 | 0
124 | 1
125 | 0
126 |
127 | -0.719505 0.551979 0 0 -0 0
128 |
129 |
130 | 0 0 0 0 -0 0
131 | 1
132 |
133 |
134 |
135 |
136 | model://monza_track/monza_track.stl
137 | 0.4 0.4 0.2
138 |
139 |
140 | 10
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 | model://monza_track/monza_track.stl
158 | 0.4 0.4 0.0375
159 |
160 |
161 |
162 | 0
163 | 0
164 | 0
165 |
166 |
167 |
170 |
171 |
172 | 1236 777000000
173 | 43 111819958
174 | 1618406125 146331499
175 | 42995
176 |
177 | 0 0 0 0 -0 0
178 | 1 1 1
179 |
180 | 0 0 0 0 -0 0
181 | 0 0 0 0 -0 0
182 | 0 0 0 0 -0 0
183 | 0 0 0 0 -0 0
184 |
185 |
186 |
187 | 0 0 0 0 -0 0
188 | 1 1 1
189 |
190 | 0 0 0 0 -0 0
191 | 0 0 0 0 -0 0
192 | 0 0 0 0 -0 0
193 | 0 0 0 0 -0 0
194 |
195 |
196 |
197 | -116.114 101.089 0 0 0 -1.57079
198 | 1 1 1
199 |
200 | -116.114 101.089 0 0 0 -1.57079
201 | 0 0 0 0 -0 0
202 | 0 0 0 0 -0 0
203 | 0 0 0 0 -0 0
204 |
205 |
206 |
207 | 0 0 100 0 -0 0
208 |
209 |
210 |
211 |
212 | -107.135 -8.56534 165.62 -0 0.913798 0.058154
213 | orbit
214 | perspective
215 |
216 |
217 |
218 |
219 |
--------------------------------------------------------------------------------
/world/interlagos_track.world:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 1
5 | 0 0 100 0 -0 0
6 | 0.8 0.8 0.8 1
7 | 0.1 0.1 0.1 1
8 |
9 | 1000
10 | 0.9
11 | 0.01
12 | 0.001
13 |
14 | -0.5 0.5 -1
15 |
16 |
17 | 1
18 |
19 |
20 |
21 |
22 | 0 0 1
23 | 100 100
24 |
25 |
26 |
27 |
28 |
29 | 100
30 | 50
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 | 10
42 |
43 |
44 | 0
45 |
46 |
47 | 0 0 1
48 | 100 100
49 |
50 |
51 |
52 |
56 |
57 |
58 | 0
59 | 0
60 | 1
61 | 0
62 |
63 |
64 | 0 0 -9.8
65 | 6e-06 2.3e-05 -4.2e-05
66 |
67 |
68 | 0.001
69 | 1
70 | 1000
71 |
72 |
73 | 0.4 0.4 0.4 1
74 | 0.7 0.7 0.7 1
75 | 1
76 |
77 |
78 | EARTH_WGS84
79 | 0
80 | 0
81 | 0
82 | 0
83 |
84 |
85 | 1
86 |
87 |
88 |
89 |
90 | 125 125 0.1
91 |
92 |
93 | 10
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 | 0
109 |
110 |
111 | 125 125 0.1
112 |
113 |
114 |
115 |
120 |
121 |
122 | 0
123 | 0
124 | 1
125 | 0
126 |
127 | -0.719505 0.551979 0 0 -0 0
128 |
129 |
130 | 0 0 0 0 -0 0
131 | 1
132 |
133 |
134 |
135 |
136 | model://interlagos_track/interlagos_track.stl
137 | 0.4 0.4 0.2
138 |
139 |
140 | 10
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 | model://interlagos_track/interlagos_track.stl
158 | 0.4 0.4 0.0375
159 |
160 |
161 |
162 | 0
163 | 0
164 | 0
165 |
166 |
167 |
170 |
171 |
172 | 1193 782000000
173 | 61 557850471
174 | 1618354513 629009662
175 | 61396
176 |
177 | 0 0 0 0 -0 0
178 | 1 1 1
179 |
180 | 0 0 0 0 -0 0
181 | 0 0 0 0 -0 0
182 | 0 0 0 0 -0 0
183 | 0 0 0 0 -0 0
184 |
185 |
186 |
187 | 0 0 0 0 -0 0
188 | 1 1 1
189 |
190 | 0 0 0 0 -0 0
191 | 0 0 0 0 -0 0
192 | 0 0 0 0 -0 0
193 | 0 0 0 0 -0 0
194 |
195 |
196 |
197 | -206.696 193.336 0 0 0 -1.57079
198 | 1 1 1
199 |
200 | -206.696 193.336 0 0 0 -1.57079
201 | 0 0 0 0 -0 0
202 | 0 0 0 0 -0 0
203 | 0 0 0 0 -0 0
204 |
205 |
206 |
207 | 0 0 100 0 -0 0
208 |
209 |
210 |
211 |
212 | -241.928 -6.52467 383.506 -0 0.913798 0.058154
213 | orbit
214 | perspective
215 |
216 |
217 |
218 |
219 |
--------------------------------------------------------------------------------
/world/silverstone_track.world:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 1
5 | 0 0 100 0 -0 0
6 | 0.8 0.8 0.8 1
7 | 0.1 0.1 0.1 1
8 |
9 | 1000
10 | 0.9
11 | 0.01
12 | 0.001
13 |
14 | -0.5 0.5 -1
15 |
16 |
17 | 1
18 |
19 |
20 |
21 |
22 | 0 0 1
23 | 100 100
24 |
25 |
26 |
27 |
28 |
29 | 100
30 | 50
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 | 10
42 |
43 |
44 | 0
45 |
46 |
47 | 0 0 1
48 | 100 100
49 |
50 |
51 |
52 |
56 |
57 |
58 | 0
59 | 0
60 | 1
61 | 0
62 |
63 |
64 | 0 0 -9.8
65 | 6e-06 2.3e-05 -4.2e-05
66 |
67 |
68 | 0.001
69 | 1
70 | 1000
71 |
72 |
73 | 0.4 0.4 0.4 1
74 | 0.7 0.7 0.7 1
75 | 1
76 |
77 |
78 | EARTH_WGS84
79 | 0
80 | 0
81 | 0
82 | 0
83 |
84 |
85 | 1
86 |
87 |
88 |
89 |
90 | 125 125 0.1
91 |
92 |
93 | 10
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 | 0
109 |
110 |
111 | 125 125 0.1
112 |
113 |
114 |
115 |
120 |
121 |
122 | 0
123 | 0
124 | 1
125 | 0
126 |
127 | -0.719505 0.551979 0 0 -0 0
128 |
129 |
130 | 0 0 0 0 -0 0
131 | 1
132 |
133 |
134 |
135 |
136 | model://silverstone_track/silverstone_track.stl
137 | 0.4 0.4 0.2
138 |
139 |
140 | 10
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 | model://silverstone_track/silverstone_track.stl
158 | 0.4 0.4 0.0375
159 |
160 |
161 |
162 | 0
163 | 0
164 | 0
165 |
166 |
167 |
170 |
171 |
172 | 1236 773000000
173 | 43 109411629
174 | 1618406182 493106155
175 | 42991
176 |
177 | 0 0 0 0 -0 0
178 | 1 1 1
179 |
180 | 0 0 0 0 -0 0
181 | 0 0 0 0 -0 0
182 | 0 0 0 0 -0 0
183 | 0 0 0 0 -0 0
184 |
185 |
186 |
187 | 0 0 0 0 -0 0
188 | 1 1 1
189 |
190 | 0 0 0 0 -0 0
191 | 0 0 0 0 -0 0
192 | 0 0 0 0 -0 0
193 | 0 0 0 0 -0 0
194 |
195 |
196 |
197 | -104.501 99.7259 0 0 0 -1.57079
198 | 1 1 1
199 |
200 | -104.501 99.7259 0 0 0 -1.57079
201 | 0 0 0 0 -0 0
202 | 0 0 0 0 -0 0
203 | 0 0 0 0 -0 0
204 |
205 |
206 |
207 | 0 0 100 0 -0 0
208 |
209 |
210 |
211 |
212 | -209.981 -0.57011 332.222 0 1.0138 0.226154
213 | orbit
214 | perspective
215 |
216 |
217 |
218 |
219 |
--------------------------------------------------------------------------------
/rviz/car_2.rviz:
--------------------------------------------------------------------------------
1 | Panels:
2 | - Class: rviz/Displays
3 | Help Height: 78
4 | Name: Displays
5 | Property Tree Widget:
6 | Expanded:
7 | - /Car_21
8 | - /Car_21/Odometry1/Shape1
9 | - /Global Parematers1
10 | Splitter Ratio: 0.6294117569923401
11 | Tree Height: 161
12 | - Class: rviz/Selection
13 | Name: Selection
14 | - Class: rviz/Tool Properties
15 | Expanded:
16 | - /2D Pose Estimate1
17 | - /2D Nav Goal1
18 | - /Publish Point1
19 | Name: Tool Properties
20 | Splitter Ratio: 0.5886790156364441
21 | - Class: rviz/Views
22 | Expanded:
23 | - /Current View1
24 | Name: Views
25 | Splitter Ratio: 0.5
26 | - Class: rviz/Time
27 | Experimental: false
28 | Name: Time
29 | SyncMode: 0
30 | SyncSource: LaserScan
31 | Preferences:
32 | PromptSaveOnExit: true
33 | Toolbars:
34 | toolButtonStyle: 2
35 | Visualization Manager:
36 | Class: ""
37 | Displays:
38 | - Class: rviz/Group
39 | Displays:
40 | - Class: rviz/Image
41 | Enabled: true
42 | Image Topic: /car_2/camera/image
43 | Max Value: 1
44 | Median window: 5
45 | Min Value: 0
46 | Name: Chase Camera
47 | Normalize Range: true
48 | Queue Size: 2
49 | Transport Hint: compressed
50 | Unreliable: false
51 | Value: true
52 | - Alpha: 1
53 | Autocompute Intensity Bounds: true
54 | Autocompute Value Bounds:
55 | Max Value: 10
56 | Min Value: -10
57 | Value: true
58 | Axis: Z
59 | Channel Name: intensity
60 | Class: rviz/LaserScan
61 | Color: 255; 255; 255
62 | Color Transformer: Intensity
63 | Decay Time: 0
64 | Enabled: true
65 | Invert Rainbow: false
66 | Max Color: 255; 255; 255
67 | Max Intensity: 0
68 | Min Color: 0; 0; 0
69 | Min Intensity: 0
70 | Name: LaserScan
71 | Position Transformer: XYZ
72 | Queue Size: 10
73 | Selectable: true
74 | Size (Pixels): 3
75 | Size (m): 0.02500000037252903
76 | Style: Flat Squares
77 | Topic: /car_2/scan
78 | Unreliable: false
79 | Use Fixed Frame: true
80 | Use rainbow: true
81 | Value: true
82 | - Alpha: 1
83 | Class: rviz/Polygon
84 | Color: 25; 255; 0
85 | Enabled: true
86 | Name: Base Footprint
87 | Topic: /car_2/base/footprint
88 | Unreliable: false
89 | Value: true
90 | - Angle Tolerance: 0.10000000149011612
91 | Class: rviz/Odometry
92 | Covariance:
93 | Orientation:
94 | Alpha: 0.5
95 | Color: 255; 255; 127
96 | Color Style: Unique
97 | Frame: Local
98 | Offset: 1
99 | Scale: 1
100 | Value: true
101 | Position:
102 | Alpha: 0.30000001192092896
103 | Color: 204; 51; 204
104 | Scale: 1
105 | Value: true
106 | Value: true
107 | Enabled: true
108 | Keep: 1
109 | Name: Odometry
110 | Position Tolerance: 0.10000000149011612
111 | Shape:
112 | Alpha: 1
113 | Axes Length: 1
114 | Axes Radius: 0.10000000149011612
115 | Color: 239; 41; 41
116 | Head Length: 0.25
117 | Head Radius: 0.10000000149011612
118 | Shaft Length: 0.5
119 | Shaft Radius: 0.05000000074505806
120 | Value: Arrow
121 | Topic: /car_2/base/odom
122 | Unreliable: false
123 | Value: true
124 | Enabled: true
125 | Name: Car_2
126 | - Class: rviz/Group
127 | Displays:
128 | - Alpha: 0.699999988079071
129 | Class: rviz/Map
130 | Color Scheme: map
131 | Draw Behind: false
132 | Enabled: true
133 | Name: Map
134 | Topic: /map
135 | Unreliable: false
136 | Use Timestamp: false
137 | Value: true
138 | Enabled: true
139 | Name: Global Parematers
140 | Enabled: true
141 | Global Options:
142 | Background Color: 48; 48; 48
143 | Default Light: true
144 | Fixed Frame: car_1_base_link
145 | Frame Rate: 30
146 | Name: root
147 | Tools:
148 | - Class: rviz/Interact
149 | Hide Inactive Objects: true
150 | - Class: rviz/MoveCamera
151 | - Class: rviz/Select
152 | - Class: rviz/FocusCamera
153 | - Class: rviz/Measure
154 | - Class: rviz/SetInitialPose
155 | Theta std deviation: 0.2617993950843811
156 | Topic: /initialpose
157 | X std deviation: 0.5
158 | Y std deviation: 0.5
159 | - Class: rviz/SetGoal
160 | Topic: /move_base_simple/goal
161 | - Class: rviz/PublishPoint
162 | Single click: true
163 | Topic: /clicked_point
164 | Value: true
165 | Views:
166 | Current:
167 | Class: rviz/Orbit
168 | Distance: 10.540091514587402
169 | Enable Stereo Rendering:
170 | Stereo Eye Separation: 0.05999999865889549
171 | Stereo Focal Distance: 1
172 | Swap Stereo Eyes: false
173 | Value: false
174 | Focal Point:
175 | X: 0.8401058912277222
176 | Y: -4.1259942054748535
177 | Z: -1.7462449073791504
178 | Focal Shape Fixed Size: true
179 | Focal Shape Size: 0.05000000074505806
180 | Invert Z Axis: false
181 | Name: Current View
182 | Near Clip Distance: 0.009999999776482582
183 | Pitch: 0.7653980255126953
184 | Target Frame:
185 | Value: Orbit (rviz)
186 | Yaw: 5.445007801055908
187 | Saved: ~
188 | Window Geometry:
189 | Chase Camera:
190 | collapsed: false
191 | Displays:
192 | collapsed: false
193 | Height: 960
194 | Hide Left Dock: false
195 | Hide Right Dock: false
196 | QMainWindow State: 000000ff00000000fd00000004000000000000015600000322fc0200000007fb0000001200530065006c0065006300740069006f006e00000001e10000009b0000005c00fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261000000010000031500000322fc0200000004fb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000001800430068006100730065002000430061006d006500720061010000003d000001d30000001600fffffffc0000021600000149000000e60100001cfa000000000100000002fb000000100044006900730070006c0061007900730100000000ffffffff0000015600fffffffb0000000a00560069006500770073010000046b000003150000010000fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b200000000000000000000000200000490000000a9fc0100000001fb0000000a00560069006500770073030000004e00000080000002e10000019700000003000007800000003efc0100000002fb0000000800540069006d0065010000000000000780000002eb00fffffffb0000000800540069006d00650100000000000004500000000000000000000004650000032200000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000
197 | Selection:
198 | collapsed: false
199 | Time:
200 | collapsed: false
201 | Tool Properties:
202 | collapsed: false
203 | Views:
204 | collapsed: false
205 | Width: 1920
206 | X: 0
207 | Y: 27
208 |
--------------------------------------------------------------------------------
/rviz/car_3.rviz:
--------------------------------------------------------------------------------
1 | Panels:
2 | - Class: rviz/Displays
3 | Help Height: 78
4 | Name: Displays
5 | Property Tree Widget:
6 | Expanded:
7 | - /Car_31
8 | - /Car_31/Odometry1/Shape1
9 | - /Global Parematers1
10 | Splitter Ratio: 0.6294117569923401
11 | Tree Height: 161
12 | - Class: rviz/Selection
13 | Name: Selection
14 | - Class: rviz/Tool Properties
15 | Expanded:
16 | - /2D Pose Estimate1
17 | - /2D Nav Goal1
18 | - /Publish Point1
19 | Name: Tool Properties
20 | Splitter Ratio: 0.5886790156364441
21 | - Class: rviz/Views
22 | Expanded:
23 | - /Current View1
24 | Name: Views
25 | Splitter Ratio: 0.5
26 | - Class: rviz/Time
27 | Experimental: false
28 | Name: Time
29 | SyncMode: 0
30 | SyncSource: LaserScan
31 | Preferences:
32 | PromptSaveOnExit: true
33 | Toolbars:
34 | toolButtonStyle: 2
35 | Visualization Manager:
36 | Class: ""
37 | Displays:
38 | - Class: rviz/Group
39 | Displays:
40 | - Class: rviz/Image
41 | Enabled: true
42 | Image Topic: /car_3/camera/image
43 | Max Value: 1
44 | Median window: 5
45 | Min Value: 0
46 | Name: Chase Camera
47 | Normalize Range: true
48 | Queue Size: 2
49 | Transport Hint: compressed
50 | Unreliable: false
51 | Value: true
52 | - Alpha: 1
53 | Autocompute Intensity Bounds: true
54 | Autocompute Value Bounds:
55 | Max Value: 10
56 | Min Value: -10
57 | Value: true
58 | Axis: Z
59 | Channel Name: intensity
60 | Class: rviz/LaserScan
61 | Color: 255; 255; 255
62 | Color Transformer: Intensity
63 | Decay Time: 0
64 | Enabled: true
65 | Invert Rainbow: false
66 | Max Color: 255; 255; 255
67 | Max Intensity: 0
68 | Min Color: 0; 0; 0
69 | Min Intensity: 0
70 | Name: LaserScan
71 | Position Transformer: XYZ
72 | Queue Size: 10
73 | Selectable: true
74 | Size (Pixels): 3
75 | Size (m): 0.02500000037252903
76 | Style: Flat Squares
77 | Topic: /car_3/scan
78 | Unreliable: false
79 | Use Fixed Frame: true
80 | Use rainbow: true
81 | Value: true
82 | - Alpha: 1
83 | Class: rviz/Polygon
84 | Color: 25; 255; 0
85 | Enabled: true
86 | Name: Base Footprint
87 | Topic: /car_3/base/footprint
88 | Unreliable: false
89 | Value: true
90 | - Angle Tolerance: 0.10000000149011612
91 | Class: rviz/Odometry
92 | Covariance:
93 | Orientation:
94 | Alpha: 0.5
95 | Color: 255; 255; 127
96 | Color Style: Unique
97 | Frame: Local
98 | Offset: 1
99 | Scale: 1
100 | Value: true
101 | Position:
102 | Alpha: 0.30000001192092896
103 | Color: 204; 51; 204
104 | Scale: 1
105 | Value: true
106 | Value: true
107 | Enabled: true
108 | Keep: 1
109 | Name: Odometry
110 | Position Tolerance: 0.10000000149011612
111 | Shape:
112 | Alpha: 1
113 | Axes Length: 1
114 | Axes Radius: 0.10000000149011612
115 | Color: 239; 41; 41
116 | Head Length: 0.25
117 | Head Radius: 0.10000000149011612
118 | Shaft Length: 0.5
119 | Shaft Radius: 0.05000000074505806
120 | Value: Arrow
121 | Topic: /car_3/base/odom
122 | Unreliable: false
123 | Value: true
124 | Enabled: true
125 | Name: Car_3
126 | - Class: rviz/Group
127 | Displays:
128 | - Alpha: 0.699999988079071
129 | Class: rviz/Map
130 | Color Scheme: map
131 | Draw Behind: false
132 | Enabled: true
133 | Name: Map
134 | Topic: /map
135 | Unreliable: false
136 | Use Timestamp: false
137 | Value: true
138 | Enabled: true
139 | Name: Global Parematers
140 | Enabled: true
141 | Global Options:
142 | Background Color: 48; 48; 48
143 | Default Light: true
144 | Fixed Frame: car_1_base_link
145 | Frame Rate: 30
146 | Name: root
147 | Tools:
148 | - Class: rviz/Interact
149 | Hide Inactive Objects: true
150 | - Class: rviz/MoveCamera
151 | - Class: rviz/Select
152 | - Class: rviz/FocusCamera
153 | - Class: rviz/Measure
154 | - Class: rviz/SetInitialPose
155 | Theta std deviation: 0.2617993950843811
156 | Topic: /initialpose
157 | X std deviation: 0.5
158 | Y std deviation: 0.5
159 | - Class: rviz/SetGoal
160 | Topic: /move_base_simple/goal
161 | - Class: rviz/PublishPoint
162 | Single click: true
163 | Topic: /clicked_point
164 | Value: true
165 | Views:
166 | Current:
167 | Class: rviz/Orbit
168 | Distance: 7.702158451080322
169 | Enable Stereo Rendering:
170 | Stereo Eye Separation: 0.05999999865889549
171 | Stereo Focal Distance: 1
172 | Swap Stereo Eyes: false
173 | Value: false
174 | Focal Point:
175 | X: 0.1928098499774933
176 | Y: -3.39508056640625
177 | Z: -0.7300854325294495
178 | Focal Shape Fixed Size: true
179 | Focal Shape Size: 0.05000000074505806
180 | Invert Z Axis: false
181 | Name: Current View
182 | Near Clip Distance: 0.009999999776482582
183 | Pitch: 0.7653980255126953
184 | Target Frame:
185 | Value: Orbit (rviz)
186 | Yaw: 5.445007801055908
187 | Saved: ~
188 | Window Geometry:
189 | Chase Camera:
190 | collapsed: false
191 | Displays:
192 | collapsed: false
193 | Height: 960
194 | Hide Left Dock: false
195 | Hide Right Dock: false
196 | QMainWindow State: 000000ff00000000fd00000004000000000000015600000322fc0200000007fb0000001200530065006c0065006300740069006f006e00000001e10000009b0000005c00fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261000000010000031500000322fc0200000004fb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000001800430068006100730065002000430061006d006500720061010000003d000001d30000001600fffffffc0000021600000149000000e60100001cfa000000010100000002fb000000100044006900730070006c0061007900730100000000ffffffff0000015600fffffffb0000000a00560069006500770073010000046b000003150000010000fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b200000000000000000000000200000490000000a9fc0100000001fb0000000a00560069006500770073030000004e00000080000002e10000019700000003000007800000003efc0100000002fb0000000800540069006d0065010000000000000780000002eb00fffffffb0000000800540069006d00650100000000000004500000000000000000000004650000032200000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000
197 | Selection:
198 | collapsed: false
199 | Time:
200 | collapsed: false
201 | Tool Properties:
202 | collapsed: false
203 | Views:
204 | collapsed: false
205 | Width: 1920
206 | X: 0
207 | Y: 27
208 |
--------------------------------------------------------------------------------
/rviz/car_5.rviz:
--------------------------------------------------------------------------------
1 | Panels:
2 | - Class: rviz/Displays
3 | Help Height: 78
4 | Name: Displays
5 | Property Tree Widget:
6 | Expanded:
7 | - /Car_51
8 | - /Car_51/Odometry1/Shape1
9 | - /Global Parematers1
10 | Splitter Ratio: 0.6294117569923401
11 | Tree Height: 161
12 | - Class: rviz/Selection
13 | Name: Selection
14 | - Class: rviz/Tool Properties
15 | Expanded:
16 | - /2D Pose Estimate1
17 | - /2D Nav Goal1
18 | - /Publish Point1
19 | Name: Tool Properties
20 | Splitter Ratio: 0.5886790156364441
21 | - Class: rviz/Views
22 | Expanded:
23 | - /Current View1
24 | Name: Views
25 | Splitter Ratio: 0.5
26 | - Class: rviz/Time
27 | Experimental: false
28 | Name: Time
29 | SyncMode: 0
30 | SyncSource: LaserScan
31 | Preferences:
32 | PromptSaveOnExit: true
33 | Toolbars:
34 | toolButtonStyle: 2
35 | Visualization Manager:
36 | Class: ""
37 | Displays:
38 | - Class: rviz/Group
39 | Displays:
40 | - Class: rviz/Image
41 | Enabled: true
42 | Image Topic: /car_5/camera/image
43 | Max Value: 1
44 | Median window: 5
45 | Min Value: 0
46 | Name: Chase Camera
47 | Normalize Range: true
48 | Queue Size: 2
49 | Transport Hint: compressed
50 | Unreliable: false
51 | Value: true
52 | - Alpha: 1
53 | Autocompute Intensity Bounds: true
54 | Autocompute Value Bounds:
55 | Max Value: 10
56 | Min Value: -10
57 | Value: true
58 | Axis: Z
59 | Channel Name: intensity
60 | Class: rviz/LaserScan
61 | Color: 255; 255; 255
62 | Color Transformer: Intensity
63 | Decay Time: 0
64 | Enabled: true
65 | Invert Rainbow: false
66 | Max Color: 255; 255; 255
67 | Max Intensity: 0
68 | Min Color: 0; 0; 0
69 | Min Intensity: 0
70 | Name: LaserScan
71 | Position Transformer: XYZ
72 | Queue Size: 10
73 | Selectable: true
74 | Size (Pixels): 3
75 | Size (m): 0.02500000037252903
76 | Style: Flat Squares
77 | Topic: /car_5/scan
78 | Unreliable: false
79 | Use Fixed Frame: true
80 | Use rainbow: true
81 | Value: true
82 | - Alpha: 1
83 | Class: rviz/Polygon
84 | Color: 25; 255; 0
85 | Enabled: true
86 | Name: Base Footprint
87 | Topic: /car_5/base/footprint
88 | Unreliable: false
89 | Value: true
90 | - Angle Tolerance: 0.10000000149011612
91 | Class: rviz/Odometry
92 | Covariance:
93 | Orientation:
94 | Alpha: 0.5
95 | Color: 255; 255; 127
96 | Color Style: Unique
97 | Frame: Local
98 | Offset: 1
99 | Scale: 1
100 | Value: true
101 | Position:
102 | Alpha: 0.30000001192092896
103 | Color: 204; 51; 204
104 | Scale: 1
105 | Value: true
106 | Value: true
107 | Enabled: true
108 | Keep: 1
109 | Name: Odometry
110 | Position Tolerance: 0.10000000149011612
111 | Shape:
112 | Alpha: 1
113 | Axes Length: 1
114 | Axes Radius: 0.10000000149011612
115 | Color: 239; 41; 41
116 | Head Length: 0.25
117 | Head Radius: 0.10000000149011612
118 | Shaft Length: 0.5
119 | Shaft Radius: 0.05000000074505806
120 | Value: Arrow
121 | Topic: /car_5/base/odom
122 | Unreliable: false
123 | Value: true
124 | Enabled: true
125 | Name: Car_5
126 | - Class: rviz/Group
127 | Displays:
128 | - Alpha: 0.699999988079071
129 | Class: rviz/Map
130 | Color Scheme: map
131 | Draw Behind: false
132 | Enabled: true
133 | Name: Map
134 | Topic: /map
135 | Unreliable: false
136 | Use Timestamp: false
137 | Value: true
138 | Enabled: true
139 | Name: Global Parematers
140 | Enabled: true
141 | Global Options:
142 | Background Color: 48; 48; 48
143 | Default Light: true
144 | Fixed Frame: car_1_base_link
145 | Frame Rate: 30
146 | Name: root
147 | Tools:
148 | - Class: rviz/Interact
149 | Hide Inactive Objects: true
150 | - Class: rviz/MoveCamera
151 | - Class: rviz/Select
152 | - Class: rviz/FocusCamera
153 | - Class: rviz/Measure
154 | - Class: rviz/SetInitialPose
155 | Theta std deviation: 0.2617993950843811
156 | Topic: /initialpose
157 | X std deviation: 0.5
158 | Y std deviation: 0.5
159 | - Class: rviz/SetGoal
160 | Topic: /move_base_simple/goal
161 | - Class: rviz/PublishPoint
162 | Single click: true
163 | Topic: /clicked_point
164 | Value: true
165 | Views:
166 | Current:
167 | Class: rviz/Orbit
168 | Distance: 5.248805046081543
169 | Enable Stereo Rendering:
170 | Stereo Eye Separation: 0.05999999865889549
171 | Stereo Focal Distance: 1
172 | Swap Stereo Eyes: false
173 | Value: false
174 | Focal Point:
175 | X: -1.07430100440979
176 | Y: -1.9585487842559814
177 | Z: 1.2635314464569092
178 | Focal Shape Fixed Size: true
179 | Focal Shape Size: 0.05000000074505806
180 | Invert Z Axis: false
181 | Name: Current View
182 | Near Clip Distance: 0.009999999776482582
183 | Pitch: 0.7653980255126953
184 | Target Frame:
185 | Value: Orbit (rviz)
186 | Yaw: 5.445007801055908
187 | Saved: ~
188 | Window Geometry:
189 | Chase Camera:
190 | collapsed: false
191 | Displays:
192 | collapsed: false
193 | Height: 960
194 | Hide Left Dock: false
195 | Hide Right Dock: false
196 | QMainWindow State: 000000ff00000000fd00000004000000000000015600000322fc0200000007fb0000001200530065006c0065006300740069006f006e00000001e10000009b0000005c00fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261000000010000031500000322fc0200000004fb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000001800430068006100730065002000430061006d006500720061010000003d000001d30000001600fffffffc0000021600000149000000e60100001cfa000000010100000002fb000000100044006900730070006c0061007900730100000000ffffffff0000015600fffffffb0000000a00560069006500770073010000046b000003150000010000fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b200000000000000000000000200000490000000a9fc0100000001fb0000000a00560069006500770073030000004e00000080000002e10000019700000003000007800000003efc0100000002fb0000000800540069006d0065010000000000000780000002eb00fffffffb0000000800540069006d00650100000000000004500000000000000000000004650000032200000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000
197 | Selection:
198 | collapsed: false
199 | Time:
200 | collapsed: false
201 | Tool Properties:
202 | collapsed: false
203 | Views:
204 | collapsed: false
205 | Width: 1920
206 | X: 0
207 | Y: 27
208 |
--------------------------------------------------------------------------------
/rviz/car_6.rviz:
--------------------------------------------------------------------------------
1 | Panels:
2 | - Class: rviz/Displays
3 | Help Height: 78
4 | Name: Displays
5 | Property Tree Widget:
6 | Expanded:
7 | - /Car_61
8 | - /Car_61/Odometry1/Shape1
9 | - /Global Parematers1
10 | Splitter Ratio: 0.6294117569923401
11 | Tree Height: 161
12 | - Class: rviz/Selection
13 | Name: Selection
14 | - Class: rviz/Tool Properties
15 | Expanded:
16 | - /2D Pose Estimate1
17 | - /2D Nav Goal1
18 | - /Publish Point1
19 | Name: Tool Properties
20 | Splitter Ratio: 0.5886790156364441
21 | - Class: rviz/Views
22 | Expanded:
23 | - /Current View1
24 | Name: Views
25 | Splitter Ratio: 0.5
26 | - Class: rviz/Time
27 | Experimental: false
28 | Name: Time
29 | SyncMode: 0
30 | SyncSource: LaserScan
31 | Preferences:
32 | PromptSaveOnExit: true
33 | Toolbars:
34 | toolButtonStyle: 2
35 | Visualization Manager:
36 | Class: ""
37 | Displays:
38 | - Class: rviz/Group
39 | Displays:
40 | - Class: rviz/Image
41 | Enabled: true
42 | Image Topic: /car_6/camera/image
43 | Max Value: 1
44 | Median window: 5
45 | Min Value: 0
46 | Name: Chase Camera
47 | Normalize Range: true
48 | Queue Size: 2
49 | Transport Hint: compressed
50 | Unreliable: false
51 | Value: true
52 | - Alpha: 1
53 | Autocompute Intensity Bounds: true
54 | Autocompute Value Bounds:
55 | Max Value: 10
56 | Min Value: -10
57 | Value: true
58 | Axis: Z
59 | Channel Name: intensity
60 | Class: rviz/LaserScan
61 | Color: 255; 255; 255
62 | Color Transformer: Intensity
63 | Decay Time: 0
64 | Enabled: true
65 | Invert Rainbow: false
66 | Max Color: 255; 255; 255
67 | Max Intensity: 0
68 | Min Color: 0; 0; 0
69 | Min Intensity: 0
70 | Name: LaserScan
71 | Position Transformer: XYZ
72 | Queue Size: 10
73 | Selectable: true
74 | Size (Pixels): 3
75 | Size (m): 0.02500000037252903
76 | Style: Flat Squares
77 | Topic: /car_6/scan
78 | Unreliable: false
79 | Use Fixed Frame: true
80 | Use rainbow: true
81 | Value: true
82 | - Alpha: 1
83 | Class: rviz/Polygon
84 | Color: 25; 255; 0
85 | Enabled: true
86 | Name: Base Footprint
87 | Topic: /car_6/base/footprint
88 | Unreliable: false
89 | Value: true
90 | - Angle Tolerance: 0.10000000149011612
91 | Class: rviz/Odometry
92 | Covariance:
93 | Orientation:
94 | Alpha: 0.5
95 | Color: 255; 255; 127
96 | Color Style: Unique
97 | Frame: Local
98 | Offset: 1
99 | Scale: 1
100 | Value: true
101 | Position:
102 | Alpha: 0.30000001192092896
103 | Color: 204; 51; 204
104 | Scale: 1
105 | Value: true
106 | Value: true
107 | Enabled: true
108 | Keep: 1
109 | Name: Odometry
110 | Position Tolerance: 0.10000000149011612
111 | Shape:
112 | Alpha: 1
113 | Axes Length: 1
114 | Axes Radius: 0.10000000149011612
115 | Color: 239; 41; 41
116 | Head Length: 0.25
117 | Head Radius: 0.10000000149011612
118 | Shaft Length: 0.5
119 | Shaft Radius: 0.05000000074505806
120 | Value: Arrow
121 | Topic: /car_6/base/odom
122 | Unreliable: false
123 | Value: true
124 | Enabled: true
125 | Name: Car_6
126 | - Class: rviz/Group
127 | Displays:
128 | - Alpha: 0.699999988079071
129 | Class: rviz/Map
130 | Color Scheme: map
131 | Draw Behind: false
132 | Enabled: true
133 | Name: Map
134 | Topic: /map
135 | Unreliable: false
136 | Use Timestamp: false
137 | Value: true
138 | Enabled: true
139 | Name: Global Parematers
140 | Enabled: true
141 | Global Options:
142 | Background Color: 48; 48; 48
143 | Default Light: true
144 | Fixed Frame: car_1_base_link
145 | Frame Rate: 30
146 | Name: root
147 | Tools:
148 | - Class: rviz/Interact
149 | Hide Inactive Objects: true
150 | - Class: rviz/MoveCamera
151 | - Class: rviz/Select
152 | - Class: rviz/FocusCamera
153 | - Class: rviz/Measure
154 | - Class: rviz/SetInitialPose
155 | Theta std deviation: 0.2617993950843811
156 | Topic: /initialpose
157 | X std deviation: 0.5
158 | Y std deviation: 0.5
159 | - Class: rviz/SetGoal
160 | Topic: /move_base_simple/goal
161 | - Class: rviz/PublishPoint
162 | Single click: true
163 | Topic: /clicked_point
164 | Value: true
165 | Views:
166 | Current:
167 | Class: rviz/Orbit
168 | Distance: 3.1023569107055664
169 | Enable Stereo Rendering:
170 | Stereo Eye Separation: 0.05999999865889549
171 | Stereo Focal Distance: 1
172 | Swap Stereo Eyes: false
173 | Value: false
174 | Focal Point:
175 | X: -1.7044751644134521
176 | Y: -1.2328484058380127
177 | Z: 2.263737678527832
178 | Focal Shape Fixed Size: true
179 | Focal Shape Size: 0.05000000074505806
180 | Invert Z Axis: false
181 | Name: Current View
182 | Near Clip Distance: 0.009999999776482582
183 | Pitch: 0.7653980255126953
184 | Target Frame:
185 | Value: Orbit (rviz)
186 | Yaw: 5.445007801055908
187 | Saved: ~
188 | Window Geometry:
189 | Chase Camera:
190 | collapsed: false
191 | Displays:
192 | collapsed: false
193 | Height: 960
194 | Hide Left Dock: false
195 | Hide Right Dock: false
196 | QMainWindow State: 000000ff00000000fd00000004000000000000015600000322fc0200000007fb0000001200530065006c0065006300740069006f006e00000001e10000009b0000005c00fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261000000010000031500000322fc0200000004fb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000001800430068006100730065002000430061006d006500720061010000003d000001d30000001600fffffffc0000021600000149000000e60100001cfa000000000100000002fb000000100044006900730070006c0061007900730100000000ffffffff0000015600fffffffb0000000a00560069006500770073010000046b000003150000010000fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b200000000000000000000000200000490000000a9fc0100000001fb0000000a00560069006500770073030000004e00000080000002e10000019700000003000007800000003efc0100000002fb0000000800540069006d0065010000000000000780000002eb00fffffffb0000000800540069006d00650100000000000004500000000000000000000004650000032200000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000
197 | Selection:
198 | collapsed: false
199 | Time:
200 | collapsed: false
201 | Tool Properties:
202 | collapsed: false
203 | Views:
204 | collapsed: false
205 | Width: 1920
206 | X: 0
207 | Y: 27
208 |
--------------------------------------------------------------------------------
/rviz/car_7.rviz:
--------------------------------------------------------------------------------
1 | Panels:
2 | - Class: rviz/Displays
3 | Help Height: 78
4 | Name: Displays
5 | Property Tree Widget:
6 | Expanded:
7 | - /Car_71
8 | - /Car_71/Odometry1/Shape1
9 | - /Global Parematers1
10 | Splitter Ratio: 0.6294117569923401
11 | Tree Height: 161
12 | - Class: rviz/Selection
13 | Name: Selection
14 | - Class: rviz/Tool Properties
15 | Expanded:
16 | - /2D Pose Estimate1
17 | - /2D Nav Goal1
18 | - /Publish Point1
19 | Name: Tool Properties
20 | Splitter Ratio: 0.5886790156364441
21 | - Class: rviz/Views
22 | Expanded:
23 | - /Current View1
24 | Name: Views
25 | Splitter Ratio: 0.5
26 | - Class: rviz/Time
27 | Experimental: false
28 | Name: Time
29 | SyncMode: 0
30 | SyncSource: LaserScan
31 | Preferences:
32 | PromptSaveOnExit: true
33 | Toolbars:
34 | toolButtonStyle: 2
35 | Visualization Manager:
36 | Class: ""
37 | Displays:
38 | - Class: rviz/Group
39 | Displays:
40 | - Class: rviz/Image
41 | Enabled: true
42 | Image Topic: /car_7/camera/image
43 | Max Value: 1
44 | Median window: 5
45 | Min Value: 0
46 | Name: Chase Camera
47 | Normalize Range: true
48 | Queue Size: 2
49 | Transport Hint: compressed
50 | Unreliable: false
51 | Value: true
52 | - Alpha: 1
53 | Autocompute Intensity Bounds: true
54 | Autocompute Value Bounds:
55 | Max Value: 10
56 | Min Value: -10
57 | Value: true
58 | Axis: Z
59 | Channel Name: intensity
60 | Class: rviz/LaserScan
61 | Color: 255; 255; 255
62 | Color Transformer: Intensity
63 | Decay Time: 0
64 | Enabled: true
65 | Invert Rainbow: false
66 | Max Color: 255; 255; 255
67 | Max Intensity: 0
68 | Min Color: 0; 0; 0
69 | Min Intensity: 0
70 | Name: LaserScan
71 | Position Transformer: XYZ
72 | Queue Size: 10
73 | Selectable: true
74 | Size (Pixels): 3
75 | Size (m): 0.02500000037252903
76 | Style: Flat Squares
77 | Topic: /car_7/scan
78 | Unreliable: false
79 | Use Fixed Frame: true
80 | Use rainbow: true
81 | Value: true
82 | - Alpha: 1
83 | Class: rviz/Polygon
84 | Color: 25; 255; 0
85 | Enabled: true
86 | Name: Base Footprint
87 | Topic: /car_7/base/footprint
88 | Unreliable: false
89 | Value: true
90 | - Angle Tolerance: 0.10000000149011612
91 | Class: rviz/Odometry
92 | Covariance:
93 | Orientation:
94 | Alpha: 0.5
95 | Color: 255; 255; 127
96 | Color Style: Unique
97 | Frame: Local
98 | Offset: 1
99 | Scale: 1
100 | Value: true
101 | Position:
102 | Alpha: 0.30000001192092896
103 | Color: 204; 51; 204
104 | Scale: 1
105 | Value: true
106 | Value: true
107 | Enabled: true
108 | Keep: 1
109 | Name: Odometry
110 | Position Tolerance: 0.10000000149011612
111 | Shape:
112 | Alpha: 1
113 | Axes Length: 1
114 | Axes Radius: 0.10000000149011612
115 | Color: 239; 41; 41
116 | Head Length: 0.25
117 | Head Radius: 0.10000000149011612
118 | Shaft Length: 0.5
119 | Shaft Radius: 0.05000000074505806
120 | Value: Arrow
121 | Topic: /car_7/base/odom
122 | Unreliable: false
123 | Value: true
124 | Enabled: true
125 | Name: Car_7
126 | - Class: rviz/Group
127 | Displays:
128 | - Alpha: 0.699999988079071
129 | Class: rviz/Map
130 | Color Scheme: map
131 | Draw Behind: false
132 | Enabled: true
133 | Name: Map
134 | Topic: /map
135 | Unreliable: false
136 | Use Timestamp: false
137 | Value: true
138 | Enabled: true
139 | Name: Global Parematers
140 | Enabled: true
141 | Global Options:
142 | Background Color: 48; 48; 48
143 | Default Light: true
144 | Fixed Frame: car_1_base_link
145 | Frame Rate: 30
146 | Name: root
147 | Tools:
148 | - Class: rviz/Interact
149 | Hide Inactive Objects: true
150 | - Class: rviz/MoveCamera
151 | - Class: rviz/Select
152 | - Class: rviz/FocusCamera
153 | - Class: rviz/Measure
154 | - Class: rviz/SetInitialPose
155 | Theta std deviation: 0.2617993950843811
156 | Topic: /initialpose
157 | X std deviation: 0.5
158 | Y std deviation: 0.5
159 | - Class: rviz/SetGoal
160 | Topic: /move_base_simple/goal
161 | - Class: rviz/PublishPoint
162 | Single click: true
163 | Topic: /clicked_point
164 | Value: true
165 | Views:
166 | Current:
167 | Class: rviz/Orbit
168 | Distance: 2.1141695976257324
169 | Enable Stereo Rendering:
170 | Stereo Eye Separation: 0.05999999865889549
171 | Stereo Focal Distance: 1
172 | Swap Stereo Eyes: false
173 | Value: false
174 | Focal Point:
175 | X: -2.343644857406616
176 | Y: -0.5026320815086365
177 | Z: 3.273698568344116
178 | Focal Shape Fixed Size: true
179 | Focal Shape Size: 0.05000000074505806
180 | Invert Z Axis: false
181 | Name: Current View
182 | Near Clip Distance: 0.009999999776482582
183 | Pitch: 0.7653980255126953
184 | Target Frame:
185 | Value: Orbit (rviz)
186 | Yaw: 5.445007801055908
187 | Saved: ~
188 | Window Geometry:
189 | Chase Camera:
190 | collapsed: false
191 | Displays:
192 | collapsed: false
193 | Height: 960
194 | Hide Left Dock: false
195 | Hide Right Dock: false
196 | QMainWindow State: 000000ff00000000fd00000004000000000000015600000322fc0200000007fb0000001200530065006c0065006300740069006f006e00000001e10000009b0000005c00fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261000000010000031500000322fc0200000004fb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000001800430068006100730065002000430061006d006500720061010000003d000001d30000001600fffffffc0000021600000149000000e60100001cfa000000000100000002fb000000100044006900730070006c0061007900730100000000ffffffff0000015600fffffffb0000000a00560069006500770073010000046b000003150000010000fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b200000000000000000000000200000490000000a9fc0100000001fb0000000a00560069006500770073030000004e00000080000002e10000019700000003000007800000003efc0100000002fb0000000800540069006d0065010000000000000780000002eb00fffffffb0000000800540069006d00650100000000000004500000000000000000000004650000032200000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000
197 | Selection:
198 | collapsed: false
199 | Time:
200 | collapsed: false
201 | Tool Properties:
202 | collapsed: false
203 | Views:
204 | collapsed: false
205 | Width: 1920
206 | X: 0
207 | Y: 27
208 |
--------------------------------------------------------------------------------
/rviz/car_8.rviz:
--------------------------------------------------------------------------------
1 | Panels:
2 | - Class: rviz/Displays
3 | Help Height: 78
4 | Name: Displays
5 | Property Tree Widget:
6 | Expanded:
7 | - /Car_81
8 | - /Car_81/Odometry1/Shape1
9 | - /Global Parematers1
10 | Splitter Ratio: 0.6294117569923401
11 | Tree Height: 161
12 | - Class: rviz/Selection
13 | Name: Selection
14 | - Class: rviz/Tool Properties
15 | Expanded:
16 | - /2D Pose Estimate1
17 | - /2D Nav Goal1
18 | - /Publish Point1
19 | Name: Tool Properties
20 | Splitter Ratio: 0.5886790156364441
21 | - Class: rviz/Views
22 | Expanded:
23 | - /Current View1
24 | Name: Views
25 | Splitter Ratio: 0.5
26 | - Class: rviz/Time
27 | Experimental: false
28 | Name: Time
29 | SyncMode: 0
30 | SyncSource: LaserScan
31 | Preferences:
32 | PromptSaveOnExit: true
33 | Toolbars:
34 | toolButtonStyle: 2
35 | Visualization Manager:
36 | Class: ""
37 | Displays:
38 | - Class: rviz/Group
39 | Displays:
40 | - Class: rviz/Image
41 | Enabled: true
42 | Image Topic: /car_8/camera/image
43 | Max Value: 1
44 | Median window: 5
45 | Min Value: 0
46 | Name: Chase Camera
47 | Normalize Range: true
48 | Queue Size: 2
49 | Transport Hint: compressed
50 | Unreliable: false
51 | Value: true
52 | - Alpha: 1
53 | Autocompute Intensity Bounds: true
54 | Autocompute Value Bounds:
55 | Max Value: 10
56 | Min Value: -10
57 | Value: true
58 | Axis: Z
59 | Channel Name: intensity
60 | Class: rviz/LaserScan
61 | Color: 255; 255; 255
62 | Color Transformer: Intensity
63 | Decay Time: 0
64 | Enabled: true
65 | Invert Rainbow: false
66 | Max Color: 255; 255; 255
67 | Max Intensity: 0
68 | Min Color: 0; 0; 0
69 | Min Intensity: 0
70 | Name: LaserScan
71 | Position Transformer: XYZ
72 | Queue Size: 10
73 | Selectable: true
74 | Size (Pixels): 3
75 | Size (m): 0.02500000037252903
76 | Style: Flat Squares
77 | Topic: /car_8/scan
78 | Unreliable: false
79 | Use Fixed Frame: true
80 | Use rainbow: true
81 | Value: true
82 | - Alpha: 1
83 | Class: rviz/Polygon
84 | Color: 25; 255; 0
85 | Enabled: true
86 | Name: Base Footprint
87 | Topic: /car_8/base/footprint
88 | Unreliable: false
89 | Value: true
90 | - Angle Tolerance: 0.10000000149011612
91 | Class: rviz/Odometry
92 | Covariance:
93 | Orientation:
94 | Alpha: 0.5
95 | Color: 255; 255; 127
96 | Color Style: Unique
97 | Frame: Local
98 | Offset: 1
99 | Scale: 1
100 | Value: true
101 | Position:
102 | Alpha: 0.30000001192092896
103 | Color: 204; 51; 204
104 | Scale: 1
105 | Value: true
106 | Value: true
107 | Enabled: true
108 | Keep: 1
109 | Name: Odometry
110 | Position Tolerance: 0.10000000149011612
111 | Shape:
112 | Alpha: 1
113 | Axes Length: 1
114 | Axes Radius: 0.10000000149011612
115 | Color: 239; 41; 41
116 | Head Length: 0.25
117 | Head Radius: 0.10000000149011612
118 | Shaft Length: 0.5
119 | Shaft Radius: 0.05000000074505806
120 | Value: Arrow
121 | Topic: /car_8/base/odom
122 | Unreliable: false
123 | Value: true
124 | Enabled: true
125 | Name: Car_8
126 | - Class: rviz/Group
127 | Displays:
128 | - Alpha: 0.699999988079071
129 | Class: rviz/Map
130 | Color Scheme: map
131 | Draw Behind: false
132 | Enabled: true
133 | Name: Map
134 | Topic: /map
135 | Unreliable: false
136 | Use Timestamp: false
137 | Value: true
138 | Enabled: true
139 | Name: Global Parematers
140 | Enabled: true
141 | Global Options:
142 | Background Color: 48; 48; 48
143 | Default Light: true
144 | Fixed Frame: car_1_base_link
145 | Frame Rate: 30
146 | Name: root
147 | Tools:
148 | - Class: rviz/Interact
149 | Hide Inactive Objects: true
150 | - Class: rviz/MoveCamera
151 | - Class: rviz/Select
152 | - Class: rviz/FocusCamera
153 | - Class: rviz/Measure
154 | - Class: rviz/SetInitialPose
155 | Theta std deviation: 0.2617993950843811
156 | Topic: /initialpose
157 | X std deviation: 0.5
158 | Y std deviation: 0.5
159 | - Class: rviz/SetGoal
160 | Topic: /move_base_simple/goal
161 | - Class: rviz/PublishPoint
162 | Single click: true
163 | Topic: /clicked_point
164 | Value: true
165 | Views:
166 | Current:
167 | Class: rviz/Orbit
168 | Distance: 2.539088726043701
169 | Enable Stereo Rendering:
170 | Stereo Eye Separation: 0.05999999865889549
171 | Stereo Focal Distance: 1
172 | Swap Stereo Eyes: false
173 | Value: false
174 | Focal Point:
175 | X: -2.936657190322876
176 | Y: 0.20426806807518005
177 | Z: 4.233487606048584
178 | Focal Shape Fixed Size: true
179 | Focal Shape Size: 0.05000000074505806
180 | Invert Z Axis: false
181 | Name: Current View
182 | Near Clip Distance: 0.009999999776482582
183 | Pitch: 0.7653980255126953
184 | Target Frame:
185 | Value: Orbit (rviz)
186 | Yaw: 5.445007801055908
187 | Saved: ~
188 | Window Geometry:
189 | Chase Camera:
190 | collapsed: false
191 | Displays:
192 | collapsed: false
193 | Height: 960
194 | Hide Left Dock: false
195 | Hide Right Dock: false
196 | QMainWindow State: 000000ff00000000fd00000004000000000000015600000322fc0200000007fb0000001200530065006c0065006300740069006f006e00000001e10000009b0000005c00fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261000000010000031500000322fc0200000004fb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000001800430068006100730065002000430061006d006500720061010000003d000001d30000001600fffffffc0000021600000149000000e60100001cfa000000000100000002fb000000100044006900730070006c0061007900730100000000ffffffff0000015600fffffffb0000000a00560069006500770073010000046b000003150000010000fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b200000000000000000000000200000490000000a9fc0100000001fb0000000a00560069006500770073030000004e00000080000002e10000019700000003000007800000003efc0100000002fb0000000800540069006d0065010000000000000780000002eb00fffffffb0000000800540069006d00650100000000000004500000000000000000000004650000032200000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000
197 | Selection:
198 | collapsed: false
199 | Time:
200 | collapsed: false
201 | Tool Properties:
202 | collapsed: false
203 | Views:
204 | collapsed: false
205 | Width: 1920
206 | X: 0
207 | Y: 27
208 |
--------------------------------------------------------------------------------
/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 2.8.3)
2 | project(f1tenth-sim)
3 |
4 | ## Compile as C++11, supported in ROS Kinetic and newer
5 | # add_compile_options(-std=c++11)
6 |
7 | ## Find catkin macros and libraries
8 | ## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz)
9 | ## is used, also find other catkin packages
10 | find_package(catkin REQUIRED COMPONENTS
11 | gazebo_ros
12 | geometry_msgs
13 | ackermann_msgs
14 | nav_msgs
15 | rospy
16 | sensor_msgs
17 | std_msgs
18 | tf
19 | message_generation
20 | )
21 |
22 | ## System dependencies are found with CMake's conventions
23 | # find_package(Boost REQUIRED COMPONENTS system)
24 |
25 |
26 | ## Uncomment this if the package has a setup.py. This macro ensures
27 | ## modules and global scripts declared therein get installed
28 | ## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html
29 | # catkin_python_setup()
30 |
31 | ################################################
32 | ## Declare ROS messages, services and actions ##
33 | ################################################
34 |
35 | ## To declare and build messages, services or actions from within this
36 | ## package, follow these steps:
37 | ## * Let MSG_DEP_SET be the set of packages whose message types you use in
38 | ## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...).
39 | ## * In the file package.xml:
40 | ## * add a build_depend tag for "message_generation"
41 | ## * add a build_depend and a exec_depend tag for each package in MSG_DEP_SET
42 | ## * If MSG_DEP_SET isn't empty the following dependency has been pulled in
43 | ## but can be declared for certainty nonetheless:
44 | ## * add a exec_depend tag for "message_runtime"
45 | ## * In this file (CMakeLists.txt):
46 | ## * add "message_generation" and every package in MSG_DEP_SET to
47 | ## find_package(catkin REQUIRED COMPONENTS ...)
48 | ## * add "message_runtime" and every package in MSG_DEP_SET to
49 | ## catkin_package(CATKIN_DEPENDS ...)
50 | ## * uncomment the add_*_files sections below as needed
51 | ## and list every .msg/.srv/.action file to be processed
52 | ## * uncomment the generate_messages entry below
53 | ## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...)
54 |
55 | ## Generate messages in the 'msg' folder
56 | # add_message_files(
57 | # FILES
58 | # StateInfo.msg
59 | # )
60 |
61 | ## Generate services in the 'srv' folder
62 | # add_service_files(
63 | # FILES
64 | # Service1.srv
65 | # Service2.srv
66 | # )
67 |
68 | ## Generate actions in the 'action' folder
69 | # add_action_files(
70 | # FILES
71 | # Action1.action
72 | # Action2.action
73 | # )
74 |
75 | ## Generate added messages and services with any dependencies listed here
76 | # generate_messages(
77 | # DEPENDENCIES
78 | # std_msgs
79 | # )
80 |
81 | ################################################
82 | ## Declare ROS dynamic reconfigure parameters ##
83 | ################################################
84 |
85 | ## To declare and build dynamic reconfigure parameters within this
86 | ## package, follow these steps:
87 | ## * In the file package.xml:
88 | ## * add a build_depend and a exec_depend tag for "dynamic_reconfigure"
89 | ## * In this file (CMakeLists.txt):
90 | ## * add "dynamic_reconfigure" to
91 | ## find_package(catkin REQUIRED COMPONENTS ...)
92 | ## * uncomment the "generate_dynamic_reconfigure_options" section below
93 | ## and list every .cfg file to be processed
94 |
95 | ## Generate dynamic reconfigure parameters in the 'cfg' folder
96 | # generate_dynamic_reconfigure_options(
97 | # cfg/DynReconf1.cfg
98 | # cfg/DynReconf2.cfg
99 | # )
100 |
101 | ###################################
102 | ## catkin specific configuration ##
103 | ###################################
104 | ## The catkin_package macro generates cmake config files for your package
105 | ## Declare things to be passed to dependent projects
106 | ## INCLUDE_DIRS: uncomment this if your package contains header files
107 | ## LIBRARIES: libraries you create in this project that dependent projects also need
108 | ## CATKIN_DEPENDS: catkin_packages dependent projects also need
109 | ## DEPENDS: system dependencies of this project that dependent projects also need
110 | catkin_package(
111 | # INCLUDE_DIRS include
112 | # LIBRARIES f1tenth
113 | CATKIN_DEPENDS
114 | gazebo_ros
115 | geometry_msgs
116 | nav_msgs
117 | rospy
118 | sensor_msgs
119 | std_msgs
120 | tf
121 | message_runtime
122 | # DEPENDS system_lib
123 | )
124 |
125 | ###########
126 | ## Build ##
127 | ###########
128 |
129 | ## Specify additional locations of header files
130 | ## Your package locations should be listed before other locations
131 | include_directories(
132 | # include
133 | ${catkin_INCLUDE_DIRS}
134 | )
135 |
136 | ## Declare a C++ library
137 | # add_library(${PROJECT_NAME}
138 | # src/${PROJECT_NAME}/f1tenth.cpp
139 | # )
140 |
141 | ## Add cmake target dependencies of the library
142 | ## as an example, code may need to be generated before libraries
143 | ## either from message generation or dynamic reconfigure
144 | # add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})
145 |
146 | ## Declare a C++ executable
147 | ## With catkin_make all packages are built within a single CMake context
148 | ## The recommended prefix ensures that target names across packages don't collide
149 | # add_executable(${PROJECT_NAME}_node src/f1tenth_node.cpp)
150 |
151 | ## Rename C++ executable without prefix
152 | ## The above recommended prefix causes long target names, the following renames the
153 | ## target back to the shorter version for ease of user use
154 | ## e.g. "rosrun someones_pkg node" instead of "rosrun someones_pkg someones_pkg_node"
155 | # set_target_properties(${PROJECT_NAME}_node PROPERTIES OUTPUT_NAME node PREFIX "")
156 |
157 | ## Add cmake target dependencies of the executable
158 | ## same as for the library above
159 | # add_dependencies(${PROJECT_NAME}_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})
160 |
161 | ## Specify libraries to link a library or executable target against
162 | # target_link_libraries(${PROJECT_NAME}_node
163 | # ${catkin_LIBRARIES}
164 | # )
165 |
166 | #############
167 | ## Install ##
168 | #############
169 |
170 | # all install targets should use catkin DESTINATION variables
171 | # See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html
172 |
173 | ## Mark executable scripts (Python etc.) for installation
174 | ## in contrast to setup.py, you can choose the destination
175 | # install(PROGRAMS
176 | # scripts/my_python_script
177 | # DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
178 | # )
179 |
180 | ## Mark executables and/or libraries for installation
181 | # install(TARGETS ${PROJECT_NAME} ${PROJECT_NAME}_node
182 | # ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
183 | # LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
184 | # RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
185 | # )
186 |
187 | ## Mark cpp header files for installation
188 | # install(DIRECTORY include/${PROJECT_NAME}/
189 | # DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}
190 | # FILES_MATCHING PATTERN "*.h"
191 | # PATTERN ".svn" EXCLUDE
192 | # )
193 |
194 | ## Mark other files for installation (e.g. launch and bag files, etc.)
195 | # install(FILES
196 | # # myfile1
197 | # # myfile2
198 | # DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
199 | # )
200 |
201 | #############
202 | ## Testing ##
203 | #############
204 |
205 | ## Add gtest based cpp test target and link libraries
206 | # catkin_add_gtest(${PROJECT_NAME}-test test/test_f1tenth.cpp)
207 | # if(TARGET ${PROJECT_NAME}-test)
208 | # target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME})
209 | # endif()
210 |
211 | ## Add folders to be run by python nosetests
212 | # catkin_add_nosetests(test)
213 |
--------------------------------------------------------------------------------
/rviz/car_4.rviz:
--------------------------------------------------------------------------------
1 | Panels:
2 | - Class: rviz/Displays
3 | Help Height: 78
4 | Name: Displays
5 | Property Tree Widget:
6 | Expanded:
7 | - /Car_41
8 | - /Car_41/Odometry1/Shape1
9 | - /Global Parematers1
10 | Splitter Ratio: 0.6294117569923401
11 | Tree Height: 161
12 | - Class: rviz/Selection
13 | Name: Selection
14 | - Class: rviz/Tool Properties
15 | Expanded:
16 | - /2D Pose Estimate1
17 | - /2D Nav Goal1
18 | - /Publish Point1
19 | Name: Tool Properties
20 | Splitter Ratio: 0.5886790156364441
21 | - Class: rviz/Views
22 | Expanded:
23 | - /Current View1
24 | Name: Views
25 | Splitter Ratio: 0.5
26 | - Class: rviz/Time
27 | Experimental: false
28 | Name: Time
29 | SyncMode: 0
30 | SyncSource: LaserScan
31 | Preferences:
32 | PromptSaveOnExit: true
33 | Toolbars:
34 | toolButtonStyle: 2
35 | Visualization Manager:
36 | Class: ""
37 | Displays:
38 | - Class: rviz/Group
39 | Displays:
40 | - Class: rviz/Image
41 | Enabled: true
42 | Image Topic: /car_4/camera/image
43 | Max Value: 1
44 | Median window: 5
45 | Min Value: 0
46 | Name: Chase Camera
47 | Normalize Range: true
48 | Queue Size: 2
49 | Transport Hint: compressed
50 | Unreliable: false
51 | Value: true
52 | - Alpha: 1
53 | Autocompute Intensity Bounds: true
54 | Autocompute Value Bounds:
55 | Max Value: 10
56 | Min Value: -10
57 | Value: true
58 | Axis: Z
59 | Channel Name: intensity
60 | Class: rviz/LaserScan
61 | Color: 255; 255; 255
62 | Color Transformer: Intensity
63 | Decay Time: 0
64 | Enabled: true
65 | Invert Rainbow: false
66 | Max Color: 255; 255; 255
67 | Max Intensity: 0
68 | Min Color: 0; 0; 0
69 | Min Intensity: 0
70 | Name: LaserScan
71 | Position Transformer: XYZ
72 | Queue Size: 10
73 | Selectable: true
74 | Size (Pixels): 3
75 | Size (m): 0.02500000037252903
76 | Style: Flat Squares
77 | Topic: /car_4/scan
78 | Unreliable: false
79 | Use Fixed Frame: true
80 | Use rainbow: true
81 | Value: true
82 | - Alpha: 1
83 | Class: rviz/Polygon
84 | Color: 25; 255; 0
85 | Enabled: true
86 | Name: Base Footprint
87 | Topic: /car_4/base/footprint
88 | Unreliable: false
89 | Value: true
90 | - Angle Tolerance: 0.10000000149011612
91 | Class: rviz/Odometry
92 | Covariance:
93 | Orientation:
94 | Alpha: 0.5
95 | Color: 255; 255; 127
96 | Color Style: Unique
97 | Frame: Local
98 | Offset: 1
99 | Scale: 1
100 | Value: true
101 | Position:
102 | Alpha: 0.30000001192092896
103 | Color: 204; 51; 204
104 | Scale: 1
105 | Value: true
106 | Value: true
107 | Enabled: true
108 | Keep: 1
109 | Name: Odometry
110 | Position Tolerance: 0.10000000149011612
111 | Shape:
112 | Alpha: 1
113 | Axes Length: 1
114 | Axes Radius: 0.10000000149011612
115 | Color: 239; 41; 41
116 | Head Length: 0.25
117 | Head Radius: 0.10000000149011612
118 | Shaft Length: 0.5
119 | Shaft Radius: 0.05000000074505806
120 | Value: Arrow
121 | Topic: /car_4/base/odom
122 | Unreliable: false
123 | Value: true
124 | Enabled: true
125 | Name: Car_4
126 | - Class: rviz/Group
127 | Displays:
128 | - Alpha: 0.699999988079071
129 | Class: rviz/Map
130 | Color Scheme: map
131 | Draw Behind: false
132 | Enabled: true
133 | Name: Map
134 | Topic: /map
135 | Unreliable: false
136 | Use Timestamp: false
137 | Value: true
138 | Enabled: true
139 | Name: Global Parematers
140 | Enabled: true
141 | Global Options:
142 | Background Color: 48; 48; 48
143 | Default Light: true
144 | Fixed Frame: car_1_base_link
145 | Frame Rate: 30
146 | Name: root
147 | Tools:
148 | - Class: rviz/Interact
149 | Hide Inactive Objects: true
150 | - Class: rviz/MoveCamera
151 | - Class: rviz/Select
152 | - Class: rviz/FocusCamera
153 | - Class: rviz/Measure
154 | - Class: rviz/SetInitialPose
155 | Theta std deviation: 0.2617993950843811
156 | Topic: /initialpose
157 | X std deviation: 0.5
158 | Y std deviation: 0.5
159 | - Class: rviz/SetGoal
160 | Topic: /move_base_simple/goal
161 | - Class: rviz/PublishPoint
162 | Single click: true
163 | Topic: /clicked_point
164 | Value: true
165 | Views:
166 | Current:
167 | Class: rviz/Orbit
168 | Distance: 7.702158451080322
169 | Enable Stereo Rendering:
170 | Stereo Eye Separation: 0.05999999865889549
171 | Stereo Focal Distance: 1
172 | Swap Stereo Eyes: false
173 | Value: false
174 | Focal Point:
175 | X: -0.43315038084983826
176 | Y: -2.6755268573760986
177 | Z: 0.26243171095848083
178 | Focal Shape Fixed Size: true
179 | Focal Shape Size: 0.05000000074505806
180 | Invert Z Axis: false
181 | Name: Current View
182 | Near Clip Distance: 0.009999999776482582
183 | Pitch: 0.7653980255126953
184 | Target Frame:
185 | Value: Orbit (rviz)
186 | Yaw: 5.445007801055908
187 | Saved: ~
188 | Window Geometry:
189 | Chase Camera:
190 | collapsed: false
191 | Displays:
192 | collapsed: false
193 | Height: 960
194 | Hide Left Dock: false
195 | Hide Right Dock: false
196 | QMainWindow State: 000000ff00000000fd00000004000000000000015600000322fc0200000007fb0000001200530065006c0065006300740069006f006e00000001e10000009b0000005c00fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261000000010000031500000322fc0200000004fb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000001800430068006100730065002000430061006d006500720061010000003d000001d30000001600fffffffc0000021600000149000000e60100001cfa000000010100000002fb000000100044006900730070006c0061007900730100000000ffffffff0000015600fffffffb0000000a00560069006500770073010000046b000003150000010000fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b200000000000000000000000200000490000000a9fc0100000001fb0000000a00560069006500770073030000004e00000080000002e10000019700000003000007800000003efc0100000002fb0000000800540069006d0065010000000000000780000002eb00fffffffb0000000800540069006d00650100000000000004500000000000000000000004650000032200000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000
197 | Selection:
198 | collapsed: false
199 | Time:
200 | collapsed: false
201 | Tool Properties:
202 | collapsed: false
203 | Views:
204 | collapsed: false
205 | Width: 1920
206 | X: 0
207 | Y: 27
208 |
--------------------------------------------------------------------------------
/rviz/car_1.rviz:
--------------------------------------------------------------------------------
1 | Panels:
2 | - Class: rviz/Displays
3 | Help Height: 78
4 | Name: Displays
5 | Property Tree Widget:
6 | Expanded:
7 | - /Car_11
8 | - /Global Parematers1
9 | - /MPC Control1
10 | Splitter Ratio: 0.6294117569923401
11 | Tree Height: 161
12 | - Class: rviz/Selection
13 | Name: Selection
14 | - Class: rviz/Tool Properties
15 | Expanded:
16 | - /2D Pose Estimate1
17 | - /2D Nav Goal1
18 | - /Publish Point1
19 | Name: Tool Properties
20 | Splitter Ratio: 0.5886790156364441
21 | - Class: rviz/Views
22 | Expanded:
23 | - /Current View1
24 | Name: Views
25 | Splitter Ratio: 0.5
26 | - Class: rviz/Time
27 | Experimental: false
28 | Name: Time
29 | SyncMode: 0
30 | SyncSource: LaserScan
31 | Preferences:
32 | PromptSaveOnExit: true
33 | Toolbars:
34 | toolButtonStyle: 2
35 | Visualization Manager:
36 | Class: ""
37 | Displays:
38 | - Class: rviz/Group
39 | Displays:
40 | - Class: rviz/Image
41 | Enabled: true
42 | Image Topic: /car_1/camera/image
43 | Max Value: 1
44 | Median window: 5
45 | Min Value: 0
46 | Name: Chase Camera
47 | Normalize Range: true
48 | Queue Size: 2
49 | Transport Hint: compressed
50 | Unreliable: false
51 | Value: true
52 | - Alpha: 1
53 | Autocompute Intensity Bounds: true
54 | Autocompute Value Bounds:
55 | Max Value: 0
56 | Min Value: 0
57 | Value: true
58 | Axis: Z
59 | Channel Name: intensity
60 | Class: rviz/LaserScan
61 | Color: 136; 138; 133
62 | Color Transformer: FlatColor
63 | Decay Time: 0
64 | Enabled: true
65 | Invert Rainbow: false
66 | Max Color: 255; 255; 255
67 | Max Intensity: 0
68 | Min Color: 0; 0; 0
69 | Min Intensity: 0
70 | Name: LaserScan
71 | Position Transformer: XYZ
72 | Queue Size: 10
73 | Selectable: true
74 | Size (Pixels): 3
75 | Size (m): 0.02500000037252903
76 | Style: Spheres
77 | Topic: /car_1/scan
78 | Unreliable: false
79 | Use Fixed Frame: true
80 | Use rainbow: true
81 | Value: true
82 | - Alpha: 1
83 | Class: rviz/Polygon
84 | Color: 252; 233; 79
85 | Enabled: true
86 | Name: Base Footprint
87 | Topic: /car_1/base/footprint
88 | Unreliable: false
89 | Value: true
90 | Enabled: true
91 | Name: Car_1
92 | - Class: rviz/Group
93 | Displays:
94 | - Alpha: 0.699999988079071
95 | Class: rviz/Map
96 | Color Scheme: map
97 | Draw Behind: false
98 | Enabled: false
99 | Name: Map
100 | Topic: /map
101 | Unreliable: false
102 | Use Timestamp: false
103 | Value: false
104 | - Alpha: 1
105 | Buffer Length: 1
106 | Class: rviz/Path
107 | Color: 25; 255; 0
108 | Enabled: true
109 | Head Diameter: 0.30000001192092896
110 | Head Length: 0.20000000298023224
111 | Length: 0.30000001192092896
112 | Line Style: Lines
113 | Line Width: 0.029999999329447746
114 | Name: Global raceline
115 | Offset:
116 | X: 0
117 | Y: 0
118 | Z: 0
119 | Pose Color: 255; 85; 255
120 | Pose Style: None
121 | Radius: 0.029999999329447746
122 | Shaft Diameter: 0.10000000149011612
123 | Shaft Length: 0.10000000149011612
124 | Topic: /trajectory/raceline
125 | Unreliable: false
126 | Value: true
127 | Enabled: true
128 | Name: Global Parematers
129 | - Class: rviz/Group
130 | Displays:
131 | - Alpha: 1
132 | Arrow Length: 0.30000001192092896
133 | Axes Length: 0.30000001192092896
134 | Axes Radius: 0.009999999776482582
135 | Class: rviz/PoseArray
136 | Color: 255; 25; 0
137 | Enabled: true
138 | Head Length: 0
139 | Head Radius: 0
140 | Name: PoseArray
141 | Shaft Length: 0.07500000298023224
142 | Shaft Radius: 0.07500000298023224
143 | Shape: Arrow (3D)
144 | Topic: /car_1/mpc_control/control_markers
145 | Unreliable: false
146 | Value: true
147 | - Alpha: 1
148 | Buffer Length: 1
149 | Class: rviz/Path
150 | Color: 32; 74; 135
151 | Enabled: true
152 | Head Diameter: 0.30000001192092896
153 | Head Length: 0.20000000298023224
154 | Length: 0.30000001192092896
155 | Line Style: Billboards
156 | Line Width: 0.05000000074505806
157 | Name: Planner Spline
158 | Offset:
159 | X: 0
160 | Y: 0
161 | Z: 0
162 | Pose Color: 255; 85; 255
163 | Pose Style: None
164 | Radius: 0.029999999329447746
165 | Shaft Diameter: 0.10000000149011612
166 | Shaft Length: 0.10000000149011612
167 | Topic: /car_1/mpc_control/spline
168 | Unreliable: false
169 | Value: true
170 | Enabled: true
171 | Name: MPC Control
172 | Enabled: true
173 | Global Options:
174 | Background Color: 48; 48; 48
175 | Default Light: true
176 | Fixed Frame: car_1_base_link
177 | Frame Rate: 30
178 | Name: root
179 | Tools:
180 | - Class: rviz/Interact
181 | Hide Inactive Objects: true
182 | - Class: rviz/MoveCamera
183 | - Class: rviz/Select
184 | - Class: rviz/FocusCamera
185 | - Class: rviz/Measure
186 | - Class: rviz/SetInitialPose
187 | Theta std deviation: 0.2617993950843811
188 | Topic: /initialpose
189 | X std deviation: 0.5
190 | Y std deviation: 0.5
191 | - Class: rviz/SetGoal
192 | Topic: /move_base_simple/goal
193 | - Class: rviz/PublishPoint
194 | Single click: true
195 | Topic: /clicked_point
196 | Value: true
197 | Views:
198 | Current:
199 | Class: rviz/Orbit
200 | Distance: 7.5
201 | Enable Stereo Rendering:
202 | Stereo Eye Separation: 0.05999999865889549
203 | Stereo Focal Distance: 1
204 | Swap Stereo Eyes: false
205 | Value: false
206 | Focal Point:
207 | X: 1.2331626415252686
208 | Y: 0.2990908622741699
209 | Z: 0.4302024841308594
210 | Focal Shape Fixed Size: true
211 | Focal Shape Size: 0.05000000074505806
212 | Invert Z Axis: false
213 | Name: Current View
214 | Near Clip Distance: 0.009999999776482582
215 | Pitch: 0.6303982138633728
216 | Target Frame: car_1_base_link
217 | Value: Orbit (rviz)
218 | Yaw: 3.1550073623657227
219 | Saved: ~
220 | Window Geometry:
221 | Chase Camera:
222 | collapsed: false
223 | Displays:
224 | collapsed: false
225 | Height: 960
226 | Hide Left Dock: false
227 | Hide Right Dock: false
228 | QMainWindow State: 000000ff00000000fd00000004000000000000015600000322fc0200000007fb0000001200530065006c0065006300740069006f006e00000001e10000009b0000005c00fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261000000010000031500000322fc0200000004fb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000001800430068006100730065002000430061006d006500720061010000003d000001d30000001600fffffffc0000021600000149000000e60100001cfa000000000100000002fb000000100044006900730070006c0061007900730100000000ffffffff0000015600fffffffb0000000a00560069006500770073010000046b000003150000010000fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b200000000000000000000000200000490000000a9fc0100000001fb0000000a00560069006500770073030000004e00000080000002e10000019700000003000007800000003efc0100000002fb0000000800540069006d0065010000000000000780000002eb00fffffffb0000000800540069006d00650100000000000004500000000000000000000004650000032200000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000
229 | Selection:
230 | collapsed: false
231 | Time:
232 | collapsed: false
233 | Tool Properties:
234 | collapsed: false
235 | Views:
236 | collapsed: false
237 | Width: 1920
238 | X: 0
239 | Y: 27
240 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Apache License
2 | Version 2.0, January 2004
3 | http://www.apache.org/licenses/
4 |
5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6 |
7 | 1. Definitions.
8 |
9 | "License" shall mean the terms and conditions for use, reproduction,
10 | and distribution as defined by Sections 1 through 9 of this document.
11 |
12 | "Licensor" shall mean the copyright owner or entity authorized by
13 | the copyright owner that is granting the License.
14 |
15 | "Legal Entity" shall mean the union of the acting entity and all
16 | other entities that control, are controlled by, or are under common
17 | control with that entity. For the purposes of this definition,
18 | "control" means (i) the power, direct or indirect, to cause the
19 | direction or management of such entity, whether by contract or
20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the
21 | outstanding shares, or (iii) beneficial ownership of such entity.
22 |
23 | "You" (or "Your") shall mean an individual or Legal Entity
24 | exercising permissions granted by this License.
25 |
26 | "Source" form shall mean the preferred form for making modifications,
27 | including but not limited to software source code, documentation
28 | source, and configuration files.
29 |
30 | "Object" form shall mean any form resulting from mechanical
31 | transformation or translation of a Source form, including but
32 | not limited to compiled object code, generated documentation,
33 | and conversions to other media types.
34 |
35 | "Work" shall mean the work of authorship, whether in Source or
36 | Object form, made available under the License, as indicated by a
37 | copyright notice that is included in or attached to the work
38 | (an example is provided in the Appendix below).
39 |
40 | "Derivative Works" shall mean any work, whether in Source or Object
41 | form, that is based on (or derived from) the Work and for which the
42 | editorial revisions, annotations, elaborations, or other modifications
43 | represent, as a whole, an original work of authorship. For the purposes
44 | of this License, Derivative Works shall not include works that remain
45 | separable from, or merely link (or bind by name) to the interfaces of,
46 | the Work and Derivative Works thereof.
47 |
48 | "Contribution" shall mean any work of authorship, including
49 | the original version of the Work and any modifications or additions
50 | to that Work or Derivative Works thereof, that is intentionally
51 | submitted to Licensor for inclusion in the Work by the copyright owner
52 | or by an individual or Legal Entity authorized to submit on behalf of
53 | the copyright owner. For the purposes of this definition, "submitted"
54 | means any form of electronic, verbal, or written communication sent
55 | to the Licensor or its representatives, including but not limited to
56 | communication on electronic mailing lists, source code control systems,
57 | and issue tracking systems that are managed by, or on behalf of, the
58 | Licensor for the purpose of discussing and improving the Work, but
59 | excluding communication that is conspicuously marked or otherwise
60 | designated in writing by the copyright owner as "Not a Contribution."
61 |
62 | "Contributor" shall mean Licensor and any individual or Legal Entity
63 | on behalf of whom a Contribution has been received by Licensor and
64 | subsequently incorporated within the Work.
65 |
66 | 2. Grant of Copyright License. Subject to the terms and conditions of
67 | this License, each Contributor hereby grants to You a perpetual,
68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable
69 | copyright license to reproduce, prepare Derivative Works of,
70 | publicly display, publicly perform, sublicense, and distribute the
71 | Work and such Derivative Works in Source or Object form.
72 |
73 | 3. Grant of Patent License. Subject to the terms and conditions of
74 | this License, each Contributor hereby grants to You a perpetual,
75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable
76 | (except as stated in this section) patent license to make, have made,
77 | use, offer to sell, sell, import, and otherwise transfer the Work,
78 | where such license applies only to those patent claims licensable
79 | by such Contributor that are necessarily infringed by their
80 | Contribution(s) alone or by combination of their Contribution(s)
81 | with the Work to which such Contribution(s) was submitted. If You
82 | institute patent litigation against any entity (including a
83 | cross-claim or counterclaim in a lawsuit) alleging that the Work
84 | or a Contribution incorporated within the Work constitutes direct
85 | or contributory patent infringement, then any patent licenses
86 | granted to You under this License for that Work shall terminate
87 | as of the date such litigation is filed.
88 |
89 | 4. Redistribution. You may reproduce and distribute copies of the
90 | Work or Derivative Works thereof in any medium, with or without
91 | modifications, and in Source or Object form, provided that You
92 | meet the following conditions:
93 |
94 | (a) You must give any other recipients of the Work or
95 | Derivative Works a copy of this License; and
96 |
97 | (b) You must cause any modified files to carry prominent notices
98 | stating that You changed the files; and
99 |
100 | (c) You must retain, in the Source form of any Derivative Works
101 | that You distribute, all copyright, patent, trademark, and
102 | attribution notices from the Source form of the Work,
103 | excluding those notices that do not pertain to any part of
104 | the Derivative Works; and
105 |
106 | (d) If the Work includes a "NOTICE" text file as part of its
107 | distribution, then any Derivative Works that You distribute must
108 | include a readable copy of the attribution notices contained
109 | within such NOTICE file, excluding those notices that do not
110 | pertain to any part of the Derivative Works, in at least one
111 | of the following places: within a NOTICE text file distributed
112 | as part of the Derivative Works; within the Source form or
113 | documentation, if provided along with the Derivative Works; or,
114 | within a display generated by the Derivative Works, if and
115 | wherever such third-party notices normally appear. The contents
116 | of the NOTICE file are for informational purposes only and
117 | do not modify the License. You may add Your own attribution
118 | notices within Derivative Works that You distribute, alongside
119 | or as an addendum to the NOTICE text from the Work, provided
120 | that such additional attribution notices cannot be construed
121 | as modifying the License.
122 |
123 | You may add Your own copyright statement to Your modifications and
124 | may provide additional or different license terms and conditions
125 | for use, reproduction, or distribution of Your modifications, or
126 | for any such Derivative Works as a whole, provided Your use,
127 | reproduction, and distribution of the Work otherwise complies with
128 | the conditions stated in this License.
129 |
130 | 5. Submission of Contributions. Unless You explicitly state otherwise,
131 | any Contribution intentionally submitted for inclusion in the Work
132 | by You to the Licensor shall be under the terms and conditions of
133 | this License, without any additional terms or conditions.
134 | Notwithstanding the above, nothing herein shall supersede or modify
135 | the terms of any separate license agreement you may have executed
136 | with Licensor regarding such Contributions.
137 |
138 | 6. Trademarks. This License does not grant permission to use the trade
139 | names, trademarks, service marks, or product names of the Licensor,
140 | except as required for reasonable and customary use in describing the
141 | origin of the Work and reproducing the content of the NOTICE file.
142 |
143 | 7. Disclaimer of Warranty. Unless required by applicable law or
144 | agreed to in writing, Licensor provides the Work (and each
145 | Contributor provides its Contributions) on an "AS IS" BASIS,
146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
147 | implied, including, without limitation, any warranties or conditions
148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
149 | PARTICULAR PURPOSE. You are solely responsible for determining the
150 | appropriateness of using or redistributing the Work and assume any
151 | risks associated with Your exercise of permissions under this License.
152 |
153 | 8. Limitation of Liability. In no event and under no legal theory,
154 | whether in tort (including negligence), contract, or otherwise,
155 | unless required by applicable law (such as deliberate and grossly
156 | negligent acts) or agreed to in writing, shall any Contributor be
157 | liable to You for damages, including any direct, indirect, special,
158 | incidental, or consequential damages of any character arising as a
159 | result of this License or out of the use or inability to use the
160 | Work (including but not limited to damages for loss of goodwill,
161 | work stoppage, computer failure or malfunction, or any and all
162 | other commercial damages or losses), even if such Contributor
163 | has been advised of the possibility of such damages.
164 |
165 | 9. Accepting Warranty or Additional Liability. While redistributing
166 | the Work or Derivative Works thereof, You may choose to offer,
167 | and charge a fee for, acceptance of support, warranty, indemnity,
168 | or other liability obligations and/or rights consistent with this
169 | License. However, in accepting such obligations, You may act only
170 | on Your own behalf and on Your sole responsibility, not on behalf
171 | of any other Contributor, and only if You agree to indemnify,
172 | defend, and hold each Contributor harmless for any liability
173 | incurred by, or claims asserted against, such Contributor by reason
174 | of your accepting any such warranty or additional liability.
175 |
176 | END OF TERMS AND CONDITIONS
177 |
178 | APPENDIX: How to apply the Apache License to your work.
179 |
180 | To apply the Apache License to your work, attach the following
181 | boilerplate notice, with the fields enclosed by brackets "[]"
182 | replaced with your own identifying information. (Don't include
183 | the brackets!) The text should be enclosed in the appropriate
184 | comment syntax for the file format. We also recommend that a
185 | file or class name and description of purpose be included on the
186 | same "printed page" as the copyright notice for easier
187 | identification within third-party archives.
188 |
189 | Copyright [yyyy] [name of copyright owner]
190 |
191 | Licensed under the Apache License, Version 2.0 (the "License");
192 | you may not use this file except in compliance with the License.
193 | You may obtain a copy of the License at
194 |
195 | http://www.apache.org/licenses/LICENSE-2.0
196 |
197 | Unless required by applicable law or agreed to in writing, software
198 | distributed under the License is distributed on an "AS IS" BASIS,
199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
200 | See the License for the specific language governing permissions and
201 | limitations under the License.
202 |
--------------------------------------------------------------------------------
/urdf/macros.xacro:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
22 |
25 |
26 |
27 |
28 |
29 |
30 |
33 |
34 |
35 |
36 |
37 |
38 |
41 |
42 |
43 |
44 |
45 |
46 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
122 | transmission_interface/SimpleTransmission
123 |
124 | hardware_interface/EffortJointInterface
125 |
126 |
127 | hardware_interface/EffortJointInterface
128 | 1
129 |
130 |
131 |
132 |
133 |
134 |
135 | transmission_interface/SimpleTransmission
136 |
137 | hardware_interface/EffortJointInterface
138 |
139 |
140 | hardware_interface/EffortJointInterface
141 | 1
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 |
158 |
159 |
160 |
161 |
162 |
163 |
164 |
165 |
166 |
167 |
168 |
169 |
170 |
171 |
172 |
173 |
174 |
175 |
176 |
177 |
178 |
179 |
180 |
181 |
182 |
183 |
184 |
185 | robot
186 |
187 |
188 |
189 |
190 |
191 |
192 |
193 |
194 |
195 |
196 |
197 |
198 |
199 |
200 |
201 |
202 |
203 |
204 |
205 |
206 |
207 |
208 |
209 |
210 |
211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 |
219 |
220 |
221 |
222 |
223 |
224 |
225 |
226 |
227 |
228 |
229 |
230 |
231 |
232 |
233 |
234 |
235 |
236 |
237 |
238 |
239 |
240 |
241 |
242 |
243 |
244 |
245 |
246 |
247 |
248 |
249 |
250 |
251 |
252 |
253 |
254 |
255 |
256 |
257 |
258 |
259 |
260 |
261 |
262 |
263 |
264 |
265 |
266 |
267 |
268 |
269 |
270 |
271 |
272 |
273 |
274 |
275 |
276 |
277 |
278 |
279 |
280 |
281 |
282 |
283 |
284 |
285 |
286 |
287 |
288 |
289 |
290 |
291 |
292 |
293 |
294 |
295 |
296 |
297 |
298 |
299 |
300 |
301 |
302 |
303 |
304 |
305 |
306 |
307 |
308 |
309 |
310 |
311 |
312 |
313 |
314 |
315 |
316 |
317 |
318 |
319 |
320 |
321 |
322 |
323 |
324 |
325 |
326 |
327 |
328 |
329 |
330 |
331 |
332 |
333 |
334 |
335 |
336 |
337 |
338 |
339 |
340 |
341 |
342 |
343 |
344 |
345 |
346 |
347 |
348 |
349 |
350 |
351 |
352 |
353 |
354 |
355 |
356 |
357 |
358 |
359 |
360 |
361 |
362 |
363 |
364 |
365 |
366 |
367 |
368 |
369 |
370 |
371 |
372 |
373 |
374 |
375 |
376 |
377 |
378 |
379 |
380 |
381 |
382 |
383 |
384 |
385 |
386 |
387 |
388 |
389 |
390 |
391 |
392 |
393 |
394 |
395 |
396 |
397 |
398 |
399 |
400 |
401 |
402 |
403 |
404 |
405 |
406 |
407 |
408 |
409 |
410 |
411 |
412 |
413 |
414 |
415 | Gazebo/$(arg robot_skin)
416 |
417 |
418 |
419 |
420 |
421 |
422 |
423 |
424 | Gazebo/Black
425 |
426 |
427 |
428 |
429 |
430 |
431 |
432 |
433 | Gazebo/Black
434 |
435 |
436 |
437 |
438 |
439 |
440 |
441 |
442 | Gazebo/Black
443 |
444 |
445 |
446 |
447 |
448 |
449 |
450 |
451 | Gazebo/Black
452 |
453 |
454 |
455 |
456 |
457 |
458 | /$(arg robot_name)
459 | gazebo_ros_control/DefaultRobotHWSim
460 |
461 |
462 |
463 |
464 |
465 |
466 | true
467 | 50.0
468 | $(arg robot_name)_base_link
469 | /$(arg robot_name)/ground_truth
470 | 0.01
471 | world
472 | 0 0 0
473 | 0 0 0
474 |
475 |
476 |
477 |
478 |
479 |
480 | Gazebo/Grey
481 |
482 | 0 0 0.0124 0 0 0
483 | false
484 | 40
485 |
486 |
487 |
488 | 1081
489 | 1
490 | -2.3561944902
491 | 2.3561944902
492 |
493 |
494 |
495 | 0.1
496 | 30.0
497 | 0.01
498 |
499 |
500 | 0.0
501 | 0.01
502 |
503 |
504 |
505 | /$(arg robot_name)/scan
506 | $(arg robot_name)_laser
507 |
508 |
509 |
510 |
511 |
512 |
513 |
514 |
515 |
516 | 30.0
517 |
518 |
519 |
520 | 1.74
521 |
522 | 1920
523 | 1080
524 | B8G8R8
525 |
526 |
527 | 0.02
528 | 300
529 |
530 |
531 | gaussian
532 | 0.0
533 | 0.007
534 |
535 |
536 |
537 | true
538 | 30.0
539 | /$(arg robot_name)/camera
540 | image
541 | rgb/camera_info
542 | $(arg robot_name)_camera_link
543 | 0
544 | 0.0
545 | 0.0
546 | 0.0
547 | 0.0
548 | 0.0
549 |
550 |
551 |
552 |
553 |
554 |
555 |
556 |
557 |
558 |
559 |
560 |
561 |
562 |
563 |
564 |
565 |
566 |
567 |
568 |
569 |
570 |
571 |
572 |
573 |
574 |
575 |
576 |
577 |
578 |
579 |
580 |
581 |
582 |
583 |
584 |
585 |
586 |
587 |
--------------------------------------------------------------------------------
/urdf/xacros/macros.xacro.normal:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
22 |
25 |
26 |
27 |
28 |
29 |
30 |
33 |
34 |
35 |
36 |
37 |
38 |
41 |
42 |
43 |
44 |
45 |
46 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
122 | transmission_interface/SimpleTransmission
123 |
124 | hardware_interface/EffortJointInterface
125 |
126 |
127 | hardware_interface/EffortJointInterface
128 | 1
129 |
130 |
131 |
132 |
133 |
134 |
135 | transmission_interface/SimpleTransmission
136 |
137 | hardware_interface/EffortJointInterface
138 |
139 |
140 | hardware_interface/EffortJointInterface
141 | 1
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 |
158 |
159 |
160 |
161 |
162 |
163 |
164 |
165 |
166 |
167 |
168 |
169 |
170 |
171 |
172 |
173 |
174 |
175 |
176 |
177 |
178 |
179 |
180 |
181 |
182 |
183 |
184 |
185 | robot
186 |
187 |
188 |
189 |
190 |
191 |
192 |
193 |
194 |
195 |
196 |
197 |
198 |
199 |
200 |
201 |
202 |
203 |
204 |
205 |
206 |
207 |
208 |
209 |
210 |
211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 |
219 |
220 |
221 |
222 |
223 |
224 |
225 |
226 |
227 |
228 |
229 |
230 |
231 |
232 |
233 |
234 |
235 |
236 |
237 |
238 |
239 |
240 |
241 |
242 |
243 |
244 |
245 |
246 |
247 |
248 |
249 |
250 |
251 |
252 |
253 |
254 |
255 |
256 |
257 |
258 |
259 |
260 |
261 |
262 |
263 |
264 |
265 |
266 |
267 |
268 |
269 |
270 |
271 |
272 |
273 |
274 |
275 |
276 |
277 |
278 |
279 |
280 |
281 |
282 |
283 |
284 |
285 |
286 |
287 |
288 |
289 |
290 |
291 |
292 |
293 |
294 |
295 |
296 |
297 |
298 |
299 |
300 |
301 |
302 |
303 |
304 |
305 |
306 |
307 |
308 |
309 |
310 |
311 |
312 |
313 |
314 |
315 |
316 |
317 |
318 |
319 |
320 |
321 |
322 |
323 |
324 |
325 |
326 |
327 |
328 |
329 |
330 |
331 |
332 |
333 |
334 |
335 |
336 |
337 |
338 |
339 |
340 |
341 |
342 |
343 |
344 |
345 |
346 |
347 |
348 |
349 |
350 |
351 |
352 |
353 |
354 |
355 |
356 |
357 |
358 |
359 |
360 |
361 |
362 |
363 |
364 |
365 |
366 |
367 |
368 |
369 |
370 |
371 |
372 |
373 |
374 |
375 |
376 |
377 |
378 |
379 |
380 |
381 |
382 |
383 |
384 |
385 |
386 |
387 |
388 |
389 |
390 |
391 |
392 |
393 |
394 |
395 |
396 |
397 |
398 |
399 |
400 |
401 |
402 |
403 |
404 |
405 |
406 |
407 |
408 |
409 |
410 |
411 |
412 |
413 |
414 |
415 | Gazebo/$(arg robot_skin)
416 |
417 |
418 |
419 |
420 |
421 |
422 |
423 |
424 | Gazebo/Black
425 |
426 |
427 |
428 |
429 |
430 |
431 |
432 |
433 | Gazebo/Black
434 |
435 |
436 |
437 |
438 |
439 |
440 |
441 |
442 | Gazebo/Black
443 |
444 |
445 |
446 |
447 |
448 |
449 |
450 |
451 | Gazebo/Black
452 |
453 |
454 |
455 |
456 |
457 |
458 | /$(arg robot_name)
459 | gazebo_ros_control/DefaultRobotHWSim
460 |
461 |
462 |
463 |
464 |
465 |
466 | true
467 | 50.0
468 | $(arg robot_name)_base_link
469 | /$(arg robot_name)/ground_truth
470 | 0.01
471 | world
472 | 0 0 0
473 | 0 0 0
474 |
475 |
476 |
477 |
478 |
479 |
480 | Gazebo/Grey
481 |
482 | 0 0 0.0124 0 0 0
483 | false
484 | 40
485 |
486 |
487 |
488 | 1081
489 | 1
490 | -2.3561944902
491 | 2.3561944902
492 |
493 |
494 |
495 | 0.1
496 | 30.0
497 | 0.01
498 |
499 |
500 | 0.0
501 | 0.01
502 |
503 |
504 |
505 | /$(arg robot_name)/scan
506 | $(arg robot_name)_laser
507 |
508 |
509 |
510 |
511 |
512 |
513 |
514 |
515 |
516 | 30.0
517 |
518 |
519 |
520 | 1.74
521 |
522 | 1920
523 | 1080
524 | B8G8R8
525 |
526 |
527 | 0.02
528 | 300
529 |
530 |
531 | gaussian
532 | 0.0
533 | 0.007
534 |
535 |
536 |
537 | true
538 | 30.0
539 | /$(arg robot_name)/camera
540 | image
541 | rgb/camera_info
542 | $(arg robot_name)_camera_link
543 | 0
544 | 0.0
545 | 0.0
546 | 0.0
547 | 0.0
548 | 0.0
549 |
550 |
551 |
552 |
553 |
554 |
555 |
556 |
557 |
558 |
559 |
560 |
561 |
562 |
563 |
564 |
565 |
566 |
567 |
568 |
569 |
570 |
571 |
572 |
573 |
574 |
575 |
576 |
577 |
578 |
579 |
580 |
581 |
582 |
583 |
584 |
585 |
586 |
587 |
--------------------------------------------------------------------------------