Calculadora de ciclo de trabalho PWM
2 ms ligado em um período de 10 ms dão um ciclo de trabalho de 20 %, e com 5 V isso resulta em 1 V de média. Informe tempo ligado, período e tensão para obter a fração, a porcentagem e a tensão média ideal. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Nível alto PWM
- 2
- Período PWM completo
- 10
- Alimentação
- 5
- t_lig
- 2
- T
- 10
- V
- 5
- Trabalho
- 0,2
Uma calculadora de ciclo de trabalho PWM transforma o tempo ligado do pulso e o período completo na fração e no percentual que descrevem por quanto tempo uma forma de onda digital permanece em alto, e multiplica essa fração pela tensão de alimentação para obter a tensão média ideal de saída. Digite o tempo ligado e o período na mesma unidade de tempo mais a tensão de nível alto em volts; a ferramenta devolve a fração de trabalho D = ton/T, o percentual de trabalho cem vezes D, a tensão média Vavg = D·V, o tempo desligado, a frequência recíproca, ecos de precisão fixa de cada entrada, rótulos de unidade no estilo SI, uma string de equação legível e uma substituição passo a passo que você pode colar em lições ou testes unitários.
O que ciclo de trabalho e tensão média significam para uma forma de onda PWM
A modulação por largura de pulso codifica um nível analógico em uma onda quadrada digital mantendo a saída em alto por um tempo ligado ton dentro de cada período T que se repete. A fração de ciclo de trabalho é definida pelo quociente fechado D = ton/T; o percentual de trabalho é cem vezes essa fração.
Para um sinal ideal de dois níveis que comuta entre zero e uma tensão de alimentação fixa V, a tensão média temporal em um período é simplesmente Vavg = D·V, porque a integral do platô alto contribui ton·V e o platô baixo contribui zero. Duplicar ton com T fixo duplica D e Vavg; duplicar T com ton fixo os reduz à metade.
O período deve permanecer estritamente positivo porque um ciclo de comprimento nulo não deixa denominador finito sob o quociente, e período negativo fica fora do modelo usual de duração temporal. Prefira unidades coerentes para ton e T —ambos milissegundos ou ambos segundos— para que D seja adimensional e a frequência 1/T seja interpretada corretamente.
Dicas práticas, limites e buscas relacionadas
Use a mesma unidade de tempo para ton e T antes de chamar se quiser o trabalho já adimensional e a frequência já no recíproco dessa unidade sem reescalar mentalmente depois. Se on-time superar period, a ferramenta ainda reporta trabalho acima de cem por cento em vez de recortar em silêncio, de modo que larguras de pulso excessivas ficam visíveis em cadernos de laboratório e testes unitários.
Esta página mira quem busca uma calculadora de ciclo de trabalho PWM, tempo ligado do pulso sobre período, ou tensão média a partir do trabalho online; não é um programador de registradores de timer, nem um projetista de filtro passa-baixa RC, nem um modelo de torque de motor, nem um simulador SPICE transitório completo.
Prefira esta capacidade quando já tiver tempo ligado escalar, período e tensão de alimentação e só precisar de D, percentual de trabalho e Vavg ideal; se sua fonte for compare-match de microcontrolador e divisor de clock, converta primeiro para segundos ou ticks para que ambos os intervalos compartilhem unidade.
Casos de uso
Checagens de lição de casa de ciclo PWM e Vavg
Estudantes digitam tempo ligado, período e tensão de alimentação de problemas PWM de livro e comparam D, percentual de trabalho e tensão média escritos à mão com um resultado determinístico.
Testes unitários de código de dimming e driver de motor
Gere casos conhecidos bons de duty e Vavg mais rejeições deliberadas de período nulo para valores esperados de kata de programação.
Estimativas prévias de LED e aquecedores
Projetistas estimam a tensão média ideal a partir de ton e T planejados antes de orçar filtros, carga térmica ou alternativas DAC.
Perguntas frequentes
Como o ciclo de trabalho PWM é calculado?
O percentual de trabalho é 100 · D.
Como a tensão média se relaciona com o ciclo de trabalho?
Esse é o nível DC que um passa-baixa perfeito recuperaria.
O trabalho pode ultrapassar 100%?
A calculadora reporta o quociente matemático sem recortar para que pulsos excessivamente largos fiquem visíveis.
A calculadora de ciclo de trabalho PWM é gratuita?
A ferramenta do navegador é gratuita e roda localmente.
O tempo ligado e o período precisam estar na mesma unidade?
Sim. Digite os dois em milissegundos ou os dois em segundos, para que o ciclo de trabalho não tenha unidade e a frequência, um dividido pelo período, seja lida na unidade certa.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/elec/pwm-duty-cycle \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"on_time":2,"period":10,"voltage":5}'const res = await fetch("https://api.kit.forhosting.com/elec/pwm-duty-cycle", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"on_time": 2,
"period": 10,
"voltage": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/elec/pwm-duty-cycle",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"on_time": 2,
"period": 10,
"voltage": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/elec/pwm-duty-cycle", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"on_time":2,"period":10,"voltage":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"on_time":2,"period":10,"voltage":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/elec/pwm-duty-cycle", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"on_time": 2,
"period": 10,
"voltage": 5
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "elec.pwm_duty_cycle",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_abs | 1000000000000 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
O período deve ser estritamente positivo: um período nulo dividiria por zero, então a API devolve um erro invalid_input claro em vez de inventar Infinity ou NaN. O caminho é aritmética determinística pura —sem rede, sem sementes aleatórias, sem dependência do relógio— de modo que o executor gratuito do navegador e a API pré-paga devolvem o mesmo JSON após o arredondamento decimal fixo sempre que você a chama.
O que ciclo de trabalho e tensão média significam para uma forma de onda PWM
Números de sala são fáceis: ton = 2 e T = 10 com V = 5 dão D = 0.2, vinte por cento de trabalho e um volt de média; ton = 5 e T = 10 com os mesmos cinco volts dão cinquenta por cento e dois ponto cinco volts. Professores e corretores automáticos cuidam da rejeição de período nulo tanto quanto da aritmética: um estudante que coloca T = 0 saiu do domínio da fórmula, e um fallback silencioso de valor absoluto esconderia esse erro. O caminho de checagem recalcula ton/T e D·V com o mesmo arredondamento fixo usado nos campos publicados, de modo que uma resposta bem-sucedida sempre traz passos que você pode afirmar em testes ou planilhas sem ambiguidade de ponto flutuante entre o Worker e o navegador.
Como chamar a API e o que volta
O tempo ligado deve ser não negativo; um intervalo alto negativo é rejeitado neste modelo PWM digital ideal. Prefira enviar números em vez de strings pré-formatadas quando controlar o cliente; strings numéricas só são aceitas quando batem com um padrão numérico finito estrito incluindo notação científica opcional. Envie um corpo JSON com três números finitos obrigatórios: on_time (alias ton, t_on, high_time, pulse_width e pw) para o intervalo alto, period (alias T, t_period, cycle_time e pwm_period) para o comprimento completo do ciclo na mesma unidade de tempo, e voltage (alias V, vcc, v_supply, amplitude e supply_voltage) para a amplitude de nível alto em volts. Os valores absolutos devem permanecer dentro do limite publicado de um trilhão para que quocientes e produtos intermediários sigam finitos em precisão dupla IEEE no Worker e no navegador. O período deve ser estritamente positivo; valores cuja magnitude absoluta é menor ou igual a 1e-15 são tratados como zero e rejeitados, e qualquer período estritamente negativo também é invalid_input. Em sucesso, a resposta ecoa on_time e ton arredondados, period e T, voltage e V, define duty, duty_cycle e duty_fraction na mesma fração adimensional, duty_percent em cem vezes D, average_voltage e Vavg em D·V em volts, off_time em period menos on_time, frequency em um sobre period, formula nas strings documentadas de D e Vavg, equation em uma linha de substituição legível, rótulos de unidade para fração, percentual e volts, message em um resumo breve, e steps em um arranjo ordenado de valores dados, fórmulas, trabalho, percentual, tempo desligado, frequência, tensão média e resumo. Validação falha —campos ausentes, strings não numéricas, números não finitos, valores fora de limites absolutos, período nulo ou negativo, tempo ligado negativo ou quociente não finito— devolve invalid_input e nunca é cobrada. O preço é um US$ 0,002 fixo por requisição bem-sucedida com unidade item e preço unitário marginal zero.
Dicas práticas, limites e buscas relacionadas
Mantenha on-time, period e voltage dentro da faixa absoluta publicada para que o quociente e o produto sigam finitos sob o teto de magnitude. Ao ensinar, emparelhe exemplos: ton = 2, T = 10, V = 5 dão vinte por cento e um volt de média; ton = 5, T = 10, V = 12 dão cinquenta por cento e seis volts; ton = 0 com T positivo dá trabalho nulo e média nula; e colocar period em zero demonstra o caminho duro de invalid_input. Tarefas falhas que devolvem invalid_input não consomem saldo pré-pago, o que mantém baratos scripts exploratórios quando aprendizes colocam de propósito period em zero. Checagens de ida e volta são fáceis: recalcule ton/T e multiplique por V à mão e confirme que duty e average_voltage publicados batem no mesmo arredondamento a doze casas, e confirme que escalar ton e T pelo mesmo fator positivo deixa D e Vavg inalterados como a fórmula prevê.
Perguntas técnicas
O que acontece quando o período é zero?
O quociente on_time / period é indefinido. Esta ferramenta devolve invalid_input em vez de Infinity ou NaN.