Web
Analytics Made Easy - StatCounter

RASP-IOS

A saber...

Este interface Pode ser interligado em um Raspberry Pi3, em um Arduíno, ou outro tipo de plataforma por I2C. Além disso pode ser interligado com as nossas plataformas Arduíno e ESP32.

Endereçamento I2C

Em um mesmo bus I2C podem ser ligadas 8 interfaces iguais, com endereçamentos diferentes:

A0|A1 |A2  Endereço
   0 | 0 | 0    | 0x20 |  
   0 | 0 | 1    | 0x21 |  
   0 | 1 | 0    | 0x22 |  
   0 | 1 | 1    | 0x23 |  
   1 | 0 | 0    | 0x24 |  
   1 | 0 | 1    | 0x25 |  
   1 | 1 | 0    | 0x26 |  
   1 | 1 | 1    | 0x27 |  

Endereçamento GPIOS

A interface pode ser ligada e controlada diretamente pelos GPIOS de um Raspberry PI:

Inputs    GPIOS   MCP23008
   INP1   GPIO17      GP00    
   INP2   GPIO27      GP01    
   INP3   GPIO22      GP02    
   INP4   GPIO05      GP03    
   OU1    GPIO13      GP04    
   OU2    GPIO19      GP05    
   OU3    GPIO16      GP06    
   OU4    GPIO26      GP07    
  ####   GPIO23      Reset   
  ####   GPIO24      INTR     

Introdução:

RASP-IOS é uma interface para interligar a um Raspberry ou compatível, com 4 entradas isoladas, 4 saídas por relé. As entradas e as saídas podem ser controladas / lidas por I2C ou então diretamente pelos GPIOS do Raspberry Pi. Em cada entrada é detetado um sinal que pode ir de 5V até 28V DC ou AC, passa por um optocoupler de isolamento. Cada saída é um contacto seco de um relé que suporta até 10A.

Para comunicação das entradas e saídas por I2C é utilizado o integrado MCP23008 de 8 bits da Microchip, como controlador de I2C de IOS. As linhas I2C SDA e SCL são ligadas pelo barramento do Raspberry, ou então como alternativa estão disponíveis também nos conectores CN1 e CN2, para ser possível o seu funcionamento com qualquer microcontrolador.

Características:

  • Dimensões da placa de circuito: 56x65mm.
  • Alimentação de 5V do Raspberry.
  • Comunicação interna: I2C ou GPIOS.
  • 4 entradas 12V a 24V DC/AC isoladas.
  • 4 saídas por relé, contacto seco NO e NC 10A.
  • Leds para visualização das 4 saídas.
  • Podem ser interligadas 8 interfaces em um mesmo bus I2C.
  • 2 Conectores para bus I2C para interligação externa.

Como ligar:

Siga as seguinte imagem para saber como interligar a interface. Tome cuidado nas ligações.

Descrição:

Siga a explicação da imagem anterior. Os conectores laterais correspondem aos contactos dos relés, sendo que para cada relé existe um contacto normalmente fechado e um normalmente aberto. Nos conectores de baixo é para ligar as entradas, se for uma entrada com uma corrente continua, deverá respeitar a polaridade que a imagem indica. A linha preta é o GND a linha vermelha é o VCC da entrada. A interface pode ser interligada em um Raspberry Pi no bus de expansão, ou então pelos conectores externos de bus I2C. A alimentação pode ser recebida em ambos os conectores.

Firmware Python de Exemplo:

Com leitura por I2C:

#!/usr/bin/python
import smbus
import time
import RPi.GPIO as GPIO

# Configurando o modo dos pinos como BCM
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
# I2C port especifica
I2C = smbus.SMBus(1)

DEVICE_ADDRESS = 0x20

MCP230xx_IODIRA = 0x00
MCP23017_IODIRB = 0x01
MCP23017_GPIOA = 0x12
MCP23017_GPIOB = 0x13
MCP23017_GPPUA = 0x0C
MCP23017_GPPUB = 0x0D
MCP23017_OLATA = 0x14
MCP23017_OLATB = 0x15
MCP23008_GPIOA = 0x09
MCP23008_GPPUA = 0x06
MCP23008_OLATA = 0x0A

#Configurar MCP23008
I2C.write_byte_data(DEVICE_ADDRESS, MCP230xx_IODIRA, 0x0F)

print("RASP-OUT TESTE I2C")

while (1):
  time.sleep(2)
  print ("I2C Inputs:")
  MyInputsA = I2C.read_byte_data(DEVICE_ADDRESS, MCP23008_GPIOA)
  print (MyInputsA)
  time.sleep(5)
  I2C.write_byte_data(DEVICE_ADDRESS, MCP23008_OLATA, 0x1F)
  time.sleep(2)
  I2C.write_byte_data(DEVICE_ADDRESS, MCP23008_OLATA, 0x2F)
  time.sleep(2)
  I2C.write_byte_data(DEVICE_ADDRESS, MCP23008_OLATA, 0x4F)
  time.sleep(2)
  I2C.write_byte_data(DEVICE_ADDRESS, MCP23008_OLATA, 0x8F)
  time.sleep(2)
  I2C.write_byte_data(DEVICE_ADDRESS, MCP23008_OLATA, 0x0F)
  time.sleep(2)

Fim

Alertas:

Muito bem! A interface RASP-FAN está disponivel em stock.