Arduino schéma - arduino.sk

Výškoměr se záznamem na SD kartu

Kompletné projekty s návodom a zdrojovým kódom
Obrázok užívateľa
Príspevky: 64
Registrovaný: Str 30. Okt 2013 18:21:18
Bydlisko: ČR

Výškoměr se záznamem na SD kartu

Poslaťod Diego » Štv 07. Jan 2016 19:32:43

Při pouštění draka mě zajímalo jak vysoko asi vyletí. Tak vznikl tento výškoměr.

Obrázok

Výškoměr je postavený z:

MCU Arduina UNO
čidla tlaku vzduchu BMP180
slotu na SD kartu
držáku 2 ks AAA baterií
DC/DC měniče na 5V
LEDky a pár dalších součástek

Schéma zapojení není potřeba – SD karta je připojena přes SPI rozhraní a čidlo tlaku přes I2C sběrnici. Zbytek lze vyčíst ze zdrojáku.

Kód: Vybrať všetko
#include <LiquidCrystal.h>
#include <Arduino.h>
#include <Wire.h>
#include <BMP085.h>
#include <EEPROM.h>
#include <SPI.h>
#include <SD.h>

#define LED 9                      // LED na pinu 9

const int chipSelect = 8;          // CS SD karty na pinu 8

long vyska = 0;                    // aktuální výška
long vyskaI = 0;                   // základní výška
long vys = 0;                      // výška


BMP085 dps = BMP085();                   // inicializace tlaku vzduchu


void setup()
{   
  pinMode(8, OUTPUT);                    // pin 8 výstup
  pinMode(LED, OUTPUT);                  // pin LED výstup
 
  dps.init(MODE_STANDARD, 99700, false); // nastavení BMP180
  if (!SD.begin(chipSelect)) {}          // inicializace SD karty
  delay(2000);                           // čekej 2s
  dps.getAltitude(&vyskaI);              // čtení základní výšky
  delay(2000);                           // čekej 2s
  vyskaI = vyskaI/100;                   // převod výšky na metry
}

void loop()
  {
 
  dps.getAltitude(&vyska);               // čtení aktuální výšky

  vyska = vyska/100;                     // převod výšky na metry
 
  vys = vyska - vyskaI;                  // výpočet výšky
 
 
  File sd = SD.open("log.csv", FILE_WRITE);   // otevři log.csv


  if (sd) {                 //pokud soubor existuje pak zapiš
   
    sd.println(vys);        // zapiš výšku
   
    sd.close();             // zavři log.csv
   
    blikOK();               // bliknutí při nahrání na SD kartu
  } 
 
  else {                    // pokud se zápis nezdaří
    blikE();                // bliknutí při chybě nahrání na SD kartu
    }
   
  delay(4000);              // čekej 4s
  }
 
 

void blikOK()              //bliknutí při nahrání na SD kartu         
{
  digitalWrite(LED, HIGH);
  delay(200);               
  digitalWrite(LED, LOW);   
  delay(1000);
}


void blikE()               //blikání při chybě nahrání na SD kartu
{
  digitalWrite(LED, HIGH);
  delay(200);               
  digitalWrite(LED, LOW);   
  delay(200);
  digitalWrite(LED, HIGH);
  delay(200);               
  digitalWrite(LED, LOW);   
  delay(200); 
  digitalWrite(LED, HIGH);
  delay(200);               
  digitalWrite(LED, LOW);   
  delay(1000); 
}


Další info zde:
http://elektronika2011.cz/vyskomer-se-z ... -sd-kartu/
Naposledy upravil Diego dňa Pon 11. Jan 2016 18:30:24, celkovo upravené 1

Obrázok užívateľa
Príspevky: 133
Registrovaný: Štv 06. Nov 2014 12:06:09

Re: Výškoměr se záznamem na SD kartu

Poslaťod budvar10 » Pia 08. Jan 2016 8:19:06

Veľmi jednoduché, ale účinné. Ten program by sa dal trochu vylepšiť nahradením delay().

Obrázok užívateľa
Príspevky: 64
Registrovaný: Str 30. Okt 2013 18:21:18
Bydlisko: ČR

Re: Výškoměr se záznamem na SD kartu

Poslaťod Diego » Pia 08. Jan 2016 17:01:12

budvar10 píše:Veľmi jednoduché, ale účinné. Ten program by sa dal trochu vylepšiť nahradením delay().

Určitě dal, ale čekání využívám aby se ukládala výška po určené době. Je zbytečné např. 10 vzorků za vteřinu :-)

Príspevky: 74
Registrovaný: Štv 04. Dec 2014 22:15:58
Bydlisko: Banská Bystrica

Re: Výškoměr se záznamem na SD kartu

Poslaťod Robo Ulbricht » Sob 09. Jan 2016 8:58:04

A do akej výšky vyletel?

Obrázok užívateľa
Príspevky: 64
Registrovaný: Str 30. Okt 2013 18:21:18
Bydlisko: ČR

Re: Výškoměr se záznamem na SD kartu

Poslaťod Diego » Sob 09. Jan 2016 11:45:10

Robo Ulbricht píše:A do akej výšky vyletel?

Eště čekam na vhodné počasí :-)

Obrázok užívateľa
Príspevky: 300
Registrovaný: Pon 19. Nov 2012 12:01:08
Bydlisko: HC/BA

Re: Výškoměr se záznamem na SD kartu

Poslaťod tomXX » Uto 12. Jan 2016 11:03:17

Heh, tiež som zvedavý ako vysoko ;)
blog.sitepoint.sk - zaujímavé riešenia okolo Arduina

Obrázok užívateľa
Príspevky: 28
Registrovaný: Pon 13. Okt 2014 16:42:00
Bydlisko: Ružomberok

Re: Výškoměr se záznamem na SD kartu

Poslaťod speko2 » Uto 12. Jan 2016 18:18:47

Asi pred tri štvrte rokom som takéto zariadenie pripol na drona ale využil som aj meranie a zápis teploty. Dron za (45€ )vtedy vyletel do vyšky okolo 230 meterov síce už nepamätám ten rozdiel teploty dole a hore ale bolo to asi 3°C. Zajtra mi príde lepší dron skúsim letieť vyššie :D . Ešte sa zaoberám myšlienkou posielať data na zem pomocou bezdrôtového modulu NRF24L01 a výšku zobraziť na LCD display.

Obrázok užívateľa
Príspevky: 64
Registrovaný: Str 30. Okt 2013 18:21:18
Bydlisko: ČR

Re: Výškoměr se záznamem na SD kartu

Poslaťod Diego » Sob 05. Mar 2016 17:12:25

Konečně přišlo vhodné počasí na pouštění draka, tak sem zkusil výškoměr. Zatim sem byl max. v 34 m. Ale jen proto že zatim nemam delší provázek

Obrázok

Späť na Hotové projekty