TRANCA MICROCONTROLADA COM ARNE BASIC 2K

por Márcio José Soares

O controle de acesso em algumas área restritas já é algo bastante comum nos dias de hoje. Muitas são as informações que precisam ser devidamente protegidas. Que tal montar seu próprio sistema de controle de acesso, baseado em uma senha eletrônica e de fácil instalação? É isto que veremos neste artigo.


A PROPOSTA

Muitas trancas eletrônicas, comerciais ou mesmo outras já "publicadas", são preparadas para “liberar” a abertura de uma porta qualquer através de uma senha secreta inserida por meio de um teclado. Caso a senha esteja correta a liberação é feita, do contrário não. A tranca microcontrolada proposta neste artigo é em parte parecida com a maioria das outras que você já deve ter visto por ai, mas com algumas diferenças. A principal está na parte “mecânica” utilizada nesta tranca, que ao invés de utilizar uma trava elétrica comercial usa um pequeno servo para operar um “ferrolho” que pode ser feito por você ou ainda adquirido em lojas de material de construção. Desta forma, não será necessário realizar grandes alterações no batente da porta e/ou promover a troca da fechadura do local onde a tranca microcontrolada será instalada.
Veja abaixo as principais características técnicas da tranca proposta neste artigo:
  • Uso do microcontrolador Arne Basic 2k;
  • Teclado com 16 teclas (0 – 9, #, *, A – D);
  • Senha com 4 dígitos;
  • Sensor para indicar porta aberta e fechada;
  • Chave para abertura da porta pelo lado de dentro;
  • LCD 16x2 para impressão de mensagens para o usuário
  • Back Light com controle independente que acende temporariamente para entrada da senha e se apaga automaticamente quando nada é digitado em 30 segundos;
  • Buzzer auxiliar para indicar tecla pressionada e outras operações;
  • Uso de um servo para controle mecânico da trava (ferrolho);
  • entre outras.

O CIRCUITO

Na figura abaixo é possível ver o circuito da Tranca Microcontrolada. CI1 é o microcontrolador Embedded Arne Basic 2k da Arne Robotics.


RS1 é uma chave tipo reed switch (chave magnética) usada para indicar se a porta está ou não aberta. R5 é um resistor de pull-up para o pino de I/O onde a chave foi ligada (necessário a este tipo de conexão).

A chave S1 permite abrir a porta pelo lado de dentro da sala controlada/protegida, já que agora o sistema usa um ferrolho para travar a porta. Claro que com boa criatividade é possível implementar um ferrolho mecânico que permitiria a sua atuação dupla: manual e através do circuito. Porém o uso da chave facilitará e muito a operação. R6, no circuito, também é um resistor de pull-up para o pino de I/O onde a chave está ligada.

Ligado ao buzzer BZ1 está o transistor Q1 (um NPN de uso geral) que serve como drive de potência para o microcontrolador. O LED2 é uma “alegoria” visual e opcional e sua função é piscar na mesma freqüência usada para o toque do buzzer.

O LCD usado no circuito é do tipo serial Arne Robotics (projeto também disponível neste site). Este tipo de LCD permite uma grande “economia” de pinos de I/O já que para o seu controle é necessário apenas 1 pino de I/O, além de economizar também memória de programa (não é necessário incluir no programa partes para inicialização, controle e uso do LCD). O transistor Q2 é do tipo MOSFET canal “N” e controla o back light do LCD. O resistor R7 é um resistor limitador de corrente para o back light do LCD.

Obs.: Os novos LCDs Arne Robotics possuem controle de back light interno ao LCD com controle por software.

O sinal de controle para o servo está ligado de forma direta ao microcontrolador e sua alimentação é de 5VDC, retirada da fonte de alimentação do circuito.

TEC1 é um teclado matricial com 16 teclas (4 colunas e 4 linhas) onde será inserida a senha de liberação. O circuito interno do teclado está demonstrado na figura abaixo (projeto também disponível no site).


A fonte interna usada no circuito é do tipo regulada em 5VDC / 1A máximos e requer uma segunda fonte externa de 12VDC / 1A devidamente regulados.

Caso você deseje poderá acrescentar ao projeto o circuito demonstrado na figura abaixo que permitirá o uso contínuo da tranca, mesmo com a falta de energia elétrica da rede pública. O resistor RX pode ter valores entre 10R e 100R, dependendo da corrente da bateria e o tempo de carga desejado. A dissipação do mesmo deve ficar em torno de 15W.


MONTAGEM

A figura abaixo mostra o lay-out do circuito impresso sugerido para esta montagem. Você também poderá montar o protótipo usando uma matriz de contatos ou ainda a placa AB2k Experience Arne Robotics. Uma simples matriz de contatos também permitirá experimentar este circuito antes da sua montagem definitiva. O uso de uma placa tipo padrão também é possível para uma montagem definitiva. Mais uma vez, a escolha por um ou outro tipo de montagem fica a escolha de cada um.



Use um suporte para o CI1, evitando solda-lo diretamente na placa. Tome cuidado para não soldar invertidos os componentes polarizados como diodos, LEDs, capacitores eletrolíticos e transistores. Para o buzzer você deverá utilizar um do tipo sem oscilador interno (emissor tipo piezo-elétrico), muito comum no mercado especializado. Alguns buzzers possuem osciladores internos e estes não são recomendados para este projeto, pois não funcionarão corretamente.

Para o teclado você poderá optar em construir um a partir de chaves tipo push-buttons normalmente abertas (NA) usando o circuito já apresentado, ou utilizar teclados de aparelhos fora de uso, desde que estes possuam 16 teclas. Um outro ponto importante é que a inversão das linhas ou colunas, seja linha por linha, coluna por coluna ou ainda linha por coluna fará com que o circuito não funcione corretamente. Tenha muita atenção ao liga-las ao circuito. Use um multímetro ou um testador de continuidade para fazer um “mapa” do teclado a ser utilizado, antes da montagem. A aquisição de um teclado, no comércio especializado, também é possível.

CI2 requer um dissipador de calor para encapsulamento TO-220. D1 é da família 1N400x e qualquer um da mesma servirá neste circuito.

O LED1 pode ser vermelho ou mesmo verde e sua única função é indicar que o circuito está ligado. LEDs de outras cores, como azul ou mesmo branco, também são permitidos neste circuito, porém você deverá recalcular um novo valor para R3.

Para o LED2 recomenda-se o uso de um LED comum, vermelho ou ainda verde. Não use outros tipos.

O transistor Q1 é um BC337 (NPN). Porém você poderá usar equivalentes como BC547 ou qualquer outro NPN de uso geral. O transistor Q2 é do tipo MOSFET canal “N” e equivalente pode ser aplicado.

A chave RS1 é do tipo reed-switch (chave magnética). Caso você não possua a mesma em sua “caixa de componentes” ou ainda não consiga encontrá-la em sua região, poderá adaptar a mesma a partir de uma chave push-button normalmente aberta. Neste caso quando a porta estiver fechada, a chave deverá ser mantida fechada (contatos ligados) e quando a porta estiver aberta os contatos da chave deverão permanecer desligados.

A chave S1 é do tipo push-button normalmente aberta. Recomenda-se que a mesma seja do tipo para instalação em painéis, preferencialmente pequena.



DICAS PARA CONSTRUÇÃO DE UM FERROLHO

Na figura abaixo você pode ver como pode ser feito um pequeno ferrolho automatizado operado por um servo. Ele foi dividido em duas partes: uma será instalada no batente da porta e a outra na própria porta. As medidas foram propositalmente omitidas, pois estas poderão variar de acordo com o tamanho do servo a ser utilizado e também com o tipo de porta/instalação. Cabe ao interessado refazer o desenho aqui demonstrado com as medidas necessárias usando para isso as informações sobre servo e o ponto de instalação.



PROGRAMA

O programa está disponível mais abaixo em downloads. Ele foi desenvolvido com a Linguagem BASIC, utilizando o compilador BASCOM-AVR. O compilador na versão demo pode ser obtido gratuitamente no site da empresa MCS Electronics (www.mcselec.com). A versão demo compilará tranqüilamente o código disponibilizado e também poderá ser utilizada para fazer outros programas para o Arne Basic 2k, já que a mesma é free até 4 kBytes de programa. O funcionamento do programa está descrito no fluxograma da figura abaixo.




O programa inicia definindo as direções dos pinos de I/O, velocidade do canal serial, configura as interrupções que serão utilizadas (servo e timer1) e cria as variáveis. Logo a seguir, o LCD é configurado.

Um laço é então iniciado, sempre verificando se uma tecla foi pressionada e em caso positivo o back light do LCD é ligado e o buzzer ativado para indicar que uma tecla foi pressionada. Neste momento o timer1 inicia a contagem do tempo. Caso nenhuma tecla seja pressionada nos próximos 30 segundos o back light do LCD será desligado para economizar energia. Quando 4 teclas forem pressionadas o programa irá comparar as mesmas com a senha gravada internamente. Se está for válida o servo será posicionado de maneira a abrir a porta (liberação do ferrolho). O servo retornará ao seu ponto inicial quando a porta for aberta e novamente fechada (isso é detectado pelo sensor RS1). A partir deste ponto uma nova seqüência é esperada. Caso a senha esteja incorreta, o programa informará isso através do LCD e solicitará uma outra entrada. Se o usuário inserir três seqüencias erradas, o programa informará que três tentativas foram feitas sem sucesso e não permitirá uma nova entrada nos próximos 20 segundos (o que ajuda a “atrasar” uma tentativa de burlar o sistema).



TESTE E USO

Para testar sua tranca, confira antes todas as ligações evitando assim danificar qualquer componente acidentalmente. Abra o código fonte fornecido no BASCOM (neste momento o leitor poderá alterar a senha interna personalizando assim a sua tranca) e grave o microcontrolador.

Insira o microcontrolador no circuito e ligue-o. O sensor RS1 deve estar fechado neste momento. Neste momento o LED da fonte deverá acender e o servo deverá se posicionar de maneira a manter o “ferrolho” fechado. Do contrário troque o lado da alavanca de controle do ferrolho para o outro lado da alavanca do servo. Comece teclando sua senha para verificar a habilitação do buzzer a cada tecla pressionada e também para confirmar se o back light do seu LCD acende durante o tempo estipulado no programa. Após o teclar da senha, verifique se o servo muda de posição, puxando o “ferrolho”. Abra momentaneamente o sensor RS1 e em seguida feche-o. O servo deverá voltar a posição inicial fechando o ferrolho. A chave S1 permite abrir a porta por dentro. Pressione-a para confirmar seu funcionamento.



CONCLUSÃO

Muitas poderão ser as aplicações para este circuito. A sua montagem pode ser feita visando desde uma instalação real em um ambiente conhecido pelo leitor ou mesmo a sua apresentação em uma feira ou trabalho escolar. Certamente o leitor ao chegar no final deste artigo já deve ter inúmeras idéias para a aplicação deste projeto. Pois então, mãos a obra e boa montagem !!!

DOWNLOADS:

- Circuito elétrico (arquivo PDF)
- Desenho da placa de circuito impresso invertido para confecção manual (arquivo PDF)
- Desenho da placa de circuito impresso não invertido para confecção pelo método transferência térmica  (arquivo PDF)
- Código fonte para ArneBasic 2k (desenvolvido no BASCOM)
- Lista de materiais


Este projeto foi publicado, com minha autorização, na revista Saber Eletrônica nr453 de Maio de 2011.






Copyright deste conteúdo reservado para Márcio José Soares e protegido pela Lei de Direitos Autorais LEI N° 9.610, de 19 de Fevereiro de 1998. É estritamente proibida a reprodução total ou parcial do conteúdo desta página em outros pontos da internet, livros ou outros tipos de publicações comerciais ou não, sem a prévia autorização por escrito do autor.