Vis indlæg

Denne sektion tillader dig at se alle indlæg oprettet af dette medlem. Bemærk at du kun kan se indlæg der er oprettet i områder du i øjeblikket har adgang til.


Emner - martinbjerre

Sider: [1] 2
1
Generel Elektronik / Krav til godkendt 230v udstyr
« Dato: Januar 25, 2017, 16:20:54 »
Hej
Vi tumler lidt med nogle biler vi har bygget. Der er monteret inverter 12-230v i bilerne. Bilerne køres fortrinsvis af montører med uddannelse inden for elfaget.
Nogle af bilerne brænder stort set alt af der tilkobles inverteren, og chaufførerne giver inverteren skylden, idet de kan måle op til 242V rms.
De hænger sig i at der på deres udstyr står 100-240v
Jeg tvivler på at de 2v er årsagen.
Hvor finder jeg dokumentation for hvad et apparat skal kunne tåle, for at blive D/CE mærket ?
Jeg er bekendt med DS/EU norm for elektricitetsforsyning (230V +- 10%)

2
Generel Elektronik / Weller loddekolbe
« Dato: Januar 19, 2017, 20:00:23 »
Nu har jeg undret mig længe nok (flere år)....
på den ene af mine weller loddekolber, er et "sært" hul i håndtaget.
hvad i alverden er det beregnet til ? :)

3
HF-teknik / Antenne til fjernbetjening
« Dato: Juli 31, 2016, 13:51:11 »
på min campingvogn har jeg naturligvis mover, men fjernbetjeningen rækker ikke godt nok. når modtageren mister signalet, stopper vognen selvfølgelig. når den så fanger signal igen, starter den op i "softstart-mode", altså lav hastighed på motorerne. dette sker 2-4 gange pr 5 meter. holder jeg fjernbetjeningen ind af døren fungerer alt perfekt.
opgaven lyder så: bedre rækkevidde.
modtageren sidder midt i vognen (aluminium) og der er ikke meget at gøre ved det.
min ide var at udstyre senderen med en bedre antenne, men jeg vil lige høre jer kloge mennesker inden jeg forgriber mig på den :)
Jeg forestiller mig at bryde den U-formede kobberbane til højre for C8-C10, og føre et RG174 kabel derfra og til en udvendig 433mhz antenne.
Er jeg helt galt på den ?

4
Generel Elektronik / Hvorfor brænder lader af ?
« Dato: Marts 15, 2016, 19:34:56 »
Hej alle i kloge mennesker.
Jeg har brug for lidt hjælp. På arbejde opbygger vi varevogne til håndværkere, men EN af bilerne driller helt vildt.
Vi har opbygget ca 90 ens biler til samme kunde, og alle biler er bygget og konfigureret ens. Alle er monteret med en 2000W inverter. I en af bilerne bliver en lader til en DeWalt maskine ved med at brænde af når den bliver trukket af inverteren, men når der tilkobles "landstrøm" på bilen, er alt som det skal være. (Landstrøm kobles til inverter, der har netprioritering )
Inverter er skiftet alene på mistanken, ladespænding på bilen er målt til max 14,8V. Udgangsspænding på inverteren er 218V ved en batterispænding på 12,5V, og 237V ved 14,8V
Alle bilerne er udstyret med præcis samme dewalt lader, og har ingen problemer.  Laderen lukker røg ud af en spole/trafo der ser ud til at sidde på 230V siden.
Jeg nægter at tro at jeg har ramt 2 invertere med præcist samme fejl, især når vi aldrig har haft en eneste reklamation på inverterne.
Jeg mistænker lidt chaufføren for at tilkoble et eller andet der "forstyrrer" inverteren.
Nogle gode ideer?

5
Generel Elektronik / Afbryde 230V eller 48V ?
« Dato: Februar 19, 2016, 20:01:50 »
Jeg er stort set klar med min arduino-webserver-3G-varmestyring (martinsolkaer.ddns.net)i min campingvogn, men jeg mangler gulvvarmen. Spørgsmålet er om jeg skal afbryde på 230v siden, eller jeg skal afbryde de 48v til gulvvarmen ?
Selve afbrydelsen sker med denne http://www.ebay.com/itm/24V-380V-40A-250V-SSR-40-DA-Solid-State-Relay-Module-3-32V-DC-To-AC-/201414937205
Jeg er ikke helt tryg ved at afbryde 230v, men hvad ville i vælge at gøre ?

6
Arduino & Lign. / dallas 1-wire problem
« Dato: Januar 25, 2016, 19:54:48 »
Jeg har købt ny campingvogn, og nu går der nørd i det ;)
Til at styre varmen hjemmefra (inden vi kører ud til vognen) har jeg sakset og redigeret nedenstående.
Spørgsmålet er hvordan jeg finder adressen på min føler, eller får skidtet til at fungere uden at kende adressen.
Føleren er selvfølgelig monteret i vognen, så den er ikke lige til at pille ud....
Kode:
/*
 * Halfluck Temperature Controller Webserver
 * An open-source Temperature Controller for Arduino.
 * v1.4 23/7/2012
 * Hosted at http://www.halfluck.com/source/webserver/TempControllerWebServer.ino
 * Described in http://www.halfluck.com/source/webserver/TempControllerWebServer.ino
 *
 * TempControllerWebServer.ino
 *
 * (cc) by Rob Hart
 *
 * http://www.halfluck.com
 * http://creativecommons.org/license/cc-gpl
 *targettemp
 * Compiled & Tested in Arduino 1.0.1
 * using OneWire Library v2.1 http://www.arduino.cc/playground/Learning/OneWire
 * using Ethercard Library https://github.com/jcw/ethercard/
 *
 */

#include <EtherCard.h>
#include <OneWire.h>
#include <EEPROM.h>

char TargetTemperarureTextbox[10];            // Data in text box

// ethernet interface mac address, must be unique on the LAN
static byte mymac[] = {
  0x10,0x4a,0x7d,0x90,0xd3,0xa0 };
static byte myip[] = {
  192,168,0,111 }; //used for static IP

byte Ethernet::buffer[1000]; // if you increase the size of the HTML
// code you may need to increase the buffer size
// (or it will stop working) //TODO
BufferFiller bfill;

const byte PinTemp = 4;    // Dallas Ds1820 Temperature Sensors
const byte PinSSR1 = 5;    // Pin for SSR 1
const byte PinSSR2 = 6;    // Pin for SSR 2

byte sensor1[8] = {
  0x28, 0x61, 0x24, 0xC5, 0x03, 0x00, 0x00, 0x51}; 
// User Defined Temperature Sensor Address 1
int currenttemp1 = 0;     // curent temperature (1/16th degrees) sensor1
int lasttemp1    = 0;     // previous temperature sensor 1
byte negativetemp1 = 0;   // if negative temp display that
byte fractlessthan10 = 0; // if less than 10 then add a zero first

int SignBit, Whole, Fract, Tc_100;
byte TargetTemp = 0;      // this is the placeholder for the target temperature
byte currenttemp1byte = 0;
OneWire ds(PinTemp);

byte Mode = 0;  // 0 is Manual, 1 is Auto
byte SSR1on = 0;  // 0 is Off, 1 is On
byte SSR2on = 0;  // 0 is Off, 1 is On

void setup () {
  if (ether.begin(sizeof Ethernet::buffer, mymac, 10) == 0);
  //Add alternative begin with 3rd parameter to specify CS pin to use.
  // Only 8, 9 and 10 are usable. Default without 3rd parameter is pin 8.
  ether.staticSetup(myip);
  pinMode(PinTemp, INPUT);          // sets the digital pin as input
  pinMode(PinSSR1, OUTPUT);          // sets the digital pin as input
  pinMode(PinSSR2, OUTPUT);          // sets the digital pin as input

  TargetTemp = EEPROM.read(0);
  Mode = EEPROM.read(1);

  //  //Stuff for DHCP
  //  Serial.begin(57600);
  //  Serial.println("\nDHCP]");
  // 
  //  if (ether.begin(sizeof Ethernet::buffer, mymac, 10) == 0)
  //    Serial.println( "Failed to access Ethernet controller");
  //
  //  Serial.println("Setting up DHCP");
  //  if (!ether.dhcpSetup())
  //    Serial.println( "DHCP failed");
  // 
  //  ether.printIp("My IP: ", ether.myip);
  //  ether.printIp("Netmask: ", ether.mymask);
  //  ether.printIp("GW IP: ", ether.gwip);
  //  ether.printIp("DNS IP: ", ether.dnsip);

}

int tempread(byte sensoraddr[])
// error codes:
// -1 no sensors found
// -2 invalid CRC
// -3 not a DS1820
{
  byte i;
  byte present = 0;
  byte data[12];
  byte addr[8];
  //int HighByte, LowByte, TReading, SignBit, Tc_100, Tf_100, Whole, Fract;
  int Temp;

  if ( !ds.search(addr)) {
    ds.reset_search();
    return -1;
  }

  if ( OneWire::crc8( addr, 7) != addr[7]) {
    return -2;
  }

  if ( addr[0] != 0x28) {
    return -3;
  }

  for ( i = 0; i < 8; i++) {
    addr[i]=sensoraddr[i];
  }
  ds.reset(); // pulse the pins and wait for a response to reset the DS1820
  ds.select(addr); // 0x55 (MATCH_ROM) followed by the address of the 1820 to talk to.
  //  ds.write(0x44,1); // start conversion, with parasite power on at the end

  ds.write(0x44,0);  //PARASITE POWER OFF
  //delay(800);     

  present = ds.reset();
  ds.select(addr);   
  ds.write(0xBE);    // Read Scratchpad

  for ( i = 0; i < 9; i++) {      // we need 9 bytes
    data[i] = ds.read();

  }
  Temp=(data[1]<<8)+data[0]; //take the two bytes response holding temperature

  SignBit = Temp & 0x8000;  // test most sig bit
  if (SignBit) // negative
  {
    Temp = (Temp ^ 0xffff) + 1; // 2's comp
  }

  return Temp;
}

const char http_OK[] PROGMEM =
"HTTP/1.0 200 OK\r\n"
"Content-Type: text/html\r\n"
"Pragma: no-cache\r\n\r\n";

const char http_Found[] PROGMEM =
"HTTP/1.0 302 Found\r\n"
"Location: /\r\n\r\n";

const char http_Unauthorized[] PROGMEM =
"HTTP/1.0 401 Unauthorized\r\n"
"Content-Type: text/html\r\n\r\n"
"<h1>401 Unauthorized</h1>";

static word homePage() {

  // bfill = ether.tcpOffset();

  //$D = word data type
  //$L = long data type
  //$S = c string
  //$F = progmem string
  //$E = byte from the eeprom.
  //Uptime Stuff
  long days=0;
  long hours=0;
  long mins=0;
  long secs=0;
  secs = millis()/1000; //convect milliseconds to seconds
  mins=secs/60; //convert seconds to minutes
  hours=mins/60; //convert minutes to hours
  days=hours/24; //convert hours to days
  secs=secs-(mins*60); //subtract the coverted seconds to minutes in order to display 59 secs max
  mins=mins-(hours*60); //subtract the coverted minutes to hours in order to display 59 minutes max
  hours=hours-(days*24); //subtract the coverted hours to days in order to display 23 hours max

  char* SSR1stat;
  if ( digitalRead(PinSSR1) == HIGH ) {
    SSR1stat = "On" ;
  }
  else {
    SSR1stat = "Off";
  }

  char* SSR2stat;
  if ( digitalRead(PinSSR2) == HIGH ) {
    SSR2stat = "On" ;
  }
  else {
    SSR2stat = "Off";
  }

  if (Mode == 0) //If Manual
  {
    bfill.emit_p(PSTR(
    "HTTP/1.0 200 OK\r\n"
      "Content-Type: text/html\r\n"
      "Pragma: no-cache\r\n"
      "\r\n"
      "<!DOCTYPE html>"
      "<html><head>"
      "<meta http-equiv='refresh' content='5'/>"
      "<title>Adria Webserver</title>"
      "<body bgcolor=""#99CCFF"">"
      "<center>"
      "<hr />"
      "<br />"
     "<font size=""5"">"
      "Martin`s campingvogn <b>"
      "<br />"
      "Temperatur i vognen: <b>"
      "<br />"
      "<br />"
      "<font size=""7"">"
      "$D.$D &deg;C</font></b>"   
      "<br />"
      "<br />"
      "<font size=""5"">"
      "Varme er <b>$S</b> "
      "<form><input type=""button"" value=""Skift"" "
      "onClick=""document.location.href='/?SSR1toggle';""></form>"
      "<br />"
      "Gulvvarme er <b>$S</b> "
      "<form><input type=""button"" value=""Skift"" "
      "onClick=""document.location.href='/?SSR2toggle';""></form>"
      "<br />"
      "<br />"
      "<form><input type=""button"" value=""Skift&nbsp;til&nbsp;"
      "Auto"" onClick=""document.location.href='/?modeauto';""></form>"   
      "<hr />"
      "Uptime: $L Days $L Hours $L Mins $L Secs"
      "</center></body></html>"),
    Whole , Fract , SSR1stat, SSR2stat, days, hours, mins, secs );
    return bfill.position();
  }
  else  //its AutoMode display Target Temp
  // and Textbox for adjusting Temperature
  {
    bfill.emit_p(PSTR(
    "HTTP/1.0 200 OK\r\n"
      "Content-Type: text/html\r\n"
      "Pragma: no-cache\r\n"
      "\r\n"
      "<!DOCTYPE html>"
      "<html><head>"
      "<meta http-equiv='refresh' content='5'/>"
      "<title>Adria Webserver</title>"
      "<body bgcolor=""#99CCFF"">"
      "<center>"
      "<hr />"
      "<br />"
      "<font size=""5"">"
      "Martin`s campingvogn <b>"
      "<br />"
      "Temperatur i vognen: <b>"
      "<br />"
      "<br />"
      "<font size=""7"">"
      "$D.$D &deg;C</font></b>"   
      "<br />"
      "<br />"
      "<font size=""5"">"
      "Auto Temperatur: <b>"
      "$D.0 &deg;C</b>"
      "<br />"
      "<br />"
      "Varme er <b>$S</b> "
      "<br />"
      "<br />"
    //  "Pump is <b>$S</b> "
    //     "<br />"
    //    "<form>"
    //    "<select id=""setit"" name=""select"">"
    //    "<option value=""/?modemanual"">Switch to Manual</option>"
    //    "</select>"
    //    "<input type=""button"" value=""Ok"" "
    //    "onclick=""window.open((setit.options[setit.selectedIndex].value)"
    //    ",'_self')""></form>"
    "Skift Auto Temp"
      "<form><input type=text name=targettemp size=10>"
      "<input type=submit value=Ok> </form>"
      "<br />"
      "<form><input type=""button"" value=""Skift&nbsp;til&nbsp;Manuel"" "
      "onClick=""document.location.href='/?modemanual';""></form>" 
      "<hr />"
      "Uptime: $L Days $L Hours $L Mins $L Secs"
      "</center></body></html>"),
    //Whole , Fract , TargetTemp, SSR1stat, SSR2stat, days, hours, mins, secs );
    Whole , Fract , TargetTemp, SSR1stat, days, hours, mins, secs );
    return bfill.position();
  }       
}

void loop () {


  if (Mode == 1) //if auto mode
  {
    if ((currenttemp1byte<TargetTemp) &&
      (currenttemp1byte>0)) // below low range
    {
      digitalWrite(PinSSR1, HIGH);       // turn SSR1oning on
      SSR1on = 1;
    }
    else if ((currenttemp1byte>=TargetTemp) &&
      (currenttemp1byte>0)) //ideal range
    {
      digitalWrite(PinSSR1, LOW);       // turn SSR1oning off
      SSR1on = 0;
    }
  }
  currenttemp1 = tempread(sensor1);
  if (currenttemp1>0)
  {
    currenttemp1byte = (byte)(currenttemp1>>4);
  }
  else {
    currenttemp1byte = 0;
  }

  if ((currenttemp1 != lasttemp1) && (currenttemp1>0))
  {
    Tc_100 = (6 * currenttemp1) + currenttemp1 / 4;
    // multiply by (100 * 0.0625) or 6.25
    //   Tf_100 = ((1.8)*Tc_100) + (32*100); // Farenheit
    Whole = Tc_100 / 100;  // separate off whole and fractional portions
    Fract = Tc_100 % 100;
    if (SignBit) // If its negative //TODO
    {
      negativetemp1 = 1;
    }
    else
    {
      negativetemp1 = 0;
    }
    if (Fract < 10) //TODO
    {
      fractlessthan10 = 1;
    }
    else
    {
      fractlessthan10 = 0;
    }
    lasttemp1 = currenttemp1;
  }

  word len = ether.packetReceive();
  word pos = ether.packetLoop(len);

  if (pos) {
    // write to LED digital output

    delay(1);   // necessary for my system //TODO
    bfill = ether.tcpOffset();
    char *data = (char *) Ethernet::buffer + pos;
    if (strncmp("GET /", data, 5) != 0) {
      // Unsupported HTTP request
      // 304 or 501 response would be more appropriate
      bfill.emit_p(http_Unauthorized);
    }
    else {
      data += 5;

      if (data[0] == ' ') {
        // Return home page
        homePage();
      }
      else if (strncmp( "?modeauto" , data, 9 ) == 0)
      {
        Mode = 1;
        EEPROM.write(1, Mode);
        digitalWrite(PinSSR1, LOW);       // turn SSR1 off
        SSR1on = 0;    // switch SSR off       
        digitalWrite(PinSSR2, LOW);       // turn SSR1 off
        bfill.emit_p(http_Found);
      }
      else if (strncmp( "?modemanual" , data, 11 ) == 0)
      {
        Mode = 0;
        SSR1on = 0;    // switch SSR off       
        EEPROM.write(1, Mode);
        digitalWrite(PinSSR1, LOW);       // turn SSR1 off
        digitalWrite(PinSSR2, LOW);       // turn SSR1 off
        bfill.emit_p(http_Found);
      }

      else if (strncmp( "?SSR1toggle" , data, 11 ) == 0)
      {
        if (SSR1on == 0)
        {
          SSR1on = 1; // switch SSR off   
          digitalWrite(PinSSR1, HIGH);       // turn SSR1 off
        }
        else
        {
          SSR1on = 0; // switch SSR off   
          digitalWrite(PinSSR1, LOW);       // turn SSR1 off
        }
        bfill.emit_p(http_Found);
      }         

      else if (strncmp( "?SSR2toggle" , data, 11 ) == 0)
      {
        if (SSR2on == 0)
        {
          SSR2on = 1; // switch SSR off   
          digitalWrite(PinSSR2, HIGH);       // turn SSR1 off
        }
        else
        {
          SSR2on = 0; // switch SSR off   
          digitalWrite(PinSSR2, LOW);       // turn SSR1 off
        }
        bfill.emit_p(http_Found);
      }

      else if (strncmp( "?targettemp=" , data , 12 ) == 0)
      {
        if (ether.findKeyVal(data+1, TargetTemperarureTextbox,
        sizeof TargetTemperarureTextbox , "targettemp") > 0)
        {
          byte value = atoi(TargetTemperarureTextbox);   
          // command to convert a string to number
          if ((value >=0) && (value <=25))  // temp within 0-25 range
          {
            TargetTemp = value;
            EEPROM.write(0, value);
          }
        }
        bfill.emit_p(http_Found);
      }
      ether.httpServerReply(bfill.position());
    }
  }
} //loop()

7
Generel Elektronik / Vinterprojekt
« Dato: November 08, 2015, 19:24:06 »
Så blev campingvognen sat i hi, og i den forbindelse har jeg fået et tosset ide om at det kunne være sjovt at kunne styre elvarmen i vognen, når vi stiller den op i foråret.
Vognen vil stå fast, og det vil derfor være rart at kunne tænde varmen hjemmefra, så der er varme på når vi ankommer. SMS vil være en nem og simpel løsning, men det kunne være lidt fedt at kunne se temperaturen i vognen hjemmefra, og starte varmen når det er nødvendigt.
Jeg har ikke umiddelbart kunne finde inspiration via google, så derfor prøver jeg her.
I vognen har jeg en ældre android tablet med wifi hotspot (og 200mb gratis om måneden), derudover forventer jeg at montere en lille bærbar (streaming af film til ungernes iPads).
Med internet, og en pc burde det da kunne lade sig gøre at styre varmen.
Hvem har en god ide ? 😊

8
Strømforsyninger - Omformer - Inverter / Josty NT400 problemer :(
« Dato: September 05, 2015, 18:45:52 »
Tilgiv min ringe indsigt i virkemåden på min strømforsyning :)
Noget er gået galt med den, jeg kan regulere fra 0 til 5,3 volt, og jeg kan ikke gennemskue hvad der er sket.
T1 og T2 har jeg udskiftet med TIP3055 for nogle år siden, IC1 virker umiddelbart, dog er der kun 11,3V på udgangen.
På anoden på D10 kan jeg måle 0-4,5V, hvilket jeg umiddelbart synes er for lidt ?
Over C1 har jeg 36V, så det ser ud til at være ok.
Jeg har ikke målt mere (får gæster) men jeg mistænker IC2, men har ikke en i skuffen jeg kan prøve med.
Ud fra min begrænsede viden, kunne jeg desuden mistænke C6 for kortslutning, men hvad siger i kloge mennesker ? :)

9
Arduino & Lign. / Camper control panel
« Dato: April 02, 2015, 19:35:08 »
Hej
Jeg faldt lige over denne: http://508.winand.nl/?p=1087
Og tænke at jeg ville dele det. Det er mildt sagt genialt, bare lidt ærgeligt at koden ikke er tilgængelig. Det falder nok desværre udenfor mit område at bygge en til min campingvogn, men smart lavet

10
Artikler / Arduino port"afbryder"
« Dato: Marts 30, 2015, 20:04:40 »

En af mine venner har et hobbyværksted, naturligvis med lift. Lofthøjden er dog begrænset, og det har skabt problemer med hans port. Konen kom hjem, mens en bil var på liften, og ude fra hendes bil trykkede hun på fjernbetjeningen til porten. Resultatet var en bule i taget på den bil der hang på liften.
Eftersom jeg benytter værkstedet, så jeg en mulighed for at lade en arduino måle afstanden med ultralyd fra loft til gulv, og dermed skabe mulighed for at afbryde porten. Ydermere gav det mulighed for at give alarm hvis bilen kommer for tæt på loftet.
Den gule LED angiver at der er under 20cm til loftet, og afbryder strømmen til porten.
Den røde angiver at der er under 8cm, og så er det tid til at stoppe liften :)
Jeg har brugt en ProMini og en HC-SR04 pga prisen i kina.
Den manglende hc-sr04 på billedet, skyldes min manglende evne til at importere den :)


Kode:
/*
Arduino ultrasonic distance alarm with 3 outputs
*/
//Include dir Ultrasonic.h
#include "Ultrasonic.h"

//init sonic ports Trigger - 6 - e Echo - 7
Ultrasonic ultrasonic(6,7);

//Pin config
const int ledgreen = 11;
const int ledyellow = 12;
const int ledred = 13;

long microsec = 0;
float distanceCM = 0;

void setup () {


pinMode(ledgreen,OUTPUT); //Def. output.
pinMode(ledyellow,OUTPUT); //Def. output.
pinMode(ledred,OUTPUT); //Def. output.
}

void loop () {
microsec = ultrasonic.timing(); //sensor
distanceCM = ultrasonic.convert(microsec, Ultrasonic::CM); //Convert distance to CM

ledDistance();

}

//Name LED func.
void ledDistance () {

//LED on func
digitalWrite(ledgreen,LOW);
digitalWrite(ledyellow,LOW);
digitalWrite(ledred,LOW);

//Distance control
if (distanceCM > 20) {
digitalWrite(ledgreen,HIGH);
}

if (distanceCM <=20) {
digitalWrite(ledyellow,HIGH);
}

if (distanceCM < 8) {
digitalWrite(ledred,HIGH);
}
}

11
Generel Elektronik / IP kamera problem
« Dato: Februar 21, 2015, 07:47:57 »
Hej
Jeg har sat et (billigt) H264 IP kamera op, og det viser fine billeder det meste af tiden, men...
Midt i en optagelse kan det finde på at lave mærkelige billeder. Det samme sker når det kun tager et billede.
Er her nogen der kan forklare mig hvor jeg skal lede efter en fejl ?

12
Arduino & Lign. / Arduino, tælle tryk indenfor 5 sekunder
« Dato: Februar 01, 2015, 14:11:34 »
Hej med jer.
Nu troede jeg lige at jeg havde styr på koden til mit projekt, men ak.....

Formålet er at tælle antal tryk på en knap, og ved 3 tryk indenfor 5 sekunder, skal en udgang aktiveres.
Senere skal en timer funktion tilføjes, og en "nulstilling" af tælleren ved flere eller færre tryk, men ligenu skal jeg have første del til at fungere. Koden er :

int buttonPin = 7;
int ledPin = 10;
void setup() {
pinMode(ledPin, OUTPUT);     
pinMode(buttonPin, INPUT);     
}
void loop()
{
unsigned long startTime = millis();
int cnt = 0;
while(millis() - startTime < 5000)
{
if(digitalRead(buttonPin) == HIGH)
cnt++;
delay(10);
}

if(cnt == 3)

{
digitalWrite(10, HIGH);
digitalWrite(11, LOW);
}
else
{
digitalWrite(10, LOW);
digitalWrite(11, HIGH);
}
}


13
Generel Elektronik / Elektroniske flagposter ?
« Dato: September 23, 2014, 19:55:13 »
Vi skal i klubben have anlagt gokartbane til foråret. Det er et stort projekt, 1300m asfalt !
På et møde snakkede vi om hvorvidt det var muligt at lave elektroniske flagposter, styret fra dommertårnet. "Posterne" skal kunne signallere GULT og BLÅT, evt RØDT. Altsammen gerne suppleret med en nummertavle med 3 cifre.
Vi påtænker at dele banen op i 5-6 afsnit, hvor alle poster i samme afsnit skal signallere det samme.
 Jeg tænkte straks "arduino, trådløs, RGB leds", men er det overhovedet en reel mulighed ?
Der findes allerede lignende enheder, dog uden nummertavler, men de koster 8000,- stk, og der skal bruges 12-15 stk, så den løsning er dømt ude.
Gode ideer modtages gerne, evt ide til kablet udgave.

14
Generel Elektronik / Hastighed på skyggepolsmotor
« Dato: August 01, 2014, 19:44:18 »
Måske her er et klogt hoved...(ved her er flere)
I min campingvogn har jeg monteret en blæser til at køle kondensoren på køleskabet. Blæseren trækkes af en 230V skyggepolsmotor.  Blæseren kører lige stærkt nok (nattestøj) og jeg ville godt have hastigheden lidt ned. Efter sigende kan jeg gøre det ved at sætte en kondensator i serie med den, men spørgsmålet er hvilken type og hvilken værdi ?
Gode bud modtages :)

15
Arduino & Lign. / Arduino+H-bridge virker ikke efter hensigten
« Dato: Juni 06, 2014, 16:16:55 »
For at lære arduino bedre at kende, har jeg kastet mig over et simpelt (troede jeg) projekt.
http://english.cxem.net/mcu/mcu3.php
Jeg har fået skidtet til at køre, men kun den ene vej, uanset hvad jeg gør vil den ikke "bakke". Jeg bruger denne: http://sun-pec.com/Pics/VM/Sunpec-PCB-DC-Stepper-Motor-Controller-L298N.pdf til at drive mine motorer.
Som jeg har forstået projektet, bruges D1/D2 som et signal om retningen, men det ser ud til at andre også bruger EnableA/EnableB for at kunne styre det.

Hvad siger de kloge?

Sider: [1] 2