Electronic – the microcontroller power duty cycle

duty cycle

Say I have a uC active for 1s every 100s, sleep otherwise. This will lead to 1% duty cycle.

But what if it is active ones every ten seconds, and once every 100 seconds, and then once every week? Over what period of time do I calculate the duty cycle?

Best Answer

If I read your question correctly then you have a wakeup at three different intervals simultaneously:

  • Once every ten seconds and
  • Once every 100 seconds and
  • Once every week

In this case you have to calculate the duty cycle over the longest interval, in this case one week. Then calculate all the smaller intervals in terms of the larger one.

A week is 7 days, each day is 24 hours, each hour has 3600 seconds, so your week is 7*24*3600 = 604800 seconds. During this interval you will wake up:

  • 60480 times (for the once / 10 sec interval), plus
  • 6048 times (for the once / 100 sec interval), plus
  • 1 time (for the once / week interval)

In other words, in 604800 seconds you will wake up 60480+6048+1 = 66529 times. Calculate the wake time for each wakeup (in seconds, even if it is fractional), multiply it by 66529 and divide 604800, then multiply by 100%: this is your duty cycle.

Duty cycle = \$\dfrac{66529 * seconds_{awake}}{604800}*100\%\$