{"id":13706212,"url":"https://github.com/rpiRobotics/abb_robot_client","last_synced_at":"2025-05-05T20:30:30.871Z","repository":{"id":63275314,"uuid":"564024901","full_name":"rpiRobotics/abb_robot_client","owner":"rpiRobotics","description":"Python clients for ABB Robot IRC5 controller RWS and EGM","archived":false,"fork":false,"pushed_at":"2024-07-12T19:36:38.000Z","size":127,"stargazers_count":15,"open_issues_count":2,"forks_count":5,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-11-08T19:48:05.258Z","etag":null,"topics":["python","robotics"],"latest_commit_sha":null,"homepage":"https://abb-robot-client.readthedocs.io/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rpiRobotics.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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}},"created_at":"2022-11-09T20:43:52.000Z","updated_at":"2024-07-13T05:53:53.000Z","dependencies_parsed_at":"2023-12-18T01:30:36.434Z","dependency_job_id":"d2cc025b-70db-4ef8-b47c-049f7c722fd9","html_url":"https://github.com/rpiRobotics/abb_robot_client","commit_stats":null,"previous_names":["johnwason/abb_robot_client"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rpiRobotics%2Fabb_robot_client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rpiRobotics%2Fabb_robot_client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rpiRobotics%2Fabb_robot_client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rpiRobotics%2Fabb_robot_client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rpiRobotics","download_url":"https://codeload.github.com/rpiRobotics/abb_robot_client/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224465700,"owners_count":17315858,"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":["python","robotics"],"created_at":"2024-08-02T22:00:53.211Z","updated_at":"2024-11-13T14:30:39.167Z","avatar_url":"https://github.com/rpiRobotics.png","language":"Python","funding_links":[],"categories":["Development Tools"],"sub_categories":["🐍 Python"],"readme":"# abb_robot_client\r\n\r\n[![Python](https://img.shields.io/badge/python-3.6+-blue.svg)](https://github.com/rpiRobotics/abb_robot_client)\r\n![PyPI](https://img.shields.io/pypi/v/abb-robot-client)\r\n\r\nPython package providing clients for ABB robots using RWS (Robot Web Services) and Externally Guided Motion (EGM). \r\nThis package currently supports IRC5 controllers running RobotWare 6.xx. It does not support RobotWare 7+.\r\n\r\nThis package is typically used with [abb-motion-program-exec](https://pypi.org/project/abb-motion-program-exec/),\r\nwhich provides a higher level interface to generate motion programs. `abb-motion-program-exec` includes the ability\r\nto initialize EGM operations, using this package to communicate with EGM.\r\n\r\n`abb_robot_client` includes three modules: `rws`, `rws_aio`, and `egm`. `rws` provides a synhronous client for Robot \r\nWeb Services (RWS) using HTTP REST, and the ability to create subscriptions using websockets. `rws_aio` provides \r\nidentical functionality to `rws`, but uses asyncio, with each method being `async`. `egm` provides an Externally\r\nGuided Motion (EGM) client.\r\n\r\nA Robot Raconteur driver is also provided. This driver provides access to RWS and EGM.\r\n\r\nDocumentation can be found at: https://abb_robot_client.readthedocs.org\r\n\r\n## Installation\r\n\r\n`abb-robot-client` is avaliable on PyPi. Use the `[aio]` option to include support for asyncio:\r\n\r\n```\r\npip install abb-robot-client[aio]\r\n```\r\n\r\n## Examples\r\n\r\nSee the `examples/` directory for examples using the modules.\r\n\r\n## Robot Raconteur Driver\r\n\r\nThe Robot Raconteur driver provides access to the features of RWS and EGM, along with standard Robot Raconteur\r\ndata structures such as `RobotInfo` and `RobotState`. See `examples/robotraconteur` for examples using\r\nthe Robot Raconteur driver. See `src/abb_robot_client/robotraconteur/experimental.abb_robot.rws.robdef` and\r\n`src/abb_robot_client/robotraconteur/experimental.abb_robot.egm.robdef` service definitions\r\nfor full information on the objects and data types provided by the service.\r\n\r\n### Installation\r\n\r\nInstall the `abb-robot-client` with the `[robotraconteur]` feature:\r\n\r\n```bash\r\npython -m pip install abb-robot-client[robotraconteur]\r\n```\r\n\r\n### Start the Driver\r\n\r\nStart the driver:\r\n\r\n```\r\nabb-robot-client-robotraconteur --robot-info-file=config\\abb_1200_5_90_rws_default_config.yml --robot-url=http://127.0.0.1:80\r\n```\r\n\r\nor\r\n\r\n```\r\npython -m pip abb_robot_client.robotraconteur --robot-info-file=config\\abb_1200_5_90_rws_default_config.yml --robot-url=http://127.0.0.1:80\r\n```\r\n\r\nChange the `--robot-info-file=` to the appropriate Robot Raconteur format yaml file for your robot,\r\nand change `--robot-url=` to the URL of the IRC5 robot controller.\r\n\r\nIf EGM is used, the EGM must be configured on the robot controller to point to the IP address of the\r\ncomputer running the driver, on port 6510.\r\n\r\n### Connection Info\r\n\r\n- URL: `rr+tcp://localhost:59926?service=robot`\r\n- Node Name: `experimental.abb_rws_robot.robot`\r\n- Device Name: `abb_robot_rws`\r\n- Service Name: `robot`\r\n- Root Object Type: `experimental.abb_robot.rws.ABBRWSRobot`\r\n\r\n## License\r\n\r\nApache 2.0\r\n\r\n## Acknowledgment\r\n\r\nThis work was supported in part by Subaward No. ARM-TEC-21-02-F19 from the Advanced Robotics for Manufacturing (\"ARM\") Institute under Agreement Number W911NF-17-3-0004 sponsored by the Office of the Secretary of Defense. ARM Project Management was provided by Christopher Adams. The views and conclusions contained in this document are those of the authors and should not be interpreted as representing the official policies, either expressed or implied, of either ARM or the Office of the Secretary of Defense of the U.S. Government. The U.S. Government is authorized to reproduce and distribute reprints for Government purposes, notwithstanding any copyright notation herein.\r\n\r\nThis work was supported in part by the New York State Empire State Development Division of Science, Technology and Innovation (NYSTAR) under contract C160142. \r\n\r\n![](docs/figures/arm_logo.jpg) ![](docs/figures/nys_logo.jpg)\r\n\r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FrpiRobotics%2Fabb_robot_client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FrpiRobotics%2Fabb_robot_client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FrpiRobotics%2Fabb_robot_client/lists"}