diff --git a/pyproject.toml b/pyproject.toml index 878a36dbe..3687535f5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -116,7 +116,7 @@ packages = [ [tool.ruff] line-length = 110 target-version = "py310" -exclude = ["tests/artifacts/**/*.safetensors", "*_pb2.py", "*_pb2_grpc.py"] +exclude = ["tests/artifacts/**/*.safetensors", "*_pb2.py", "*_pb2_grpc.py", "*.part", "*.stl"] [tool.ruff.lint] select = ["E4", "E7", "E9", "F", "I", "N", "B", "C4", "SIM"] @@ -148,6 +148,12 @@ default.extend-ignore-identifiers-re = [ "ein", ] +[tool.typos.files] +extend-exclude = [ + "*.stl", + "*.part", +] + [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api" diff --git a/src/lerobot/robots/so101_follower_torque/so101_follower_t.py b/src/lerobot/robots/so101_follower_torque/so101_follower_t.py index f2b722c6a..a908033ad 100644 --- a/src/lerobot/robots/so101_follower_torque/so101_follower_t.py +++ b/src/lerobot/robots/so101_follower_torque/so101_follower_t.py @@ -121,9 +121,7 @@ class SO101FollowerT(Robot): ) self.cameras = make_cameras_from_configs(config.cameras) - self.pin_robot = pin.RobotWrapper.BuildFromURDF( - "src/lerobot/SO101/so101_new_calib.urdf", "src/lerobot/SO101" - ) + self.pin_robot = pin.RobotWrapper.BuildFromURDF("urdf/so101_new_calib.urdf", "urdf") flip = { "shoulder_pan": True, @@ -161,7 +159,6 @@ class SO101FollowerT(Robot): for motor in self.bus.motors: d[f"{motor}.pos"] = float d[f"{motor}.vel"] = float - # d[f"{motor}.acc"] = float d[f"{motor}.effort"] = float return d diff --git a/urdf/assets/base_motor_holder_so101_v1.part b/urdf/assets/base_motor_holder_so101_v1.part new file mode 100644 index 000000000..6d3ac5004 --- /dev/null +++ b/urdf/assets/base_motor_holder_so101_v1.part @@ -0,0 +1,14 @@ +{ + "configuration": "default", + "documentId": "84d8ae1881704ebae1ffb70a", + "documentMicroversion": "0eea3500852bdb2f58b1cb79", + "documentVersion": "a5c3b0dfaa52ddd6829011cd", + "elementId": "22efbe4e0bef24fcd20f96e5", + "fullConfiguration": "default", + "id": "MCOhripg0ry51VlsC", + "isStandardContent": false, + "name": "Base_motor_holder_SO101 v1 <1>", + "partId": "JFD", + "suppressed": false, + "type": "Part" +} diff --git a/urdf/assets/base_motor_holder_so101_v1.stl b/urdf/assets/base_motor_holder_so101_v1.stl new file mode 100644 index 000000000..ac9c38076 --- /dev/null +++ b/urdf/assets/base_motor_holder_so101_v1.stl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8cd2f241037ea377af1191fffe0dd9d9006beea6dcc48543660ed41647072424 +size 1877084 diff --git a/urdf/assets/base_so101_v2.part b/urdf/assets/base_so101_v2.part new file mode 100644 index 000000000..f41563fa8 --- /dev/null +++ b/urdf/assets/base_so101_v2.part @@ -0,0 +1,14 @@ +{ + "configuration": "default", + "documentId": "bf61a6bc85b1d1a8bf9ea51b", + "documentMicroversion": "20484d37162a32a8a41a37f2", + "documentVersion": "25801b070e5b360715de8a30", + "elementId": "312f32f0073fa6e8e36fba7a", + "fullConfiguration": "default", + "id": "MY69cJlqvSzIiODdH", + "isStandardContent": false, + "name": "Base_SO101 v2 <1>", + "partId": "JFD", + "suppressed": false, + "type": "Part" +} diff --git a/urdf/assets/base_so101_v2.stl b/urdf/assets/base_so101_v2.stl new file mode 100644 index 000000000..503d30be0 --- /dev/null +++ b/urdf/assets/base_so101_v2.stl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb12b7026575e1f70ccc7240051f9d943553bf34e5128537de6cd86fae33924d +size 471584 diff --git a/urdf/assets/motor_holder_so101_base_v1.part b/urdf/assets/motor_holder_so101_base_v1.part new file mode 100644 index 000000000..bf899dd0c --- /dev/null +++ b/urdf/assets/motor_holder_so101_base_v1.part @@ -0,0 +1,14 @@ +{ + "configuration": "default", + "documentId": "652d5731024e57367badfda6", + "documentMicroversion": "56a8b8013480c176fd87df8d", + "documentVersion": "984ac31c92cac3664c8effb3", + "elementId": "6fb7b7f9315511b548d670ff", + "fullConfiguration": "default", + "id": "Mf4ZebMr4BkShucFj", + "isStandardContent": false, + "name": "Motor_holder_SO101_Base v1 <1>", + "partId": "JFD", + "suppressed": false, + "type": "Part" +} diff --git a/urdf/assets/motor_holder_so101_base_v1.stl b/urdf/assets/motor_holder_so101_base_v1.stl new file mode 100644 index 000000000..f8e3d75c0 --- /dev/null +++ b/urdf/assets/motor_holder_so101_base_v1.stl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31242ae6fb59d8b15c66617b88ad8e9bded62d57c35d11c0c43a70d2f4caa95b +size 1129384 diff --git a/urdf/assets/motor_holder_so101_wrist_v1.part b/urdf/assets/motor_holder_so101_wrist_v1.part new file mode 100644 index 000000000..dd57728f5 --- /dev/null +++ b/urdf/assets/motor_holder_so101_wrist_v1.part @@ -0,0 +1,14 @@ +{ + "configuration": "default", + "documentId": "4bd66da73cacb4d946d43e44", + "documentMicroversion": "2bf56247e58b70e90806e318", + "documentVersion": "df78bb7089f1de7d5588d238", + "elementId": "d7dfe76e402c21bbd8124e43", + "fullConfiguration": "default", + "id": "MN9BZ1p69dQQtKTjq", + "isStandardContent": false, + "name": "Motor_holder_SO101_Wrist v1 <1>", + "partId": "JFD", + "suppressed": false, + "type": "Part" +} diff --git a/urdf/assets/motor_holder_so101_wrist_v1.stl b/urdf/assets/motor_holder_so101_wrist_v1.stl new file mode 100644 index 000000000..e55b71946 --- /dev/null +++ b/urdf/assets/motor_holder_so101_wrist_v1.stl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:887f92e6013cb64ea3a1ab8675e92da1e0beacfd5e001f972523540545e08011 +size 1052184 diff --git a/urdf/assets/moving_jaw_so101_v1.part b/urdf/assets/moving_jaw_so101_v1.part new file mode 100644 index 000000000..959a7eb0c --- /dev/null +++ b/urdf/assets/moving_jaw_so101_v1.part @@ -0,0 +1,14 @@ +{ + "configuration": "default", + "documentId": "46218c02ef80d36172edbb35", + "documentMicroversion": "68b7d387e2500c451586ae59", + "documentVersion": "79c101d1a0207b77362b561a", + "elementId": "d4b1411d5d7333298f6e2458", + "fullConfiguration": "default", + "id": "MrHPLr9hZkrXwcSA4", + "isStandardContent": false, + "name": "Moving_Jaw_SO101 v1 <1>", + "partId": "JFD", + "suppressed": false, + "type": "Part" +} diff --git a/urdf/assets/moving_jaw_so101_v1.stl b/urdf/assets/moving_jaw_so101_v1.stl new file mode 100644 index 000000000..eb17d253d --- /dev/null +++ b/urdf/assets/moving_jaw_so101_v1.stl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:785a9dded2f474bc1d869e0d3dae398a3dcd9c0c345640040472210d2861fa9d +size 1413584 diff --git a/urdf/assets/rotation_pitch_so101_v1.part b/urdf/assets/rotation_pitch_so101_v1.part new file mode 100644 index 000000000..6870d9d55 --- /dev/null +++ b/urdf/assets/rotation_pitch_so101_v1.part @@ -0,0 +1,14 @@ +{ + "configuration": "default", + "documentId": "14078aa6723c502d07d6902e", + "documentMicroversion": "c0fca717407275159bcc6ed7", + "documentVersion": "3d9a887ff68fa477d98162b8", + "elementId": "43d24b3857ff686b275578bf", + "fullConfiguration": "default", + "id": "MrQ6Kmk9QDZlwbp95", + "isStandardContent": false, + "name": "Rotation_Pitch_SO101 v1 <1>", + "partId": "JFD", + "suppressed": false, + "type": "Part" +} diff --git a/urdf/assets/rotation_pitch_so101_v1.stl b/urdf/assets/rotation_pitch_so101_v1.stl new file mode 100644 index 000000000..b536cb410 --- /dev/null +++ b/urdf/assets/rotation_pitch_so101_v1.stl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9be900cc2a2bf718102841ef82ef8d2873842427648092c8ed2ca1e2ef4ffa34 +size 883684 diff --git a/urdf/assets/sts3215_03a_no_horn_v1.part b/urdf/assets/sts3215_03a_no_horn_v1.part new file mode 100644 index 000000000..0b420437d --- /dev/null +++ b/urdf/assets/sts3215_03a_no_horn_v1.part @@ -0,0 +1,14 @@ +{ + "configuration": "default", + "documentId": "56e5f3702dad85e17841d2e2", + "documentMicroversion": "7958a6acbc8e0d0a0a611746", + "documentVersion": "29a4c51b8bf277a22743a333", + "elementId": "8c14fb13a6557ec89ff5d227", + "fullConfiguration": "default", + "id": "MOcaIFg8XgL+Ybg9z", + "isStandardContent": false, + "name": "STS3215_03a_no_horn v1 <1>", + "partId": "JFD", + "suppressed": false, + "type": "Part" +} diff --git a/urdf/assets/sts3215_03a_no_horn_v1.stl b/urdf/assets/sts3215_03a_no_horn_v1.stl new file mode 100644 index 000000000..18e933567 --- /dev/null +++ b/urdf/assets/sts3215_03a_no_horn_v1.stl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75ef3781b752e4065891aea855e34dc161a38a549549cd0970cedd07eae6f887 +size 865884 diff --git a/urdf/assets/sts3215_03a_v1.part b/urdf/assets/sts3215_03a_v1.part new file mode 100644 index 000000000..e57e2dd6c --- /dev/null +++ b/urdf/assets/sts3215_03a_v1.part @@ -0,0 +1,14 @@ +{ + "configuration": "default", + "documentId": "d2941bdba816affebdc6d6f0", + "documentMicroversion": "5904ef3cea04a0d0bc88b698", + "documentVersion": "dd4f7470101215836a4ae8c9", + "elementId": "e670b72d49b06f88fad5dbd8", + "fullConfiguration": "default", + "id": "M5vQNpe0onRFueych", + "isStandardContent": false, + "name": "STS3215_03a v1 <5>", + "partId": "JFD", + "suppressed": false, + "type": "Part" +} diff --git a/urdf/assets/sts3215_03a_v1.stl b/urdf/assets/sts3215_03a_v1.stl new file mode 100644 index 000000000..a14c57b90 --- /dev/null +++ b/urdf/assets/sts3215_03a_v1.stl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a37c871fb502483ab96c256baf457d36f2e97afc9205313d9c5ab275ef941cd0 +size 954084 diff --git a/urdf/assets/under_arm_so101_v1.part b/urdf/assets/under_arm_so101_v1.part new file mode 100644 index 000000000..bd97af90b --- /dev/null +++ b/urdf/assets/under_arm_so101_v1.part @@ -0,0 +1,14 @@ +{ + "configuration": "default", + "documentId": "9f5d6db47eb112442b9f130f", + "documentMicroversion": "e99cf45162e34789bd99512b", + "documentVersion": "817ebf29c5663d412edc0753", + "elementId": "2813aaffe3c8a342616d3527", + "fullConfiguration": "default", + "id": "M9yAEiX02J3c4HqXa", + "isStandardContent": false, + "name": "Under_arm_SO101 v1 <1>", + "partId": "JFD", + "suppressed": false, + "type": "Part" +} diff --git a/urdf/assets/under_arm_so101_v1.stl b/urdf/assets/under_arm_so101_v1.stl new file mode 100644 index 000000000..47b611ef9 --- /dev/null +++ b/urdf/assets/under_arm_so101_v1.stl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d01d1f2de365651dcad9d6669e94ff87ff7652b5bb2d10752a66a456a86dbc71 +size 1975884 diff --git a/urdf/assets/upper_arm_so101_v1.part b/urdf/assets/upper_arm_so101_v1.part new file mode 100644 index 000000000..0ef64e9a2 --- /dev/null +++ b/urdf/assets/upper_arm_so101_v1.part @@ -0,0 +1,14 @@ +{ + "configuration": "default", + "documentId": "57f3eae43434311c28ac752b", + "documentMicroversion": "33eeab136e831427f0f0ca74", + "documentVersion": "435d47b71ef26075bf82672c", + "elementId": "a8e0c02dc43f7ccb373c52e4", + "fullConfiguration": "default", + "id": "Ml3rwO4kV53jDRgcs", + "isStandardContent": false, + "name": "Upper_arm_SO101 v1 <1>", + "partId": "JFD", + "suppressed": false, + "type": "Part" +} diff --git a/urdf/assets/upper_arm_so101_v1.stl b/urdf/assets/upper_arm_so101_v1.stl new file mode 100644 index 000000000..8832740f9 --- /dev/null +++ b/urdf/assets/upper_arm_so101_v1.stl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:475056e03a17e71919b82fd88ab9a0b898ab50164f2a7943652a6b2941bb2d4f +size 1303484 diff --git a/urdf/assets/waveshare_mounting_plate_so101_v2.part b/urdf/assets/waveshare_mounting_plate_so101_v2.part new file mode 100644 index 000000000..3189de573 --- /dev/null +++ b/urdf/assets/waveshare_mounting_plate_so101_v2.part @@ -0,0 +1,14 @@ +{ + "configuration": "default", + "documentId": "066f8b5064455ec46759cd8c", + "documentMicroversion": "04c5790374bf3edfbbb7e818", + "documentVersion": "408440a116f7d8700bbb11c2", + "elementId": "dc35e56269e36de39738b34d", + "fullConfiguration": "default", + "id": "MjhXxhyF1+iAgCtUh", + "isStandardContent": false, + "name": "WaveShare_Mounting_Plate_SO101 v2 <1>", + "partId": "JFD", + "suppressed": false, + "type": "Part" +} diff --git a/urdf/assets/waveshare_mounting_plate_so101_v2.stl b/urdf/assets/waveshare_mounting_plate_so101_v2.stl new file mode 100644 index 000000000..e0d90d5b6 --- /dev/null +++ b/urdf/assets/waveshare_mounting_plate_so101_v2.stl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e197e24005a07d01bbc06a8c42311664eaeda415bf859f68fa247884d0f1a6e9 +size 62784 diff --git a/urdf/assets/wrist_roll_follower_so101_v1.part b/urdf/assets/wrist_roll_follower_so101_v1.part new file mode 100644 index 000000000..77c7ef5ee --- /dev/null +++ b/urdf/assets/wrist_roll_follower_so101_v1.part @@ -0,0 +1,14 @@ +{ + "configuration": "default", + "documentId": "e02f1e1d3fdd766a19a55890", + "documentMicroversion": "03f1dfc090db6bbecdb14475", + "documentVersion": "8a15327cfbde0344e0951076", + "elementId": "2317bd70c68862eeebd64492", + "fullConfiguration": "default", + "id": "MpI0voU28BOAZ6D9x", + "isStandardContent": false, + "name": "Wrist_Roll_Follower_SO101 v1 <1>", + "partId": "JFD", + "suppressed": false, + "type": "Part" +} diff --git a/urdf/assets/wrist_roll_follower_so101_v1.stl b/urdf/assets/wrist_roll_follower_so101_v1.stl new file mode 100644 index 000000000..9a5fa8fe2 --- /dev/null +++ b/urdf/assets/wrist_roll_follower_so101_v1.stl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b17b410a12d64ec39554abc3e8054d8a97384b2dc4a8d95a5ecb2a93670f5f4 +size 1439884 diff --git a/urdf/assets/wrist_roll_pitch_so101_v2.part b/urdf/assets/wrist_roll_pitch_so101_v2.part new file mode 100644 index 000000000..388f5efa4 --- /dev/null +++ b/urdf/assets/wrist_roll_pitch_so101_v2.part @@ -0,0 +1,14 @@ +{ + "configuration": "default", + "documentId": "eb144d215e733b8dbbb50b81", + "documentMicroversion": "4fef760722dee3a9b5ff19b1", + "documentVersion": "5880c1e9413206cac10772d0", + "elementId": "3c22c2c23cb0ce545b9df2ba", + "fullConfiguration": "default", + "id": "Ma99J59HxnSe2TArb", + "isStandardContent": false, + "name": "Wrist_Roll_Pitch_SO101 v2 <1>", + "partId": "JFD", + "suppressed": false, + "type": "Part" +} diff --git a/urdf/assets/wrist_roll_pitch_so101_v2.stl b/urdf/assets/wrist_roll_pitch_so101_v2.stl new file mode 100644 index 000000000..2f531712f --- /dev/null +++ b/urdf/assets/wrist_roll_pitch_so101_v2.stl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c7ec5525b4d8b9e397a30ab4bb0037156a5d5f38a4adf2c7d943d6c56eda5ae +size 2699784 diff --git a/urdf/so101_new_calib.urdf b/urdf/so101_new_calib.urdf new file mode 100644 index 000000000..509c65fcc --- /dev/null +++ b/urdf/so101_new_calib.urdf @@ -0,0 +1,453 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + transmission_interface/SimpleTransmission + + hardware_interface/PositionJointInterface + + + hardware_interface/PositionJointInterface + 1 + + + + + + + + + + + + + + transmission_interface/SimpleTransmission + + hardware_interface/PositionJointInterface + + + hardware_interface/PositionJointInterface + 1 + + + + + + + + + + + + + + transmission_interface/SimpleTransmission + + hardware_interface/PositionJointInterface + + + hardware_interface/PositionJointInterface + 1 + + + + + + + + + + + + + + + transmission_interface/SimpleTransmission + + hardware_interface/PositionJointInterface + + + hardware_interface/PositionJointInterface + 1 + + + + + + + + + + + + + + transmission_interface/SimpleTransmission + + hardware_interface/PositionJointInterface + + + hardware_interface/PositionJointInterface + 1 + + + + + + + + + + + + + + transmission_interface/SimpleTransmission + + hardware_interface/PositionJointInterface + + + hardware_interface/PositionJointInterface + 1 + + + + diff --git a/urdf/so101_old_calib.urdf b/urdf/so101_old_calib.urdf new file mode 100644 index 000000000..c75bb38ea --- /dev/null +++ b/urdf/so101_old_calib.urdf @@ -0,0 +1,435 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + transmission_interface/SimpleTransmission + + hardware_interface/PositionJointInterface + + + hardware_interface/PositionJointInterface + 1 + + + + + + + + + + + + + + transmission_interface/SimpleTransmission + + hardware_interface/PositionJointInterface + + + hardware_interface/PositionJointInterface + 1 + + + + + + + + + + + + + + transmission_interface/SimpleTransmission + + hardware_interface/PositionJointInterface + + + hardware_interface/PositionJointInterface + 1 + + + + + + + + + + + + + + transmission_interface/SimpleTransmission + + hardware_interface/PositionJointInterface + + + hardware_interface/PositionJointInterface + 1 + + + + + + + + + + + + + + transmission_interface/SimpleTransmission + + hardware_interface/PositionJointInterface + + + hardware_interface/PositionJointInterface + 1 + + + + + + + + + + + + + + transmission_interface/SimpleTransmission + + hardware_interface/PositionJointInterface + + + hardware_interface/PositionJointInterface + 1 + + + +