{"id":28179750,"url":"https://github.com/interpause/dai-pds-arm","last_synced_at":"2025-06-22T17:08:07.320Z","repository":{"id":286762488,"uuid":"962331497","full_name":"Interpause/dai-pds-arm","owner":"Interpause","description":null,"archived":false,"fork":false,"pushed_at":"2025-05-03T04:14:43.000Z","size":2807,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-16T02:13:35.243Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Interpause.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-04-08T02:07:41.000Z","updated_at":"2025-05-03T04:14:46.000Z","dependencies_parsed_at":null,"dependency_job_id":"dc1a3d5f-9c5d-4a18-ae2d-c73165c8fda6","html_url":"https://github.com/Interpause/dai-pds-arm","commit_stats":null,"previous_names":["interpause/dai-pds-arm"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Interpause/dai-pds-arm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Interpause%2Fdai-pds-arm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Interpause%2Fdai-pds-arm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Interpause%2Fdai-pds-arm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Interpause%2Fdai-pds-arm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Interpause","download_url":"https://codeload.github.com/Interpause/dai-pds-arm/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Interpause%2Fdai-pds-arm/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261330123,"owners_count":23142482,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-05-16T02:13:35.131Z","updated_at":"2025-06-22T17:08:02.304Z","avatar_url":"https://github.com/Interpause.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Arm Control Stuff\n\nThere are three sets of arms: arm, arm2 and arm3. arm2 is the arm we are using.\narm is the old nested link design, arm3 is the last-ditch effort as light as possible\narm that we didn't use cause it still was not light enough.\n\n## Adding New Arms\n\n1. Install any Fusion to URDF exporter, I used: \u003chttps://github.com/bionicdl-sustech/ACDC4Robot\u003e\n2. Ensure that the Fusion CAD model is well-organized, namely:\n  - Base component of robot must be named base_link and anchored.\n  - All joints must be such that component 1 is the child component, and component 2 is the parent.\n  - No nested components.\n3. Use the exporter to export the Fusion CAD model as URDF.\n4. Put the URDF into a ROS2 package, conventionally called `{some_name}_description`.\n5. Use Moveit's Setup Assistant to configure the arm: \u003chttps://moveit.picknik.ai/main/doc/examples/setup_assistant/setup_assistant_tutorial.html\u003e\n6. Perform manual adjustment to joints as needed if the angular range is incorrect.\n\n```sh\n# Launch the setup assistant\nros2 launch moveit_setup_assistant setup_assistant.launch.py\n# Check arm was configured correctly by moveit\nros2 launch arm_moveit_config demo.launch.py\n```\n\n## Controlling the Arm\n\nRemember to replace the mock arm controller with the topic-based arm controller, see below for example:\n\n\u003chttps://github.com/Interpause/dai-pds-arm/blob/ec006215c90d9d20ff83a97f44b97da54cf4b4fc/src/arm2_moveit_config/config/arm2.ros2_control.xacro#L7-L16\u003e\n\nLauch the control software (Rviz):\n\n```sh\nros2 launch arm_arduino_bridge ctrl.launch.py\n```\n\n## For Directly Setting Servo Values\n\n```sh\nros2 run arm_arduino_bridge bridge\nros2 run arm_arduino_bridge direct\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finterpause%2Fdai-pds-arm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finterpause%2Fdai-pds-arm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finterpause%2Fdai-pds-arm/lists"}