Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
9ad0f06
Add ObstacleMemoryNode to manage and publish obstacle positions
Jan 31, 2025
ebc199b
Refactor ObstacleMemoryNode to store and publish obstacle coordinates…
Feb 1, 2025
258626d
Add UnboundedFloat message definition for flexible float array storage
Feb 1, 2025
d4d1fcb
Add UnboundedInter message definition for dynamic integer array storage
Feb 1, 2025
193d75a
Add CMakeLists.txt for custom message project with UnboundedInter and…
Feb 1, 2025
f9ef2ff
Add package.xml for custom message project configuration
Feb 1, 2025
d2c265d
Remove unused imports in obstacle_memory.py to streamline code
Feb 1, 2025
8131f58
Add duplicate obstacle verification in obstacle_memory.py
Feb 4, 2025
f0c657f
Remove unused import of get_hsv_value_based_on_click in image_node.py
Feb 4, 2025
4779c76
Refactor obstacle detection logic in obstacle_node.py for improved cl…
Feb 4, 2025
27217ab
Remove commented-out code in obstacle_memory.py to enhance code reada…
Feb 4, 2025
1091d06
Add obstacle_memory.py to package data in setup.py
Feb 4, 2025
899efe4
Add obstacle_memory_node to launch description for improved functiona…
Feb 4, 2025
412108e
Add obstacle_memory_node entry point to setup.py for improved functio…
Feb 4, 2025
dc4449a
Refactor obstacle_memory.py to improve variable naming and enhance co…
Geo99pro Feb 12, 2025
9e60b0f
Refactor obstacle_node.py to streamline transform_direction assignmen…
Geo99pro Feb 12, 2025
e56b959
Update .gitignore and refactor obstacle_memory_node references for co…
Geo99pro Feb 12, 2025
c79c790
Update .gitignore to include additional files and add new graph visua…
Geo99pro Feb 12, 2025
d0d5080
Remove redundant comment in ImageNode class to enhance code clarity
Geo99pro Feb 12, 2025
23d1aff
Consistently use double quotes for target_frame assignment in obstacl…
Geo99pro Feb 12, 2025
950146f
Update timestamp assignment in ImageNode to use the clock instance fo…
Geo99pro Feb 12, 2025
2231670
Decrease duplicate threshold in ObstacleMemoryNode for improved obsta…
Geo99pro Feb 12, 2025
bf119d2
Update poses of models in final_project_new_world.sdf for improved po…
Geo99pro Feb 12, 2025
d7ad31e
Fix indentation in robot.urdf for improved readability
Geo99pro Feb 12, 2025
f5a0355
Add import for rclpy.time in obstacle_node.py for time handling
Geo99pro Feb 12, 2025
75d8b44
Fix syntax error in parameter_bridge arguments for clock topic
Geo99pro Feb 12, 2025
4cd0efb
Clarify image processing log messages and update timestamp retrieval …
Geo99pro Feb 12, 2025
99aaf6d
Refactor image_node.py for improved readability and error handling in…
Feb 12, 2025
2e759fb
Reorganize imports and enhance docstring for get_hsv_limit function i…
Feb 12, 2025
9a731aa
Refactor obstacle_node.py to improve contour detection logic and enha…
Feb 12, 2025
b0d27a1
Enhance header frame_id assignment and add logging for intersection p…
Feb 12, 2025
f6442bb
Update logging message for published obstacle position in obstacle_no…
Feb 12, 2025
0110683
Refactor obstacle_memory.py to improve duplicate threshold and enhanc…
Feb 12, 2025
140d3cb
Increase duplicate threshold in obstacle_memory.py to improve obstacl…
Feb 12, 2025
bf5a7d9
Set header frame_id to "odom" in obstacle_memory.py for improved obst…
Feb 12, 2025
0af01f5
Add memory size publisher and log memory size in obstacle_memory.py
Feb 12, 2025
cf9eb7f
Reduce transformation timeout to 1 second in obstacle_node.py for imp…
Feb 12, 2025
bd668b1
Fix argument syntax in gpg_fproject_launch.py for parameter_bridge node
Feb 13, 2025
22ff9bb
Rename float_storage to float32_values in UnboundedFloat.msg for clarity
Feb 13, 2025
99c5349
Enhance logging messages in image_node.py for improved clarity and em…
Feb 13, 2025
b597312
Rename float_storage to float32_values in ObstacleMemoryNode for clarity
Feb 13, 2025
f59ad52
Refactor transformation logic in obstacle_node.py for improved readab…
Feb 13, 2025
7ed4de3
Update MovePhysicalRobot to handle obstacle memory and improve moveme…
Feb 13, 2025
a54e8e0
Add obstacle transformation handling in MovePhysicalRobot for improve…
Geo99pro Feb 13, 2025
4a87f19
Refactor obstacle_msg construction in ObstacleMemoryNode for improved…
Geo99pro Feb 13, 2025
c37d31f
Update obstacle_node.py to change target frame from 'odom' to 'base_l…
Geo99pro Feb 13, 2025
73a32bb
Refactor image_node.py to remove unnecessary timestamp assignments an…
Geo99pro Feb 13, 2025
9fc2fc7
Update .gitignore to include additional file patterns for better excl…
Geo99pro Feb 13, 2025
0ed790a
Update .gitignore to include zip files for better exclusion management
Geo99pro Feb 13, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,8 @@ mask.png
result.png
worlds_new2.sdf~
fproject_world.sdf~
fproject_world.sdf.bak
fproject_world.sdf.bak
rosbag2_2024_12_16-20_32_03
*.png
.gitignore
*.zip
32 changes: 32 additions & 0 deletions src/custom_msg_fproject/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
cmake_minimum_required(VERSION 3.8)
project(custom_msg_fproject)

if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
add_compile_options(-Wall -Wextra -Wpedantic)
endif()

# find dependencies
find_package(ament_cmake REQUIRED)
# uncomment the following section in order to fill in
# further dependencies manually.
find_package(rosidl_default_generators REQUIRED)
find_package(std_msgs REQUIRED)

rosidl_generate_interfaces(${PROJECT_NAME}
"msg/UnboundedInter.msg"
"msg/UnboundedFloat.msg"
DEPENDENCIES std_msgs
)
if(BUILD_TESTING)
find_package(ament_lint_auto REQUIRED)
# the following line skips the linter which checks for copyrights
# comment the line when a copyright and license is added to all source files
set(ament_cmake_copyright_FOUND TRUE)
# the following line skips cpplint (only works in a git repo)
# comment the line when this package is in a git repo and when
# a copyright and license is added to all source files
set(ament_cmake_cpplint_FOUND TRUE)
ament_lint_auto_find_test_dependencies()
endif()

ament_package()
2 changes: 2 additions & 0 deletions src/custom_msg_fproject/msg/UnboundedFloat.msg
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
std_msgs/Header header
float32[] float32_values
1 change: 1 addition & 0 deletions src/custom_msg_fproject/msg/UnboundedInter.msg
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
int32[] storage
21 changes: 21 additions & 0 deletions src/custom_msg_fproject/package.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<?xml version="1.0"?>
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>custom_msg_fproject</name>
<version>0.0.0</version>
<description>TODO: Package description</description>
<maintainer email="lhodonou349@gmail.com">root</maintainer>
<license>Apache-2.0</license>

<buildtool_depend>ament_cmake</buildtool_depend>
<depend>std_msgs</depend>
<depend>rosidl_default_generators</depend>
<exec_depend>rosidl_default_runtime</exec_depend>
<member_of_group>rosidl_interface_packages</member_of_group>
<test_depend>ament_lint_auto</test_depend>
<test_depend>ament_lint_common</test_depend>

<export>
<build_type>ament_cmake</build_type>
</export>
</package>
77 changes: 14 additions & 63 deletions src/gpg_fgazebo/worlds/final_project_new_world.sdf
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@
<self_collide>false</self_collide>
</model>
<model name='cone'>
<pose>2.5363732600268438 -0.80112278462533015 0.49999999846970899 6.5729138181508515e-12 -1.3573746487752694e-05 2.9434920695967671e-11</pose>
<pose>3.5084900856018066 -4.8863000869750968 0.50007998943328835 1.5065299587321439e-06 -1.636899968423854e-05 -6.2029800553207759e-07</pose>
<link name='cone_link'>
<inertial>
<inertia>
Expand Down Expand Up @@ -119,7 +119,7 @@
<self_collide>false</self_collide>
</model>
<model name='box_0'>
<pose>3.0250799655914307 -3.766556978225708 0.49999999990199806 4.3528643514705118e-21 -7.19647729771648e-21 1.4704217161817701e-22</pose>
<pose>3.0250799655914307 -7.103431224822998 0.49616199731826782 6.8396199260892533e-19 -1.784369977462839e-19 -9.0752201588740355e-20</pose>
<link name='box_link'>
<inertial>
<inertia>
Expand Down Expand Up @@ -166,7 +166,7 @@
<self_collide>false</self_collide>
</model>
<model name='cone_1'>
<pose>3.8625005118640274 0.93321859835144638 0.49999999832908254 1.4294517723464686e-11 -1.095599094382217e-05 7.2967956065578558e-09</pose>
<pose>3.6618199348449703 1.9262722730636597 0.49999800324440002 1.2282500100848701e-11 -1.1096400158295009e-05 7.2934400063360099e-09</pose>
<link name='cone_link'>
<inertial>
<inertia>
Expand Down Expand Up @@ -215,7 +215,7 @@
<self_collide>false</self_collide>
</model>
<model name='cone_2'>
<pose>4.453384447351727 -2.4193280444908121 0.49999999771937531 4.9310286018203178e-12 -1.1413900008258369e-05 0.00039735288789561593</pose>
<pose>3.6361923217773433 -2.5664587020874023 0.49999985098838806 2.9413502168548196e-07 -1.2823601078716922e-06 0.00039737702790333288</pose>
<link name='cone_link'>
<inertial>
<inertia>
Expand Down Expand Up @@ -264,7 +264,7 @@
<self_collide>false</self_collide>
</model>
<model name='cone_3'>
<pose>6.8430671858149577 0.78498223335679773 0.49999999767414682 1.5448136740589461e-11 -8.0348490882515501e-06 1.5838780830737034e-11</pose>
<pose>3.6360399723052979 -0.2170737236738205 0.49999979138374329 4.6287199357060178e-07 -2.0394199677252063e-06 -1.2406700326614776e-07</pose>
<link name='cone_link'>
<inertial>
<inertia>
Expand Down Expand Up @@ -312,57 +312,8 @@
<static>false</static>
<self_collide>false</self_collide>
</model>
<model name='cone_4'>
<pose>8.3753870428920862 -1.0539718866350367 0.49999999328581984 4.5424763573070339e-13 -6.0198071594412506e-06 3.9727298803672929e-14</pose>
<link name='cone_link'>
<inertial>
<inertia>
<ixx>0.074999999999999997</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>0.074999999999999997</iyy>
<iyz>0</iyz>
<izz>0.074999999999999997</izz>
</inertia>
<mass>1</mass>
<pose>0 0 0 0 0 0</pose>
</inertial>
<collision name='cone_collision'>
<geometry>
<cone>
<radius>0.5</radius>
<length>1</length>
</cone>
</geometry>
<surface>
<friction>
<ode/>
</friction>
<bounce/>
<contact/>
</surface>
</collision>
<visual name='cone_visual'>
<geometry>
<cone>
<radius>0.5</radius>
<length>1</length>
</cone>
</geometry>
<material>
<ambient>1 0.5 0 1</ambient>
<diffuse>1 0.5 0 1</diffuse>
<specular>1 1 1 1</specular>
</material>
</visual>
<pose>0 0 0 0 0 0</pose>
<enable_wind>false</enable_wind>
</link>
<static>false</static>
<self_collide>false</self_collide>
</model>
<model name='obstacle_1'>
<pose>0.93528187274932861 -3.721019983291626 0.049999901152185701 3.9158531513353579e-18 7.7454060110091739e-18 3.7197256459834753e-20</pose>
<pose>1.0488699674606323 -2.4860496520996094 0.049999900162220001 3.9156699469856512e-18 7.7465497452815544e-18 3.7198800053824108e-20</pose>
<link name='box_link'>
<inertial>
<inertia>
Expand Down Expand Up @@ -458,7 +409,7 @@
<self_collide>false</self_collide>
</model>
<model name='obstacle_1_1'>
<pose>0.013356563008388056 -3.8117073265420482 0.049999901152185278 3.9376194225938313e-18 7.6919996772288558e-18 3.7170246867682256e-20</pose>
<pose>0.30450239777565002 -2.0890100002288818 0.049999900162220001 3.9402401063106201e-18 7.6927002874043523e-18 3.7160901610837255e-20</pose>
<link name='box_link'>
<inertial>
<inertia>
Expand Down Expand Up @@ -505,7 +456,7 @@
<self_collide>false</self_collide>
</model>
<model name='obstacle_1_2'>
<pose>0.8416714580967537 -2.5757948134049022 0.049999901152185278 3.9376962056216585e-18 7.69307262342453e-18 3.7173909086980559e-20</pose>
<pose>1.7968200445175171 -2.7600438594818115 0.049999900162220001 3.9402599586453214e-18 7.6943199070437311e-18 3.71722010272517e-20</pose>
<link name='box_link'>
<inertial>
<inertia>
Expand Down Expand Up @@ -552,7 +503,7 @@
<self_collide>false</self_collide>
</model>
<model name='obstacle_1_4'>
<pose>4.1581422306674831 -1.488395035635325 0.049999901152185278 3.9377765141972875e-18 7.6950985280545685e-18 3.7171162566952042e-20</pose>
<pose>1.0895800590515137 -0.93555700778961182 0.049999900162220001 3.9396201344415116e-18 7.7009299073186424e-18 3.7178799085106517e-20</pose>
<link name='box_link'>
<inertial>
<inertia>
Expand Down Expand Up @@ -599,7 +550,7 @@
<self_collide>false</self_collide>
</model>
<model name='obstacle_1_5'>
<pose>0.13756405494454182 -1.0513805918298864 0.049999901152185278 3.9453594697948961e-18 7.6901497063274743e-18 3.7168130591222518e-20</pose>
<pose>0.34709501266479492 -0.44078299403190613 0.049999900162220001 3.9387499404371058e-18 7.6873798617044112e-18 3.717899941791112e-20</pose>
<link name='box_link'>
<inertial>
<inertia>
Expand Down Expand Up @@ -646,7 +597,7 @@
<self_collide>false</self_collide>
</model>
<model name='obstacle_1_6'>
<pose>1.0996535508002552 0.24602853746299003 0.049999901152185278 3.9453958552831698e-18 7.6900072206275729e-18 3.7172416794418986e-20</pose>
<pose>1.0996500253677368 0.760772705078125 0.049999900162220001 3.9388798077932766e-18 7.6870200381379506e-18 3.7183700776470748e-20</pose>
<link name='box_link'>
<inertial>
<inertia>
Expand Down Expand Up @@ -693,7 +644,7 @@
<self_collide>false</self_collide>
</model>
<model name='obstacle_1_7'>
<pose>2.9735159531075981 0.039177734632563022 0.049999901152185278 3.9447443518316567e-18 7.705324462983486e-18 3.7175843135111715e-20</pose>
<pose>1.8049399852752686 0.29998359084129333 0.049999900162220001 3.9370798627803613e-18 7.7054802278682966e-18 3.7180899348380572e-20</pose>
<link name='box_link'>
<inertial>
<inertia>
Expand Down Expand Up @@ -740,7 +691,7 @@
<self_collide>false</self_collide>
</model>
<model name='obstacle_1_8'>
<pose>2.1315328186118649 -2.2259022002784734 0.049999901152185278 3.9419464567571984e-18 7.6933586260454131e-18 3.716253038745501e-20</pose>
<pose>1.7610900402069092 -1.2950215339660645 0.049999900162220001 3.939379838473565e-18 7.6900500007217324e-18 3.7144700503058586e-20</pose>
<link name='box_link'>
<inertial>
<inertia>
Expand Down Expand Up @@ -787,7 +738,7 @@
<self_collide>false</self_collide>
</model>
<model name='obstacle_1_3'>
<pose>-0.44637602705250679 1.0239373472672866 0.049999901152185278 3.9183953316390883e-18 7.7378141686947243e-18 3.7207537265826434e-20</pose>
<pose>0.42512500286102295 1.654688835144043 0.049999900162220001 3.9117400118954118e-18 7.7347103091740829e-18 3.7218600689737096e-20</pose>
<link name='box_link'>
<inertial>
<inertia>
Expand Down
Loading