O que você acha de fazermos os nossos próprios objetos ou automatizar a própria casa ou empresa? Em linhas gerais, a expansão de hardware de fácil programação foi a fagulha que faltava para a explosão do movimento maker. Ou seja, produtos que antes eram restritos a um nicho de mercado, agora são feitos por nós mesmos em nossa própria casa. É a chamada cultura do “faça você mesmo” (DIY em inglês – Do IT Yourself). Plataformas de hardware simples para projetos com microcontroladores, como o arduino, tem um fator de inclusão muito forte, já que geralmente possuem um baixo custo e trazem a eletrônica e programação para a palma da mão, incentivando com isso a criatividade e a inovação. Neste post vamos apresentar um hardware simples para microcontroladores PIC com IoT, mostrando seus principais recursos e aplicações.
A ideia principal
Partindo então com a premissa do baixo custo e a expansão de nosso legado maker, nosso post de hoje visa ampliar as opções para utilização de placas microcontroladas em seus projetos DIY com foco não apenas na robótica ou eletrônica, mas direcionando agora para projetos da indústria 4.0.
Já que o movimento maker trouxe a eletrônica e a programação para sua vida, agora vamos trazer a a instrumentação, os sistemas supervisionados, os clps e o IIoT (Industrial Internet of Thinks). Vamos apresentar a plataforma FABPIC, acrônimo para FABulous PIC que utiliza o microcontrolador da Microchip PIC18F4550. Como diferencial do hardware desta placa se destacam, por exemplo:
- Gravação ICSP ou USB via bootloader;
- Placa compacta com dimensões de 10cm x 15cm e empilhável;
- Alimentação por conector USB e/ou fonte externa (9V ou 12V);
- Integração IoT utilizando conversor socket/serial ligado diretamente na placa;
- Ajuste de sinal analógico por potenciômetro multivoltas;
- 4 botões de entrada digital (necessário habilitar os pullups da porta b);
- 3 leds de saída digital ( 1 led móvel e dois leds fixos);
- 1 saída de display de lcd 16×2;
- Saída analógica PWM com isolação por ótica com carga de 5A;
- 7 saídas para servomotores ;
- 3 saídas para motor de passo;
- 2 saídas para relés;
- Possibilidade de fixação em trilho DIN;
- Acesso a todos os pinos de entrada e saída em pinos machos;
Que programas eu posso usar?
Similarmente ao hardware, como diferencial das opções de software desta placa se destacam:
- Aplicações em sistemas supervisórios que utilizam driver de comunicação modbus TCP como, por exemplo, InTouch, Indusoft, Elipse Scada e Elipse E3;
- Utilização diversas plataformas como, por exemplo, Android, iOS, Mac, Web, Windows e Linux para controle via interface socket;
- Aplicações diretas para comunicação serial ou USB via classe CDC como a programação em IDEs que usam as linguagens Phyton ou C# como o Visual Studio ou programas similares;
- Programas disponíveis em um ou dois compiladores (CCS ou MikroC), mas você pode usar qualquer compilador de acordo com sua melhor afinidade.
Certo, mas e os projetos?
Além disso, podemos construir uma série de projetos utilizando apenas o hardware da placa com comandos locais ou pela internet, por exemplo:
- Acionamento de impressora 3d;
- Controle de CNC router;
- Braço robótico com até 7 graus de liberdade;
- Robô SCARA com 3 motores de passo e até 7 servomotores;
- IHM com um display de LCD* e 4 botões;
- Controle de velocidade de motor CC de 12V ou 5V com realimentação de 0 a 5V;
- Automação com acionamentos digitais com para dois relés (externos);
- Controle em malha fechada com realimentação por entrada analógica e saída PWM isolada como, por exemplo, controle de velocidade de motor CC, controle de luminosidade, controle de aquecimento, controle de nível, entre outros.
*o uso do display de lcd é condicionado ao uso dos pinos para os motores de passos.
Placa de controle
A placa de controle é mostrada na figura 1. Pode ser usada, independente da placa de potência, para acionamentos para aplicações básicas de microcontroladores PIC como simulação de um sinal de trânsito por leds, programas que usam uma entrada analógica e 4 entradas digitais por botões. Tudo isso sem precisar de uma matriz de contatos, mas caso você deseja usar outros dispositivos, os pinos de microcontrolador estão disponíveis para uso externo também.
A tabela 1 fornece as características técnicas da placa com mais detalhes.
Placa de potência
Adicionalmente, a placa de potência é fixada na placa de controle e usa as mesmas fontes de alimentação , ou seja, USB e/ou uma fonte externa no conector p4. Voltada para dispositivos de controle, permite chavear uma carga com corrente de até 5A de corrente, isolada do microcontrolador. Também possui pinos próprios para usar até 3 motores de passo com driver a4988 ou similar, um display lcd e dois relés externos. A figura 2 ilustra a respectiva placa de potência.
Caso você deseje saber mais detalhes técnicos, a tabela 2 mostra outras características importantes desta placa.
Não quero programar o PIC, o que eu faço?
Mesmo usando uma placa simples de ser utilizada, você talvez não goste de programar em linguagem C. Caso seja uma opção sua não programar em baixo nível e usar apenas as suas habilidades avançadas , a seguir são descritas algumas opções para baixar o firmware e usar apenas em aplicações de alto nível. A seguir destacamos algumas aplicações práticas de uso das placas apresentadas.
Controle da placa sem programação
Para realizar testes rápidos em uma montagem de dispositivos eletrônicos ou planta de controle automática podemos executar um programa que utiliza a classe CDC para comunicação USB. Projetada para efetuar testes em bancada, o programa permite o uso de um controle Xbox USB para melhor controle de posição do braço robótico.
Além disso, permite a visualização de dados em um gráfico que pode ser exportado para o Microsoft Excel, permitindo uma análise estatística dos dados lidos por até três entradas analógicas do pic. Adicionalmente, as quatro entradas digitais e as quatro saídas digitais comandadas por computador, o programa também permite a gravação de 8 posições de até 4 servomotores, gravando dados em em arquivo de texto para estudos de robótica avançados. Por exemplo, a figura 3 mostra a interface de teste do programa FAB I/O feito em C# onde é possível ver os botões em amarelo correspondentes aos botões do controle do Xbox USB.
Por exemplo, o vídeo a seguir ilustra as funções básicas da placa de controle utilizando a classe CDC.
Video 1 – Vídeo geral do funcionamento da placa e programa de teste
Adicionalmente, o vídeo 2 ilustra o teste da placa de potência com um robô , onde são mostrados os acionamentos de um motor de passo e um motor sg90 com o controle do Xbox para simplificar o ajuste das posições do robô, por exemplo.
Video 2 – Vídeo exemplo do funcionamento da placa de potência para controlar um robô
Interagindo com o programa Unity
O uso da realidade virtual está ajudando as formas de ensino, ao passo que permitem trabalhar em ambientes virtuais seguros e com recursos ilimitados. Por isso, sugerimos a leitura deste post sobre o uso de uma planta de controle em ambiente virtual usando a placa FABPIC.
Sistemas de supervisão
Por fim, para profissionais que trabalham com o projeto de sistemas de supervisão industriais, sugerimos o uso do programa neste link para comunicação via Modbus TCP/IP. Ou seja, a comunicação TCP/IP presente na própria placa abre para comunicação e teste de programas que simulam ambientes industriais através de telas que podem comandar as entradas e saídas da placa através de barras de rolagem ou botões que podem acionar os leds, 2 motores sg90 e um motor de passo.
A figura 5, por exemplo, mostra uma tela de um sistema de supervisão usando o programa Elipse SCADA (www.elipse.com.br).
Figura 5 – Programa Elipse SCADA genérico utilizando placa FABPIC
Conclusão
Quem trabalha com montagem de protótipos sabe da importância de uma montagem compacta para o sucesso do projeto. Tendo em vista a simplificação de montagens eletrônicas apresentamos ao longo deste texto um hardware para PIC com IoT com destaque para o baixo custo. Além disso, esta placa serve como ferramenta para alavancar projetos de eletrônica e automação para aqueles que gostam de trabalhar tanto com programação de baixo nível como aplicações avançadas de alto nível, para análise de dados por exemplo ou trabalho com foco na indústria 4.0 e no IIoT .
Espero que tenham gostado dos programas apresentados e que eles sejam bastante úteis na sua jornada no campo da automação.
Até a próxima!