For years, I always forgot to turn off the lights and fans at my house. Despite initially denying that constantly using these appliances significantly increased my electricity usage, I eventually broke my bad habit and began turning off every little switch. After all, being more prudent about my electricity usage reduces my monthly bills and promotes a greener earth.
Unfortunately, minimizing system power consumption in an embedded system requires much more work than flipping off some switches. The right design strategy needs to be implemented long before you even start drawing the circuit. And whether your device is solar-based or battery-powered, every detail matters when it comes to minimizing the system power consumption of your embedded system.
As a hardware, it’s natural to feel excited about a new project. But instead of rushing off to get the most powerful microcontroller available, you should understand the nature of the application and uncover any constraints on the power consumption. Even if you’re not designing a solar-powered battery device, an energy-saving design, in general, may be preferable if you want to keep up with competitors.
To optimize your device’s power budget, start by placing a reasonable limit on your design’s power consumption and works backward from there. Choose microcontrollers and other components that have energy-saving features or simply consume less power. If you choose the wrong components, it could make it tougher to implement power-saving measures at the design stage.
It takes both hardware and firmware engineers to implement efficient power-saving features in an embedded system design. Here are some tips to collaboratively minimize the total power consumption of your design:
In some outdoor, solar-based applications, using a powerful microcontroller to fulfill given specifications can be inevitable. For instance, an outdoor vehicle ticketing machine needs to issue a printed ticket or scan a payment card within a short period of time, before storing the records in its non-volatile memory.
Based on these functions, a high-end 32-bit microcontroller becomes the best option. However, such a powerful microcontroller also consumes a higher current when all the peripherals are turned on. This results in the need for a higher capacity battery if the microcontroller is continuously running at full power.
A practice to prevent the microcontroller from drawing maximum power is to put it into deep sleep mode when it’s idle. In deep sleep mode, microcontrollers often consume a tiny fraction of the maximum current, often in nano-amps. Firmware engineers can then use interrupts to wake up the microcontroller as needed.
Use deep sleep mode for your microcontroller.
Sometimes, unnecessary power wastage occurs in the form of heat. This is true when you’re using a linear regulator in your design. For a solar-powered device, typical power supply circuits require the battery voltage to be dialed down. Naturally, a linear voltage regulator is the cheapest solution for this.
Linear regulators are, however, not known to be efficient, as they dissipate the difference between the voltages as heat. When you’re running the device on a battery, the heat dissipation results in extra current being drawn from the battery. If this is the case, you can opt to use a switching regulator instead.
While switching regulators and associated components increase the overall unit cost, this is a more effective tactic than using linear regulators. Less heat dissipation means a longer-lasting battery, which is useful in cases when the device has to operate without sunlight. In power-sensitive applications, every milliwatt saved can make a huge difference.
Putting the microcontroller into deep-sleep mode is a brilliant technique for reducing total power consumption. But other components like logic integrated circuits (IC) or communication IC can still drain significant current even when your microcontroller is in deep sleep mode.
This issue can, thankfully, be minimized. Instead of having a single voltage regulator on the PCB, you can use two regulators to separately power the microcontroller and the other components. This method allows the microcontroller to turn off the power of other components before entering deep sleep mode.
Cut off power to unused components.
Furthermore, this ensures power consumption in the idle state only comes from the microcontroller and the input necessary to interrupt the microcontroller from deep sleep mode. By using Altium Designer®’s PDN Analyzer™, you can ensure that the power tracks are sufficient and not prone to causing additional power loss. Strong PCB design software can encourage every step of your design.
Need more tricks to reduce your device’s power consumption? Consult an expert at Altium.