Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
228 commits
Select commit Hold shift + click to select a range
2e2d150
Testing urdf model
javizqh Apr 17, 2026
9067042
Remove from world
javizqh Apr 17, 2026
b17902d
Test updated launcher
javizqh Apr 17, 2026
3b63e19
Test new location
javizqh Apr 17, 2026
550e5c8
Update urdf
javizqh Apr 17, 2026
3aa6e08
Update launcher
javizqh Apr 17, 2026
f06b0f3
Update launcher
javizqh Apr 20, 2026
7e65462
Add collision
javizqh Apr 20, 2026
aa48e46
Add materials
javizqh Apr 20, 2026
57ef8ce
Update launchers
javizqh Apr 20, 2026
946c95c
Fix undefined variable
javizqh Apr 20, 2026
510266f
Fix another typo
javizqh Apr 20, 2026
87ce001
Another test
javizqh Apr 20, 2026
0bdad7e
Add image bridge
javizqh Apr 20, 2026
198adad
Test with gazebo
javizqh Apr 20, 2026
c38cc1d
Test without pose
javizqh Apr 20, 2026
fc56e9c
Test origin
javizqh Apr 20, 2026
0a15a63
Update urdf
javizqh Apr 20, 2026
5564b62
Test with robot
javizqh Apr 20, 2026
50fd5bc
Remove start after launch
javizqh Apr 23, 2026
0a9e066
Remove robot from luncher entirely
javizqh Apr 23, 2026
87939b4
Test using substitutions
javizqh Apr 23, 2026
c1e207b
Add pose params
javizqh Apr 23, 2026
e6cf6e1
Add db
javizqh Apr 23, 2026
6e8a0d1
Update db
javizqh Apr 24, 2026
643e51c
Add more urdfs
javizqh Apr 24, 2026
03634c0
Fix tag
javizqh Apr 24, 2026
0124fe2
Update urdfs
javizqh Apr 24, 2026
a72a62a
Test options in launcher
javizqh Apr 24, 2026
b613473
add trace
javizqh Apr 24, 2026
7cc9d24
Add more traces
javizqh Apr 24, 2026
6e7a696
Test using opaque
javizqh Apr 24, 2026
130c4c8
Add trace
javizqh Apr 24, 2026
58d223a
Another trace
javizqh Apr 24, 2026
ddf27bf
Fix default
javizqh Apr 24, 2026
3aea5ce
Update launcher
javizqh Apr 24, 2026
bc18579
Remove func
javizqh Apr 24, 2026
cdbb5fe
Remove error
javizqh Apr 24, 2026
df7f1e0
Add trace
javizqh Apr 24, 2026
f881a11
Remove defaults
javizqh Apr 24, 2026
2a64e35
Fix sim time
javizqh Apr 24, 2026
6f2ab6a
Fix use_sim_time
javizqh Apr 24, 2026
6cf23c9
Add trace
javizqh Apr 24, 2026
2f54674
Fix quotes
javizqh Apr 24, 2026
dba29a8
Start with base ackermann
javizqh Apr 27, 2026
d271660
Add ackermann urdf
javizqh Apr 27, 2026
ff7930e
Update urdfs
javizqh Apr 27, 2026
384fc17
Test revolute limits
javizqh Apr 27, 2026
acdbe9b
Check again
javizqh Apr 27, 2026
bdcfdd6
Test again
javizqh Apr 27, 2026
c16d480
Change rotation
javizqh Apr 27, 2026
996a45e
Test rotation
javizqh Apr 27, 2026
252cf43
Remove rotation
javizqh Apr 28, 2026
b5e0b83
Test again
javizqh Apr 28, 2026
925eb2f
Test again
javizqh Apr 28, 2026
6322411
Test scale
javizqh Apr 28, 2026
b398593
Test rotation
javizqh Apr 28, 2026
2c6edea
Another rotation
javizqh Apr 28, 2026
9cc4c79
Change pose
javizqh Apr 28, 2026
3d10b85
Fix chassis pose
javizqh Apr 28, 2026
a5a44bf
Change scale
javizqh Apr 28, 2026
e5b336d
Add rotation
javizqh Apr 28, 2026
26caeee
Add scale
javizqh Apr 28, 2026
e0c3172
Change distances
javizqh Apr 28, 2026
2b6aba1
Change wheel pose
javizqh Apr 28, 2026
3bc6667
Update models
javizqh Apr 28, 2026
9581965
Fix urdf
javizqh Apr 28, 2026
a391c5b
Move camera pose
javizqh Apr 28, 2026
365f2f3
Update db
javizqh Apr 28, 2026
c392813
Update xacro
javizqh Apr 29, 2026
c5c0047
Update car models
javizqh Apr 29, 2026
91ffd5f
Fix wheel joints
javizqh Apr 29, 2026
100adc8
Test new world
javizqh Apr 29, 2026
a450ec0
Test again
javizqh Apr 29, 2026
f8fd367
Test again
javizqh Apr 29, 2026
a140391
Update all circuits
javizqh Apr 29, 2026
adb7df7
Add more robots
javizqh Apr 30, 2026
c071d5f
Remove ur from pick and place launcher
javizqh Apr 30, 2026
6d86978
Test split in ur5
javizqh Apr 30, 2026
d509e7c
Remove material
javizqh Apr 30, 2026
32a52f0
Add imports
javizqh Apr 30, 2026
162a985
Remove delay
javizqh Apr 30, 2026
fc8dbfd
Add trace
javizqh May 4, 2026
9d9d2f9
Fix undefined variable
javizqh May 4, 2026
cfa61d6
Remove all rviz config
javizqh May 4, 2026
fd91e7a
Remove trace
javizqh May 4, 2026
2781fe6
Add launch arguments
javizqh May 4, 2026
07526d9
Merge branch 'humble-devel' into test-replace-sdf
javizqh May 4, 2026
f55faf7
Fix
javizqh May 4, 2026
14e29fb
Update launchers
javizqh May 4, 2026
59c670c
Fix imports
javizqh May 4, 2026
65f7c51
Fix typo
javizqh May 4, 2026
1a71104
Test again
javizqh May 4, 2026
b1ccc11
Update db
javizqh May 4, 2026
dbff7fc
Update f1 launcher
javizqh May 4, 2026
b7404df
Remove unused var
javizqh May 4, 2026
eff2c70
Fix typo
javizqh May 4, 2026
a6a3885
Update launcher
javizqh May 4, 2026
56e90e8
Test autonomous car in xacro
javizqh May 5, 2026
1f8b569
Fix typo
javizqh May 5, 2026
c5c07cc
Fix typos
javizqh May 5, 2026
dbec7fc
Fix typo
javizqh May 5, 2026
4473cd3
Change lidar pose
javizqh May 5, 2026
5d2376c
Working autonomous car
javizqh May 5, 2026
99060c2
Test namespace
javizqh May 6, 2026
3e4fe32
Fix import
javizqh May 6, 2026
4146d19
Remove traces
javizqh May 6, 2026
bad6d2c
Add vacuum cleaner
javizqh May 6, 2026
d5a5934
Remove robot from launcher
javizqh May 6, 2026
d9c823e
Modify cmake
javizqh May 6, 2026
00dff94
Fix recursion
javizqh May 6, 2026
6091eda
Fix macros
javizqh May 6, 2026
944a2e7
Change ros type
javizqh May 6, 2026
36acdd1
Test again
javizqh May 7, 2026
81a0edb
Test
javizqh May 7, 2026
be9e757
Update yaml
javizqh May 7, 2026
1ff46f1
Test again
javizqh May 8, 2026
2e6ef12
Test
javizqh May 8, 2026
4d6f5a2
TEst again
javizqh May 8, 2026
90026c1
Move bumper
javizqh May 8, 2026
c759b5b
Update gz
javizqh May 8, 2026
ffac650
Fix pose
javizqh May 8, 2026
5678f68
More tests
javizqh May 8, 2026
9c2746d
Remove robot name
javizqh May 8, 2026
80db720
Test again
javizqh May 8, 2026
2567a52
Clean xacro
javizqh May 8, 2026
a5dc307
Add follow config
javizqh May 8, 2026
a5310e5
Test drone
javizqh May 11, 2026
fee005b
Add quadrotor to test
javizqh May 11, 2026
56d740b
Test new drone launcher
javizqh May 11, 2026
c1bb647
TEst again
javizqh May 11, 2026
92034b9
Fix arg
javizqh May 11, 2026
b2b5cd2
TEst updated model
javizqh May 11, 2026
fae4291
Merge branch 'humble-devel' into test-replace-sdf
javizqh May 11, 2026
b7c4a0b
Update launcher
javizqh May 11, 2026
ca1d988
Update meshes
javizqh May 11, 2026
764b5ec
Test laauncher
javizqh May 11, 2026
27b4144
TEst again
javizqh May 11, 2026
f4bc10c
Fix launcher
javizqh May 11, 2026
9efceb9
Test quadrotor
javizqh May 11, 2026
2f93cad
Update rover_4wd
javizqh May 12, 2026
d05c059
Test with gz
javizqh May 12, 2026
dc4f363
Test t2
javizqh May 12, 2026
0725cff
Update launcher
javizqh May 12, 2026
148f8aa
Fix typo
javizqh May 12, 2026
88fe52a
Fix links
javizqh May 12, 2026
9efcee1
Fix import
javizqh May 12, 2026
e5e56c3
Change meshes
javizqh May 12, 2026
7f2d277
Fix t2
javizqh May 13, 2026
0c1e20f
Fix typo
javizqh May 13, 2026
b6119fe
Fix unique
javizqh May 13, 2026
1119e56
Fix typo
javizqh May 13, 2026
a5f1355
Update db
javizqh May 13, 2026
e376df3
TEst follow person
javizqh May 13, 2026
64d2a4a
Fix all worlds
javizqh May 13, 2026
db4fac9
Update cmake
javizqh May 15, 2026
846a934
Fix import
javizqh May 15, 2026
ffe0f65
Fix stereo pose
javizqh May 15, 2026
37ed17b
Test holo taxi
javizqh May 15, 2026
bd8eeb9
Test argument
javizqh May 15, 2026
9f27d21
Fix typo
javizqh May 15, 2026
798f935
Fix final topic
javizqh May 15, 2026
7b54dad
Add logistic robot
javizqh May 18, 2026
34f5e3f
Update cmake
javizqh May 18, 2026
ff96d51
Fix typo
javizqh May 18, 2026
05d626f
Fix more typos
javizqh May 18, 2026
8522d46
Test logistic
javizqh May 18, 2026
fbadca3
Fix jpint
javizqh May 18, 2026
326c2db
Fix joint
javizqh May 18, 2026
06f76ca
Fix joint
javizqh May 18, 2026
b0fe176
Fix meshes
javizqh May 19, 2026
5aab0ff
Fix wheels
javizqh May 19, 2026
d942bc2
Fix spawn
javizqh May 20, 2026
fd51f23
Fix wheels pose
javizqh May 20, 2026
c0be5cd
Add base to ackermann logistic robot
javizqh May 21, 2026
86625d3
Test sdf fallback
javizqh May 21, 2026
df84d11
Test ackermann robot
javizqh May 21, 2026
9545d15
Update cmake
javizqh May 21, 2026
7098a4a
Remove old launchers and worlds
javizqh May 21, 2026
c89a7d4
Add base turtlebot3
javizqh May 21, 2026
f0402b0
Test turtlebot3
javizqh May 22, 2026
ad6a549
Test vacuum cleaner ith sdf for bumpers
javizqh May 22, 2026
0e62bf6
Test again
javizqh May 22, 2026
a8e1cb7
Fix bumpers in sdf
javizqh May 22, 2026
62dad51
Add turtlebot3 base in urdf
javizqh May 22, 2026
d2082e0
Test ball joints
javizqh May 22, 2026
62f26e9
Fix typo
javizqh May 22, 2026
9431040
Fix typo
javizqh May 22, 2026
ba2c3cb
Fix import typos
javizqh May 22, 2026
29907b9
Fix errors in turtlebot3
javizqh May 22, 2026
1d32988
Merge branch 'humble-devel' into test-replace-sdf
javizqh May 22, 2026
b368d3a
Linter
javizqh May 22, 2026
44c53b4
Add final ackermann robot
javizqh May 26, 2026
4c8c2f0
Update all launchers and worlds to the new style
javizqh May 26, 2026
df012da
Move pick and place world and launcher
javizqh May 26, 2026
22d5ea9
Fix space
javizqh May 26, 2026
1720c9e
Add back ur5 launcher in CustomRobots
javizqh May 26, 2026
794252c
Link robots with worlds
javizqh May 26, 2026
e6d219a
Change rotation of sensors
javizqh May 26, 2026
21094bc
Add back scripts path
javizqh May 26, 2026
9bc139c
Linter
javizqh May 26, 2026
d937e82
Update black version
javizqh May 26, 2026
9914c7a
Remove old code
javizqh May 26, 2026
ab6acb7
Update noise plugin
javizqh May 26, 2026
72df251
Fix minor errors
javizqh May 27, 2026
9fbddd2
Fix change in noise odom
javizqh May 27, 2026
c49b910
Remove final error
javizqh May 27, 2026
f58e0cf
Fix correct world
javizqh May 27, 2026
a252e09
Fix laser again
javizqh May 27, 2026
d71f517
Fix laser base link
javizqh May 27, 2026
68afc70
Rebase
javizqh May 27, 2026
79e54b9
Move deprecated assests
javizqh May 28, 2026
a0b925c
Remove unused worlds
javizqh May 28, 2026
364f53d
Try manually remove unused meshes
javizqh May 29, 2026
c41c505
Update docs
javizqh May 29, 2026
71b483d
Make smaller ocean
javizqh May 29, 2026
de233ab
Reduce even more
javizqh May 29, 2026
5317a2a
Reduce even more
javizqh May 29, 2026
1fe3470
Remove cube
javizqh May 29, 2026
96e4369
Move machine vision launchers
javizqh Jun 1, 2026
b247ec4
Fix missing params
javizqh Jun 1, 2026
1c64e2e
Launcher
javizqh Jun 1, 2026
1b5198e
Fix launcher
javizqh Jun 1, 2026
4a7693e
Fix launcher
javizqh Jun 1, 2026
e48b93d
Test launch
javizqh Jun 1, 2026
5453ff8
Rebase
javizqh Jun 1, 2026
7a4b3eb
Update world
javizqh Jun 1, 2026
3928837
Pass linter
javizqh Jun 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
52 changes: 26 additions & 26 deletions .github/workflows/python_lint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,31 +4,31 @@ name: Python Linting
on: [push]

jobs:
black-lint:
runs-on: ubuntu-latest
name: Python black Lint
steps:
- uses: actions/checkout@v4
- uses: psf/black@stable
with:
version: "24.2.0"
# flake8-lint:
# runs-on: ubuntu-latest
# name: Python flake8 Lint
# steps:
# - name: Check out source repository
# uses: actions/checkout@v3
black-lint:
runs-on: ubuntu-latest
name: Python black Lint
steps:
- uses: actions/checkout@v4
- uses: psf/black@stable
with:
version: "26.5.1"
# flake8-lint:
# runs-on: ubuntu-latest
# name: Python flake8 Lint
# steps:
# - name: Check out source repository
# uses: actions/checkout@v3

# - name: Set up Python environment
# uses: actions/setup-python@v4
# with:
# python-version: "3.11"
# - name: Set up Python environment
# uses: actions/setup-python@v4
# with:
# python-version: "3.11"

# - name: flake8 Lint
# uses: py-actions/flake8@v2
# with:
# ignore: "E701,W503,E203"
# exclude: "docs,.idea"
# max-line-length: "88"
# path: "."
# plugins: "flake8-docstrings flake8-black"
# - name: flake8 Lint
# uses: py-actions/flake8@v2
# with:
# ignore: "E701,W503,E203"
# exclude: "docs,.idea"
# max-line-length: "88"
# path: "."
# plugins: "flake8-docstrings flake8-black"
75 changes: 55 additions & 20 deletions CustomRobots/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -78,54 +78,89 @@ install(
DIRECTORY
follow_person_harmonic/models
follow_person_harmonic/params
Turtlebot2/turtlebot2_simulated/kobuki_description/launch
Turtlebot2/turtlebot2_simulated/kobuki_description/meshes
Turtlebot2/turtlebot2_simulated/kobuki_description/rviz
Turtlebot2/turtlebot2_simulated/kobuki_description/urdf
Turtlebot2/turtlebot2_simulated/turtlebot2/launch
Turtlebot2/turtlebot2_simulated/turtlebot2/rviz
Turtlebot2/turtlebot2_simulated/turtlebot2/urdf

f1/models
f1/params
f1/launch

autonomous_car/models
autonomous_car/params
autonomous_car/launch

vacuum_cleaner/models
vacuum_cleaner/params
vacuum_cleaner/launch

quadrotor/models
quadrotor/params
quadrotor/launch

rover_4wd/model
rover_4wd/params
rover_4wd/launch

Turtlebot2/model
Turtlebot2/params
Turtlebot2/launch

turtlebot3/models
turtlebot3/params
turtlebot3/launch

logistic_holonomic_robot/models
logistic_holonomic_robot/params
logistic_holonomic_robot/launch

logistic_ackermann_robot/models
logistic_ackermann_robot/params
logistic_ackermann_robot/launch

ur5/launch

roomba_robot/models
roomba_robot/params

ackermann_cars/models
ackermann_cars/params

car_junction/models
car_junction/scripts

# AMAZON WAREHOUSE ROBOT
amazon_robot_classic/models
amazon_robot_classic/urdf
amazon_robot_classic/meshes

amazon_warehouse_harmonic/models
amazon_warehouse_harmonic/params

package_delivery/models

# AMAZON HOSPITAL
amazon_hospital/models
amazon_hospital/hospital_world/launch
amazon_hospital/hospital_world/worlds
amazon_hospital/worlds

ackermann_logistic_robot/models

autoparking/models

autopark_harmonic/models
autopark_harmonic/params

drone_assets/models
drone_assets/bridges

taxi_navigator/models
taxi_navigator/params

3d_reconstruction/models
3d_reconstruction/params

marker_visual_loc/models
turtlebot3/models

turtlebot3/urdf
turtlebot3/params

laser_mapping/models

restaurant/models

pick_place/models
pick_place/urdf
rover_4wd_description/meshes
rover_4wd_description/urdf
rover_4wd_description/config

DESTINATION share/${PROJECT_NAME})

# install(
Expand Down
143 changes: 143 additions & 0 deletions CustomRobots/Turtlebot2/launch/turtlebot2.launch.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
import os
import xacro

from ament_index_python.packages import get_package_share_directory
from launch import LaunchDescription
from launch.substitutions import LaunchConfiguration, Command, IfElseSubstitution
from launch.actions import DeclareLaunchArgument, OpaqueFunction
from launch_ros.actions import Node
from launch_ros.parameter_descriptions import ParameterValue


def launch_setup(context):
use_sim_time = LaunchConfiguration("use_sim_time")
x = LaunchConfiguration("x")
y = LaunchConfiguration("y")
z = LaunchConfiguration("z")
R = LaunchConfiguration("R")
P = LaunchConfiguration("P")
Y = LaunchConfiguration("Y")
gz_sensor = LaunchConfiguration("sensor")

package_dir = get_package_share_directory("custom_robots")

nodes_to_start = []

sensor = gz_sensor.perform(context)

bridge_yaml = os.path.join(package_dir, "params", f"turtlebot2_{sensor}.yaml")

# =========================
# ROBOT DESCRIPTION (URDF)
# =========================
xacro_file = os.path.join(
package_dir,
"model",
"turtlebot2",
"turtlebot2.urdf.xacro",
)

robot_description_content = xacro.process_file(
xacro_file,
mappings={
"camera": "true" if sensor == "camera" else "false",
"stereo": "true" if sensor == "stereo" else "false",
},
).toxml()

robot_description = {"robot_description": robot_description_content}

robot_state_publisher_node = Node(
package="robot_state_publisher",
executable="robot_state_publisher",
name="robot_state_publisher",
output="screen",
parameters=[robot_description, {"use_sim_time": True}],
)

gz_spawn_entity = Node(
package="ros_gz_sim",
executable="create",
arguments=[
"-topic",
"/robot_description",
"-name",
"turtlebot2",
"-allow_renaming",
"true",
"-x",
x,
"-y",
y,
"-z",
z,
"-R",
R,
"-P",
P,
"-Y",
Y,
],
output="screen",
)

gz_ros2_bridge = Node(
package="ros_gz_bridge",
executable="parameter_bridge",
arguments=["--ros-args", "-p", f"config_file:={bridge_yaml}"],
output="screen",
)

nodes_to_start.append(robot_state_publisher_node)
nodes_to_start.append(gz_spawn_entity)
nodes_to_start.append(gz_ros2_bridge)

# Sensor deppending on sensor arguments
if sensor == "stereo":
gz_ros2_image_left_bridge = Node(
package="ros_gz_image",
executable="image_bridge",
arguments=["/cam_turtlebot_left/image_raw"],
output="screen",
)

gz_ros2_image_right_bridge = Node(
package="ros_gz_image",
executable="image_bridge",
arguments=["/cam_turtlebot_right/image_raw"],
output="screen",
)

nodes_to_start.append(gz_ros2_image_left_bridge)
nodes_to_start.append(gz_ros2_image_right_bridge)
elif sensor == "":
gz_ros2_image_bridge = Node(
package="ros_gz_image",
executable="image_bridge",
arguments=["/depth_camera/image_raw"],
output="screen",
)

nodes_to_start.append(gz_ros2_image_bridge)

return nodes_to_start


def generate_launch_description():
declared_arguments = []

# Add any entry parameter
declared_arguments.append(
DeclareLaunchArgument("use_sim_time", default_value="true")
)
declared_arguments.append(DeclareLaunchArgument("x", default_value="0"))
declared_arguments.append(DeclareLaunchArgument("y", default_value="0"))
declared_arguments.append(DeclareLaunchArgument("z", default_value="0"))
declared_arguments.append(DeclareLaunchArgument("R", default_value="0"))
declared_arguments.append(DeclareLaunchArgument("P", default_value="0"))
declared_arguments.append(DeclareLaunchArgument("Y", default_value="0"))
declared_arguments.append(DeclareLaunchArgument("sensor", default_value="stereo"))

return LaunchDescription(
declared_arguments + [OpaqueFunction(function=launch_setup)]
)
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,9 @@
<!--
Various useful properties such as constants and materials
-->
<robot name="xacro_properties" xmlns:xacro="http://ros.org/wiki/xacro">
<xacro:property name="M_PI" value="3.1415926535897931" />
<robot name="xacro_properties"
xmlns:xacro="http://ros.org/wiki/xacro">
<xacro:property name="M_PI" value="3.1415926535897931" />
<xacro:property name="material_white">
<material name="white">
<color rgba="1 1 1 1"/>
Expand Down
24 changes: 24 additions & 0 deletions CustomRobots/Turtlebot2/model/turtlebot2/turtlebot2.urdf.xacro
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<?xml version="1.0"?>
<robot name="turtlebot2"
xmlns:xacro="http://ros.org/wiki/xacro">

<xacro:arg name="camera" default="true"/>
<xacro:arg name="stereo" default="false"/>

<xacro:include filename="$(find custom_robots)/model/turtlebot2/turtlebot2_gz.urdf.xacro"/>
<xacro:include filename="$(find custom_robots)/model/turtlebot2/turtlebot2_common.urdf.xacro"/>

<xacro:turtlebot2/>

<xacro:if value="$(arg camera)">
<xacro:camera xyz="-0.118 0 0.2812" rpy="0 0 0" name="depth_camera" parent="base_link"/>
<xacro:laser xyz="0 0 0.44" rpy="0 0 0" name="laser" parent="base_link" topic="scan"/>
</xacro:if>

<xacro:if value="$(arg stereo)">
<xacro:fake_camera xyz="-0.118 0 0.23" rpy="0 0 0" name="depth_camera" parent="base_link"/>
<xacro:stereo_camera xyz="-0.05 0.076 0.2424" rpy="0 0 0" name="cam_turtlebot_left" parent="base_link"/>
<xacro:stereo_camera xyz="-0.05 -0.076 0.2424" rpy="0 0 0" name="cam_turtlebot_right" parent="base_link"/>
</xacro:if>

</robot>
Loading
Loading