├── meshes ├── base.stl ├── elbow.stl ├── shoulder.stl ├── wrist_roll.stl ├── gripper_base.stl ├── gripper_fix.stl ├── wrist_pitch.stl └── gripper_movable.stl ├── renderings ├── 00.png ├── 01.png ├── 02.png ├── 03.png ├── 04.png ├── 05.png └── braccio.mp4 ├── res ├── braccio.blend ├── wrist_pitch.svg ├── base_top.svg ├── base_side.svg ├── shoulder.svg └── gripper.svg ├── README.md ├── package.xml ├── LICENSE ├── urdf └── braccio.urdf └── CMakeLists.txt /meshes/base.stl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jonabalzer/braccio_description/HEAD/meshes/base.stl -------------------------------------------------------------------------------- /meshes/elbow.stl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jonabalzer/braccio_description/HEAD/meshes/elbow.stl -------------------------------------------------------------------------------- /renderings/00.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jonabalzer/braccio_description/HEAD/renderings/00.png -------------------------------------------------------------------------------- /renderings/01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jonabalzer/braccio_description/HEAD/renderings/01.png -------------------------------------------------------------------------------- /renderings/02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jonabalzer/braccio_description/HEAD/renderings/02.png -------------------------------------------------------------------------------- /renderings/03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jonabalzer/braccio_description/HEAD/renderings/03.png -------------------------------------------------------------------------------- /renderings/04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jonabalzer/braccio_description/HEAD/renderings/04.png -------------------------------------------------------------------------------- /renderings/05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jonabalzer/braccio_description/HEAD/renderings/05.png -------------------------------------------------------------------------------- /res/braccio.blend: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jonabalzer/braccio_description/HEAD/res/braccio.blend -------------------------------------------------------------------------------- /meshes/shoulder.stl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jonabalzer/braccio_description/HEAD/meshes/shoulder.stl -------------------------------------------------------------------------------- /meshes/wrist_roll.stl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jonabalzer/braccio_description/HEAD/meshes/wrist_roll.stl -------------------------------------------------------------------------------- /meshes/gripper_base.stl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jonabalzer/braccio_description/HEAD/meshes/gripper_base.stl -------------------------------------------------------------------------------- /meshes/gripper_fix.stl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jonabalzer/braccio_description/HEAD/meshes/gripper_fix.stl -------------------------------------------------------------------------------- /meshes/wrist_pitch.stl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jonabalzer/braccio_description/HEAD/meshes/wrist_pitch.stl -------------------------------------------------------------------------------- /renderings/braccio.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jonabalzer/braccio_description/HEAD/renderings/braccio.mp4 -------------------------------------------------------------------------------- /meshes/gripper_movable.stl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jonabalzer/braccio_description/HEAD/meshes/gripper_movable.stl -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # braccio_description 2 | 3 | URDF file for Arduino Braccio toy robot arm 4 | 5 | 6 | -------------------------------------------------------------------------------- /package.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | braccio_description 4 | 0.0.1 5 | Model of Arduino Braccio toy robot. 6 | Jonathan Balzer 7 | MIT 8 | https://github.com/jonabalzer/braccio_description 9 | Jonathan Balzer 10 | catkin 11 | 12 | 13 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Jonathan Balzer 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /res/wrist_pitch.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 43 | 45 | 46 | 48 | image/svg+xml 49 | 51 | 52 | 53 | 54 | 55 | 60 | 66 | 67 | 68 | -------------------------------------------------------------------------------- /res/base_top.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 43 | 45 | 46 | 48 | image/svg+xml 49 | 51 | 52 | 53 | 54 | 55 | 60 | 66 | 67 | 68 | -------------------------------------------------------------------------------- /res/base_side.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 43 | 45 | 46 | 48 | image/svg+xml 49 | 51 | 52 | 53 | 54 | 55 | 60 | 66 | 72 | 73 | 74 | -------------------------------------------------------------------------------- /res/shoulder.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 43 | 45 | 46 | 48 | image/svg+xml 49 | 51 | 52 | 53 | 54 | 55 | 60 | 65 | 66 | 67 | -------------------------------------------------------------------------------- /res/gripper.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 43 | 45 | 46 | 48 | image/svg+xml 49 | 51 | 52 | 53 | 54 | 55 | 60 | 66 | 67 | 68 | -------------------------------------------------------------------------------- /urdf/braccio.urdf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 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 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.8.3) 2 | project(braccio_description) 3 | 4 | ## Add support for C++11, supported in ROS Kinetic and newer 5 | # add_definitions(-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 run_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 run_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 run_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 you 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 braccio_description 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(include) 115 | 116 | ## Declare a C++ library 117 | # add_library(${PROJECT_NAME} 118 | # src/${PROJECT_NAME}/braccio_description.cpp 119 | # ) 120 | 121 | ## Add cmake target dependencies of the library 122 | ## as an example, code may need to be generated before libraries 123 | ## either from message generation or dynamic reconfigure 124 | # add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) 125 | 126 | ## Declare a C++ executable 127 | ## With catkin_make all packages are built within a single CMake context 128 | ## The recommended prefix ensures that target names across packages don't collide 129 | # add_executable(${PROJECT_NAME}_node src/braccio_description_node.cpp) 130 | 131 | ## Rename C++ executable without prefix 132 | ## The above recommended prefix causes long target names, the following renames the 133 | ## target back to the shorter version for ease of user use 134 | ## e.g. "rosrun someones_pkg node" instead of "rosrun someones_pkg someones_pkg_node" 135 | # set_target_properties(${PROJECT_NAME}_node PROPERTIES OUTPUT_NAME node PREFIX "") 136 | 137 | ## Add cmake target dependencies of the executable 138 | ## same as for the library above 139 | # add_dependencies(${PROJECT_NAME}_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) 140 | 141 | ## Specify libraries to link a library or executable target against 142 | # target_link_libraries(${PROJECT_NAME}_node 143 | # ${catkin_LIBRARIES} 144 | # ) 145 | 146 | ############# 147 | ## Install ## 148 | ############# 149 | 150 | # all install targets should use catkin DESTINATION variables 151 | # See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html 152 | 153 | ## Mark executable scripts (Python etc.) for installation 154 | ## in contrast to setup.py, you can choose the destination 155 | # install(PROGRAMS 156 | # scripts/my_python_script 157 | # DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} 158 | # ) 159 | 160 | ## Mark executables and/or libraries for installation 161 | # install(TARGETS ${PROJECT_NAME} ${PROJECT_NAME}_node 162 | # ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} 163 | # LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} 164 | # RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} 165 | # ) 166 | 167 | ## Mark cpp header files for installation 168 | # install(DIRECTORY include/${PROJECT_NAME}/ 169 | # DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} 170 | # FILES_MATCHING PATTERN "*.h" 171 | # PATTERN ".svn" EXCLUDE 172 | # ) 173 | 174 | ## Mark other files for installation (e.g. launch and bag files, etc.) 175 | # install(FILES 176 | # # myfile1 177 | # # myfile2 178 | # DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} 179 | # ) 180 | 181 | ############# 182 | ## Testing ## 183 | ############# 184 | 185 | ## Add gtest based cpp test target and link libraries 186 | # catkin_add_gtest(${PROJECT_NAME}-test test/test_braccio_description.cpp) 187 | # if(TARGET ${PROJECT_NAME}-test) 188 | # target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME}) 189 | # endif() 190 | 191 | ## Add folders to be run by python nosetests 192 | # catkin_add_nosetests(test) 193 | --------------------------------------------------------------------------------