O Kit ARM Ravina foi desenhado para atender as muitas necessidades de controle nos projetos de experimentação remota, tais como controlar servos motores, leituras de sensores de peso, leituras de sensores de distâncias por ultrassom, controladores de displays, acionamento de cargas externas e muitos outros. Um exemplo de uso destes kits é o laboratório de experimentação remota (RexLab) da Universidade do Sul de Santa Catarina (UFSC), visite o site e utilize dos experimentos on-line: http://relle.ufsc.br/ e http://gt-mre.ufsc.br/
Este kit ARM pode ser reutilizado para novas práticas em programação embarcada seja na área da educação como base para criação de novos projetos e produtos.
Junto com o Kit ARM acompanha muitos exemplos com explicações, e uma biblioteca completa para usar os mais diversos tipos de dispositivos. Também acompanha os softwares de desenvolvimento e as instruções de como instalá-los e usá-los. Desse modo, o programador aprende a estruturar os seus programas, utilizando de muitos recursos simultâneos sem o uso de sistemas operacionais. Isto não só se aplica ao kit ARM, mas sim para outros tipos de micro controladores e arquiteturas.
Nos documentos contêm os passos para criar o seu ambiente de desenvolvimento no seu computador, e descreve os pontos importantes na organização tanto da estrutura do compilador como do firmware, para que o programador tenha condições de modificar a estrutura para atender as suas necessidades de projeto.
2 - Preparação do ambiente de desenvolvimento A preparação do ambiente de desenvolvimento requer que as ferramentas sejam baixadas para seu computador.
4 - Entendendo e compilando o meu primeiro exemplo. Baixe o meu primeiro exemplo: aqui
Documentos de apoio:
Documentos Auxiliares
Esquemático
Datasheet do lpc1752
Caso deseja compilar os programas do kit ARM no prompt do Cygwin, baixe a distribuição CygWin aqui proposto que já contêm os pacotes necessários, e baixe o batch de configuração do terminal CygWin para compilação. Consulte o documento auxiliar “compilando com cygwin.docx”
Neste exemplo mostra como usar alguns recursos básicos do Kit, tais como:
Usar a eeprom externa; ler um teclado e anexar eventos de pressionar, mantendo
pressionado a tecla e quando a tecla é solta; emitir diferentes tipos de sons
no buzzer; como usar o RTC do ARM.
download: Projeto Eclipse com os fontes
documento: Documentos explicativo do exemplo
Neste exemplo mostra como usar a comunicação modbus tanto no modo mestre com
nodo escravo no kit ARM. O modo mestre o kit ARM faz acessos a um termômetro
digital e mostra o valor da temperatura no display LCD. No modo escravo um terminal
no PC vai acessar o kit ARM e coletar as informações e exibir em uma janela.
Neste exemplo estamos acessando um só termômetro, mas a estrutura do sistema permite
acessar muitos termômetros no mesmo barramento, na prática foi feito até nove termômetros.
Ainda reutilizando a mesma estrutura do sistema podemos adaptar para acessar
diferentes tipos de dispositivos no mesmo barramento.
download: Projeto Eclipse com os fontes
documento: Documentos explicativo do exemplo
Há inúmeras aplicações do uso do conversor analógico digital (ADC – Analogic Digital Converter).
Contudo, o princípio de leitura é o mesmo para maioria das aplicações, e neste exemplo vamos usar
um potenciômetro para gerar um sinal analógico e ler os canais analógicos isoladamente
aplicando os seus devidos filtros.
download: Projeto Eclipse com os fontes
documento: Documentos explicativo do exemplo
Neste exemplo utilizamos um display gráfico TFT com o controlador ili9431 plotando
imagens em uma resolução de 320x240, chegando até 256 mil cores. Alguns exemplos
do uso do gerenciador gráfico.
download: Projeto Eclipse com os fontes
documento: Documentos explicativo do exemplo
Neste exemplo utilizamos um display de LCD 16x2 conectado ao kit ARM via
porta IO e com 8 bits para barramentos de dados. Porém, podemos usar outros
tamanhos de display como 16x1, 16x2, 16x4, 20x4, e outros tipos de portas de
comunicações como IO de 4ibts de dados ou porta I2C usando pcf8574.
download: Projeto Eclipse com os fontes
documento: Documentos explicativo do exemplo
Neste exemplo utilizamos um display de matriz de pontos de leds controlado pelo CI max7219.
O max7219 gerencia quais leds a ser ligados e que intensidade de luz deve ser aplicada a eles.
Contudo, este gerenciador também pode controlar displays de 7 segmentos.
download: Projeto Eclipse com os fontes
documento: Documentos explicativo do exemplo
Neste exemplo vamos fazer leitura de distância usando o módulo ultrassom hc-sr04.
No kit ARM há somente uma entrada para este tipo de sensor, entretanto é possível
ler mais de um sensor ao mesmo tempo utilizando outras portas IO do ARM.
download: Projeto Eclipse com os fontes
documento: Documentos explicativo do exemplo
Neste exemplo vamos criar uma mini balança para medir pesos de pequenos objetos.
O projeto utiliza como sensor célula de carga em um ADC de precisão hx711.
O princípio de funcionamento e os circuitos são os mesmo desde pequenas balanças,
a balanças industriais que meçam toneladas
download: Projeto Eclipse com os fontes
documento: Documentos explicativo do exemplo
Neste exemplo vamos controlar até sete servos motores de aeromodelismo.
Estes tipos de servos são muitos usados em mecatrônicas,
e com isso é indispensável a sua implementação no kit ARM:
download: Projeto Eclipse com os fontes
documento: Documentos explicativo do exemplo
Neste exemplo faremos uma leitura de um joystick de um Playstation e mostraremos os resultados em um display texto 16x2:
download: Projeto Eclipse com os fontes
documento: Documentos explicativo do exemplo
Neste exemplo mostra como usar acelerômetro de três eixos modelo adxl345,
ele usa uma resolução de 13 bits com medição de até ±16g. O adxl345 é adequado
para medir acelerações estáticas de gravidade em aplicações sensíveis,
tal como acelerações dinâmicas resultando de movimentação, impacto ou queda livre.
Com sua alta resolução (4mg/LSB) é capaz de medir medições de inclinações menor que 1.0°.
O adxl345 também pode identificar batidas leves seja única batida ou dupla batida em sequência,
conceito chamado de TAP, um exemplo de utilizada dessas batidas seria os
clicks em um mouse pad de um notebook.
download: Projeto Eclipse com os fontes
documento: Documentos explicativo do exemplo
Este exemplo é a unificação dos exemplos “Usando Servos Motores”
e “Usando um Joystick Playstation” para controlar um braço
robótico feito com peças de acrílico. Para mais detalhes do comportamento
do firmware consultes os respectivos exemplos acima.
Imagem: Vídeo demonstrativo
Video: Vídeo demonstrativo
download: Projeto Eclipse com os fontes