SlideShare uma empresa Scribd logo
1 de 9
Baixar para ler offline
ORGANIZAÇÃO: COLABORAÇÃO:
MINICURSO - MICROMOUSE
(SOFTWARE - CONTROLADOR)
ORGANIZAÇÃO: COLABORAÇÃO:
1. ALINHAMENTO DO MICROMOUSE
o Tipos de erros:
Erro lateral
Erro de direção
Erro longitudinal
Centro da célula
2. CONTROLADOR
Reta: speedW = 0
Pivot: speedX = 0
Curva: speedX = constante
2.1. EXEMPLO DE CÓDIGO
// Controlador de velocidade para movimento translacional + rotacional
void controlador(void)
{
// Calcula as realimentações dos encoders, sensores e giroscópio
// K_GYRO e K_SENSORES são constantes para ajustar as escalas
feedbackEncW = deltaEncR - deltaEncL;
feedbackSensores = erroSensores / K_SENSORES;
feedbackGyro = gyro / K_GYRO;
// Calcula os PVs (process variable) do controlador
pvX = deltaEncR + deltaEncL;
pvW = 0;
if(usarEncoders) pvW += feedbackEncW;
if(usarSensores) pvW += feedbackSensores;
if(usarGyro) pvW += feedbackGyro;
// Calcula os erros (erro = Setpoint - PV)
// O "+=" representa a operação integrativa da velocidade = posição
erroPosX += speedX - pvX;
erroPosW += speedW - pvW;
// Realiza o controlador PD (Proporcional Derivativo)
// KP_X, KD_X, KP_W e KD_W são as constantes do controlador PD
posPwmX = KP_X * erroPosX + KD_X * (erroPosX - erroAnteriorPosX);
posPwmW = KP_W * erroPosW + KD_W * (erroPosW - erroAnteriorPosW);
erroAnteriorPosX = erroPosX;
erroAnteriorPosW = erroPosW;
// Calcula os PWMs dos motores da esquerda e da direita
pwmL = pwmX - pwmW;
pwmR = pwmX + pwmW;
// Realiza o comando para atualizar os PWMs dos motores
setPwmL(pwmL);
setPwmR(pwmR);
}
3. SPEED PROFILER
Velocidade (m/s)
Tempo (s)
Vmáx
t0 t1 t2 t3
Distância
Velocidade ideal (SP)
Velocidade real (PV)
Erro = SP - PV
3.1. PRINCIPAIS SPEED PROFILES
o Translacional: o Rotacional:
Velocidade (m/s)
Tempo (s)
Velocidade (°/s)
Tempo (s)
topSpeed
endSpeed
endSpeed = curvaSpeed
topSpeed
REFERÊNCIAS
OBRIGADO PELA ATENÇÃO!
ORGANIZAÇÃO: COLABORAÇÃO:
www.lasec.feelt.ufu.br/dme

Mais conteúdo relacionado

Semelhante a Minicurso Micromouse - Software/Controlador

MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docxMAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
2m Assessoria
 
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docxMAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
2m Assessoria
 
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docxMAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
2m Assessoria
 
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docxMAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
2m Assessoria
 
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docxMAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
2m Assessoria
 
PMR3100_2021_Aula05_Sensores_e_Atuadores.pdf
PMR3100_2021_Aula05_Sensores_e_Atuadores.pdfPMR3100_2021_Aula05_Sensores_e_Atuadores.pdf
PMR3100_2021_Aula05_Sensores_e_Atuadores.pdf
EliakimArajo2
 
PID.pdf
PID.pdfPID.pdf
Controle De Estabilidade de Aeromodelo Tipo Quadcopter Autômato Por Lei De Co...
Controle De Estabilidade de Aeromodelo Tipo Quadcopter Autômato Por Lei De Co...Controle De Estabilidade de Aeromodelo Tipo Quadcopter Autômato Por Lei De Co...
Controle De Estabilidade de Aeromodelo Tipo Quadcopter Autômato Por Lei De Co...
Daniel de Castro Ribeiro Resende
 
indrodução automação industrial
indrodução automação industrialindrodução automação industrial
indrodução automação industrial
elliando dias
 
Automação de pontes rolantes por rádio freqüência
Automação de pontes rolantes por rádio freqüênciaAutomação de pontes rolantes por rádio freqüência
Automação de pontes rolantes por rádio freqüência
Luis Varoli
 
EZ3400 V (BR)
EZ3400 V (BR)EZ3400 V (BR)
EZ3400 V (BR)
Ecco23
 

Semelhante a Minicurso Micromouse - Software/Controlador (20)

MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docxMAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
 
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docxMAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
 
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docxMAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
 
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docxMAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
 
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docxMAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
MAPA - MICROPROCESSADORES E MICROCONTROLADORES - 512024.docx
 
Implementação com Validação Real de um Controle Proporcional, Integral e Deri...
Implementação com Validação Real de um Controle Proporcional, Integral e Deri...Implementação com Validação Real de um Controle Proporcional, Integral e Deri...
Implementação com Validação Real de um Controle Proporcional, Integral e Deri...
 
PMR3100_2021_Aula05_Sensores_e_Atuadores.pdf
PMR3100_2021_Aula05_Sensores_e_Atuadores.pdfPMR3100_2021_Aula05_Sensores_e_Atuadores.pdf
PMR3100_2021_Aula05_Sensores_e_Atuadores.pdf
 
FONTE DE TENSÃO USANDO REGULADOR EM CIRCUITO INTEGRADO
FONTE DE TENSÃO USANDO REGULADOR EM CIRCUITO INTEGRADOFONTE DE TENSÃO USANDO REGULADOR EM CIRCUITO INTEGRADO
FONTE DE TENSÃO USANDO REGULADOR EM CIRCUITO INTEGRADO
 
PID.pdf
PID.pdfPID.pdf
PID.pdf
 
Controle De Estabilidade de Aeromodelo Tipo Quadcopter Autômato Por Lei De Co...
Controle De Estabilidade de Aeromodelo Tipo Quadcopter Autômato Por Lei De Co...Controle De Estabilidade de Aeromodelo Tipo Quadcopter Autômato Por Lei De Co...
Controle De Estabilidade de Aeromodelo Tipo Quadcopter Autômato Por Lei De Co...
 
ATmega Prática
ATmega PráticaATmega Prática
ATmega Prática
 
Banner - III Mostra de Ciência e Tecnologia - Pedro Victor Gomes
Banner - III Mostra de Ciência e Tecnologia - Pedro Victor GomesBanner - III Mostra de Ciência e Tecnologia - Pedro Victor Gomes
Banner - III Mostra de Ciência e Tecnologia - Pedro Victor Gomes
 
indrodução automação industrial
indrodução automação industrialindrodução automação industrial
indrodução automação industrial
 
Relatório final
Relatório finalRelatório final
Relatório final
 
AMBIENTE DE SIMULAÇÃO DE UM PIG INSTRUMENTADO COM O USO DO LABVIEW
AMBIENTE DE SIMULAÇÃO DE UM PIG INSTRUMENTADO COM O USO DO LABVIEWAMBIENTE DE SIMULAÇÃO DE UM PIG INSTRUMENTADO COM O USO DO LABVIEW
AMBIENTE DE SIMULAÇÃO DE UM PIG INSTRUMENTADO COM O USO DO LABVIEW
 
Automação de pontes rolantes por rádio freqüência
Automação de pontes rolantes por rádio freqüênciaAutomação de pontes rolantes por rádio freqüência
Automação de pontes rolantes por rádio freqüência
 
Aula11 instrumen malhas
Aula11 instrumen malhasAula11 instrumen malhas
Aula11 instrumen malhas
 
principiosCap10.pdf
principiosCap10.pdfprincipiosCap10.pdf
principiosCap10.pdf
 
EZ3400 V (BR)
EZ3400 V (BR)EZ3400 V (BR)
EZ3400 V (BR)
 
ceel2013_069
ceel2013_069ceel2013_069
ceel2013_069
 

Último

Último (8)

ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 

Minicurso Micromouse - Software/Controlador

  • 2. MINICURSO - MICROMOUSE (SOFTWARE - CONTROLADOR) ORGANIZAÇÃO: COLABORAÇÃO:
  • 3. 1. ALINHAMENTO DO MICROMOUSE o Tipos de erros: Erro lateral Erro de direção Erro longitudinal Centro da célula
  • 4. 2. CONTROLADOR Reta: speedW = 0 Pivot: speedX = 0 Curva: speedX = constante
  • 5. 2.1. EXEMPLO DE CÓDIGO // Controlador de velocidade para movimento translacional + rotacional void controlador(void) { // Calcula as realimentações dos encoders, sensores e giroscópio // K_GYRO e K_SENSORES são constantes para ajustar as escalas feedbackEncW = deltaEncR - deltaEncL; feedbackSensores = erroSensores / K_SENSORES; feedbackGyro = gyro / K_GYRO; // Calcula os PVs (process variable) do controlador pvX = deltaEncR + deltaEncL; pvW = 0; if(usarEncoders) pvW += feedbackEncW; if(usarSensores) pvW += feedbackSensores; if(usarGyro) pvW += feedbackGyro; // Calcula os erros (erro = Setpoint - PV) // O "+=" representa a operação integrativa da velocidade = posição erroPosX += speedX - pvX; erroPosW += speedW - pvW; // Realiza o controlador PD (Proporcional Derivativo) // KP_X, KD_X, KP_W e KD_W são as constantes do controlador PD posPwmX = KP_X * erroPosX + KD_X * (erroPosX - erroAnteriorPosX); posPwmW = KP_W * erroPosW + KD_W * (erroPosW - erroAnteriorPosW); erroAnteriorPosX = erroPosX; erroAnteriorPosW = erroPosW; // Calcula os PWMs dos motores da esquerda e da direita pwmL = pwmX - pwmW; pwmR = pwmX + pwmW; // Realiza o comando para atualizar os PWMs dos motores setPwmL(pwmL); setPwmR(pwmR); }
  • 6. 3. SPEED PROFILER Velocidade (m/s) Tempo (s) Vmáx t0 t1 t2 t3 Distância Velocidade ideal (SP) Velocidade real (PV) Erro = SP - PV
  • 7. 3.1. PRINCIPAIS SPEED PROFILES o Translacional: o Rotacional: Velocidade (m/s) Tempo (s) Velocidade (°/s) Tempo (s) topSpeed endSpeed endSpeed = curvaSpeed topSpeed
  • 9. OBRIGADO PELA ATENÇÃO! ORGANIZAÇÃO: COLABORAÇÃO: www.lasec.feelt.ufu.br/dme