Dobotlink communication module
Project description
This version is relevant for Dobotlink 5.0.0
DobotRPC is a dobotlink communication module based on websocket and JSON-RPC . It provides python ports to communicate with dobotlink and allows developers to communicate with the GUI. Here is a more detailed list of the package contents:
- The file contains both RPCClient and RPCServer files that users can call upon their own needs
- DobotlinkAdapter: The adapter module is used to adapt to the new set of interfaces
Utils
- Loggers: Loggers information
Examples
- Users can communicate synchronously or asynchronously.The asynchronous mode is as follows:
::
# Async demo
from DobotRPC import DobotlinkAdapter, RPCClient, loggers
# The asyncio module provides infrastructure for writing single-threaded concurrent code using coroutines, multiplexing I/O access over sockets and other resources, running network clients and servers, and other related primitives.
import asyncio
# Coroutines function
async def main(dobotlink_async):
# Display information with Dobotlink
await dobotlink_async.api.ShowMessage(title="Async Demo Message",
message="Async Demo is running.")
# Search for available ports
res = await dobotlink_async.Magician.SearchDobot()
# Get ports
if len(res) < 1:
return
port_name = res[0]["portName"]
# Connect
await dobotlink_async.Magician.ConnectDobot(portName=port_name)
# PTP
await dobotlink_async.Magician.SetPTPCmd(portName=port_name,
ptpMode=0,
x=230,
y=50,
z=0,
r=20)
# Disconnect
await dobotlink_async.Magician.DisconnectDobot(portName=port_name,
queueStop=True,
queueClear=True)
if __name__ == "__main__":
loggers.set_level(loggers.DEBUG)
# Get the Eventloop reference
loop = asyncio.get_event_loop()
# Initializes, connects to dobotlink, and is executed before the Loop runs
dobotlink_async = DobotlinkAdapter(RPCClient(loop=loop), is_sync=False)
# Perform coroutines
loop.run_until_complete(main(dobotlink_async))
- The synchronization mode is as follows:
::
# Sync Demo
from DobotRPC import RPCClient, DobotlinkAdapter, loggers
def main(dobotlink_sync):
# Display information with Dobotlink
dobotlink_sync.api.ShowMessage(title="Sync Demo Message",
message="Sync Demo is running.")
# Search for available ports
res = dobotlink_sync.Magician.SearchDobot()
# Get ports
if len(res) < 1:
return
port_name = res[0]["portName"]
# Connect
dobotlink_sync.Magician.ConnectDobot(portName=port_name)
# PTP
dobotlink_sync.Magician.SetPTPCmd(portName=port_name,
ptpMode=0,
x=230,
y=50,
z=0,
r=20)
# Disconnect
dobotlink_sync.Magician.DisconnectDobot(portName=port_name)
if __name__ == "__main__":
loggers.set_level(loggers.DEBUG)
# Initialize, connect to dobotlink
dobotlink_sync = DobotlinkAdapter(RPCClient(), is_sync=True)
main(dobotlink_sync)
Installtion
To install DobotRPC, type:
::
pip install DobotRPC
DobotRPC is a free software distributed under the Apache license
Usage
- Users can use the API: loggers, RPCClient, DobotlinkAdapter, NetworkError, client, aip
- Install Dobotlink
- Right-click the Dobotlink icon and click
help, pop up aDobotlink help documentation. - You can guide by
examples, reference theDobotlink help documentation. - Then go ahead and develop your first python script.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
DobotRPC-4.6.0.tar.gz
(10.1 kB
view details)
File details
Details for the file DobotRPC-4.6.0.tar.gz.
File metadata
- Download URL: DobotRPC-4.6.0.tar.gz
- Upload date:
- Size: 10.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/40.2.0 requests-toolbelt/0.9.1 tqdm/4.26.0 CPython/3.7.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
706ccd361c6ac9d0f572df8ea18316ac76a6885e664f26a9cfd50bb9c369db2d
|
|
| MD5 |
e80322fc882f98bbd31e603e7c3e46c0
|
|
| BLAKE2b-256 |
fd866de587a45b3977d18e0809328898b010d34b2e304f740d07d5f5a0d1f1f2
|