Programação aplicada em projetos mecânicos

Como é feito a passagem de um programa criado, por exemplo, para fazer um carro de controle remoto obedecer as teclas de acelerar e frear? Quero dizer, como uma linguagem de programação vai ser utilizada em um chip p/ poder fazer um projeto do meio físico funcionar? Existe uma linguagem específica para criar robôs, por exemplo?

Há algumas variações, mas no geral o chip podem ter sua programação gravada a partir de um computador. Modelos mais antigos usam portas seriais/paralelas e adaptadores, enquanto que modelos mais novos podem utilizar USB ou outras tecnologias. Algumas placas mais modernas (como o Arduino e o Raspberry Pi) podem carregar de um cartão SD por exemplo.

Veja nesse link o processo simplificado de criação de um sistema para um microcontrolador PIC, conectado através da porta serial.

Os programas geralmente são transferidos já compilados (ou seja, somente os binários), então a linguagem usada depende mais de o compilador ser capaz de gerar um binário para o chip em específico. Claro, linguagens que permitem coisas como acesso direto à memória e tenham dependências mínimas, além de gerarem executáveis menores, são mais comuns. Nesse cenário, C e Assembly são bastante usadas, e dependendo da complexidade do projeto outras linguagens podem ser utilizadas.

Abraço.

A programação para automação é basicamente feita controlando entradas e saidas digitais e entradas analógicas de um dispositivo. Saídas digitais nada mais são do que uma série de “interruptores” que são acionados para ligar ou desligar algo. Uma entrada digital é como se fosse uma lâmpada que você quer ligar no processador. Assim você pode acionar uma saída digital para ligar um motor de um carro e receber em uma entrada um sinal para saber se o freio de mão está acionado. Entradas analogicas já são diferentes. Elas recebem um valor de tensão variável (ou corrente) e funciona como se fosse um dimmer para o processador no qual a tensão vai aumentando para que uma lampada tenha mais brilho. Essas entradas são utilizados para sensores que apresentam variação, como de pressão ou temperatura.

Existem diversos dispositivos para automação. Os mais simples são os CLPs (Controladores Lógicos Programaveis), muito utilizados na industria para automação e controle de equipamentos. CLPs normalmente utilizam uma linguagem gráfica de programação chamada Ladder.

Outra forma de realizar a automação é através da utilização de microcontroladores como PIC ou 8051. Nesses casos é necessário construir o dispositivo que receberá esses microcontroladores. A programação desses é realizada normamente em C.

Existem dispositivos já prontos, com microcoladores, no qual é necessário apenas realizar a programação. O Arduino é um exemplo.

Os dispositivos podem operar sozinhos, ou serem controlados por um Computador. Nesse último caso é necessáro estabelecer uma rede de comunicação. O sistema de comunicação mais simples e mais utilizado em ambiente industrial é a comunicação serial. Outro sistema que é utilizado também é o ethernet, mas esse é mais raro.

Para estabelecer a comunicação com um dispositivo é necessário criar um protocólo ou usar um pronto. Um protocólo é somente algo para que o dispositivo entenda os comandas enviados pelo computador e vice versa. Um protocólo muito usado em ambientes industriais é o Modbus.