2014年3月29日 星期六

Arduino 的耗電量是多少?

以前在玩自走車時,反正有乾電池或充電電池,所以不用去特別關心Arduino到底耗用多少電量,只要注意電壓別超過他的承受能力就好。我是為了要使用太陽能供電給Arduino,才會關心到Arduino到底用了多少電。因為便宜的太陽能面板發電量不高,如果要發電量高一點的又很貴,而且面積也會變大很多,所以說這綠色能源是很寶貴的,不得不仔細盤算。

以下是我目前所了解的,日後會陸續修訂和補充:

1.供應不同的電壓所消耗的電力也不同。

2.不同的板子耗電量也不同,MEGA會比UNO多些。

3.Arduino跟電腦、手機一樣也有睡眠模式,在睡眠模式下是最省電的,以UNO rev.3 來說約30mA。

4.如果DIY精簡版的ATmega328P,在睡眠模式下耗電量約0.4mA。

5.以下方程式來測量,

void setup(){}
void loop(){}

UNO模組耗電約為 50mA,精簡版的約15mA。

6. 這個函式庫可以讓Arduino進入休眠模式以節省用電,下載網址 https://narcoleptic.googlecode.com/files/Narcoleptic_v1a.zip

7.下列網址有介紹如何量測耗電量,
http://www.rocketscream.com/blog/2011/07/04/lightweight-low-power-arduino-library/
http://blog.cuyahoga.co.uk/2012/06/measuring-the-current-draw-of-an-arduino-project/

8.使用較低的電壓供電可以節省用電,雖然ATmega328可以接受3.3V,但如果你用了超音波模組,還是不得不遷就它而使用5V供電了。

9.7805的轉換效率不是很好,最好不要使用它,應該把電源直接改成5V,直接供給Arduino使用。

10.使用測電計,就可以直接量測出Arduino的耗電量。當然,你可以在各種模式下量測,會有不同的數值產生。 量測過程請可以參考網址 http://ben6.blogspot.tw/2012/12/cubieboard.html


2014年3月27日 星期四

認識 Arduino

這是Arduino UNO


除了UNO, Arduino 還有其他類似的板子, 不過大多數人都使用UNO或Mega.

下面是他的規格表:

微控制器(Microcontroller)
ATmega328
操作電壓(Operating Voltage)5V
輸入電壓(Input Voltage) (推薦)7-12V
輸入電壓(限制)6-20V
數位腳數量(Digital I/O Pins)14 (其中 6 個腳提供 PWM 輸出)
類比腳位數量(Analog Input Pins)  6
每個腳位提供的直流電量(DC Current per I/O Pin)             40 mA
3.3V腳位提供的直流電量(DC Current for 3.3V Pin)50 mA
快閃記憶體(Flash Memory)32 KB (ATmega328) 其中 0.5 KB 給bootloader 使用
靜態記憶體(SRAM)2 KB (ATmega328)
EEPROM1 KB (ATmega328)
時脈速度(Clock Speed)16 MHz
以上摘自 http://arduino.cc/en/Main/ArduinoBoardUno


我來解釋一下上面那個規格表:

1. ATmega328 的32是指他的記憶體為32KB, 而8是指8bit處理能力.

2. 操作電壓 5V, 表示你可以將任何提供5V電壓輸出的電源插到Arduino的USB接頭, 包括電腦的USB和行動電源. 另外他的5V腳位會提供5V的輸出, 而且數位腳位(D0~D13)在為高電位(HIGH)時也會輸出5V.

3.推薦的輸入電壓是7~12V, 如果不是的話至少應該為6~20V. 這個j外部電源應該插到5mm的電源孔, 或是Vin的腳位.

4. 每個數位腳位可以提供約40mA的直流電, 這足以點亮大部分的LED與推得動大部分的IC. 應注意的是,最多只能提供總合約 200mA的電流.

5. 快閃記憶體本來有32KB, 但因為bootloader佔用0.5, 剩下31.5KB, 這意謂你的程式不能使用超過31.5KB的記憶體.

6. 2KB的靜態記憶體是用來給程式運作時使用的, 你可以把他想像是許多車子在交會時那個必須多挪出來的空間.

7. 1KB的EEPROM可以讓你儲存自己的資料, 而這個資料即使Arduino斷電後也不會消失, 在下次通電後你還可以將資料由EEPROM叫出來使用.

8. 時脈速度是指Arduino運算的速度, 這個值愈大就表示運算速度愈快.

Arduino UNO 的Vin pin可以接12v嗎?

是的, 6~20V的外部電源可以直接連接到 Vin pin 供電給Arduino使用。但官方文件建議電壓範圍在 7~12V 最為合適。

另外,你也可以直接將5V電源插入5V pin供電給Arduino使用,不過不建議你這樣做,因為這樣的外部電源沒有經過Arduino板子上面的穩壓裝置做穩壓,如此很有可能會燒壞板子。

請詳下列文字(摘自 http://arduino.cc/en/Main/ArduinoBoardUno)



Power

The Arduino Uno can be powered via the USB connection or with an external power supply. The power source is selected automatically.
External (non-USB) power can come either from an AC-to-DC adapter (wall-wart) or battery. The adapter can be connected by plugging a 2.1mm center-positive plug into the board's power jack. Leads from a battery can be inserted in the Gnd and Vin pin headers of the POWER connector.
The board can operate on an external supply of 6 to 20 volts. If supplied with less than 7V, however, the 5V pin may supply less than five volts and the board may be unstable. If using more than 12V, the voltage regulator may overheat and damage the board. The recommended range is 7 to 12 volts.
The power pins are as follows:

  • VIN. The input voltage to the Arduino board when it's using an external power source (as opposed to 5 volts from the USB connection or other regulated power source). You can supply voltage through this pin, or, if supplying voltage via the power jack, access it through this pin.
  • 5V.This pin outputs a regulated 5V from the regulator on the board. The board can be supplied with power either from the DC power jack (7 - 12V), the USB connector (5V), or the VIN pin of the board (7-12V). Supplying voltage via the 5V or 3.3V pins bypasses the regulator, and can damage your board. We don't advise it.
  • 3V3. A 3.3 volt supply generated by the on-board regulator. Maximum current draw is 50 mA.
  • GND. Ground pins.
  • IOREF. This pin on the Arduino board provides the voltage reference with which the microcontroller operates. A properly configured shield can read the IOREF pin voltage and select the appropriate power source or enable voltage translators on the outputs for working with the 5V or 3.3V.