CLP Duino Wantronics

CLP Duino

Neste post vou apresentar a placa que desenvolvi do CLP Duino Wantronics, que utiliza a plataforma do Arduino.

Com a intenção de projetar uma placa de circuito impresso, com as mesmas características de um CLP convencional, porém de fácil programação, foi desenvolvido o CLP Duino Wantronics.

A plataforma do Arduino dispensa o uso de um gravador específico, e possui muitos exemplos disponíveis na internet e no próprio ambiente de programação, o que torna o processo de aprendizado mais rápido e fácil.

A PCB ficou como mostrado na figura a seguir.

CLP Duino

Foi feito um misto de componentes PTH e SMD.

Quando pensamos em grandes lotes de PCBs, o ideal na hora de fazer o layout da placa de circuito impresso é usar o máximo possível de componentes SMD, e tentar deixar a PCB o menor possível, tudo isso para reduzir custos de fabricação.

O CLP Duino Wantronics possui 6 entradas digitais optoacopladas, com LEDs indicativos de qual entrada está acionada, 6 saídas a relés, com LEDs indicativos de qual saída está acionada, interface para comunicação serial RS232, possui 6 entradas analógicas que pode ser configuradas de 0 a 5 Vcc, ou fechando os jumpers na PCB de 0 a 10 Vcc.

É possível montar duas versões do circuito, uma para funcionar com uma tensão de alimentação de 12 Vcc, e outra para funcionar com uma tensão de alimentação de 24 Vcc, para isso basta alterar os valores de alguns componentes do circuito.

Para validar o funcionamento do circuito, foram feitos dois códigos em linguagem C, utilizando a IDE do Arduino. O primeiro código são feitos os testes das saídas sequencialmente, veja o código abaixo.

/**********************************************
 * CLP Duino Wantronics
 * 
 * 03 / 02 / 2020
 * 
 * Saídas do 2 ao 7
 * Entradas do 8 ao 13
 * 
 * by Wandery
 *********************************************/
int RL1 = 2, RL2 = 3, RL3 = 4, RL4 = 5, RL5 = 6, RL6 = 7;

int i = 0;

void setup() {
  pinMode (2, OUTPUT);
  pinMode (3, OUTPUT);
  pinMode (4, OUTPUT);
  pinMode (5, OUTPUT);
  pinMode (6, OUTPUT);
  pinMode (7, OUTPUT);
}

void loop() {
  for (i = 2; i < 8; i++) {
    digitalWrite (i, HIGH);
    delay (500);
  }
    for (i = 2; i < 8; i++) {
    digitalWrite (i, LOW);
    delay (500);
  }
}

No próximo código são feitos os testes das entradas e das saídas do CLP Duino Wantronics, observem o uso do operador ternário da linguagem C para teste condicional.

/**********************************************
 * CLP Duino Wantronics
 * 
 * Saídas do 2 ao 7
 * Entradas do 8 ao 13
 * 
 * by Wandery
 *********************************************/
int Input1 = 13, Input2 = 12, Input3 = 11, Input4 = 10, Input5 = 9, Input6 = 8;
int RL1 = 2, RL2 = 3, RL3 = 4, RL4 = 5, RL5 = 6, RL6 = 7;

void setup() {
  pinMode (Input1, INPUT);
  pinMode (Input2, INPUT);
  pinMode (Input3, INPUT);
  pinMode (Input4, INPUT);
  pinMode (Input5, INPUT);
  pinMode (Input6, INPUT);

  pinMode (RL1, OUTPUT);
  pinMode (RL2, OUTPUT);
  pinMode (RL3, OUTPUT);
  pinMode (RL4, OUTPUT);
  pinMode (RL5, OUTPUT);
  pinMode (RL6, OUTPUT);
}

void loop() {
  digitalRead (Input1) ? digitalWrite (RL1, HIGH) : digitalWrite (RL1, LOW);
  digitalRead (Input2) ? digitalWrite (RL2, HIGH) : digitalWrite (RL2, LOW);
  digitalRead (Input3) ? digitalWrite (RL3, HIGH) : digitalWrite (RL3, LOW);
  digitalRead (Input4) ? digitalWrite (RL4, HIGH) : digitalWrite (RL4, LOW);
  digitalRead (Input5) ? digitalWrite (RL5, HIGH) : digitalWrite (RL5, LOW);
  digitalRead (Input6) ? digitalWrite (RL6, HIGH) : digitalWrite (RL6, LOW);
}

No vídeo a seguir é apresentado o funcionamento do CLP Duino Wantronics, utilizando os dois códigos mostrados acima.

Por fim, esse projeto pode ser utilizado em uma grande quantidade de aplicações, como em automação residencial, automação agrícola, e também para aprendizagem e prototipação, uma vez que o investimento em um CLP industrial pode alto, e quando se precisa validar uma ideia, uma solução como o CLP Duino Wantronics pode ser utilizado.

Espero que tenham gostado dos resultados obtidos, e até o próximo post!!!

Este obra está licenciado com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.