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
in-progress decompilation of Gauntlet Legends decompression code on the N64

Gauntlet-Legends A in-progress decompilation of Gauntlet-Legends (N64) decompression code. This project currently supports the US release. Building (L

6 Jul 23, 2022
Facebook Clooning Tool BD...

Facebook Clooning Tool BD...

Ariyan Ahmed Mamun 2 Feb 16, 2022
Change Discord HypeSquad in few seconds!

a simple python script that change your hypesquad to what house you choose

Ho3ein 5 Nov 16, 2022
Automate coin farming for dankmemer. Unlimited accounts at once. Uses a proxy

dankmemer-farm Simple script to farm Dankmemer coins with multiple accounts at once. Requires: Proxies, Discord Tokens Disclaimer I don't take respons

Scobra 12 Dec 20, 2022
Semplice pagina di informazione per sapere se e quando è uscito Joypad, il podcast a tema videoludico di Matteo Bordone (Corri!), Francesco Fossetti (Salta!) e Alessandro Zampini (Spara! per finta).

È uscito Joypad? Semplice pagina di informazione per sapere se e quando è uscito Joypad, il podcast a tema videoludico di Matteo Bordone (Corri!), Fra

Paolo Donadeo 32 Jan 02, 2023
❄️ Don't waste your money paying for new tokens, once you have used your tokens, clean them up and resell them!

TokenCleaner Don't waste your money paying for new tokens, once you have used your tokens, clean them up and resell them! If you have a very large qua

0xVichy 59 Nov 14, 2022
a small cli to generate AWS Well Architected Reports on the road

well-architected-review This repo intends to publish some scripts related to Well Architected Reviews. war.py extracts in txt & xlsx files all the WAR

4 Mar 18, 2022
⚡ A really fast and powerful Discord Token Checker

discord-token-checker ⚡ A really fast and powerful Discord Token Checker How To Use? Do pip install -r requirements.txt in your command prompt Make to

vida 25 Feb 26, 2022
Apps related to Odoo it's calendar features

calendar Apps related to Odoo it's calendar/appointments features: online_appointment_locations: allow setting an online URL per employee online_appoi

Yenthe Van Ginneken 3 Oct 27, 2022
A Python wrapper for the tesseract-ocr API

tesserocr A simple, Pillow-friendly, wrapper around the tesseract-ocr API for Optical Character Recognition (OCR). tesserocr integrates directly with

Fayez 1.7k Jan 03, 2023
A Python library to access Instagram's private API.

Instagram Private API A Python wrapper for the Instagram private API with no 3rd party dependencies. Supports both the app and web APIs. Overview I wr

2.6k Jan 05, 2023
A Discord.py bot which can adjust a voice channel's bitrate depending on the number of users connected.

discord_bitrate_bot A Discord.py bot which can adjust a voice channel's bitrate depending on the number of users connected. Programmed to be run on a

1 Feb 10, 2022
This bot can mention members upto 10,000 in groups and can mention members upto 200 in channels !

Mention All Bot This bot can mention members upto 10,000 in groups and can mention members upto 200 in channels ! 🏷 Infomation Language: Python. Tele

Anjana Madu 52 Dec 29, 2022
Neko is An Anime themed advance Telegram group management bot.

NekoRobot A modular telegram Python bot running on python3 with an sqlalchemy, mongodb database. ╒═══「 Status 」 Maintained Support Group Included Free

Lovely Prince 11 Oct 11, 2022
Using GNU Radio and HackRF One to Receive, Analyze and Send ASK/OOK signals

play_with_ask NIS-8016 Lab A code: Recv.grc/py: Receive signals and match with ASK button using HackRF and GNU radio. I use AM demod block(can also in

Chen Anxue 1 Jul 04, 2022
Check and write all account info + Check nitro on account

Discord-Token-Checker Check and write all account info + Check nitro on account Also check https://github.com/GuFFy12/Discord-Token-Parser (Parse disc

36 Jan 01, 2023
Set up recurring buys in Gemini

Overview Set up recurring buys in Gemini. Given some keys (Create API Keys), allows you to configure a recurring buy using the reduced API maker and t

Ahmad Abuomar 3 Jan 06, 2022
An Telegram Bot By @ZauteKm To Stream Videos In Telegram Voice Chat Of Both Groups & Channels. Supports Live Streams, YouTube Videos & Telegram Media !!

Telegram Video Stream Bot (Py-TgCalls) An Telegram Bot By @ZauteKm To Stream Videos In Telegram Voice Chat Of Both Groups & Channels. Supports Live St

Zaute Km 14 Oct 21, 2022
An API wrapper around Discord API written in Python

Diskord This library is a maintained fork of now archived library, discord.py. A modern and easy to use API wrapper around Discord API written in Pyth

Diskord 36 Aug 22, 2022
An analysis of the efficiency of the COVID-19 vaccine

VaccineEfficiency 💉 An analysis of the efficiency of the COVID-19 vaccine 3 Methods 1️⃣ Compare country's vaccination data to number of day- to-day c

Stephanie Younes 1 Dec 10, 2021