Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

O passo a passo da programação
EDUARDOBRÍZIDA
Olá, me chamo Eduardo Brízida e sou apaixonado por tecnologia,
engenharia e robótica. Minhas especialidades são nas plataformas
LEGO e Arduíno, tendo experiência também em outras como
Microbit, PIC e ESP.
Atuo como competidor em torneios universitários, sou juiz em
competições como FLL, OBR e TBR, sou professor e mentor de
robótica no colégio onde estudei e também já fui capitão e líder da
equipe de robótica da faculdade.
Coleciono inúmeras premiações, dentre elas uma internacional da
FLL na Espanha e outra na Hungria, OBR e várias categorias do TBR.
Meu maior objetivo é contribuir na formação de jovens por meio da
tecnologia e robótica. Afinal, citando Dean Kamen, idealizador da
FIRST, nós não usamos crianças para construir robôs, mas robôs para
construirmos as crianças.
E quero compartilhar através desse e-book um conteúdo com 5
programações do EV3 para você utilizar em competições.
QUEM SOU EU
@eduardobrizida
https://www.instagram.com/eduardobrizida/
LEMBRE-SE SEMPRE!
- DEAN KAMEN 
NÃO É O QUE VOCÊ FAZ - É O QUE VOCÊ
ESTÁ SE TORNANDO.
QUAIS PROGRAMAÇÕES VOCÊ VAI
APRENDER?
Bumper
(Parachoque)
Aceleração e
Desaceleração
Calibração
Seguidor de Linha
por luminosidade
GyroTurn
@eduardobrizida
https://www.instagram.com/eduardobrizida/
 SEGUIDOR DE LINHA POR LUMINOSIDADE
O Seguidor de Linha por luminosidade é uma programação
em que o seu robô irá seguir a linha. 
Essa programação tem uma lógica binária porque ela se
baseia essencialmente em blocos de condição. Nela você
utiliza 2 sensores. 
Um sensor é o principal, responsável por seguir a linha e o
outro sensor é o auxiliar, responsável pela interrupção da
programação.
@eduardobrizida
https://www.instagram.com/eduardobrizida/
SEGUIDOR DE LINHA POR LUMINOSIDADE
MyBlock Visão Geral
Esse Myblock tem 4 parâmetros. O primeiro parâmetro é
responsável pela força que o seu robô terá ao seguir a linha. 
O segundo parâmetro é responsável pelo valor que o seu robô irá
buscar seguir. Por exemplo, se o seu sensor lê preto como 0 e
branco como 100 e você deseja seguir o meio da linha, você deve
colocar nesse parâmetro o valor 50. 
Já o terceiro e quarto parâmetro são responsáveis pela definição
do sensor 1 (principal) e do sensor 2 (parada).
Essa é a visão geral da programação. A primeira coisa é definir os
parâmetros no qual você já teria definido no MyBlock. Após a definição,
vem de fato a lógica em si, onde o robô gira para um lado caso o valor
esteja menor do que a variável luminosidade. Caso o valor esteja maior
do que a variável luminosidade, o robô irá girar para o lado oposto. Se
você reparar em cada situação, ele liga um motor e desliga o outro. Um
outro nome para esse Seguidor é Seguidor Binário.
BUMPER (PARACHOQUE)
O Bumper é uma programação feita para identificar quando o
robô bateu na parede de maneira autônoma. Para isso, a
programação verifica 2 momentos: Momento A e Momento B. 
Se a diferença dos graus dos motores entre esses dois
momentos for muito pequena é possível afirmar que o robô
não se deslocou tanto e, consequentemente, ele chegou na
parede.
@eduardobrizida
https://www.instagram.com/eduardobrizida/
Bumper (Conhecido como Parachoque)
Esse Myblock tem 2 parâmetros. O primeiro parâmetro
determina qual será a diferença de graus mínima para que o
robô não considere que chegou na parede. O segundo
parâmetro é a força que o robô irá andar. 
PS: O valor do parâmetro 1 depende do valor do parâmetro 2. O
parâmetro 1 é dependente. Se você mudar o valor do parâmetro
2, você terá que mudar o valor do parâmetro 1.
Essa é a visão geral da programação. A primeira coisa é zerar o valor de
um dos motores (no caso foi o motor B). Em seguida vem a lógica que
verifica os graus em 2 momentos, o Momento A e o Momento B. O
Momento B é 0.3 segundos depois do Momento A. Ou seja, se em 0.3
segundos o motor B tiver girado menos do que o valor do parâmetro,
eu posso afirmar que o robô chegou na parede. Se a diferença é muito
pequena, consequentemente, o meu robô praticamente nem andou.
Isso confirma que ele bateu na parede.
MyBlock Visão Geral
CALIBRAÇÃO
Essa programação é responsável pela calibração do sensor
de cor/luz. É muito importante que você calibre sempre que
a luminosidade do local for alterada ou quando você mudar
de mesa de competição. 
Essa programação verifica o valor máximo e o valor mínimo
lido pelo sensor. Durante essa verificação, o sensor vai
atualizando qual é o seu valor máximo e qual é o seu valor
mínimo. No final, você terá o seu sensor calibrado de acordo
com a mesa na qual você o calibrou.
@eduardobrizida
https://www.instagram.com/eduardobrizida/
Calibração - Parte 1
Essa programação tem 3 partes principais: A 1ª é o setup em que
você reseta tanto o sensor de cor/luz mas também um dos
motores (no caso do exemplo, o motor B). Em seguida você
defini que o valor da variável Minimum é 100 e o valor da variável
Maximum é 0 (essas variáveis vão rapidamente mudar). O
importante é colocar em um valor inicial que elas com certeza
irão mudar. A 2° parte é achar o valor mínimo do sensor
(MyBlock Mínimo) e a 3° parte é achar o valor máximo do sensor
(MyBlock Máximo).
Visão Geral MyBlock - Mínimo
A programação desse Myblock é simples: o robô anda por uma certa
distância (no caso foi 100°) e fica reescrevendo na variável Minimum
caso encontre um valor menor que a atual varíável Minimum. Por
exemplo, no Momento A o robô vê um valor igual a 30 e reescreve a
variável. Em seguida, no Momento B, ele vê um valor igual à 15.
Consequentemente, 15 (valor lido) < 30 (variável atual). Dessa forma, a
variável Minimum passará a ser 15. Ele repetirá isso por 100°.
Calibração - Parte 2
Visão Geral (Novamente) MyBlock - Máximo
A programação desse Myblock é parecida com o Mínimo: o robô anda
por uma certa distância (no caso foi 100°) e fica reescrevendo na
variável Maximum caso encontre um valor maior que a atual varíável
Maximum. O exemplo continua idêntico ao do Mínimo mas a
programação irá reescrever quando o valor for maior em vez de menor.
90 (valor lido) > 60 (variável) ==> 90 (Novo valor da variável Maximum).
Essa programação tem 3 partes principais: A 1ª é o setup em que
você reseta tanto o sensor de cor/luz mas também um dos
motores (no caso do exemplo, o motor B). Em seguida você
defini que o valor da variável Minimum é 100 e o valor da variável
Maximum é 0 (essas variáveis vão rapidamente mudar). O
importante é colocar em um valor inicial que elas com certeza
irão mudar. A 2° parte é achar o valor mínimo do sensor
(MyBlock Mínimo) e a 3° parte é achar o valor máximo do sensor
(MyBlock Máximo).
ACELERAÇÃO E DESACELERAÇÃO
Essa programação tem como objetivo diminuir a inércia do seu
robô e evitar que ele empine por conta de uma parada muito
brusca. 
Para isso, o seu robô acelera e desacelera gradualmente
amenizando aspectos negativos da movimentação que ele teria.
@eduardobrizida
https://www.instagram.com/eduardobrizida/
Esse MyBlock tem 3 parâmetros: O 1° parâmetro é responsável
pela força que o seu robô irá andar (você pode andar tanto com
força positiva ou negativa). O 2° parâmetro determina quantos
graus você quer que o seu robô ande (não coloque graus
negativos, coloque força negativa no 1° parâmetro). O 3°
parâmetro controla a rapidez que o seu robô irá acelerar ou
desacelerar (diminua o valor desse 3° parâmetro e o seu robô irá
acelerar e desacelerar mais rapidamente).
Aceleração e Desaceleração
Visão Geral
Essa é a visão geral da programação. Ela é dividida essencialmente em
três partes: A primeira parte é o setup no qual ela escreve os
parâmetros do MyBlock nas variáveis. A segunda parte é a Aceleração
(metade da distância é percorrida nela). A terceira parte é a
Desaceleração em que o robô percorre a outra metade da distância que
falta.
MyBlock
Essa programação vai acrescentando 1 de força gradualmente
na força do robô (depende do 3° parâmetro do MyBlock geral).
Além disso, o loop checa se o robô já percorreu metade da
distânciadeterminada no MyBlock geral. 
PS: Atenção ao bloco de valor absoluto. Esse bloco é essencial
para que a programação seja universal e não dependa se o robô
está andando para frente ou para trás.
Aceleração e Desaceleração
MyBlock - Acelerar MyBlock - Desacelerar
Essa programação vai diminuindo 1 de força gradualmente na
força do robô (depende do 3° parâmetro do MyBlock geral).
Além disso, o loop checa se o robô já percorreu a distância
determinada no MyBlock geral.
PS: Atenção ao bloco de valor absoluto. Esse bloco é essencial
para que a programação seja universal e não dependa se o robô
está andando para frente ou para trás.
GYRO TURN
Essa programação tem como objetivo fazer o robô girar de
forma precisa quaisquer angulações. Para isso, ele usa uma
técnica chamada Controle PID, em que cada letra P, I, D é
uma equação que aprimora a correção do robô e faz ele
funcionar de uma maneira mais inteligente. 
RECOMENDAÇÃO: Veja os vídeos sobre seguidor de linha,
giroscópio e controle PID no meu canal do Youtube. É
importante um bom conhecimento nessas áreas para o uso
desse MyBlock.
@eduardobrizida
https://www.youtube.com/channel/UC7TUkGXk0870e7YZCKhC2lg?view_as=subscriber
https://www.instagram.com/eduardobrizida/
Esse Myblock tem 4 parâmetros: O primeiro parâmetro é a
angulação que você deseja que o seu robô chegue (pode ser
tanto positiva quanto negativa). O 2°, 3° e 4° parâmetro são as
constantes da proporcional, integral e derivada. Caso você não
tenha familiaridade com o ajuste desses parâmetros, utilize
esses valores na tela (foram os parâmetros que funcionaram
para o meu robô mas não é garantia que funcionará no seu).
RECOMENDAÇÃO: Veja os vídeos do meu Canal do Youtube ou
me mande uma mensagem nas redes sociais para eu te ajudar.
Gyro Turn
MyBlock 
https://www.youtube.com/channel/UC7TUkGXk0870e7YZCKhC2lg?view_as=subscriber
Essa programação é dividida em várias partes: A primeira parte é o setup que escreve os valores definidos no MyBlock para as suas
respectivas variáveis. Em seguida entra a lógica principal. A primeira etapa é descobrir o Erro (a diferença entre a referência que é o
ângulo que se quer chegar subtraído do valor real). Após achar o Erro, ele é tratado nos MyBlocks da Proporcional, Integral e Derivada.
Após achar as correções da Proporcional, da Integral e da Derivada (as variáveis P, I e D), são somadas essas três para encontrar a
correção final. É colocado o seu valor oposto em um dos motores e o valor dela no outro motor. Para finalizar, é verificado se o valor
atual é igual a angulação desejada (referência). Se for, a programação acabará. Caso isso não aconteça, o loop começará novamente
fazendo toda a lógica principal.
Gyro Turn
Visão Geral
A programação da proporcional é simples : você pega o valor do
Erro e multiplica por uma constante que é chamada de
constante de proporcionalidade. O resultado dessa
multiplicação é a Correção da Proporcional
A programação da integral é simples: Soma-se repetidamente o
Erro. No começo da programação, essa variavel Int é 0, mas cada
vez que o loop principal se repete vai sendo incrementado nessa
variável o valor do Erro. Após o incremento do erro na variável
Int, multiplica-se o resultado por uma constante chamada
constante da integral. O resultado dessa multiplicação é a
Correção da Integral.
Gyro Turn
MyBlock - Proporcional MyBlock - Integral
A primeira etapa é descobrir o Erro (a diferença entre a referência que é o
ângulo que se quer chegar subtraído do valor real). Após achar o Erro, ele é
tratado nos MyBlocks da Proporcional, Integral e Derivada. Após achar as
correções da Proporcional, da Integral e da Derivada (as variáveis P, I e D), são
somadas essas três para encontrar a correção final. É colocado o seu valor
oposto em um dos motores e o valor dela no outro motor. Para finalizar, é
verificado se o valor atual é igual a angulação desejada (referência). Se for, a
programação acabará. Caso isso não aconteça, o loop começará novamente
fazendo toda a lógica principal.
A programação da derivada é simples : É subtraído o erro pelo
ultimo erro (o erro da iteração do loop anterior). Esse resultado é
chamado de derivada que é basicamente a variação do erro. 
Lembre do Bumper: Momento A = LastError e Momento B = Error.
Após achar a derivada, é multiplicado esse valor por uma
constante chamada constante da derivada. O resultado final é a
Correção da Derivada.
Gyro Turn
MyBlock - Derivada Visão do Loop Principal
Se você quer aprender ainda mais sobre
programação, eu tenho no YouTube uma
playlist chamada Tutorial de Programação
do EV3. 
Nela eu explico detalhadamente sobre os
blocos de programação. Vale muito a pena
conferir.
Para assistir basta clicar na imagem ao lado. 
DICA FINAL
@eduardobrizida
https://www.youtube.com/watch?v=OJwLze1YqBo&list=PLeUyYUvO-CXztuPDkoy02jMlc1Z44BQhL
https://www.youtube.com/watch?v=OJwLze1YqBo&list=PLeUyYUvO-CXztuPDkoy02jMlc1Z44BQhL
https://www.instagram.com/eduardobrizida/
CONHEÇA O CURSO 
DESCOMPLICANDO A PROGRAMAÇÃO
 
Passar a ideia de
programação para
a prática.
 
Ter ferramentas
para deixar sua
criatividade fluir e
criar suas próprias
programações.
 
Lógica de
programação
 
Uma série de
programações para
utilizar em seus
robôs
 
A como sair da fase
de programador
copiador para se
tornar um
programador
criador.
QUERO CONHECER AGORA
NELE VOCÊ IRÁ APRENDER:
CLIQUE ACIMA
https://eduardobrizida.kpages.online/copia-1595771461
https://eduardobrizida.kpages.online/copia-1595771461
GOSTOU DO CONTEÚDO E
QUER MAIS DICAS ?
CONECTE-SE COMIGO!
CLIQUE NOS ÍCONES ACIMA E 
ENTRE NESSAS PÁGINAS AGORA MESMO.
SE GOSTOU, COMPARTILHE COM OS AMIGOS E ME MANDE UMA
MENSAGEM. VOU ADORAR RECEBER SEU FEEDBACK. 
ESPERO TER AJUDADO!
https://www.instagram.com/eduardobrizida/
https://www.youtube.com/channel/UC7TUkGXk0870e7YZCKhC2lg?view_as=subscriber

Mais conteúdos dessa disciplina