Arduino tahák

Externí napájení Arduino mega

Doporučované napájení: 7 – 12V
Limitní hodnoty napájení: 6-20V

Maximální proud pinem: 40mA

http://www.arduino.cc/en/Main/ArduinoBoardMega2560

Externí napájení Ardudino UNO

Doporučované napájení: 7 – 12V
Limitní hodnoty napájení: 6-20V

Maximální proud pinem: 20mA

Práce s časem

mills()

Vrátí počet milisekund od spuštění programu na Arduino desce. Po přetečení (cca 50 dnů) se opět vrátí na hodnotu 0 a pokračuje v inkrementaci.

Eagle: shield pro Arduino

Na včerejším BarCampu v Českých Budějovicích jsem dostal skvělý tip od kluků z Bastlírny jak udělat shield pro Arduino. Namotivován jsem se hned pustil do práce. Existuje již hotová knihovna, která má rozměry Arduina a ke které pouze přidáme požadované součástky a uděláme plošný spoj. Moje poznámky k rozchození knihovny SparkFun:

Instalace schémat do Eagle

Knihovnu stáhneme z Githubu: https://github.com/sparkfun/SparkFun-Eagle-Libraries

Přidáme do Eagle v okně Schematic: Library -> Use: vybrat všechny stažené .lbr soubory

Hlavní okno: Libraries kde přibyla nová složka ltspice ve které jsou knihovny, které nejsou aktivované (nemají zelenou ikonku). Klikneme pravým tlačítkem na složku ltspice a vybereme volbu Use all. Knihovny jsou nyní aktivované a mají zelenou ikonku.

eagle-add-library-sparkfun

Nyní v okně Schematic můžeme přidat shield pro Arduino: Add -> SparkFun-Boards -> ARDUINO_R3_SHIELD -> ARDUINO_R3_SHIELD

S tímto shieldem propojíme požadované součástky a můžeme vygenerovat plošný spoj.

Pájecí místo pro připojení drátku

U testovacích věcí potřebuji k plošnému spoji připájet drátek, kterým slouží pro testovací účely. Pro tento účel se používá takzvaný pad. V knihovně ho naleznete ve složce wirepad

eagle-wirepad

Arduino: měření světelné intenzity s BH1750

Dnes malinko odbočím a podíváme se do elektroniky. Hledám vhodné čidlo pro moji meteostanici.

Co budeme potřebovat

  • Arduino
  • modul BH1750

Schéma zapojení:

arduino-bh1750

 

BH1750 budeme napájet 5V, ovšem je možné napájet i 3.3V.

Konektor Add na BH1750 je nutné připojit na GND!

Práci si ulehčíme naimportováním této knihovny do projektu: https://github.com/claws/BH1750

Knihovnu stáhněte, rozbalte a přejmenujte na BH1750. Složku BH1750 nahrajte do adresáře názvem libraries který je ve složce kde je nainstalováno Arduino (v mém případě c:\Program Files (x86)\Arduino\libraries\). Restartujte IDE.

Výkonný kód pro měření intenzity světla bude velice jednoduchý:

/*
 
BH1750 library
 
This example initalises the BH1750 object using the default
high resolution mode and then makes a light level reading every second.
 
Connection:
 VCC-5v
 GND-GND
 SCL-SCL(analog pin 5)
 SDA-SDA(analog pin 4)
 ADD-NC or GND
*/
 
#include <Wire.h>
#include <BH1750.h>
 
BH1750 lightMeter;
 
void setup(){
  Serial.begin(9600);
  lightMeter.begin();
  Serial.println("Running...");
}
 
void loop() {
  uint16_t lux = lightMeter.readLightLevel();
  Serial.print("Light: ");
  Serial.print(lux);
  Serial.println(" lx");
  delay(1000);
}

Výstup v konzoli:

Light: 99 lx
Light: 99 lx
Light: 101 lx
Light: 101 lx
Light: 101 lx
Light: 99 lx
Light: 46 lx
Light: 1344 lx
Light: 1665 lx
Light: 17 lx
Light: 5 lx
Light: 1485 lx

Čím menší číslo tím menší intenzita světla.