Controle PID Arduino - vídeo 2
Вставка
- Опубліковано 19 жов 2024
- Hora de colocar em prática o controle PID no arduino!
Nesse vídeo mostro o controle de luminosidade com sensor LDR através de PID.
Utilizo a biblioteca Arduino PID Library que você pode baixar aqui:
playground.ard...
É isso que a gente precisa aqui no Brasil, mais vídeos com conteúdo aprofundado.
So uma correção, a lâmpada não é o atuador do processo e sim a planta, pois sua saída (luminosidade) é lida pelo sensor. Atuador é o elemento com capacidade de alterar a planta, que nesse caso podemos entender como o transistor.
Muito bom!!!
Top!!!
Uma didática diferenciada.
Tive que voltar aqui, meu que material sensacional!!! To estudando a implementação de um controle PID num carrinho seguidor de linha
Essa serie de vídeos esta' espetacular, obrigado pelas dicas e PARABENS.
Parabens pela didatica, e que coisa linda olhando o grafico!!
Excelente explicação, simples e funcional. Parabéns pela sua didática, Obrigado pelas dicas.👋👋
Sensacional explicação ! Obrigado !! Bora pro vídeo #3 ...
Meu irmaooooo, pq não achei esse video antes? Kkk professor, quero dar os parabéns pela didática empregada. Até hoje foi o vídeo q melhor explicou o PID. Parabéns.
Obrigado, Eduardo! Espero que esse vídeo chegue a todo mundo que precise aprender PID
Muito bom!
Parabens pelo video, voce sabe me dizer como achar a função de transferencia desse circuito?
Com ela eu poderia aplicar algum metodo de sintonia.
Gostei demais do seu vídeo anterior
Olá professor muito bom o conteúdo, tentei recriar o sistema, porem eu não tinha um mosfet então eu coloquei um led, porem o input não segue a referencia, ja revi o código e esta igual, troquei as constantes e nem isso solucionou o problema, parece que quando troca as constantes não afeta o sistema, teria alguma ideia de que poderia ser? As curvas estão todas separadas
Ótimos vídeos, esse overshoot é tão rápido que não vejo grandes problemas. Muito didático e com a prática aplicada. Parabéns, ganhou um humilde seguidor. rsrsrs
Ótimo video, parabèns!!
Espetacular!
Simplesmente incrível, tinha desistido de tentar implementar em meus projetos por não entender nada, mas essas aulas me esclareceram muito, que didática incrível
Muito obrigado! Fico muito contente que esse meu vídeo te ajudou, desejo sucesso em seus projetos!
Bruno, excelente aula, parabens
No seu vídeo vc fala de uma aula na qual vc ensina a mudar aresolução do PWM no arduino UNO (>255). por favor, qual é essa aula e onde a acho.
Desde já obrigado
ua-cam.com/video/M46uVDxuKsI/v-deo.html
TU É O CARA!
Mto bom professor, depois vou estudar direitinho.
Foda demais!
Muito bom.
prof, para implementar isso para controle de temperatura para estação de solda e parecido ou totalmente diferente ??
Ótimo vídeo
Bem detalhado
👏👏👏
PARABÉNS PROFESSOR VOCÊ É FERA , OBRIGADO POR DIVIDIR O SEU CONECIMENTO!
Shooow demais, professor!!!
Aguardando o próximo vídeo. :D
Excelente aula!!!
Uma pergunta: como assim um algoritmo PID em um microcontrolador de 8 BITs ?
Muito bom professor
Material excelente 👍 parabéns professor pelo conteúdo.
Tava precisando de um material como esse que postou. Vai me ajudar bastante. Já estou no aguardo do próximo vídeo parâmetros Kp, Ki e Kd.
Professor! Tira uma dúvida por favor. No caso a variável de saída é a variável controlada que é sensor LDR? E a variável de entrada é a variável Manipulada que no caso é o PWN da luz?
Vlw William! Sim a PV é a entrada, ou seja, a leitura do LDR e a MV é a saída, o sinal de PWM para o MOSFET.
Obrigado pelo retorno professor. O conteúdo não fácil mas o professor consegue explicar de forma simples e objetiva. Parabéns
Legal !!!!!
Professor, essa biblioteca também pode ser utilizada com o ESP32?
Provavelmente sim, mas eu ainda não cheguei a testar
@@prof_brunoraniere faz um video com o esp32 que esse exemplo nao copila para o esp32
professor quero implementar um PID para um servo motor, porem quero quero uma modulação apenas de 0° a 90 °. PODE ME DAR ALGUMAS DICAS DE IMPLEMENTAÇÃO DO PID?
Nesse momento não estou recordando exatamente das funções da biblioteca, mas tem uma em que vc pode definir a os valores mínimo e máximo de saída. Defina esses para os ângulos (0 e 90).
Aí é só pegar o valor de saída do PID e jogar para o servo.
@@prof_brunoraniere onde posso encontrar essa biblioteca?
Outra dúvida professor! Posso usar uma lâmpada de 60W , essas comum em casa, para reproduzir o projeto?
Essa lâmpada de 60w será alimentada pela rede elétrica, sendo assim, tensão alternada. Nesse caso você precisaria utilizar um TRIAC ao invés do MOSFET e implemetar um sistema pra controlar o angulo de disparo do pulso no TRIAC. É um pouco mais complicado, mas a parte do PID é exatamente a mesma
Entendi, vou adquirir os mesmos componentes. Obrigado pelo retorno
Usa um diodo em um dos terminais da lampada
Fala bruno blz? Vc tem disponibilidade para ajudar com o meu projeto? Envolve PID tbm.
Tenho sim, vamos conversar sobre. Me chama no direct do insta @prof_brunoraniere
Esse é o codigo. nao sei se esta certo. comentem,
como eu nao estou conectado no arduino eu coloquei setpoit e inPut para gerar aleatoriamente.
#include
#define pwmPin 3
#define pinoPulsos 2
double Setpoint, Input, Output;
double Kp = 0.9, Ki = 0.5, Kd = 0; // Ajuste esses valores conforme necessário
PID myPID(&Input, &Output, &Setpoint, Kp, Ki, Kd, DIRECT);
unsigned long ultimoTempo = 0;
//****************************************************************************************************************************
void setup()
{
pinMode(pwmPin, OUTPUT);
pinMode(pinoPulsos, INPUT_PULLUP);
Serial.begin(9600);
myPID.SetMode(AUTOMATIC); // Define o PID para o modo automático
myPID.SetOutputLimits(0, 255); // Define os limites de saída do PID para o intervalo correto
myPID.SetSampleTime(75); // Define o tempo
updateSetpoint();
}
//****************************************************************************************************************************
void loop()
{
//Input = map(pulseIn(pinoPulsos, HIGH), 0, 150, 0, 256); // Leitura do pino calculo do tempo e normalização
myPID.Compute(); // Cálculo do PID
//Output = map(Output, 0, 255, 0, 255);
analogWrite(pwmPin, Output); // Saída do PID controla a velocidade do motor através do PWM
Serial.print(Setpoint);
Serial.print(" ");
//Serial.print(Input);
//Serial.print(" ");
Serial.print(Output);
Serial.println(" ");
if (millis() - ultimoTempo >= 3000) // Verifica se é hora de alterar o setpoint
{
updateSetpoint();
ultimoTempo = millis(); // Reinicia o contador de intervalo
}
}
//****************************************************************************************************************************
void updateSetpoint()
{
Setpoint = random(0, 600);
Input = random(0, 600);
}
//---------------------------------------------------------------------------
noss q top
nao da pra fazer em ladder no arduino
Olha, até daria para tentar implemetar em ladder, mas seria um trabalho grande! O app PLC Ladder Simulator não tem PID implementado