Python package for agilex robotics mobile base platform

Overview

This is Python API for Agilex Robotics Mobile base

This is a python API for Can communication with Agilex Robotics Mobile base and controlling it.

Support product list

Installation

Notes:
Make sure that python version >=3.6. if you have python3 and python2 ,please use python3

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

Setup CAN-To-USB adapter

  1. Enable gs_usb kernel module

    $ sudo modprobe gs_usb
  2. Bringup can device

    $ sudo ip link set can0 up type can bitrate 500000
  3. If no error occured during the previous steps, you should be able to see the can device now by using command

    $ ifconfig -a
  4. Install and use can-utils to test the hardware

    $ sudo apt install can-utils
  5. Testing command

    # receiving data from can0
    $ candump can0
    # send data to can0
    $ cansend can0 001#1122334455667788

You can run 1-5 for the first-time setup and run 2 to bring up the device each time you unplug and re-plug the adapter.

import to your project

#!/usr/bin/env python3
# coding=utf-8
from pyagxrobots import agxrobots
robots=agxrobots.UGV(bustype='socketcan', channel='can0', bitrate=500000) 

function list:

EnableCANCtrl()
SendVersionRequest()
SendErrorClearByte()
EnableLightCtrl()
DisableLightCtrl()
LightFrontMode()
SendLinerVelocity()
SendAngularVelocity()

GetLightMode()        
GetSysVersion()
GetLeftWheelOdem()
GetRightWheelOdem()
GetLinerVelocity()
GetAngularVelocity()
GetErrorCode()

EnableCANCtrl

  • Prototype: EnableCANCtrl()
  • Description:Enable Controller Area Network control.

SendVersionRequest

  • Prototype: SendVersionRequest()
  • Description:Send Version Request to robots.

SendErrorClearByte

  • Prototype: SendErrorClearByte(id)
  • Description:Send Error Clear Byte to robots.
  • Parameters
    • id:(int) 0-4 0:all 14 :clear motro 14

EnableLightCtrl

  • Prototype: EnableLightCtrl()
  • Description:Enable Light control to robots.

DisableLightCtrl

  • Prototype: DisableLightCtrl()
  • Description:Enable Light control to robots.

LightFrontMode

  • Prototype: LightFrontMode(mode,bright)
  • Description:Send Error Clear Byte to robots.
  • Parameters
    • mode:(int)0~3 0:often shut 1:normally open 2:breathing lamp 3:custom
    • bright:(int) 0~100 Note: mode must be 3

SendLinerVelocity

  • Prototype: SendLinerVelocity(liner_velocity)
  • Description:Send liner_velocity to robots.
  • Parameters
    • liner_velocity:(float)-3.0~3.0 m/s

SendAngularVelocity

  • Prototype: SendAngularVelocity(angular_velocity)
  • Description:Send angular_velocity to robots.
  • Parameters
    • angular_velocity:(float)-2.523~2.523 rad/s

GetLightMode

  • Prototype: GetLightMode()
  • Description:get robots light mode .
  • Return:light mode

GetSysVersion

  • Prototype: GetSysVersion()
  • Description:get robots system version .
  • Return:ControlHardwareVersion,ActuarorHardwareVersion,ControlSoftwareVersion,GetActuarorSoftwareVersion

GetLeftWheelOdem

  • Prototype: GetLeftWheelOdem()
  • Description:get robots LeftWheelOdem .
  • Return:LeftWheelOdem

GetRightWheelOdem

  • Prototype: GetRightWheelOdem()
  • Description:get robots RightWheelOdem .
  • Return:RightWheelOdem

GetLinerVelocity

  • Prototype: GetLinerVelocity()
  • Description:get robots liner_velocity .
  • Return:liner_velocity

GetAngularVelocity

  • Prototype: GetAngularVelocity()
  • Description:get robots angular_velocity .
  • Return:angular_velocity

GetErrorCode

  • Prototype: GetErrorCode()
  • Description:get robots error_code .
  • Return:error_code

Example

Note:

For safety, please ensure that the robot's wheels are off the ground

1.Open Front Light

#!/usr/bin/env python3
# coding=utf-8
from pyagxrobots import agxrobots
robots=agxrobots.UGV(bustype='socketcan', channel='can0', bitrate=500000) 
robots.EnableCANCtrl()
robots.EnableLightCtrl()
robots.LightFrontMode(1)

2.Move Robot

#!/usr/bin/env python3
# coding=utf-8
from pyagxrobots import agxrobots
robots=agxrobots.UGV(bustype='socketcan', channel='can0', bitrate=500000) 
robots.EnableCANCtrl()
robots.SendLinerVelocity(0.2)

3.get CAN message

#!/usr/bin/env python3
# coding=utf-8
from pyagxrobots import agxrobots
robots=agxrobots.UGV(bustype='socketcan', channel='can0', bitrate=500000) 
robots.EnableCANCtrl()
robots.GetAngularVelocity()
robots.GetLinerVelocity()
Owner
Agilex Robotics (Dongguan) CO,.ltd
Spore REST API asyncio client

Spore REST API asyncio client

LEv145 16 Aug 02, 2022
This an API wrapper library for the OpenSea API written in Python 3.

OpenSea NFT API Python 3 wrapper This an API wrapper library for the OpenSea API written in Python 3. The library provides a simplified interface to f

Attila Tóth 159 Dec 26, 2022
Projeto do segundo módulo da Resilia

@ Projeto Resilia : Módulo 2 Vamos jogar Forca ! O jogo da forca é um jogo em que o jogador tem que acertar qual é a palavra proposta, tendo como dica

Mateus Sartorio 2 Feb 24, 2022
Telegram bot for stream music or video on telegram

KYURA MUSIC Telegram bot for stream music or video on telegram, powered by PyTgCalls and Pyrogram Help Need Help me to translate this repo, click the

0 Dec 08, 2022
Asynchronous multi-platform robot framework written in Python

NoneBot ✨ 跨平台 Python 异步机器人框架 ✨ 文档 · 安装 · 开始使用 · 文档打不开? 简介 NoneBot2 是一个现代、跨平台、可扩展的 Python 聊天机器人框架,它基于 Python 的类型注解和异步特性,能够为你的需求实现提供便捷灵活的支持。

NoneBot 3.1k Jan 04, 2023
Yes, it's true :yellow_heart: This repository has 326 stars.

Yes, it's true! Inspired by a similar repository from @RealPeha, but implemented using a webhook on AWS Lambda and API Gateway, so it's serverless! If

510 Dec 28, 2022
Available slots checker for Spanish Passport

Bot that checks for available slots to make an appointment to issue the Spanish passport at the Uruguayan consulate page

1 Nov 30, 2021
Muzan-Discord-Nuker - A simple discord server nuker in python

Muzan-Discord-Nuker This is Just a simple discord server nuker in python. ✨ Feat

Afnan 3 May 14, 2022
Defi PancakeSwap bot is programmed in Python to buy and sell tokens in seconds once the target is hit.

Defi PancakeSwap BOT A BOT that will make easy your life in Trading. Watch tutorial on Youtube Table of Contents About The Project Built With Getting

Zain Ullah 208 Jan 05, 2023
Bot Telegram per creare e gestire un Babbo Natale Segreto con amici ecc

Babbo Natale Segreto: Telegram Bot Bot Telegram per creare e gestire un Babbo Natale Segreto con amici ecc. Che cos'è? Il Babbo Natale Segreto è un gi

Francesco Ciociola 2 Jul 18, 2022
Automation for grabbing keys from a Linux host. Useful during red team exercises to quickly help assess what access to a Linux host can lead to.

keygrabber Automation for grabbing keys from a Linux host. This can be helpful during red team exercises when you gain access to a Linux host and want

Cedric Owens 14 Sep 27, 2022
Discord music bot using discord.py, slash commands, and yt-dlp.

bop Discord music bot using discord.py, slash commands, and yt-dlp. Features Play music from YouTube videos and playlists Queue system with shuffle Sk

Hizkia Felix 3 Aug 11, 2022
Roaster - this gui app + program bundle roasts.

Roaster - this gui app + program bundle roasts.

Harsh ADV) 1 Jan 04, 2022
Python client for Messari's API

Messari API Messari provides a free API for crypto prices, market data metrics, on-chain metrics, and qualitative information (asset profiles). This d

Messari 85 Dec 22, 2022
PokemonGo-Bot - The Pokemon Go Bot, baking with community.

PokemonGo-Bot PokemonGo-Bot is a project created by the PokemonGoF team. Since no public API available for now, a patch to use HASH-Server was applied

3.8k Jan 08, 2023
WhatsApp API Python ChatBot

WhatsApp Api Python - Esta documentação tem como objetivo exemplificar o uso do Moorse Whatsapp API na linguagem Python.

Douglas Alves 2 Jan 06, 2022
Discord-Wrapper - Discord Websocket Wrapper in python

This does not currently work and is in development Discord Websocket Wrapper in

3 Oct 25, 2022
Template to create a telegram bot in python

Template for Telegram Bot Template to create a telegram bot in python. How to Run First add src to PYTHONPATH: export PYTHONPATH=${PWD} Then run: pyt

Ali Hejazizo 12 Dec 24, 2022
Google Sheets Python API v4

pygsheets - Google Spreadsheets Python API v4 A simple, intuitive library for google sheets which gets your work done. Features: Open, create, delete

Nithin Murali 1.4k Jan 08, 2023
Python: Asynchronous client for the Open-Meteo API.

Python: Asynchronous client for the Open-Meteo API. Asynchronous client for the Open-Meteo API. About Open-Meteo offers free weather forecast APIs for

Franck Nijhof 11 Dec 21, 2022