I/OS

Ce fichier présente les différentes I/Os - Fonctions de contrôle, I/Os - Enumerations, I/Os - Topics Niryo & I/Os - Objets disponible avec l’API du bras

I/Os - Fonctions de contrôle

check_ned2_version(func)[source]

Décorateur qui vérifie la version du robot

check_ned_one_version(func)[source]

Décorateur qui vérifie la version du robot

Cette section répertorie toutes les fonctions de contrôle du robot existantes, ce qui inclut

  • Obtient les status des I/Os

  • Paramètre le mode des I/Os

  • Paramètre la valeur des I/Os

Toutes les fonctions pour contrôler le robot sont accessible grâce à une instance de la classe NiryoRobot

robot = NiryoRobot(<robot_ip_address>)

robot.io.set_pin_mode(PinID.GPIO_1A, PinMode.INPUT)
robot.io.digital_write(PinID.GPIO_1A, PinState.HIGH)
...

Voir des exemples dans la Section Exemples

Liste des fonctions de sous-sections

class IO(client)[source]

Fonctions des E/S du robot

Exemples:

ros_instance = NiryoRos("10.10.10.10") # Hotspot
io_interface = IO(ros_instance)
Paramètres

client (NiryoRos) – Client Niryo ROS

Fonctions des Etats

property IO.digital_io_states

Retourne la valeur des E/S digitales.

Renvoie

Etat, Nom, Broche, Mode de la broche

Type renvoyé

DigitalPinObject

property IO.get_digital_io_states

Retourne le client de l’état de l’io qui peut être utilisé de manière synchrone ou asynchrone pour obtenir les états des ios. Le client de l’état de l’io retourne une liste de DigitalPinObject

Exemples:

# Get last value
io.get_digital_io_states()
io.get_digital_io_states.value

# Subscribe a callback
def io_callback(io_state):
    print io_state

io.get_digital_io_states.subscribe(io_callback)
io.get_digital_io_states.unsubscribe()
Renvoie

Instance du topic de l’état de l’io

Type renvoyé

NiryoTopic

IO.get_digital_io_state(pin_id)[source]

Retourne la valeur d’un io numérique

Renvoie

Objet E/S digitale

Type renvoyé

DigitalPinObject

Fonctions de Lecture & Ecriture

IO.set_pin_mode(**kwargs)[source]
IO.digital_write(pin_id, digital_state)[source]

Règle l’état de pin_id à digital_state

Exemples:

io.digital_write(PinID.GPIO_1A, PinState.HIGH)
io.digital_write('1A', PinState.LOW)
Paramètres
  • pin_id (PinID or String) –

  • digital_state (PinState or bool) –

Type renvoyé

None

IO.digital_read(pin_id)[source]

Retourne la valeur d’une E/S digitale

Exemples:

io.set_pin_mode(PinID.GPIO_1A, PinMode.OUTPUT)
io.digital_read(PinID.GPIO_1A)
Paramètres

pin_id (PinID or str) –

Type renvoyé

bool

I/Os - Topics Niryo

L’utilisation de ces fonctions est expliquéd dans la section NiryoTopic. Elles permettent la récupération données en temps réel par des fonctions de retour ou des appels directs.

Topics Niryo des I/Os

Nom

Fonction

Type de retour

/niryo_robot_rpi/digital_io_state

get_digital_io_states

list [ DigitalPinObject ]

I/Os - Enumerations

Liste des enumerations

  • PinMode

  • PinState

  • PinID

class PinMode(value)[source]

Enumeration des modes de la broche

OUTPUT = 0
INPUT = 1
class PinState(value)[source]

Etat de la broche est soit BAS ou HAUT

LOW = False
HIGH = True
class PinID(value)[source]

Enumeration des broches du robot

GPIO_1A = '1A'
GPIO_1B = '1B'
GPIO_1C = '1C'
GPIO_2A = '2A'
GPIO_2B = '2B'
GPIO_2C = '2C'
SW_1 = 'SW1'
SW_2 = 'SW2'
DO1 = 'DO1'
DO2 = 'DO2'
DO3 = 'DO3'
DO4 = 'DO4'
DI1 = 'DI1'
DI2 = 'DI2'
DI3 = 'DI3'
DI4 = 'DI4'
DI5 = 'DI5'
AI1 = 'AI1'
AI2 = 'AI2'
AO1 = 'AO1'
AO2 = 'AO2'

I/Os - Objets

class DigitalPinObject(name, mode, value)[source]

Objet utilisé pour sauvegarder des informations sur les broches numériques

class AnalogPinObject(name, mode, value)[source]

Objet utilisé pour sauvegarder des informations sur les broches numériques