Diferència entre revisions de la pàgina «Placa IoT-02»

De things.cat
Salta a: navegació, cerca
m (Dependències de biblioteques)
m (Execució des de Linux)
Línia 49: Línia 49:
 
  ./mb_IoT_00.py '''/dev/ttyUSB1 4800'''
 
  ./mb_IoT_00.py '''/dev/ttyUSB1 4800'''
  
'''/dev/ttyUSB1''' és el port sèrie a on es connecta el [https://www.aliexpress.com/item/1883714934.html?spm=a2g0o.productlist.0.0.3f112d6btvRSkf&algo_pvid=4ffaca69-f154-47b9-9352-0bb7c7106350&algo_expid=4ffaca69-f154-47b9-9352-0bb7c7106350-6&btsid=0ab6d69f15885031557261231e4c01&ws_ab_test=searchweb0_0,searchweb201602_,searchweb201603_ convertidor USB / RS485]. Quan es programa la placa fem servir habitualment '''/dev/ttyUSB0'''.
+
'''/dev/ttyUSB1''' és el port sèrie a on es connecta el [https://www.aliexpress.com/item/1883714934.html?spm=a2g0o.productlist.0.0.3f112d6btvRSkf&algo_pvid=4ffaca69-f154-47b9-9352-0bb7c7106350&algo_expid=4ffaca69-f154-47b9-9352-0bb7c7106350-6&btsid=0ab6d69f15885031557261231e4c01&ws_ab_test=searchweb0_0,searchweb201602_,searchweb201603_ convertidor USB / RS485]. Quan es programa la placa fem servir habitualment '''/dev/ttyUSB0'''. Per a veure quins són els dispositius USB connectats a l'ordinador podem escriure '''lsusb''' al terminal. Per a veure els ports USB disponibles podem escriure '''ls /dev/ttyUSB* -ls '''.
  
 
'''4800''' és la velocitat de comunicació en bauds. És la velocitat en que s'han programat els exemples de ModBus amb l'IDE d'Arduino. Altres velocitat típiques són '''9600''' i '''115200'''.
 
'''4800''' és la velocitat de comunicació en bauds. És la velocitat en que s'han programat els exemples de ModBus amb l'IDE d'Arduino. Altres velocitat típiques són '''9600''' i '''115200'''.

Revisió del 11:26, 3 maig 2020

Placa IoT-02 al github (Esquemes electrònics, esquemes de fabricació de la placa de circuit imprès i codis de prova)

Codis

IDE d'Arduino

IoT-02_01_leds.ino

IoT-02_02_outputs.ino

IoT-02_03_inputs.ino

IoT-02_04_latchingRelay.ino

IoT-02_05_ldr.ino

IoT-02_06_i2cScanner

IoT-02_07_SSD1306

IoT-02_08_SSD1306_io

IoT-02_09_modbus

IoT-02_10_modbus_bme680

IoT-02_11_modbus_bme280

Python

Codi per a controlar des de l'ordinador la placa IoT-02 emprant el protocol ModBus:

mb_IoT_00.py

Dependències de biblioteques

serial és a la biblioteca pyserial. Serveix per a comunicar-se amb el port sèrie. Es pot instal·lar:

pip install pyserial

o

pip3 install pyserial

A algunes distribucions Linux potser us calgui instal·lar els paquets python-serial o python3-serial.

threading està instal·lada per defecte. Al codi mb_IoT_00.py ens serveix per a posar un temporitzador que consulti cíclicament les dades rebudes pel port sèrie.

crc16c.py és un arxiu que ha de compartir carpeta amb mb_IoT_00.py. És un codi que permet fer el càlcul dels codis de control de redundància cíclica (CRC) de forma eficient a Python.

key_getter.py és un arxiu que ha de compartir carpeta amb mb_IoT_00.py. És un codi que permet llegir les tecles premudes sense esperar a prémer la tecla Enter. Això permet una interacció més ràpida i fluïda amb la placa des del terminal. Tan sols funciona amb entorns amb interfície gràfica d'usuari. Està basat en curses. Per a funcionar a Linux cal importar termios, fcntl, sys, os i curses. Per a funcionar a Windows cal importar msvcrt.

Execució des de Linux

./mb_IoT_00.py /dev/ttyUSB1 4800

/dev/ttyUSB1 és el port sèrie a on es connecta el convertidor USB / RS485. Quan es programa la placa fem servir habitualment /dev/ttyUSB0. Per a veure quins són els dispositius USB connectats a l'ordinador podem escriure lsusb al terminal. Per a veure els ports USB disponibles podem escriure ls /dev/ttyUSB* -ls .

4800 és la velocitat de comunicació en bauds. És la velocitat en que s'han programat els exemples de ModBus amb l'IDE d'Arduino. Altres velocitat típiques són 9600 i 115200.

Execució des de Windows

python3 mb_IoT_00.py COM7 4800

COM7 és un exemple del nom de port sèrie a on es connecta el convertidor USB / RS485. Quan es programa la placa hem de fer servir un port diferent.