Na edição anterior publicamos um robô controlado via sinais de RF através de um pequeno controle (caixa). Este era feito de forma bem simples com o apertar de botões para que o robô se movimentasse na direção desejada. O que apresentaremos neste artigo, servirá de base para que os leitores que montaram o robô RF possam ligá-lo e controlá-lo através de um PC com o uso do LOGO.
Nota: o artigo é de uma Mecatrônica Fácil de maior de 2004
O leitor que acompanhou o projeto deve lembrar-se do esquema elétrico apresentado na figura 1.
Trata-se do esquema do transmissor do robô RF. O mesmo foi desenvolvido a partir de um módulo "codificador" e um módulo "transmissor". As chaves, quando pressionadas, montam o "dado" a ser enviado para o receptor através da associação de diodos.
Importante: Aconselhamos aos leitores que não possuem a edição n° 15 da revista Mecatrônica Fácil com o projeto original do robô RF, que a adquiram na medida do possível, pois todo o projeto com sua descrição, explicações sobre o funcionamento, desenhos das placas e muitas outras informações contidas neste artigo não serão agora discutidas. Trataremos apenas da adaptação necessária para o controle com o PC.
Observando atentamente a figura 1, percebe-se que o dado "default" é sempre "0000" devido as linhas de dados estarem ligadas ao terra (negativo da fonte - pilhas) através dos resistores de "pull-down" R3, R4, R5 e R6. Quando pressionamos uma das teclas inserimos um valor "positivo" nas linhas desejadas através dos diodos.
Sendo assim, qualquer circuito que venha a fazê-lo "externamente" poderá alterar a linha de dados a ser enviada e, portanto, estaria alterando o comando enviado ao robô e consequentemente sua direção.
Se a ideia é utilizar um PC para realizar o controle do robô e sabemos agora o que é necessário fazer (alterar a linha de dados), podemos determinar algumas características do nosso projeto.
A primeira delas é escolher qual porta utilizar. O leitor que acompanha a revista há algum tempo, já está familiarizado com as possibilidades da "porta paralela" (porta da impressora) de um PC. O nível de controle desta porta é alto, tanto em "bits" quanto em "bytes". Ela é capaz de fornecer tensões de 5 VDC a uma corrente máxima de 20 mA, tensão e corrente ideais para se trabalhar com circuitos digitais do tipo TTL.
Dessa forma, nossa escolha não poderia ser outra. Vamos usar a porta paralela do PC para controlar o robô RF.
O CIRCUITO
Na figura 2 o leitor tem o esquema elétrico do circuito a ser adicionado ao transmissor para viabilizar o controle via PC. Ele notará que em nenhum momento haverá a necessidade de realizar qualquer modificação no circuito original do transmissor do robô. Apenas a adição de uma placa no transmissor será suficiente para permitir o controle do robô através do PC. Um outro ponto importante é que nenhuma alteração será feita com relação ao receptor.
Observando o circuito da figura 2, o leitor poderá entender a "lógica" do circuito. Utilizamos um Cl TTL 74LS125. Trata-se de um "quádruplo buffer com habilitação para as portas". Assim, cada porta só permitirá a passagem do sinal se o pino de habilitação receber o sinal lógico adequado para tal (no caso do Cl utilizado, o nível é "0"). Caso a "habilitação" não seja feita, nenhum sinal da entrada será enviado para a saída e a mesma permanecerá em "tri-state".
Então, configuramos os "buffers" de maneira que suas entradas recebam +Vcc (nível lógico "1") e sua porta de habilitação permaneça no estado lógico "1", evitando o transporte do sinal de entrada.
Somente quando a linha de habilitação receber um nível lógico igual a "0" (retirado da porta paralela) é que o nível lógico "1", presente na entrada, será transportado para a saída.
Porém, devemos esclarecer que o Cl 74LS125 não é um "buffer latch", ou seja, ele não retém o "último" nível de sinal presente em sua saída. Uma vez que a habilitação receba nível lógico "1", a saída é coloca em "tri-state" novamente.
Assim, para habilitar um determinado "buffer" devemos apenas garantir o nível "0" lógico no pino de habilitação, referente ao "buffer" que desejamos ativar. A tabela 1 mostra os valores decimais necessários para ativar cada um dos "buffers".
MONTAGEM
Na figura 3 o leitor tem o layout para confecção do circuito impresso. Ele é pequeno e possui apenas seis componentes.
Após confeccionar a placa, verifique se não existe nenhuma trilha em curto, se nenhuma ilha foi esquecida, etc. Uma verificação na placa neste momento poderá ajudar a detectar um problema na mesma, ajudando no sucesso do projeto.
Comece por soldar os resistores e o capacitor. Estes componentes não são polarizados e não há qualquer preocupação com uma possível inversão de polaridade. Para Cl1 é aconselhável o uso de um soquete para o mesmo. Lembre-se que os Cl's são componentes que não podem ser soldados invertidos. Siga atentamente a figura 3 para evitar qualquer problema desta natureza.
Importante: O leitor deve cultivar o hábito da "verificação" em etapas. A cada etapa de uma montagem, é bom verificar sempre o que foi feito na busca de erros ou outras. Isso é fundamental para garantir uma montagem de sucesso.
O fio de ligação entre o DB09 a ser instalado na caixa do transmissor e a placa não precisa ser comprido, porém ele deve ser tal que o leitor possa trabalhar com a placa de maneira confortável. Fios grandes demais (ou mesmo esticados) devem ser evitados. Os fios de ligação entre a placa e os botões também seguem a mesma filosofia.
Na figura 4, vemos o exemplo da distribuição dos componentes no interior da caixa do nosso protótipo. Note que os fios ligados à chave e outros, têm o comprimento adequado para, que a caixa possa ser aberta sem maiores problemas (não há fios esticados impedindo a abertura da mesma).
Os fios que ligam as saídas dos "buffers" aos botões merecem um cuidado especial ao serem soldados. O leitor deve ter muita atenção para não inverter o ponto correto do botão. Este ponto leva o sinal Vcc aos diodos. Se o leitor ligar os fios no outro ponto da placa os dados não serão alterados. Observe atentamente a figura 5 para ter sucesso nas ligações.
Para fixar a nova placa ao gabinete o leitor poderá utilizar um parafuso, cola quente, ou outro adesivo. Acreditamos que o uso de um parafuso dê um melhor acabamento e fixação, porém deixamos isso à escolha de cada um de acordo com os materiais presentes em sua bancada.
A alimentação do novo circuito é fornecida pelo próprio transmissor. O fio positivo (vermelho) deve ser ligado ao "catodo" do diodo e o fio preto junto ao fio preto do suporte de pilhas. Lembre-se que o catado do diodo é marcado com uma faixa próxima ao terminal. Esta ligação é feita por baixo da placa para um melhor acabamento. Para montar o cabo de comunicação, use o desenho da figura 6. Empregamos em nosso protótipo um pedaço de "flat cabia" de aproximadamente 50 cm com cinco vias.
O PROGRAMA
Como já é de praxe aqui na revista, desenvolvemos nossas aplicações com a linguagem LOGO. Optamos por esta linguagem por ela ser de fácil aprendizagem e gratuita, estando assim ao alcance de todos. A figura 7 demonstra a tela principal do nosso programa sendo executado no LOGO.
Para os leitores com experiência em outras linguagens, o desenvolvimento de um outro programa não será uma tarefa difícil bastando seguir as dicas dadas no início deste artigo.
Na figura 8 o leitor tem o fluxograma do nosso programa. Seu funcionamento é bem simples. Ao "doar" um "botão", o mesmo insere um valor na porta paralela do PC, o qual é mantido lá, mesmo que o botão não esteja mais pressionado. Para isso é utilizado o comando:
Este comando insere um valor na porta 888 (888 decimal = 3F8 hexadecimal). O valor utilizado está indicado na tabela 1.
Importante: Aconselhamos a todos os leitores que na medida do possível façam uma releitura dos artigos anteriormente publicados, que contém a série sobre a linguagem LOGO. Assim será possível uma compreensão melhor do programa de controle. Para aqueles que não possuem os números anteriores, a aquisição dos mesmos também é recomendável, dentro das possibilidades de cada um. Muita informação (não só sobre a linguagem) é disponibilizada em cada exemplar da revista Mecatrônica Fácil. Complete sua coleção!
PROVA E USO
Para testar o comando do Robô RF pelo PC basta conectar o cabo ao circuito, ligar o transmissor e o receptor.
Observação: Estamos considerando que o leitor se lembrou de nosso conselho sobre "verificar cada etapa da montagem" e que tudo esteja ok.
Rode o programa no LOGO. Clique em um dos botões e observe se o movimento está de acordo com o desejado. Se o movimento parecer invertido, pode ser que os fios foram ligados de maneira trocada. Se assim for, ligue-os corretamente para obter o movimento desejado ou mesmo altere o valor no programa (maneira mais simples) a ser enviado à porta de maneira que o robô execute exatamente o comando desejado.
Testado o programa, o leitor já poderá pensar em algumas alterações e melhorias no mesmo. Elas são várias e tudo dependerá da criatividade e necessidades de cada um. Alterar programas é um excelente exercício de aprendizado.
AJUDA COM PROBLEMAS
Abaixo listamos alguns pontos observados em nosso laboratório e que com certeza ajudarão na busca de problemas:
Liguei meu robô, rodei o programa, mas nada aconteceu! Ele manteve-se parado!
Possíveis soluções:
- Verifique se o transmissor está ligado;
- Observe se o cabo de comunicação está também ligado;
- Cheque se a porta paralela do seu PC está ativa e se o endereço da mesma é 3F8H (888). Altere, se necessário;
- Veja se a alimentação da placa "extra" de controle foi ligada corretamente.
Meu robô parece estar doido! Clico em um botão e ele executa um outro comando! As funções parecem estar trocadas!
Possíveis soluções:
- Verifique se as portas de saídas dos "buffers" foram ligadas aos pontos descritos;
- Observe se os comandos passados na tabela 1 "batem" com as chaves do seu robô;
- Altere os valores no comando "portasaídab888 valor" para que os mesmos executem o comando desejado.
CONCLUSÃO
Utilizar um PC no comando de pequenos robôs já não é mistério para o nosso leitor. Nosso intuito, neste artigo, foi mostrar como integrar um computador a um projeto já existente e funcional. Agora, o robô RF pode ser controlado por um PC que passa a ser o "cérebro" do mesmo. Já pensou no que poderá ser feito com isto? Até uma próxima e boas ideias!