sábado, 30 de dezembro de 2017

Vigésimo sexto encontro - Avaliação

Olá turma;
Este último encontro, 08/12/2017, teve baixa participação presencial, pois as férias estão chegando e alguns já a anteciparam.
Sem problema para o nosso processo de avaliação, pois nossas questões foram sendo discutidas ao longo dos encontros.
 Concluímos os projetos:
 semáforo;
 cadeira giratória;
 carrinhos elétricos com sucata;
 sensor de distância ultrassônico (simulador  virtual);
 sensor de luz LDR (simulador virtual);

Durante nosso projeto surgiu a possibilidade de realizarmos montagens físicas com o arduíno graças ao recebimento do kit arduino ganho pelo professor na oficina USP/CODEIoT. De forma que montamos:
 um sensor de luz com LDR
 uma automatização de ventilador: só liga a partir de uma dada temperatura. Este circuito foi sugerido pela equipe de robótica, mas concluído com alunos que ainda não fazem parte da equipe. pois realizou-se em outros dias.

Projetos não concluídos:
Carrinho de sucata com o uso de polias.
Carro robótico com sensor de distância.


Para o próximo ano teremos velhos e novos desafios, velhos e novos alunos, sempre mantendo o espírito de colaboração e respeito, sempre curiosos!!!

P.S.
Devido a correria de final de ano - fechamento de notas, conselho de classe, correção de registros e pendências não pude manter em dia o blog. Peço desculpa,  espero que entendam!
Bom Ano Novo a todos!
 Prof. Paulo

Vigésimo quinto encontro - Carro robótico

Olá turma,
Este encontro,dia 01/12/2017, serviu para concluirmos a parte de programação referente a movimentação do carro, criamos funções para:
 avançar;
 recuar;
 parar;
 ir para a direita;
 ir para a esquerda;

// Controle de motores
// 
int led = 13;
int tempo = 100;
int sentA = 10;
int sentB =11;
int mtA = 5;  //motor A
int mtB = 6;  //motor B

//configura os pinos do Arduino como saida(OUTPUT)
void setup() {
  // initialize the digital pin as an output.
  pinMode(led, OUTPUT);
  pinMode(3, OUTPUT);
  pinMode(10,OUTPUT);
  pinMode(11,OUTPUT);
  pinMode(mtA,OUTPUT);
  pinMode(mtB,OUTPUT);
  
}


//Dentro do loop são executadas as funções que criamos:
void loop() {
      piscar();
      avancar();            

}

//função piscar
void piscar() {
  digitalWrite(led,HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(tempo);               // espera 1 segundo
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW - apaga o led
  delay(tempo);
}

// 
void motorA(int velA){
  analogWrite(mtA,velA);
}

void motorB(int velB){
  analogWrite(mtB,velB);
}
 void avancar(){
  digitalWrite(10,HIGH);
  digitalWrite(11,HIGH);
  motorA(250);
  motorB(250);
  
 }

 void recuar(){
  digitalWrite(10,LOW);
  digitalWrite(11,LOW);
  motorA(250);
  motorB(250);
 }

 void parar(){
  motorA(0);
  motorB(0);
 }

 void irDireita(int vel){
  motorA(vel);
  motorB(0);
 }

 void irEsquerda(int vel){
  motorA(0);
  motorB(vel);
 }


Está funcional e operante.
Para o próximo ano faremos melhorias

Abç a todos

Vigésimo quarto encontro - Montagem carro e IoT

Vigésimo quarto encontro - Montagem de carro e uso do kit IoT

Salve turma, neste encontro de 24/11/2017, montamos nosso carro com o Kit Atto, iniciamos as programação do mesmo e ainda houve tempo para uma parte da turma trabalhar no kit de arduino recebido do CODE IoT - montagem do sensor de luz que havíamos projetado no simulador Tinkercad. 

Atividades:
Montagem de carro com o Kit Atto.
Montagem de sensor de luz com kit CodeIoT.

Programação
Iniciamos o código para acionar os motores e controlar a velocidade
Localizamos as portas do kit que controlam os motores
Pensamos em maneiras de organizar nosso código.
Realizamos testes iniciais


Eletrônica com arduino:












abç a todos


Vigésimo terceiro encontro - IoT

Conhecendo IoT
Salve turma, neste encontro, 17/11/2017, realizamos uma interação entre robótica e IoT (Internet das Coisa). Optamos por esta abordagem devido a contingências, no caso ficamos sem internet e sem acesso ao Kit de Atto.

Assim adiantamo o nosso próximo tópico que é uma discussão sobre a Internet das Coisa - Internet of  Things, simplificando IoT.

Foi apresentado a vocês exemplos de objetos do cotidiano que estão ou podem estar conectados a internet: geladeiras, cafeteiras, tênis, relógios etc.

Foi proposto como atividade que vocês pensassem em objetos do seu cotidiano que podem ser conectados a internet. Vocês apresentaram os seguintes exemplos:

- ventilador que liga sozinho quando há presença de pessoas na sala e a temperatura está alta.
- porta que abre automaticamente ao perceber a presença da chave e da aproximação de uma pessoa.
- armário que escolhe a roupa apropriada para o dono em função do clima.
- cama despertador

O professor Paulo também apresentou aos alunos um kit de arduino que recebeu por participar da oficina de Internet das Coisas promovida pela USP.

Como desafio, foi pedido para vocês pensarem na viabilidade da implementação de uma das ideias apresentadas ou de outra.

abç a todos.






Vigésimo segundo encontro -sensor infravermelho

Conhecendo sensores
Olá turma neste encontro,  dia 27/10/2017, passamos a conhecer e manusear um sensor infravermelho que acompanha o Kit ATTO.
Conhecemos o princípio de fundamentos deste tipo de sensor, muito comum na detecção de objetos e medição de distâncias.

Atividade:
Montagem do circuito no kit e testes de programação.

Programação:
Baseou-se no código abaixo e durante o encontro alteramos alguns parâmetros da função map com o objetivo de melhorar a precisão da leitura.
int _ABVAR_1_distancia = 0 ;

void setup()
{
  Serial.begin(9600);
}

void loop()
{
  _ABVAR_1_distancia = map ( analogRead(4) ,100 , 1000 , 0 , 45 )  ;
  Serial.print("Distancia =");
  Serial.print(_ABVAR_1_distancia);
  Serial.println();
  delay( 1000 );
}

Após os testes planejamos nossos próximos encontros focando utilizar o sensor acoplado num carro robótico a ser montado

Dividimos o grupo em 2 sub grupos para os trabalhos com carro robótico:
 Mecânica e  programação.

Abraço a todos!

sexta-feira, 27 de outubro de 2017

Vigésimo primeiro encontro - Sensores

Conhecendo sensores - LDR - Resistor dependente de luz
Salve turma,
Nesta data, 20/10/2017, brincamos com um novo componente, o LDR. Um componente que altera suas propriedades elétricas na presença da luz. Muito utilizado em circuitos de iluminação automática.
Nossa atividade:
Desenvolver um circuito que aumenta a luminosidade quando o um ambiente escurece.
Os alunos foram divididos em grupos que pesquisaram e montaram os circuitos

Montagem eletrônica:
Criar um circuito similar, análogo ao que está abaixo no laboratório virtual tinkercad:

https://d10zxokiwapyap.cloudfront.net/circuits/3wGBSv0XBCw-eac5a5d5-caca-4547-906c-4976467675ce-snapshot-thumb

programação
Criar um  código funcional para o circuito
//Sensor de luz com LDR

int ledPin = 6; //Led no pino 
int ldrPin = A0; //LDR no pino analígico a0
int ldrValor = 0; //Valor lido do LDR

void setup() {
 pinMode(ledPin,OUTPUT); //define a porta 6 como saída
 Serial.begin(9600); //Inicia a comunicação serial
}

void loop() {
 ///ler o valor do LDR
 ldrValor = analogRead(ldrPin); //O valor lido será entre 0 e 1023
 int valorMap=map(ldrValor,0,1023,0,255); // converte o valor lido para a faixa de a a 255
 analogWrite(ledPin,valorMap);  // 


 //imprime o valor lido do LDR no monitor serial
 Serial.println(ldrValor);
 Serial.println(valorMap); 
 delay(10);
}


void simNao(){
//se o valor lido for maior que 500, liga o led
 if (ldrValor>= 800) digitalWrite(ledPin,HIGH);
 // senão, apaga o led
 else digitalWrite(ledPin,LOW);
}

Façam os testes que acharem interessantes

Abraço a todo


quinta-feira, 19 de outubro de 2017

Vigésimo encontro - funções (continuação)

Trabalhando com funções (programação)

Olá turma no nosso encontro, dia 6/10/2017, continuamos a conhecer um pouco mais de programação através de nosso experimentos com funções.
Vimos que elas são um bloco de códigos e as utilizamos para situações repetitivas de forma a deixar nosso código mais limpo e legível.
Neste encontro também solucionamos o problema de senha de alguns alunos que não estavam conseguindo cadastrar-se no site do tinkercad.

Revimos os conceitos de variável e estruturas de repetição; comando if.

Segue abaixo alguns links para vocês poderem estudar e tirar dúvidas



Caso queiram um bom canal no Youtube sobre arduino vejam estas aulas: Click

Abraço a todos!









sexta-feira, 6 de outubro de 2017

Código completo com sensor e funções piscar

Trabalhando com sensores - funções

// Conexão Ping))) conectar pino do arduino ao sensor
int sinal=8;   //indica qual pino do arduino o sensor esta ligado
int distancia; //gurada o valor da distancia medida
unsigned long pulseduration=0;  //duração do pulso
//conexão dos leds
int led1=13;
int led2=12;
int led3=11;
int led4=10;
 


//função roda apenas quando o arduino é ligado e configura
void setup()
{
 pinMode(led1, OUTPUT);
 pinMode(led2, OUTPUT);
 pinMode(led3, OUTPUT);
 pinMode(led4, OUTPUT);
 pinMode(sinal, OUTPUT);   //configura o pino de sinal como saida
 Serial.begin(9600); //faz a comunicação do arduino com o computador via usb
}



void loop()
{
 // le o sensor Ping)))
 medirDistancia();

 // divideo o valor do pulso pela metade
 pulseduration=pulseduration/2;

 // now convert to centimetres. We're metric here people...
 //converte a duranção do pulso em centimetros e armazena na variavel distância
 distancia = int(pulseduration/29);

 // Display on serial monitor
 Serial.print("Distance - ");
 Serial.print(distancia);
 Serial.println(" cm");
 //acender();
  if(distancia<100){
    piscar2();
  } else { piscar();}
 delay(100);
 
}

//função para calcular a distancia
void medirDistancia()
{
 // set pin as output so we can send a pulse
 //definir pino sinal como saída para que possamos enviar um pulso
 pinMode(sinal, OUTPUT);
// set output to LOW
 digitalWrite(sinal, LOW);
 delayMicroseconds(5);

 // now send the 5uS pulse out to activate Ping)))
 //agora envie o pulso de 5uS para ativar Ping
 digitalWrite(sinal, HIGH);
 delayMicroseconds(5);
 digitalWrite(sinal, LOW);

 // now we need to change the digital pin
 // to input to read the incoming pulse
 //agora precisamos mudar o pino digital
 // para inserir para ler o pulso recebido
 pinMode(sinal, INPUT);

 // finally, measure the length of the incoming pulse
 //finalmente, medimos o comprimento do pulso recebido
 pulseduration=pulseIn(sinal, HIGH);
}

//--------------------
//função para acender os led conforme a distancia
void acender(){
  if(distancia<30){
    digitalWrite(led1, HIGH);}else{digitalWrite(led1, LOW);
                                  }
  if(distancia<60){ digitalWrite(led2, HIGH);}else{digitalWrite(led2, LOW);}
  if(distancia<90){ digitalWrite(led3, HIGH);}else{digitalWrite(led3, LOW);}
  if(distancia<120){ digitalWrite(led4, HIGH);}else{digitalWrite(led4, LOW);}

}

//função piscar leds
void piscar(){
  digitalWrite(led1, HIGH);
  digitalWrite(led2, HIGH);
  digitalWrite(led3, HIGH);
  digitalWrite(led4, HIGH);
  delay(500);
  digitalWrite(led1, LOW);
  digitalWrite(led2, LOW);
  digitalWrite(led3, LOW);
  digitalWrite(led4, LOW);
  delay(500);
}//fim da funcçãp piscar

//função piscar sequencialmente leds
void piscar2(){
  int tempo=50;
  digitalWrite(led1, HIGH);
  delay(tempo);
  digitalWrite(led1, LOW);
  delay(tempo);
  digitalWrite(led2, HIGH);
  delay(tempo);
  digitalWrite(led2,LOW);
  delay(tempo);
 digitalWrite(led3, HIGH);
  delay(tempo);
  digitalWrite(led3, LOW);
  delay(tempo);
  digitalWrite(led4, HIGH);
  delay(tempo);
  digitalWrite(led4,LOW);
  delay(tempo);
}


Obs.: As funções que vc não for utilizar comente-as, ou seja, coloque duas barras // antes da função.

Décimo nono encontro - sensores e funções

Trabalhando com sensores e funções (programação)

Olá turma no encontro do dia 29/09/17
Fizemos experimentos com funções de programação para tornar nosso código interessante.
Criamos funções para piscar um 4 leds simultaneamente e sequencialmente conforme uma distancia pré definida por nós.

Segue abaixo o código

//função piscar leds
void piscar(){
  digitalWrite(led1, HIGH);
  digitalWrite(led2, HIGH);
  digitalWrite(led3, HIGH);
  digitalWrite(led4, HIGH);
  delay(500);
  digitalWrite(led1, LOW);
  digitalWrite(led2, LOW);
  digitalWrite(led3, LOW);
  digitalWrite(led4, LOW);
  delay(500);
}

//função piscar sequencialmente leds
void piscar2(){
  int tempo=50;
  digitalWrite(led1, HIGH);
  delay(tempo);
  digitalWrite(led1, LOW);
  delay(tempo);
  digitalWrite(led2, HIGH);
  delay(tempo);
  digitalWrite(led2,LOW);
  delay(tempo);
 digitalWrite(led3, HIGH);
  delay(tempo);
  digitalWrite(led3, LOW);
  delay(tempo);
  digitalWrite(led4, HIGH);
  delay(tempo);
  digitalWrite(led4,LOW);
  delay(tempo);
}

Não esqueçam de colocar estas funções no final do código principal e para usá-las basta chamá-las dentro da função loop, ou seja, dentro de void loop () em sua última linha
Abraço


quinta-feira, 28 de setembro de 2017

Décimo oitavo - sensores

Trabalhando com sensores: Medindo distâncias 2ª parte

Olá turma, em nosso encontro do dia 22/09/2017 continuamos trabalhando com nosso sensor de ultrassom. Começamos a entender a função que mede a distância e acrescentamos leds no Arduíno.

Nossa atividade
Eletrônica
Acrescentado 4 leds no circuito virtual e interligados ao Arduíno.



Programação
Configuramos as portas do Arduíno como saída
Revimos o comando if else.
Implementamos a função acender led condicionada a distância medida pelo sensor

//função para acender os led conforme a distancia
void acender(){
  if(distancia<30){ digitalWrite(led1, HIGH);}else{digitalWrite(led1, LOW);}
  if(distancia<60){ digitalWrite(led2, HIGH);}else{digitalWrite(led2, LOW);}
  if(distancia<90){ digitalWrite(led3, HIGH);}else{digitalWrite(led3, LOW);}
  if(distancia<120){ digitalWrite(led4, HIGH);}else{digitalWrite(led4, LOW);} 

}


Próxima aula vamos discutir e entender com detalhes esta e outras funções,
Abç a todos!

sexta-feira, 22 de setembro de 2017

Décimo sétimo encontro - sensores

Trabalhando com sensores: Medindo distâncias

Olá turma, neste nosso encontro, dia 15/09/2017, "brincamos com um sensor de ultrassom". Entendemos a teoria de seu funcionamento e projetamos um circuito virtual na plataforma tinkercad.

Nossa atividade
Eletrônica
Conhecemos o princípio de funcionamento de um sensor de ultrassom, conhecemos e definimos o que é ultrassom, vimos como funciona superficialmente o sensor
Montamos o circuito com o sensor no tinkercad: 1 placa de Arduíno e um sensor ultrassônico.

Programação
A partir de um modelo de programa que conseguimos na internet implementamos um circuito de medição através de ondas ultrassônica.

Próxima aula implementaremos leds no circuito

Código ping traduzido e comentado

Olá turma
Código para medir e acender os 4 leds

// Conexão Ping))) conectar pino do arduino ao sensor
int sinal=8;   //indica qual pino do arduino o sensor esta ligado
int distancia; //gurada o valor da distancia medida
unsigned long pulseduration=0;  //duração do pulso
//conexão dos leds
int led1=13;
int led2=12;
int led3=11;
int led4=10;
 


//função roda apenas quando o arduino é ligado e configura
void setup()
{
 pinMode(led1, OUTPUT);
 pinMode(led2, OUTPUT);
 pinMode(led3, OUTPUT);
 pinMode(led4, OUTPUT);
 pinMode(sinal, OUTPUT);   //configura o pino de sinal como saida
 Serial.begin(9600);      //faz a comunicação do arduino com o computador via usb
}



void loop()
{
 // le o sensor Ping)))
 medirDistancia();

 // divideo o valor do pulso pela metade
 pulseduration=pulseduration/2;

 // now convert to centimetres. We're metric here people...
 //converte a duranção do pulso em centimetros e armazena na variavel distância
 distancia = int(pulseduration/29);

 // Display on serial monitor
 Serial.print("Distance - ");
 Serial.print(distancia);
 Serial.println(" cm");
 acender();
 delay(100);
 
}

//função para calcular a distancia
void medirDistancia()
{
 // set pin as output so we can send a pulse
 //definir pino sinal como saída para que possamos enviar um pulso
 pinMode(sinal, OUTPUT);
// set output to LOW
 digitalWrite(sinal, LOW);
 delayMicroseconds(5);

 // now send the 5uS pulse out to activate Ping)))
 //agora envie o pulso de 5uS para ativar Ping
 digitalWrite(sinal, HIGH);
 delayMicroseconds(5);
 digitalWrite(sinal, LOW);

 // now we need to change the digital pin
 // to input to read the incoming pulse
 //agora precisamos mudar o pino digital
 // para inserir para ler o pulso recebido
 pinMode(sinal, INPUT);

 // finally, measure the length of the incoming pulse
 //finalmente, medimos o comprimento do pulso recebido
 pulseduration=pulseIn(sinal, HIGH);
}

//função para acender os led conforme a distancia
void acender(){
  if(distancia<30){ digitalWrite(led1, HIGH);}else{digitalWrite(led1, LOW);}
  if(distancia<60){ digitalWrite(led2, HIGH);}else{digitalWrite(led2, LOW);}
  if(distancia<90){ digitalWrite(led3, HIGH);}else{digitalWrite(led3, LOW);}
  if(distancia<120){ digitalWrite(led4, HIGH);}else{digitalWrite(led4, LOW);}

}

sexta-feira, 15 de setembro de 2017

Código Ping

Olá turma
Tentem usar este código para calcular a distância com o sensor ultrassônico de 3 pinos (PING)
Este código peguei neste site: click aqui
http://tronixstuff.com/2011/11/28/tutorial-parallax-ping-ultrasonic-sensor/

// Connect Ping))) signal pin to Arduino digital 8
int signal=8;
int distance;
unsigned long pulseduration=0;
void setup()
{
pinMode(signal, OUTPUT);
Serial.begin(9600);
}
void measureDistance()
{
// set pin as output so we can send a pulse
pinMode(signal, OUTPUT);
// set output to LOW
digitalWrite(signal, LOW);
delayMicroseconds(5);
 
// now send the 5uS pulse out to activate Ping)))
digitalWrite(signal, HIGH);
delayMicroseconds(5);
digitalWrite(signal, LOW);
 
// now we need to change the digital pin
// to input to read the incoming pulse
pinMode(signal, INPUT);
 
// finally, measure the length of the incoming pulse
pulseduration=pulseIn(signal, HIGH);
}
void loop()
{
// get the raw measurement data from Ping)))
measureDistance();
 
// divide the pulse length by half
pulseduration=pulseduration/2;
 
// now convert to centimetres. We're metric here people...
distance = int(pulseduration/29);
 
// Display on serial monitor
Serial.print("Distance - ");
Serial.print(distance);
Serial.println(" cm");
delay(500);
}

sexta-feira, 8 de setembro de 2017

Décimo sexto encontro

Montagem de carrinhos - Ação - 3ª parte

Olá turma, estamos chegando ao final das nossas montagens com materiais diversos, neste dia 01/09/2017 resolvemos problemas nas montagens e conseguimos 2 carrinhos funcionais de 3 previstos.
Testamos o programa tinkcard  na sala de informática, ao que parece está ok e poderemos reutilizá-lo nos próximos encontros.

Nossa atividade:
Continuação das montagens
Teste dos carrinhos
abaixo imagens de nosso trabalho
             












Abraço a todos

quinta-feira, 7 de setembro de 2017

Décimo quinto encontro

Montando carrinhos - Ação - 2ª parte

Olá turma, em 25/08/2017 continuamos a montagem dos carrinhos e estudamos o funcionamento de polias e verificamos a possibilidade de implementar um carrinho com polias.
Nossas atividades:
 montagem de carrinhos
 visualização de vídeo sobre polias
 confecção de polias

Encontramos alguns problemas em relação a fixação dos fios, tensão de operação dos motores, centralização dos eixos nas rodas e dimensões para as polias. 

Em nosso próximo encontro  tentaremos resolver estes e outros problemas, tragam sugestões.
Vídeo de apoio sobre confecção de polias:
https://www.youtube.com/watch?v=SviOC_qtkX0
Abraço a todos. 


Décimo quarto encontro

Montando carrinhos - Ação

Olá turma, nosso encontro do dia 18/08/17 foi fantástico!!!
Colocamos mão na massa!!!!
Dividimos a turma em 3 grupos que receberam:
 2 - tampas
 1 - pedaço de papelão
 2 - motores elétricos
 palitos a vontade
 canudos de refrigerante
 elásticos

Atividade:
A partir destes materiais e outros os grupos iniciaram a montagem dos carrinhos:
Desafios, problemas e soluções encontramos.
Até o momento montamos um carrinho funcional,
Abaixo segue as imagens e vídeos da atividade
Abraço a  todos
















segunda-feira, 21 de agosto de 2017

Décimo terceiro encontro

Montando carrinhos - Planejando

Olá turma, no nosso encontro do dia 11/08/17 começamos a planejar carrinhos com materiais recicláveis , "lixo eletrônico" e materiais disponíveis na escola e em casa.
Para despertar as ideais e ver possibilidades vimos dois vídeos no youtube

Discutimos conceitos de:
Polia;
Eixo;
Rodas;
Revimos o funcionamento de motores elétricos.

Combinamos para a próxima aula trazer tampas de maionese, palitos de churrasco e outros
materiais que acharmos interessantes.

Abraço a todos!









quinta-feira, 10 de agosto de 2017

Décimo segundo encontro

Dando um giro

Olá turma, no encontro do dia 04/08 fizemos nossa base girar, definimos que ela deveria girar 2 segundos em sentido horário, parar por 2 segundos e depois girar 2 segundos no sentido anti-horários.
Foi um sucesso e também testamos vários valores para a velocidade do motor.
Chegou novos colegas para integrar nossa equipe.
Nossa atividade:
Eletrônica
Conhecemos o princípio de PWM, que nos permitiu controlar a velocidade do motor.

Programação
Conhecemos e trabalhamos com a porta analógica do arduíno que nos permitiu controlar a velocidade do motor.
No caso utilizamos o comando:
 analogicWrite(5,128), aqui 5 é o pino do arduíno onde o motor está conectado e 128 para a velocidade. 
Nosso código simplificado, que posteriormente vocês farão algumas alterações:

 int led = 2;   //variável para o led ligado no pino 2 do arduino
 
// configuração dos pinos do arduino como saída
void setup() {
         pinMode(led, OUTPUT);
         pinMode(10, OUTPUT);    //sentido de giro
         pinMode(5, OUTPUT );    // controla a velocidade
}

//Execução do programa
void loop(){
        digitalWrite(led, HIGH);     //Acende led
        digitalWrite(10,LOW);        //gira sentido horário
        analogicWrite(5, 150);         // velocidade pela metade no pino 5 
        delay(2000) ;                       //aguarda 2 segundos
        analogicWrite(5,0 );              //velocidade 0, motor para
        delay(2000);                      //fica parado por 2 segundos
        digitalWrite(10,HIGH);        //gira sentido anti-horário
        analogicWrite(5, 150);          
        delay(2000);
}

Para as próximas aula estamos vendo a possibilidade de integrar um sensor de distância para ligar e desligar o circuito.
Também vamos confirmar se começamos a montar protótipos de carrinhos com sucata.
Nossas fotos 






Abraço a todos!!!




quinta-feira, 3 de agosto de 2017

Décimo primeiro encontro

Décimo primeiro encontro - Controle de motores - continuação

Olá pessoal, no encontro do dia 28/07/2017 tivemos altos e baixos...
Devido a atualizações na sala de informática não foi possível programarmos nosso arduíno para controlar os motores.
O simulador virtual tinkercad, assim como outros sites pararam de rodar devido as novas configurações da sala de informática. Vamos aguardar os reparos que já estão sendo providenciados para darmos continuidade nas etapas de eletrônica e programação.

Mecânica:
Explorando as possibilidades e a criatividade vocês construíram com o kit de robótica um disco giratório com cadeiras. Nosso desafio para os próximos encontros é colocá-lo em funcionamento.















Abraço a todos

sexta-feira, 7 de julho de 2017

Décimo encontro: controle de motores

Sempre firmes!!!!

10° encontro - Obtendo movimento com a eletrônica
Motores Dc continuação
Salve turma, no encontro do dia 30/06/17  continuamos ampliando nosso controle de motores com o circuito integrado L293d, inserimos um segundo motor e fizemos os testes manuais para controlá-los.

Tivemos um problema em relação ao circuit.io que migrou os projetos  do laboratório virtual para o site tinkercard.A princípio  vocês já estão cadastrados, pois basta entrar com o usuário e senha que vocês fizeram no circuit.io.Caso tenha problema, façam um cadastro no tinkercard.Os comando e operações são os mesmos.

Nossa atividade;
1 Eletrônica
1.1 Realizamos a conexão do segundo motor ao chip L293d, assim vimos que:
            O motor é ligado nas saídas do chip conhecidas como OUTPUT, há 4 destas saídas no c.i. (circuito integrado).
            Controlamos o sentido de giro através das entradas IN, também há 4 entradas no c.i. .

1.2  Relembramos alguns fundamentos de eletrônica digital, onde...
            Ligado      = verdadeiro = High =  1
            Desligado = falso          = Low =  0

1.3 Definindo o sentido de giro levando em consideração a polaridade do motor dc
            IN1       IN2
            0          1          Sentido Horário
            1          0          Sentido Anti-horário
            1          1          Freio
            0          0          desligado
          
           IN3       IN4
            0          1          Sentido Horário
            1          0          Sentido Anti-horário
            1          1          Freio
            0          0          desligado

2 Virtual/ tinkercad
2.1 Montagem do circuito com motores dc ligado no chip L293d
           Nesta etapa passamos a controlar 2 motores dc, Na na seguinte    configuração:
            entradas           pinos Chip
            In1                               2
            In2                               7
            saidas(motor A)
            out1                             3
            out2                             6

            entradas           pinos Chip
            In3                               10
            In4                               15
            saidas(motor B)
            out3                             11
            out4                             14

2.2 Nosso circuito 


           


DESAFIO
Coloquem uma placa de Arduíno UNO no circuito que vocês montaram e conectem da seguinte forma:
Arduino pinos           L293D pino           sinal          
            3                                  1               enable 1,2          
            2                                  2                IN1          
            4                                  7                IN2   
       
            6                                  9                enable 3,4          
            7                                 10               IN3           
            8                                 15               IN4 

Abç a todos!