
Passo 1 de 8
Da montagem RC à malha de controle
Reconheça o circuito RC como planta e siga o caminho completo da atuação e da medição em uma malha fechada.
Trilha de aprendizado · Nível 13 · Tutorial 5
Fechar uma malha proporcional sobre a tensão de um circuito RC e explicar por que ela pode se acomodar sem alcançar exatamente a referência.
Da montagem RC à malha de controle
Reconheça o circuito RC como planta e siga o caminho completo da atuação e da medição em uma malha fechada. 2 min
Calcule o erro e a ação proporcional
Calcule o erro de tensão e a ação proporcional sem confundir volts, fração de ciclo de trabalho e contagens. 2 min
Limite o comando antes de converter
Converta a ação proporcional em um comando PWM válido, limitando o ciclo de trabalho antes da quantização. 2 min
Execute a atualização de controle no Uno
4 min
Meça o erro depois da acomodação
Meça a diferença entre referência e saída após a acomodação, sem confundi-la com a mudança entre patamares. 4 min
Explique por que a saída para antes da referência
Preveja o erro permanente de uma malha proporcional não saturada e identifique quando essa previsão deixa de valer. 2 min
Aumente o ganho sem presumir estabilidade
Compare ganhos proporcionais moderados, observe erro, transiente e limites, e reconheça quando interromper o ajuste de forma conservadora. 2 min
Valide sua malha proporcional
Valide uma malha proporcional completa por meio de um caso numérico, verificando escalas, limite do PWM e erro permanente. 2 min

Passo 1 de 8
Reconheça o circuito RC como planta e siga o caminho completo da atuação e da medição em uma malha fechada.
O circuito RC caracterizado anteriormente será agora a planta de uma malha fechada. A diferença é que o PWM no pino 3 não seguirá mais um degrau definido manualmente: o firmware decidirá a atuação a partir da referência desejada e da tensão que ele mede no capacitor.
Siga o percurso do sinal: a referência entra no controlador; ele comanda o PWM; o RC transforma esse comando em tensão; A0 mede a tensão no capacitor e a devolve ao controlador. Esse retorno é a realimentação.

A tensão medida retorna por A0 para orientar a próxima atuação do firmware.
Use esta montagem de referência, reutilizando o Uno R3 e o RC do ensaio anterior:
O resistor e o capacitor formam a planta RC. O PWM é o atuador; A0 e o ADC formam a medição. Use capacitor com tensão nominal de pelo menos 10 V.

O mesmo nó é a saída da planta RC e a entrada de medição A0.
Dica
A referência existe no firmware, não como um fio adicional. O controlador também existe no firmware. Já PWM, RC e ADC correspondem a sinais e componentes físicos da montagem.
Atenção
Com a placa desenergizada, confirme a faixa e a polaridade antes de conectar o USB:
Energize somente depois dessa conferência. Esta prática usa baixa energia; não conecte motor, bateria externa ou outra fonte de alimentação.
Associe cada elemento da malha à sua função nesta montagem.
Faça as associações corretas.
Toque em um item e depois no par correspondente.

Passo 2 de 8
Calcule o erro de tensão e a ação proporcional sem confundir volts, fração de ciclo de trabalho e contagens.
Em cada atualização, a referência r[k] e a tensão medida y[k] devem estar na mesma unidade: volts. O erro é:
e[k] = r[k] − y[k]
Ele pode ser positivo ou negativo. Se a tensão no capacitor está abaixo da referência, e é positivo. Se está acima, e é negativo.
Para esta planta RC, aumentar o ciclo de trabalho do PWM tende a aumentar a tensão medida. Portanto, o sinal do erro já indica o sentido desejado da ação: erro positivo pede aumento de comando; erro negativo pede redução.

Para uma planta de ganho positivo, o sinal de e[k] define se a ação proporcional aumenta ou reduz o comando.
O controlador puramente proporcional calcula uma fração de ciclo de trabalho:
u_calc[k] = K_p × e[k]
Neste step, u_calc é apenas o comando calculado; os limites físicos e a conversão para o valor inteiro do PWM serão tratados no próximo step.
Não há termo de polarização: se e[k] fosse zero, esta lei produziria u_calc igual a zero. Para manter as escalas coerentes, se e está em volts e u_calc é uma fração de ciclo de trabalho, K_p deve ter unidade fração de ciclo de trabalho por volt.
Exemplo
Com r = 2,0 V, y = 1,2 V e K_p = 0,20 por volt:
O resultado 0,16 representa uma fração de ciclo de trabalho, equivalente a 16%. Não é ainda uma contagem do PWM.
Se y fosse 2,4 V, e seria −0,4 V e u_calc seria −0,08: um pedido de redução, não uma tensão negativa aplicada ao RC.
Acompanhe cada escala. Não subtraia diretamente uma contagem do ADC de uma referência em volts, nem use uma porcentagem como se fosse o inteiro enviado ao PWM.
Dica
Use a tensão de referência do ADC que corresponda à alimentação e à configuração reais do seu Uno. Com a referência padrão ligada a cerca de 5 V, por exemplo, uma leitura de 512 corresponde aproximadamente à metade dessa tensão; meça a alimentação se precisar de maior precisão.
Valores e unidades usados antes da conversão final do PWM.
| Grandeza | Símbolo | Faixa típica | Unidade |
|---|---|---|---|
| Leitura do ADC | adc | 0 a 1023 | contagens |
| Referência | r[k] | ex.: 0 a 5 | V |
| Medição | y[k] | ex.: 0 a 5 | V |
| Erro | e[k] | pode ser negativo | V |
| Ganho proporcional | K_p | ex.: 0,20 | fração/V |
| Comando calculado | u_calc[k] | ainda sem limite | fração |
| PWM aplicado | pwm | 0 a 255 | inteiro |
Uma leitura ADC de 410 foi convertida corretamente para y[k] = 2,00 V. Para r[k] = 3,00 V e K_p = 0,25 por volt, qual é o comando proporcional calculado u_calc[k]?
float y = 2.00;
float r = 3.00;
float kp = 0.25; // fração de ciclo de trabalho por volt
float erro = {{1}} - {{2}};
float uCalc = {{3}} * erro;Complete usando as variáveis que preservam as unidades corretas.
Complete a expressão do erro e da ação proporcional.
float y = 2.00;
float r = 3.00;
float kp = 0.25; // fração de ciclo de trabalho por volt
float erro = - ;
float uCalc = * erro;
Passo 3 de 8
Converta a ação proporcional em um comando PWM válido, limitando o ciclo de trabalho antes da quantização.
A ação proporcional produz u_calc, um comando em ponto flutuante. Antes de enviá-lo ao PWM, separe três valores:
u_calc: valor pedido pelo controlador; pode ser menor que 0 ou maior que 1.u_limitado: comando restrito à faixa que esta montagem consegue aplicar, de 0 a 1.pwm: inteiro de 0 a 255 realmente escrito no pino.A ordem é essencial: limite primeiro o ciclo de trabalho em ponto flutuante; só depois multiplique por 255, arredonde e converta para inteiro.

O limitador atua antes da quantização: valores abaixo de 0 viram 0; valores acima de 1 viram 1.
Nesta montagem, o PWM do pino 3 só pode aplicar ciclo de trabalho entre 0% e 100%. Portanto, um pedido negativo não cria tensão negativa no capacitor: ele resulta em PWM zero. Um pedido acima de 100% resulta no máximo disponível.
Use arredondamento para o inteiro mais próximo: pwm = inteiro(u_limitado × 255 + 0,5). Depois da conversão, o ciclo efetivo é pwm / 255. Essa pequena diferença é a quantização do PWM.
Exemplos usando o arredondamento definido para a conversão.
| u_calc | u_limitado | PWM aplicado | Ciclo efetivo |
|---|---|---|---|
| -0,18 | 0,00 | 0 | 0/255 = 0 |
| 0,42 | 0,42 | 107 | 107/255 ≈ 0,420 |
| 1,27 | 1,00 | 255 | 255/255 = 1 |
Trecho a inserir após calcular uCalc. Ele limita em ponto flutuante e arredonda uma única vez na conversão.
float uLimitado = uCalc;
if (uLimitado < 0.0f) {
uLimitado = 0.0f;
} else if (uLimitado > 1.0f) {
uLimitado = 1.0f;
}
int pwmValue = (int)(uLimitado * 255.0f + 0.5f);
analogWrite(3, pwmValue);Complete as comparações e o termo de arredondamento.
float uLimitado = uCalc;
if (uLimitado 0.0f) {
uLimitado = 0.0f;
} else if (uLimitado 1.0f) {
uLimitado = 1.0f;
}
int pwmValue = (int)(uLimitado * 255.0f + );
analogWrite(3, pwmValue);Com a regra apresentada, qual tripla de valores de PWM é aplicada, nessa ordem, para u_calc = -0,18, 0,42 e 1,27?

Passo 4 de 8
A cada período de controle, o Uno executa a mesma cadeia: mede a tensão no capacitor, calcula o erro, calcula a ação proporcional, limita o comando, converte-o para PWM e atualiza o pino 3.
A referência começa em 1 V e passa para 2 V após 3 s. O ensaio termina em 8 s, quando o PWM volta a zero. Use estes valores como ponto de partida para o RC de 10 kΩ e 10 µF; eles não são uma regra universal para qualquer planta.

A medição retorna ao cálculo na atualização seguinte; o PWM atua no circuito RC.
Dica
Mantenha a configuração padrão do PWM do Uno no pino 3. A tarefa de controle mede sua própria duração com micros(), enquanto a transmissão serial ocorre fora do trecho crítico.
Se uma atualização estiver atrasada, o sketch executa uma única atualização atual e agenda a próxima a partir de agora. Ele conta o atraso, mas não tenta recuperar uma sequência de amostras passadas.
Copie este bloco no início de um único arquivo .ino. Os próximos blocos devem ser colocados abaixo dele, na ordem apresentada.
#include <Arduino.h>
#include <math.h>
const uint8_t PWM_PIN = 3;
const uint8_t ADC_PIN = A0;
const float ADC_REF_V = 5.0f;
const float KP = 0.2f; // ciclo de trabalho por volt
const unsigned long CONTROL_US = 10000UL;
const unsigned long STEP_TIME_US = 3000000UL;
const unsigned long TEST_TIME_US = 8000000UL;
const unsigned long PRINT_US = 500000UL;
unsigned long startUs;
unsigned long nextControlUs;
unsigned long nextPrintUs;
unsigned long lastSampleUs = 0;
unsigned long lastTaskUs = 0;
uint16_t missedUpdates = 0;
bool finished = false;
float referenceV = 1.0f;
float measuredV = 0.0f;
float uCalculated = 0.0f;
float uApplied = 0.0f;
uint8_t pwmApplied = 0;
void setup() {
pinMode(PWM_PIN, OUTPUT);
analogWrite(PWM_PIN, 0);
Serial.begin(115200);
Serial.println("t_us,r_V,y_V,u_calc,u_applied,pwm,task_us,missed");
startUs = micros();
nextControlUs = startUs;
nextPrintUs = startUs + CONTROL_US;
}Acrescente esta função logo abaixo do primeiro bloco. Ela contém a atualização da malha: aquisição, cálculo, limitação, conversão e escrita do PWM.
void controlUpdate(unsigned long nowUs) {
unsigned long taskStartUs = micros();
lastSampleUs = nowUs - startUs;
referenceV = (lastSampleUs < STEP_TIME_US) ? 1.0f : 2.0f;
int adc = analogRead(ADC_PIN);
measuredV = adc * ADC_REF_V / 1023.0f;
float errorV = referenceV - measuredV;
uCalculated = KP * errorV;
uApplied = constrain(uCalculated, 0.0f, 1.0f);
pwmApplied = (uint8_t)lroundf(uApplied * 255.0f);
analogWrite(PWM_PIN, pwmApplied);
lastTaskUs = micros() - taskStartUs;
}Acrescente este último bloco, compile e envie o sketch ao Uno. Abra o Monitor Serial em 115200 baud.
A impressão ocorre a cada 500 ms, fora de controlUpdate(), e somente quando há espaço no buffer de transmissão. Ao finalizar, o programa escreve somente END,pwm_zero e não envia registros antigos com o PWM já desligado.
void loop() {
unsigned long nowUs = micros();
if (!finished && (long)(nowUs - nextControlUs) >= 0) {
if (nowUs - startUs >= TEST_TIME_US) {
analogWrite(PWM_PIN, 0);
pwmApplied = 0;
uApplied = 0.0f;
finished = true;
Serial.println("END,pwm_zero");
} else {
if (nowUs - nextControlUs >= CONTROL_US) {
missedUpdates++;
}
controlUpdate(nowUs);
nextControlUs = nowUs + CONTROL_US;
}
}
if (!finished && (long)(nowUs - nextPrintUs) >= 0 &&
Serial.availableForWrite() >= 60) {
nextPrintUs = nowUs + PRINT_US;
Serial.print(lastSampleUs);
Serial.print(','); Serial.print(referenceV, 3);
Serial.print(','); Serial.print(measuredV, 3);
Serial.print(','); Serial.print(uCalculated, 3);
Serial.print(','); Serial.print(uApplied, 3);
Serial.print(','); Serial.print(pwmApplied);
Serial.print(','); Serial.print(lastTaskUs);
Serial.print(','); Serial.println(missedUpdates);
}
}t_us,r_V,y_V,u_calc,u_applied,pwm,task_us,missed 10012,1.000,0.088,0.182,0.182,46,116,0 510084,1.000,0.499,0.100,0.100,26,115,0 1010180,1.000,0.499,0.100,0.100,26,116,0 1510276,1.000,0.499,0.100,0.100,26,115,0 2010372,1.000,0.499,0.100,0.100,26,116,0 2510468,1.000,0.499,0.100,0.100,26,115,0 3010564,2.000,0.499,0.300,0.300,77,116,0 3510660,2.000,0.997,0.201,0.201,51,115,0 4010756,2.000,1.002,0.200,0.200,51,116,0 4510852,2.000,1.002,0.200,0.200,51,115,0 5010948,2.000,1.002,0.200,0.200,51,116,0 5511044,2.000,1.002,0.200,0.200,51,115,0 6011140,2.000,1.002,0.200,0.200,51,116,0 6511236,2.000,1.002,0.200,0.200,51,115,0 7011332,2.000,1.002,0.200,0.200,51,116,0 7511428,2.000,1.002,0.200,0.200,51,115,0 END,pwm_zero
As tensões, os tempos, a duração da tarefa e os valores de PWM variam conforme o circuito e a resolução do ADC. Confira o cabeçalho, o primeiro registro próximo de 10 ms, a mudança de referência perto de 3 s, a aproximação da saída de 1 V no segundo patamar e a linha final END.
O registro preserva o instante relativo da aquisição, referência, tensão medida, comando calculado, comando limitado aplicado, inteiro PWM, duração da tarefa e número de atualizações vencidas.
Com Kp = 0,2 por V e ganho estático próximo de 5 V por ciclo, a malha tende a se acomodar perto de 1 V quando a referência vale 2 V. O comando final próximo de 0,20 e o PWM próximo de 51 são coerentes com essa condição.
Antes de compilar, confira a ordem das operações e as funções usadas no cálculo.
Ordene as etapas de uma atualização da malha.
Complete as operações centrais da atualização.
float errorV = - measuredV;
uCalculated = KP * errorV;
uApplied = (uCalculated, 0.0f, 1.0f);
pwmApplied = (uint8_t)(uApplied * 255.0f);
Passo 5 de 8
Meça a diferença entre referência e saída após a acomodação, sem confundi-la com a mudança entre patamares.
Uma referência alcançável está dentro da faixa de tensão que a montagem RC pode produzir com o PWM entre 0 e 255. Isso não significa que a tensão final será exatamente igual à referência: nesta malha proporcional, pode permanecer uma diferença residual.
Use o ensaio do step anterior como comparação controlada: mantenha o mesmo circuito, o mesmo período de atualização e o mesmo Kp. A mudança de referência já está definida no firmware, de 1,0 V para 2,0 V após 3 s. Não altere ganho, período e circuito ao mesmo tempo; assim, o registro permite atribuir a mudança observada à referência.

Depois do transiente, escolha uma janela em que as amostras variem apenas ao redor de um patamar final.
No registro serial, localize uma janela posterior à acomodação. Use várias leituras consecutivas de tensão sem filtragem adicional para estimar y_final. Uma média simples é suficiente para este ensaio:
y_final = soma das leituras da janela / quantidade de leituras
A pequena dispersão revela a resolução do ADC e flutuações da medição. Não use pontos ainda na subida nem uma leitura isolada.
Com a referência constante, calcule em volts:
e_permanente = r − y_final
Erro positivo indica que a tensão final ficou abaixo da referência. Na mesma janela, confira u_calc, u_applied e PWM: se o comando aplicado estiver distante dos extremos, o limite do atuador não está determinando o resultado final.
Considere uma janela final do sketch do step anterior, com r = 2,00 V e Kp = 0,20 por V. As tensões correspondem a leituras consecutivas do ADC já convertidas para volts; valores de comando foram exibidos com três casas decimais.
| Amostra | Tensão bruta (V) | u_calc | u_applied | PWM |
|---|---|---|---|---|
| 1 | 0,997 | 0,201 | 0,201 | 51 |
| 2 | 1,002 | 0,200 | 0,200 | 51 |
| 3 | 0,997 | 0,201 | 0,201 | 51 |
| 4 | 1,002 | 0,200 | 0,200 | 51 |
| 5 | 1,002 | 0,200 | 0,200 | 51 |
A média das cinco tensões do registro é 1,000 V. Portanto, compare esse patamar com a referência de 2,00 V; não compare os dois patamares do ensaio entre si.
Na caracterização em malha aberta, a mudança de saída era Δy = y_final − y_inicial. Ela descreve o tamanho da transição. Aqui, o erro permanente é e_permanente = r − y_final: ele compara a saída final com o valor desejado.
O PWM 51 equivale aproximadamente a 51/255 = 0,20 de ciclo de trabalho. Como está longe de 0 e 255, e u_calc coincide com u_applied, a janela final não está saturada.
Complete o erro permanente do registro, em volts:
e_permanente = 2,00 V − 1,00 V = ___ V
Para documentar o ensaio, registre em uma tabela ou anotação: referência, Kp, intervalo de tempo escolhido, leituras da janela ou sua média para y_final, erro permanente e comando final.
A conclusão sobre saturação deve usar o comando aplicado: nesta montagem, PWM igual a 0 ou 255 indica um limite. Um valor intermediário, junto de u_calc igual a u_applied, indica que o comando final não foi cortado. Isso não substitui observar o transiente, mas é a conferência necessária para interpretar o regime final.
No seu ensaio, informe a referência, Kp, a janela final escolhida, as leituras ou a média usada para y_final, o valor de e_permanente e o PWM aplicado nessa janela. Diga se o comando final estava afastado de 0 e 255.
Escreva pelo menos 80 caracteres (0/80).

Passo 6 de 8
Preveja o erro permanente de uma malha proporcional não saturada e identifique quando essa previsão deixa de valer.
Em regime acomodado, o controlador proporcional ainda calcula u = Kₚ × e. Portanto, para manter uma atuação positiva no RC, ele precisa de um erro positivo.
Se a saída chegasse exatamente à referência, teríamos e = 0. Sem termo de polarização, isso levaria a u = 0; então a planta RC deixaria de receber comando e sua tensão cairia. Por isso, em uma malha P estável e sem saturação, é esperado que a tensão final fique abaixo de uma referência positiva.

No controle P sem polarização, erro final diferente de zero e comando final diferente de zero aparecem juntos.
Dica
Isso não indica, por si só, defeito na montagem. É uma consequência da lei proporcional pura. A previsão numérica a seguir vale apenas quando o equilíbrio é estável e o comando final não está preso em 0 ou 1.
Use as relações estáticas abaixo, com todas as grandezas em escalas compatíveis:
Substituindo uma relação na outra, resulta:
e_permanente = r / (1 + K × Kₚ)
Aqui, K está em V por unidade de ciclo de trabalho e Kₚ em unidade de ciclo de trabalho por V. Assim, K × Kₚ não tem unidade, como deve ocorrer no denominador.
Atenção
A fórmula pressupõe:
Ela é uma previsão aproximada para comparar com a medição, não uma garantia de coincidência exata.
Exemplo
Se o ganho foi anotado em volts por contagem PWM, converta-o antes de usar a fórmula:
K (V/ciclo) = K_contagem (V/contagem) × 255 (contagens/ciclo)
Por exemplo, 0,0196 V/contagem corresponde aproximadamente a 5,0 V por unidade de ciclo de trabalho.
Exemplo
Considere uma planta com K = 5,0 V por ciclo e um controlador com Kₚ = 0,20 ciclo/V. Para referência r = 2,0 V:
e_permanente = 2,0 / (1 + 5,0 × 0,20)
e_permanente = 2,0 / 2,0 = 1,0 V
Logo, a previsão é y_final = r − e = 1,0 V. O comando previsto é u = 0,20 × 1,0 = 0,20, dentro da faixa válida: a fórmula pode ser usada.
Uma medição de 1,03 V, por exemplo, é próxima da previsão de 1,0 V. Pequenas diferenças podem vir da estimativa de K, da tensão real de referência do ADC, da resolução e das tolerâncias do circuito.
Compare previsão e medida, mas não conclua que há falha apenas porque elas não são idênticas.
Agora use valores diferentes. Uma planta tem K = 4,0 V por ciclo, o controlador usa Kₚ = 0,25 ciclo/V e a referência constante é r = 1,80 V. Calcule primeiro o erro permanente previsto.
e_permanente = ___ V
Com o erro que você acabou de calcular, obtenha o comando proporcional previsto: u = Kₚ × e_permanente. Informe a fração de ciclo de trabalho. Esse valor deve ficar entre 0 e 1 para confirmar a hipótese de não saturação.
u = ___
Um cálculo proporcional pede u_calc = 1,20, mas o PWM é limitado a u = 1,00. Ainda é válido usar diretamente e_permanente = r/(1 + K × Kₚ) para prever o erro final?

Passo 7 de 8
Compare ganhos proporcionais moderados, observe erro, transiente e limites, e reconheça quando interromper o ajuste de forma conservadora.
Repita o mesmo ensaio com a mesma referência, circuito e período de atualização. Comece com Kₚ = 0,2 por volt e depois use Kₚ = 0,4 por volt. Altere somente Kₚ.
Se a malha continuar estável e o comando final não estiver limitado, o ganho maior tende a reduzir o erro permanente. Isso não significa que qualquer ganho maior seja uma escolha melhor ou segura.

Compare tensão medida e comando aplicado na mesma escala de tempo; não compare somente o valor final.
Dica
Para cada registro, observe três aspectos:
O comando pode atingir um limite logo após uma mudança de referência e depois voltar para dentro da faixa. Portanto, um PWM final não saturado não prova que não houve saturação durante o caminho.
Considere dois ensaios da mesma montagem, com referência final de 2,0 V, ganho estático aproximado de 5,0 V por ciclo e a mesma mudança de referência de 1,0 V para 2,0 V. Os valores finais são compatíveis com a previsão proporcional apresentada anteriormente.
Os picos de PWM resumem o maior valor aplicado durante cada ensaio. Eles mostram que elevar Kₚ reduz o erro final, mas também exige uma atuação inicial maior.
Os dois ensaios terminam sem saturação. Ainda assim, o pico deve ser conferido: o comando durante a transição pode se aproximar de um limite mesmo quando o comando final é intermediário.
| Ensaio | Kₚ (por V) | Tensão final | Erro final | PWM final | PWM de pico |
|---|---|---|---|---|---|
| A | 0,2 | 1,00 V | 1,00 V | 51 | 77 |
| B | 0,4 | 1,33 V | 0,67 V | 68 | 136 |
Qual conclusão é mais adequada a partir da tabela?
Em uma planta RC real, há dinâmica. A malha digital também introduz aquisição, cálculo, atualização do PWM e atualizações em instantes discretos. Quando o ganho se torna excessivo para esse conjunto, uma correção pode chegar tarde e em magnitude exagerada.
Não há um valor universal de Kₚ que garanta estabilidade: ele depende da planta real, do período, dos atrasos e das condições do ensaio. Não tente descobrir deliberadamente o ganho crítico.
Atenção
Interrompa o ensaio e leve o PWM a zero se observar:
No sketch usado antes, pressionar o botão de reset executa novamente setup(), que escreve PWM zero no pino 3. Depois, revise o registro e retorne ao último ganho que apresentou resposta adequada; não aumente o ganho para “testar mais”.
Dica
Saturação no início de um degrau não invalida automaticamente a observação do erro final. Mas ela impede explicar todo o transiente apenas pela lei proporcional sem limites. Para comparar a previsão de erro permanente, confirme que, na janela final, o comando aplicado esteja afastado de 0 e 1 e seja igual ao comando calculado dentro da quantização.
Em um ensaio posterior, feito com o mesmo circuito, referência e período, você aumentou Kₚ além dos valores moderados comparados. O registro passa a mostrar oscilações de tensão com amplitude crescente. O PWM alterna repetidamente entre 0 e 255 e o contador de atualizações vencidas aumenta.
Qual decisão você tomaria? Justifique usando os sinais do registro e descreva a ação imediata sobre o PWM. Não é necessário propor outro ganho numérico.
Escreva pelo menos 100 caracteres (0/100).

Passo 8 de 8
Valide uma malha proporcional completa por meio de um caso numérico, verificando escalas, limite do PWM e erro permanente.
Considere a mesma montagem RC com uma condição nova, já acomodada:
A tensão do capacitor retorna por A0 ao firmware. O firmware calcula o erro, atualiza o PWM no pino 3 e a tensão medida volta pela realimentação. A referência é alcançável pela planta, mas isso não garante erro nulo com controle puramente proporcional.

A tensão no capacitor fecha a malha: ela é medida e usada para corrigir o PWM.
Estas são leituras consecutivas da janela final. Calcule primeiro a média de tensão e só então avalie o erro e o comando.
| Leitura | Tensão y (V) | PWM aplicado |
|---|---|---|
| 1 | 1,32 | 85 |
| 2 | 1,33 | 85 |
| 3 | 1,34 | 85 |
| 4 | 1,33 | 85 |
A média das quatro leituras é 1,33 V. Complete o trecho com o erro permanente calculado e com os limites e a conversão corretos. O valor de pwm deve coincidir com o registro, dentro do arredondamento. Em código C/C++, use ponto decimal nos literais.
float kp = 0.50f; // ciclo de trabalho por V
float erroPermanenteV = ;
float uCalc = kp * erroPermanenteV;
float uAplicado = constrain(uCalc, 0.0f, );
int pwm = (int)(uAplicado * + );
analogWrite(3, pwm);Qual conclusão valida corretamente o caso, usando a média das leituras, o ganho estático estimado e o PWM registrado?
Em 2 ou 3 frases, justifique por que a saída final abaixo de 2,00 V não aponta necessariamente falha. Inclua o erro permanente, a evidência sobre saturação e por que não é adequado aumentar Kₚ indefinidamente.
Escreva pelo menos 100 caracteres (0/100).
Resumo
Parabéns! Você concluiu: Controle proporcional de uma saída RC
Milhares de cursos online em vídeo, ebooks e áudiobooks.
Para testar seus conhecimentos no decorrer dos cursos online
Gerado diretamente na galeria de fotos do seu celular e enviado ao seu e-mail
Baixe nosso aplicativo pelo QR Code ou pelos links abaixo:.
+ de 10 milhões
de alunos
Certificado grátis e
válido em todo o Brasil
60 mil exercícios
gratuitos
4,8/5 classificação
nas lojas de apps
Cursos gratuitos em
vídeo, ebooks e audiobooks