Mudanças entre as edições de "Kit mini robo"

De Garoa Hacker Clube
Ir para navegação Ir para pesquisar
 
(14 revisões intermediárias por 2 usuários não estão sendo mostradas)
Linha 1: Linha 1:
  +
Essa página será atualizada a medida que incluirmos alterações no kit, melhorarias nas instruções, novas funcionalidades, software, etc.
// Página em fase de construção ...
 
   
[[Arquivo:Kit_Mini_Robo_-_Magician_Board_8.jpg|600px|thumb|center|Kit Mini Robô]]
+
[[Arquivo:Kit_Mini_Robo_-_Magician_Board_8.jpg|600px|thumb|center|Mini Robô com rodas e servos montados]]
   
== Conteúdo do Kit ==
+
== Conteúdo do Kit (Beta) ==
  +
  +
[[Arquivo:Kit-robo-garoa.jpg|400px|thumb|right|Kit Mini Robô]]
  +
  +
Atualmente o kit contém os seguintes itens. Essa lista poderá sofrer alterações caso
  +
encontremos outros componentes interessantes
   
 
* 1x Chassis MDF
 
* 1x Chassis MDF
Linha 9: Linha 14:
 
* 1x "Rollerball"
 
* 1x "Rollerball"
 
* 2x servo motor (alterado para giro contínuo)
 
* 2x servo motor (alterado para giro contínuo)
* 2x suporte para servo motor (PLA impresso em impressora 3D)
+
* 2x suporte para servo motor (em PLA impresso em impressora 3D)
 
* 1x suporte para 4 pilhas AA
 
* 1x suporte para 4 pilhas AA
* 1x placa Magician V1 (ATMega168)
+
* 1x placa Micro Magician Robot Controller v1 (ATMega168)
 
* 1 x sensor ultrassônico HC-SR04
 
* 1 x sensor ultrassônico HC-SR04
 
* 1x display de 7 segmentos
 
* 1x display de 7 segmentos
Linha 29: Linha 34:
 
==Referências:==
 
==Referências:==
   
  +
* [https://docs.google.com/presentation/d/1aW97yM_RQKlPlCDe9Qa1b5Zusg8owOGv/edit?usp=sharing&ouid=104160930906048298878&rtpof=true&sd=true Apresentação Kit Mini Robo]
 
* Documentação Placa controladora / motor driver Magician Board[[https://garoa.net.br/wiki/Magician_Board]]
 
* Documentação Placa controladora / motor driver Magician Board[[https://garoa.net.br/wiki/Magician_Board]]
 
* [[Arquivo:Robo_Magician_Chassis.stl]] STL para impressão 3D ou corte (laser?)
 
* [[Arquivo:Robo_Magician_Chassis.stl]] STL para impressão 3D ou corte (laser?)
Linha 36: Linha 42:
   
   
Fotos Instrução de montagem Preliminares, click para Zoom:
+
==Fotos Instrução de montagem Preliminares==
   
  +
Clique na foto para ver em detalhes.
  +
  +
<!--
 
[[Arquivo:Kit_Mini_Robo_-_Magician_Board_1.jpg|400px|thumb|left|Foto 1 - Montagem servos com suporte]]
 
[[Arquivo:Kit_Mini_Robo_-_Magician_Board_1.jpg|400px|thumb|left|Foto 1 - Montagem servos com suporte]]
   
Linha 53: Linha 62:
   
 
[[Arquivo:Kit_Mini_Robo_-_Magician_Board_8.jpg|400px|thumb|left|Foto 8 - Mini Robô com conjunto motor rodas montados]]
 
[[Arquivo:Kit_Mini_Robo_-_Magician_Board_8.jpg|400px|thumb|left|Foto 8 - Mini Robô com conjunto motor rodas montados]]
  +
-->
  +
  +
<gallery widths=400px perrow=3>
  +
Arquivo:Kit_Mini_Robo_-_Magician_Board_1.jpg|Foto 1 - Montagem servos com suporte
  +
Arquivo:Kit_Mini_Robo_-_Magician_Board_2.jpg|Foto 2 - Suporte da roda
  +
Arquivo:Kit_Mini_Robo_-_Magician_Board_3.jpg|Foto 3 - Montagem Roda no servo
  +
Arquivo:Kit_Mini_Robo_-_Magician_Board_4.jpg|Foto 4 - Parafusos/ porcas p/ Fixacao "Roller Ball"
  +
Arquivo:Kit_Mini_Robo_-_Magician_Board_5.jpg|Foto 5 - montagem Parafusos suporte "Roller Ball" no Chassis
  +
Arquivo:Kit_Mini_Robo_-_Magician_Board_6.jpg|Foto 6 - "Roller Ball" já fixado no Chassis
  +
Arquivo:Kit_Mini_Robo_-_Magician_Board_7.jpg|Foto 7 - Montagem Completa vista por baixo
  +
Arquivo:Kit_Mini_Robo_-_Magician_Board_8.jpg|Foto 8 - Mini Robô com conjunto motor rodas montados
  +
</gallery>
  +
  +
== Programação e Uso ==
  +
  +
(em construção)
  +
  +
=== Preparação da IDE Arduino ===
  +
  +
A placa Micro Magician é suportada pelo pacote "Arduino AVR Boards" que já vem instalado na IDE Arduino. O Atmega da placa vem com o bootloader do Arduino Pro; deve ser selecionado este modelo de placa, com a opção "ATmega168 (3,3V / 8MHz)":
  +
  +
[[Arquivo:Arduino_IDE_Magician_Board.png|400px|Configuração da Placa na IDE Arduino]]
  +
  +
  +
Baixe a biblioteca do fabricante [https://drive.google.com/file/d/1BB9AmYMv4TEDe_X67GW-W_6kiJxqB-_A/view?usp=sharing] e expanda o Zip no diretório de bibliotecas (Meus Documentos\Arduino\livraries no Windows).
  +
  +
Nos seus programas (''sketches''), coloque no início a linha abaixo para usar a biblioteca do fabricante:
  +
  +
<code>#include <microM.h></code>
  +
  +
Na rotina <code>setup()</code> do sketch colocar uma chamada a <code>microM.Setup()</code>
  +
  +
=== Controle dos Motores ===
  +
  +
A biblioteca microM possui uma função <code>Motors</code> da classe <code>microM</code> para controlar motores DC. Os servo motores devem ser ligados no conectores "Motor A Output" e "Motor B Output".
  +
  +
<code>void Motors(int leftSpeed, int rightSpeed, byte leftBrake, byte rightBrake)</code>
  +
  +
Se <code>leftBrake</code> for diferente de 0, o driver do motor A é programado para frear o motor. Se for 0, <code>leftSpeed</code> (0 a 255) determina a velocidade de rotação.
  +
  +
Se <code>rigthBrake</code> for diferente de 0, o driver do motor B é programado para frear o motor. Se for 0, <code>rightSpeed</code> (0 a 255) determina a velocidade de rotação.
  +
  +
=== Uso do Acelerômetro ===
  +
  +
A biblioteca possui a rotina <code>microM.Impact()</code> que pode ser chamada periodicamente para detectar impactos. O resultado do teste está nas variáveis <code>microM.magnitude</code>, <code>microM.deltx</code>, <code>microM.delty</code> e <code>microM.deltz</code>. A sensibilidade da detecção pode ser ajustada pelas variáveis <code>microM.sensitivity</code> e <code>microM.devibrate</code>.
  +
  +
=== Uso do Sensor IR ===
  +
  +
A biblioteca possui o suporte suporte à recepção de comandos através do sensor IR, porém suporta somente o padrão Sony. A alteração para suportar outros padrões não é trivial. Algumas opções a estudar:
  +
  +
* Alterar a biblioteca do fabricante para o uso do IR ser opcional e usar uma biblioteca mais abrangente, como a [https://github.com/Arduino-IRremote/Arduino-IRremote IRremote].
  +
* Usar um segundo microcontrolador para implementar um controle padrão Sony, usando a biblioteca [https://github.com/Arduino-IRremote/Arduino-IRremote IRremote] e um LED IR.
  +
  +
<blockquote>
  +
''Use the source, Luke!''
  +
</blockquote>
  +
  +
=== Uso do Sensor Ultrassônico ===
  +
  +
  +
=== Uso do Display de 7 Segmentos ===
  +
  +
  +
=== Exemplos ===
  +
  +
a preparar

Edição atual tal como às 10h56min de 23 de setembro de 2024

Essa página será atualizada a medida que incluirmos alterações no kit, melhorarias nas instruções, novas funcionalidades, software, etc.

Mini Robô com rodas e servos montados

Conteúdo do Kit (Beta)

Kit Mini Robô

Atualmente o kit contém os seguintes itens. Essa lista poderá sofrer alterações caso encontremos outros componentes interessantes

  • 1x Chassis MDF
  • 2x Rodas
  • 1x "Rollerball"
  • 2x servo motor (alterado para giro contínuo)
  • 2x suporte para servo motor (em PLA impresso em impressora 3D)
  • 1x suporte para 4 pilhas AA
  • 1x placa Micro Magician Robot Controller v1 (ATMega168)
  • 1 x sensor ultrassônico HC-SR04
  • 1x display de 7 segmentos
  • 1x integrado CD4511 (decodificador para display de 7 segmentos)
  • 1x buzzer
  • 2x botões pushbutton
  • 6x LEDs de cores diversas
  • 2x LEDs RGB
  • 4x diodos 1N4007
  • 10x resistores 2,2k
  • 1x mini protoboard
  • 2x cabos de alimentação
  • fita velcro
  • Parafusos e porcas
  • Fios para protoboard de tamanhos cores/diversos (65 fios)

Referências:


Fotos Instrução de montagem Preliminares

Clique na foto para ver em detalhes.


Programação e Uso

(em construção)

Preparação da IDE Arduino

A placa Micro Magician é suportada pelo pacote "Arduino AVR Boards" que já vem instalado na IDE Arduino. O Atmega da placa vem com o bootloader do Arduino Pro; deve ser selecionado este modelo de placa, com a opção "ATmega168 (3,3V / 8MHz)":

Configuração da Placa na IDE Arduino


Baixe a biblioteca do fabricante [2] e expanda o Zip no diretório de bibliotecas (Meus Documentos\Arduino\livraries no Windows).

Nos seus programas (sketches), coloque no início a linha abaixo para usar a biblioteca do fabricante:

#include <microM.h>

Na rotina setup() do sketch colocar uma chamada a microM.Setup()

Controle dos Motores

A biblioteca microM possui uma função Motors da classe microM para controlar motores DC. Os servo motores devem ser ligados no conectores "Motor A Output" e "Motor B Output".

void Motors(int leftSpeed, int rightSpeed, byte leftBrake, byte rightBrake)

Se leftBrake for diferente de 0, o driver do motor A é programado para frear o motor. Se for 0, leftSpeed (0 a 255) determina a velocidade de rotação.

Se rigthBrake for diferente de 0, o driver do motor B é programado para frear o motor. Se for 0, rightSpeed (0 a 255) determina a velocidade de rotação.

Uso do Acelerômetro

A biblioteca possui a rotina microM.Impact() que pode ser chamada periodicamente para detectar impactos. O resultado do teste está nas variáveis microM.magnitude, microM.deltx, microM.delty e microM.deltz. A sensibilidade da detecção pode ser ajustada pelas variáveis microM.sensitivity e microM.devibrate.

Uso do Sensor IR

A biblioteca possui o suporte suporte à recepção de comandos através do sensor IR, porém suporta somente o padrão Sony. A alteração para suportar outros padrões não é trivial. Algumas opções a estudar:

  • Alterar a biblioteca do fabricante para o uso do IR ser opcional e usar uma biblioteca mais abrangente, como a IRremote.
  • Usar um segundo microcontrolador para implementar um controle padrão Sony, usando a biblioteca IRremote e um LED IR.

Use the source, Luke!

Uso do Sensor Ultrassônico

Uso do Display de 7 Segmentos

Exemplos

a preparar