Diferència entre revisions de la pàgina «API de Python per a l'IoT-Vertebrae»

De binefa.com
Salta a la navegació Salta a la cerca
m
m
Línia 1: Línia 1:
 
Hi ha dues biblioteques per a interactuar en Python des de la Raspberry Pi amb l'IoT-Vertebrae: '''i2c_iotv.py''' (abans ''iotv.py'') i '''can_iotv.py'''.
 
Hi ha dues biblioteques per a interactuar en Python des de la Raspberry Pi amb l'IoT-Vertebrae: '''i2c_iotv.py''' (abans ''iotv.py'') i '''can_iotv.py'''.
 +
 +
'''can_iotv.py''': funciona a partir de la versó 2.0 del cap. Es comunica mitjançant el bus CAN, això permet controlar vèrtebres connectades remotament a una cua.
  
 
'''i2c_iotv.py''': funciona amb qualsevol versió de cap. Es comunica mitjançant el bus I2C.
 
'''i2c_iotv.py''': funciona amb qualsevol versió de cap. Es comunica mitjançant el bus I2C.
 
'''can_iotv.py''': funciona a partir de la versó 2.0 del cap. Es comunica mitjançant el bus CAN, això permet controlar vèrtebres connectades remotament a una cua.
 
 
= Ús de les biblioteques des del terminal =
 
= Ús de les biblioteques des del terminal =
 
== Ús de ''can_iotv.py'' des del terminal ==
 
== Ús de ''can_iotv.py'' des del terminal ==

Revisió del 13:00, 20 ago 2024

Hi ha dues biblioteques per a interactuar en Python des de la Raspberry Pi amb l'IoT-Vertebrae: i2c_iotv.py (abans iotv.py) i can_iotv.py.

can_iotv.py: funciona a partir de la versó 2.0 del cap. Es comunica mitjançant el bus CAN, això permet controlar vèrtebres connectades remotament a una cua.

i2c_iotv.py: funciona amb qualsevol versió de cap. Es comunica mitjançant el bus I2C.

Ús de les biblioteques des del terminal

Ús de can_iotv.py des del terminal

Fent servir el bus CAN cal obrir-ho al principi i podem tancar-ho al final. L'obertura i tancament del bus CAN es fa mitjançant ordres de terminal (molt més lentes d'executar que les instruccions Python). En canvi, l'obertura i tancament del bus I2C es fa mitjançant instruccions de Python.

pi@raspberrypi:~ $ python
Python 3.11.2 (main, Mar 13 2023, 12:18:29) [GCC 12.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import can_iotv as iotv
>>> iotv.canOn()
>>> iotv.dversion("0000")
'1.2'
>>> iotv.aversion("0000")
'1.3'
>>> iotv.canOff()
>>> 
pi@raspberrypi:~ $

Ús de i2c_iotv.py des del terminal

No cal obrir el bus I2C al principi i tancar-ho al final perquè cada funció l'obre i el tanca.

pi@raspberrypi:~ $ python
Python 3.11.2 (main, Mar 13 2023, 12:18:29) [GCC 12.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import i2c_iotv as iotv
>>> iotv.dversion("0000")
Digital rib version: 1.2
'0000000100000010'
>>> iotv.aversion("0000")
Analog rib version: 1.3
'0000000100000011'
>>> 
pi@raspberrypi:~ $

dversion(addr)

L'argument addr és l'adreça de la vèrtebra digital expressada com un text de quatre zeros i uns. Aquí hi ha un enllaç a l'explicació de les adreces de la vèrtebra digital.

Retorna la versió de microprogramari (firmware) de la vèrtebra amb l'adreça passada com a argument.

  • can_iotv:
>>> iotv.dversion("0000")
'1.2'
  • i2c_iotv:
>>> iotv.dversion("0000")
Digital rib version: 1.2
'0000000100000010'

aversion(addr)

L'argument addr és l'adreça de la vèrtebra analògica expressada com un text de quatre zeros i uns. Aquí hi ha un enllaç a l'explicació de les adreces de la vèrtebra analògica.

Retorna la versió de microprogramari (firmware) de la vèrtebra amb l'adreça passada com a argument.

  • can_iotv:
>>> iotv.aversion("0000")
'1.3'
  • i2c_iotv:
>>> iotv.aversion("0000")
Analog rib version: 1.3
'0000000100000011'