FAQ - Perguntas Mais Freqüentes

Home Page

SimuPLC

Help SimuPLC

Download

Comentários

Blog

In English


 

1. Qual é a vantagem em se usar, para programação de sistemas PLC, a Linguagem de Comandos Elétricos - LCE, ao invés de programar visualmente, desenhando-se diretamente no diagrama ladder ou no diagrama de blocos de função?

A principal vantagem é a facilidade de programação, manutenção e gerenciamento dos programas de controle PLC obtidos, à medida que vão se tornando cada vez mais complexos. Mantidas as devidas proporções, facilidade similar à obtida com o uso de compiladores de silício (p. ex., por meio da linguagem VHDL - Very High Speed Integrated Circuit Hardware Description Language - algo como linguagem de descrição de hardware de circuitos integrados de muito alta velocidade) ao invés do desenho direto dos circuitos eletrônicos digitais.

Outro ponto positivo é a agregação de semântica ou significado textual aos programas de controle em LCE, com o próprio texto-fonte do programa constituindo sua melhor documentarização, adicionando significado e estruturação que são difíceis de se obter em qualquer diagrama: imagine-se ao telefone, tentando transmitir por meio da fala um diagrama ladder com alguma complexidade ...

Em qualquer meio em que, por inviabilidade técnica, ou questões de economia de recursos, precisarmos transmitir, armazenar ou trabalhar um programa de controle na forma de texto puro, a alternativa é o uso de linguagem no formato de lista de instruções - IL (Instruction List), adaptação de linguagem de programação tradicional, como Basic, C, Pascal, etc., (em Structured Text - ST - Texto Estruturado), ou o uso de linguagens dedicadas e específicas de alto nível.

As linguagens IL são de baixo nível, como o assembly, com todos os problemas de semântica, legibilidade, expressividade e compreensão associados a todas as linguagens de baixo nível.

Por outro lado, as linguagens tradicionais servem a propósitos gerais de programação de computadores, não se adequando com muita perfeição às necessidades e requerimentos específicos da codificação de programas de controle. Linguagens de alto nível dedicadas e específicas para sistemas PLC, como a LCE, buscam suprir esta lacuna.

Vide, ainda, arquivo Help sobre a LCE, para complemento dos pontos de discussão aqui levantados.

 

2. Existe alguma apostila ou tutorial passo a passo sobre o SimuPLC e a LCE?

Infelizmente, considerando que trabalho sozinho neste projeto, ainda não tive tempo de preparar apostila e tutorial passo a passo explicando a utilização do programa.

Porém, no arquivo de ajuda (help) do programa são descritos o funcionamento do Simulador e de todos os comandos das linguagens utilizadas no SimuPLC (tanto a LCE quanto a IL); em vários comandos são descritos pequenos trechos de programas de controle ilustrando sua utilização, o que também pode ajudar a entender o seu modo de programação.

São fornecidos, além disso, vários programas demonstrativos de controle em LCE e IL, colocados na pasta "Exemplos" no momento da instalação do SimuPLC. O estudo desses códigos-fonte seria também muito útil no aprendizado de sua programação.

 

3. É possível a programação ladder no SimuPLC?

A chamada programação ladder é, na realidade, o desenho direto do controle em forma de diagrama ladder, um esquema representativo do quadro de relés que seria utilizado caso relés fossem utilizadas na implementação do controle.

A programação ladder não é, conforme confusão corrente, uma linguagem de programação e sim uma forma de codificação. Tanto que os sistemas PLC não armazenam diretamente o diagrama ladder desenhado, e sim o programa decorrente que é gerado a partir do desenho, geralmente em Lista de Instruções - IL - esta sim, a verdadeira linguagem de programação utilizada. Quando necessário, a partir de tal código armazenado em IL é gerado (ou recuperado) o diagrama correspondente.

Não implementei ainda tal forma de codificação no SimuPLC, embora seja uma facilidade que tentarei implementar em versão futura.

Observem, no entanto, que uma das minhas propostas, conforme resposta à questão 1, é que a programação de PLCs por meio de linguagens de alto nível é mais produtiva que o desenho direto de diagramas, principalmente em projetos de maior porte, os quais se tornam ainda naturalmente documentarizados pelo código-fonte em alto nível.

Todavia, para atingirem-se tais objetivos é necessário que o usuário tenha conhecimentos de programação com este tipo de linguagem; se não tiver experiência de programação com outras linguagens de alto nível, seria desejável que estudasse um pouco de lógica e de estruturação de algoritmos, assuntos de inúmeros livros e web sites facilmente encontrados.  

 

4. O SimuPLC poderia controlar pontos de E/S reais diretamente, através dos ports do PC, atuando como um "SoftPLC"?

O SimuPLC procura auxiliar o aprendizado da programação de PLCs por meio de simulação, bem como a introdução de uma nova linguagem, a Linguagem de Comandos Elétricos – LCE.

A partir da versão 4.0.0, contudo, o projeto do SimuPLC foi estendido para a área de “SoftPLC”, com possibilidade de controle de unidades de E/S (I/O) reais através de cabos seriais conectados a hardwares externos para interligação de pontos de E/S, providos por estes, aos Ports COM do PC (protocolo de comunicação serial RS-232C), os quais inclusive podem ser emulados em PCs que disponham apenas de Ports USB, por meio de cabo USB-to-Serial, facilmente encontrado no mercado de informática. E a versão 4.1.0 expandiu as possibilidades das funcionalidades SoftPLC com comunicação através do Port LPT1.

Obs.: note, todavia, que a própria simulação em si pode ser considerada o funcionamento virtual de um “SoftPLC”, sobretudo quando interconectada virtualmente a sensores e atuadores simulados das plantas virtuais implementadas no Simulador.


Copyright © 2002   André Luiz Barbosa   Todos os direitos reservados.
Atualizado: 30-jun-2008