Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
user:kluong:low_power_design_considerations [2020/04/28 03:23] kluong [Table] |
user:kluong:low_power_design_considerations [2021/09/19 21:59] (current) |
||
---|---|---|---|
Line 3: | Line 3: | ||
**Low power design considerations** | **Low power design considerations** | ||
- | * Previous designs are pretty inefficient - lets take a look at why (the design choices are different for each hardware platform) | + | I started this writeup after I was doing some reading about low-power arduino setups. |
+ | |||
+ | * Previous designs are pretty inefficient - lets take a look at how inefficient, why and what we can do to design a better power system in the future. First we need to take a look at some of the constraints that we're dealing with: | ||
+ | * Rooftop; no place to plug in | ||
+ | * Hypothetical design consideration: raspberry pi - is it possible? | ||
+ | * About 1A / 5V -> 5W | ||
+ | * 6W solar panel charger not enough to charge during the day | ||
+ | * 10W solar panel might be enough: https://www.adafruit.com/product/2747 | ||
+ | * Cost consideration | ||
+ | * Driving down power consumption means cheaper solar panel and cheaper battery | ||
+ | * The design choices are different for each hardware platform - this is not a critique on the designers / people | ||
* Apple | * Apple | ||
* Cranberry | * Cranberry | ||
Line 12: | Line 22: | ||
* XBee power states (sleep mode) | * XBee power states (sleep mode) | ||
* Microcontroller sleep modes | * Microcontroller sleep modes | ||
- | * Other sensors | + | * Sensors - how much power do they consume? |
- | * How low can we go? | + | * How low can we go? (Theoretical) |
+ | |||
+ | Footnotes: | ||
+ | * | ||
Links: | Links: | ||
Line 21: | Line 34: | ||
* https://lowpowerlab.com/shop/index.php?_route_=Moteino/moteino-r4 | * https://lowpowerlab.com/shop/index.php?_route_=Moteino/moteino-r4 | ||
* https://www.rocketscream.com/blog/product/mini-ultra-8-mhz-arduino-compatible/ | * https://www.rocketscream.com/blog/product/mini-ultra-8-mhz-arduino-compatible/ | ||
+ | * https://learn.sparkfun.com/tutorials/reducing-arduino-power-consumption/all | ||
+ | |||
+ | |||
+ | |||
+ | ====== Example main ====== | ||
+ | |||
+ | Using the low power library, here is what the loop function looks like: | ||
+ | |||
+ | <code> | ||
+ | sleep_counter++; | ||
+ | LowPower.idle(SLEEP_4S, ADC_OFF, TIMER2_OFF, TIMER1_OFF, TIMER0_OFF, | ||
+ | SPI_OFF, USART0_OFF, TWI_OFF); | ||
+ | if(sleep_counter % 15 == 0){ | ||
+ | board.sample(&board); | ||
+ | } | ||
+ | </code> | ||
- | ^ test ^ test ^ | ||
- | | Car Insurance\\ Electricity\\ Adobe\\ Maya\\ Spotify\\ Linkedin asdasd asdasd ad asd asd a | Testing testing testing testing testing\\ Testing testing testing | |