API de Python per a l'IoT-Vertebrae

De binefa.com
Salta a la navegació Salta a la cerca

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

i2c_iotv.py: funciona amb qualsevol versió de cap. Es comunica mitjançant 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 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 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.

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