This repository has been archived by the owner on Dec 4, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
10 changed files
with
248 additions
and
17 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
cmake_minimum_required(VERSION 3.8) | ||
project(bot_descriptions) | ||
|
||
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(<dependency> REQUIRED) | ||
|
||
install( | ||
DIRECTORY src | ||
DESTINATION share/${PROJECT_NAME} | ||
) | ||
|
||
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() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
<?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>bot_descriptions</name> | ||
<version>0.0.0</version> | ||
<description>TODO: Package description</description> | ||
<maintainer email="[email protected]">root</maintainer> | ||
<license>TODO: License declaration</license> | ||
|
||
<buildtool_depend>ament_cmake</buildtool_depend> | ||
|
||
<test_depend>ament_lint_auto</test_depend> | ||
<test_depend>ament_lint_common</test_depend> | ||
|
||
<export> | ||
<build_type>ament_cmake</build_type> | ||
</export> | ||
</package> |
89 changes: 89 additions & 0 deletions
89
src/bot_descriptions/src/description/lunabot_description.urdf
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,89 @@ | ||
<?xml version="1.0"?> | ||
<robot name="lunabot" xmlns:xacro="http://ros.org/wiki/xacro"> | ||
|
||
<!-- Define robot constants --> | ||
<xacro:property name="base_width" value="0.31"/> | ||
<xacro:property name="base_length" value="0.42"/> | ||
<xacro:property name="base_height" value="0.18"/> | ||
|
||
<xacro:property name="wheel_radius" value="0.10"/> | ||
<xacro:property name="wheel_width" value="0.04"/> | ||
<xacro:property name="wheel_ygap" value="0.025"/> | ||
<xacro:property name="wheel_zoff" value="0.05"/> | ||
<xacro:property name="wheel_xoff" value="0.12"/> | ||
|
||
<!-- Robot Base --> | ||
<link name="base_link"> | ||
<visual> | ||
<geometry> | ||
<box size="${base_length} ${base_width} ${base_height}"/> | ||
</geometry> | ||
<material name="Cyan"> | ||
<color rgba="0 1.0 1.0 1.0"/> | ||
</material> | ||
</visual> | ||
</link> | ||
|
||
<!-- Robot Footprint --> | ||
<link name="base_footprint"/> | ||
|
||
<joint name="base_joint" type="fixed"> | ||
<parent link="base_link"/> | ||
<child link="base_footprint"/> | ||
<origin xyz="0.0 0.0 ${-(wheel_radius+wheel_zoff)}" rpy="0 0 0"/> | ||
</joint> | ||
|
||
<link name="pozyx_frame"> | ||
<visual> | ||
<geometry> | ||
<box size="0.1 0.1 0.1"/> | ||
</geometry> | ||
</visual> | ||
</link> | ||
|
||
<joint name="pozyx_joint" type="fixed"> | ||
<parent link="base_link"/> | ||
<child link="pozyx_frame"/> | ||
<origin xyz="0 0 0.01"/> | ||
</joint> | ||
|
||
<link name="camera_imu_optical_frame"> | ||
<visual> | ||
<geometry> | ||
<box size="0.1 0.1 0.1"/> | ||
</geometry> | ||
</visual> | ||
</link> | ||
|
||
<joint name="camera_imu_optical_joint" type="fixed"> | ||
<parent link="base_link"/> | ||
<child link="camera_imu_optical_frame"/> | ||
<origin xyz="0 0 0.01"/> | ||
</joint> | ||
|
||
<!-- Wheels --> | ||
<!-- <xacro:macro name="wheel" params="prefix x_reflect y_reflect"> | ||
<link name="${prefix}_link"> | ||
<visual> | ||
<origin xyz="0 0 0" rpy="${pi/2} 0 0"/> | ||
<geometry> | ||
<cylinder radius="${wheel_radius}" length="${wheel_width}"/> | ||
</geometry> | ||
<material name="Gray"> | ||
<color rgba="0.5 0.5 0.5 1.0"/> | ||
</material> | ||
</visual> | ||
</link> | ||
<joint name="${prefix}_joint" type="continuous"> | ||
<parent link="base_link"/> | ||
<child link="${prefix}_link"/> | ||
<origin xyz="${x_reflect*wheel_xoff} ${y_reflect*(base_width/2+wheel_ygap)} ${-wheel_zoff}" rpy="0 0 0"/> | ||
<axis xyz="0 1 0"/> | ||
</joint> | ||
</xacro:macro> | ||
<xacro:wheel prefix="drivewhl_l" x_reflect="-1" y_reflect="1" /> | ||
<xacro:wheel prefix="drivewhl_r" x_reflect="-1" y_reflect="-1" /> --> | ||
|
||
</robot> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
### ekf config file ### | ||
ekf_filter_node: | ||
ros__parameters: | ||
# The frequency, in Hz, at which the filter will output a position estimate. Note that the filter will not begin | ||
# computation until it receives at least one message from one of theinputs. It will then run continuously at the | ||
# frequency specified here, regardless of whether it receives more measurements. Defaults to 30 if unspecified. | ||
frequency: 30.0 | ||
|
||
# ekf_localization_node and ukf_localization_node both use a 3D omnidirectional motion model. If this parameter is | ||
# set to true, no 3D information will be used in your state estimate. Use this if you are operating in a planar | ||
# environment and want to ignore the effect of small variations in the ground plane that might otherwise be detected | ||
# by, for example, an IMU. Defaults to false if unspecified. | ||
two_d_mode: true | ||
|
||
# Whether to publish the acceleration state. Defaults to false if unspecified. | ||
publish_acceleration: true | ||
|
||
# Whether to broadcast the transformation over the /tf topic. Defaultsto true if unspecified. | ||
publish_tf: true | ||
|
||
# 1. Set the map_frame, odom_frame, and base_link frames to the appropriate frame names for your system. | ||
# 1a. If your system does not have a map_frame, just remove it, and make sure "world_frame" is set to the value of odom_frame. | ||
# 2. If you are fusing continuous position data such as wheel encoder odometry, visual odometry, or IMU data, set "world_frame" | ||
# to your odom_frame value. This is the default behavior for robot_localization's state estimation nodes. | ||
# 3. If you are fusing global absolute position data that is subject to discrete jumps (e.g., GPS or position updates from landmark | ||
# observations) then: | ||
# 3a. Set your "world_frame" to your map_frame value | ||
# 3b. MAKE SURE something else is generating the odom->base_link transform. Note that this can even be another state estimation node | ||
# from robot_localization! However, that instance should *not* fuse the global data. | ||
map_frame: map # Defaults to "map" if unspecified | ||
odom_frame: odom # Defaults to "odom" if unspecified | ||
base_link_frame: base_link # Defaults to "base_link" ifunspecified | ||
world_frame: odom # Defaults to the value ofodom_frame if unspecified | ||
|
||
pose0: /pozyx_pose | ||
pse0_config: [true, true, true, | ||
true, true, true, | ||
false, false, false, | ||
false, false, false, | ||
false, false, false] | ||
|
||
imu0: /camera/imu | ||
imu0_config: [false, false, false, | ||
false, false, false, | ||
true, true, true, | ||
true, true, true, | ||
false, false, false] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -7,6 +7,10 @@ | |
<maintainer email="[email protected]">root</maintainer> | ||
<license>TODO: License declaration</license> | ||
|
||
<exec_depend>robot_state_publisher</exec_depend> | ||
<exec_depend>robot_localization</exec_depend> | ||
<exec_depend>xacro</exec_depend> | ||
|
||
<test_depend>ament_copyright</test_depend> | ||
<test_depend>ament_flake8</test_depend> | ||
<test_depend>ament_pep257</test_depend> | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters