Tamandutech / LineFollower_Braia_Code

Repositório de códigos do robô segue linha Braia
5 stars 1 forks source link

Procurar métodos para sintonizar o PID #46

Open Matheus-de-Sousa opened 2 years ago

Matheus-de-Sousa commented 2 years ago

Utilizar sensores laterais e frontais para sintonizar o PID.

giovannirdias commented 2 years ago

Fase 0: Pesquisa de métodos

Busquei algumas referências para métodos de sintonização do PID e apontei algumas considerações em relação a sua implementação.

Inicialmente foquei nos métodos clássicos para ajuste dos parâmetros, já que são muito utilizados pela comunidade em sistemas de controle aplicadas na categoria segue-linha. Outra frente seria utilizar métodos adaptativo, que utilizam aspectos de inteligência computacional, algo interessante de se explorar, mas temos que ver a viabilidade e eficiência para competições.

giovannirdias commented 2 years ago

Métodos Clássicos (Heurísticos)

Método I - Tentativa e Erro

Método 2 - Método de Ziegler-Nichols

-> Equação PID:

-> Tabela do método:

IDEIA DE ALGORITMO: pensei em utilizar os dados de distância do encoder para calcular tempo e o sinal de erro através do setpoint e a saída para assim determinar o período $T_u$ e aplicar as regras da tabela, isso tudo implementado em C++ sob um classe criada chamada PIDAutoTune. O problema é que para determinar $K_u$ temos que realizar voltas nas pistas reais ou em ambientes simulados, neste último caso as possibilidade de simulação estão na outra issue (Mapeamento com IA).

Considerações finais

Referências

  1. https://www.researchgate.net/publication/273322483_A_MECHATRONICS_DESIGN_OF_A_LINE_TRACKER_ROBOT_USING_ZIEGLER_NICHOLS_CONTROL_TECHNIQUE_FOR_P_PI_AND_PID_CONTROLLERS
  2. https://www.researchgate.net/publication/322469538_Ziegler-Nichols_Based_Proportional-Integral-Derivative_Controller_for_a_Line_Tracking_Robot
giovannirdias commented 2 years ago

Métodos alternativos

Referência

  1. https://robotresearchlab.com/2019/02/16/pid-line-follower-tuning/
giovannirdias commented 2 years ago

Métodos Adaptativos

Redes Neurais (NN)

https://s3.us-west-2.amazonaws.com/secure.notion-static.com/62e0e54a-f4b4-4cf4-8404-21277a8b2cb8/Untitled.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIAT73L2G45EIPT3X45%2F20220712%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20220712T224813Z&X-Amz-Expires=86400&X-Amz-Signature=ab53e9dd3e70188a36ab15cb3d27e094ac33d480ed3f98043a5a6cb2a7d49491&X-Amz-SignedHeaders=host&response-content-disposition=filename%20%3D%22Untitled.png%22&x-id=GetObject

IDEIA

Referências

  1. https://www.researchgate.net/publication/324537461_Tuning_PID_Controller_by_Neural_Network_for_Robot_Manipulator_Trajectory_Tracking
  2. https://github.com/antevis/CarND_T2_P4_PID

Algoritmos Genéticos (GA)

Refereências

  1. https://www.researchgate.net/publication/296077413_Tuning_PID_Controllers_Using_Artificial_Intelligence_Techniques_Applied_to_DC-Motor_and_AVR_System
  2. https://github.com/MatheusBorgesKamla/Seguidor_de_Linha_Evolutivo

Q-Learning (Aprendizado por Reforço - RL)

https://s3.us-west-2.amazonaws.com/secure.notion-static.com/78f69ab7-c6f1-4950-b544-ad66e1201b5d/Adaptive-PID-control-architecture-adapted-from-2-4-Implementation.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIAT73L2G45EIPT3X45%2F20220712%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20220712T233458Z&X-Amz-Expires=86400&X-Amz-Signature=a20e0674f5027d1836445482e2eb8877cccd680271be9ecb4235bb2189bc610e&X-Amz-SignedHeaders=host&response-content-disposition=filename%20%3D%22Adaptive-PID-control-architecture-adapted-from-2-4-Implementation.png%22&x-id=GetObject

Referências

  1. https://www.researchgate.net/publication/322930011_Q-Learning_for_Adaptive_PID_Control_of_a_Line_Follower_Mobile_Robot
  2. https://www.youtube.com/watch?v=NrLjs8JVGNU
  3. http://vigir.missouri.edu/~gdesouza/Research/Conference_CDs/IEEE_WCCI_2020/IJCNN/Papers/N-21062.pdf
  4. https://www.hackster.io/aslamahrahiman/deep-reinforcement-learning-on-esp32-843928
Matheus-de-Sousa commented 2 years ago

Minha Proposta

raphera commented 2 years ago

@mCaburlao se juntará a atividade; @Pedromone buscará materiais complementares.