Skip to content

Commit c90745b

Browse files
committed
Add A21 ultrasonic sensor
1 parent 1121b4c commit c90745b

File tree

3 files changed

+98
-1
lines changed

3 files changed

+98
-1
lines changed

meshes/a21_ultrasonic_sensor.stl

1.53 MB
Binary file not shown.

urdf/a21_ultrasonic_sensor.urdf.xacro

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
<?xml version="1.0"?>
2+
<robot name="sensor_ultrasonic_a21" xmlns:xacro="http://wiki.ros.org/xacro">
3+
4+
5+
<xacro:macro name="sensor_ultrasonic_a21" params="prefix parent prefix_topic:='front_ultrasonic' *origin gpu:=^|true">
6+
7+
<joint name="${prefix}_base_joint" type="fixed">
8+
<xacro:insert_block name="origin" />
9+
<parent link="${parent}"/>
10+
<child link="${prefix}_base_link"/>
11+
</joint>
12+
13+
14+
<link name="${prefix}_base_link">
15+
<collision>
16+
<origin xyz="0 0 0.0" rpy="0 0 0"/>
17+
<geometry>
18+
<box size="0.010 0.010 0.010"/>
19+
</geometry>
20+
</collision>
21+
22+
<visual>
23+
<origin xyz="0 0 0.0" rpy="0 0 0"/>
24+
<geometry>
25+
<mesh filename="package://robotnik_sensors/meshes/a21_ultrasonic_sensor.stl" scale="0.001 0.001 0.001"/>
26+
</geometry>
27+
</visual>
28+
29+
<inertial>
30+
<origin xyz="0.0 0 0.035" rpy="0 0 0" />
31+
<mass value="0.130" />
32+
<xacro:solid_cuboid_inertia m="0.130" w="0.05" h="0.05" d="0.07" />
33+
</inertial>
34+
</link>
35+
36+
<link name="${prefix}_link">
37+
</link>
38+
<joint name="${prefix}_joint" type="fixed">
39+
<parent link="${prefix}_base_link"/>
40+
<child link="${prefix}_link"/>
41+
<origin xyz="0.00 0.0 0.0" rpy="0 0 ${PI/2}"/>
42+
</joint>
43+
44+
<!-- Hokuyo sensor for simulation -->
45+
<!--xacro:ssensor_ultrasonic_a21_gazebo/-->
46+
47+
</xacro:macro>
48+
49+
50+
<!-- <xacro:macro name="sensor_ultrasonic_a21_gazebo">
51+
<gazebo reference="${prefix}_link">
52+
<xacro:if value="${gpu}">
53+
<xacro:property name="ray_type" value="gpu_ray" />
54+
<xacro:property name="plugin_lib" value="libgazebo_ros_gpu_laser.so" />
55+
</xacro:if>
56+
<xacro:unless value="${gpu}">
57+
<xacro:property name="ray_type" value="ray" />
58+
<xacro:property name="plugin_lib" value="libgazebo_ros_laser.so" />
59+
</xacro:unless>
60+
<sensor type="${ray_type}" name="${prefix}_sensor">
61+
<pose>0 0 0 0 0 0</pose>
62+
<visualize>false</visualize>
63+
<update_rate>40</update_rate>
64+
<ray>
65+
<scan>
66+
<horizontal>
67+
<samples>1081</samples>
68+
<resolution>1</resolution>
69+
<min_angle>${min_angle}</min_angle>
70+
<max_angle>${max_angle}</max_angle>
71+
</horizontal>
72+
</scan>
73+
<range>
74+
<min>0.06</min>
75+
<max>20.0</max>
76+
<! resolution>0.004363323</resolution >
77+
<resolution>0.004359297</resolution>
78+
<! resolution>0.001</resolution >
79+
</range>
80+
<noise>
81+
<type>gaussian</type>
82+
<mean>0.0</mean>
83+
<stddev>0.01</stddev>
84+
</noise>
85+
</ray>
86+
<plugin name="${prefix}_controller" filename="${plugin_lib}">
87+
<topicName>${prefix_topic}/scan</topicName>
88+
<frameName>/${prefix}_link</frameName>
89+
</plugin>
90+
</sensor>
91+
</gazebo>
92+
</xacro:macro>
93+
-->
94+
</robot>

urdf/all_sensors.urdf.xacro

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,9 @@
5353
<!-- Hokuyo ust30lx -->
5454
<xacro:include filename="$(find robotnik_sensors)/urdf/hokuyo_ust30lx.urdf.xacro" />
5555

56+
<!-- Ultrasonic sensor A21 -->
57+
<xacro:include filename="$(find robotnik_sensors)/urdf/a21_ultrasonic_sensor.urdf.xacro" />
58+
5659
<!-- Imu -->
5760
<xacro:include filename="$(find robotnik_sensors)/urdf/imu.urdf.xacro" />
5861

@@ -98,7 +101,7 @@
98101
<!-- Orbbec Astra -->
99102
<xacro:include filename="$(find robotnik_sensors)/urdf/orbbec_astra.urdf.xacro" />
100103

101-
<!-- Orbbec Astra Pro-->
104+
<!-- Orbbec Astra Pro-->
102105
<xacro:include filename="$(find robotnik_sensors)/urdf/orbbec_astra_pro.urdf.xacro" />
103106

104107
<!-- Zed -->

0 commit comments

Comments
 (0)