diff --git a/CMakeLists.txt b/CMakeLists.txt index 273604329a87a8e023f28d96789cd4cbf84345ae..c8536d8e861183a70cf81ba7e153983996c557b0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -48,4 +48,5 @@ IF(NOT INSTALL_PYTHON_INTERFACE_ONLY) INSTALL(DIRECTORY kinova_description DESTINATION share/${PROJECT_NAME}) INSTALL(DIRECTORY tiago_description DESTINATION share/${PROJECT_NAME}) INSTALL(DIRECTORY ur_description DESTINATION share/${PROJECT_NAME}) + INSTALL(DIRECTORY romeo_description DESTINATION share/${PROJECT_NAME}) ENDIF(NOT INSTALL_PYTHON_INTERFACE_ONLY) diff --git a/python/example_robot_data/__init__.py b/python/example_robot_data/__init__.py index 3ca7eec0b1d89bdae0bd4ee4301d348304eaaefe..337b88db6ee29d2fbdebab87d6a34723de4e473c 100644 --- a/python/example_robot_data/__init__.py +++ b/python/example_robot_data/__init__.py @@ -1,3 +1,3 @@ # flake8: noqa -from .robots_loader import (getModelPath, loadANYmal, loadHyQ, loadICub, loadSolo, loadTalos, loadTalosArm, - loadTalosLegs, loadKinova, loadTiago, loadTiagoNoHand, loadUR, readParamsFromSrdf) +from .robots_loader import (getModelPath, loadANYmal, loadHyQ, loadICub, loadKinova, loadRomeo, loadSolo, loadTalos, + loadTalosArm, loadTalosLegs, loadTiago, loadTiagoNoHand, loadUR, readParamsFromSrdf) diff --git a/python/example_robot_data/__main__.py b/python/example_robot_data/__main__.py index 9b5e67174c9ad8e830bd9a8fa2c6769415295849..da4b1adeb515cf14af6af60e416790cba29c1392 100644 --- a/python/example_robot_data/__main__.py +++ b/python/example_robot_data/__main__.py @@ -4,7 +4,7 @@ from . import robots_loader ROBOTS = [ 'anymal', 'anymal_kinova', 'hyq', 'solo', 'solo12', 'talos', 'talos_arm', 'talos_legs', 'kinova', 'tiago', - 'tiago_no_hand', 'icub', 'ur5' + 'tiago_no_hand', 'icub', 'ur5', 'romeo' ] parser = ArgumentParser() @@ -76,3 +76,8 @@ elif args.robot == 'ur5': ur5 = robots_loader.loadUR() ur5.initViewer(loadModel=True) ur5.display(ur5.q0) + +elif args.robot == 'romeo': + romeo = robots_loader.loadRomeo() + romeo.initViewer(loadModel=True) + romeo.display(romeo.q0) diff --git a/python/example_robot_data/robots_loader.py b/python/example_robot_data/robots_loader.py index 83edd9334208a50772ba7884c93e976fff5c2553..5e51873c96e06a554c871da69abcadb840b3d4c0 100644 --- a/python/example_robot_data/robots_loader.py +++ b/python/example_robot_data/robots_loader.py @@ -241,3 +241,10 @@ def loadUR(robot=5, limited=False): URDF_SUBPATH = "/ur_description/urdf/" + URDF_FILENAME modelPath = getModelPath(URDF_SUBPATH) return RobotWrapper.BuildFromURDF(modelPath + URDF_SUBPATH, [modelPath]) + + +def loadRomeo(): + URDF_FILENAME = "romeo.urdf" + URDF_SUBPATH = "/romeo_description/urdf/" + URDF_FILENAME + modelPath = getModelPath(URDF_SUBPATH) + return RobotWrapper.BuildFromURDF(modelPath + URDF_SUBPATH, [modelPath], pinocchio.JointModelFreeFlyer()) diff --git a/unittest/test_load.py b/unittest/test_load.py index bdd264a68aa181aecb05a51b798c11a6a99493eb..2052199d1b577d94c0540ea9dc91cb0c1e8b8e6c 100755 --- a/unittest/test_load.py +++ b/unittest/test_load.py @@ -107,10 +107,16 @@ class KinovaTest(RobotTestCase): RobotTestCase.NV = 6 +class RomeoTest(RobotTestCase): + RobotTestCase.ROBOT = example_robot_data.loadRomeo() + RobotTestCase.NQ = 62 + RobotTestCase.NV = 61 + + if __name__ == '__main__': test_classes_to_run = [ ANYmalTest, ANYmalKinovaTest, HyQTest, TalosTest, TalosArmTest, TalosArmFloatingTest, TalosLegsTest, ICubTest, - SoloTest, Solo12Test, TiagoTest, TiagoNoHandTest, KinovaTest + SoloTest, Solo12Test, TiagoTest, TiagoNoHandTest, KinovaTest, RomeoTest ] loader = unittest.TestLoader() suites_list = []