Seqüência de Acordes Dissonantes & Invertido Vol.03, por Prof. João Batista
Sistema de Controle para um Pêndulo Invertido · 3.2.4 Quarta etapa: ... 4.2.2.3 Lista de ......
Transcript of Sistema de Controle para um Pêndulo Invertido · 3.2.4 Quarta etapa: ... 4.2.2.3 Lista de ......
ESCOLA DE EDUCAÇÃO PROFISSIONAL SENAI PORTO ALEGRE
CURSO TÉCNICO EM ELETRÔNICA
ARTHUR WEBBER BALZANI
FELIPE STUMM CACHOEIRA
Sistema de Controle para um
Pêndulo Invertido
Monografia apresentada como requisito parcial
para a obtenção da habilitação plena em
Técnico em Eletrônica
Prof. Flavio Rocha de Avila
Orientador
Porto Alegre, 19 julho de 2009.
DADOS INTERNACIONAIS DA CATALOGAÇÃO NA PUBLICAÇÃO (CIP)
Escola de Educação Profissional Porto Alegre
Av. Assis Brasil, 8450
cep: 94140-000
tel.: (51) 3347-8400
BALZANI, Arthur Webber; CACHOEIRA, Felipe Stumm
Pêndulo Invertido / Arthur Webber Balzani; Felipe Stumm
Cachoeira – Porto Alegre: SENAI/Escola de Educação Profissional
de Porto Alegre/Curso Técnico em Eletrônica Industrial, 2009.
75 f.: il.
Monografia (curso técnico) – Serviço Nacional de
Aprendizagem Industrial. Escola de Educação Profissional Porto
Alegre. Curso Técnico em Eletrônica Industrial. Porto Alegre,
2009. Orientador: Avila, Flavio Rocha de.
1. Sistemas para um Pêndulo invertido. I. Avila, Flavio Rocha
de.
3
AGRADECIMENTOS
Nós – Arthur Webber Balzani e Felipe Stumm Cachoeira – gostaríamos de
agradecer primeiramente aos nossos familiares e mais precisamente nossos pais –
Lurdes Helena Glündller Webber e Edmundo Glündller Neto (pais de Arthur) e Gisela
Vilins Stumm e Valdir dos Santos Cachoeira (pais de Felipe) – que sem dúvida foram
pilares de sustentação nos momentos de cansaço físico e mental e nos ajudaram a
manter o foco neste projeto.
Ao professor da Escola de Educação Profissional SENAI Porto Alegre, Flavio
Rocha de Ávila, pelos momentos de paciência e prontidão em nos auxiliar. Aos
professores Matheus Ribeiro e Melissa, também da Escola SENAI Porto Alegre, pelos
contatos com a empresa STMicroeletronics, foi a partir deste contato que conquistamos
os “samples” dos acelerômetros.
Ao professor Gustavo Vieira Pereira da Universidade do Vale do Rio dos Sinos
pelas orientações extracurriculares e disposição em auxiliar.
E por fim, a todos aqueles que direta e indiretamente tiveram uma parcela de ajuda
neste projeto e fizeram com que hoje este sonho se tornasse realidade – Um muito
Obrigado!
Arthur Webber Balzani e Felipe Stumm Cachoeira.
4
SUMÁRIO
LISTA DE ABREVIATURAS E SIGLAS ............................................................ 6
LISTA DE FIGURAS .......................................................................................... 7
LISTA DE TABELAS ......................................................................................... 9
RESUMO .......................................................................................................... 10
ABSTRACT ...................................................................................................... 11
1 INTRODUCÃO ............................................................................................ 12
1.1 Objetivos ........................................................................................................... 12
1.2 Objetivos Específicos ........................................................................................ 12
2 FUNDAMENTAÇÃO TEÓRICA .................................................................. 15
2.1 Introdução ......................................................................................................... 15
2.2 Descrição ........................................................................................................... 15 2.3 Estado da Arte .................................................................................................. 26
3 METODOLOGIA ......................................................................................... 28
3.1 Introdução ......................................................................................................... 28
3.2 Descrição ........................................................................................................... 28 3.2.1 Primeira etapa: Projeto ..................................................................................... 28
3.2.2 Segunda etapa: Mecânica ................................................................................. 29 3.2.3 Terceira etapa: Hardware ................................................................................. 31
3.2.4 Quarta etapa: Firmware.................................................................................... 34 3.2.5 Quinta etapa: Integração .................................................................................. 35
3.2.6 Sexta etapa: Documentação ............................................................................. 36
3.3 Cronograma ...................................................................................................... 37
4 DESENVOLVIMENTO ................................................................................ 39
4.1 Mecânica ........................................................................................................... 39 4.1.1 Introdução ....................................................................................................... 39 4.1.2 Descrição ......................................................................................................... 39 4.1.2.1 Torre ........................................................................................................................ 39 4.1.2.2 Base ......................................................................................................................... 41 4.1.2.3 Sistema de Locomoção ............................................................................................. 42 4.1.3 Lista de Peças .................................................................................................. 43
4.1.4 Desenho Mecânico .......................................................................................... 44
4.2 Hardware .......................................................................................................... 46 4.2.1 Plataforma de Desenvolvimento....................................................................... 46 4.2.1.1 Introdução ................................................................................................................ 46
5
4.2.1.2 Descrição ................................................................................................................. 46 4.2.1.3 Fotos da Estação CuscoPIC
®..................................................................................... 50
4.2.1.4 Lista de Peças ........................................................................................................... 51 4.2.1.5 Esquema Elétrico ...................................................................................................... 52 4.2.2 Hardware Desenvolvido ................................................................................... 53 4.2.2.1 Introdução ................................................................................................................ 53 4.2.2.2 Descrição ................................................................................................................. 53 4.2.2.2.1. Acionamento de Carga .......................................................................................... 53 4.2.2.2.2. Sensores ............................................................................................................... 55 4.2.2.3 Lista de Peças ........................................................................................................... 56 4.2.2.4 Imagens .................................................................................................................... 57
4.3 Software ............................................................................................................ 58 4.3.1 Introdução ....................................................................................................... 58 4.3.1.1 Linguagem Assembly ............................................................................................... 59 4.3.1.2 Linguagem C ANSI .................................................................................................. 59 4.3.1.3 Montadores .............................................................................................................. 61 4.3.1.4 Compiladores ........................................................................................................... 61 4.3.2 Firmware Desenvolvido ................................................................................... 63 4.3.2.1 Introdução ................................................................................................................ 63 4.3.2.2 Descrição ................................................................................................................. 63 4.3.2.3 Fluxograma .............................................................................................................. 64 4.3.2.4 Código Fonte (*.c) .................................................................................................... 65 4.3.2.5 Bibliotecas (*.h) ....................................................................................................... 66 4.3.2.6 Executável (*.HEX).................................................................................................. 66
5 CONCLUSÃO ............................................................................................. 68
REFERÊNCIAS ................................................................................................ 71
OBRAS CONSULTADAS ................................................................................ 73
ANEXO A <DIMENSÕES DO QJT-51JS> ....................................................... 74
ANEXO B <DATASHEET PIC16F877A> ........................................................ 75
ANEXO C <DATASHEET BC548> .................................................................. 76
ANEXO D <DATASHEET TIP131> ................................................................. 77
6
LISTA DE ABREVIATURAS E SIGLAS
AC Alternated Current
ANSI Instituto Norte Americano de Padrões
CAD Computer Aided Design
CC Corrente Contínua
CCS C Compiler Standard
CD Compact Disc
EEPROM Electrically Erasable Programmable Read Only Memory
IBM International Business Machine
IDE Integrated Development Environment
IHM Interface Homem – Máquina
IO Input Output
ISO Organização Internacional de Padrões
LCD Liquid Crystal Display
ROM Read Only Memory
PC Personal Computer
PCI Placa de Circuito Impresso
PTH Plated Through Hole
PWM Pulse-Width Modulation
RPM Rotações Por Minuto
SMD Superficial Monting Device
TCC Trabalho de Conclusão de Curso
UC Unidade Curricular
UFB Universidade Federal da Paraíba
UFJF Universidade Federal de Juiz de Fora
UFRJ Universidade Federal do Rio de Janeiro
USB Universal Serial Bus
SENAI Serviço Nacional de Aprendizagem Industrial
LISTA DE FIGURAS
Figura 2.1: Exemplo de circuito elétrico para PWM. ................................................... 16
Figura 2.2: Gráfico da tensão em função do tempo. ..................................................... 16
Figura 2.3: Ciclo ativo................................................................................................. 17
Figura 2.4: Potência controlada. .................................................................................. 17
Figura 2.5: Motor CC. ................................................................................................. 18
Figura 2.7: Rotor de um motor de passo. ..................................................................... 18
Figura 2.8: Motor AC. ................................................................................................. 19
Figura 2.9: Sensor sonar. ............................................................................................. 20
Figura 2.10: Sensor óptico........................................................................................... 20
Figura 2.11: Sensor capacitivo. ................................................................................... 21
Figura 2.12: Sensor indutivo. ...................................................................................... 21
Figura 2.13: Acelerômetro. ......................................................................................... 21
Figura 2.14: Giroscópio. ............................................................................................. 22
Figura 2.15: Exemplo de caso de inércia. .................................................................... 23
Figura 2.16: “Trebuchet”. ........................................................................................... 24
Figura 2.17: Pêndulo. .................................................................................................. 25
Figura 2.18: Engrenagens. ........................................................................................... 26
Figura 2.19: Modelo Segway para uma pessoa. ........................................................... 26
Figura 2.20: Modelo Segway para duas pessoas. ......................................................... 27
Figura 4.1: Torre. ........................................................................................................ 40
Figura 4.2: Sensor. ...................................................................................................... 40
Figura 4.3. Plataforma da base. ................................................................................... 41
Figura 4.4: Base. ......................................................................................................... 42
Figura 4.5: Sistema de locomoção. .............................................................................. 43
Figura 4.6: Desenho mecânico da torre........................................................................ 44
Figura 4.7: Acomodação do potenciômetro. ................................................................ 44
Figura 4.8: Acomodação do rolamento. ....................................................................... 45
8
Figura 4.9: Paredes da base. ........................................................................................ 45
Figura 4.10: Desenho mecânico da plataforma da base. ............................................... 45
Figura 4.11: Acomodações. ......................................................................................... 46
Figura 4.12: Cabo de gravação paralelo. ...................................................................... 48
Figura 4.13: Porta paralela física no PC. ...................................................................... 48
Figura 4.14: Cabo de comunicação serial. ................................................................... 49
Figura 4.15: Porta serial. ............................................................................................. 49
Figura 4.16: Posição dos “jumpers” na estação CuscoPIC. .......................................... 49
Figura 4.17: Adaptador USB/SERIAL. ....................................................................... 50
Figura 4.18: Placa principal. ........................................................................................ 50
Figura 4.19: Placa IHM. .............................................................................................. 51
Figura 4.20: Esquema elétrico da placa principal. ........................................................ 52
Figura 4.21: Esquema elétrica da placa IHM. .............................................................. 53
Figura 4.22: Fluxo da corrente em um sentido. ............................................................ 54
Figura 4.23: Fluxo da corrente em sentido inverso. ..................................................... 55
Figura 4.24: Pseudoponte H. ....................................................................................... 57
Figura 4.25: Pseudoponte H – TOP. ............................................................................ 57
Figura 4.26: Pseudoponte H – BOTTOM. ................................................................... 58
LISTA DE TABELAS
Tabela 2.1: Seqüência de acionamento das bobinas no modo “passo completo 1”. ...... 19
Tabela 2.2: Cronograma do TCC. ................................................................................ 37
Tabela 4.1: Lista de peças do hardware mecânico........................................................ 43
Tabela 4.2: Vantagens e desvantagens do uso da estação CuscoPIC. ........................... 47
Tabela 4.3: Lista de peças da estação CuscoPIC. ......................................................... 51
Tabela 4.4: Lista de peças da pseudoponte H. .............................................................. 56
10
RESUMO
Esta é uma monografia apresentada pelos alunos Arthur Webber Balzani e Felipe
Stumm Cachoeira à Escola de Educação Profissional SENAI Porto Alegre que tem
como intuito provar os conhecimentos adquiridos no decorrer do Curso Técnico em
Eletrônica.
O projeto é um sistema de controle para um pêndulo invertido, e consta neste
documento toda a descrição necessária para a implementação do mesmo, partindo da
parte mecânica e alcançando até o firmware que executa o controle.
O Pêndulo Invertido é um processo mecânico absolutamente instável, ou seja, está
sujeito a cair em qualquer direção a menos que uma força adequada seja aplicada ao
carro de suporte da base pêndulo acelerando-o em uma determinada direção.
Palavras-Chave: Equilíbrio, Pêndulo Invertido, Sistemas de Controle.
Control system for an inverted pendulum
ABSTRACT
This is a monograph presented by the students Arthur Balzani Webber and Felipe
Stumm Cachoeira from Professional Education SENAI Porto Alegre School. It is in
order to prove that they have knowledge about Electronics Techniques.
The project is about a control system for an inverted pendulum, and this document is
all the description necessary for the implementation of it, from the mechanical part and
reaching up to the firmware that runs the control.
The inverted pendulum is a mechanical absolutely unstable, or subject to fall in any
direction unless a force is applied properly to the car's base of support pendulum
accelerating it in a certain direction.
Keywords: Equilibrium, Inverted Pendulum, Control System.
1 INTRODUCÃO
O projeto descrito a seguir é uma monografia apresentada à Escola de Educação
Profissional SENAI Porto Alegre. Nela consta toda a documentação do trabalho de
conclusão de curso da dupla de alunos Arthur Webber Balzani e Felipe Stumm
Cachoeira. A monografia está dividida em diversos capítulos que facilitam o
entendimento do projeto, especificando cada etapa.
O projeto descrito nesta monografia enquadra-se na componente prática da UC 42 –
Integração Eletrônica – e consta da construção de um pêndulo invertido sobre uma
plataforma móvel, com controle efetuado por um microcontrolador PIC16F877A.
O problema abordado nesta monografia é o de equilíbrio de um pêndulo invertido
utilizando uma base de um robô móvel com um motor atuante. Este problema requer a
leitura do ângulo do pêndulo e a atuação adequada nas velocidades do motor. O
mecanismo de fixação do pêndulo possui apenas um grau de liberdade no sentido
longitudinal do robô de modo que permita que o motor execute apenas movimentos
lineares. O controlador utilizado para fechar a malha do sistema, isto é, ler o ângulo do
pêndulo e calcular a atuação necessária, recorre a uma unidade de processamento
materializada num microcontrolador. A atuação nos motores faz-se através de um sinal
elétrico com codificação PWM, que deve ser gerado de forma relativamente precisa
pelo microcontrolador, num de seus pinos específicos.
Atualmente existem diversos estudos relacionados a sistemas de controle de pêndulo
invertido, e foi este instigante conceito que despertou nesta dupla de alunos o desejo de
retirar a física do conceito teórico e torná-la prática.
1.1 Objetivos
O projeto tem como objetivos integrar os conceitos abordados ao decorre do curso
nos quatro módulos distintos, sendo eles, Análise de Circuitos Elétricos, Expressão
Gráfica, Manutenção de Circuitos Eletrônicos Analógicos, Sistemas de Controle,
Automação Industrial e por fim a Integração Eletrônica.
1.2 Objetivos Específicos
A implementação deste projeto tem como primordial finalidade comprovar a ciência
dos conceitos aprendidos pela dupla de alunos ao decorrer do curso, com o intuito de
13
receber ao término, mediante a condição de aprovação, o título de Técnico em
Eletrônica.
Consta na implementação, cada um dos estudos realizados nestas unidades
curriculares, conforme descritos a seguir:
Análise de Circuitos Elétricos:
o Noções Gerais de Eletricidade;
o Leis de OHM e Associação de Resistências;
o Circuitos Elétricos;
o Divisor de Tensão e Corrente;
o Leis de Kirchjoff.
Manutenção de Circuitos Eletrônicos Analógicos:
o Diodo Semicondutor;
o Estudo dos Transistores.
Expressão Gráfica:
o Desenho Técnico;
o Ferramentas de Desenvolvimento de Layouts de PCI;
o Confecção de PCI;
o Técnicas de Soldagem PTH.
Sistemas de Controle:
o O Sistema Binário de Numeração;
o Funções Lógicas;
o Álgebra Booleana;
o Conversores Analógico-Digitais;
o Acionamento de Cargas.
Automação Industrial:
o Introdução à Lógica.
Integração Eletrônica:
o Algoritmos;
o Técnicas Básicas de Programação;
14
o Linguagem Assembly;
o Linguagem C;
o Compiladores;
o Microcontroladores;
o Integração de Hardwares Eletrônicos.
15
2 FUNDAMENTAÇÃO TEÓRICA
2.1 Introdução
A implementação deste projeto fundamenta-se na aplicação dos conceitos em
controle e acionamento de motores, funcionamento de sensores, mecânica básica e
fenômenos físicos. A seguir são apresentados os diversos dispositivos eletrônicos que
poderiam ser utilizados no projeto, juntamente com seus prós e contras e exemplos de
aplicação. Aqui também são descritos alguns dos conceitos físicos que foram estudados
para que se tornasse possível à implementação do projeto.
2.2 Descrição
Motores:
Na procura pela melhor opção de fazer com que o autômato mantivesse seu próprio
equilíbrio, discutiu-se diversos tipos de motores, analisando minuciosamente seu
funcionamento.
Constatou-se que os motores CC necessitam de um menor tempo de acionamento, e
devido a este fato, os mesmos também possuem um número maior de RPM quando
comparados com os motores de passo. Geralmente os motores CC têm sua
aplicabilidade nos sistemas onde o quesito precisão, ou seja, posição relativa do eixo do
motor não tem importância e sim apenas a rotação.
O funcionamento básico do motor CC está fundamentado na Força de Lorentz
aplicada em uma carga em movimento dentro de um campo magnético (F = qvB).
Consideremos uma espira de corrente inserida num campo magnético criado por um ímã
permanente, em que há uma corrente criada por uma bateria (fonte CC). De uma forma
simplificada, a simples passagem desta corrente faz com que apareçam duas forças de
sentidos contrários, aplicadas uma em cada lado da espira. Estas forças criam um torque
que, obviamente, faz a espira girar, transformando a energia elétrica da corrente em
energia cinética num eixo acoplado às espiras. A direção da rotação depende da
polaridade da bateria e da direção das linhas de campo magnético criadas pelo ímã.
Conforme fonte: UFRJ.
Existem diversas técnicas para controle deste tipo de motor, desde o controle da
posição do rotor, através de encoders, passando pelo controle de velocidade feito através
de referências fixas no círculo trigonométrico de atuação do rotor, até controle de
acionamento que no caso de nossa aplicação é o que mais interessa.
16
O mais conhecido sistema de controle de acionamento de motores é o Controle
PWM e este pode ser aplicado de duas formas: Via Hardwares Adicionais ou Via
Software.
Alguns microcontroladores já disponibilizam pinos de saída capazes de efetuar este
controle, o que é o caso do PIC16F877A.
Para que se entenda como funciona esta tecnologia no controle de potência, partimos
de um circuito imaginário formado por um interruptor de ação muito rápida e uma carga
que deve ser controlada, de acordo com a Figura 2.1.
Figura 2.1: Exemplo de circuito elétrico para PWM.
Quando o interruptor está aberto não há corrente na carga e a potência aplicada é
nula.
No instante em que o interruptor é fechado, a carga recebe a tensão total da fonte e a
potência aplicada é máxima.
Uma maneira de fazer a carga obter uma potência intermediária é fazermos com que
a chave seja aberta e fechada rapidamente, de modo a ficar 50% do tempo aberta e 50%
fechada. Isso significa que, em média, teremos metade do tempo com corrente e metade
do tempo sem corrente, conforme é apresentado na Figura 2.2.
Figura 2.2: Gráfico da tensão em função do tempo.
A potência média e, portanto, a própria tensão média aplicada à carga é neste caso
50% da tensão de entrada.
Veja que o interruptor fechado pode definir uma largura de pulso pelo tempo em que
ele fica nesta condição, e um intervalo entre pulsos pelo tempo em que ele fica aberto.
Os dois tempos juntos definem o período e, portanto, uma freqüência de controle.
17
A relação entre o tempo em que temos o pulso e a duração de um ciclo completo de
operação do interruptor nos define ainda o ciclo ativo, conforme é mostrado na Figura
2.3.
Figura 2.3: Ciclo ativo.
Variando-se a largura do pulso e também o intervalo de modo a termos ciclos ativos
diferentes, podemos controlar a potência média aplicada a uma carga. Assim, quando a
largura do pulso varia de zero até o máximo, a potência também varia na mesma
proporção, conforme está indicado na Figura 2.4.
Figura 2.4: Potência controlada.
Este princípio é usado justamente no controle PWM: modulamos (variamos) a
largura do pulso de modo a controlar o ciclo ativo do sinal aplicado a uma carga e, com
isso, a potência aplicada a ela. Conforme fonte: Artigo Colégio Politec.
Bons exemplos de aplicação dos motores CC são sistemas de resfriamento de
circuitos eletrônicos e leitores de CD.
18
A Figura 2.5 demonstra um exemplo de motor CC.
Figura 2.5: Motor CC.
Por sua vez, os motores de passo são restringidos quando o assunto se trata de
tempo de acionamento. Estes, pelo fato de possuírem diversas bobinas, devem seguir
um meio específico de acionamento. Seu funcionamento é simples, pois para que o
mesmo seja acionado basta que pulsos seqüenciais sejam gerados às suas entradas.
A Figura 2.6 apresenta o aspecto físico de um motor de passo e suas características.
Figura 2.6: Características e aspecto físico do motor de passo.
A Figura 2.7 apresenta o rotor de um motor de passo.
Figura 2.7: Rotor de um motor de passo.
Existem diversos modos de acionamento dos motores de passo, cada um com um
seqüência lógica distinta.
Um dos mais simples modo de acionamento é o “passo completo 1”, onde a cada
instante de tempo uma bobina por vez é energizada.
19
A Tabela 2.1 apresentada a seguir demonstra a seqüência de bobinas a serem
acionadas por instante de tempo.
Tabela 2.1: Seqüência de acionamento das bobinas no modo “passo completo 1”.
Bobina 1 Bobina 2 Bobina 3 Bobina 4
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
No demonstrativo anterior levamos em consideração apenas um sentido de rotação,
para que este seja invertido, basta que as bobinas sejam acionadas da mesma forma
(uma por vez) de maneira contrária. Conforme referido no site
http://br.geocities.com/gedaepage/Doc/MP_5fios.htm.
Motores de passo são amplamente utilizados para controles precisos onde se tem
como variável a posição de um braço mecânico ou de um scanner óptico por exemplo.
Por último temos os motores AC, estes como o próprio nome sugere necessitam de
fontes de tensão alternada. São geralmente utilizados quando não existe a necessidade
de conversão de tensão alternada em tensão contínua.
Exemplos de aplicabilidade dos motores AC são ventiladores, aparelhos
eletrodomésticos (liquidificadores, batedeiras, microondas)...
A Figura 2.8 apresenta um motor AC em seu aspecto físico.
Figura 2.8: Motor AC.
Sensores:
Para que seja possível manter o equilíbrio do autômato em relação ao eixo
gravitacional da Terra, estudamos diversos tipos de sensores. Desde sensores ópticos de
reflexão passando por sonares, capacitivos, indutivos, giroscópios, acelerômetros, etc.
Será apresentado a seguir o funcionamento dos sensores descritos anteriormente,
bem como exemplos de aplicações.
Os sonares propagam uma onda eletromagnética na velocidade do som em diversas
direções. A detecção de corpos sólidos é dada quando este se coloca dentro do campo
20
abrangido pela onda fazendo com que esta seja refletida novamente em direção ao
sensor. Estes sensores são pouco utilizados devido ao fato de difícil implementação,
possuir precipitação na resposta do terreno, alto valor de mercado e em algumas
aplicações possuírem uma resposta muito lenta, na faixa dos 300m/s. Informações
publicadas no site http://devices.sapp.org/component/sonar/.
A Figura 2.9 apresenta o aspecto físico do sonar.
Figura 2.9: Sensor sonar.
Os sensores ópticos da mesma forma que os sonares emitem ondas em diversas
direções, no entanto, estas ondas são eletromagnéticas. São de alta aplicabilidade,
porém possui como restrições o fato de os mesmos não refletirem em superfícies
escuras, serem muito rápidos no quesito resposta e também por possuírem o mesmo
problema de precipitação de resposta de terreno dos sonares. Informações referidas no
site http://www.eletrohoo.com.br/site/componentes/sensores/tipos.asp.
A Figura 2.10 apresenta o aspecto físico dos sensores ópticos reflexivos.
Figura 2.10: Sensor óptico.
Os sensores capacitivos operam baseados no princípio da capacidade eletrostática de
maneira similar às placas de um capacitor. O oscilador e o elétrodo produzem um
campo eletrostático. O alvo (objeto a ser detectado) age como uma segunda placa do
capacitor. Um campo elétrico é produzido entre o alvo e o sensor. Como a amplitude da
oscilação aumenta, há um aumento da tensão do circuito do oscilador, e o circuito de
detecção responde mudando o estado do sensor (ligando-o). Conforme fonte: UFJF.
Pelo fato da distância mínima para o fechamento dos contatos ser muito pequena,
tornam sua aplicação muito restrita.
21
A Figura 2.11 apresenta o aspecto físico do sensor capacitivo.
Figura 2.11: Sensor capacitivo.
Os indutivos funcionam semelhantemente aos capacitivos, porém seu campo
eletromagnético é deformado somente quando existe presença de corpos metálicos. Por
funcionarem apenas sob superfícies metálicas sua aplicabilidade também é restrita.
Conforme fonte: UFJF.
A Figura 2.12 apresenta o aspecto físico do sensor indutivo.
Figura 2.12: Sensor indutivo.
Por fim os acelerômetros, estes medem o ângulo de movimento em relação ao seu
estado original e fornecem a aceleração necessária para o corpo a qual o mesmo está
fixado manter-se estável. Conforme mencionado no site
http://pt.wikipedia.org/wiki/Aceler%C3%B4metro.
A Figura 2.13 apresenta o aspecto físico do acelerômetro.
Figura 2.13: Acelerômetro.
Os giroscópios funcionam baseados no princípio da inércia. São constituídos de um
rotor suspenso por um suporte formado por dois triângulos articulados com juntas do
tipo cardan. O eixo de rotação guarda a direção fixa em relação ao espaço. Conforme
fonte: Educacional. Acelerômetros e giroscópios não são encontrados em mercado no
Brasil, sendo somente adquirido no exterior, o que eleva demasiadamente o seu custo.
22
A Figura 2.14 apresenta o aspecto físico do giroscópio.
Figura 2.14: Giroscópio.
Tendo ciência de que a primordial preocupação era saber se o autômato estava em
equilíbrio de acordo com o eixo gravitacional da Terra, levantou-se diversos estudos
físicos para se buscar métodos de desenvolver um sensor que indicasse a posição do
mesmo. Dentre eles, estão os relacionados a equilíbrio, inércia, massa, contrapeso e
finalmente pêndulo. A seguir está descrito cada um dos estudos citados.
Equilíbrio:
Existem diversos tipos de equilíbrio, dentre eles os que mais interessam a este
projeto são: Equilíbrio Postural e Equilíbrio Estático.
Equilíbrio Postural - trata-se da compensação de forças que se anulam sobre
um corpo, essa teoria se comprova quando se assume equilíbrio como sendo a posição
estável de um corpo em repouso.
Equilíbrio Estático - é o estado no qual se encontra um corpo quando sua
velocidade vetorial é nula. O corpo está em repouso seja pela velocidade (V = 0) ou pela
força resultante (FR = 0).
Essa teoria está fundamentada na Segunda Lei de Newton, que diz que F = m.a,
sendo:
F = Força (N);
m = Massa (kg);
a = Aceleração (m/s2).
Admitindo a aceleração como “0” tem-se, F = 0.
Fonte de pesquisa: Curso de Física Volume 1 (vide Referências).
Inércia:
Inércia talvez seja um dos conceitos físicos mais simples de ser compreendido,
segundo a Primeira Lei de Newton:
"Todo corpo isento da ação de forças externas ou sujeito a um sistema de forças de
resultante nula, estará em repouso ou estará executando movimento retilíneo e
uniforme”.
23
Ou seja, de uma maneira mais popular, se um corpo está em repouso, à tendência do
mesmo é continuar em repouso, se está em movimento, à tendência é que o mesmo
continue em movimento exatamente na mesma velocidade em que se encontrava, toda e
qualquer tentativa de tirá-lo desta situação sofre uma brusca imposição.
Abaixo segue um dos exemplos mais conhecidos deste ramo da física.
Sobre uma mesa, encontra-se uma bela pilha com peças de jogar damas. Com o
bordo largo de uma régua (largura não superior à espessura da “pedra”), é dado um
golpe seco na peça inferior. Esta será expulsa da pilha sem que as demais sequer
oscilem.
Este fenômeno se explica no fato do tempo de atuação da força sobre o corpo. É o
mesmo motivo que faz com que, se depositarmos uma pequena pedra sobre o vidro, este
não se rompe, no entanto se abandonarmos a pedra de certa altura, o vidro poderá se
estilhaçar.
A Figura 2.15 ilustra o exemplo dado.
Figura 2.15: Exemplo de caso de inércia.
Fonte de pesquisa: Curso de Física Volume 1 (vide Referências).
Massa
Ao contrário de inércia, massa faz parte do grupo de conceitos físicos mais difíceis
de ser definido, na verdade, o conceito de massa sozinho, ainda não possui explicação.
Atualmente este é um conceito usado em ciências naturais para explicar vários dos
fenômenos que se observa na natureza, ela é freqüentemente associada ao peso dos
objetos, o que não deixa de estar certo, mas também não deixa de estar errado. Tudo
depende da aplicação a qual está sendo analisado, o fato é que esta não é uma
explicação completamente elucidativa.
Em acordo com o paradigma científico moderno, o peso de um objeto resulta da
interação gravitacional entre sua massa e um campo gravitacional: ao passo que a massa
é parte integrante da explicação para o peso, e este é o conceito que foi adotado para
desenvolver uma solução para o problema de equilíbrio do autômato.
Fonte de pesquisa: Curso de Física Volume 1 (vide Referências).
24
Contrapeso
Em uma linguagem popular, contrapeso nada mais é do que um corpo utilizado, com
a ajuda da gravidade, para levantar, sustentar, ou até mesmo jogar objetos geralmente
mais leves.
O princípio de contrapeso é facilmente compreendido quando analisamos uma
antiga construção da artilharia medieval chamada de “trebuchet”.
A trebuchet é uma arma no estilo “catapulta”, constituída por um sistema de
alavanca que possui um ponto de apoio, um braço que por sua vez tem um lado mais
longo que o outro, um projétil preso a um elástico que se encontra na base do braço
maior e um contrapeso ligado ao braço menor.
Sendo assim, em sua posição inicial, o trebuchet tem em seu contrapeso armazenada
uma quantidade “x” de energia potencial. Quando o contrapeso é solto, essa energia
potencial se transforma em cinética, fazendo com que o braço da alavanca se mova em
um movimento circular. O elástico preso a base do braço maior se move juntamente
com a alavanca, impulsionando o projétil em um lançamento oblíquo. Esse movimento
funciona com o conceito da aceleração tangencial, fazendo assim o projétil adquirir
maior força, sendo eficaz em campos de batalha.
A Figura 2.16 apresenta uma miniatura da “trebuchet”.
Figura 2.16: “Trebuchet”.
Trazendo este conceito a nossa realidade, fica evidentemente fácil perceber que
quanto maior a força estabelecida na parte superior do autômato, maior é a
probabilidade do mesmo entrar em desequilíbrio, pois qualquer mínima aceleração que
seja aplicada ao corpo do autômato, faz com que a energia potencial armazenada nos
componentes que causam peso se transforme em energia cinética levando o topo do
carro a superfície.
Então, baseado nas descobertas da periodicidade do movimento pendular feitas por
Galileu Galilei, onde o mesmo fundamentou sua teoria nos conceitos de força peso e
movimento oscilatório, chegamos à conclusão de que seria possível implementar um
arranjo de sensores envolvendo o conceito de pêndulo. Conforme fonte: UFPB.
O funcionamento do pêndulo é simples, consiste em uma massa presa a um ponto
fixo que executa movimentos oscilatórios alternados em torno da posição central.
25
A Figura 2.17 apresentada a seguir, demonstra o pêndulo juntamente com as forças
atuantes sobre ele.
Figura 2.17: Pêndulo.
Este talvez seja um dos mais simples meios de controlar a posição do autômato. O
sensor juntamente com seu funcionamento está descritos no item 4.2.2.2.2 – Sensores.
Mecânica Básica:
Em virtude de adquirir maior torque para o motor utilizado, sabendo que torque nada
mais é que a capacidade que o motor possui de desenvolver força, construímos um
arranjo de engrenagens. O cálculo para dimensionamento das mesmas é apresentado a
seguir.
Tendo em mente que a razão entre o número de dentes nas rodas é diretamente
proporcional à razão de torque e inversamente proporcional à razão das velocidades de
rotação, por exemplo, se a coroa (a roda maior) tem o dobro de dentes do pinhão, o
torque da engrenagem é duas vezes maior que o do pinhão, ao passo que a velocidade
deste é duas vezes maior que a da coroa, chegamos à seguinte conclusão:
n2/n1 = z1/z2
onde:
z1= número de dentes da engrenagem 1
z2= número de dentes da engrenagem 2
n1= número de RPM da engrenagem 1
n2= número de RPM da engrenagem 2
26
A Figura 2.18 apresenta uma relação de engrenagens.
Figura 2.18: Engrenagens.
Conforme referido no site http://www.tiosam.net/enciclopedia/?q=Roda_dentada.
2.3 Estado da Arte
Atualmente o que há de melhor no controle de pêndulo invertido é o mundialmente
conhecido veículo de transporte fabricado pela empresa Segway Inc.®, este constituído
de uma plataforma fixa e duas rodas responsáveis pelo transporte. Um arranjo de
sensores é responsável pelo controle do equilíbrio do veículo.
Quando se fala em sensores para este tipo de aplicação é indispensável citar os
famosos acelerômetros e giroscópios, sensores que estão em alta no mercado. São
amplamente utilizados para orientação de pilotos automáticos de aviões, navegações em
navios e até mesmo celulares e relógios. Os mais completos acelerômetros medem a
relação da posição geométrica em três dimensões. São os responsáveis por orientar o
veículo de sua posição em relação ao eixo gravitacional da Terra.
Por sua vez, os giroscópios fazem o papel de medir a rotação em cada uma das
dimensões e informar ao cérebro do veículo que o usuário está tendendo a virar.
Um dos primeiros modelos da Segway Inc.® foi o Segway PT i2, este com
capacidade de transporte de apenas um usuário, mas atualmente já estão sendo
comercializados modelos capazes de transportar até mesmo dois usuários, este fruto de
uma união entre as empresas Segway Inc.® e General Motors®.
A Figura 2.19 apresenta o modelo Segway PT i2:
Figura 2.19: Modelo Segway para uma pessoa.
27
A Figura 2.20 apresenta o modelo capaz de transportar dois usuários:
Figura 2.20: Modelo Segway para duas pessoas.
28
3 METODOLOGIA
3.1 Introdução
O trabalho será dividido em seis etapas distintas, sendo cada etapa constituída de um
número específico de atividades. É importante ressaltar que cada etapa possuíra metas a
serem atingidas e que as mesmas serão cumpridas conforme o cronograma apresentado
na página 37. A seguir será descrita cada etapa de trabalho individualmente.
A metodologia foi desenvolvida para que fosse tomada ciência do que seria
necessário para projetar e executar o projeto do trabalho de conclusão curso.
3.2 Descrição
3.2.1 Primeira etapa: Projeto
A primeira etapa é constituída da concepção do projeto, onde será definido o que
será criado e quais conceitos irão ser atingidos com a conclusão do mesmo.
Atividades que fazem parte da primeira etapa:
3.2.1.1 Estudar e debater idéias individuais;
o Arthur W. Balzani;
o Felipe S. Cachoeira.
3.2.1.2 Pesquisar a viabilidade do projeto escolhido;
o Arthur W. Balzani.
3.2.1.3 Propor o projeto escolhido;
o Felipe S. Cachoeira.
29
3.2.1.4 Fundamentar a teoria;
o Arthur W. Balzani;
o Felipe S. Cachoeira.
3.2.1.5 Criar a metodologia de desenvolvimento.
o Arthur W. Balzani;
o Felipe S. Cachoeira.
Meta a ser atingida na primeira etapa:
A meta a ser atingida com a conclusão da primeira etapa é ter uma idéia concreta do
projeto a ser apresentado, ciente de sua viabilidade e ter uma metodologia para dar
início ao mesmo.
Indicador de desempenho:
O indicador de desempenho desta etapa são as atividades e a meta discriminadas
acima concluídas com sucesso, sendo o projeto aceito pela comissão julgadora.
Recursos técnicos utilizados para a conclusão da etapa:
Biblioteca da Escola de Educação Profissional SENAI Porto Alegre;
Livros;
Computador portátil pessoal;
Internet banda larga disponibilizada pela Escola de Educação Profissional
SENAI Porto Alegre.
3.2.2 Segunda etapa: Mecânica
Nesta etapa iremos definir as atividades que irão fazer parte da elaboração e
construção da mecânica do projeto. A mecânica dará vida ao projeto, irá fazer com que
este saia do papel e torne realidade.
Atividades que fazem parte da segunda etapa:
3.2.2.1 Pesquisar teoria e estudo de conceitos:
Sistemas de engrenagens;
Pêndulo de Galileu Galilei;
Equilíbrio;
Física Mecânica;
Marcenaria;
Inércia;
Massa;
30
Contra Peso.
o Arthur W. Balzani;
o Felipe S. Cachoeira.
3.2.2.2 Elaborar o Projeto;
o Felipe S. Cachoeira.
3.2.2.3 Homologar os componentes que constituem a mecânica;
o Arthur W. Balzani.
3.2.2.4 Construir a mecânica;
o Arthur W. Balzani.
3.2.2.5 Testar mecânica;
o Felipe S. Cachoeira;
Meta a ser atingida na segunda etapa:
A meta a ser atingida com a conclusão da segunda etapa é ter em mãos a estrutura
mecânica que será responsável por abrigar o hardware.
Indicador de desempenho:
O indicador de desempenho desta etapa são as atividades e a meta discriminadas
acima concluídas com sucesso, tendo a estrutura mecânica concluída com sucesso em
pleno funcionamento.
Recursos técnicos utilizados para a conclusão da etapa:
Livros de mecânica aplicada e física;
Computador portátil pessoal;
Internet banda larga disponibilizada pela Escola de Educação Profissional
SENAI Porto Alegre.
Materiais para desenho técnico:
Folha A4;
Folha quadriculada;
Régua;
Transferidor;
Esquadro;
Compasso;
Lapiseira 0.9;
Softwares CAD;
31
Impressora;
Ferramentas para construção da estrutura em madeira:
Furadeira;
Serra copo;
Serra circular;
Esquadro;
Lápis para carpintaria;
Formão;
Martelo;
Parafusadeira;
Régua;
Ferramentas para construção do sistema de engrenagens:
Serra para cortar ferro;
Alicate universal;
Chave de boca nº14;
Materiais para integração da estrutura em madeira e sistema de engrenagens:
2,70m x 15mm x 20mm de madeira de pinos;
28 Parafusos;
01 fuso de 1m;
16 porcas compatíveis ao fuso;
07 rolamentos;
01 engrenagens 30mm de diâmetro;
04 engrenagens de 40mm de diâmetro;
02 rodas;
Tinta preta acrílica esmalte sintético;
01 Motor de corrente contínua.
3.2.3 Terceira etapa: Hardware
Nesta etapa iremos definir as atividades que irão fazer parte da elaboração e
construção do hardware do projeto. O hardware será responsável por controlar a
estrutura mecânica, fazendo com que a mesma mantenha seu próprio equilíbrio de
acordo com o eixo gravitacional da Terra.
32
Atividades que fazem parte da terceira etapa:
3.2.3.1 Pesquisar teoria e estudo de conceitos:
Funcionalidade da IDE CuscoPIC®;
Controle de motores CC;
Funcionamento de dislpays;
Sensores;
o Arthur W. Balzani;
o Felipe S. Cachoeira.
3.2.3.2 Analisar custos;
o Felipe S. Cachoeira.
3.2.3.3 Adquirir a IDE CuscoPIC®
;
o Arthur W. Balzani;
o Felipe S. Cachoeira.
3.2.3.4 Montar a IDE CuscoPIC®
;
o Arthur W. Balzani.
3.2.3.5 Conferir a montagem da IDE CuscoPIC®
;
o Felipe S. Cachoeira;
3.2.3.6 Testar a IDE CuscoPIC®
;
o Arthur W. Balzani;
o Felipe S. Cachoeira.
3.2.3.7 Projetar PseudoPonte H;
o Felipe S. Cachoeira.
3.2.3.8 Homologar os componentes adicionais que constituem o hardware;
o Felipe S. Cachoeira.
3.2.3.9 Adquirir os componentes que constituem o hardware;
o Arthur W. Balzani;
o Felipe S. Cachoeira.
33
3.2.3.10 Construir o pêndulo eletrônico;
o Felipe S. Cachoeira.
3.2.3.11 Testar o funcionamento do pêndulo eletrônico;
o Arthur W. Balzani.
3.2.3.12 Construir PseudoPonte H;
o Arthur W. Balzani.
3.2.3.13 Revisar PseudoPonte H construída;
o Felipe S. Cachoeira.
Meta a ser atingida na terceira etapa:
A meta a ser atingida com a conclusão da terceira etapa é ter adquirido e concluído a
montagem do hardware.
Indicador de desempenho:
O indicador de desempenho desta etapa são as atividades e a meta discriminadas
acima concluídas com sucesso, tendo o hardware concluído com sucesso em pleno
funcionamento.
Recursos técnicos utilizados para a conclusão da etapa:
Computador portátil pessoal;
Internet banda larga disponibilizada pela Escola de Educação Profissional
SENAI Porto Alegre.
Livros e Datasheets;
Laboratório e ferramentas disponibilizados pela Escola de Educação
Profissional SENAI Porto Alegre;
Ferramentas e materiais para montagem da IDE CuscoPIC®;
o Estação de solda;
o Soldador;
o Estanho;
o Sugador de solda;
o Alicate de bico;
o Alicate de corte;
o Pinça;
o Álcool isopropílico;
o Escova anti estática;
o Lupa;
34
o Suporte para PCI;
Equipamentos para teste de hardware:
o Fonte de alimentação CC regulável;
o Multímetro;
o Osciloscópio;
Materiais para construção do pêndulo eletrônico:
o 1000mm de fio de cobre 3mm;
o Cola Epóxi;
Construção da PseudoPonte H:
o PCI virgem 100x100mm;
o Percloreto de Ferro;
o Caneta retroprojetora;
o Prensa;
o Impressora Laser;
o Papel glossy;
o Software de elaboração de PCI – Altium Designer 6;
3.2.4 Quarta etapa: Firmware
Nesta etapa iremos definir as atividades que irão fazer parte da programação do
firmware do projeto. O firmware é o programa que será instalado no microcontrolador
PIC16F877A, tendo este o objetivo de comandar o hardware na função de manter o
equilíbrio do autômato.
Atividades que fazem parte da quarta etapa:
3.2.4.1 Pesquisa teórica e estudo de conceitos:
Funcionamento do PIC16F877A;
Programação em Assembly;
Programação em C;
Funcionamento da IDE MPLAB;
Comunicação serial:
o RS232;
Algoritmos;
Fluxogramas;
35
o Arthur W. Balzani;
o Felipe S. Cachoeira.
3.2.4.2 Desenvolver o fluxograma do problema;
o Felipe S. Cachoeira.
3.2.4.3 Analisar o fluxograma desenvolvido;
o Arthur W. Balzani.
3.2.4.4 Transformar o fluxograma em linguagem de programação C;
o Arthur W. Balzani.
3.2.4.5 Analisar o código fonte desenvolvido;
o Felipe S. Cachoeira.
3.2.4.6 Instalar o firmware no microcontrolador PIC16F877A e efetuar os testes de
funcionamento;
o Felipe S. Cachoeira.
Meta a ser atingida na quarta etapa:
A meta a ser atingida com a conclusão da quarta etapa é ter concluído com eficácia o
fluxograma e o código fonte gerado em linguagem de programação C.
Indicador de desempenho:
O indicador de desempenho desta etapa são as atividades e a meta discriminadas
acima concluídas com sucesso, e o firmware em pleno funcionamento instalado no
microcontrolador.
Recursos técnicos utilizados para a conclusão da etapa:
Computador portátil pessoal;
Internet banda larga disponibilizada pela Escola de Educação Profissional
SENAI Porto Alegre.
Livros e Datasheets;
Laboratório e ferramentas, disponibilizados pela Escola de Educação
Profissional SENAI Porto Alegre;
IDE CuscoPIC®
;
Software MPLAB;
3.2.5 Quinta etapa: Integração
Nesta etapa iremos definir as atividades que irão fazer parte da integração do
firmware, do hardware e da mecânica. A integração é a parte de instalar o firmware no
microcontrolador, sendo este acomodado no hardware que tem como objetivo de
36
controlar a mecânica fazendo esta equilibrar-se de acordo com o eixo gravitacional da
Terra.
Atividades que fazem parte da quinta etapa:
3.2.5.1 Integrar o microcontrolador ao hardware;
o Felipe S. Cachoeira.
3.2.5.2 Integrar o hardware a mecânica;
o Arthur W. Balzani.
3.2.5.3 Elaborar plano de testes;
o Felipe S. Cachoeira.
3.2.5.4 Efetuar os testes;
o Arthur W. Balzani;
o Felipe S. Cachoeira.
Meta a ser atingida na quinta etapa:
A meta a ser atingida com a conclusão da quinta etapa é concluir com plena eficácia
a integração das etapas 2, 3 e 4, tendo o projeto em mãos para ser posto em
funcionamento como previsto na etapa 1.
Indicador de desempenho:
O indicador de desempenho desta etapa são as atividades e a meta discriminadas
acima concluídas com sucesso, e o autômato em íntegro funcionamento.
Recursos técnicos utilizados para a conclusão da etapa:
Computador portátil pessoal;
Internet banda larga disponibilizada pela Escola de Educação Profissional
SENAI Porto Alegre.
Datasheets;
Laboratório e ferramentas, disponibilizados pela Escola de Educação
Profissional SENAI Porto Alegre;
3.2.6 Sexta etapa: Documentação
Nesta etapa iremos definir as atividades que irão fazer parte da documentação do
projeto.
Atividades que fazem parte da sexta etapa:
37
3.2.6.1 Elaborar relatório final;
o Felipe S. Cachoeira.
o Arthur W. Balzani.
Meta a ser atingida na sexta etapa:
A meta a ser atingida com a conclusão da sexta etapa é entregar concluído o
Trabalho de Conclusão de Curso, em perfeito funcionamento.
Indicador de desempenho:
O indicador de desempenho desta etapa são as atividades e a meta discriminadas
acima concluídas com sucesso, e o diploma de técnico em eletrônica concedido pela
Escola de Educação Profissional SENAI Porto Alegre.
Recursos técnicos utilizados para a conclusão da etapa:
Computador portátil pessoal;
Internet banda larga disponibilizada pela Escola de Educação Profissional
SENAI Porto Alegre.
3.3 Cronograma
A Tabela 2.2 apresenta o cronograma do trabalho de conclusão de curso
desenvolvido.
Tabela 2.2: Cronograma do TCC.
Etapa Tarefa Previsto Realizado
1 Iniciar relatório final 23/03 08/06
2 Projetar hardware mecânico 27/03 26/03
3 Construir hardware mecânico 03/04 05/04
4 Efetuar testes de funcionamento 08/04 04/05
5 Pesquisa Teórica 09/04 09/04
6 Definir sensores 10/04 05/04
7 Estudo do funcionamento dos motores CC 17/04 09/04
8 Estudo do funcionamento dos
microcontroladores
Encerramento da UC-
42
9 Projetar circuito eletrônico 24/04 25/04
10 Efetuar testes de funcionamento 15/05 05/06
11 Adquirir componentes 23/05 29/06
38
12 Projetar apresentação final 29/05 22/06
13 Desenvolver PCI 29/05 03/06
14 Soldar os componentes à PCI 30/05 04/06
15 Integrar hardware mecânico e
eletrônico 05/06
10/06
16 Efetuar testes 12/06 24/06
17 Término do relatório final 18/06 25/06
18 Entrega do TCC concluído 19/06 07/07
39
4 DESENVOLVIMENTO
4.1 Mecânica
4.1.1 Introdução
Nesta etapa do projeto serão descritas a projeção, elaboração e construção do projeto
mecânico. O projeto foi divido em três partes distintas, sendo elas a torre, a base e o
sistema de locomoção. A seguir será apresentada a definição de cada etapa, bem como
os materiais e ferramentas utilizados, os custos para a construção e as fotos
demonstrando passo a passo a montagem do autômato.
4.1.2 Descrição
Toda a mecânica foi concebida em madeira, devido a seu baixo custo e fácil
manuseio. O tipo de madeira utilizada se chama Pinos e pode ser encontrada facilmente.
Abaixo é descrita cada etapa da construção da mecânica.
4.1.2.1 Torre
A torre é constituída por uma plataforma de 150x150x15mm responsável por
acomodar a IDE CuscoPIC® e suportar o pêndulo eletrônico utilizado como sensor e
também por quatro pilares de sustentação de 270x25x20mm que fazem a ligação entra a
plataforma e a base do hardware.
A Figura 4.1 apresenta a torre em sua totalidade.
40
Figura 4.1: Torre.
Fixado à plataforma na parte inferior, encontra-se duas acomodações projetadas para
sustentar o sensor. Em uma delas está preso o potenciômetro e na outra um rolamento.
As duas estão interligadas por um eixo rotativo do próprio potenciômetro, este que
sustenta o pêndulo, feito de fio de cobre de tamanho 140x3mm e cola epóxi. Na
extremidade inferior do pêndulo contrária ao eixo do potenciômetro está fixado um
encoder feito de fenolite.
A Figura 4.2 apresenta a estrutura mecânica do sensor.
Figura 4.2: Sensor.
41
Para fixar a plataforma aos pilares foram utilizados 4 parafusos de 40x3mm. Para
fixar as acomodações que sustentam o sensor foram utilizados mais 4 parafusos de
mesmo tamanho. Para fixar a IDE CuscoPIC® foram utilizados 3 parafusos de 3x3mm e
3 espaçadores.
Os pilares também são responsáveis por conduzir os fios de alimentação e controle
do hardware à base, estes fixados através de lacres.
4.1.2.2 Base
A base é constituída de uma plataforma de tamanho 95x120x15mm que sustenta em
sua parte inferior a fonte de tensão contínua, neste caso uma bateria de dimensões
98x45x56mm que serve como contrapeso para o autômato, e duas acomodações para os
rolamentos dos eixos secundários. Em torno desta base existem duas paredes laterais de
tamanho 128x90x15mm, uma parede frontal e uma parede traseira de tamanho
120x90x15mm.
A Figura 4.3 apresenta a plataforma e as acomodações presas a ela.
Figura 4.3. Plataforma da base.
Nas paredes laterais estão embutidos dois rolamentos, estes utilizados para fixar o
eixo primário, é nas laterais que também está preso o motor CC responsável por
controlar as rodas que mantêm o autômato em equilíbrio.
Na parede frontal situam-se dois bornes que facilitam o carregamento da fonte de
tensão contínua.
Na parede traseira, no lado interno da base, está fixada a pseudoponte H, esta
responsável por realizar o acionamento do motor. A mesma é controla pela IDE
CuscoPIC®. (A pseudoponte H será estudada detalhadamente no Capítulo do Hardware
Desenvolvido).
42
A Figura 4.4 apresenta a base em sua totalidade.
Figura 4.4: Base.
Para fixar as laterais foram utilizados 8 parafusos de tamanho 40x3mm, para fixar
a plataforma às quatro paredes foram utilizados mais 4 parafusos, as acomodações
situadas na parte inferior da plataforma foram presas também através de 4 parafusos.
Por último as acomodações das rodas que são fixadas na parte inferior das laterais por 4
parafusos. É importante ressaltar que os pilares que sustentam a plataforma da IDE
CuscoPIC® são presos à plataforma da base cada um através de um parafuso 40xmm.
4.1.2.3 Sistema de Locomoção
O sistema de locomoção é constituído de 3 fusos, dois fazem parte do eixo
secundário e possuem tamanho 130x10mm e 1 faz parte do eixo primário e possui
tamanho 170x10mm.
No eixo do motor está fixada uma engrenagem de 30mm de diâmetro que faz
relação com apenas uma das duas fixadas nas extremidades do fuso no eixo primário de
37mm.
Cada roda está presa a um dos fusos que fazem parte do eixo secundário, em cada
um destes fusos existe uma engrenagem de mesmo diâmetro daquelas presas ao eixo
primário. As engrenagens dos fusos onde se encontram as rodas fazem relação direta
com as engrenagens de cada extremidade do eixo primário.
Sendo assim, quando acionamos o motor, o mesmo relaciona seu eixo com o eixo
primário e conseqüentemente com o eixo secundário, girando as rodas.
O eixo primário está fixado nas laterais da base, preso através de rolamentos, o que
permite que o mesmo entre em rotação ainda que fixado.
Mais quatro rolamentos foram utilizados para fixar as rodas, um rolamento situado
em cada um dos fusos do eixo secundário. Estes rolamentos, bem como as engrenagens
que constituem o sistema de locomoção, estão presos em suas devidas posições através
de porcas. Ao total, 16 porcas foram utilizadas.
43
A Figura 4.5 apresenta o sistema de locomoção em sua totalidade.
Figura 4.5: Sistema de locomoção.
4.1.3 Lista de Peças
A Tabela 4.1 apresenta os itens adquiridos para construção da mecânica, juntamente
com sua descrição, quantidade, valor unitário e valor total.
Tabela 4.1: Lista de peças do hardware mecânico.
Item Descrição Quant. Valor Unitário
(R$)
Valor Total
(R$)
01 2,70 x 0,15 x 0,015m de Madeira
Pinos 01 4,76 4,76
02 Parafuso 40 x 3mm auto-
tarrachante 28 0,15 4,20
03 Parafuso 3 x 3mm auto-
tarrachante 06 0,05 0,30
04 Parafuso 40 x 3mm com porca 02 0,40 0,80
05 Porca 3mm de diâmetro 04 0,20 0,80
06 Fuso 1 x 0,01m 01 8,00 8,00
07 Porca 1mm de diâmetro 16 0,50 8,00
08 Rolamento 10 x 26mm 06 4,00 24,00
09 Engrenagem 30mm de diâmetro 01 2,00 2,00
10 Engrenagem de 37mm de
diâmetro 04 2,00 8,00
11 Roda 02 2,00 4,00
44
12 Borne 02 4,00 8,00
13 Bateria 12V – 1,3Ah 01 39,00 39,00
4.1.4 Desenho Mecânico
A Figura 4.6 apresenta o desenho mecânico da torre juntamente com suas
respectivas medidas.
Figura 4.6: Desenho mecânico da torre.
A Figura 4.7 apresenta o desenho mecânico da acomodação construída para suportar
o potenciômetro na parte inferior da plataforma da torre, juntamente com suas
respectivas medidas.
Figura 4.7: Acomodação do potenciômetro.
45
A Figura 4.8 apresenta o desenho mecânico da acomodação construída para suportar
o rolamento que sustenta o eixo giratório do pêndulo na parte inferior da plataforma da
torre, juntamente com suas respectivas medidas.
Figura 4.8: Acomodação do rolamento.
A Figura 4.9 apresenta o desenho mecânico das quatro paredes da base juntamente
com suas respectivas medidas.
Figura 4.9: Paredes da base.
A Figura 4.10 apresenta o desenho mecânico da plataforma da base juntamente com
suas respectivas medidas.
Figura 4.10: Desenho mecânico da plataforma da base.
46
A Figura 4.11 apresenta o desenho mecânico das acomodações das rodas e dos
rolamentos do eixo secundário juntamente com suas respectivas medidas.
Figura 4.11: Acomodações.
4.2 Hardware
4.2.1 Plataforma de Desenvolvimento
4.2.1.1 Introdução
Nesta etapa do projeto será descrito a plataforma de hardware utilizada na
implementação do trabalho de conclusão de curso, que em nosso caso se trata da IDE
CuscoPIC®. A seguir está descrita sua origem, bem como os componentes que a
constituem e seus valores.
4.2.1.2 Descrição
A IDE CuscoPIC® é uma plataforma de hardware desenvolvida pelo instrutor de
educação profissional de ensino técnico – Daniel Corteletti. Trata-se de uma estação
para programação de microcontroladores de baixo custo.
O hardware atualmente comercializado já está na versão 4.0 e permanece
praticamente estável. Nele é possível programar e gravar microcontroladores das séries
16F e 18F. Seu lançamento se deu no ano de 2005 e hoje os investimentos em
desenvolvimento são feitos nos periféricos e na organização dos materiais.
O objetivo desta plataforma é primordialmente incentivar novas tecnologias, onde o
aluno pode não somente praticar seus exercícios, mas também desenvolver novas idéias,
unindo seus conhecimentos de programação, eletrônica, eletricidade, instrumentação e
computação, tudo isso num menor espaço de tempo e com baixíssimo custo.
A Tabela 4.2 apresenta as vantagens e desvantagens do uso da estação CuscoPIC®.
47
Tabela 4.2: Vantagens e desvantagens do uso da estação CuscoPIC®.
Vantagens Desvantagens
Baixo custo. Necessita ser montada, o que pode gerar alguns erros.
Programada em baixo nível. Exige maior domínio e conhecimento de
programação.
Muitos periféricos integrados. Não indicado o uso em ambientes onde há muito ruído
externo elétrico.
Integração entre conceitos de
eletroeletrônica, computação e
programação.
É necessário um domínio mínimo de conceitos de
eletrônica para montar a estação, bem como
conhecimento de programação e habilidade para
utilizar o computador.
A estação ainda disponibiliza como recurso uma IHM que é conectada ao hardware
principal através dos pinos de saída do porto B por um cabo “flat” de 26 vias, nela
consta um display de 16 caracteres e 2 linhas e um teclado matricial 3x4 que você pode
demonstrar ao usuário o fluxo do programa e também permitir que o mesmo interaja
com seu hardware. Os outros componentes que constituem a IHM serão apresentados na
tabela de componentes a seguir.
O hardware é alimentado diretamente pela bateria situada na parte inferior da base
do autômato que fornece ao circuito uma tensão de alimentação de 12V contínuo. A
faixa de tensão necessária para alimentação é de 5.5V a 25V, porém quando se torna
necessário à gravação de programas o circuito necessita de no mínimo 13V de pico de
tensão.
A gravação de programas no microcontrolador pode ser dada por três formas:
Gravação Tradicional – Através da Porta Paralela;
Gravação Através da Porta Serial;
Gravação tradicional – Através da porta USB.
Gravação Tradicional Através da Porta Paralela:
Neste caso, utiliza-se o gravador TAIT CLASSIC modificado que está incorporado à
placa principal da CuscoPIC.
É necessário:
Cabo de gravação paralelo – Figura 4.12.
48
Figura 4.12: Cabo de gravação paralelo.
Porta paralela física no PC (não funciona com adaptadores USB/LPT) –
Figura 4.13.
Figura 4.13: Porta paralela física no PC.
Fonte de alimentação 12V não estabilizada.
Software de gravação adequado. Existem diversos softwares que permitem a
gravação usando a porta paralela, os principais programas de gravação
suportados são: EPIC 2.44 beta, EPIC 3.3 beta, IC-PROG e WINPIC800.
Todos os softwares citados são facilmente encontrados na web e podem ser
baixados gratuitamente, alguns fornecem até mesmo um “mini-manual” para
uso rápido. Dependendo do programa usado para transferência é necessário
realizar algumas configurações específicas.
Gravação Através da Porta Serial:
Neste caso, utiliza-se o recurso de AUTO-GRAVAÇÃO do PIC aliado a um
programa residente na memória do PIC chamado de BOOTLOADER.
É necessário:
Cabo de comunicação serial – Figura 4.14.
49
Figura 4.14: Cabo de comunicação serial.
Porta serial no PC – Figura 4.15.
Figura 4.15: Porta serial.
Software residente no PIC - BOOTLOADER. BOOTLOADER é o nome
dado a um pequeno programa que deve ser gravado no microcontrolador para
que ele possa receber o programa pela sua porta serial. Este programa
consome menos de 200 words de instrução (o PIC16F877A possui 8K
words), ou seja, menos de 3% da memória do microcontrolador.
Para gravar este programa (isso deve ser feito somente para preparar o PIC para
aceitar gravações pela serial) deve ser usado o EPIC, WINPIC ou IC-PROG como visto
anteriormente. Efetua-se esta operação usando um computador com porta paralela. Para
este procedimento, é importante lembrar-se de ativar a opção flash program write para
que o PIC possa se regravar usando o BOOTLOADER.
Após a gravação do BOOTLOADER, não será mais necessário usar o gravador
paralelo. Se o mesmo for usado, o BOOTLOADER poderá ser substituído ou apagado,
obrigando a repetir o processo caso necessário.
Porta RS232 habilitada e cabo conectado. A estação CuscoPIC®
possui dois
“jumpers” que permitem ligar ou desligar os pinos C6 e C7 na porta de
comunicação serial ou nas saídas digitais. Para proceder com a gravação via
porta serial, estes “jumpers” devem estar ambos na posição RS232, como
demonstra a Figura 4.16.
Figura 4.16: Posição dos “jumpers” na estação CuscoPIC®.
50
Programa de gravação com BOOTLOADER. Uma vez instalado o
BOOTLOADER no PIC, e uma vez que a estação CuscoPIC® esteja
devidamente conectada à porta serial do PC, basta iniciar o programa de
gravação.
É recomendado o programa PICbootPlus.exe, um simples executável que também
pode ser baixado gratuitamente desenvolvido em C++.
Gravação Tradicional Através da Porta USB:
A estação CuscoPIC® não possui suporte direto a USB, porém isso pode ser obtido
através de um simples adaptador USB/SERIAL. Após instalar e configurar um
adaptador deste tipo deve se proceder com o método de gravação via porta serial.
A Figura 4.17 apresenta o adaptador USB/SERIAL.
Figura 4.17: Adaptador USB/SERIAL.
Em específico, no projeto optou-se por utilizar os microcontroladores PIC da série
16F877A, devido a sua grande quantidade de recursos disponíveis, baixo custo, alta
disseminação e estabilidade no mercado.
Este microcontrolador disponibiliza como recurso 33 IO’s, 8 entradas analógicas, 2
saídas PWM, memória EEPROM e flash ROM, dentro outros muitos recursos.
Da estação, optamos por utilizar os pinos de saída C1 e C2 do porto C, eles
disponibilizam o controle PWM do microcontrolador. Também foram utilizados os
pinos E0, responsável pelo controle de um dos relés e A1 sendo esta uma das entradas
analógicas da CuscoPIC®
. O esquema elétrico juntamente com os pinos utilizados é
apresentado no item 4.2.1.5 – Esquema Elétrico. 4.2.1.3 Fotos da Estação CuscoPIC
®
A Figura 4.18 apresenta uma imagem real da placa principal da estação de gravação
CuscoPIC®.
Figura 4.18: Placa principal.
51
A Figura 4.19 apresenta uma imagem real da placa IHM da estação de gravação
CuscoPIC®.
Figura 4.19: Placa IHM.
4.2.1.4 Lista de Peças
A Tabela 4.3 apresenta os itens que constituem a estação de gravação CuscoPIC®
,
juntamente com sua descrição e quantidade.
Tabela 4.3: Lista de peças da estação CuscoPIC®.
Item Descrição Quantidade
01 Placa Principal 01
02 Placa IHM 01
03 Cabo “flat” 26 vias 01
04 Display LCD 16 caracteres
2 linhas 01
05 Fonte de Alimentação CC
12V – 500mA 01
06 Cabo de Gravação via Porta
Serial 01
07 Cabo de Gravação via Porta
Paralela 01
Com exceção da fonte de alimentação, os itens restantes da tabela foram adquiridos
juntamente no valor de R$ 95,00. A fonte CC 12V – 500mA foi adquirida no valor de
R$ 14,00.
52
4.2.1.5 Esquema Elétrico
A Figura 4.20 apresenta o esquema elétrico da placa principal da estação de
gravação CuscoPIC®, indicando os pinos utilizados na implementação do TCC.
Figura 4.20: Esquema elétrico da placa principal.
53
A Figura 4.21 apresenta o esquema elétrico da placa IHM da estação de gravação
CuscoPIC®.
Figura 4.21: Esquema elétrico da placa IHM.
4.2.2 Hardware Desenvolvido
4.2.2.1 Introdução
Nessa etapa serão descritos os hardwares desenvolvidos para implementação do
projeto, sua aplicabilidade e funcionamento, bem como os sensores desenvolvidos e
utilizados para solucionar o problema em vista.
Aqui também consta o esquema elétrico, layout, lista de peças e custo destes
hardwares.
4.2.2.2 Descrição
4.2.2.2.1. Acionamento de Carga
A carga a ser acionada é um motor de corrente contínua de modelo QJT-51JS-A
fabricado pela Gear Motor® de dimensões citadas no ANEXO A.
O motor é acionado através de uma pseudoponte H, que possui o mesmo
funcionamento de uma ponte H convencional, no entanto a pseudoponte contém apenas
transistores NPN.
A função da pseudoponte H é inverter a rotação do motor que é controlado por duas
saídas PWM, C1 e C2, da plataforma CuscoPIC®. O elemento a ser controlado é
acionado através das saídas S1 e S2, essas conectadas aos respectivos pólos positivos e
54
negativos do mesmo. Ao ser acionado C1 faz com que o motor transforme energia
elétrica em energia mecânica, fazendo assim seu eixo e tudo acoplado a ele rodar numa
direção dependente da polaridade conectada nas saídas S1 e S2. Acionando apenas C2
faz-se com que o eixo do motor gire na direção contraria ao movimento gerado quando
acionado C1.
O motor é ativado através do acionamento da base dos transistores Q2 e Q6, sendo
assim, a base dos transistores Q3 e Q5 não sendo acionados, fazem com que circule
corrente apenas entre os transistores acionados, criando um fluxo de elétrons do positivo
da fonte de alimentação CC para o negativo da mesma, cruzando pela bobina do motor
acionando-o. Para que o eixo do motor gire em sentido adverso ao citado anteriormente
basta, acionar a base dos transistores Q3 e Q5.
A figura 4.22 mostra o esquema elétrico da pseudoponte H, juntamente com o fluxo
da corrente existente quando são acionadas as bases dos transistores Q2 e Q6, que
fazem com que gire o eixo do motor em uma das direções.
Figura 4.22: Fluxo da corrente em um sentido.
55
A figura 4.23 mostra o fluxo da corrente existente quando são acionadas as bases
dos transistores Q3 e Q5, que fazem com que gire o motor em direção contrária a citada
acima.
Figura 4.23: Fluxo da corrente em sentido inverso.
Para ser acionada a base do transistor Q6 que faz a ativação do motor junto ao Q2
tem-se que acionar primeiramente a base do transistor Q4, levando C2 a nível lógico
alto, acionando-o o curso dos elétrons entre suas junções de silício de Q4, assim
desviando do positivo da fonte de alimentação CC para o negativo da mesma, e sendo
assim desse caráter não é acionada a base do transistor Q5. Ao acionar-se C2 a base de
Q6 é ativada proporcionando o fluxo adequado de elétrons para o acionamento do
motor, como demonstra a Figura 4.22. Para ser acionada a base do transistor Q2 basta
levar C1 a nível lógico baixo, não ativado, C1 não aciona a base do transistor Q1 que
por sua vez passa a não conduzir, sendo assim, o positivo da fonte de alimentação
(VCC) é direcionado também para a base de Q2 acionando-a e proporcionando assim
um fluxo adequado de elétrons para o acionamento do motor, como demonstra a Figura
4.22.
O eixo do motor inverterá a rotação indicada acima no momento em que for ativada
a saída da plataforma CuscoPIC®
contrária a ativada no exemplo de antes, ou seja, levar
C1 a nível lógico alto e levar C2 a nível lógico baixo.
O layout da pseudoponte H foi desenvolvido no software Altium Designer versão 6
e concebido em placa de circuito impresso fenolite de forma artesanal.
4.2.2.2.2. Sensores
Integrando os estudos físicos realizados na fundamentação teórica, desenvolvemos
um sensor capaz de nos indicar a posição de equilíbrio do autômato de acordo com eixo
gravitacional da Terra. Ele é simples e fácil de ser implementado.
56
O sensor é constituído de um fio de cobre de 140x3mm com uma massa feita de cola
epóxi fixada em uma das extremidades. A extremidade contrária a que se encontra a
massa epóxi é fixada ao cursor de um potenciômetro linear de 10kΩ, sendo este situado
na parte inferior da plataforma da torre (Ver Figura 4.2 do item 4.1.2.1 – Torre).
Levando em consideração os conceitos estudados de massa, inércia, contrapeso e
movimento pendular oscilatório compreende-se que qualquer mínimo movimento
depositado ao corpo do autômato, movimento esse gerado pelas rodas, fará com que a
massa epóxi transforme a sua energia potencial armazenada, em energia cinética,
movimentando conseqüentemente o cursor do potenciômetro a qual está lhe
sustentando. Sendo assim, diferentes níveis de tensão são enviados a entrada analógica
A0 da plataforma de hardware CuscoPIC®, e então, estes valores são armazenados,
informando a posição onde se encontra o pêndulo.
É importante entender que independente da inclinação em que se encontra o
autômato, o pêndulo sempre terá sua referência fixa apontando ao centro gravitacional
da Terra, como o potenciômetro está preso ao autômato o mesmo sofrerá alterações em
seu cursor tornando a recíproca verdadeira. A Figura no item 4.1.2.1 – Torre.
4.2.2.3 Lista de Peças
A Tabela 4.4 apresenta os itens adquiridos para construção da pseudoponte H e do
sensor, juntamente com sua descrição, quantidade, valor unitário e valor total.
Tabela 4.4: Lista de peças da pseudoponte H.
Item Descrição Quant. Valor Unitário
(R$)
Valor Total
(R$)
01 TIP 131 – Transistor
Darlington 04 2,35 9,40
02 BC548 – Transistor de Sinal 02 0,45 0,90
03 Resistor 10kΩ - 1/4W 02 0,10 0,20
04 Resistor 1kΩ - 1/4W 02 0,10 0,20
05 Resistor 220Ω - 1/4W 02 0,10 0,20
06 Conector KRE 03 0,56 1,68
07 Cola Epóxi 01 2,00 2,00
08 Fio de Cobre 1000 x 3mm 01 1,80 1,80
09 Potenciômetro 10kΩ 01 2,45 2,45
10 Rolamento 10 x 26mm 01 4,00 4,00
57
4.2.2.4 Imagens
A Figura 4.24 apresenta o layout da PCI pseudoponte H construída.
Figura 4.24: Pseudoponte H.
A Figura 4.25 apresenta uma imagem real do TOP da pseudoponte H.
Figura 4.25: Pseudoponte H – TOP.
58
A Figura 4.26 apresenta uma imagem real do BOTTOM da pseudoponte H.
Figura 4.26: Pseudoponte H – BOTTOM.
4.3 Software
4.3.1 Introdução
Foram realizados diversos estudos de linguagem de programação, compiladores e
montadores, para se constatar a melhor maneira de desenvolver o firmware responsável
por realizar o controle do autômato. Abaixo estão descritas estas linguagens juntamente
com suas principais características e os compiladores.
A linguagem de programação nada mais é que um conjunto finito de símbolos com
os quais se escrevem programas de computador.
Uma linguagem de programação é um método padronizado para expressar
instruções para um computador. É um conjunto de regras sintáticas e semânticas usadas
para definir um programa de computador. Uma linguagem permite que um programador
especifique precisamente sobre quais dados um computador vai atuar, como estes dados
serão armazenados ou transmitidos e quais ações devem ser tomadas sob várias
circunstâncias.
Há várias classificações para as linguagens de programação. Serão citadas duas
delas, que são as mais utilizadas.
Linguagem de alto nível é uma linguagem que se aproxima mais da linguagem
utilizada pelo ser humano. Exemplos típicos são Pascal, COBOL, C e SQL.
Linguagem de baixo nível é uma linguagem que, como o próprio nome diz, fica em
um nível intermediário entre a linguagem de alto nível e a linguagem de baixo nível.
São códigos chamados de mnemônicos, mais conhecidos como assembly ou o código
que o computador executa diretamente. É composta de zeros e uns e conhecida como
linguagem binária.
Uma das principais metas das linguagens de programação é permitir que
programadores tenham uma maior produtividade, permitindo expressar suas intenções
mais facilmente do que quando comparado com a linguagem que um computador
entende nativamente (código de máquina). Assim, linguagens de programação são
projetadas para adotar uma sintaxe de nível mais alto, que pode ser mais facilmente
59
entendida por programadores humanos. Linguagens de programação são ferramentas
importantes para que programadores e engenheiros de software possam escrever
programas mais organizados e com maior rapidez.
Linguagens de programação também tornam os programas menos dependentes de
computadores ou ambientes computacionais específicos (propriedade chamada de
portabilidade). Isto acontece porque programas escritos em linguagens de programação
são traduzidos para o código de máquina do computador no qual será executado em vez
de ser diretamente executado.
4.3.1.1 Linguagem Assembly
Assembly ou linguagem de montagem é uma notação legível por humanos para o
código de máquina que uma arquitetura de computador específica usa. A linguagem de
máquina, que é um mero padrão de bits, torna-se legível pela substituição dos valores
em bruto por símbolos chamados mnemônicos.
Ao contrário do que acontece nas linguagens de alto nível, existe (até certo ponto)
uma correspondência de 1 para 1 entre a linguagem de montagem simples e a linguagem
de máquina. Por isso a tradução do código de montagem em código de máquina não é
chamada compilação, mas montagem. Consegue-se transformar a linguagem de
montagem em linguagem de máquina recorrendo a um montador (também chamado
assembler, originado do termo em inglês), e a transformação inversa faz-se recorrendo a
um desmontador (também chamado disassembler, originado do termo em inglês).
Assembly utiliza somente instruções do processador, para isso é necessário conhecer
os registradores da máquina. Nesse sentido, as linguagens de baixo nível estão
diretamente relacionadas com a arquitetura do computador, sendo assim, podem existir
conjuntos múltiplos de mnemônicas, ou sintaxes de linguagem de montagem, para um
único conjunto de instruções. Nestes casos, o conjunto mais popular é aquele que é
utilizado pelo fabricante na sua documentação.
Fontes de pesquisa:
http://www.infoescola.com/informatica/o-que-sao-linguagens-de-programacao/
http://www.vemconcursos.com/opiniao/index.phtml?page_id=440
4.3.1.2 Linguagem C ANSI
C é uma linguagem de programação compilada de propósito geral, estruturada,
imperativa, procedural, de alto nível, e padronizada, criada em 1972, por Dennis
Ritchie, no AT&T Bell Labs®, para desenvolver o sistema operacional UNIX
®.
C foi originalmente desenvolvido, para a implementação do sistema UNIX®
(originalmente escrito em PDP-7 Assembly, por Dennis Ritchie e Ken Thompson). Em
1973, com a adição do tipo struct, C tornou-se poderoso o bastante para a maioria das
partes do Kernel do UNIX®, serem reescritas em C.
Durante os finais da década de 1970, a linguagem C começou a substituir a
linguagem BASIC como a linguagem de programação de microcomputadores mais
usada. Durante a década de 1980, foi adaptada para uso no PC IBM, e a sua
popularidade começou a aumentar significativamente.
60
Em 1983, ANSI formou um comitê, X3J11, para estabelecer uma especificação do
padrão da linguagem C. Após um processo longo e árduo, o padrão foi completo em
1989 e ratificado como ANSI X3.159-1989 “Programming Language C”. Esta versão da
linguagem é freqüentemente referida como ANSI C. Em 1990, o padrão ANSI C, após
sofrer umas modificações menores, foi adotado pela ISO como ISO/IEC 9899:1990,
também conhecido como C89 ou C90. Um dos objetivos do processo de padronização
ANSI C foi o de produzir um subconjunto do K&R C, incorporando muitas das
características não-oficiais subseqüentemente introduzidas. Entretanto, muitos
programas tinham sido escritos e que não compilavam em certas plataformas, ou com
certo compilador, devido ao uso de bibliotecas de funções não-padrão e ao fato de
alguns compiladores não aderirem ao ANSI C.
C é uma linguagem imperativa e procedural, para implementação de sistemas. Seus
pontos de design foram para ele ser compilado, fornecendo acesso de baixo nível à
memória e baixos requerimentos do hardware. Também foi desenvolvido para ser uma
linguagem de alto nível, para maior reaproveitamento do código. C foi útil para muitas
aplicações que foram codificadas originalmente em Assembly.
Essa propriedade não foi acidental; a linguagem C foi criada com o objetivo
principal em mente: facilitar a criação de programas extensos com menos erros,
recorrendo ao paradigma da programação algorítmica ou procedimental, mas
sobrecarregando menos o autor do compilador, cujo trabalho complica-se ao ter de
realizar as características complexas da linguagem.
A linguagem C possui as seguintes características:
Uma linguagem nuclear extremamente simples, com funcionalidades não-
essenciais, tais como funções matemáticas ou manuseamento de arquivos,
fornecida por um conjunto de bibliotecas de rotinas padronizado;
A focalização no paradigma de programação procedimental;
Um sistema de tipos simples que evita várias operações que não fazem
sentido
Uso de uma linguagem de pré-processamento, o pré-processador de C, para
tarefas tais como a definição de macros e a inclusão de múltiplos arquivos de
código fonte;
Ponteiros dão maior flexibilidade à linguagem;
Acesso de baixo-nível, através de inclusões de código Assembly no meio do
programa C;
Parâmetros que são sempre passados por valor para as funções e nunca por
referência;
Definição do alcance lexical de variáveis;
Estruturas de variáveis, (structs), que permitem que dados relacionados sejam
combinados e manipulados como um todo.
C tem como ponto forte, a sua eficiência, e é a linguagem de programação preferida
para o desenvolvimento de sistemas e softwares de base, apesar de também ser usada
para desenvolver programas de computador. É também muito usada no ensino de
ciência da computação, mesmo não tendo sido projetada para estudantes e apresentando
algumas dificuldades no seu uso. Outra característica importante de C é sua
proximidade do código de máquina, que permite que um projetista seja capaz de fazer
algumas previsões de como o software irá se comportar, ao ser executado.
61
C tem como ponto fraco, a falta de proteção que dá ao programador. Praticamente
tudo que se expressa em um programa em C, pode ser executado, como, por exemplo,
pedir o vigésimo membro de um vetor com apenas dez membros. Os resultados são
muitas vezes totalmente inesperados, e os erros, difíceis de encontrar.
Fontes de pesquisa:
www.dei.isep.ipp.pt/~abarros/docs/ANSI_C.pdf
http://en.wikipedia.org/wiki/ANSI_C
4.3.1.3 Montadores
Um montador, assemblador ou assembler, é um programa de computador que efetua
a montagem de uma linguagem de montagem (assembly) para código de máquina.
O processo de montagem recebe como entrada um arquivo texto com o código fonte
do programa em assembly e gera como saída um arquivo binário, o módulo objeto,
contendo o código de máquina e outras informações relevantes para a execução do
código gerado.
Em geral, montadores oferecem facilidades além da simples tradução de código
assembly para código de máquina. Além das instruções do processador, um programa
fonte para o montador pode conter diretivas ou pseudo-instruções definidas para o
montador, assim como macro-instruções, uma seqüência de instruções que será inserida
no código ao ser referenciado pelo nome. Um montador que suporte a definição e
utilização de macro-instruções é usualmente denominado um macro-montador (macro-
assembler). Um montador multiplataforma (cross-assembler) é um montador que
permite gerar código para um processador-alvo diferente daquele no qual o montador
está sendo executado
Fontes de pesquisa:
http://www.dca.fee.unicamp.br/cursos/EA876/apostila/HTML/node79.html
http://www.das.ufsc.br/gia/computer/node17.html
4.3.1.4 Compiladores
Um compilador é um programa de sistema que traduz um programa descrito em uma
linguagem de alto nível para um programa equivalente em código de máquina para um
processador. Em geral, um compilador não produz diretamente o código de máquina,
mas sim um programa em linguagem simbólica (assembly) semanticamente equivalente
ao programa em linguagem de alto nível. O programa em linguagem simbólica é então
traduzido para o programa em linguagem de máquina através de montadores.
Para desempenhar suas tarefas, um compilador deve executar dois tipos de atividade.
A primeira atividade é a análise do código fonte, onde a estrutura e significado do
programa de alto nível são reconhecidos. A segunda atividade é a síntese do programa
equivalente em linguagem simbólica. Embora conceitualmente seja possível executar
toda a análise e apenas então iniciar a síntese, em geral estas duas atividades ocorrem
praticamente em paralelo.
62
A análise pode ser subdividida ainda em análise léxica, análise sintática e análise
semântica. A síntese é mais variada, podendo ser composta pelas etapas de geração de
código intermediário, otimização de código e geração de código final (ou código de
máquina), e somente esta última etapa é obrigatória.
Dois compiladores foram estudados, e estes estão descritos abaixo:
Fonte de pesquisa: Treinamento em Linguagem C (vide Referências).
Compilador CCS
O CCS - C Compiler Standard - é uma ferramenta de baixo custo desenvolvida para
Microchip PIC MCU e dsPIC DSCs. Ao compilador, foram adicionadas bibliotecas que
interagem especificamente com os registros do PIC MCU e aos recursos de hardware
disponibilizados. O CCS já possui versões para os Sistemas Operacionais Linux® e MS
Windows®.
Foram acrescentadas ao compilador, funções “built-in” que acessam diretamente o
hardware, tais como read_adc() , função que lê diretamente um valor do conversor
analógico-digital. Variáveis, incluindo estruturas, podem ser mapeadas diretamente para
a memória, como por exemplo, portos de entrada e saída (IO), assim representando
melhor o programa em C.
O compilador CCS ainda proporciona amplas funções para as necessidades de
desenvolvimento cotidianas, incluindo diretivas do pré-processador no padrão C,
operadores e declarações, bibliotecas que apóiam diversos chips com integração total a
IDE MPLAB. É plenamente compatível com as famílias PIC10, PIC12, PIC16, PIC18,
PIC24 e dsPIC.
Fonte de pesquisa: http://www.ccsinfo.com/
MPLAB
O MPLAB é um pacote de programas que correm no MS Windows® e que tornam
mais fácil escrever ou desenvolver um programa. Pode descrever-se ainda melhor como
sendo um ambiente de desenvolvimento para uma linguagem de programação
“standard” e destinada a correr num PC. Anteriormente, as operações incidiam sobre
uma linha de instrução e contemplavam um grande número de parâmetros, até que se
introduziu o IDE e as operações tornaram-se mais fáceis, usando o MPLAB. Mesmo
agora, as preferências das pessoas divergem e alguns programadores preferem ainda os
editores “standard” e os intérpretes linha a linha. A IDE inclui uma série de
componentes de software livre para o rápido desenvolvimento aplicacional e de super-
carregada depuração.
Algumas das diversas características que incluem a IDE MPLAB:
Totalmente integrado com o “click” do botão direito do mouse, este
disponibiliza menus de “breakpoint”, “tracepoints” e editor de funções;
Destaques de cor para palavras reservadas do sistema e funções pré-definidas
nas linguagens assembly, C e BASIC;
Passando o mouse sobre as variáveis, facilmente é possível avaliar seus
conteúdos e registros;
Auto-alinhamento dos pontos após a alteração do código fonte.
63
Todas as versões do software são livres. Atualmente a versão mais recente
disponível para download é 8.30.
Existem ainda outras versões para download, como por exemplo, o MPLAB SIM
que é um software simulador de alta velocidade para PICs e dsPICs com dispositivos
periféricos.
Fontes de pesquisa:
Desbravando o PIC (vide Referências)
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406
&dDocName=en019469&part=SW007002
4.3.2 Firmware Desenvolvido
4.3.2.1 Introdução
Firmware é normalmente definido como um tipo de programa que é executado
dentro de um dispositivo eletrônico. O firmware desenvolvido é o conjunto de
instruções operacionais programadas diretamente para o hardware de um equipamento
especifico.
Para o controle do autômato foi criado um firmware especifico capaz de, juntamente
com o hardware e mecânica, realizar a função de um pêndulo invertido. A seguir será
descrito o funcionamento do firmware criado designadamente para o microcontrolador
PIC16F877A atendendo as exigências do projeto.
4.3.2.2 Descrição
O firmware desenvolvido tem o intuito de fazer o autômato manter-se em equilíbrio
com o centro gravitacional da Terra através da integração do conjunto sensor,
processador e atuador. Em nosso caso, o sensor é o pêndulo preso a haste do
potenciômetro. O dispositivo que efetua os processos é o microcontrolador da família
16 e o atuador é motor que faz as rodas entrarem em rotação.
Primeiramente foi necessário ser identificado o centro geométrico do autômato, ou
seja, a posição em que este está em perfeito equilíbrio Após isso, o valor indicado pelo
potenciômetro que sustenta o sensor pêndulo quando o autômato está em equilíbrio, foi
armazenado na memória do microcontrolador como uma constante.
Toda vez que o corpo do autômato sofre alteração em sua estabilidade, novos
valores são indicados pelo potenciômetro e enviados para o conversor analógico-digital
do porto A que armazena estes valores em uma variável. Tendo o valor digital da
posição em que o autômato está em desequilíbrio e o valor da posição em que ele
“deveria” estar, foi realizada uma simples subtração.
O resultado desta subtração foi condicionado no programa, e é ele o responsável por
indicar ao PIC a largura do pulso que deve ser enviado ao motor. Lembrando que este
microcontrolador possui duas saídas PWM, no nosso caso, C1 e C2. Quanto maior for o
resultado da subtração entre o centro geométrico e o ponto de desequilíbrio em que o
autômato se encontra maior será o pulso para acionar o motor.
64
A aquisição do sinal do potenciômetro é realizada a cada novo pulso de clock
gerado, o que nos da cerca de 20000000 atualizações por segundo.
Quando o autômato pendular para frente, o motor será acionado para frente, e
quando o autômato pendular para trás o motor será acionado para trás através da saída
PWM disponível no microcontrolador. Para acionar o motor para frente basta colocar
C1 em nível lógico alto e C2 em nível lógico baixo, para acionar o motor para trás basta
colocar C1 em nível lógico baixo e C2 em nível lógico alto.
Somente foi utilizada uma biblioteca para desenvolver o programa e ela será
apresentada mais a frente, juntamente com o fluxograma, código fonte e o arquivo em
formato executável.
4.3.2.3 Fluxograma
Abaixo segue o fluxograma desenvolvido para auxiliar na construção do código
fonte em C.
Inicio
Equilíbrio
Equilíbrio
Coleta
informações
do sensor
Está no
centro? 1
1
Está para frente? Andar para
frente
Andar para trás
1
1
S
N
S
N
65
4.3.2.4 Código Fonte (*.c)
#include <16f877.h>
#device ADC=10
#use delay (clock=20000000)
#include <cuscostdio.h>
#fuses HS, NOWDT, NOPROTECT, NOBROWNOUT, NOLVP, PUT
void main()
long VALOR;
VALOR = AD(1);
output_a(0); // desliga todo PORTA
output_b(0); // desliga todo PORTB
output_c(0); // desliga todo PORTC
output_d(0); // desliga todo PORTD
while(1)
VALOR = AD(1);
Movimenta o motor
conforme o ângulo da queda para frente
Retorna
Movimenta o motor
conforme o ângulo da queda para trás
Retorna
Andar para trás
Andar para frente
66
output_high(PIN_E0);
if(VALOR < 344)
output_high(PIN_C2);
output_low(PIN_C1);
if(VALOR > 353)
output_high(PIN_C1);
output_low(PIN_C2);
4.3.2.5 Bibliotecas (*.h)
Foi utilizada uma biblioteca padrão para CuscoPIC®, desenvolvida em agosto de
2007 pelo instrutor de ensino técnico Daniel Corteletti com revisão em setembro de
2007. Ela foi desenvolvida para PICs das famílias 16 e 18 e se chama cuscostdio.h. A
mesma se encontra disponível no site do CuscoPIC®.
4.3.2.6 Executável (*.HEX)
:1000000000308A005C2800002608003A03191528F1
:10001000013A03191828033A03191B28013A031956
:100020001E28073A031921282528831605142A2893
:10003000831685142A28831605152A288316851504
:100040002A28831685162A2883120030F800F90022
:100050005B288316C03083128B041F179F178316EB
:100060009F1783121F1483161F109F101F119F11BB
:100070008312260DF700F70DF70DF830F7051F086E
:10008000C73977049F00A630F700F70B452800001A
:100090001F151F19492883161E088312A7001E0862
:1000A000A80083161F149F141F159F118312270881
:1000B000F8002808F9000034840183131F308305F9
:1000C00083161F149F141F159F1183122010A01058
:1000D0002011A0112012A0122013A0132110A11092
67
:1000E000A201FF30A3000130A60004207908A5007A
:1000F0007808A40083168501831285018316860182
:10010000831286010030A3008316870183128701C2
:1001100083168801831288010130A6000420790823
:10012000A5007808A4008316091083120914250875
:10013000013C031CAD28031DA1282408573C031CC7
:10014000AD28231123088316870083120715A310F7
:10015000230883168700831287102508003C0318A4
:10016000C428FF3A031DB8282408613C0318C4289A
:10017000A3102308831687008312871423112308F2
:0C01800083168700831207118C2863008F
:02400E00323F3F
:00000001FF
;PIC16F877
68
5 CONCLUSÃO
Este documento descreveu um sistema de equilíbrio de um pêndulo invertido sobre a
plataforma de um pequeno autômato.
Após término do projeto, foi possível constatar pontos marcantes referente às
técnicas de controle de pêndulo invertido. Imprevistos que fizeram com que o trabalho
sofresse atrasos e exigisse maior dedicação e horas de estudo, busca de novos recursos e
ferramentas.
A idéia inicial era fazer com que o autômato obtivesse sua posição angular através
de um dos mais, atualmente utilizados, sensores do setor de tecnologia. O acelerômetro,
como citado anteriormente, é hoje amplamente utilizado em diversos circuitos
eletrônicos que necessitam de uma referência fixa que aponte ao centro gravitacional,
partindo da área de sistemas de suporte a vida, passando por controle de aviões até
mesmo itens de entretenimento.
Foram realizadas diversas buscas por este dispositivo no Brasil, todas obtendo
fracasso. Ampliando os horizontes de pesquisa, foi encontrado um dos fornecedores na
Malásia que disponibiliza “samples” para estudos e desenvolvimento de novas
tecnologias. Com sucesso, o componente foi conquistado, porém o tempo foi curto para
implementá-lo. O que não era previsto é a necessidade de hardwares necessários para o
nivelamento da tensão de alimentação e comunicação, já que a tensão necessária é 3,3V
e a disponível é 5V. Além deste fator, outros fatores foram decisivos para a desistência
do uso deste sensor, como por exemplo, as suas pequenas dimensões que acarretaram
em outro problema – A dificuldade de desenvolver uma PCI para acomodá-lo.
Descartando estes obstáculos e supondo a passagem pelos mesmos, ainda existia a
dificuldade de soldá-lo, devido ao fato deste componente pertencer à classe SMD.
Como todo sensor se comunica com uma unidade de controle, o acelerômetro não
poderia ser diferente, no entanto o que dificulta é o protocolo de comunicação que ele
necessita para indicar os valores de aceleração ao microcontrolador, este protocolo é o
protocolo universal desenvolvido pela Siemens® conhecido como I²C bus.
Todos estes imprevistos e obstáculos causaram desistência do uso deste dispositivo.
Conhecendo todas as dificuldades propostas pelo acelerômetro, buscou-se um novo
método de se medir a posição angular do autômato. Como descrito no item 4.2.2.2.2 –
Sensores, o método escolhido foi à criação de um pêndulo eletrônico que de maneira
genérica executa a função de um acelerômetro. Além de uma fácil implementação e
baixo custo, o pêndulo eletrônico ainda tem como benefício à comunicação.
69
Comunicação que é dada através de níveis de tensão de forma analógica enviados ao
porto A da plataforma de hardware como já citado. Tendo em mãos o sensor construído
o desafio passou a ser a unidade de atuação – o Motor.
Após diversos estudos realizados referentes a funcionamento de motores chegou-se
a conclusão do melhor a ser implementado, o motor de passo.
O motor de passo foi escolhido primordialmente pelo fato de este possuir um fácil
controle de posição, e também devido ao fato de o mesmo ser compacto e poder ser
alocado num espaço reduzido, sem exigir uma estrutura muito ampla.
Constatando que a corrente de saída do porto C da plataforma de hardware não
possuía capacidade para fornecer a corrente mínima para acionamento dos motores que
é de 340mA, foi desenvolvido um driver de corrente para acionar os motores.
Já cumprida e identificada à plataforma de hardware a ser utilizada, o motor e o
sensor, foi desenvolvida a mecânica do projeto, atendendo a todas as exigências das
unidades citadas. A mecânica disponibilizava dois eixos independentes que atuavam
sobre o corpo do autômato, permitindo que este mantivesse seu próprio equilíbrio. Até
então, o que era tido era somente teórico.
Colocando em prática, construindo a mecânica, integrando o hardware eletrônico e
efetuando testes pilotos foi constatado que os motores não possuíam capacidade de
torque suficiente para atuar sobre o autômato, levando mais uma vez o projeto ao
fracasso.
Com o prazo apertado, novos estudos foram realizados para sustentar o autômato.
Cogitou-se então, o uso de motores CC. Estes, possuindo uma dificuldade mais elevada
de controle de posição, no entanto com maior capacidade de torque. Foram procurados
diversos motores que possuíssem as seguintes exigências:
Tensão de acionamento igual ou inferior a 12V;
Corrente de carga inferior a da fonte de alimentação utilizada, em nosso caso,
uma bateria 12V – 1,3Ah;
Caixa de redução para aumento de torque;
Compatibilidade com a mecânica já criada.
Tendo encontrado o motor especificado o mesmo foi adicionado à mecânica e
constatou-se a necessidade de alterá-la. A mecânica agora utilizada não suporta mais a
configuração de dois eixos independentes, pois se fosse optado pela utilização de dois
motores para se obter dois eixos independentes a mecânica passaria por muitas
alterações.
Alocando o motor a mecânica partiu-se para a construção do hardware de controle,
citado no item 4.2.2.2.1 - Acionamento de Carga. Depois de integrado o hardware
desenvolvido à nova mecânica efetuou-se novos testes que comprovaram a
funcionalidade do motor e, por conseguinte do sensor.
Não citado ainda, durante a construção da mecânica houve um novo problema – o
sistema de engrenagens. Foi constatado que a implementação de sistemas de locomoção
a partir engrenagens são de grande dificuldade, pelos seguintes motivos:
70
O cálculo para dimensionamento da relação é complexo;
São componentes mecânicos escassos no mercado;
Possuem alto custo;
Mesmo tendo o projeto em mãos as engrenagens dimensionadas nem sempre
correspondem às disponíveis a venda.
Após todos os estudos físicos realizados ambos citados no item 2.2 – Descrição,
ainda restava um problema, o contrapeso. Este resolvido através da alocação da bateria
na parte inferior do autômato, como citado no item 4.1.2.2 – Base.
Quanto à plataforma de hardware escolhida não houve dificuldades, pois esta foi
sugerida pelo orientador, pelo fato de ser de alta versatilidade, como citado 4.2.1 -
Plataforma de Desenvolvimento. O último passo foi desenvolver o firmware para
controlar o autômato. Mesmo sem nunca ter tido contato com linguagem de C de
programação para microcontroladores, a dupla não identificou problemas no
desenvolvimento do código fonte.
Tendo concluído todas as etapas do projeto separadamente e comprovando suas
funcionalidades, foi atingida a parte mais trabalhosa e complexa – a integração.
Sem dúvida foi aqui que encontramos uma gama de erros, e nosso conhecimento e
experiência como técnicos foram postos em prova.
Conclui-se que a dificuldade da eletrônica está na sua integração. Módulos
separados de controle, circuitos eletrônicos com funcionalidades individuais talvez não
exijam tanta experiência. Porém quando o assunto é integrar estes módulos a
experiência se torna fundamental.
Entende-se que o conhecimento do assunto representa uma parcela muito pequena
quando comparada à experiência. Um indivíduo que possui mais projetos em sua vida
como profissional tem muito mais capacidade de identificar erros e desenvolver novos
projetos. Mas não por ter um conhecimento maior e sim por ter sido confrontado com
erros mais vezes.
A implementação deste TCC foi essencial para nossa aprendizagem técnica devido
ao fato de este ter passado por diversos erros, desde a parte de hardware e firmware até
mesmo a parte mecânica. Isso nos trouxe um engrandecimento como técnico que sem
dúvida será utilizado no mercado de trabalho.
71
REFERÊNCIAS
Monografia no todo
MÁXIMO, A.; ALVARENGA, B. Curso de Física Volume 1. 6.ed. São Paulo:
scipione, 2005.
SOUZA, D. J. de. Desbravando o PIC: ampliado e atualizado para PIC 16F628A.
11.ed. São Paulo: Érica, 2007.
Em meio eletrônico
GHIRARDELLO, Ariovaldo. Apostila sobre Modulação PWM. Colégio Politec, São
Paulo, p.1-6. Disponível em:
<http://www.eletronica.org/arq_apostilas/apostila_pwm.pdf>. Acesso em: abr. 2009.
MARCUS VINICIUS. Linguagem de Programação. Vem Cursos, São Paulo, 2002.
Disponível em: <http://www.vemconcursos.com/opiniao/index.phtml?page_id=440>.
Acesso em: mai. 2009.
ANDRADE, G. O que são Linguagens de Programação. Info Escola, São Paulo, 2007.
Disponível em: <http://www.infoescola.com/informatica/o-que-sao-linguagens-de-
programacao/>. Acesso em: mai. 2009.
LEITE, B. H. da F. da C.; LIMA, E. J. C. de; LEÃO, F. L.; PRESTES, R. F. Estudo dos
Motores de Passo e seu Controle Digital. UFRJ, Rio de Janeiro, 2000. Disponível em:
<http://www.gta.ufrj.br/grad/01_1/motor/index.htm>. Acesso em: abr. 2009.
BARROS, A. M. de S. ANSI C para quem tem pressa. ISEP, Porto, 2003. Disponível
em: <www.dei.isep.ipp.pt/~abarros/docs/ANSI_C.pdf>. Acesso em: mai. 2009.
FRÖHLICH, A. A. H. Montadores. UFSC, Santa Catarina, 1998. Disponível em:
<http://www.das.ufsc.br/gia/computer/node17.html>. Acesso em: mai. 2009.
FRADEN, J. Sona Sensor. Stanford University, California, 1998. Disponível em:
<http://devices.sapp.org/component/sonar/>. Acesso em: abr. 2009.
RICARTE, I. L. M. Montadores. UNICAMP, São Paulo, 2003. Disponível em:
<http://www.dca.fee.unicamp.br/cursos/EA876/apostila/HTML/node79.html
>. Acesso em: mai. 2009.
Microchip Technology Inc.®. Integrated Development Environment MPLAB.
MICROCHIP, Arizona, 2002. Disponível em:
<http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406
&dDocName=en019469&part=SW007002>. Acesso em: mai. 2009.
Custom Computer Services, Inc.®. C Compiler Standart, CCS, Waukesha, 2007.
Disponível em: <http://www.ccsinfo.com/>. Acesso em: mai. 2009.
72
BLOCH, P. Engrenagens, tio Sam, Paraíba, 2003. Disponível em:
<http://www.tiosam.net/enciclopedia/?q=Roda_dentada>. Acesso em: abr. 2009.
MAXWELL. Sensores: Tipos e Funcionamento, Eletrohoo, São Paulo, 2005.
Disponível em: <http://www.eletrohoo.com.br/site/componentes/sensores/tipos.asp>.
Acesso em: abr. 2009.
RODRIGUES, G. L. Animação Interativa e Construção dos Conceitos da Física:
Trilhando Novas Veredas Pedagógicas, UFPB, Paraíba, 2005. Disponível em:
<http://www.rived.mec.gov.br/artigos/DissertacaoGil.pdf>. Acesso em: abr. 2009.
PORTAL EDUCACIONAL. Giroscópios, Educacional, São Paulo, 2006. Disponível
em:<http://www.educacional.com.br/reportagens/testederelatividadegeral/default24.asp
>. Acesso em: abr. 2009.
MAGRONE, Eduardo. Sensores Industriais, UFJF, Minas Gerais, 2002. Disponível em:
<http://www.engprod.ufjf.br/epd_automacao/EPD030_Sensores.pdf>. Acesso em: abr.
2009.
CARVALHO, A. J. Controle de Motores de passo Unipolares de Quatro Fases de ima
Permanente (5 ou 6 fios), Geocities, São Paulo, 2001. Disponível em:
<http://br.geocities.com/gedaepage/Doc/MP_5fios.htm.>. Acesso em: abr. 2009.
WIKIMEDIA FOUNDATION, INC®
. Acelerômetro, pt Wikipédia, San Francisco,
2009. Disponível em: <http://pt.wikipedia.org/wiki/Aceler%C3%B4metro>. Acesso em:
mai. 2009.
WIKIMEDIA FOUNDATION, INC®
. ANSI C, en Wikipédia, San Francisco, 2007.
Disponível em: <http://en.wikipedia.org/wiki/ANSI_C>. Acesso em: mai. 2009.
73
OBRAS CONSULTADAS
MANZANO, J. A. N. G.; OLIVEIRA, J. F. de. Algoritmos: lógica para
Desenvolvimento de Programação. 17.ed. São Paulo: Érica, 2000.
AHMED, A. Eletrônica de Potência. 2.ed. São Paulo: Prentice Hall, 2000.
AIUB, J. E. Eletrônico Volume 1. 10.ed. São Paulo: Érica, 2003.
MALVINO, A. P. Eletrônica. 4.ed. São Paulo: PERSON Makron Books, 1997.
MIZRAHI, V. V. Treinamento em Linguagem C. São Paulo: Pearson Makron Books,
1990.
PEREIRA, F. PIC Programação em C. 3.ed. São Paulo: Érica, 2003.
SENAI.RS. Informações Tecnológicas - Mecânica. 11. ed. Porto Alegre: Diretoria de
Educação e Tecnologia/Unidade de Negócios em Educação Profissional, 2005. 272 p. il.
Os anexos apresentados a seguir devem estar no mesmo diretório deste documento
para serem visualizados. Para abrir os anexos, basta clicar duas vezes sobre o mesmo.
74
ANEXO A <DIMENSÕES DO QJT-51JS>
75
ANEXO B <DATASHEET PIC16F877A>
76
ANEXO C <DATASHEET BC548>
77
ANEXO D <DATASHEET TIP131>