Seguidor de Linha com controle PID: mudanças entre as edições
Linha 55: | Linha 55: | ||
;Análise sobre a ação do controle integral no Seguidor de Linha: | ;Análise sobre a ação do controle integral no Seguidor de Linha: | ||
*No caso de uma '''reta''', ou o robô '''segue a linha''' com '''erro zero''', ou de tempos em tempos, deriva alternadamente para um lado ou outro, resultando provavelmente em '''somatório de erro''' também '''zero'''. Portanto, neste caso, o '''controle integral''' em uma '''reta''' tem '''ação nula'''. | *No caso de uma '''reta''', ou o robô '''segue a linha''' com '''erro zero''', ou de tempos em tempos, deriva alternadamente para um lado ou outro, resultando provavelmente em '''somatório de erro''' também '''zero'''. Portanto, neste caso, o '''controle integral''' em uma '''reta''' tem '''ação nula'''. | ||
*Uma possibilidade de ação do '''controle integral''' em uma '''reta''' é '''agir ajustando desequilíbrios de velocidades dos motores''', as quais poderiam levar a um '''somatório de erro diferente de zero''' para um dos lados. Neste caso, inicialmente somente o controle proporcional atua, ajustando a trajetória do robô em função do desequilíbrio de velocidades. Entretanto, a medida que o somatório do erro cresce, o controle integral passa a atuar. Quando o robô passar a '''seguir linha''' com '''erro instantâneo zero''', o '''controle integral''' continua agindo equilibrando as velocidades a partir do '''somatório de erro acumulado'''. | *Uma possibilidade de ação do '''controle integral''' em uma '''reta''' é '''agir ajustando desequilíbrios de velocidades dos motores''', as quais poderiam levar a um '''somatório de erro diferente de zero''' para um dos lados. Neste caso, inicialmente somente o controle proporcional atua, ajustando a trajetória do robô em função do desequilíbrio de velocidades. Entretanto, a medida que o somatório do erro cresce, o controle integral passa a atuar. Quando o robô passar a '''seguir linha''' com '''erro instantâneo zero''', o '''controle integral''' continua agindo equilibrando as velocidades a partir do '''somatório de erro acumulado'''. Esta ação é equivalente a eliminação do '''erro residual'''<ref>http://wiki.foz.ifpr.edu.br/wiki/index.php/Sistemas_de_Controle#Sistemas_de_Controle</ref> inerente a ação proporcional. | ||
*No caso de uma '''curva''', o '''somatório de erros''' será '''diferente de zero''' em função do lado da curva. Inicialmente somente o controle proporcional atua, ajustando a trajetória do robô a curva. Entretando, a medida que o somatório do erro cresce, o controle integral passa a atuar. A partir de um dado momento, o '''controle integral''' passa a prevalecer, fazendo o robô '''acompanhar a curva''' com '''erro instantâneo zero''', portanto, sem ação proporcional. | *No caso de uma '''curva''', o '''somatório de erros''' será '''diferente de zero''' em função do lado da curva. Inicialmente somente o controle proporcional atua, ajustando a trajetória do robô a curva. Entretando, a medida que o somatório do erro cresce, o controle integral passa a atuar. A partir de um dado momento, o '''controle integral''' passa a prevalecer, fazendo o robô '''acompanhar a curva''' com '''erro instantâneo zero''', portanto, sem ação proporcional. | ||
Edição das 16h56min de 16 de maio de 2018
Seguidor de Linha com controle PID
Teoria sobre Sistemas de Controle PID
- Sistemas de Controle
- Um resumo da teoria sobre Sistemas de Controle em Malha Fechada e do Controle Proporcional Integral Derivativo.
Vetor de Sensores e Determinação do Erro
O Seguidor de Linha utiliza um vetor com sete sensores para seguir a linha e determinar o erro do robô em relação a linha.
Dependendo da posição do vetor sobre a linha, apenas um ou dois sensores podem reconhecer a linha ao mesmo tempo, como mostra as figuras abaixo [1]:
- Apenas sensor central (s3) reconhece a linha.
- Sensor central (s3) e sensor (s4) reconhecem a linha.
- Possibilidades para o vetor de sensores
- Quando o sensor central está sobre a linha o erro é zero.
- Quando o carrinho deriva para esquerda, sensibilizando os sensores a direita do ponto central, o erro é positivo. Quando deriva para direita, sensibilizando os sensores a esquerda do ponto central, o erro é negativo.
Sensores 0 1 2 3 4 5 6 ------------- 1 0 0 0 0 0 0 --> Erro -6 1 1 0 0 0 0 0 --> Erro -5 0 1 0 0 0 0 0 --> Erro -4 0 1 1 0 0 0 0 --> Erro -3 0 0 1 0 0 0 0 --> Erro -2 0 0 1 1 0 0 0 --> Erro -1 0 0 0 1 0 0 0 --> Erro 0 0 0 0 1 1 0 0 --> Erro 1 0 0 0 0 1 0 0 --> Erro 2 0 0 0 0 1 1 0 --> Erro 3 0 0 0 0 0 1 0 --> Erro 4 0 0 0 0 0 1 1 --> Erro 5 0 0 0 0 0 0 1 --> Erro 6
Ação de Controle Proporcional
A ação de controle proporcional do Seguidor de Linha vai corrigir a trajetória do robô, ajustando a velocidades dos motores a partir de um ganho Kp, proporcional ao erro:
Caso o robô derive para esquerda, a velocidade dos motores é ajustada para que o robô volte para a linha:
- a velocidade do motor esquerdo é acrescida do valor ;
- a velocidade do motor direito é diminuída do valor .
Caso o robô derive para direita, a ação de controle ajusta a velocidade dos motores para corrigir a trajetória para o outro lado.
Ação de Controle Proporcional Integral
A ação de controle proporcional integral do vai corrigir a trajetória do robô combinando a ação proporcional e a integral.
O controle integral ajusta a ação de controle em função ao somatório do erro em um dado intervalo de tempo.
- Análise sobre a ação do controle integral no Seguidor de Linha
- No caso de uma reta, ou o robô segue a linha com erro zero, ou de tempos em tempos, deriva alternadamente para um lado ou outro, resultando provavelmente em somatório de erro também zero. Portanto, neste caso, o controle integral em uma reta tem ação nula.
- Uma possibilidade de ação do controle integral em uma reta é agir ajustando desequilíbrios de velocidades dos motores, as quais poderiam levar a um somatório de erro diferente de zero para um dos lados. Neste caso, inicialmente somente o controle proporcional atua, ajustando a trajetória do robô em função do desequilíbrio de velocidades. Entretanto, a medida que o somatório do erro cresce, o controle integral passa a atuar. Quando o robô passar a seguir linha com erro instantâneo zero, o controle integral continua agindo equilibrando as velocidades a partir do somatório de erro acumulado. Esta ação é equivalente a eliminação do erro residual[2] inerente a ação proporcional.
- No caso de uma curva, o somatório de erros será diferente de zero em função do lado da curva. Inicialmente somente o controle proporcional atua, ajustando a trajetória do robô a curva. Entretando, a medida que o somatório do erro cresce, o controle integral passa a atuar. A partir de um dado momento, o controle integral passa a prevalecer, fazendo o robô acompanhar a curva com erro instantâneo zero, portanto, sem ação proporcional.
- Tempo integral
- O tempo integral é o tempo da ação do controle integral.
- No caso da pista para o Seguidor de Linha, as marcações de início e fim de curva poderiam ser utilizadas como delimitadores dos tempos integração. Neste caso, a cada marcação encontrada, se poderia zerar o somatório de erros, iniciando, portanto, um novo tempo de integração.
Ação de Controle Proporcional Derivativa
A ação do controle derivativo é proporcional a taxa de variação do erro atuante. Vai ter ação, portanto, nos períodos transitórios quando o erro cresce ou diminui.
No caso do robô Seguidor de Linha, quando o erro cresce, o controle derivativo atua reforçando a ação do controle proporcional. Entretanto:
- No momento seguinte, quando o erro estabiliza, somente o controle proporcional atua levando o robô de volta a linha.
- Quando o erro diminui, o controle proporcional também diminui, e o controle derivativo atua em sentido inverso, ajustando a trajetória do robô e evitando que saia para fora do outro lado da linha.
Referências:
- http://labdegaragem.com/profiles/blogs/tutorial-rob-seguidor-de-linha-com-controle-pid-e-ajustes-por
- http://www.roboliv.re/conteudo/pid-controle-proporcional-integral-derivativo
- http://www.andrix.com.br/robo-seguidor-de-linha-utilizando-um-controlador-proporcional-derivativo-pd-com-arduino/
Artigos:
- http://www2.uesb.br/computacao/wp-content/uploads/2014/09/ROB%C3%94-SEGUIDOR-DE-LINHA-AUT%C3%94NOMO-UTILIZANDO-O-CONTROLADOR-PROPORCIONAL-DERIVATIVO-EM-UMA-PLATAFORMA-DE-HARDWARE-SOFTWARE-LIVRE.pdf
- http://sistemaolimpo.org/midias/uploads/230c61ca8833329f9ffc867a89566dcd.pdf
Referências
--Evandro.cantu (discussão) 08h58min de 16 de maio de 2018 (BRT)