Dansk Elektronik Forum

Generel Elektronik => Generel Elektronik => Emne startet af: steffenpoulsen efter Maj 22, 2016, 17:35:07

Titel: data logning af tryk
Indlæg af: steffenpoulsen efter Maj 22, 2016, 17:35:07
Hej,  jeg mangler noget jeg kan bruge til at logge tryk med,  ( 6-7 bar  og ca i 2 min. )  nogen der har en ide til hvad man kan bygge ?  er helt grøn i elektronik, men prøver gerne at bygge noget ;D 
Titel: Sv: data logning af tryk
Indlæg af: microtec efter Maj 22, 2016, 17:58:32
Det kan løses med en standard tryktransmitter med 4-20mA ouput og denne lille Lascar EL-USB-4 datalogger:
http://www.microtec.dk/contents/da/p86_EL-USB-4_Current_Data_Logger.html
Titel: Sv: data logning af tryk
Indlæg af: steffenpoulsen efter Maj 22, 2016, 18:04:54
okay, det var en mulighed,   men ville gerne have noget til 12v eller 9v batteri man kan tænde og slukke på og så sætte computeren til bagefter og se data.
Titel: Sv: data logning af tryk
Indlæg af: steffenpoulsen efter Maj 22, 2016, 18:07:19
evt noget der logger på et sd kort,
Titel: Sv: data logning af tryk
Indlæg af: dani8303 efter Maj 22, 2016, 18:19:41
Du kunne eventuelt bruge sådan en dims: http://www.ebay.com/itm/0-5-4-5-VDC-0-1-2-MPa-Pressure-Transducer-Sensor-Oil-Fuel-Diesel-Gas-Water-Air-/391182286568?hash=item5b1447fee8:g:XdoAAOSwHnFVi29h&vxp=mtr (http://www.ebay.com/itm/0-5-4-5-VDC-0-1-2-MPa-Pressure-Transducer-Sensor-Oil-Fuel-Diesel-Gas-Water-Air-/391182286568?hash=item5b1447fee8:g:XdoAAOSwHnFVi29h&vxp=mtr)
Den kan klare tryk på op til 12bar. Den bruger 5volt, og giver et analogt output på 0.5 til 4.5volt. Udgangen kunne du så tilslutte til en af de 6 analoge pins på arduino uno. Arduinoen kunne så logge dataende til et SD-kort.
Titel: Sv: data logning af tryk
Indlæg af: steffenpoulsen efter Maj 22, 2016, 18:55:48
okay,  det kunne jeg godt bruge,   er der en der kan hjælpe med hvad  jeg skal købe ? er helt grøn i det her, men det skal prøves  :D  hvis det er muligt vil jeg gerne kunne logge 2 x tryk, 
Titel: Sv: data logning af tryk
Indlæg af: dani8303 efter Maj 22, 2016, 19:07:15
Du kan let koble to af disse sensorer på, da arduionen har 6 analoge indgange. Hvor meget udstyr har du? Vil du lave det på et breadborad, hulprint eller hvad tænker du?
Titel: Sv: data logning af tryk
Indlæg af: dani8303 efter Maj 22, 2016, 19:30:29
Du skulle kunne nøjes med det her: http://www.ebay.com/cln/danne2169-azace0ay/def/301294419014 (http://www.ebay.com/cln/danne2169-azace0ay/def/301294419014). Husk hvis du køber 2 af disse sensorer, så skal du ikke købe dem samtidige. Vent en dag eller 2 med at købe stk nummer 2. Herved kommer du under de 80kr., hvorved du slipper for importgebyr mm.
Titel: Sv: data logning af tryk
Indlæg af: steffenpoulsen efter Maj 22, 2016, 20:20:00
tusind tak, der er vel alt jeg skal bruge,?  men har lige 2 spørgsmål,  hvordan skal man starte logningen, programmere man den bare til at starte så snart den får strøm?   og  hvad for noget strøm skal den have?  kan den køre på 12-14v  ( batteri spænding - ladespændning )
Titel: Sv: data logning af tryk
Indlæg af: dani8303 efter Maj 23, 2016, 00:50:24
Der skulle være alt du skulle bruge for at komme i gang  ;).

Du skal selvfølgelig programmere den. Det skal du gøre gennem arduino ide(link til download:https://www.arduino.cc/en/Main/Software (https://www.arduino.cc/en/Main/Software)).  Under Fil-->eksempler-->SD ligger der et eksempel der hedder Datalogger. Denne logger for 3 analoge indgang(A0, A1 og A2), hvilket dog let kan ændres. Dette eksempel starter med at logge næsten samtidigt med at der tilsluttes strøm. Den logger det så bare til en .txt fil på SD-kortet.

Du kan give arduino'en strøm på to måder:
- Gennem usb hvilket er lettest, dog kun 5v!
- Gennem det runde stik. Her kan der tages op til 20v, hvilket ikke kan anbefales. 12V skulle dog fungere fint  :). Husk at det midterste ben i det runde stik er til positiv, mens det ydre er negativt/grund.
Titel: Sv: data logning af tryk
Indlæg af: steffenpoulsen efter Maj 23, 2016, 10:12:54
tusind tak for hjælpen, så skal der nørdes.  :D
Titel: Sv: data logning af tryk
Indlæg af: steffenpoulsen efter Maj 23, 2016, 13:45:01
Bonus spørgsmål,  hvor mange trykføler kan jeg bygge på  ?  Der kan vel sættes 6 til ?
Titel: Sv: data logning af tryk
Indlæg af: dani8303 efter Maj 23, 2016, 15:25:33
Der kan kobles 6 trykfølere til, da der er 6 analoge indgange på arduino uno'en.  ;D
Titel: Sv: data logning af tryk
Indlæg af: steffenpoulsen efter Juni 14, 2016, 20:13:44
Nu har jeg brugt mange lange aftner (første gang jeg leger med arduino) og har fået det til at logge nogle data.  Men hvordan får jeg det til nogle data jeg kan bruge ?   har vedhæftet et billede af nogle de data jeg får, 
Har 100 ved atmosfærisk tryk er det = 1 bar eller ?   
Kan få den ned på 60 ved at suge i den ene føler.
https://www.dropbox.com/s/z6buad47na2vvw9/datalogger.jpg?dl=0
Titel: Sv: data logning af tryk
Indlæg af: dani8303 efter Juni 15, 2016, 00:10:04
Den giver 100(102 ifølge mine beregninger  ;)) fordi der er 0,5 volt på indgangen, hvilket ifølge specifikationerne betyder ingen tryk  ;D. Du skal dog bruge lidt ekstra kode til at konventer fra int fra analogRead() til bar. Jeg skrev lidt kode, som du muligvis kan bruge til dette. Jeg ændrede også så den læser fra alle 6 analoge porte, hvilket du skrev du gerne ville.
Kode:
/*
  SD card datalogger - Ændret til at passe med tryksensor

 This example shows how to log data from three analog sensors
 to an SD card using the SD library.

 The circuit:
 * analog sensors on analog ins 0, 1, and 2
 * SD card attached to SPI bus as follows:
 ** MOSI - pin 11
 ** MISO - pin 12
 ** CLK - pin 13
 ** CS - pin 4
 */

#include <SPI.h>
#include <SD.h>

const int chipSelect = 4;

void setup() {
  // Open serial communications and wait for port to open:
  Serial.begin(9600);
  while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB port only
  }


  Serial.print("Initializing SD card...");

  // see if the card is present and can be initialized:
  if (!SD.begin(chipSelect)) {
    Serial.println("Card failed, or not present");
    // don't do anything more:
    return;
  }
  Serial.println("card initialized.");
}

void loop() {
  // make a string for assembling the data to log:
  String dataString = "";

  // Læser data fra analog 0 til 5
  for (int analogPin = 0; analogPin < 7; analogPin++) {
    int sensor = analogRead(analogPin);//Her kommer dataende fra sensoren   
    // På Ebay siden står det OUTPUTTET fra sensoren er fra 0.5 til 4.5 volt, mens tryk intervallet er
    // 0 til 1.2Mpa. 1 Mpa er 10 bar, hvorved 1.2 Mpa må være 12 bar. 0.5Volt er så 0bar, mens 4.5 Volt
    // må være 12 bar. analogRead() giver integer på 0 ved 0 volt. Den giver tilgængæld en int på 1023,
    // hvis der er 5 volt.

    // Hvad giver analogRead(), så når der er 0.5 volt. Lad os regne os frem til dette.
    // 1023/5(volt maks)*0.5(volt givet) = 102
    // Denne er værdi er altså den samme som den du logger, når de ikke laver over undertruk på sensoren.
    // Det giver altså ganske god mening de resultetater du har fået. Lad os bare trække denne værdi fra inddata
    sensor = sensor - 102;
    // Nu er dataende centerede om nul. Nu mangler de bare at blive konverterede til bar.
    // Hvad data må variablen "sensor" give når der er 12bar?
    // Der vil altså være 4.5 volt. Nu ønskes det at finde den værdi som analogRead() giver
    // 1023/5(volt maks)*4.5(volt givet) = 920.7
    // Der skal dog lige trækkes 102 fra dette
    // Følgende kan nu opstilles: 818.7 * x(ukendt) = 12(bar)
    // Så byttes der lige lidt rundt, og løsningen findes
    // 12/818.7 = 0,014657384
    //Denne værdi kan nu bruges til at omregne til bar
    double bar = sensor * 0.014657384;
   
    dataString += String(bar);
    if (analogPin < 6) {
      dataString += ",";
    }
  }

  // open the file. note that only one file can be open at a time,
  // so you have to close this one before opening another.
  File dataFile = SD.open("datalog.txt", FILE_WRITE);

  // if the file is available, write to it:
  if (dataFile) {
    dataFile.println(dataString);
    dataFile.close();
    // print to the serial port too:
    Serial.println("Skrevet til log: \""+dataString+"\"");
  }
  // if the file isn't open, pop up an error:
  else {
    Serial.println("error opening datalog.txt");
  }
}
Titel: Sv: data logning af tryk
Indlæg af: steffenpoulsen efter Juni 15, 2016, 12:42:17
Tak,  nu virker det!  nu skal jeg lige have det bygget ind i en kasse og så skal det prøvekøres  :D
Titel: Sv: data logning af tryk
Indlæg af: steffenpoulsen efter Juni 15, 2016, 12:55:24
Findes der et program som er smartere end excel til at se dataerne ? 
Titel: Sv: data logning af tryk
Indlæg af: dani8303 efter Juni 15, 2016, 14:33:38
Efter hvad jeg ved så gør der ikke. Jeg har før haft lavet et liggende projekt, hvor det dog var temperatur og tryk jeg loggede. Her endte jeg med at lave et program i "C#"/"Virtual studio" til at læse dataende. Personligt ville jeg nok lave mit eget program til at læse dataende. Er der nogle programmeringssprog du har erfaring med?
Titel: Sv: data logning af tryk
Indlæg af: steffenpoulsen efter Juni 15, 2016, 15:33:42
har ingen erfaringer med noget som helst.  så det må vidst bare blive i excel..   :D
Titel: Sv: data logning af tryk
Indlæg af: Jakobsen efter Juni 15, 2016, 16:00:09
Der findes mange andre programmer at plotte data men det er ikke sikkert at det passe til dine data samt hvordan du vil have det vist søge evt. efter "programs to plot data" og se billeder og kig efter noget der ligner det du er ude efter

Der er også online programmer f,eks http://itools.subhashbose.com/grapher/ (http://itools.subhashbose.com/grapher/)
Titel: Sv: data logning af tryk
Indlæg af: steffenpoulsen efter Juni 17, 2016, 22:17:20
Efter hvad jeg ved så gør der ikke. Jeg har før haft lavet et liggende projekt, hvor det dog var temperatur og tryk jeg loggede. Her endte jeg med at lave et program i "C#"/"Virtual studio" til at læse dataende. Personligt ville jeg nok lave mit eget program til at læse dataende. Er der nogle programmeringssprog du har erfaring med?

har sendt en besked :)