Índice:
Vídeo: Criando pára-choques para um robô: 4 etapas
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Em meu curso de engenharia da computação do 11º ano, recebemos a tarefa de fazer nosso robô passar por um labirinto. A fim de controlar se vai em linha reta, vira à esquerda ou à direita, fomos solicitados a fazer pára-choques. Desta forma, se o robô tocasse na parede e acertasse o para-choque direito, o robô viraria para a esquerda e se acertasse o para-choque esquerdo o robô viraria para a direita. Então, basicamente, nossa tarefa era criar um pára-choque que pudesse ser empurrado para permitir a virada e eu também precisava voltar para que ele não continuasse girando em um loop. No entanto, a configuração de um pára-choque também exige que você configure um código e um circuito para que seu pára-choque funcione. Siga as etapas a seguir para aprender a fazer seu próprio pára-choque para um robô.
Etapa 1: O circuito
Para fazer os amortecedores funcionarem, você precisa criar um circuito na placa de ensaio na parte superior do seu robô.
(siga a imagem acima para obter 2 amortecedores)
Materiais necessários
- 2 pequenas luzes led (para garantir que seus pára-choques estão funcionando)
- 8 fios
- 2 resistores marrom-preto-amarelo
- 2 resistores vermelho-vermelho-marrom
Algumas coisas para manter em mente
- O Vss é o "chão" ali pois é igual a zero e o Vdd é igual a 1
- Quando o circuito está funcionando, o valor é 0, quando não está funcionando, o valor é 1
- O lado plano do led é negativo e o outro lado é positivo
Erros comuns em circuitos
- LED está do lado errado
- O LED, o resistor e o fio não estão alinhados na mesma coluna
- O led não funciona mais
Etapa 2: O Código
O código:
'{$ STAMP BS2}' {$ PBASIC 2.5}
LBump PIN 11
RBump PIN 10
LMOTOR PIN 15
PIN RMOTOR 14
RFast CON 650
LFast CON 850
RSlow CON 700
LSLOW CON 800
MStop CON 750
RFastRev CON 850
LFastRev CON 650
RSlowRev CON 800
LSlowRev CON 700
MLoopC VAR Word 'For.. Próxima Variável até 65000ish
FAZ
GOSUB Forwardfast 'vá em frente
IF IN10 = 0 THEN 'se os dois fios na entrada 10 forem pressionados, vire à esquerda
GOSUB TurnLeft90
ELSEIF IN11 = 0 THEN 'se os dois fios na entrada 11 forem pressionados, vire à direita
GOSUB TurnRight90
FIM SE
CICLO
TurnRight90:
'Subprocedimento para virar 90 graus à direita
'**********************************************************
ALTO 1
BAIXO 0
PARA MLoopC = 1 A 22
PULSOUT LMOTOR, LfastRev 'avançar um pulso
PULSOUT RMOTOR, Rfast 'usando pinos e constantes
PAUSA 20
'20mS permite que o robô se mova' antes do PRÓXIMO pulso
PRÓXIMO
RETORNA
'*********************************************************
TurnLeft90:
'Subprocedimento para virar 90 graus à direita
'********************************************************
ALTO 0
BAIXO 1
PARA MLoopC = 1 A 22
PULSOUT LMOTOR, Lfast 'avançar um pulso
PULSOUT RMOTOR, RfastRev 'usando pinos e constantes
PAUSA 20 '20mS permite que o robô se mova' antes do PRÓXIMO pulso
PRÓXIMO
RETORNA
'***********************************************************
ForwardFast:
'Subprocedimento para mover o robô para frente um quadrado rápido
'**********************************************************
PARA MLoopC = 1 A 70
PULSOUT LMOTOR, LFast PULSOUT
RMOTOR, RFast
PAUSA 20
PRÓXIMO
RETORNA
Breve Visão Geral
O objetivo deste código é programar o robô para virar à esquerda quando os fios direitos (amortecedor) são pressionados e virar à direita quando os fios esquerdos (amortecedor) são pressionados.
O que significa o código?
Bem antes de eu responder a essa pergunta, você deve estar familiarizado com o que significam alguns dos códigos usados neste programa.
GOSUB - então sub significa ir para sub-rotina (a sub-rotina deve ser identificada em seu código)
ENDIF - usado para encerrar o comando IF de várias linhas
_
explicando o significado por trás do código…..
DOGOSUB Forwardfast
- Está dizendo ao robô para seguir em frente assim que for ligado
SE IN10 = 0 ENTÃO
GOSUB TurnLeft90
- está dizendo que se os dois fios na entrada 10 (o pára-choque direito) se tocarem, o robô girará para a esquerda em um ângulo de 90º.
ELSEIF
IN11 = 0 ENTÃO GOSUB TurnRight90
- está dizendo que se os dois fios na entrada 11 (pára-choque esquerdo) se tocarem, o robô girará para a direita em um ângulo de 90.
TurnRight90: 'Subprocedimento para virar 90 graus à direita
'**********************************************************
ALTO 1
BAIXO 0
PARA MLoopC = 1 A 22
PULSOUT LMOTOR, LfastRev
PULSOUT RMOTOR, Rfast
PAUSA 20
PRÓXIMO RETORNO '************************************************ **********
- este é um exemplo de uma sub-rotina que é usada para que você não precise repetir o mesmo código longo indefinidamente. desta forma, seu código parece mais organizado e mais organizado.
- o alto 1 / baixo zero significa que quando o robô gira para a direita (os fios da esquerda se tocam) o led acende, dessa forma você sabe que tudo está funcionando.
Etapa 3: Os pára-choques (materiais necessários)
Para fazer o pára-choque, você precisará …
- 4 palitos de picolé para a estrutura principal e 2 palitos de picolé para montar o pára-choque no robô
- 4 pedaços de uma esponja
- 4 clipes de papel
- então folha de alumínio
- 4 fios (para conectar à placa de ensaio, explicado na etapa 1 sobre o circuito)
- pistola de cola quente e bastões de cola
- fita adesiva
Etapa 4: montagem dos amortecedores
Para fazer um pára-choque, pegue 2 palitos de picolé e corte as pontas arredondadas (como marcado na 1ª foto). Esses palitos de picolé funcionarão como parte superior e inferior do seu pára-choque. Para que os fios se toquem e não se toquem logo em seguida, é necessária uma esponja. Pegue uma esponja e corte 2 quadrados minúsculos (como na segunda foto mostrada acima). Em seguida, usando uma pistola de cola quente, pegue 1 palito de picolé e cole 1 esponja quadrada do lado esquerdo e uma esponja do lado direito (use a 3ª foto como referência). Em seguida, pegue 1 fio e envolva uma extremidade da ponta do fio com um pouco de papel alumínio. Coloque o arame no meio do palito de picolé e prenda-o com um clipe de papel. Repita esta etapa com o segundo fio e o palito de picolé. Por último, cole o picolé sem as esponjas, ao picolé com as esponjas (como mostra a 3ª foto acima). Agora seu primeiro bumper está completo
Repita todo esse processo uma segunda vez para fazer um segundo pára-choque.
Para adicionar os pára-choques ao robô, pegue um palito de picolé e cole-o na parte inferior do pára-choque. Incline o pára-choque esquerdo para o lado esquerdo e incline o pára-choque direito para o lado direito. Colei os pára-choques com fita adesiva. (a foto número 4 mostra os pára-choques completos, anexados ao robô).