A small example package for agxrobots
Project description
This is Python API for Agilex Robotics
This is a python API for serial communication with Agilex Robotics
Installation
Notes:
Make sure that python version >=3.4. if you have python3 and python2 ,please use python3
Communication protocol
Robot | Protocol V2 | CAN | Support Status |
---|---|---|---|
Scout 2.0 | Y | Y | Active |
Scout Mini | Y | Y | Active |
Hunter 1.0 | Y | Y | Active |
Hunter 2.0 | Y | Y | Active |
Bunker | Y | Y | Active |
Tracer | Y | Y | Active |
Ranger Mini | Y | Y | Active |
pip
pip3 install pyagxrobots
Notes:
Make sure that pip3 version >= 9.0.0.
pip3 -V #cheak the pip3 version
python3 -m pip install --upgrade pip #updata pip3
import to your project
#!/usr/bin/env python3
# coding=utf-8
import pyagxrobots
robots=pyagxrobots.pysdkugv.robotstype() # robotstype depend on your robot
function list:
EnableCAN()
SetMotionCommand()
SetLightCommand()
GetRobotStae:
MotionCommandMessage:
GetLinearVelocity()
GetAngularVelocity()
GetLateralVelocity()
GetSteeringAngle()
LightCommandMessage:
GetLightCmdCtrl()
GetFrontMode()
GetFrontCustom()
GetRearMode()
GetRearCustom()
SystemStateMessage:
GetVehicleState()
GetControlMode()
GetBatteryVoltage()
GetErrorCode()
RcStateMessage:
OdometryMessage:
GetLeftWheel()
GetRightWheel()
ActuatorStateMessageV1:
current()
rpm()
driver_temp()
motor_temp()
ActuatorStateMessageV2:
rpm()
current()
pulse_count()
driver_voltage()
driver_temp()
motor_temp()
driver_state()
EnableCAN
- Prototype:
EnableCAN()
- Description: Enable command and control mode.
SetMotionCommand
- Prototype:
SetMotionCommand()
- Description:Send Version Request to robots.
- Parameters
linear_vel
:(float)angular_vel
:(float)lateral_velocity
:(float)steering_angle
:(float)
GetLinearVelocity
- Prototype:
GetLinearVelocity()
- Description:Get the linear velocity from robot
- Return:linear velocity
GetAngularVelocity
- Prototype:
GetAngularVelocity()
- Description:Get the angular velocity from robot.
- Return:angular velocity
GetSteeringAngle
- Prototype:
GetSteeringAngle()
- Description:Get the steering angle from robot .
- Return:steering angle
GetLateralVelocity
- Prototype:
GetLateralVelocity()
- Description:Get the lateral velocity from robot .
- Return:lateral velocity
GetControlMode
- Prototype:
GetControlMode()
- Description:Get the control mode from robot .
- Return:control mode
GetLeftWheelOdeom
- Prototype:
GetLeftWheelOdeo()
- Description:get robots LeftWheelOdom .
- Return:LeftWheelOdom
GetRightWheelOdom
- Prototype:
GetRightWheelOdom()
- Description:get robots RightWheelOdom .
- Return:RightWheelOdeom
GetBatteryVoltage
- Prototype:
GetBatteryVoltage()
- Description:Get the battery voltage from robot
- Return:battery voltage
GetErrorCode
- Prototype:
GetErrorCode()
- Description:Get the error code from robot
- Return:error code
Example
Note:
For safety, please ensure that the robot's wheels are off the ground
1.ScoutMini
#!/usr/bin/env python3
# coding=UTF-8
import pyagxrobots
import time
scoutmini=pyagxrobots.pysdkugv.ScoutMiniBase()
scoutmini.EnableCAN()
num=5
while num>0:
scoutmini.SetMotionCommand(linear_vel=0.1)
print(scoutmini.GetLinearVelocity())
time.sleep(0.3)
num-=1
2.get message
#!/usr/bin/env python3
# coding=UTF-8
import pyagxrobots
import time
bunker=pyagxrobots.pysdkugv.BunkerBase()
bunker.EnableCAN()
num=5
while num>0:
bunker.SetMotionCommand(linear_vel=0.1)
print(bunker.GetLinearVelocity())
time.sleep(0.3)
num-=1
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
pyagxrobots-0.8.2.tar.gz
(12.5 kB
view hashes)
Built Distribution
Close
Hashes for pyagxrobots-0.8.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 55c2645b4929de79b374810b9e278e55efe0f933683000c3ee6b3eb71877ab47 |
|
MD5 | 3d801a4c798a98ce4031ca45e3c918d1 |
|
BLAKE2b-256 | c602b77b46e3633017abc35efb3b01c0169aebcbca24a0869da6c0e064b7b422 |