DobotTCP


NameDobotTCP JSON
Version 1.1.2 PyPI version JSON
download
home_pageNone
SummaryA library to control Dobot robots via TCP
upload_time2025-01-31 16:06:29
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseNone
keywords dobot robotics tcp
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # DobotTCP Library

DobotTCP is a Python library to control the Dobot  robot range via its TCP interface. The library provides functions for managing motion, I/O, and configuration of the Dobot robot. It was specially developed with the Dobot MagicianE6 in mind.

<p align="center">
<a href="https://hits.seeyoufarm.com"><img src="https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fgithub.com%2FMichaelHengge%2FDobotTCP&count_bg=%2379C83D&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=hits&edge_flat=false"/></a>
<img src="https://img.shields.io/github/license/MichaelHengge/DobotTCP?style=round-square">
<img src="https://img.shields.io/github/stars/MichaelHengge/DobotTCP?style=round-square">
<img src="https://img.shields.io/github/forks/MichaelHengge/DobotTCP?style=round-square">
<img src="https://img.shields.io/github/issues/MichaelHengge/DobotTCP?style=round-square">
<a href="https://www.pepy.tech/projects/DobotTCP" target="_blank"><img src="https://static.pepy.tech/badge/DobotTCP"></a>
</p>

## Installation

Install the library via pip:

```bash
pip install DobotTCP
```

Ensure Python 3.8+ is installed. Install dependencies if not automatically installed:

```bash
pip install multipledispatch
```

Import the library in your project:

```python
from DobotTCP import Dobot
```

## Basic Usage

### Example

```python
from DobotTCP import Dobot

# Connect the robot
robot = Dobot(ip="192.168.5.1", port=29999)
robot.Connect()

# Enable robot and parse response
(err, rsp, cmd) = robot.EnableRobot()
print(f"  Error code: {err}")
print(f"  Response: {rsp}")
print(f"  Command: {cmd}")

# Move robot with joint motion to pose
MovJ("pose={200,200,200,0,0,0}")

# Home robot
robot.Home()

robot.Disconnect()
```

## Included Classes

Addidtional classes for robot accessories have been added

### Flexible Gripper

Basic controls for a flexible gripper

```python
from DobotTCP import Dobot, FlexGripper

robot = Dobot()
gripper = FlexGripper(robot)
gripper.Open()
gripper.Close()
```

### Servo Gripper

Basic controls for a servo gripper (IO mode)

```python
from DobotTCP import Dobot, ServoGripper

robot = Dobot()
servo_gripper = ServoGripper(robot)
servo_gripper.SetState(1)  # Open
servo_gripper.SetState(2)  # Close
```

### Feedback

This class was implemented to receive feedback from the robot via TCP.

```python
from DobotTCP import Dobot, Feedback

robot = Dobot()
feedback = Feedback(robot)
feedback.Connect()
feedback.Get()
print(feedback.data.get("RobotType"))
```

## Notes

- This class was written with the intention to stay as close to the syntax formatting of the original [Dobot TCP protocol](https://download.dobot.cc/2025/01/Dobot%20TCP_IP%20Remote%20Control%20Interface%20Guide%20V4.6.0_20250115_en.pdf). Therefore, not all python style guides are followed. For example function names start with a capital letter.

- Since method overloading is not trivial in python, some functions had to be changed in order to make them work in python. This is especially the case for the tray functions.

## Version Changelog

- v1.0.0 (17.01.2025): Initial release based on TCP protocol v4.5.0
- v1.1.0 (20.01.2025):
  - Update library based on new TCP protocol v4.6.0. **Some new commands may require the robot controller version to be updated to V4.6.0.**
  - Add module docstring and parsing functions
- v1.1.1 (27.01.2025): Various bug fixes
- v1.1.2 (31.01.2025): Fixes bugs when parsing robot responses

## Contributing

Feel free to contribute to the project by submitting issues or pull requests.

## License

This project is licensed under the MIT License.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "DobotTCP",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "dobot, robotics, tcp",
    "author": null,
    "author_email": "Michael Hengge <michael.hengge@physik.hu-berlin.de>",
    "download_url": "https://files.pythonhosted.org/packages/c3/77/701fe9f87f48a6786c077be12207fb1b0da3e80c729d7a35baa99596a0d4/dobottcp-1.1.2.tar.gz",
    "platform": null,
    "description": "# DobotTCP Library\n\nDobotTCP is a Python library to control the Dobot  robot range via its TCP interface. The library provides functions for managing motion, I/O, and configuration of the Dobot robot. It was specially developed with the Dobot MagicianE6 in mind.\n\n<p align=\"center\">\n<a href=\"https://hits.seeyoufarm.com\"><img src=\"https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fgithub.com%2FMichaelHengge%2FDobotTCP&count_bg=%2379C83D&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=hits&edge_flat=false\"/></a>\n<img src=\"https://img.shields.io/github/license/MichaelHengge/DobotTCP?style=round-square\">\n<img src=\"https://img.shields.io/github/stars/MichaelHengge/DobotTCP?style=round-square\">\n<img src=\"https://img.shields.io/github/forks/MichaelHengge/DobotTCP?style=round-square\">\n<img src=\"https://img.shields.io/github/issues/MichaelHengge/DobotTCP?style=round-square\">\n<a href=\"https://www.pepy.tech/projects/DobotTCP\" target=\"_blank\"><img src=\"https://static.pepy.tech/badge/DobotTCP\"></a>\n</p>\n\n## Installation\n\nInstall the library via pip:\n\n```bash\npip install DobotTCP\n```\n\nEnsure Python 3.8+ is installed. Install dependencies if not automatically installed:\n\n```bash\npip install multipledispatch\n```\n\nImport the library in your project:\n\n```python\nfrom DobotTCP import Dobot\n```\n\n## Basic Usage\n\n### Example\n\n```python\nfrom DobotTCP import Dobot\n\n# Connect the robot\nrobot = Dobot(ip=\"192.168.5.1\", port=29999)\nrobot.Connect()\n\n# Enable robot and parse response\n(err, rsp, cmd) = robot.EnableRobot()\nprint(f\"  Error code: {err}\")\nprint(f\"  Response: {rsp}\")\nprint(f\"  Command: {cmd}\")\n\n# Move robot with joint motion to pose\nMovJ(\"pose={200,200,200,0,0,0}\")\n\n# Home robot\nrobot.Home()\n\nrobot.Disconnect()\n```\n\n## Included Classes\n\nAddidtional classes for robot accessories have been added\n\n### Flexible Gripper\n\nBasic controls for a flexible gripper\n\n```python\nfrom DobotTCP import Dobot, FlexGripper\n\nrobot = Dobot()\ngripper = FlexGripper(robot)\ngripper.Open()\ngripper.Close()\n```\n\n### Servo Gripper\n\nBasic controls for a servo gripper (IO mode)\n\n```python\nfrom DobotTCP import Dobot, ServoGripper\n\nrobot = Dobot()\nservo_gripper = ServoGripper(robot)\nservo_gripper.SetState(1)  # Open\nservo_gripper.SetState(2)  # Close\n```\n\n### Feedback\n\nThis class was implemented to receive feedback from the robot via TCP.\n\n```python\nfrom DobotTCP import Dobot, Feedback\n\nrobot = Dobot()\nfeedback = Feedback(robot)\nfeedback.Connect()\nfeedback.Get()\nprint(feedback.data.get(\"RobotType\"))\n```\n\n## Notes\n\n- This class was written with the intention to stay as close to the syntax formatting of the original [Dobot TCP protocol](https://download.dobot.cc/2025/01/Dobot%20TCP_IP%20Remote%20Control%20Interface%20Guide%20V4.6.0_20250115_en.pdf). Therefore, not all python style guides are followed. For example function names start with a capital letter.\n\n- Since method overloading is not trivial in python, some functions had to be changed in order to make them work in python. This is especially the case for the tray functions.\n\n## Version Changelog\n\n- v1.0.0 (17.01.2025): Initial release based on TCP protocol v4.5.0\n- v1.1.0 (20.01.2025):\n  - Update library based on new TCP protocol v4.6.0. **Some new commands may require the robot controller version to be updated to V4.6.0.**\n  - Add module docstring and parsing functions\n- v1.1.1 (27.01.2025): Various bug fixes\n- v1.1.2 (31.01.2025): Fixes bugs when parsing robot responses\n\n## Contributing\n\nFeel free to contribute to the project by submitting issues or pull requests.\n\n## License\n\nThis project is licensed under the MIT License.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A library to control Dobot robots via TCP",
    "version": "1.1.2",
    "project_urls": {
        "Homepage": "https://github.com/MichaelHengge/DobotTCP",
        "Issues": "https://github.com/MichaelHengge/DobotTCP/issues"
    },
    "split_keywords": [
        "dobot",
        " robotics",
        " tcp"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f3b9736275a92db3be742ad20cf0ac7b32968ce9e96e8100881ed340f9168218",
                "md5": "7b2654fda86414c8806ad2c8716fbff6",
                "sha256": "f56e781ed3e943914254c23d75db1453fb8f80f4d3542085981ae2c0eaa53a82"
            },
            "downloads": -1,
            "filename": "dobottcp-1.1.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7b2654fda86414c8806ad2c8716fbff6",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 23574,
            "upload_time": "2025-01-31T16:06:27",
            "upload_time_iso_8601": "2025-01-31T16:06:27.479762Z",
            "url": "https://files.pythonhosted.org/packages/f3/b9/736275a92db3be742ad20cf0ac7b32968ce9e96e8100881ed340f9168218/dobottcp-1.1.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c377701fe9f87f48a6786c077be12207fb1b0da3e80c729d7a35baa99596a0d4",
                "md5": "013f8ec592b13e7f0ffd1933a7f3d123",
                "sha256": "a8e1912a120ea1c54adf3b452100e49e7cb832ec166931ad0f3bede2bad9b8e5"
            },
            "downloads": -1,
            "filename": "dobottcp-1.1.2.tar.gz",
            "has_sig": false,
            "md5_digest": "013f8ec592b13e7f0ffd1933a7f3d123",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 22926,
            "upload_time": "2025-01-31T16:06:29",
            "upload_time_iso_8601": "2025-01-31T16:06:29.225943Z",
            "url": "https://files.pythonhosted.org/packages/c3/77/701fe9f87f48a6786c077be12207fb1b0da3e80c729d7a35baa99596a0d4/dobottcp-1.1.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-01-31 16:06:29",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "MichaelHengge",
    "github_project": "DobotTCP",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "dobottcp"
}
        
Elapsed time: 9.18463s