├── CMakeLists.txt ├── README.md ├── minitaur ├── CMakeLists.txt ├── config │ └── joint_names_minitaur.yaml ├── launch │ ├── display.launch │ └── gazebo.launch ├── meshes │ ├── base_link.STL │ ├── leg1a1.STL │ ├── leg1a2.STL │ ├── leg1a3.STL │ ├── leg1a4.STL │ ├── leg2a1.STL │ ├── leg2a2.STL │ ├── leg2a3.STL │ ├── leg2a4.STL │ ├── leg3a1.STL │ ├── leg3a2.STL │ ├── leg3a3.STL │ ├── leg3a4.STL │ ├── leg4a1.STL │ ├── leg4a2.STL │ ├── leg4a3.STL │ └── leg4a4.STL ├── model.config ├── package.xml └── urdf │ ├── minitaur.gazebo │ ├── minitaur.sdf │ └── minitaur.urdf ├── minitaur_control ├── CMakeLists.txt ├── config │ └── minitaur_control.yaml ├── launch │ └── minitaur_control.launch └── package.xml ├── minitaur_gazebo ├── CMakeLists.txt ├── launch │ ├── display.launch │ └── gazebo.launch └── package.xml ├── scout ├── CMakeLists.txt ├── config │ └── joint_names_scout.yaml ├── launch │ ├── display.launch │ └── gazebo.launch ├── meshes │ ├── base_link.STL │ ├── leg1.STL │ ├── leg2.STL │ ├── leg3.STL │ └── leg4.STL ├── model.config ├── package.xml └── urdf │ ├── scout.gazebo │ ├── scout.sdf │ └── scout.urdf ├── scout_control ├── CMakeLists.txt ├── config │ └── scout_control.yaml ├── launch │ └── scout_control.launch └── package.xml ├── scout_gazebo ├── CMakeLists.txt ├── launch │ ├── display.launch │ └── gazebo.launch └── package.xml └── scout_navigation ├── CMakeLists.txt ├── package.xml └── scripts └── walking.py /CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # toplevel CMakeLists.txt for a catkin workspace 2 | # catkin/cmake/toplevel.cmake 3 | 4 | cmake_minimum_required(VERSION 2.8.3) 5 | 6 | set(CATKIN_TOPLEVEL TRUE) 7 | 8 | # search for catkin within the workspace 9 | set(_cmd "catkin_find_pkg" "catkin" "${CMAKE_SOURCE_DIR}") 10 | execute_process(COMMAND ${_cmd} 11 | RESULT_VARIABLE _res 12 | OUTPUT_VARIABLE _out 13 | ERROR_VARIABLE _err 14 | OUTPUT_STRIP_TRAILING_WHITESPACE 15 | ERROR_STRIP_TRAILING_WHITESPACE 16 | ) 17 | if(NOT _res EQUAL 0 AND NOT _res EQUAL 2) 18 | # searching fot catkin resulted in an error 19 | string(REPLACE ";" " " _cmd_str "${_cmd}") 20 | message(FATAL_ERROR "Search for 'catkin' in workspace failed (${_cmd_str}): ${_err}") 21 | endif() 22 | 23 | # include catkin from workspace or via find_package() 24 | if(_res EQUAL 0) 25 | set(catkin_EXTRAS_DIR "${CMAKE_SOURCE_DIR}/${_out}/cmake") 26 | # include all.cmake without add_subdirectory to let it operate in same scope 27 | include(${catkin_EXTRAS_DIR}/all.cmake NO_POLICY_SCOPE) 28 | add_subdirectory("${_out}") 29 | 30 | else() 31 | # use either CMAKE_PREFIX_PATH explicitly passed to CMake as a command line argument 32 | # or CMAKE_PREFIX_PATH from the environment 33 | if(NOT DEFINED CMAKE_PREFIX_PATH) 34 | if(NOT "$ENV{CMAKE_PREFIX_PATH}" STREQUAL "") 35 | string(REPLACE ":" ";" CMAKE_PREFIX_PATH $ENV{CMAKE_PREFIX_PATH}) 36 | endif() 37 | endif() 38 | 39 | # list of catkin workspaces 40 | set(catkin_search_path "") 41 | foreach(path ${CMAKE_PREFIX_PATH}) 42 | if(EXISTS "${path}/.catkin") 43 | list(FIND catkin_search_path ${path} _index) 44 | if(_index EQUAL -1) 45 | list(APPEND catkin_search_path ${path}) 46 | endif() 47 | endif() 48 | endforeach() 49 | 50 | # search for catkin in all workspaces 51 | set(CATKIN_TOPLEVEL_FIND_PACKAGE TRUE) 52 | find_package(catkin QUIET 53 | NO_POLICY_SCOPE 54 | PATHS ${catkin_search_path} 55 | NO_DEFAULT_PATH NO_CMAKE_FIND_ROOT_PATH) 56 | unset(CATKIN_TOPLEVEL_FIND_PACKAGE) 57 | 58 | if(NOT catkin_FOUND) 59 | message(FATAL_ERROR "find_package(catkin) failed. catkin was neither found in the workspace nor in the CMAKE_PREFIX_PATH. One reason may be that no ROS setup.sh was sourced before.") 60 | endif() 61 | endif() 62 | 63 | catkin_workspace() 64 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Quadruped-Robot 2 | 3 | ## Gazebo Simulation Packages for Ghost Minitaur and Scout Quadruped Robot 4 | 5 | Contains: 6 | 1) Description files (URDF and SDF) 7 | 2) ROS Controllers 8 | 3) Gazebo Launch Files 9 | 4) Startup codes for controllers 10 | -------------------------------------------------------------------------------- /minitaur/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.8.3) 2 | 3 | project(minitaur) 4 | 5 | find_package(catkin REQUIRED) 6 | 7 | catkin_package() 8 | 9 | find_package(roslaunch) 10 | 11 | foreach(dir config launch meshes urdf) 12 | install(DIRECTORY ${dir}/ 13 | DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}/${dir}) 14 | endforeach(dir) 15 | -------------------------------------------------------------------------------- /minitaur/config/joint_names_minitaur.yaml: -------------------------------------------------------------------------------- 1 | controller_joint_names: ['leg1j1', 'leg1j2', 'leg1j3', 'leg1j4', 'leg2j1', 'leg2j2', 'leg2j3', 'leg2j4', 'leg3j1', 'leg3j2', 'leg3j3', 'leg3j4', 'leg4j1', 'leg4j2', 'leg4j3', 'leg4j4', ] 2 | -------------------------------------------------------------------------------- /minitaur/launch/display.launch: -------------------------------------------------------------------------------- 1 | 2 | 4 | 7 | 10 | 13 | 17 | 21 | 26 | -------------------------------------------------------------------------------- /minitaur/launch/gazebo.launch: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 11 | 16 | 24 | 29 | 30 | -------------------------------------------------------------------------------- /minitaur/meshes/base_link.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/base_link.STL -------------------------------------------------------------------------------- /minitaur/meshes/leg1a1.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/leg1a1.STL -------------------------------------------------------------------------------- /minitaur/meshes/leg1a2.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/leg1a2.STL -------------------------------------------------------------------------------- /minitaur/meshes/leg1a3.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/leg1a3.STL -------------------------------------------------------------------------------- /minitaur/meshes/leg1a4.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/leg1a4.STL -------------------------------------------------------------------------------- /minitaur/meshes/leg2a1.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/leg2a1.STL -------------------------------------------------------------------------------- /minitaur/meshes/leg2a2.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/leg2a2.STL -------------------------------------------------------------------------------- /minitaur/meshes/leg2a3.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/leg2a3.STL -------------------------------------------------------------------------------- /minitaur/meshes/leg2a4.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/leg2a4.STL -------------------------------------------------------------------------------- /minitaur/meshes/leg3a1.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/leg3a1.STL -------------------------------------------------------------------------------- /minitaur/meshes/leg3a2.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/leg3a2.STL -------------------------------------------------------------------------------- /minitaur/meshes/leg3a3.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/leg3a3.STL -------------------------------------------------------------------------------- /minitaur/meshes/leg3a4.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/leg3a4.STL -------------------------------------------------------------------------------- /minitaur/meshes/leg4a1.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/leg4a1.STL -------------------------------------------------------------------------------- /minitaur/meshes/leg4a2.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/leg4a2.STL -------------------------------------------------------------------------------- /minitaur/meshes/leg4a3.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/leg4a3.STL -------------------------------------------------------------------------------- /minitaur/meshes/leg4a4.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/minitaur/meshes/leg4a4.STL -------------------------------------------------------------------------------- /minitaur/model.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | minitaur 4 | 1.0 5 | urdf/minitaur.urdf 6 | 7 | jrl301 8 | name@email.address 9 | 10 | 11 | Minitaur Qaudraped Robot 12 | 13 | 14 | -------------------------------------------------------------------------------- /minitaur/package.xml: -------------------------------------------------------------------------------- 1 | 2 | minitaur 3 | 1.0.0 4 | 5 | URDF Description package for minitaur 6 | This package contains configuration data, 3D models and launch files 7 | for minitaur robot 8 | 9 | me 10 | 11 | BSD 12 | catkin 13 | roslaunch 14 | robot_state_publisher 15 | rviz 16 | joint_state_publisher 17 | gazebo 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /minitaur/urdf/minitaur.gazebo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | /minitaur 8 | gazebo_ros_control/DefaultRobotHWSim 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /minitaur/urdf/minitaur.sdf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 0 0 0 0 -0 0 5 | 6 | 0.083033 -0.15433 0.10624 0 -0 0 7 | 0.71915 8 | 9 | 0.0023612 10 | 0 11 | 6.8894e-06 12 | 0.0062972 13 | 0 14 | 0.0040109 15 | 16 | 17 | 18 | 0 0 0 0 -0 0 19 | 20 | 21 | 1 1 1 22 | model://minitaur/meshes/base_link.STL 23 | 24 | 25 | 26 | 27 | 0 0 0 0 -0 0 28 | 29 | 30 | 1 1 1 31 | model://minitaur/meshes/base_link.STL 32 | 33 | 34 | 35 | 36 | 37 | 0.17303 -0.071332 0.10916 -1.5708 0 0 38 | 39 | 0.027399 0 -0.008649 0 -0 0 40 | 0.0096655 41 | 42 | 3.47e-07 43 | 0 44 | 7.67e-08 45 | 3.57e-06 46 | 0 47 | 3.82e-06 48 | 49 | 50 | 51 | 0 0 0 0 -0 0 52 | 53 | 54 | 1 1 1 55 | model://minitaur/meshes/leg1a1.STL 56 | 57 | 58 | 59 | 60 | 0 0 0 0 -0 0 61 | 62 | 63 | 1 1 1 64 | model://minitaur/meshes/leg1a1.STL 65 | 66 | 67 | 68 | 69 | 70 | leg1a1 71 | base_link 72 | 73 | 0 -1 4e-06 74 | 75 | -1e+16 76 | 1e+16 77 | 78 | 79 | 0 80 | 0 81 | 82 | 1 83 | 84 | 85 | 86 | 0.22303 -0.071332 0.10916 -1.5708 -0.89566 5e-06 87 | 88 | -0.053394 -0 -0.002796 0 -0 0 89 | 0.016662 90 | 91 | 6.06e-07 92 | 0 93 | -1.58e-07 94 | 1.85e-05 95 | 0 96 | 1.9e-05 97 | 98 | 99 | 100 | 0 0 0 0 -0 0 101 | 102 | 103 | 1 1 1 104 | model://minitaur/meshes/leg1a2.STL 105 | 106 | 107 | 108 | 109 | 0 0 0 0 -0 0 110 | 111 | 112 | 1 1 1 113 | model://minitaur/meshes/leg1a2.STL 114 | 115 | 116 | 117 | 118 | 119 | leg1a2 120 | leg1a1 121 | 122 | 0 -1 4e-06 123 | 124 | -1e+16 125 | 1e+16 126 | 127 | 128 | 0 129 | 0 130 | 131 | 1 132 | 133 | 134 | 135 | 0.14803 -0.065332 0.10916 1.5708 -0 -3.14159 136 | 137 | 0.027399 -0 -0.008649 0 -0 0 138 | 0.0096655 139 | 140 | 3.47e-07 141 | 0 142 | 7.67e-08 143 | 3.57e-06 144 | 0 145 | 3.82e-06 146 | 147 | 148 | 149 | 0 0 0 0 -0 0 150 | 151 | 152 | 1 1 1 153 | model://minitaur/meshes/leg1a3.STL 154 | 155 | 156 | 157 | 158 | 0 0 0 0 -0 0 159 | 160 | 161 | 1 1 1 162 | model://minitaur/meshes/leg1a3.STL 163 | 164 | 165 | 166 | 167 | 168 | leg1a3 169 | base_link 170 | 171 | 7e-06 -1 4e-06 172 | 173 | -1e+16 174 | 1e+16 175 | 176 | 177 | 0 178 | 0 179 | 180 | 1 181 | 182 | 183 | 184 | 0.09803 -0.065332 0.10916 1.5708 0.895693 3e-06 185 | 186 | 0.05 0 0.003 0 -0 0 187 | 0.015531 188 | 189 | 5.76e-07 190 | 0 191 | 0 192 | 1.59e-05 193 | 0 194 | 1.64e-05 195 | 196 | 197 | 198 | 0 0 0 0 -0 0 199 | 200 | 201 | 1 1 1 202 | model://minitaur/meshes/leg1a4.STL 203 | 204 | 205 | 206 | 207 | 0 0 0 0 -0 0 208 | 209 | 210 | 1 1 1 211 | model://minitaur/meshes/leg1a4.STL 212 | 213 | 214 | 215 | 216 | 217 | leg1a4 218 | leg1a3 219 | 220 | 2e-06 -1 -1e-06 221 | 222 | -1e+16 223 | 1e+16 224 | 225 | 226 | 0 227 | 0 228 | 229 | 1 230 | 231 | 232 | 233 | 0.018033 -0.071332 0.10916 -1.5708 0 0 234 | 235 | 0.027399 -0 -0.008649 0 -0 0 236 | 0.0096655 237 | 238 | 3.47e-07 239 | 0 240 | 7.67e-08 241 | 3.57e-06 242 | 0 243 | 3.82e-06 244 | 245 | 246 | 247 | 0 0 0 0 -0 0 248 | 249 | 250 | 1 1 1 251 | model://minitaur/meshes/leg2a1.STL 252 | 253 | 254 | 255 | 256 | 0 0 0 0 -0 0 257 | 258 | 259 | 1 1 1 260 | model://minitaur/meshes/leg2a1.STL 261 | 262 | 263 | 264 | 265 | 266 | leg2a1 267 | base_link 268 | 269 | 0 -1 4e-06 270 | 271 | -1e+16 272 | 1e+16 273 | 274 | 275 | 0 276 | 0 277 | 278 | 1 279 | 280 | 281 | 282 | 0.068033 -0.071332 0.10916 -1.5708 -0.89566 5e-06 283 | 284 | -0.053394 -0 -0.002796 0 -0 0 285 | 0.016662 286 | 287 | 6.06e-07 288 | 0 289 | -1.58e-07 290 | 1.85e-05 291 | 0 292 | 1.9e-05 293 | 294 | 295 | 296 | 0 0 0 0 -0 0 297 | 298 | 299 | 1 1 1 300 | model://minitaur/meshes/leg2a2.STL 301 | 302 | 303 | 304 | 305 | 0 0 0 0 -0 0 306 | 307 | 308 | 1 1 1 309 | model://minitaur/meshes/leg2a2.STL 310 | 311 | 312 | 313 | 314 | 315 | leg2a2 316 | leg2a1 317 | 318 | 0 -1 4e-06 319 | 320 | -1e+16 321 | 1e+16 322 | 323 | 324 | 0 325 | 0 326 | 327 | 1 328 | 329 | 330 | 331 | -0.006967 -0.065332 0.10916 1.5708 0 3.14159 332 | 333 | 0.027399 0 -0.008649 0 -0 0 334 | 0.0096655 335 | 336 | 3.47e-07 337 | 0 338 | 7.67e-08 339 | 3.57e-06 340 | 0 341 | 3.82e-06 342 | 343 | 344 | 345 | 0 0 0 0 -0 0 346 | 347 | 348 | 1 1 1 349 | model://minitaur/meshes/leg2a3.STL 350 | 351 | 352 | 353 | 354 | 0 0 0 0 -0 0 355 | 356 | 357 | 1 1 1 358 | model://minitaur/meshes/leg2a3.STL 359 | 360 | 361 | 362 | 363 | 364 | leg2a3 365 | base_link 366 | 367 | -7e-06 -1 4e-06 368 | 369 | -1e+16 370 | 1e+16 371 | 372 | 373 | 0 374 | 0 375 | 376 | 1 377 | 378 | 379 | 380 | -0.056967 -0.065332 0.10916 -1.57078 -0.89566 3.14158 381 | 382 | -0.05 -0 0.003 0 -0 0 383 | 0.015531 384 | 385 | 5.76e-07 386 | 0 387 | 0 388 | 1.59e-05 389 | 0 390 | 1.64e-05 391 | 392 | 393 | 394 | 0 0 0 0 -0 0 395 | 396 | 397 | 1 1 1 398 | model://minitaur/meshes/leg2a4.STL 399 | 400 | 401 | 402 | 403 | 0 0 0 0 -0 0 404 | 405 | 406 | 1 1 1 407 | model://minitaur/meshes/leg2a4.STL 408 | 409 | 410 | 411 | 412 | 413 | leg2a4 414 | leg2a3 415 | 416 | -2e-06 -1 8e-06 417 | 418 | -1e+16 419 | 1e+16 420 | 421 | 422 | 0 423 | 0 424 | 425 | 1 426 | 427 | 428 | 429 | 0.14803 -0.22533 0.10916 -1.5708 0 -3.14159 430 | 431 | 0.027399 0 0.003351 0 -0 0 432 | 0.0096655 433 | 434 | 3.47e-07 435 | 0 436 | 7.67e-08 437 | 3.57e-06 438 | 0 439 | 3.82e-06 440 | 441 | 442 | 443 | 0 0 0 0 -0 0 444 | 445 | 446 | 1 1 1 447 | model://minitaur/meshes/leg3a1.STL 448 | 449 | 450 | 451 | 452 | 0 0 0 0 -0 0 453 | 454 | 455 | 1 1 1 456 | model://minitaur/meshes/leg3a1.STL 457 | 458 | 459 | 460 | 461 | 462 | leg3a1 463 | base_link 464 | 465 | 7e-06 -1 -4e-06 466 | 467 | -1e+16 468 | 1e+16 469 | 470 | 471 | 0 472 | 0 473 | 474 | 1 475 | 476 | 477 | 478 | 0.09803 -0.23133 0.10916 -1.5708 -0.89566 -3.14158 479 | 480 | -0.053394 0 0.003204 0 -0 0 481 | 0.016662 482 | 483 | 6.06e-07 484 | 0 485 | -1.58e-07 486 | 1.85e-05 487 | 0 488 | 1.9e-05 489 | 490 | 491 | 492 | 0 0 0 0 -0 0 493 | 494 | 495 | 1 1 1 496 | model://minitaur/meshes/leg3a2.STL 497 | 498 | 499 | 500 | 501 | 0 0 0 0 -0 0 502 | 503 | 504 | 1 1 1 505 | model://minitaur/meshes/leg3a2.STL 506 | 507 | 508 | 509 | 510 | 511 | leg3a2 512 | leg3a1 513 | 514 | 7e-06 -1 -4e-06 515 | 516 | -1e+16 517 | 1e+16 518 | 519 | 520 | 0 521 | 0 522 | 523 | 1 524 | 525 | 526 | 527 | 0.17303 -0.23133 0.10916 1.5708 -0 0 528 | 529 | 0.027399 0 0.003351 0 -0 0 530 | 0.0096655 531 | 532 | 3.47e-07 533 | 0 534 | 7.67e-08 535 | 3.57e-06 536 | 0 537 | 3.82e-06 538 | 539 | 540 | 541 | 0 0 0 0 -0 0 542 | 543 | 544 | 1 1 1 545 | model://minitaur/meshes/leg3a3.STL 546 | 547 | 548 | 549 | 550 | 0 0 0 0 -0 0 551 | 552 | 553 | 1 1 1 554 | model://minitaur/meshes/leg3a3.STL 555 | 556 | 557 | 558 | 559 | 560 | leg3a3 561 | base_link 562 | 563 | 0 -1 -4e-06 564 | 565 | -1e+16 566 | 1e+16 567 | 568 | 569 | 0 570 | 0 571 | 572 | 1 573 | 574 | 575 | 576 | 0.22303 -0.23733 0.10916 -1.5708 0.895693 3.14159 577 | 578 | 0.05 0 0.003 0 -0 0 579 | 0.015531 580 | 581 | 5.76e-07 582 | 0 583 | 0 584 | 1.59e-05 585 | 0 586 | 1.64e-05 587 | 588 | 589 | 590 | 0 0 0 0 -0 0 591 | 592 | 593 | 1 1 1 594 | model://minitaur/meshes/leg3a4.STL 595 | 596 | 597 | 598 | 599 | 0 0 0 0 -0 0 600 | 601 | 602 | 1 1 1 603 | model://minitaur/meshes/leg3a4.STL 604 | 605 | 606 | 607 | 608 | 609 | leg3a4 610 | leg3a3 611 | 612 | 0 -1 -4e-06 613 | 614 | -1e+16 615 | 1e+16 616 | 617 | 618 | 0 619 | 0 620 | 621 | 1 622 | 623 | 624 | 625 | -0.006967 -0.22533 0.10916 -1.5708 -0 -3.14159 626 | 627 | 0.027399 0 0.003351 0 -0 0 628 | 0.0096655 629 | 630 | 3.47e-07 631 | 0 632 | 7.67e-08 633 | 3.57e-06 634 | 0 635 | 3.82e-06 636 | 637 | 638 | 639 | 0 0 0 0 -0 0 640 | 641 | 642 | 1 1 1 643 | model://minitaur/meshes/leg4a1.STL 644 | 645 | 646 | 647 | 648 | 0 0 0 0 -0 0 649 | 650 | 651 | 1 1 1 652 | model://minitaur/meshes/leg4a1.STL 653 | 654 | 655 | 656 | 657 | 658 | leg4a1 659 | base_link 660 | 661 | 7e-06 -1 -4e-06 662 | 663 | -1e+16 664 | 1e+16 665 | 666 | 667 | 0 668 | 0 669 | 670 | 1 671 | 672 | 673 | 674 | -0.056967 -0.23133 0.10916 -1.5708 -0.89566 -3.14158 675 | 676 | -0.053394 -0 0.003204 0 -0 0 677 | 0.016662 678 | 679 | 6.06e-07 680 | 0 681 | -1.58e-07 682 | 1.85e-05 683 | 0 684 | 1.9e-05 685 | 686 | 687 | 688 | 0 0 0 0 -0 0 689 | 690 | 691 | 1 1 1 692 | model://minitaur/meshes/leg4a2.STL 693 | 694 | 695 | 696 | 697 | 0 0 0 0 -0 0 698 | 699 | 700 | 1 1 1 701 | model://minitaur/meshes/leg4a2.STL 702 | 703 | 704 | 705 | 706 | 707 | leg4a2 708 | leg4a1 709 | 710 | 7e-06 -1 -4e-06 711 | 712 | -1e+16 713 | 1e+16 714 | 715 | 716 | 0 717 | 0 718 | 719 | 1 720 | 721 | 722 | 723 | 0.018033 -0.23133 0.10916 1.5708 -0 0 724 | 725 | 0.027399 0 0.003351 0 -0 0 726 | 0.0096655 727 | 728 | 3.47e-07 729 | 0 730 | 7.67e-08 731 | 3.57e-06 732 | 0 733 | 3.82e-06 734 | 735 | 736 | 737 | 0 0 0 0 -0 0 738 | 739 | 740 | 1 1 1 741 | model://minitaur/meshes/leg4a3.STL 742 | 743 | 744 | 745 | 746 | 0 0 0 0 -0 0 747 | 748 | 749 | 1 1 1 750 | model://minitaur/meshes/leg4a3.STL 751 | 752 | 753 | 754 | 755 | 756 | leg4a3 757 | base_link 758 | 759 | 0 -1 -4e-06 760 | 761 | -1e+16 762 | 1e+16 763 | 764 | 765 | 0 766 | 0 767 | 768 | 1 769 | 770 | 771 | 772 | 0.068033 -0.23733 0.10916 -1.5708 0.895693 3.14159 773 | 774 | 0.05 0 0.003 0 -0 0 775 | 0.015531 776 | 777 | 5.76e-07 778 | 0 779 | 0 780 | 1.59e-05 781 | 0 782 | 1.64e-05 783 | 784 | 785 | 786 | 0 0 0 0 -0 0 787 | 788 | 789 | 1 1 1 790 | model://minitaur/meshes/leg4a4.STL 791 | 792 | 793 | 794 | 795 | 0 0 0 0 -0 0 796 | 797 | 798 | 1 1 1 799 | model://minitaur/meshes/leg4a4.STL 800 | 801 | 802 | 803 | 804 | 805 | leg4a4 806 | leg4a3 807 | 808 | 0 -1 -4e-06 809 | 810 | -1e+16 811 | 1e+16 812 | 813 | 814 | 0 815 | 0 816 | 817 | 1 818 | 819 | 820 | 821 | 822 | -------------------------------------------------------------------------------- /minitaur/urdf/minitaur.urdf: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | /minitaur 6 | gazebo_ros_control/DefaultRobotHWSim 7 | 8 | 9 | 11 | 12 | 15 | 17 | 24 | 25 | 26 | 29 | 30 | 32 | 33 | 35 | 37 | 38 | 39 | 40 | 43 | 44 | 46 | 47 | 48 | 49 | 51 | 52 | 55 | 57 | 64 | 65 | 66 | 69 | 70 | 72 | 73 | 75 | 77 | 78 | 79 | 80 | 83 | 84 | 86 | 87 | 88 | 89 | 92 | 95 | 97 | 99 | 101 | 102 | 104 | 105 | 108 | 110 | 117 | 118 | 119 | 122 | 123 | 125 | 126 | 128 | 130 | 131 | 132 | 133 | 136 | 137 | 139 | 140 | 141 | 142 | 145 | 148 | 150 | 152 | 154 | 155 | 157 | 158 | 161 | 163 | 170 | 171 | 172 | 175 | 176 | 178 | 179 | 181 | 183 | 184 | 185 | 186 | 189 | 190 | 192 | 193 | 194 | 195 | 198 | 201 | 203 | 205 | 207 | 208 | 210 | 211 | 214 | 216 | 223 | 224 | 225 | 228 | 229 | 231 | 232 | 234 | 236 | 237 | 238 | 239 | 242 | 243 | 245 | 246 | 247 | 248 | 251 | 254 | 256 | 258 | 260 | 261 | 263 | 264 | 267 | 269 | 276 | 277 | 278 | 281 | 282 | 284 | 285 | 287 | 289 | 290 | 291 | 292 | 295 | 296 | 298 | 299 | 300 | 301 | 304 | 307 | 309 | 311 | 313 | 314 | 316 | 317 | 320 | 322 | 329 | 330 | 331 | 334 | 335 | 337 | 338 | 340 | 342 | 343 | 344 | 345 | 348 | 349 | 351 | 352 | 353 | 354 | 357 | 360 | 362 | 364 | 366 | 367 | 369 | 370 | 373 | 375 | 382 | 383 | 384 | 387 | 388 | 390 | 391 | 393 | 395 | 396 | 397 | 398 | 401 | 402 | 404 | 405 | 406 | 407 | 410 | 413 | 415 | 417 | 419 | 420 | 422 | 423 | 426 | 428 | 435 | 436 | 437 | 440 | 441 | 443 | 444 | 446 | 448 | 449 | 450 | 451 | 454 | 455 | 457 | 458 | 459 | 460 | 463 | 466 | 468 | 470 | 472 | 473 | 475 | 476 | 479 | 481 | 488 | 489 | 490 | 493 | 494 | 496 | 497 | 499 | 501 | 502 | 503 | 504 | 507 | 508 | 510 | 511 | 512 | 513 | 516 | 519 | 521 | 523 | 525 | 526 | 528 | 529 | 532 | 534 | 541 | 542 | 543 | 546 | 547 | 549 | 550 | 552 | 554 | 555 | 556 | 557 | 560 | 561 | 563 | 564 | 565 | 566 | 569 | 572 | 574 | 576 | 578 | 579 | 581 | 582 | 585 | 587 | 594 | 595 | 596 | 599 | 600 | 602 | 603 | 605 | 607 | 608 | 609 | 610 | 613 | 614 | 616 | 617 | 618 | 619 | 622 | 625 | 627 | 629 | 631 | 632 | 634 | 635 | 638 | 640 | 647 | 648 | 649 | 652 | 653 | 655 | 656 | 658 | 660 | 661 | 662 | 663 | 666 | 667 | 669 | 670 | 671 | 672 | 675 | 678 | 680 | 682 | 684 | 685 | 687 | 688 | 691 | 693 | 700 | 701 | 702 | 705 | 706 | 708 | 709 | 711 | 713 | 714 | 715 | 716 | 719 | 720 | 722 | 723 | 724 | 725 | 728 | 731 | 733 | 735 | 737 | 738 | 740 | 741 | 744 | 746 | 753 | 754 | 755 | 758 | 759 | 761 | 762 | 764 | 766 | 767 | 768 | 769 | 772 | 773 | 775 | 776 | 777 | 778 | 781 | 784 | 786 | 788 | 790 | 791 | 793 | 794 | 797 | 799 | 806 | 807 | 808 | 811 | 812 | 814 | 815 | 817 | 819 | 820 | 821 | 822 | 825 | 826 | 828 | 829 | 830 | 831 | 834 | 837 | 839 | 841 | 843 | 844 | 846 | 847 | 850 | 852 | 859 | 860 | 861 | 864 | 865 | 867 | 868 | 870 | 872 | 873 | 874 | 875 | 878 | 879 | 881 | 882 | 883 | 884 | 887 | 890 | 892 | 894 | 896 | 897 | 898 | 899 | /minitaur/cmd_vel 900 | odom 901 | odom 902 | 20.0 903 | base_link 904 | 905 | 906 | 907 | transmission_interface/SimpleTransmission 908 | 909 | EffortJointInterface 910 | 911 | 912 | EffortJointInterface 913 | 1 914 | 915 | 916 | 917 | -------------------------------------------------------------------------------- /minitaur_control/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.8.3) 2 | project(minitaur_control) 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 | controller_manager 12 | joint_state_controller 13 | robot_state_publisher 14 | ) 15 | 16 | ## System dependencies are found with CMake's conventions 17 | # find_package(Boost REQUIRED COMPONENTS system) 18 | 19 | 20 | ## Uncomment this if the package has a setup.py. This macro ensures 21 | ## modules and global scripts declared therein get installed 22 | ## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html 23 | # catkin_python_setup() 24 | 25 | ################################################ 26 | ## Declare ROS messages, services and actions ## 27 | ################################################ 28 | 29 | ## To declare and build messages, services or actions from within this 30 | ## package, follow these steps: 31 | ## * Let MSG_DEP_SET be the set of packages whose message types you use in 32 | ## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...). 33 | ## * In the file package.xml: 34 | ## * add a build_depend tag for "message_generation" 35 | ## * add a build_depend and a exec_depend tag for each package in MSG_DEP_SET 36 | ## * If MSG_DEP_SET isn't empty the following dependency has been pulled in 37 | ## but can be declared for certainty nonetheless: 38 | ## * add a exec_depend tag for "message_runtime" 39 | ## * In this file (CMakeLists.txt): 40 | ## * add "message_generation" and every package in MSG_DEP_SET to 41 | ## find_package(catkin REQUIRED COMPONENTS ...) 42 | ## * add "message_runtime" and every package in MSG_DEP_SET to 43 | ## catkin_package(CATKIN_DEPENDS ...) 44 | ## * uncomment the add_*_files sections below as needed 45 | ## and list every .msg/.srv/.action file to be processed 46 | ## * uncomment the generate_messages entry below 47 | ## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...) 48 | 49 | ## Generate messages in the 'msg' folder 50 | # add_message_files( 51 | # FILES 52 | # Message1.msg 53 | # Message2.msg 54 | # ) 55 | 56 | ## Generate services in the 'srv' folder 57 | # add_service_files( 58 | # FILES 59 | # Service1.srv 60 | # Service2.srv 61 | # ) 62 | 63 | ## Generate actions in the 'action' folder 64 | # add_action_files( 65 | # FILES 66 | # Action1.action 67 | # Action2.action 68 | # ) 69 | 70 | ## Generate added messages and services with any dependencies listed here 71 | # generate_messages( 72 | # DEPENDENCIES 73 | # std_msgs # Or other packages containing msgs 74 | # ) 75 | 76 | ################################################ 77 | ## Declare ROS dynamic reconfigure parameters ## 78 | ################################################ 79 | 80 | ## To declare and build dynamic reconfigure parameters within this 81 | ## package, follow these steps: 82 | ## * In the file package.xml: 83 | ## * add a build_depend and a exec_depend tag for "dynamic_reconfigure" 84 | ## * In this file (CMakeLists.txt): 85 | ## * add "dynamic_reconfigure" to 86 | ## find_package(catkin REQUIRED COMPONENTS ...) 87 | ## * uncomment the "generate_dynamic_reconfigure_options" section below 88 | ## and list every .cfg file to be processed 89 | 90 | ## Generate dynamic reconfigure parameters in the 'cfg' folder 91 | # generate_dynamic_reconfigure_options( 92 | # cfg/DynReconf1.cfg 93 | # cfg/DynReconf2.cfg 94 | # ) 95 | 96 | ################################### 97 | ## catkin specific configuration ## 98 | ################################### 99 | ## The catkin_package macro generates cmake config files for your package 100 | ## Declare things to be passed to dependent projects 101 | ## INCLUDE_DIRS: uncomment this if your package contains header files 102 | ## LIBRARIES: libraries you create in this project that dependent projects also need 103 | ## CATKIN_DEPENDS: catkin_packages dependent projects also need 104 | ## DEPENDS: system dependencies of this project that dependent projects also need 105 | catkin_package( 106 | # INCLUDE_DIRS include 107 | # LIBRARIES minitaur_control 108 | # CATKIN_DEPENDS controller_manager joint_state_controller robot_state_publisher 109 | # DEPENDS system_lib 110 | ) 111 | 112 | ########### 113 | ## Build ## 114 | ########### 115 | 116 | ## Specify additional locations of header files 117 | ## Your package locations should be listed before other locations 118 | include_directories( 119 | # include 120 | ${catkin_INCLUDE_DIRS} 121 | ) 122 | 123 | ## Declare a C++ library 124 | # add_library(${PROJECT_NAME} 125 | # src/${PROJECT_NAME}/minitaur_control.cpp 126 | # ) 127 | 128 | ## Add cmake target dependencies of the library 129 | ## as an example, code may need to be generated before libraries 130 | ## either from message generation or dynamic reconfigure 131 | # add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) 132 | 133 | ## Declare a C++ executable 134 | ## With catkin_make all packages are built within a single CMake context 135 | ## The recommended prefix ensures that target names across packages don't collide 136 | # add_executable(${PROJECT_NAME}_node src/minitaur_control_node.cpp) 137 | 138 | ## Rename C++ executable without prefix 139 | ## The above recommended prefix causes long target names, the following renames the 140 | ## target back to the shorter version for ease of user use 141 | ## e.g. "rosrun someones_pkg node" instead of "rosrun someones_pkg someones_pkg_node" 142 | # set_target_properties(${PROJECT_NAME}_node PROPERTIES OUTPUT_NAME node PREFIX "") 143 | 144 | ## Add cmake target dependencies of the executable 145 | ## same as for the library above 146 | # add_dependencies(${PROJECT_NAME}_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) 147 | 148 | ## Specify libraries to link a library or executable target against 149 | # target_link_libraries(${PROJECT_NAME}_node 150 | # ${catkin_LIBRARIES} 151 | # ) 152 | 153 | ############# 154 | ## Install ## 155 | ############# 156 | 157 | # all install targets should use catkin DESTINATION variables 158 | # See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html 159 | 160 | ## Mark executable scripts (Python etc.) for installation 161 | ## in contrast to setup.py, you can choose the destination 162 | # install(PROGRAMS 163 | # scripts/my_python_script 164 | # DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} 165 | # ) 166 | 167 | ## Mark executables and/or libraries for installation 168 | # install(TARGETS ${PROJECT_NAME} ${PROJECT_NAME}_node 169 | # ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} 170 | # LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} 171 | # RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} 172 | # ) 173 | 174 | ## Mark cpp header files for installation 175 | # install(DIRECTORY include/${PROJECT_NAME}/ 176 | # DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} 177 | # FILES_MATCHING PATTERN "*.h" 178 | # PATTERN ".svn" EXCLUDE 179 | # ) 180 | 181 | ## Mark other files for installation (e.g. launch and bag files, etc.) 182 | # install(FILES 183 | # # myfile1 184 | # # myfile2 185 | # DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} 186 | # ) 187 | 188 | ############# 189 | ## Testing ## 190 | ############# 191 | 192 | ## Add gtest based cpp test target and link libraries 193 | # catkin_add_gtest(${PROJECT_NAME}-test test/test_minitaur_control.cpp) 194 | # if(TARGET ${PROJECT_NAME}-test) 195 | # target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME}) 196 | # endif() 197 | 198 | ## Add folders to be run by python nosetests 199 | # catkin_add_nosetests(test) 200 | -------------------------------------------------------------------------------- /minitaur_control/config/minitaur_control.yaml: -------------------------------------------------------------------------------- 1 | minitaur: 2 | # Publish all joint states ----------------------------------- 3 | /minitaur/joint_state_controller: 4 | type: joint_state_controller/JointStateController 5 | publish_rate: 50 6 | 7 | # Position Controllers --------------------------------------- 8 | /minitaur/joint1_position_controller: 9 | type: effort_controllers/JointPositionController 10 | joint: leg1j1 11 | pid: {p: 0.0010, i: 0.0001, d: 0.005} 12 | -------------------------------------------------------------------------------- /minitaur_control/launch/minitaur_control.launch: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 9 | 10 | 11 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /minitaur_control/package.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | minitaur_control 4 | 0.0.0 5 | The minitaur_control package 6 | 7 | 8 | 9 | 10 | manuj 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 | controller_manager 53 | joint_state_controller 54 | robot_state_publisher 55 | controller_manager 56 | joint_state_controller 57 | robot_state_publisher 58 | controller_manager 59 | joint_state_controller 60 | robot_state_publisher 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | -------------------------------------------------------------------------------- /minitaur_gazebo/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.8.3) 2 | project(minitaur_gazebo) 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) 11 | 12 | ## System dependencies are found with CMake's conventions 13 | # find_package(Boost REQUIRED COMPONENTS system) 14 | 15 | 16 | ## Uncomment this if the package has a setup.py. This macro ensures 17 | ## modules and global scripts declared therein get installed 18 | ## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html 19 | # catkin_python_setup() 20 | 21 | ################################################ 22 | ## Declare ROS messages, services and actions ## 23 | ################################################ 24 | 25 | ## To declare and build messages, services or actions from within this 26 | ## package, follow these steps: 27 | ## * Let MSG_DEP_SET be the set of packages whose message types you use in 28 | ## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...). 29 | ## * In the file package.xml: 30 | ## * add a build_depend tag for "message_generation" 31 | ## * add a build_depend and a exec_depend tag for each package in MSG_DEP_SET 32 | ## * If MSG_DEP_SET isn't empty the following dependency has been pulled in 33 | ## but can be declared for certainty nonetheless: 34 | ## * add a exec_depend tag for "message_runtime" 35 | ## * In this file (CMakeLists.txt): 36 | ## * add "message_generation" and every package in MSG_DEP_SET to 37 | ## find_package(catkin REQUIRED COMPONENTS ...) 38 | ## * add "message_runtime" and every package in MSG_DEP_SET to 39 | ## catkin_package(CATKIN_DEPENDS ...) 40 | ## * uncomment the add_*_files sections below as needed 41 | ## and list every .msg/.srv/.action file to be processed 42 | ## * uncomment the generate_messages entry below 43 | ## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...) 44 | 45 | ## Generate messages in the 'msg' folder 46 | # add_message_files( 47 | # FILES 48 | # Message1.msg 49 | # Message2.msg 50 | # ) 51 | 52 | ## Generate services in the 'srv' folder 53 | # add_service_files( 54 | # FILES 55 | # Service1.srv 56 | # Service2.srv 57 | # ) 58 | 59 | ## Generate actions in the 'action' folder 60 | # add_action_files( 61 | # FILES 62 | # Action1.action 63 | # Action2.action 64 | # ) 65 | 66 | ## Generate added messages and services with any dependencies listed here 67 | # generate_messages( 68 | # DEPENDENCIES 69 | # std_msgs # Or other packages containing msgs 70 | # ) 71 | 72 | ################################################ 73 | ## Declare ROS dynamic reconfigure parameters ## 74 | ################################################ 75 | 76 | ## To declare and build dynamic reconfigure parameters within this 77 | ## package, follow these steps: 78 | ## * In the file package.xml: 79 | ## * add a build_depend and a exec_depend tag for "dynamic_reconfigure" 80 | ## * In this file (CMakeLists.txt): 81 | ## * add "dynamic_reconfigure" to 82 | ## find_package(catkin REQUIRED COMPONENTS ...) 83 | ## * uncomment the "generate_dynamic_reconfigure_options" section below 84 | ## and list every .cfg file to be processed 85 | 86 | ## Generate dynamic reconfigure parameters in the 'cfg' folder 87 | # generate_dynamic_reconfigure_options( 88 | # cfg/DynReconf1.cfg 89 | # cfg/DynReconf2.cfg 90 | # ) 91 | 92 | ################################### 93 | ## catkin specific configuration ## 94 | ################################### 95 | ## The catkin_package macro generates cmake config files for your package 96 | ## Declare things to be passed to dependent projects 97 | ## INCLUDE_DIRS: uncomment this if your package contains header files 98 | ## LIBRARIES: libraries you create in this project that dependent projects also need 99 | ## CATKIN_DEPENDS: catkin_packages dependent projects also need 100 | ## DEPENDS: system dependencies of this project that dependent projects also need 101 | catkin_package( 102 | # INCLUDE_DIRS include 103 | # LIBRARIES minitaur_gazebo 104 | # CATKIN_DEPENDS other_catkin_pkg 105 | # DEPENDS system_lib 106 | ) 107 | 108 | ########### 109 | ## Build ## 110 | ########### 111 | 112 | ## Specify additional locations of header files 113 | ## Your package locations should be listed before other locations 114 | include_directories( 115 | # include 116 | # ${catkin_INCLUDE_DIRS} 117 | ) 118 | 119 | ## Declare a C++ library 120 | # add_library(${PROJECT_NAME} 121 | # src/${PROJECT_NAME}/minitaur_gazebo.cpp 122 | # ) 123 | 124 | ## Add cmake target dependencies of the library 125 | ## as an example, code may need to be generated before libraries 126 | ## either from message generation or dynamic reconfigure 127 | # add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) 128 | 129 | ## Declare a C++ executable 130 | ## With catkin_make all packages are built within a single CMake context 131 | ## The recommended prefix ensures that target names across packages don't collide 132 | # add_executable(${PROJECT_NAME}_node src/minitaur_gazebo_node.cpp) 133 | 134 | ## Rename C++ executable without prefix 135 | ## The above recommended prefix causes long target names, the following renames the 136 | ## target back to the shorter version for ease of user use 137 | ## e.g. "rosrun someones_pkg node" instead of "rosrun someones_pkg someones_pkg_node" 138 | # set_target_properties(${PROJECT_NAME}_node PROPERTIES OUTPUT_NAME node PREFIX "") 139 | 140 | ## Add cmake target dependencies of the executable 141 | ## same as for the library above 142 | # add_dependencies(${PROJECT_NAME}_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) 143 | 144 | ## Specify libraries to link a library or executable target against 145 | # target_link_libraries(${PROJECT_NAME}_node 146 | # ${catkin_LIBRARIES} 147 | # ) 148 | 149 | ############# 150 | ## Install ## 151 | ############# 152 | 153 | # all install targets should use catkin DESTINATION variables 154 | # See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html 155 | 156 | ## Mark executable scripts (Python etc.) for installation 157 | ## in contrast to setup.py, you can choose the destination 158 | # install(PROGRAMS 159 | # scripts/my_python_script 160 | # DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} 161 | # ) 162 | 163 | ## Mark executables and/or libraries for installation 164 | # install(TARGETS ${PROJECT_NAME} ${PROJECT_NAME}_node 165 | # ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} 166 | # LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} 167 | # RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} 168 | # ) 169 | 170 | ## Mark cpp header files for installation 171 | # install(DIRECTORY include/${PROJECT_NAME}/ 172 | # DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} 173 | # FILES_MATCHING PATTERN "*.h" 174 | # PATTERN ".svn" EXCLUDE 175 | # ) 176 | 177 | ## Mark other files for installation (e.g. launch and bag files, etc.) 178 | # install(FILES 179 | # # myfile1 180 | # # myfile2 181 | # DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} 182 | # ) 183 | 184 | ############# 185 | ## Testing ## 186 | ############# 187 | 188 | ## Add gtest based cpp test target and link libraries 189 | # catkin_add_gtest(${PROJECT_NAME}-test test/test_minitaur_gazebo.cpp) 190 | # if(TARGET ${PROJECT_NAME}-test) 191 | # target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME}) 192 | # endif() 193 | 194 | ## Add folders to be run by python nosetests 195 | # catkin_add_nosetests(test) 196 | -------------------------------------------------------------------------------- /minitaur_gazebo/launch/display.launch: -------------------------------------------------------------------------------- 1 | 2 | 4 | 7 | 10 | 13 | 17 | 21 | 26 | 27 | -------------------------------------------------------------------------------- /minitaur_gazebo/launch/gazebo.launch: -------------------------------------------------------------------------------- 1 | 2 | 4 | 9 | 15 | 20 | 21 | -------------------------------------------------------------------------------- /minitaur_gazebo/package.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | minitaur_gazebo 4 | 0.0.0 5 | The minitaur_gazebo package 6 | 7 | 8 | 9 | 10 | arjun 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 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /scout/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.8.3) 2 | project(scout) 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) 11 | 12 | ## System dependencies are found with CMake's conventions 13 | # find_package(Boost REQUIRED COMPONENTS system) 14 | 15 | 16 | ## Uncomment this if the package has a setup.py. This macro ensures 17 | ## modules and global scripts declared therein get installed 18 | ## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html 19 | # catkin_python_setup() 20 | 21 | ################################################ 22 | ## Declare ROS messages, services and actions ## 23 | ################################################ 24 | 25 | ## To declare and build messages, services or actions from within this 26 | ## package, follow these steps: 27 | ## * Let MSG_DEP_SET be the set of packages whose message types you use in 28 | ## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...). 29 | ## * In the file package.xml: 30 | ## * add a build_depend tag for "message_generation" 31 | ## * add a build_depend and a exec_depend tag for each package in MSG_DEP_SET 32 | ## * If MSG_DEP_SET isn't empty the following dependency has been pulled in 33 | ## but can be declared for certainty nonetheless: 34 | ## * add a exec_depend tag for "message_runtime" 35 | ## * In this file (CMakeLists.txt): 36 | ## * add "message_generation" and every package in MSG_DEP_SET to 37 | ## find_package(catkin REQUIRED COMPONENTS ...) 38 | ## * add "message_runtime" and every package in MSG_DEP_SET to 39 | ## catkin_package(CATKIN_DEPENDS ...) 40 | ## * uncomment the add_*_files sections below as needed 41 | ## and list every .msg/.srv/.action file to be processed 42 | ## * uncomment the generate_messages entry below 43 | ## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...) 44 | 45 | ## Generate messages in the 'msg' folder 46 | # add_message_files( 47 | # FILES 48 | # Message1.msg 49 | # Message2.msg 50 | # ) 51 | 52 | ## Generate services in the 'srv' folder 53 | # add_service_files( 54 | # FILES 55 | # Service1.srv 56 | # Service2.srv 57 | # ) 58 | 59 | ## Generate actions in the 'action' folder 60 | # add_action_files( 61 | # FILES 62 | # Action1.action 63 | # Action2.action 64 | # ) 65 | 66 | ## Generate added messages and services with any dependencies listed here 67 | # generate_messages( 68 | # DEPENDENCIES 69 | # std_msgs # Or other packages containing msgs 70 | # ) 71 | 72 | ################################################ 73 | ## Declare ROS dynamic reconfigure parameters ## 74 | ################################################ 75 | 76 | ## To declare and build dynamic reconfigure parameters within this 77 | ## package, follow these steps: 78 | ## * In the file package.xml: 79 | ## * add a build_depend and a exec_depend tag for "dynamic_reconfigure" 80 | ## * In this file (CMakeLists.txt): 81 | ## * add "dynamic_reconfigure" to 82 | ## find_package(catkin REQUIRED COMPONENTS ...) 83 | ## * uncomment the "generate_dynamic_reconfigure_options" section below 84 | ## and list every .cfg file to be processed 85 | 86 | ## Generate dynamic reconfigure parameters in the 'cfg' folder 87 | # generate_dynamic_reconfigure_options( 88 | # cfg/DynReconf1.cfg 89 | # cfg/DynReconf2.cfg 90 | # ) 91 | 92 | ################################### 93 | ## catkin specific configuration ## 94 | ################################### 95 | ## The catkin_package macro generates cmake config files for your package 96 | ## Declare things to be passed to dependent projects 97 | ## INCLUDE_DIRS: uncomment this if your package contains header files 98 | ## LIBRARIES: libraries you create in this project that dependent projects also need 99 | ## CATKIN_DEPENDS: catkin_packages dependent projects also need 100 | ## DEPENDS: system dependencies of this project that dependent projects also need 101 | catkin_package( 102 | # INCLUDE_DIRS include 103 | # LIBRARIES scout 104 | # CATKIN_DEPENDS other_catkin_pkg 105 | # DEPENDS system_lib 106 | ) 107 | 108 | ########### 109 | ## Build ## 110 | ########### 111 | 112 | ## Specify additional locations of header files 113 | ## Your package locations should be listed before other locations 114 | include_directories( 115 | # include 116 | # ${catkin_INCLUDE_DIRS} 117 | ) 118 | 119 | ## Declare a C++ library 120 | # add_library(${PROJECT_NAME} 121 | # src/${PROJECT_NAME}/scout.cpp 122 | # ) 123 | 124 | ## Add cmake target dependencies of the library 125 | ## as an example, code may need to be generated before libraries 126 | ## either from message generation or dynamic reconfigure 127 | # add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) 128 | 129 | ## Declare a C++ executable 130 | ## With catkin_make all packages are built within a single CMake context 131 | ## The recommended prefix ensures that target names across packages don't collide 132 | # add_executable(${PROJECT_NAME}_node src/scout_node.cpp) 133 | 134 | ## Rename C++ executable without prefix 135 | ## The above recommended prefix causes long target names, the following renames the 136 | ## target back to the shorter version for ease of user use 137 | ## e.g. "rosrun someones_pkg node" instead of "rosrun someones_pkg someones_pkg_node" 138 | # set_target_properties(${PROJECT_NAME}_node PROPERTIES OUTPUT_NAME node PREFIX "") 139 | 140 | ## Add cmake target dependencies of the executable 141 | ## same as for the library above 142 | # add_dependencies(${PROJECT_NAME}_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) 143 | 144 | ## Specify libraries to link a library or executable target against 145 | # target_link_libraries(${PROJECT_NAME}_node 146 | # ${catkin_LIBRARIES} 147 | # ) 148 | 149 | ############# 150 | ## Install ## 151 | ############# 152 | 153 | # all install targets should use catkin DESTINATION variables 154 | # See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html 155 | 156 | ## Mark executable scripts (Python etc.) for installation 157 | ## in contrast to setup.py, you can choose the destination 158 | # install(PROGRAMS 159 | # scripts/my_python_script 160 | # DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} 161 | # ) 162 | 163 | ## Mark executables and/or libraries for installation 164 | # install(TARGETS ${PROJECT_NAME} ${PROJECT_NAME}_node 165 | # ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} 166 | # LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} 167 | # RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} 168 | # ) 169 | 170 | ## Mark cpp header files for installation 171 | # install(DIRECTORY include/${PROJECT_NAME}/ 172 | # DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} 173 | # FILES_MATCHING PATTERN "*.h" 174 | # PATTERN ".svn" EXCLUDE 175 | # ) 176 | 177 | ## Mark other files for installation (e.g. launch and bag files, etc.) 178 | # install(FILES 179 | # # myfile1 180 | # # myfile2 181 | # DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} 182 | # ) 183 | 184 | ############# 185 | ## Testing ## 186 | ############# 187 | 188 | ## Add gtest based cpp test target and link libraries 189 | # catkin_add_gtest(${PROJECT_NAME}-test test/test_scout.cpp) 190 | # if(TARGET ${PROJECT_NAME}-test) 191 | # target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME}) 192 | # endif() 193 | 194 | ## Add folders to be run by python nosetests 195 | # catkin_add_nosetests(test) 196 | -------------------------------------------------------------------------------- /scout/config/joint_names_scout.yaml: -------------------------------------------------------------------------------- 1 | controller_joint_names: ['joint1', 'joint2', 'joint3', 'joint4', ] 2 | -------------------------------------------------------------------------------- /scout/launch/display.launch: -------------------------------------------------------------------------------- 1 | 2 | 4 | 7 | 10 | 13 | 17 | 21 | 26 | 27 | -------------------------------------------------------------------------------- /scout/launch/gazebo.launch: -------------------------------------------------------------------------------- 1 | 2 | 4 | 9 | 15 | 20 | 21 | -------------------------------------------------------------------------------- /scout/meshes/base_link.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/scout/meshes/base_link.STL -------------------------------------------------------------------------------- /scout/meshes/leg1.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/scout/meshes/leg1.STL -------------------------------------------------------------------------------- /scout/meshes/leg2.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/scout/meshes/leg2.STL -------------------------------------------------------------------------------- /scout/meshes/leg3.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/scout/meshes/leg3.STL -------------------------------------------------------------------------------- /scout/meshes/leg4.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/arbhardwaj98/Legged-Robot-ROS/4ccd0ed6ac4864dad6ef4f156aefb7a7d89cc77e/scout/meshes/leg4.STL -------------------------------------------------------------------------------- /scout/model.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | scout 4 | 1.0 5 | urdf/scout.urdf 6 | 7 | jrl301 8 | name@email.address 9 | 10 | 11 | Scout Qaudraped Robot 12 | 13 | 14 | -------------------------------------------------------------------------------- /scout/package.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | scout 4 | 0.0.0 5 | The scout package 6 | 7 | 8 | 9 | 10 | manuj 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 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /scout/urdf/scout.gazebo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | /scout 6 | gazebo_ros_control/DefaultRobotHWSim 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /scout/urdf/scout.sdf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 0 0 0 0 -0 0 5 | 6 | 0.083033 -0.15433 0.10443 0 -0 0 7 | 0.44358 8 | 9 | 0.00132422 10 | 0 11 | 2.48018e-05 12 | 0.00409973 13 | 0 14 | 0.0028258 15 | 16 | 17 | 18 | 0 0 0 0 -0 0 19 | 20 | 21 | 1 1 1 22 | model://scout/meshes/base_link.STL 23 | 24 | 25 | 26 | 27 | 0 0 0 0 -0 0 28 | 29 | 30 | 1 1 1 31 | model://scout/meshes/base_link.STL 32 | 33 | 34 | 35 | 36 | 37 | 0.17303 -0.071332 0.10916 -1.57079 -1.57079 3.14159 38 | 39 | -0.05111 0 0.003 0 -0 0 40 | 0.0163 41 | 42 | 5.84e-07 43 | 0 44 | 0 45 | 1.7794e-05 46 | 0 47 | 1.828e-05 48 | 49 | 50 | 51 | 0 0 0 0 -0 0 52 | 53 | 54 | 1 1 1 55 | model://scout/meshes/leg1.STL 56 | 57 | 58 | 59 | 60 | 0 0 0 0 -0 0 61 | 62 | 63 | 1 1 1 64 | model://scout/meshes/leg1.STL 65 | 66 | 67 | 68 | 69 | 70 | leg1 71 | base_link 72 | 73 | 4e-06 -1 0 74 | 75 | -1e+16 76 | 1e+16 77 | 78 | 79 | 0 80 | 100 81 | 0 82 | 0 83 | 84 | 1 85 | 86 | 87 | 88 | -0.006967 -0.069332 0.10916 -1.57079 -1.57079 3.14159 89 | 90 | -0.05111 -0 0.003 0 -0 0 91 | 0.0163 92 | 93 | 5.84e-07 94 | 0 95 | 0 96 | 1.7794e-05 97 | 0 98 | 1.828e-05 99 | 100 | 101 | 102 | 0 0 0 0 -0 0 103 | 104 | 105 | 1 1 1 106 | model://scout/meshes/leg2.STL 107 | 108 | 109 | 110 | 111 | 0 0 0 0 -0 0 112 | 113 | 114 | 1 1 1 115 | model://scout/meshes/leg2.STL 116 | 117 | 118 | 119 | 120 | 121 | leg2 122 | base_link 123 | 124 | 4e-06 -1 0 125 | 126 | -1e+16 127 | 1e+16 128 | 129 | 130 | 0 131 | 100 132 | 0 133 | 0 134 | 135 | 1 136 | 137 | 138 | 139 | 0.17303 -0.23333 0.10916 -1.57079 -1.57079 3.14159 140 | 141 | -0.05111 0 -0.003 0 -0 0 142 | 0.0163 143 | 144 | 5.84e-07 145 | 0 146 | 0 147 | 1.7794e-05 148 | 0 149 | 1.828e-05 150 | 151 | 152 | 153 | 0 0 0 0 -0 0 154 | 155 | 156 | 1 1 1 157 | model://scout/meshes/leg3.STL 158 | 159 | 160 | 161 | 162 | 0 0 0 0 -0 0 163 | 164 | 165 | 1 1 1 166 | model://scout/meshes/leg3.STL 167 | 168 | 169 | 170 | 171 | 172 | leg3 173 | base_link 174 | 175 | -4e-06 1 -0 176 | 177 | -1e+16 178 | 1e+16 179 | 180 | 181 | 0 182 | 100 183 | 0 184 | 0 185 | 186 | 1 187 | 188 | 189 | 190 | -0.006967 -0.23133 0.10916 -1.57079 -1.57079 3.14159 191 | 192 | -0.05111 0 0.003 0 -0 0 193 | 0.0163 194 | 195 | 5.84e-07 196 | 0 197 | 0 198 | 1.7794e-05 199 | 0 200 | 1.828e-05 201 | 202 | 203 | 204 | 0 0 0 0 -0 0 205 | 206 | 207 | 1 1 1 208 | model://scout/meshes/leg4.STL 209 | 210 | 211 | 212 | 213 | 0 0 0 0 -0 0 214 | 215 | 216 | 1 1 1 217 | model://scout/meshes/leg4.STL 218 | 219 | 220 | 221 | 222 | 223 | leg4 224 | base_link 225 | 226 | 4e-06 -1 0 227 | 228 | -1e+16 229 | 1e+16 230 | 231 | 232 | 0 233 | 100 234 | 0 235 | 0 236 | 237 | 1 238 | 239 | 240 | 241 | /scout 242 | gazebo_ros_control/DefaultRobotHWSim 243 | 244 | 0 245 | 246 | /scout/cmd_vel 247 | odom 248 | odom 249 | 20.0 250 | base_link 251 | 252 | 253 | 254 | -------------------------------------------------------------------------------- /scout/urdf/scout.urdf: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | /scout 6 | gazebo_ros_control/DefaultRobotHWSim 7 | 8 | 9 | 11 | 12 | 15 | 17 | 24 | 25 | 26 | 29 | 30 | 32 | 33 | 35 | 37 | 38 | 39 | 40 | 43 | 44 | 46 | 47 | 48 | 49 | 51 | 52 | 55 | 57 | 64 | 65 | 66 | 69 | 70 | 72 | 73 | 75 | 77 | 78 | 79 | 80 | 83 | 84 | 86 | 87 | 88 | 89 | 92 | 95 | 97 | 99 | 101 | 102 | 103 | 104 | 105 | 107 | 108 | 111 | 113 | 120 | 121 | 122 | 125 | 126 | 128 | 129 | 131 | 133 | 134 | 135 | 136 | 139 | 140 | 142 | 143 | 144 | 145 | 148 | 151 | 153 | 155 | 157 | 158 | 159 | 160 | 161 | 163 | 164 | 167 | 169 | 176 | 177 | 178 | 181 | 182 | 184 | 185 | 187 | 189 | 190 | 191 | 192 | 195 | 196 | 198 | 199 | 200 | 201 | 204 | 207 | 209 | 211 | 213 | 214 | 215 | 216 | 217 | 219 | 220 | 223 | 225 | 232 | 233 | 234 | 237 | 238 | 240 | 241 | 243 | 245 | 246 | 247 | 248 | 251 | 252 | 254 | 255 | 256 | 257 | 260 | 263 | 265 | 267 | 269 | 270 | 271 | 272 | 273 | 274 | 275 | /scout/cmd_vel 276 | odom 277 | odom 278 | 20.0 279 | base_link 280 | 281 | 282 | 283 | transmission_interface/SimpleTransmission 284 | 285 | EffortJointInterface 286 | 287 | 288 | EffortJointInterface 289 | 1 290 | 291 | 292 | 293 | transmission_interface/SimpleTransmission 294 | 295 | EffortJointInterface 296 | 297 | 298 | EffortJointInterface 299 | 1 300 | 301 | 302 | 303 | transmission_interface/SimpleTransmission 304 | 305 | EffortJointInterface 306 | 307 | 308 | EffortJointInterface 309 | 1 310 | 311 | 312 | 313 | transmission_interface/SimpleTransmission 314 | 315 | EffortJointInterface 316 | 317 | 318 | EffortJointInterface 319 | 1 320 | 321 | 322 | 323 | 324 | 325 | -------------------------------------------------------------------------------- /scout_control/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.8.3) 2 | project(scout_control) 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) 11 | 12 | ## System dependencies are found with CMake's conventions 13 | # find_package(Boost REQUIRED COMPONENTS system) 14 | 15 | 16 | ## Uncomment this if the package has a setup.py. This macro ensures 17 | ## modules and global scripts declared therein get installed 18 | ## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html 19 | # catkin_python_setup() 20 | 21 | ################################################ 22 | ## Declare ROS messages, services and actions ## 23 | ################################################ 24 | 25 | ## To declare and build messages, services or actions from within this 26 | ## package, follow these steps: 27 | ## * Let MSG_DEP_SET be the set of packages whose message types you use in 28 | ## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...). 29 | ## * In the file package.xml: 30 | ## * add a build_depend tag for "message_generation" 31 | ## * add a build_depend and a exec_depend tag for each package in MSG_DEP_SET 32 | ## * If MSG_DEP_SET isn't empty the following dependency has been pulled in 33 | ## but can be declared for certainty nonetheless: 34 | ## * add a exec_depend tag for "message_runtime" 35 | ## * In this file (CMakeLists.txt): 36 | ## * add "message_generation" and every package in MSG_DEP_SET to 37 | ## find_package(catkin REQUIRED COMPONENTS ...) 38 | ## * add "message_runtime" and every package in MSG_DEP_SET to 39 | ## catkin_package(CATKIN_DEPENDS ...) 40 | ## * uncomment the add_*_files sections below as needed 41 | ## and list every .msg/.srv/.action file to be processed 42 | ## * uncomment the generate_messages entry below 43 | ## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...) 44 | 45 | ## Generate messages in the 'msg' folder 46 | # add_message_files( 47 | # FILES 48 | # Message1.msg 49 | # Message2.msg 50 | # ) 51 | 52 | ## Generate services in the 'srv' folder 53 | # add_service_files( 54 | # FILES 55 | # Service1.srv 56 | # Service2.srv 57 | # ) 58 | 59 | ## Generate actions in the 'action' folder 60 | # add_action_files( 61 | # FILES 62 | # Action1.action 63 | # Action2.action 64 | # ) 65 | 66 | ## Generate added messages and services with any dependencies listed here 67 | # generate_messages( 68 | # DEPENDENCIES 69 | # std_msgs # Or other packages containing msgs 70 | # ) 71 | 72 | ################################################ 73 | ## Declare ROS dynamic reconfigure parameters ## 74 | ################################################ 75 | 76 | ## To declare and build dynamic reconfigure parameters within this 77 | ## package, follow these steps: 78 | ## * In the file package.xml: 79 | ## * add a build_depend and a exec_depend tag for "dynamic_reconfigure" 80 | ## * In this file (CMakeLists.txt): 81 | ## * add "dynamic_reconfigure" to 82 | ## find_package(catkin REQUIRED COMPONENTS ...) 83 | ## * uncomment the "generate_dynamic_reconfigure_options" section below 84 | ## and list every .cfg file to be processed 85 | 86 | ## Generate dynamic reconfigure parameters in the 'cfg' folder 87 | # generate_dynamic_reconfigure_options( 88 | # cfg/DynReconf1.cfg 89 | # cfg/DynReconf2.cfg 90 | # ) 91 | 92 | ################################### 93 | ## catkin specific configuration ## 94 | ################################### 95 | ## The catkin_package macro generates cmake config files for your package 96 | ## Declare things to be passed to dependent projects 97 | ## INCLUDE_DIRS: uncomment this if your package contains header files 98 | ## LIBRARIES: libraries you create in this project that dependent projects also need 99 | ## CATKIN_DEPENDS: catkin_packages dependent projects also need 100 | ## DEPENDS: system dependencies of this project that dependent projects also need 101 | catkin_package( 102 | # INCLUDE_DIRS include 103 | # LIBRARIES scout_control 104 | # CATKIN_DEPENDS other_catkin_pkg 105 | # DEPENDS system_lib 106 | ) 107 | 108 | ########### 109 | ## Build ## 110 | ########### 111 | 112 | ## Specify additional locations of header files 113 | ## Your package locations should be listed before other locations 114 | include_directories( 115 | # include 116 | # ${catkin_INCLUDE_DIRS} 117 | ) 118 | 119 | ## Declare a C++ library 120 | # add_library(${PROJECT_NAME} 121 | # src/${PROJECT_NAME}/scout_control.cpp 122 | # ) 123 | 124 | ## Add cmake target dependencies of the library 125 | ## as an example, code may need to be generated before libraries 126 | ## either from message generation or dynamic reconfigure 127 | # add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) 128 | 129 | ## Declare a C++ executable 130 | ## With catkin_make all packages are built within a single CMake context 131 | ## The recommended prefix ensures that target names across packages don't collide 132 | # add_executable(${PROJECT_NAME}_node src/scout_control_node.cpp) 133 | 134 | ## Rename C++ executable without prefix 135 | ## The above recommended prefix causes long target names, the following renames the 136 | ## target back to the shorter version for ease of user use 137 | ## e.g. "rosrun someones_pkg node" instead of "rosrun someones_pkg someones_pkg_node" 138 | # set_target_properties(${PROJECT_NAME}_node PROPERTIES OUTPUT_NAME node PREFIX "") 139 | 140 | ## Add cmake target dependencies of the executable 141 | ## same as for the library above 142 | # add_dependencies(${PROJECT_NAME}_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) 143 | 144 | ## Specify libraries to link a library or executable target against 145 | # target_link_libraries(${PROJECT_NAME}_node 146 | # ${catkin_LIBRARIES} 147 | # ) 148 | 149 | ############# 150 | ## Install ## 151 | ############# 152 | 153 | # all install targets should use catkin DESTINATION variables 154 | # See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html 155 | 156 | ## Mark executable scripts (Python etc.) for installation 157 | ## in contrast to setup.py, you can choose the destination 158 | # install(PROGRAMS 159 | # scripts/my_python_script 160 | # DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} 161 | # ) 162 | 163 | ## Mark executables and/or libraries for installation 164 | # install(TARGETS ${PROJECT_NAME} ${PROJECT_NAME}_node 165 | # ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} 166 | # LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} 167 | # RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} 168 | # ) 169 | 170 | ## Mark cpp header files for installation 171 | # install(DIRECTORY include/${PROJECT_NAME}/ 172 | # DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} 173 | # FILES_MATCHING PATTERN "*.h" 174 | # PATTERN ".svn" EXCLUDE 175 | # ) 176 | 177 | ## Mark other files for installation (e.g. launch and bag files, etc.) 178 | # install(FILES 179 | # # myfile1 180 | # # myfile2 181 | # DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} 182 | # ) 183 | 184 | ############# 185 | ## Testing ## 186 | ############# 187 | 188 | ## Add gtest based cpp test target and link libraries 189 | # catkin_add_gtest(${PROJECT_NAME}-test test/test_scout_control.cpp) 190 | # if(TARGET ${PROJECT_NAME}-test) 191 | # target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME}) 192 | # endif() 193 | 194 | ## Add folders to be run by python nosetests 195 | # catkin_add_nosetests(test) 196 | -------------------------------------------------------------------------------- /scout_control/config/scout_control.yaml: -------------------------------------------------------------------------------- 1 | scout: 2 | # Publish all joint states ----------------------------------- 3 | /scout/joint_state_controller: 4 | type: joint_state_controller/JointStateController 5 | publish_rate: 50 6 | 7 | # Position Controllers --------------------------------------- 8 | /scout/joint1_position_controller: 9 | type: effort_controllers/JointPositionController 10 | joint: joint1 11 | pid: {p: 0.05, i: 0.0001, d: 0.05} 12 | /scout/joint2_position_controller: 13 | type: effort_controllers/JointPositionController 14 | joint: joint2 15 | pid: {p: 0.05, i: 0.0001, d: 0.05} 16 | /scout/joint3_position_controller: 17 | type: effort_controllers/JointPositionController 18 | joint: joint3 19 | pid: {p: 0.05, i: 0.0001, d: 0.05} 20 | /scout/joint4_position_controller: 21 | type: effort_controllers/JointPositionController 22 | joint: joint4 23 | pid: {p: 0.05, i: 0.0001, d: 0.05} 24 | -------------------------------------------------------------------------------- /scout_control/launch/scout_control.launch: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 9 | 10 | 11 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /scout_control/package.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | scout_control 4 | 0.0.0 5 | The scout_control package 6 | 7 | 8 | 9 | 10 | manuj 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 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /scout_gazebo/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.8.3) 2 | project(scout_gazebo) 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) 11 | 12 | ## System dependencies are found with CMake's conventions 13 | # find_package(Boost REQUIRED COMPONENTS system) 14 | 15 | 16 | ## Uncomment this if the package has a setup.py. This macro ensures 17 | ## modules and global scripts declared therein get installed 18 | ## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html 19 | # catkin_python_setup() 20 | 21 | ################################################ 22 | ## Declare ROS messages, services and actions ## 23 | ################################################ 24 | 25 | ## To declare and build messages, services or actions from within this 26 | ## package, follow these steps: 27 | ## * Let MSG_DEP_SET be the set of packages whose message types you use in 28 | ## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...). 29 | ## * In the file package.xml: 30 | ## * add a build_depend tag for "message_generation" 31 | ## * add a build_depend and a exec_depend tag for each package in MSG_DEP_SET 32 | ## * If MSG_DEP_SET isn't empty the following dependency has been pulled in 33 | ## but can be declared for certainty nonetheless: 34 | ## * add a exec_depend tag for "message_runtime" 35 | ## * In this file (CMakeLists.txt): 36 | ## * add "message_generation" and every package in MSG_DEP_SET to 37 | ## find_package(catkin REQUIRED COMPONENTS ...) 38 | ## * add "message_runtime" and every package in MSG_DEP_SET to 39 | ## catkin_package(CATKIN_DEPENDS ...) 40 | ## * uncomment the add_*_files sections below as needed 41 | ## and list every .msg/.srv/.action file to be processed 42 | ## * uncomment the generate_messages entry below 43 | ## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...) 44 | 45 | ## Generate messages in the 'msg' folder 46 | # add_message_files( 47 | # FILES 48 | # Message1.msg 49 | # Message2.msg 50 | # ) 51 | 52 | ## Generate services in the 'srv' folder 53 | # add_service_files( 54 | # FILES 55 | # Service1.srv 56 | # Service2.srv 57 | # ) 58 | 59 | ## Generate actions in the 'action' folder 60 | # add_action_files( 61 | # FILES 62 | # Action1.action 63 | # Action2.action 64 | # ) 65 | 66 | ## Generate added messages and services with any dependencies listed here 67 | # generate_messages( 68 | # DEPENDENCIES 69 | # std_msgs # Or other packages containing msgs 70 | # ) 71 | 72 | ################################################ 73 | ## Declare ROS dynamic reconfigure parameters ## 74 | ################################################ 75 | 76 | ## To declare and build dynamic reconfigure parameters within this 77 | ## package, follow these steps: 78 | ## * In the file package.xml: 79 | ## * add a build_depend and a exec_depend tag for "dynamic_reconfigure" 80 | ## * In this file (CMakeLists.txt): 81 | ## * add "dynamic_reconfigure" to 82 | ## find_package(catkin REQUIRED COMPONENTS ...) 83 | ## * uncomment the "generate_dynamic_reconfigure_options" section below 84 | ## and list every .cfg file to be processed 85 | 86 | ## Generate dynamic reconfigure parameters in the 'cfg' folder 87 | # generate_dynamic_reconfigure_options( 88 | # cfg/DynReconf1.cfg 89 | # cfg/DynReconf2.cfg 90 | # ) 91 | 92 | ################################### 93 | ## catkin specific configuration ## 94 | ################################### 95 | ## The catkin_package macro generates cmake config files for your package 96 | ## Declare things to be passed to dependent projects 97 | ## INCLUDE_DIRS: uncomment this if your package contains header files 98 | ## LIBRARIES: libraries you create in this project that dependent projects also need 99 | ## CATKIN_DEPENDS: catkin_packages dependent projects also need 100 | ## DEPENDS: system dependencies of this project that dependent projects also need 101 | catkin_package( 102 | # INCLUDE_DIRS include 103 | # LIBRARIES scout_gazebo 104 | # CATKIN_DEPENDS other_catkin_pkg 105 | # DEPENDS system_lib 106 | ) 107 | 108 | ########### 109 | ## Build ## 110 | ########### 111 | 112 | ## Specify additional locations of header files 113 | ## Your package locations should be listed before other locations 114 | include_directories( 115 | # include 116 | # ${catkin_INCLUDE_DIRS} 117 | ) 118 | 119 | ## Declare a C++ library 120 | # add_library(${PROJECT_NAME} 121 | # src/${PROJECT_NAME}/scout_gazebo.cpp 122 | # ) 123 | 124 | ## Add cmake target dependencies of the library 125 | ## as an example, code may need to be generated before libraries 126 | ## either from message generation or dynamic reconfigure 127 | # add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) 128 | 129 | ## Declare a C++ executable 130 | ## With catkin_make all packages are built within a single CMake context 131 | ## The recommended prefix ensures that target names across packages don't collide 132 | # add_executable(${PROJECT_NAME}_node src/scout_gazebo_node.cpp) 133 | 134 | ## Rename C++ executable without prefix 135 | ## The above recommended prefix causes long target names, the following renames the 136 | ## target back to the shorter version for ease of user use 137 | ## e.g. "rosrun someones_pkg node" instead of "rosrun someones_pkg someones_pkg_node" 138 | # set_target_properties(${PROJECT_NAME}_node PROPERTIES OUTPUT_NAME node PREFIX "") 139 | 140 | ## Add cmake target dependencies of the executable 141 | ## same as for the library above 142 | # add_dependencies(${PROJECT_NAME}_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) 143 | 144 | ## Specify libraries to link a library or executable target against 145 | # target_link_libraries(${PROJECT_NAME}_node 146 | # ${catkin_LIBRARIES} 147 | # ) 148 | 149 | ############# 150 | ## Install ## 151 | ############# 152 | 153 | # all install targets should use catkin DESTINATION variables 154 | # See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html 155 | 156 | ## Mark executable scripts (Python etc.) for installation 157 | ## in contrast to setup.py, you can choose the destination 158 | # install(PROGRAMS 159 | # scripts/my_python_script 160 | # DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} 161 | # ) 162 | 163 | ## Mark executables and/or libraries for installation 164 | # install(TARGETS ${PROJECT_NAME} ${PROJECT_NAME}_node 165 | # ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} 166 | # LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} 167 | # RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} 168 | # ) 169 | 170 | ## Mark cpp header files for installation 171 | # install(DIRECTORY include/${PROJECT_NAME}/ 172 | # DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} 173 | # FILES_MATCHING PATTERN "*.h" 174 | # PATTERN ".svn" EXCLUDE 175 | # ) 176 | 177 | ## Mark other files for installation (e.g. launch and bag files, etc.) 178 | # install(FILES 179 | # # myfile1 180 | # # myfile2 181 | # DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} 182 | # ) 183 | 184 | ############# 185 | ## Testing ## 186 | ############# 187 | 188 | ## Add gtest based cpp test target and link libraries 189 | # catkin_add_gtest(${PROJECT_NAME}-test test/test_scout_gazebo.cpp) 190 | # if(TARGET ${PROJECT_NAME}-test) 191 | # target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME}) 192 | # endif() 193 | 194 | ## Add folders to be run by python nosetests 195 | # catkin_add_nosetests(test) 196 | -------------------------------------------------------------------------------- /scout_gazebo/launch/display.launch: -------------------------------------------------------------------------------- 1 | 2 | 4 | 7 | 10 | 13 | 17 | 21 | 26 | 27 | -------------------------------------------------------------------------------- /scout_gazebo/launch/gazebo.launch: -------------------------------------------------------------------------------- 1 | 2 | 4 | 9 | 15 | 20 | 21 | -------------------------------------------------------------------------------- /scout_gazebo/package.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | scout_gazebo 4 | 0.0.0 5 | The scout_gazebo package 6 | 7 | 8 | 9 | 10 | manuj 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 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /scout_navigation/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.8.3) 2 | project(scout_navigation) 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) 11 | 12 | ## System dependencies are found with CMake's conventions 13 | # find_package(Boost REQUIRED COMPONENTS system) 14 | 15 | 16 | ## Uncomment this if the package has a setup.py. This macro ensures 17 | ## modules and global scripts declared therein get installed 18 | ## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html 19 | # catkin_python_setup() 20 | 21 | ################################################ 22 | ## Declare ROS messages, services and actions ## 23 | ################################################ 24 | 25 | ## To declare and build messages, services or actions from within this 26 | ## package, follow these steps: 27 | ## * Let MSG_DEP_SET be the set of packages whose message types you use in 28 | ## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...). 29 | ## * In the file package.xml: 30 | ## * add a build_depend tag for "message_generation" 31 | ## * add a build_depend and a exec_depend tag for each package in MSG_DEP_SET 32 | ## * If MSG_DEP_SET isn't empty the following dependency has been pulled in 33 | ## but can be declared for certainty nonetheless: 34 | ## * add a exec_depend tag for "message_runtime" 35 | ## * In this file (CMakeLists.txt): 36 | ## * add "message_generation" and every package in MSG_DEP_SET to 37 | ## find_package(catkin REQUIRED COMPONENTS ...) 38 | ## * add "message_runtime" and every package in MSG_DEP_SET to 39 | ## catkin_package(CATKIN_DEPENDS ...) 40 | ## * uncomment the add_*_files sections below as needed 41 | ## and list every .msg/.srv/.action file to be processed 42 | ## * uncomment the generate_messages entry below 43 | ## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...) 44 | 45 | ## Generate messages in the 'msg' folder 46 | # add_message_files( 47 | # FILES 48 | # Message1.msg 49 | # Message2.msg 50 | # ) 51 | 52 | ## Generate services in the 'srv' folder 53 | # add_service_files( 54 | # FILES 55 | # Service1.srv 56 | # Service2.srv 57 | # ) 58 | 59 | ## Generate actions in the 'action' folder 60 | # add_action_files( 61 | # FILES 62 | # Action1.action 63 | # Action2.action 64 | # ) 65 | 66 | ## Generate added messages and services with any dependencies listed here 67 | # generate_messages( 68 | # DEPENDENCIES 69 | # std_msgs # Or other packages containing msgs 70 | # ) 71 | 72 | ################################################ 73 | ## Declare ROS dynamic reconfigure parameters ## 74 | ################################################ 75 | 76 | ## To declare and build dynamic reconfigure parameters within this 77 | ## package, follow these steps: 78 | ## * In the file package.xml: 79 | ## * add a build_depend and a exec_depend tag for "dynamic_reconfigure" 80 | ## * In this file (CMakeLists.txt): 81 | ## * add "dynamic_reconfigure" to 82 | ## find_package(catkin REQUIRED COMPONENTS ...) 83 | ## * uncomment the "generate_dynamic_reconfigure_options" section below 84 | ## and list every .cfg file to be processed 85 | 86 | ## Generate dynamic reconfigure parameters in the 'cfg' folder 87 | # generate_dynamic_reconfigure_options( 88 | # cfg/DynReconf1.cfg 89 | # cfg/DynReconf2.cfg 90 | # ) 91 | 92 | ################################### 93 | ## catkin specific configuration ## 94 | ################################### 95 | ## The catkin_package macro generates cmake config files for your package 96 | ## Declare things to be passed to dependent projects 97 | ## INCLUDE_DIRS: uncomment this if your package contains header files 98 | ## LIBRARIES: libraries you create in this project that dependent projects also need 99 | ## CATKIN_DEPENDS: catkin_packages dependent projects also need 100 | ## DEPENDS: system dependencies of this project that dependent projects also need 101 | catkin_package( 102 | # INCLUDE_DIRS include 103 | # LIBRARIES scout_navigation 104 | # CATKIN_DEPENDS other_catkin_pkg 105 | # DEPENDS system_lib 106 | ) 107 | 108 | ########### 109 | ## Build ## 110 | ########### 111 | 112 | ## Specify additional locations of header files 113 | ## Your package locations should be listed before other locations 114 | include_directories( 115 | # include 116 | # ${catkin_INCLUDE_DIRS} 117 | ) 118 | 119 | ## Declare a C++ library 120 | # add_library(${PROJECT_NAME} 121 | # src/${PROJECT_NAME}/scout_navigation.cpp 122 | # ) 123 | 124 | ## Add cmake target dependencies of the library 125 | ## as an example, code may need to be generated before libraries 126 | ## either from message generation or dynamic reconfigure 127 | # add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) 128 | 129 | ## Declare a C++ executable 130 | ## With catkin_make all packages are built within a single CMake context 131 | ## The recommended prefix ensures that target names across packages don't collide 132 | # add_executable(${PROJECT_NAME}_node src/scout_navigation_node.cpp) 133 | 134 | ## Rename C++ executable without prefix 135 | ## The above recommended prefix causes long target names, the following renames the 136 | ## target back to the shorter version for ease of user use 137 | ## e.g. "rosrun someones_pkg node" instead of "rosrun someones_pkg someones_pkg_node" 138 | # set_target_properties(${PROJECT_NAME}_node PROPERTIES OUTPUT_NAME node PREFIX "") 139 | 140 | ## Add cmake target dependencies of the executable 141 | ## same as for the library above 142 | # add_dependencies(${PROJECT_NAME}_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) 143 | 144 | ## Specify libraries to link a library or executable target against 145 | # target_link_libraries(${PROJECT_NAME}_node 146 | # ${catkin_LIBRARIES} 147 | # ) 148 | 149 | ############# 150 | ## Install ## 151 | ############# 152 | 153 | # all install targets should use catkin DESTINATION variables 154 | # See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html 155 | 156 | ## Mark executable scripts (Python etc.) for installation 157 | ## in contrast to setup.py, you can choose the destination 158 | # install(PROGRAMS 159 | # scripts/my_python_script 160 | # DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} 161 | # ) 162 | 163 | ## Mark executables and/or libraries for installation 164 | # install(TARGETS ${PROJECT_NAME} ${PROJECT_NAME}_node 165 | # ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} 166 | # LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} 167 | # RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} 168 | # ) 169 | 170 | ## Mark cpp header files for installation 171 | # install(DIRECTORY include/${PROJECT_NAME}/ 172 | # DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} 173 | # FILES_MATCHING PATTERN "*.h" 174 | # PATTERN ".svn" EXCLUDE 175 | # ) 176 | 177 | ## Mark other files for installation (e.g. launch and bag files, etc.) 178 | # install(FILES 179 | # # myfile1 180 | # # myfile2 181 | # DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} 182 | # ) 183 | 184 | ############# 185 | ## Testing ## 186 | ############# 187 | 188 | ## Add gtest based cpp test target and link libraries 189 | # catkin_add_gtest(${PROJECT_NAME}-test test/test_scout_navigation.cpp) 190 | # if(TARGET ${PROJECT_NAME}-test) 191 | # target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME}) 192 | # endif() 193 | 194 | ## Add folders to be run by python nosetests 195 | # catkin_add_nosetests(test) 196 | -------------------------------------------------------------------------------- /scout_navigation/package.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | scout_navigation 4 | 0.0.0 5 | The scout_navigation package 6 | 7 | 8 | 9 | 10 | manuj 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 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /scout_navigation/scripts/walking.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import rospy 4 | from std_msgs.msg import Float64 5 | 6 | def talker(): 7 | pub1 = rospy.Publisher('/scout/joint1_position_controller/command', Float64, queue_size=10) 8 | pub2 = rospy.Publisher('/scout/joint2_position_controller/command', Float64, queue_size=10) 9 | pub3 = rospy.Publisher('/scout/joint3_position_controller/command', Float64, queue_size=10) 10 | pub4 = rospy.Publisher('/scout/joint4_position_controller/command', Float64, queue_size=10) 11 | rospy.init_node('walking_scout', anonymous=False) 12 | rate = rospy.Rate(1) # 10hz 13 | rate2 = rospy.Rate(1) 14 | leg_count = 0 15 | timeStamp = rospy.get_rostime() 16 | pub1.publish(0) 17 | pub2.publish(0) 18 | pub3.publish(0) 19 | pub4.publish(0) 20 | while not rospy.is_shutdown(): 21 | if leg_count == 0: 22 | pub1.publish(2) 23 | rate2.sleep() 24 | rate2.sleep() 25 | pub2.publish(-1) 26 | pub3.publish(-1) 27 | pub4.publish(-1) 28 | rate2.sleep() 29 | rate2.sleep() 30 | else: 31 | pub1.publish(0) 32 | pub2.publish(0) 33 | pub3.publish(0) 34 | pub4.publish(0) 35 | rate2.sleep() 36 | rate2.sleep() 37 | leg_count = (leg_count+1)%2 38 | rate.sleep() 39 | 40 | if __name__ == '__main__': 41 | try: 42 | talker() 43 | except rospy.ROSInterruptException: 44 | pass 45 | --------------------------------------------------------------------------------
URDF Description package for minitaur
This package contains configuration data, 3D models and launch files 7 | for minitaur robot