Python client library for communicating with DickerBot robots.
Project description
DickerBotClient
DickerBotClient is a Python client library designed for seamless communication with DickerBot robots. It provides a simple interface to interact with DickerBot robots, enabling control over sensors and motors via WebSocket communication.
Features
- WebSocket Communication: Connects to a WebSocket server to send and receive sensor and control data.
- Sensor Data: Retrieves and processes sensor information such as accelerometer, gyroscope, and distance sensors.
- Image Data: Receives image data from the robot and converts it into a usable format.
- Control Data: Sends motor control data (speed and direction) to the robot.
Installation
You can install the latest release of DickerBotClient from PyPI using pip:
pip install dickerbotclient
Usage in Python
Importing the library in your python script
import dickerbotclient as dbc
Creating an instance of the class
bot = dbc.DickerBotClient()
Connecting to the host socket
Note: Get ip_address and port from the Host UI
bot.connect(ip_address, port)
Polling sensor data
sensor_data = bot.get_sensor_data()
Format: [acceleration_x, acceleration_y, acceleration_z, angular_velocity_x, angular_velocity_y, angular_velocity_z, temperature, distance_left, distance_front, distance_right, distance_back]
Value 999 anywhere indicates error
Polling image data
image = bot.get_image_data()
Format: 96x96 grayscale
Sending control data
bot.set_control_data(left_wheel_speed, left_wheel_direction, right_wheel_speed, right_wheel_direction)
| Parameter | Description |
|---|---|
| speed | 0-255; 999 = error |
| direction | 0 = neutral; 1 = forward; 2 = backward; 999 = error |
Disconnecting from host socket
bot.disconnect()
Example Teleop
# TODO: Create a program to do basic keyboard teleop using w,a,s,d while showing realtime video stream and IMU/proximity data.
DickerBot Project
You can find information about the DickerBot on the GitHub page.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dickerbotclient-1.0.4.tar.gz.
File metadata
- Download URL: dickerbotclient-1.0.4.tar.gz
- Upload date:
- Size: 4.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5325e06b20e6244e1ecfbcbe44f8db4be5e6f074154544cdbeca0b8703296679
|
|
| MD5 |
ba476686fce3d3be43b0258f56ea008e
|
|
| BLAKE2b-256 |
4fb514fbd359ec92ab83b107b24908ee9ba22eb36c2cf582ed6857db1e7103af
|
File details
Details for the file dickerbotclient-1.0.4-py3-none-any.whl.
File metadata
- Download URL: dickerbotclient-1.0.4-py3-none-any.whl
- Upload date:
- Size: 4.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e4f1a1141011f73e472cf63b46405d5870409dd1b77f014fab101b1e73c9e7a2
|
|
| MD5 |
3d98aca9d8d9e6b02d10e7e358118fab
|
|
| BLAKE2b-256 |
94953fc146f6f2cb6cf38abfbc1ae4dafc3b5e03d94d2c2f219bb15c6643db1f
|