Cómo probar la comunicación I2C externa en el Raspberry PLC

Aprende a conectar un acelerómetro en el I2C externo del Raspberry PLC
21 de septiembre de 2021 por
Cómo probar la comunicación I2C externa en el Raspberry PLC
Boot & Work Corp. S.L, Fernandez Queralt Martinez

Introducción

I2C son las siglas de Inter-Integrated Circuit. Se trata de un protocolo de conexión de interfaz de bus incorporado a los dispositivos para la comunicación en serie.nds para Inter-Integrated Circuit.

Como los PLCs de Raspberry de Industrial Shields para automatización industrial tienen comunicación i2c, vamos a probarlo utilizando un acelerómetro de Adafruit que funciona a través de I2C.

Enlaces relacionados

Cómo conectar

Raspberry PLC a WiFi

La gama de Raspberry PLC 

Controladores

Programando Raspberry PLC

Interrupciones con Python

Básicos sobre Raspberry Pi PLC

Salidas analógicas

Touchberry Pi

Gama de Panel PC

Encuentra tu

PLC Industrial


Requisitos

Raspberry PLC industrial

Power Supply

Acelerómetro Adafruit  MMA8451 

  • Cable Ethernet o monitor y teclado externos para conectar con el controlador PLC Raspberry Pi.

Conexiones

Para conectar el acelerómetro Adafruit MMA8451 a nuestro PLC basado en Raspberry Pi, conecta los cables como se muestra en la siguiente imagen:

Conexión entre el acelerómetro Adafruit MMA8451 y nuestro PLC Raspberry - Conexiones - Cómo probar la comunicación I2C externa en el PLC Raspberry

Librería Adafruit MMA8451

Primero, instala la Librería Adafruit MMA8451 >>> en el PLC industrial Raspberry Pi para poder utilizar los ejemplos del acelerómetro. Ejecuta el siguiente comando:

git clone https://github.com/adafruit/Adafruit_CircuitPython_MMA8451.git

Nota: Debes tener conexión a internet y git instalado en tu PLC industrial Raspberry PI. Además, si te da algún error al copiar el comando de este post, escribe el comando manualmente.

Test

Una vez que la librería está correctamente instalada, prueba el acelerómetro:

1. En tu hardware de código abierto, ve a:

Directorio   ~/Adafruit_CircuitPython_MMA8451/examples:

cd ~/Adafruit_CircuitPython_MMA8451/examples

2. Ve a la lista de archivos para comprobar que existe el archivo mma8451_simpletest.py:

ls

3. Ahora, asegúrate de que Python3 está instalado en el PLC de código abierto Raspberry Pi:

python3 --version

4. Finalmente, ejecuta el archivo Python y ¡disfruta de tu app! 

python3 mma8451_simpletest.py

Archivo Python - Prueba - Cómo probar la comunicación externa I2C en el PLC Raspberry

Solución de problemas

Si obtienes  "OSError: [Errno 121] Remote I/O error", abre el archivo Python:

nano mma8451_simpletest.py

Añade un retraso de un segundo justo después de esta línea:
i2c = board.I2C()  # uses board.SCL y board.SDA

Añadiendo time.sleep(1.0)

Para que el código se vea así:
import time
import board
import adafruit_mma8451

i2c = board.I2C()  # uses board.SCL and board.SDA
time.sleep(1.0)

# Initialize MMa8451 module.
sensor = adafruit_mma8451.MMa8451(i2C)
...

Finalmente, guarda y sal. ¡Ejecuta de nuevo tu aplicación para disfrutar del acelerómetro usando la comunicación I2C!

Buscar en nuestro blog

Cómo probar la comunicación I2C externa en el Raspberry PLC
Boot & Work Corp. S.L, Fernandez Queralt Martinez 21 de septiembre de 2021
Compartir esta publicación

¿Estás buscando tu Controlador Lógico Programable ideal?

Echa un vistazo a esta comparativa de producto de varios controladores industriales basados en Arduino.

Comparamos entradas, salidas, comunicaciones y otras especificaciones con las de los equipos de otras marcas destacadas.

Comparativa de PLCs