Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

  • Promy
  • Registratie: oktober 2002
  • Laatst online: 17-07 19:00
@LED-Maniak: nee, nu hangt de knop gewoon via dit type schakeling aan de arduino pin.
(onderste schema)


Kan je misschien die RC schakeling wat toelichten? Via google kreeg ik verschillende mogelijkheden :| Bedoel je de 100nF parallel over de knop?

Zou het beter werken om de logica van de knop om te schakelen en dus bovenste schema te gebruiken of over te schakelen op 5V ipv 3.3V?

Promy wijzigde deze reactie 05-01-2017 18:53 (36%)


  • RobV
  • Registratie: juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
quote:
Promy schreef op donderdag 5 januari 2017 @ 16:55:
@RobV: ik ben niet helemaal mee: als je drukt, dan steekt hij de huidige millis() in de variable druktijd. (enkel als hij voorbij de voorwaarde raakt dat het minder dan de debounce tijd geleden is dat er gedrukt was.) Dit zou toch altijd goed moeten gaan, of zie ik het mis?)
Ik denk dat je enkele dingen over het hoofd ziet. Je druktijd kan pas worden geinitialiseerd met de starttijd als je p_debounce verstreken is. Omdat je hem nooit initialiseert is deze 0 en dus altijd waar voor de eerste keer. Verder wil je enkel schakelen als de knop ongedrukt is gedurende de gehele debounce-tijd, dus zul je ook ergens een digitalRead() == 0 moeten hebben (of een else).

Lees anders eens het volgende stuk door: http://www.gammon.com.au/switches

 | Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72


  • Fifaya
  • Registratie: april 2011
  • Laatst online: 17-07-2017
Ik ben bezig een verkeerslicht op een kruispunt te bouwen aan de hand van Hall sensors. Het idee is simpel, er zijn drie richtingen en twee richtingen gebruiken de sensors. Als een sensor een auto meet (magneetje) dan moet deze prioriteit krijgen. Als deze dan prioriteit heeft gekregen en de andere sensor meet ook een auto, dan moet deze achteraan sluiten. Met de huidige situatie zal de kruising 1 grote chaos worden, dus ik ben benieuwd wie mij kan helpen. Op Arduino gebied ben ik nog niet heel bekend; ik ben nog lerende. Momenteel maak ik gebruik van hardware interrupts maar het is mij nog niet gelukt om het werkend te krijgen dus ik hoop dat iemand mij op weg kan helpen!
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
//Delcaring the sensor and LED Pins
#define sensor1Pin 2
#define sensor2Pin 3
#define led1Pin 13
#define led2Pin 12
#define led3Pin 11
#define led4Pin 10
int onoff=0;//0 lights are off 1 light are on
volatile byte state = HIGH;

// the setup function runs once when you press reset or power the board
void setup() {
  pinMode(led1Pin, OUTPUT);
  pinMode(led2Pin, OUTPUT);
  pinMode(led3Pin, OUTPUT);
  pinMode(led4Pin, OUTPUT);
  pinMode(sensor1Pin, INPUT_PULLUP);
  pinMode(sensor2Pin, INPUT_PULLUP);
  Serial.begin(115200);
  attachInterrupt(digitalPinToInterrupt(sensor1Pin), blink1, RISING);
  attachInterrupt(digitalPinToInterrupt(sensor2Pin), blink2, RISING);
  
}
void blink1() {
  state = !state;
 
}

void blink2() {
  state = !state;
 
}

// the loop function runs over and over again forever
void loop() {
  
  if (state == LOW) {//using the state variable that gets changed in the interrupt function instead of a digitalRead()
    // turn LEDS on:
    Serial.println("on");
    digitalWrite(led1Pin, HIGH); 
    digitalWrite(led2Pin, HIGH);
    digitalWrite(led3Pin, HIGH);  
    digitalWrite(led4Pin, HIGH);
    onoff=1; 
  } else if(state == HIGH) {//using the state variable that gets changed in the interrupt function instead of a digitalRead()
    // turn LEDs off:
    if(onoff==1){
      digitalWrite(led1Pin, LOW);
      digitalWrite(led2Pin, LOW);
      digitalWrite(led3Pin, LOW);
      digitalWrite(led4Pin, LOW);
      onoff=0; 
      
    }
    
    //walkning LED
     digitalWrite(led1Pin, HIGH);   // turn the LED on (HIGH is the voltage level)
      delay(1000);  // wait for a second
      if(state==LOW)return; //returns back to the top of the main loop
        digitalWrite(led1Pin, LOW);    // turn the LED off by making the voltage LOW
        digitalWrite(led2Pin, HIGH);   // turn the LED on (HIGH is the voltage level)
      delay(1000);       // wait for a second
         if(state==LOW)return; //returns back to the top of the main loop
        digitalWrite(led2Pin, LOW);    // turn the LED off by making the voltage LOW
        digitalWrite(led3Pin, HIGH);   // turn the LED on (HIGH is the voltage level)
     delay(1000);         // wait for a second
        if(state==LOW)return;
        digitalWrite(led3Pin, LOW);    // turn the LED off by making the voltage LOW
        digitalWrite(led4Pin, HIGH);   // turn the LED on (HIGH is the voltage level)
     delay(1000);         // wait for a second
         if(state==LOW)return; //returns back to the top of the main loop
        digitalWrite(led4Pin, LOW);    // turn the LED off by making the voltage LOW
      
     
     }
}


  • Promy
  • Registratie: oktober 2002
  • Laatst online: 17-07 19:00
quote:
RobV schreef op donderdag 5 januari 2017 @ 19:36:
[...]

Ik denk dat je enkele dingen over het hoofd ziet. Je druktijd kan pas worden geinitialiseerd met de starttijd als je p_debounce verstreken is. Omdat je hem nooit initialiseert is deze 0 en dus altijd waar voor de eerste keer. Verder wil je enkel schakelen als de knop ongedrukt is gedurende de gehele debounce-tijd, dus zul je ook ergens een digitalRead() == 0 moeten hebben (of een else).

Lees anders eens het volgende stuk door: http://www.gammon.com.au/switches
De druktijd is inderdaad in het begin 0 omdat de eerste keer het inderdaad moet werken als "gebeld". (het deurslot moet opengaan bij het drukken op de knop)
Ik wil schakelen onmiddellijk als er gedrukt wordt (gedurende 4 seconden). (anders blijven ze drukken en duwen aan de deur ;) )

Lees ik het verkeerd of zie ik weinig verschil tussen de code in de link die jij stuurde onder "debouning without delay" en de mijne buiten het feit dat:
- if (switchState != oldSwitchState) vervangen is door if (digitalRead(BEL_PIN) == 1)
- if (millis () - switchPressTime >= debounceTime) rechtstreeks in de eerste if zit millis() - druktijd > p_debounce

Promy wijzigde deze reactie 05-01-2017 20:36 (4%)


  • RobV
  • Registratie: juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
Het verschil zit hem in de opsplitsing van de state en de timer, en de aanwezigheid van else-takken voor het resetten van tellers en toestanden. Daar laat ik het nu even bij om niet in herhaling te vallen. ;) kijk er even goed naar, probeer het uit, dan valt het kwartje vast wel. ;)

 | Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72


  • Promy
  • Registratie: oktober 2002
  • Laatst online: 17-07 19:00
Net het desbetreffende stukje code eens vervangen door onderstaande (cfr het gelinkte artikel), maar....nu blijft hij het relais activeren. Op de seriele output zie ik dat hij telkens in de if raakt waar Serial.print("DB1") instaat, alternerend met deze van Serial.print("DB0") (deze laatste is om het slot na x seconden te lossen

Nu snap ik er helemaal niks meer van :(
Zou het iets te maken kunnen hebben met de lengte van de utp kabel? (heb telkens 2paar samengenomen dus blauw/blauwwit/groen en groenwit samen als 1 en dan de oranje/oranjewit/bruin en bruinwit samen).
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
  // uitlezen drukknop
 byte switchState = digitalRead(BEL_PIN);
 
  // has it changed since last time?
  if (switchState != oldSwitchState){
    // debounce
    if (millis () - druktijd >= p_debounce){
       druktijd = millis ();  // when we closed the switch 
       oldSwitchState =  switchState;  // remember for next time 
       if (switchState == HIGH){
          if (deurslot_actief == 1 ){
              digitalWrite(RELAY_SLOT_PIN,0); //relais activeren en deur dus openen    1 is UIT en 0 is AAN wegens omgekeerde logica
              //eventueel nog aanvullen met bepaalde gegevens
              //Serial.println("deurbel actief"); //om te laten weten aan de pi
              Serial.println("DB1"); //om te laten weten aan de pi
              slot_in_actie = 1;
              } 
          if ( berichtverzenden == 1) { pushover("stwz_DEURBEL_ACTIEF");} //bericht versturen als het mag  
       }
                  
    }
  }

edit: nu terug de originele code met een 100nF cap over de drukknop en de eerste tests lijkt hij goed te doen... :)

Promy wijzigde deze reactie 05-01-2017 21:32 (3%)


  • Bumpy_NL
  • Registratie: december 2007
  • Laatst online: 18-07 14:04
quote:
Bumpy_NL schreef op woensdag 28 december 2016 @ 19:31:
[...]


Als er een de message length in bytes is, betekend dat dan ook dat ik niet enkel 12 bits kan sturen? Als ik het goed heb gaan er 8 bits in een byte. Dat zou betekenen dat je 2 bytes lengte hebt en dus 16 bits. Wellicht is dit geen probleem en kan ik Voor de 12 bits nog 4 maal een 0 plaatsen.

Hoe je dan dan bits stuurt is mij nog niet duidelijk. Wel heb ik gevonden hoe characters gestuurd kunnen worden. Voorbeeld:
code:
1
2
3
4
5
6
7
8
9
10
11
12
void loop()
{
  char msg[7] = {'h','e','l','l','o',' ','#'};

  msg[6] = count;
  digitalWrite(led_pin, HIGH); // Flash a light to show transmitting
  vw_send((uint8_t *)msg, 7);
  vw_wait_tx(); // Wait until the whole message is gone
  digitalWrite(led_pin, LOW);
  delay(1000);
  count = count + 1;
}

[...]

Ik ben er vrij zeker van dat het een fixed code betreft.
De code brute forcen is helaas niet gelukt. Uiteindelijk is het wel gelukt de garage deur te openen. Hiervoor heb ik de code eerst opgenomen met audacity door de 433MHz ontvanger aan de geluidsingang te knopen. Daarna heb ik de code gereproduceerd in een eigen stukje code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
String code = "000000010010001";
int sendPin = 10;
int pulseLength = 318;

void setup() {
  Serial.begin(9600);
  pinMode(sendPin, OUTPUT);
}

void loop() {
  for (int i=0; i<10; i++) {
    for (int j=0; j<15; j++) {
      if (code.charAt(j) == '0') {
        digitalWrite(sendPin, LOW);
        delayMicroseconds(pulseLength*2);
        digitalWrite(sendPin, HIGH);
        delayMicroseconds(pulseLength);
      }
      else if (code.charAt(j) == '1') {
        digitalWrite(sendPin, LOW);
        delayMicroseconds(pulseLength);
        digitalWrite(sendPin, HIGH);
        delayMicroseconds(pulseLength*2);
      }
      else {
        digitalWrite(sendPin, LOW);
      }
    }
    digitalWrite(sendPin, LOW);
    delay(23);
    delayMicroseconds(400);
  }
  delay(1000);
}

De gestuurde code leek het volgende protocol te hebben:
code:
1
2
3
..- =0

.-- = 1

Dit is een vreemd protocol lijkt me. Alles wat ik op het internet heb gevonden begint met een hoog signaal en eindigt met een laag signaal voor iedere bit. Verder leek er geen specifieke closing of opening bit te zijn. Iemand een idee welk protocol dit is? Volgens mij komt het niet overeen met een van de protocollen welke in de RC-switch library zit. Met de RC-switch library kon ik de code ook niet uitlezen.

Note: De waarden en lengtes voor de code zijn aangepast.

  • florizla
  • Registratie: januari 2001
  • Laatst online: 19-07 11:48
Hier in het topic komen regelmatig Arduino klonen voorbij zoals de Pro Micro (Atmega32u4) of Teensy (Freescale Cortex-M4).

Ik heb wat onderzoek gedaan naar een goedkoop bordje met native USB, en ik kom uit bij de Hi-Tiny met STM32 Cortex-M3 microcontroller.

http://www.hotmcu.com/stm...elopment-board-p-222.html

- zeer compact
- goedkoop
- krachtiger dan Pro Mico: 72Mhz, 20k RAM, 128k flash
- meer IOs dan Pro Micro (26); 2x UART
- reset en user button
- programmeerbaar via USB (na flashen van STM32Duino bootloader)

De Teensy is zeker nog krachtiger (meer RAM & flash, EEPROM, meer IOs, 3 UART, RTC) maar dat is dan ook een andere prijsklasse.
Ik heb ook zo'n STM32F bordje liggen (maar dan de wat meer gangbare formfactor die je op ebay tegenkomt). Leuk ding maar ik doe er in de praktijk weinig mee, voor het meeste vind ik de arduino gewoon te makkelijk en heb ik geen zin om me te verdiepen in een ander platform.

zcflevo.nl


  • florizla
  • Registratie: januari 2001
  • Laatst online: 19-07 11:48
In welk opzicht is dat dan een 'ander platform'? Ze zijn gewoon te programmeren in de Arduino IDE met Arduino libraries.

Voor de Pro Micro moest ik ook iets extra installeren in de Arduino IDE, maar dat was een kwestie van minuten.

  • Camacha
  • Registratie: april 2006
  • Laatst online: 03-07-2017

Camacha

Herder of bits.

quote:
florizla schreef op donderdag 19 januari 2017 @ 20:17:
In welk opzicht is dat dan een 'ander platform'? Ze zijn gewoon te programmeren in de Arduino IDE met Arduino libraries.
De Arduino formfactor en de Arduino IDE zijn allebei niet het beste dat je zou kunnen verzinnen, maar het voordeel is wel dat het spul ondertussen ultracompatible is. Daarmee is het eerste probleem niet heel relevant meer. Een betere IDE zou niet misstaan - als je Visual Studio gewend bent is het toch wat karig - maar rampzalig slecht is het gelukkig ook geenszins.

Persuader of bytes.


  • florizla
  • Registratie: januari 2001
  • Laatst online: 19-07 11:48
Ik deel je mening over de Arduino IDE.

Maar die kan je dus blijven gebruiken op de STM32 bordjes (zie hier). Dus daarom snap ik je opmerking niet goed dat je je niet wilt verdiepen in een 'ander platform'. Het platform blijft gewoon voor 99% hetzelfde.

Dat geldt niet voor de hardware natuurlijk - shields zullen niet passen op zo'n kleine bordjes.

  • OcGuru
  • Registratie: juni 2004
  • Laatst online: 14:17

OcGuru

Swift S 1.6

Ik ben sinds kort weer een beetje aan het spelen met mijn sealea analyzer(cloon).

Nu zit ik de data aan bekijken tussen een arduino > ds1307 RTC(i2c).


Ik schrijf eerst een 0 naar ds1307 zodat hij weet dat ik data wil uit het seconden register wil.
Daarna vraag ik om een 1 byte met daarin de data van het specifieke register.

Het enige wat mij opvalt dat sealea logic telkens over het [0xD0] device heeft terwijl de ds1307 toch echt 0x68 als adres heeft. Iemand enig idee waar dit vandaan komt?

Bl44t


  • SuperKris
  • Registratie: juni 2010
  • Laatst online: 15:14
Even googelen leert dat:
0xD0 = 11010000
0x68 = 01101000


Dat lijkt erg op elkaar natuurlijk. Mis de 1e 0, dan wordt 0x68 -> 0xD0.
Ik weet niet helemaal hoe ik die I2C werkt, maar het puur kijkend naar SDA lijkt het wel degelijk op 0x68. Is de klok misschien iets verschoven ten opzichte van SDA ofzo?

Ik neem aan dat de arduino en de RTC gewoon werken?

Misschien houd je logic analyzer het niet bij, of heb je wat verkeerd ingesteld? Ik wil ook nog een's zo'n goedkope kloon halen, maar ik kan mij voorstellen dat die niet alles altijd even perfect uitlezen. Zeker niet op een hoge baudrate.

  • OcGuru
  • Registratie: juni 2004
  • Laatst online: 14:17

OcGuru

Swift S 1.6

heb inmiddels idd ook wat via google gevonden.
quote:
address 0x68 followed by direction bit (0 for write, 1 for read) 0x68 followed by 0 --> 0xD0

7-Bit format: 0b1101000 = 0x68
Slave address for I2C Write: 0b11010000 = 0xD0
Slave address for I2C Read: 0b11010001 = 0xD1
0x68 is dus het 7-bit adres. De achtste bit geeft aan of het om een schijf of lees actie gaat.
Weer wat geleerd 8)7

Bl44t


  • SuperKris
  • Registratie: juni 2010
  • Laatst online: 15:14
Ik ben nog niet echt bekend met I2C en logic analyzers, maar ik wil hier ook meer mee gaan doen.

Waarom herkent die logic analyzer software wel dat het I2C is, maar vertaald de bits vervolgens niet correct?

Wat sealea kloon heb je eigenlijk? Ben je hier tevreden over?

  • Sissors
  • Registratie: mei 2005
  • Laatst online: 19:26
Hij vertaalt de bits prima, er zijn simpelweg twee standaarden voor I2C adressen: Als 7-bit adres, dan is het 0x68, of als 8-bit adres het weergeven, dan is het 0xD0/0xD1. 7-bit is populairder denk ik, maar als random voorbeeld, mbed gebruikt in hun I2C functies het 8-bit adres (waarbij laatste bit automatisch 0 of 1 wordt gemaakt afhankelijk van lezen of schrijven).

Ik heb zo eentje, bevalt me prima voor simpele werk: http://www.ebay.com/itm/U...84604?hash=item2ca15245bc

  • stefan787
  • Registratie: maart 2013
  • Laatst online: 17-05 13:21
goede avond allemaal!

Ik ben momenteel een stuk code aan het schrijven voor een start onderbreking. als je het contact aan zet, dan komt er een relais op wat er voor zorg dat je de auto kan start.
quote:
if (digitalRead(contactkey) == HIGH)
{
digitalWrite(contact, HIGH);
contactkeyvalue = 1;
}
else
{
digitalWrite(contact, LOW);
contactkeyvalue = 0;
}
vrij simpel, contact aan relais komt op, contact uit relais valt af.

Dus je contact staat aan, je kan de auto starten. alleen als je het contact aan zet moet er een timer gaan lopen die na 30 seconde een lampje laat knipper. Dit knipper gaat steeds een stukje sneller.

gebruik maken van een delay kan hier wel, alleen zelf vind ik het geen mooie manier om het programma af te werken. want als je namelijk je contact binnen deze 30 seconde uit zet, zal het programma door gaan tot dat de hele code afgewerkt is die na de delay komt.

ik ben dus op zoek naar een manier om een delay te maken die onderbroken kan worden. dus als je het contact uit zet dat ook de delay stopt.

Ik had al gezocht naar iets, maar ik kon er maar weinig touw aan vast knoppen wat ik las.

Ik hoop dat jullie mij hiermee kunnen helpen.

  • SuperKris
  • Registratie: juni 2010
  • Laatst online: 15:14
quote:
stefan787 schreef op woensdag 8 februari 2017 @ 17:15:
goede avond allemaal!

Ik ben momenteel een stuk code aan het schrijven voor een start onderbreking. als je het contact aan zet, dan komt er een relais op wat er voor zorg dat je de auto kan start.

[...]

vrij simpel, contact aan relais komt op, contact uit relais valt af.

Dus je contact staat aan, je kan de auto starten. alleen als je het contact aan zet moet er een timer gaan lopen die na 30 seconde een lampje laat knipper. Dit knipper gaat steeds een stukje sneller.

gebruik maken van een delay kan hier wel, alleen zelf vind ik het geen mooie manier om het programma af te werken. want als je namelijk je contact binnen deze 30 seconde uit zet, zal het programma door gaan tot dat de hele code afgewerkt is die na de delay komt.

ik ben dus op zoek naar een manier om een delay te maken die onderbroken kan worden. dus als je het contact uit zet dat ook de delay stopt.

Ik had al gezocht naar iets, maar ik kon er maar weinig touw aan vast knoppen wat ik las.

Ik hoop dat jullie mij hiermee kunnen helpen.
Daar moet je millis voor gebruiken. https://www.arduino.cc/en/Tutorial/BlinkWithoutDelay

In een arduino zit een milliseconden teller (let op, die reset wel op een bepaald moment). Je kan deze teller uitlezen en vergelijke met een bestaande teller. Dit kan je gewoon in je loop doen zodat de teller contact wordt uitgelezen.

Stel je wil 10 seconden een bepaalde actie.
Je leest de teller uit, en deze staat op 100 seconden. Je start je actie, en je wit dat deze op tijdstip 100+10 weer ophoud. Hiervoor vergelijk je teller met het getal 110. Wanneer deze gepasseerd is voer je de volgende actie uit (het stop zetten van je eerste actie)

Overigens heb je ook timer libraries die in uren:minuten:seconden tellen, maar zelf vind ik deze erg omslachtig voor korte timers.

SuperKris wijzigde deze reactie 08-02-2017 17:30 (3%)

Dit zit ook gewoon in de standaard examples in de Arduino IDE. Pak de "blink without delay" sketch er maar eens bij.

zcflevo.nl


  • Markos
  • Registratie: november 2007
  • Laatst online: 15:00

Markos

FKA > Ik_ben_Mark3

Is het makkelijk om heel simpel en goedkoop via een Arduino een reeks 12V computer ventilatoren aan te sturen? En deze op vaste tijden te laten draaien op een vooraf gekozen snelheid of op een snelheid die je zelf handmatig kunt aanpassen dmv zo'n draaiknop (potmeter?) of gewoon 2 knoppen (harder/zachter).
En kun je dan beter fans pakken met een 2,3 of 4 pin aansluiting?
(ergens tussen 4 en 10 ventilatoren)

  • foekie01
  • Registratie: december 2012
  • Laatst online: 16:19
quote:
Ik_ben_Mark3 schreef op woensdag 8 februari 2017 @ 17:39:
Is het makkelijk om heel simpel en goedkoop via een Arduino een reeks 12V computer ventilatoren aan te sturen?
PWM Fan Controller - Arduino
quote:
Ik_ben_Mark3 schreef op woensdag 8 februari 2017 @ 17:39:
En deze op vaste tijden te laten draaien op een vooraf gekozen snelheid of op een snelheid die je zelf handmatig kunt aanpassen dmv zo'n draaiknop (potmeter?) of gewoon 2 knoppen (harder/zachter).
En kun je dan beter fans pakken met een 2,3 of 4 pin aansluiting?
(ergens tussen 4 en 10 ventilatoren)
Tijd is geen probleem. Hier kun je een zogenaamde RTC voor gebruiken;
https://learn.adafruit.co...-breakout/wiring-and-test

Knoppen ook niet;
https://www.arduino.cc/en/Tutorial/Button

Potmeters ook niet;
https://www.arduino.cc/en/Tutorial/Potentiometer
quote:
Ik_ben_Mark3 schreef op woensdag 8 februari 2017 @ 17:39:
Is het makkelijk om heel simpel en goedkoop via een Arduino een reeks 12V computer ventilatoren aan te sturen?
PWM Fan Controller - Arduino
quote:
Ik_ben_Mark3 schreef op woensdag 8 februari 2017 @ 17:39:
En deze op vaste tijden te laten draaien op een vooraf gekozen snelheid of op een snelheid die je zelf handmatig kunt aanpassen dmv zo'n draaiknop (potmeter?) of gewoon 2 knoppen (harder/zachter).
Tijd is geen probleem. Hier kun je een zogenaamde RTC voor gebruiken;
https://learn.adafruit.co...-breakout/wiring-and-test

Knoppen ook niet;
https://www.arduino.cc/en/Tutorial/Button

Potmeters ook niet;
https://www.arduino.cc/en/Tutorial/Potentiometer
quote:
Ik_ben_Mark3 schreef op woensdag 8 februari 2017 @ 17:39:
En kun je dan beter fans pakken met een 2,3 of 4 pin aansluiting?
(ergens tussen 4 en 10 ventilatoren)
3-wire fans is prima. Tenzij je ook niet wilt weten of ze draaien (en hoe hard ze dus draaien)

Wat mcDavid zegt :+

foekie01 wijzigde deze reactie 08-02-2017 20:27 (37%)

4-wire is wel makkelijk, kun je gewoon 12 volt op zetten en de snelheid regelen dmv het pwm signaal. Heb je geen motorcontroller of dikke MOSFETs nodig.

zcflevo.nl


  • stefan787
  • Registratie: maart 2013
  • Laatst online: 17-05 13:21
quote:
mcDavid schreef op woensdag 8 februari 2017 @ 17:37:
Dit zit ook gewoon in de standaard examples in de Arduino IDE. Pak de "blink without delay" sketch er maar eens bij.
Ik heb het voor een deel aan de praat, alleen ik wil graag als ik een schakelaar over haal de millis op dat moment éénmalig wegschrijven. Deze kan ik dan makkelijker gebruiken in de timer.
quote:
stefan787 schreef op woensdag 8 februari 2017 @ 20:23:
[...]


Ik heb het voor een deel aan de praat, alleen ik wil graag als ik een schakelaar over haal de millis op dat moment éénmalig wegschrijven. Deze kan ik dan makkelijker gebruiken in de timer.
Er is geloof ik ook een "debounce without delay" voorbeeld. :).
en anders daar ff op googlen

zcflevo.nl


  • Camacha
  • Registratie: april 2006
  • Laatst online: 03-07-2017

Camacha

Herder of bits.

Tijdens het testen met een zelfgebouwd 328p-circuit pakte ik de verkeerde barrel plug. Hier stond 15 volt op in plaats van 5. Tijd van overlijden - 23:35 :w

Het zijn niet zelden de simpele dingen waarmee je op je mond gaat _O-

Persuader of bytes.


  • Vuikie
  • Registratie: december 2003
  • Laatst online: 18-07 22:22
quote:
Camacha schreef op zondag 12 februari 2017 @ 23:53:
Tijdens het testen met een zelfgebouwd 328p-circuit pakte ik de verkeerde barrel plug. Hier stond 15 volt op in plaats van 5. Tijd van overlijden - 23:35 :w

Het zijn niet zelden de simpele dingen waarmee je op je mond gaat _O-
Ouch, gelukkig zijn die 328 niet duur 😁

  • Camacha
  • Registratie: april 2006
  • Laatst online: 03-07-2017

Camacha

Herder of bits.

quote:
Vuikie schreef op maandag 13 februari 2017 @ 19:29:
Ouch, gelukkig zijn die 328 niet duur 😁
Deze was ook al een analoog pootje kwijt, omdat ik toentertijd mijn IC-puller nog niet binnen had en met een schroevendraaier ging rommelen. Iets met gereedschap en half werk. Dit is wel precies de reden dat ik overal een handvol van heb. Dan kan je gewoon in één beweging door als zoiets een keer gebeurt.

P.s. iemand een 328p met lichte gebruikssporen kopen? O-)

Persuader of bytes.


  • JeroenH
  • Registratie: januari 2003
  • Laatst online: 13:52
Tijd van overlijden LOL :D

Ik heb tot dusver nog geen van mijn Arduino's of ESP8266's opgeblazen, maar dat is natuurlijk een kwestie van tijd. Bordjes van $4-$5 zijn het voetvolk, en mogen opgeofferd worden voor het grotere doel. Of zoiets ;)

Illusion is the ultimate weapon


  • Valen_76
  • Registratie: oktober 2009
  • Laatst online: 03-07 23:46
quote:
OcGuru schreef op maandag 6 februari 2017 @ 00:06:
heb inmiddels idd ook wat via google gevonden.


[...]


0x68 is dus het 7-bit adres. De achtste bit geeft aan of het om een schijf of lees actie gaat.
Weer wat geleerd 8)7
De 8-e bit in tijd! Niet in binaire notatie, waar het de eerste is van rechts naar links!. R/W bit is de 'least significant bit', de laaste van de adres-bits die op de lijn verstuurd wordt.

P.S. En daarna hoort er nog met een Acknowledge-bit door de slave geantwoord te worden.

Valen_76 wijzigde deze reactie 14-02-2017 11:43 (8%)


  • HaTe
  • Registratie: mei 2007
  • Laatst online: 14:53

HaTe

haat niet

Heb net voor de 3e keer deze mod toegepast: http://www.home-automatio...ear-on-coin-cell-battery/

Helaas lijkt het mis te zijn gegaan, mijn Arduino Pro Mini doet niks meer. Geen reset led of onboard led die meer brand. Ook kan ik niks uploaden.

Ik heb alleen de trace naar de LED doorgesneden zoals in het voorbeeld. Dit ging niet direct goed, want de tweede keer nadat ik testte of hij nog ging branden, merkte ik dat er verder ook geen reset led meer brandde, de power led nog wel.

Kan ik hem afschrijven en vervangen? Of is er nog hoop?

edit:
Wat gek is, is dat als ik er spanning op zet, er een spanningsverschil zit tussen de ground aan de digitale kant en aan de analoge kant..

HaTe wijzigde deze reactie 25-02-2017 19:48 (10%)

Specs


  • Camacha
  • Registratie: april 2006
  • Laatst online: 03-07-2017

Camacha

Herder of bits.

quote:
Die AVR en FPGA-boeken zien er wel interessant uit.

Persuader of bytes.


  • jbhc
  • Registratie: juli 2007
  • Nu online
quote:
HaTe schreef op zaterdag 25 februari 2017 @ 19:34:

Kan ik hem afschrijven en vervangen? Of is er nog hoop?
Ik zou beginnen met de verbinding tussen de led en de weerstand te herstellen.

jbhc wijzigde deze reactie 25-02-2017 20:27 (57%)


  • HaTe
  • Registratie: mei 2007
  • Laatst online: 14:53

HaTe

haat niet

quote:
jbhc schreef op zaterdag 25 februari 2017 @ 20:26:
[...]


Ik zou beginnen met de verbinding tussen de led en de weerstand te herstellen.
_/-\o_ Het werkt ook nog. Twee keer verbaasd: Ten eerste dat ik het goed heb kunnen solderen, ten tweede dat alles gewoon weer werkt.



Maar nu wil ik eigenlijk nog steeds die led uitschakelen... Hoe kan ik dit dan goed aanpakken? Dit is ook een iets andere Arduino dan waar ik het eerder bij heb gedaan.

Specs


  • Camacha
  • Registratie: april 2006
  • Laatst online: 03-07-2017

Camacha

Herder of bits.

quote:
HaTe schreef op zaterdag 25 februari 2017 @ 22:01:
Maar nu wil ik eigenlijk nog steeds die led uitschakelen... Hoe kan ik dit dan goed aanpakken? Dit is ook een iets andere Arduino dan waar ik het eerder bij heb gedaan.
Is het ondertussen niet handiger om een losse AVR-chip te gebruiken?

Persuader of bytes.


  • HaTe
  • Registratie: mei 2007
  • Laatst online: 14:53

HaTe

haat niet

quote:
Camacha schreef op zaterdag 25 februari 2017 @ 22:04:
[...]

Is het ondertussen niet handiger om een losse AVR-chip te gebruiken?
Misschien wel, maar dat ga ik in dit stadium niet meer veranderen. Dus iemand die antwoord weet op mijn vraag?
Ik denk dat ik het toegevoegde draadje weg kan halen en de weerstand direct naar de condensator kan leggen?

HaTe wijzigde deze reactie 25-02-2017 22:14 (15%)

Specs


  • Camacha
  • Registratie: april 2006
  • Laatst online: 03-07-2017

Camacha

Herder of bits.

quote:
HaTe schreef op zaterdag 25 februari 2017 @ 22:10:
Misschien wel, maar dat ga ik in dit stadium niet meer veranderen. Dus iemand die antwoord weet op mijn vraag?
Wellicht kan je dezelfde Arduino als de vorige keer opduikelen of het schema van deze uitwerken. Het is niet duidelijk of deze hetzelfde schema volgt.

Je kunt ook een diode installeren in plaats van, maar dan zit je alsnog met een verbruik.

Persuader of bytes.


  • HaTe
  • Registratie: mei 2007
  • Laatst online: 14:53

HaTe

haat niet

Door juist de andere verbinding te verbreken (dus de bovenste van onderste plaatje) blijft het ding nog wel werken.

Specs


  • Camacha
  • Registratie: april 2006
  • Laatst online: 03-07-2017

Camacha

Herder of bits.

quote:
HaTe schreef op zaterdag 25 februari 2017 @ 23:10:
Door juist de andere verbinding te verbreken (dus de bovenste van onderste plaatje) blijft het ding nog wel werken.
[afbeelding]
Wat bedoel je nu precies?

Begin eens te kijken of het ding qua lay-out overeenkomst met je andere Arduino.

Persuader of bytes.


  • HaTe
  • Registratie: mei 2007
  • Laatst online: 14:53

HaTe

haat niet

quote:
Camacha schreef op zaterdag 25 februari 2017 @ 23:14:
[...]

Wat bedoel je nu precies?

Begin eens te kijken of het ding qua lay-out overeenkomst met je andere Arduino.
Ik bedoel de verbinding tussen de weerstand en de led weghalen gaat wel goed.
De andere Arduino is voor de rest heel anders, maar ook daar had ik de verbinding tussen de weerstand en led weggehaald.

Specs


  • Camacha
  • Registratie: april 2006
  • Laatst online: 03-07-2017

Camacha

Herder of bits.

quote:
HaTe schreef op zaterdag 25 februari 2017 @ 23:19:
Ik bedoel de verbinding tussen de weerstand en de led weghalen gaat wel goed.
De andere Arduino is voor de rest heel anders, maar ook daar had ik de verbinding tussen de weerstand en led weggehaald.
Is dat op deze foto? Ik zie alleen een doorgekraste verbinding tussen de LED en een condensator.

Maar goed, je zegt het zelf al - het gaat om een heel ander bordje. Verwachten dat eenzelfde aanpassing eenzelfde resultaat heeft is dan wat optimistisch. Je zult dus moeten uitzoeken of dat deel tenminste gelijk is. Gezien de verschillende resultaten, gok ik van niet.

Teken de circuits eens voor jezelf uit en kijk wat je tegenkomt :)

Persuader of bytes.


  • HaTe
  • Registratie: mei 2007
  • Laatst online: 14:53

HaTe

haat niet

quote:
Camacha schreef op zaterdag 25 februari 2017 @ 23:25:
[...]

Is dat op deze foto? Ik zie alleen een doorgekraste verbinding tussen de LED en een condensator.

Maar goed, je zegt het zelf al - het gaat om een heel ander bordje. Verwachten dat eenzelfde aanpassing eenzelfde resultaat heeft is dan wat optimistisch. Je zult dus moeten uitzoeken of dat deel tenminste gelijk is. Gezien de verschillende resultaten, gok ik van niet.

Teken de circuits eens voor jezelf uit en kijk wat je tegenkomt :)
Nee op die foto is juiste de verkeerde doorgekrast.

In dit geval heeft eenzelfde aanpassing dus wel gewerkt, vergeleken met mijn andere Arduino! Zoals in het voorbeeld (de foto) de verbinding tussen de led en de condensator is weggekrast werkt dus niet, de verbinding tussen de led en de weerstand wegkrassen werkt wel.

Specs


  • Yucon
  • Registratie: december 2000
  • Laatst online: 11:07

Yucon

*broem*

quote:
HaTe schreef op zaterdag 25 februari 2017 @ 23:10:
Door juist de andere verbinding te verbreken (dus de bovenste van onderste plaatje) blijft het ding nog wel werken.
[afbeelding]
Met het directe antwoord op je vraag kan ik je niet helpen. Maar voor een volgende keer heb ik wel gemerkt dat het makkelijker is om het ledje met een soldeerbout warm te maken en dan los te wippen met een hobbymesje.

En in plaats van die regulator te verwijderen kun je ook de diode links ervan (het 'SL' blokje) verwijderen, want dat gaat ook net wat makkelijker.

Yucon wijzigde deze reactie 15-04-2017 08:26 (20%)


  • aDutchCow
  • Registratie: december 2013
  • Laatst online: 09:56
Hallo allemaal, ik wil mijn arduino in gaan zetten om automatisch mijn rolgordijn open of dicht te laten gaan. Maar voordat ik een motortje aanschaf wil ik weten welke een goede keuze is. Anders koop ik dadelijk een motortje die dan niet genoeg kracht kan leveren. Iemand hier een suggestie? :)

Als het regent in mei, dan is april voorbij

@aDutchCow Dat begint met meten/uitrekenen hoeveel kracht er nodig is (en dus hoeveel koppel) om het rolgordijn te bedienen.

zcflevo.nl


  • Valen_76
  • Registratie: oktober 2009
  • Laatst online: 03-07 23:46
Iedere motor zou het kunnen, mits er voldoende vertraging met de tandwielen wordt gerealiseerd voor koppel vergroting. En dan bepaalt hoeveel geduld je hebt voor het oprollen.

Inderdaad eerst meten (met krachtmeter/unster-veer aan het rolgordijn koordje) welke kracht nodig is en op welke radius dit koortje aangrijpt op de rol. Dan kijken naar een motor met vertragingskast.

  • jobr
  • Registratie: januari 2009
  • Laatst online: 20-07 20:13
quote:
aDutchCow schreef op woensdag 19 april 2017 @ 11:27:
Hallo allemaal, ik wil mijn arduino in gaan zetten om automatisch mijn rolgordijn open of dicht te laten gaan. Maar voordat ik een motortje aanschaf wil ik weten welke een goede keuze is. Anders koop ik dadelijk een motortje die dan niet genoeg kracht kan leveren. Iemand hier een suggestie? :)
Je zou een High Torque Gear Box Electric Motor kunnen gebruiken.
Deze zijn met de hand bijna niet tegen te houden. Zijn er in vele varianten.
Ik heb deze ergens anders voor.

  • itcouldbeanyone
  • Registratie: augustus 2014
  • Laatst online: 19:07
Mischien via een externe eindtrap zo heb je meer power ter beschikking voor je motor.

Stratis : SbjhPeaHC2ufttT1T6DP3nDE2cDF4KtbUL


  • creon
  • Registratie: mei 2006
  • Laatst online: 11:53
Wie kan mij helpen
Ik heb een PWM controller gekocht om de ventilator van mijn wagen aan te sturen
Ook heb ik een temperatuur sensor gekocht welke ik met een Arduino uit kan lezen

Nu wil ik de potmeter van de pwm controller vervangen door mijn Arduino zodat die tegen de pwm controller kan vertellen hoe hard die de fans moet laten draaien

Het uitlezen van de temperatuur sensor en het uitsturen van een 0-5v signaal bij bepaalde temperatuur lukt mij
Maar ik weet niet hoe ik mijn Arduino met de pwm controller kan laten praten

Ik heb geprobeerd om de 0-5v op de middelste pin van waar de potmeter normaal gesproken zit, maar dat werkt niet
Ook 5v en ground op de buitenste pinnen geeft geen resultaat
Een potmeter is niet iets wat je zomaar kunt emuleren met een microcontroller. Maar waarom wil je uberhaupt die PWM controller ertussen? Een PWM signaal uitsturen met een Arduino is ontzettend triviaal (kwestie van analogWrite()).

zcflevo.nl


  • creon
  • Registratie: mei 2006
  • Laatst online: 11:53
Ik heb 2x een 12v 80w fan
Die meteen op de Arduino zetten gaat hem niet worden, dus ik heb een controller nodig
Ik heb al gevonden dat ik de 555 chip eraf moet halen en de Arduino pwm en ground op die pins aansluiten
Dat klinkt inderdaad als een goed idee. Zat even in mijn hoofd met PC fans die een aparte PWM input hebben, dat zal hier niet het geval zijn. Dan heb je idd een controller nodig.

zcflevo.nl


  • xzaz
  • Registratie: augustus 2005
  • Laatst online: 24-06 13:41
Ik ben aan het prutsen met zo'n motor:

Nu ben ik eigenlijk benieuwd, hoe zet je hier iets op? Dus op de motor, kan niet echt lekker op googlen. Kan je die dingen gewoon halen bij de bouwmarkt? Met andere woorden; hoe heet het gene wat op de motor geplaatst kan worden zodat je er mee kan werken? Of moet je dat zelf maken?

xzaz wijzigde deze reactie 24-04-2017 15:31 (3%)

Schiet tussen de palen en je scoort!


  • DurkVell
  • Registratie: augustus 2011
  • Laatst online: 19-07 08:15
Waar wil je wat opzetten? Op de as (koppelstuk met as)? Op de draden (spanning)? Wat wil je ermee doen?

Beetje onduidelijk .... :?

DurkVell wijzigde deze reactie 24-04-2017 15:41 (13%)


  • xzaz
  • Registratie: augustus 2005
  • Laatst online: 24-06 13:41
quote:
DurkVell schreef op maandag 24 april 2017 @ 15:40:
Waar wil je wat opzetten? Op de as (koppelstuk met as)? Op de draden (spanning)? Wat wil je ermee doen?

Beetje onduidelijk .... :?
Op de As inderdaad. Ja, kan het ook niet uitleggen; ik zoek dus een montage manier voor op de as.

Is er geen universele naam voor die aansluiting?

xzaz wijzigde deze reactie 24-04-2017 15:54 (7%)

Schiet tussen de palen en je scoort!


  • Maasluip
  • Registratie: april 2002
  • Laatst online: 18:24

Maasluip

Frontpage Admin

Kabbelend watertje

Flens?

Dat slof sigaretten met de pak melk - D/T-regels
Open Source landkaart


  • RobV
  • Registratie: juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
quote:
xzaz schreef op maandag 24 april 2017 @ 15:29:
Ik ben aan het prutsen met zo'n motor:
[afbeelding]
Nu ben ik eigenlijk benieuwd, hoe zet je hier iets op? Dus op de motor, kan niet echt lekker op googlen. Kan je die dingen gewoon halen bij de bouwmarkt? Met andere woorden; hoe heet het gene wat op de motor geplaatst kan worden zodat je er mee kan werken? Of moet je dat zelf maken?
Ga eens langs bij een RC winkel of modelbouwzaak, die hebben dat soort spul en bovendien kun je de mensen daar lekker uithoren :P

 | Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72


  • ehtweak
  • Registratie: juli 2002
  • Niet online

ehtweak

ICT opruimer

Gewoon; askoppelstuk.
En die zijn verkrijgbaar in allerlei uitvoeringen en maten;
flexibel versus star, gelijkwaardige as diameters aan beide zijden en verschillende as diameters.
De keuze is reuze. ;)


MacroRailProj2-StepperMotor1 by Erik Haak, on Flickr
5/8 mm flexibele askoppeling, gemonteerd op een stappenmotor

Dit is een flens:

MacroRailProj2-BearingFlange by Erik Haak, on Flickr

eBay, AE, BG, etc. staat er vol mee! ;)

   Mooie Plaatjes   


  • xzaz
  • Registratie: augustus 2005
  • Laatst online: 24-06 13:41
quote:
ehtweak schreef op maandag 24 april 2017 @ 16:26:
Gewoon; askoppelstuk.
En die zijn verkrijgbaar in allerlei uitvoeringen en maten;
flexibel versus star, gelijkwaardige as diameters aan beide zijden en verschillende as diameters.
De keuze is reuze. ;)

[afbeelding]
MacroRailProj2-StepperMotor1 by Erik Haak, on Flickr
5/8 mm flexibele askoppeling, gemonteerd op een stappenmotor

Dit is een flens:
[afbeelding]
MacroRailProj2-BearingFlange by Erik Haak, on Flickr

eBay, AE, BG, etc. staat er vol mee! ;)
Bedankt, die kwam ik inderdaad tegen maar is dat niet voor een ronde? Ik heb zo'n halve aan beide zijden.
quote:
RobV schreef op maandag 24 april 2017 @ 16:26:
[...]

Ga eens langs bij een RC winkel of modelbouwzaak, die hebben dat soort spul en bovendien kun je de mensen daar lekker uithoren :P
Ah, ik ga eens kijken. Bedankt.

Schiet tussen de palen en je scoort!


Acties:
  • +1Henk 'm!

  • Piepersnijder
  • Registratie: december 2009
  • Laatst online: 09-05 07:22
Is een digitale potmeter niet eenvoudiger?

  • BladeSlayer1000
  • Registratie: april 2013
  • Laatst online: 19-07 22:08
quote:
RobV schreef op maandag 24 april 2017 @ 16:26:
[...]

Ga eens langs bij een RC winkel of modelbouwzaak, die hebben dat soort spul en bovendien kun je de mensen daar lekker uithoren :P
Haha doet mij altijd herinneren aan een oude RC winkel bij ons in de stad :P

Lang trouwens niet meer gezien @RobV hoe gaat het?

  • RobV
  • Registratie: juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
quote:
BladeSlayer1000 schreef op maandag 24 april 2017 @ 17:55:
Lang trouwens niet meer gezien @RobV hoe gaat het?
Gezondheid gaat achteruit, maar ik lees nog elke dag mee op het Elite Dangerous forum. Qua electronica ligt alles redelijk plat.

 | Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72


Acties:
  • +1Henk 'm!

  • BladeSlayer1000
  • Registratie: april 2013
  • Laatst online: 19-07 22:08
quote:
RobV schreef op maandag 24 april 2017 @ 20:27:
[...]

Gezondheid gaat achteruit, maar ik lees nog elke dag mee op het Elite Dangerous forum. Qua electronica ligt alles redelijk plat.
Zeer balen! Hopen dat het gauw vooruit gaat. Succes ermee.

  • Snuffelke
  • Registratie: juli 2014
  • Laatst online: 16-07 02:02
quote:
barrymossel schreef op dinsdag 15 maart 2016 @ 07:50:
[...]
Snuffelke schreef op zondag 13 maart 2016 @ 17:22:
Ik zou graag voor gebruik in domoticz hier een status update aan toevoegen (AAN en UIT) via een vaste URL
vb
code:
1
http://x.x.x.x:8080/json.htm?type=command&param=udevice&idx=35&nvalue=1&svalue=20)

Hoe kan ik dit aan onderstaande code toevoegen, ik heb er geen flauw idee van en alles wat ik probeer lukt niet.

Ik heb meerdere digitale ingangen/switches hier 1 als voorbeeld.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
#include <SPI.h>
#include <Ethernet.h>

// MAC address from Ethernet shield sticker under board
byte mac[] = { 0xxx, 0xxx, 0xxx, 0xxx, 0xxx, 0xxx };
IPAddress ip(x, x, x, x); // IP address, may need to change depending on network
EthernetServer server(80);  // create a server at port 80

String HTTP_req;            // stores the HTTP request

void setup()
{
    Ethernet.begin(mac, ip);  // initialize Ethernet device
    server.begin();           // start to listen for clients
    Serial.begin(9600);       // for diagnostics
    pinMode(2, INPUT);        // switch is attached to Arduino pin 2

  }

void loop()
{
    EthernetClient client = server.available();  // try to get client
    
    if (client) {  // got client?
        boolean currentLineIsBlank = true;
        while (client.connected()) {
            if (client.available()) {   // client data available to read
                char c = client.read(); // read 1 byte (character) from client
                HTTP_req += c;  // save the HTTP request 1 char at a time
                // last line of client request is blank and ends with \n
                // respond to client only after last line received
                if (c == '\n' && currentLineIsBlank) {
                    // send a standard http response header
                    client.println("HTTP/1.1 200 OK");
                    client.println("Content-Type: text/html");
                    client.println("Connection: keep-alive");
                    client.println();
                    // AJAX request for switch state
                    if (HTTP_req.indexOf("ajax_switch") > -1) {
                        // read switch state and send appropriate paragraph text
                        GetSwitchState(client);
                    }
                    else {  // HTTP request for web page
                        // send web page - contains JavaScript with AJAX calls
                        client.println("<!DOCTYPE html>");
                        client.println("<html>");
                        client.println("<head>");
                        client.println("<title>Arduino Web Page</title>");
                        client.println("<script>");
                        client.println("function GetSwitchState() {");
                        client.println("nocache = \"&nocache=\"\
                                                         + Math.random() * 1000000;");
                        client.println("var request = new XMLHttpRequest();");
                        client.println("request.onreadystatechange = function() {");
                        client.println("if (this.readyState == 4) {");
                        client.println("if (this.status == 200) {");
                        client.println("if (this.responseText != null) {");
                        client.println("document.getElementById(\"switch_txt\")\
.innerHTML = this.responseText;");
                        client.println("}}}}");
                        client.println("request.open(\"GET\", \"ajax_switch\" + nocache, true);");
                        client.println("request.send(null);");
                        client.println("setTimeout('GetSwitchState()', 1000);");
                        client.println("}");
                        client.println("</script>");
                        client.println("</head>");
                        client.println("<body onload=\"GetSwitchState()\">");
                        client.println("<p id=\"switch_txt\">Switch state: Not requested...</p>");
                        client.println("</body>");
                        client.println("</html>");
                    }
                    // display received HTTP request on serial port
                    Serial.print(HTTP_req);
                    HTTP_req = "";            // finished with request, empty string
                    break;
                }
                // every line of text received from the client ends with \r\n
                if (c == '\n') {
                    // last character on line of received text
                    // starting new line with next character read
                    currentLineIsBlank = true;
                } 
                else if (c != '\r') {
                    // a text character was received from client
                    currentLineIsBlank = false;
                }
            } // end if (client.available())
        } // end while (client.connected())
        delay(1);      // give the web browser time to receive the data
        client.stop(); // close the connection
    } // end if (client)
}

// send the state of the switch to the web browser
void GetSwitchState(EthernetClient cl)

{
   if (digitalRead(2)) {
        cl.println("<test: AAN");
    }
    else {
        cl.println("test: UIT");  
    }
 }

Zoiets??
code:
1
2
3
4
5
6
7
8
9
10
11
12
  if (client.connect(server, 8080)) {
    Serial.println("connected");
    // Make a HTTP request:
    client.println("GET /json.htm?type=command&param=udevice&idx=35&nvalue=1&svalue=20 HTTP/1.1");
    client.println("Host: x.x.x.x");
    client.println("Connection: close");
    client.println();
  } else {
    // if you didn't get a connection to the server:
    Serial.println("connection failed");
  }
}

Ik heb dit proberen toe te voegen / aanpassen maar ik krijg het niet aan de praat, moet ik die ajax code dan compleet verwijderen? Hoe doe ik het dan met meerdere inputs? Hoe weet het met deze code of de value aan of uit is? Veel vragen ik weet het, maar als ik dit aan de praat krijg dat zou top zijn, zoek al lang naar een mogelijke oplossing. _/-\o_ Alle oplossingen zijn via esp en wifi en ik heb toch liever kabel.

Acties:
  • +1Henk 'm!

  • DurkVell
  • Registratie: augustus 2011
  • Laatst online: 19-07 08:15
quote:
RobV schreef op maandag 24 april 2017 @ 20:27:
[...]

Gezondheid gaat achteruit, maar ik lees nog elke dag mee op het Elite Dangerous forum. Qua electronica ligt alles redelijk plat.
Sterkte Rob!

Acties:
  • 0Henk 'm!

  • Yukkie
  • Registratie: januari 2001
  • Laatst online: 15:22

Yukkie

Vorsprung Durch Technik

Ik heb mijn Arduino hobby weer opgepakt en heb wat onderdelen besteld om een robotje te bouwen.
Nou zit ik even met de voeding te stoeien. Ik heb een Arduino Uno, een L293D motor shield en een 4WD chassis. Daar komt nog een hc-sr04 met servo bij en mogelijk een BT module. Bij het chassis zit een 4 AA batterij houder. Ik vraag me af of dat genoeg is om alles van stroom te voorzien. Ik heb al zitten zoeken, maar ik kom bijna alleen configuraties tegen met 2 motoren. Ik zie ook mensen die een (of twee) 9V blokken gebruiken, Dat zou mooi uitkomen, want die heb ik liggen. Maar ik lees dan ook weer dat op de site van Adafruit dat je geen 9V batterij hoeft te proberen, want dat zou niet werken :? Maar waarom werken 4 penlites dan wel? Kan iemand mij de goede kant op sturen?

We've got that ring of confidence Tent!


Acties:
  • 0Henk 'm!

  • IWriteCode
  • Registratie: juli 2000
  • Laatst online: 20-07 07:49

IWriteCode

Less = more

quote:
Yukkie schreef op dinsdag 9 mei 2017 @ 16:29:
Ik heb mijn Arduino hobby weer opgepakt en heb wat onderdelen besteld om een robotje te bouwen.
Nou zit ik even met de voeding te stoeien. Ik heb een Arduino Uno, een L293D motor shield en een 4WD chassis. Daar komt nog een hc-sr04 met servo bij en mogelijk een BT module. Bij het chassis zit een 4 AA batterij houder. Ik vraag me af of dat genoeg is om alles van stroom te voorzien. Ik heb al zitten zoeken, maar ik kom bijna alleen configuraties tegen met 2 motoren. Ik zie ook mensen die een (of twee) 9V blokken gebruiken, Dat zou mooi uitkomen, want die heb ik liggen. Maar ik lees dan ook weer dat op de site van Adafruit dat je geen 9V batterij hoeft te proberen, want dat zou niet werken :? Maar waarom werken 4 penlites dan wel? Kan iemand mij de goede kant op sturen?
Het heeft er waarschijnlijk mee te maken dat penlites veel meer stroom kunnen leveren dan 9v batterijen...

Een heel goede 9V batterij levert max 150ma... en zo'n 2500 ma voor een penlite...

Less = more


  • Yukkie
  • Registratie: januari 2001
  • Laatst online: 15:22

Yukkie

Vorsprung Durch Technik

ah, vandaar. Zijn dat vaste gegevens? ik dacht dat dat per type/producent verschilde? Ik moet mijn kennis over batterijen, stroom, spanning, etc. sowieso weer eens opvijzelen, ik merk dat het hier en daar een beetje roestig is. Als ik de arduino met een 9v blok voed en het motorshield met 4 penlights, dan moet dat voldoende zijn toch?

We've got that ring of confidence Tent!

Waarom zou je dan niet álles voeden met die AA batterijen?

En ja het verschilt wel per batterij, de ene 9V batterij zal misschien 80mA kunnen leveren en de andere 120, maar het gaat nooit een ampère worden.
Een 9v batterij is gewoon 6 mini-batterijtjes (volgens mij ook wel AAAA genoemd) bij elkaar gepakt in een behuizing. Je kunt dus op je vingers natellen dat dat nooit even veel stroom kan leveren als een AA batterij.

zcflevo.nl


  • jobr
  • Registratie: januari 2009
  • Laatst online: 20-07 20:13
Misschien kun je ook een 5V USB batterypack gebruiken. Heb je ook genoeg power en makkelijk oplaadbaar. Bij Action liggen we wel een paar kleine.

  • Yukkie
  • Registratie: januari 2001
  • Laatst online: 15:22

Yukkie

Vorsprung Durch Technik

Hmm, dat laatste, daar had ik nog niet eens aan gedacht. Is ook makkelijker op te laden. Ik zou dan wel een USB-kabeltje modden, want volgens mij wordt het motorshield niet gevoed vanuit de Arduino.

Alles voeden met AA kan ook, maar raken die batterijen dan niet supersnel leeg?

We've got that ring of confidence Tent!

quote:
Yukkie schreef op donderdag 11 mei 2017 @ 16:37:
Hmm, dat laatste, daar had ik nog niet eens aan gedacht. Is ook makkelijker op te laden. Ik zou dan wel een USB-kabeltje modden, want volgens mij wordt het motorshield niet gevoed vanuit de Arduino.
kwestie van een 5v pin doorverbinden lijkt me? Of heeft dat shield meer dan 5V nodig?
quote:
Alles voeden met AA kan ook, maar raken die batterijen dan niet supersnel leeg?
Das een kwestie van meer of grotere batterijen gebruiken. Maar die paar mA die de Arduino zelf trekt zullen weinig impact hebben op het totaal als je 4 motoren aanstuurt.
Het is wel aan te raden schakelende voeding te gebruiken ipv de lineaire die op de Arduino zelf zit. In een usb-powerbank zit al zo'n ding, maar je kunt ook voor een paar cent zo'n lm2956 module bestellen bij de bezorgchinees.

zcflevo.nl


Acties:
  • 0Henk 'm!

  • Valen_76
  • Registratie: oktober 2009
  • Laatst online: 03-07 23:46
4 Alkaline batterijen komen uit op ongeveer 6 volt. Oplaadbare batterijen op ongeveer 4,8. Met alkalines heb je dus genoeg voor een low-drop spanningsregelaar naar 5 volt, maar oplaadbare niet. Dan moet je zorgen dat de microcontroller en andere hardware op 3,3 volt functioneert. De motor voeding ingang van de LM293D, of de voedingspanning van de servo, kan direct aan de batterijen gehangen worden. Daar wil je liefst zo veel mogelijk spanning hebben voor voldoende koppel op de as.

Met 4,8 volt 4x AA oplaadbare zou je de microcontroller ook zonder spanningsregelaar kunnen voeden, Maar dan zullen de motoren en servo flinke spanningsvallen veroorzaken als deze geactiveerd worden. Met mogelijk reset van verschillende chips tot gevolg. En behoorlijke elektrische ruis voor de analoge signalen.

Acties:
  • 0Henk 'm!
alkalines leveren afhankelijk van hoe vol ze zijn, tussen de 1,1 en 1,8V.
Persoonlijk zou ik gewoon 8 cellen in serie zetten als ik voor alkalines zou gaan. Maar serieus waarom zou je? Lithium is zo veel praktischer.

zcflevo.nl


  • MsG
  • Registratie: november 2007
  • Laatst online: 17:53

MsG

Forumzwerver

Mensen ervaring met behuizingen voor de Arduino Mega?

Ik heb een CH340 variant, die overal wordt uitgesloten voor de standaard acryl-case die je op Ali en consorten ziet. Ik zoek eigenlijk iets goedkoop, maar wat wel zeker weten gaat passen.

Alternatief is een 3D-print.

Denk om uw spatiegebruik. Dit scheelt Tweakers.net kostbare databaseruimte!


  • Stijnb_
  • Registratie: oktober 2009
  • Laatst online: 20-07 21:55
Hoe voeden jullie je arduino in een project? Ik zou graag badgelezers maken met arduinos. Nu had ik gedacht meestal in een huis automatisering zijn de voedingen 24v of 12v alleen werkt een arduino op 5v. Nu heb ik geen goesting om een kleine gsm oplader ik mijn badgelezers te verwerken. En een 5v voeding in de centrale kast zal ook niet werken. Doormiddel van spannings val zal ik geen 5v meer overhouden aan mijn arduino. Iemand ideeen hoe je dit oplost.

  • tsjoender
  • Registratie: april 2005
  • Laatst online: 13:51
quote:
Stijnb_ schreef op donderdag 15 juni 2017 @ 22:08:
Hoe voeden jullie je arduino in een project? Ik zou graag badgelezers maken met arduinos. Nu had ik gedacht meestal in een huis automatisering zijn de voedingen 24v of 12v alleen werkt een arduino op 5v. Nu heb ik geen goesting om een kleine gsm oplader ik mijn badgelezers te verwerken. En een 5v voeding in de centrale kast zal ook niet werken. Doormiddel van spannings val zal ik geen 5v meer overhouden aan mijn arduino. Iemand ideeen hoe je dit oplost.
Als je toch al 12 of 24V DC aan kan bieden bij de Arduino, dan kun je daar wel weer 5V van maken met een DC-DC step down converter (bijvoorbeeld gebaseerd op een LM2596). Op Aliexpress heb je daar kant en klare printjes voor met een potmetertje waar je in kan stellen welke spanning op de uitgang komt. Zoek daar maar eens op "LM2695" of op "dc dc step down".

  • Yucon
  • Registratie: december 2000
  • Laatst online: 11:07

Yucon

*broem*

quote:
Stijnb_ schreef op donderdag 15 juni 2017 @ 22:08:
Hoe voeden jullie je arduino in een project? Ik zou graag badgelezers maken met arduinos. Nu had ik gedacht meestal in een huis automatisering zijn de voedingen 24v of 12v alleen werkt een arduino op 5v. Nu heb ik geen goesting om een kleine gsm oplader ik mijn badgelezers te verwerken. En een 5v voeding in de centrale kast zal ook niet werken. Doormiddel van spannings val zal ik geen 5v meer overhouden aan mijn arduino. Iemand ideeen hoe je dit oplost.
Op ebay staan HLK-PM01 5v voedingblokjes en die werken goed. Ik heb ze ook wel eens op een site langs zien komen waar ze uit elkaar gehaald en beoordeeld op kwaliteit werden en daar was men van mening dat het veilig spul was. al kun je natuurlijk altijd slechte namaak krijgen

  • Lennyz
  • Registratie: januari 2010
  • Laatst online: 11:12
quote:
Stijnb_ schreef op donderdag 15 juni 2017 @ 22:08:
Hoe voeden jullie je arduino in een project? Ik zou graag badgelezers maken met arduinos. Nu had ik gedacht meestal in een huis automatisering zijn de voedingen 24v of 12v alleen werkt een arduino op 5v. Nu heb ik geen goesting om een kleine gsm oplader ik mijn badgelezers te verwerken. En een 5v voeding in de centrale kast zal ook niet werken. Doormiddel van spannings val zal ik geen 5v meer overhouden aan mijn arduino. Iemand ideeen hoe je dit oplost.
Je kunt gewoon de Arduino rechtstreeks voeden met 12v via de dc jacket. Dan zal de AMS1117 alleen iets heter worden. Je hebt dus geen extra onderdelen nodig. 12v is prima binnen de specificaties.

  • SuperKris
  • Registratie: juni 2010
  • Laatst online: 15:14
HLK-PM01 zijn inderdaad top. Ik gebruik die, of een USB voeding. Vanwege het energiegebruik pas ik eigenlijk nooit een lineaire spanningsregelaar toe.

Wanneer een hogere spanning DC spanning al aanwezig aan, gooi ik er een cheap as step down bordje van aliexpress bij.

  • Camacha
  • Registratie: april 2006
  • Laatst online: 03-07-2017

Camacha

Herder of bits.

quote:
Stijnb_ schreef op donderdag 15 juni 2017 @ 22:08:
Hoe voeden jullie je arduino in een project? Ik zou graag badgelezers maken met arduinos. Nu had ik gedacht meestal in een huis automatisering zijn de voedingen 24v of 12v alleen werkt een arduino op 5v. Nu heb ik geen goesting om een kleine gsm oplader ik mijn badgelezers te verwerken. En een 5v voeding in de centrale kast zal ook niet werken. Doormiddel van spannings val zal ik geen 5v meer overhouden aan mijn arduino. Iemand ideeen hoe je dit oplost.
Ikea heeft laders voor een paar euro die, als ik de reviews mag geloven, erg goed in elkaar zitten. Geen gerommel met dubieus spul op 230V en voor minder dan een tientje ben je klaar.

Persuader of bytes.


  • ehtweak
  • Registratie: juli 2002
  • Niet online

ehtweak

ICT opruimer

Ik haal simpele stekervoedingen altijd bij de lokale kringloop.
Heel assortiment. 12V, 5V, 9V, en allerlei exotische waarden daartussen. Hooguit een keer een ander stekertje aan zetten.

Alles voor 1 euro! d:)b

Maar als ik uiteindelijk de boel heb ingebouwd en ik een dikke(re) voeding nodig had om een steppermotor aan te sturen, gebruik ik meestal van die Dell laptop voedingen (19V, enkele amps).
Zoals hier:
[DIY] Arduino gestuurde focusrail #2
en voor de Arduino gebruik ik dan toch een 7805 om een nette 5V te leveren.
Uiteraard niet handig als je afhankelijk bent van batterijvoeding. Maar vele onderdelen, zoals 78xx-en en aanverwante onderdeeltjes heb ik toch in ruime mate op voorraad. Dus die gebruik ik dan ook.

ehtweak wijzigde deze reactie 16-06-2017 10:32 (56%)

   Mooie Plaatjes   


  • Raven
  • Registratie: november 2004
  • Niet online

Raven

Marion Raven fan

quote:
ehtweak schreef op vrijdag 16 juni 2017 @ 10:22:
Ik haal simpele stekervoedingen altijd bij de lokale kringloop.
Heel assortiment. 12V, 5V, 9V, en allerlei exotische waarden daartussen. Hooguit een keer een ander stekertje aan zetten.

Alles voor 1 euro! d:)b
Gewoon snuffelen bij de mobiele telefoon laders, daar zit altijd wat tussen. Ik bewaar die dingen altijd, je weet nooit waar ze goed voor zijn :P
quote:
ehtweak schreef op vrijdag 16 juni 2017 @ 10:22:
en voor de Arduino gebruik ik dan toch een 7805 om een nette 5V te leveren.
Daar heb ik LM317LZ's en de wat zwaardere LM317T's en anders LM2940CT-5.0's voor :)

After the first glass you see things as you wish they were. After the second you see things as they are not. Finally you see things as they really are, and that is the most horrible thing in the world...

Oscar Wilde


  • ehtweak
  • Registratie: juli 2002
  • Niet online

ehtweak

ICT opruimer

Ik weet niet of het al bekend is/was, maar voor mij was het nieuw.
Een kunststof mounting bracket voor een Arduino Uno 3. (verkrijgbaar in diverse kleuren).

Heb er twee besteld (via eBay, uit Schotland). En het past keurig/strak rond een Arduino. Vind het wel handig, zeker zo lang je aan het testen/klooien bent. Dan is 'ie tenminste redelijk beschermd tegen kortsluitende schroefjes en soldeerklodders op je werkblad. >:)




Het is goed stevig materiaal. Absoluut geen waaibomenplastiek. ;)

Zoektermen op eBay: "mounting bracket Arduino Uno"

   Mooie Plaatjes   


Acties:
  • 0Henk 'm!

  • Lennyz
  • Registratie: januari 2010
  • Laatst online: 11:12
Mijn voltage regulator is fried. Ik heb de Arduino maanden op 12v gevoed en nu is dit onderdeel doorgebrand. Ik wil deze dus vervangen.

Heeft iemand nog tips voor welk onderdeel ik kan gaan in plaats van de AMS1117 die er nu standaard op zit? Of is dat helemaal niet zinvol?

Acties:
  • 0Henk 'm!

  • BoAC
  • Registratie: februari 2003
  • Laatst online: 17:15

BoAC

Memento mori

quote:
Lennyz schreef op vrijdag 7 juli 2017 @ 11:49:
Mijn voltage regulator is fried. Ik heb de Arduino maanden op 12v gevoed en nu is dit onderdeel doorgebrand. Ik wil deze dus vervangen.

Heeft iemand nog tips voor welk onderdeel ik kan gaan in plaats van de AMS1117 die er nu standaard op zit? Of is dat helemaal niet zinvol?
Ik zou gewoon dezelfde erop zetten wat minder dan 12V op zetten :)
Je kan er natuurlijk een spanningsdeler voor zetten als je weet hoeveel vermogen er opgeslorpt wordt.

Acties:
  • 0Henk 'm!
Laatste keer dat ik de voltage regulator opblies, was de rest van de arduino ook dood. Zou dus eerst ff kijken of 'ie überhaupt nog werkt. En ja je kunt de AMS1117 vervangen (dingen zijn een paar cent op ebay) maar waarom zou je überhaupt de onboard voltage regulator willen gebruiken? Klaarblijkelijk heb je 'm sowieso te zwaar belast.

zcflevo.nl


Acties:
  • +1Henk 'm!

  • LED-Maniak
  • Registratie: oktober 2003
  • Laatst online: 18:46

LED-Maniak

Bakkers klaar? Bakken maar!

quote:
Lennyz schreef op vrijdag 7 juli 2017 @ 11:49:
Mijn voltage regulator is fried. Ik heb de Arduino maanden op 12v gevoed en nu is dit onderdeel doorgebrand. Ik wil deze dus vervangen.

Heeft iemand nog tips voor welk onderdeel ik kan gaan in plaats van de AMS1117 die er nu standaard op zit? Of is dat helemaal niet zinvol?
Vervangen door iets anders heeft nauwelijks zin. Zo'n lineaire regelaar zal alles wat teveel is(12-5V * stroom) moeten wegwerken door middel van hitte.

Dan kan je verschillende dingen doen:
1. voor betere koeling zorgen
2. ingangsspanning verlagen
3. belasting ná de regelaar verlagen(minder stroom = minder warmte)
4. schakelende regelaar plaatsen, is iets efficienter.

LED-Maniak wijzigde deze reactie 07-07-2017 14:03 (3%)

Appeltaart is lekker!


Acties:
  • 0Henk 'm!

  • Lennyz
  • Registratie: januari 2010
  • Laatst online: 11:12
quote:
BoAC schreef op vrijdag 7 juli 2017 @ 13:45:
[...]

Ik zou gewoon dezelfde erop zetten wat minder dan 12V op zetten :)
Je kan er natuurlijk een spanningsdeler voor zetten als je weet hoeveel vermogen er opgeslorpt wordt.
Ja ik denk dat ik er inderdaad een iets lagere voltage op ga zetten.
quote:
mcDavid schreef op vrijdag 7 juli 2017 @ 13:51:
Laatste keer dat ik de voltage regulator opblies, was de rest van de arduino ook dood. Zou dus eerst ff kijken of 'ie überhaupt nog werkt. En ja je kunt de AMS1117 vervangen (dingen zijn een paar cent op ebay) maar waarom zou je überhaupt de onboard voltage regulator willen gebruiken? Klaarblijkelijk heb je 'm sowieso te zwaar belast.
Hij werkt nog prima. Via USB geen enkel probleem. Volgens mijn berekening zou hetgeen ik er mee doe prima moeten kunnen. De 12v is voeding is ruim binnen de specificaties van de voltage regulator. De code die ik erop uitvoer is zo afgesteld dat nooit alle onderdelen te gelijk aan komen te staan.

Nu ik er over nadenk kan een mogelijke oorzaak zijn dat de Mega boven het systeemplafond hangt en het daar met volle zon op het dak de omgevingstemperatuur wel eens tot 40 graden kan oplopen. In combinatie me de hoeveelheid warmte die de voltage regulator moet afvoeren > ruim 6 volt.
quote:
LED-Maniak schreef op vrijdag 7 juli 2017 @ 14:00:
[...]

Vervangen door iets anders heeft nauwelijks zin. Zo'n lineaire regelaar zal alles wat teveel is(12-5V * stroom) moeten wegwerken door middel van hitte.

Dan kan je verschillende dingen doen:
1. voor betere koeling zorgen
2. ingangsspanning verlagen
3. belasting ná de regelaar verlagen(minder stroom = minder warmte)
Ok duidelijk, dan bestel ik gewoon hetzelfde onderdeel.

Acties:
  • 0Henk 'm!
De voornaamste vraag is: Waarom voed je hem met 12 volt? Dat is gewoon zonde.

En ja de belasting die zo'n lineaire regelaar kan hebben is een optelsom van spanningsval, vermogen en koeling. Met 7 V spanningsval kun je maximaal nog zo'n 70 mA 150mA verbruiken voordat je in gevaar komt. Dat is écht heel weinig. 4 8 normale LED's en je zit er al aan.

mcDavid wijzigde deze reactie 07-07-2017 15:15 (3%)

zcflevo.nl


Acties:
  • 0Henk 'm!

  • Lennyz
  • Registratie: januari 2010
  • Laatst online: 11:12
quote:
mcDavid schreef op vrijdag 7 juli 2017 @ 14:26:
De voornaamste vraag is: Waarom voed je hem met 12 volt? Dat is gewoon zonde.

En ja de belasting die zo'n lineaire regelaar kan hebben is een optelsom van spanningsval, vermogen en koeling. Met 7 V spanningsval kun je maximaal nog zo'n 70 mA verbruiken voordat je in gevaar komt. Dat is écht heel weinig. 4 normale LED's en je zit er al aan.
De reden dat ik hem voed met 12v is omdat ik niet beter wist. Er staat op de Arduino website dat tussen de 7-12v recommended is. Daaruit lijd ik niet af dat hoe hoger het voltage, hoe minder ik kan verbruiken. Weer iets geleerd :)

Is dan 7v het beste in dit geval? 5v kan ook via de USB poort, maar daar zit een limiet op van max 500ma.

Acties:
  • +1Henk 'm!

  • BoAC
  • Registratie: februari 2003
  • Laatst online: 17:15

BoAC

Memento mori

7 is idd beter omdat dan 2 volt * gebruikte ampere verstookt moet worden :)
De 2 volt extra heeft de regulator nodig om optimaal te kunnen werken.
Wanneer je exact 5V (bijvoorbeeld apple lader) kunt krijgen kun je de regulator bypassen :)

Acties:
  • +1Henk 'm!
quote:
Lennyz schreef op vrijdag 7 juli 2017 @ 14:39:
[...]


De reden dat ik hem voed met 12v is omdat ik niet beter wist. Er staat op de Arduino website dat tussen de 7-12v recommended is. Daaruit lijd ik niet af dat hoe hoger het voltage, hoe minder ik kan verbruiken. Weer iets geleerd :)

Is dan 7v het beste in dit geval? 5v kan ook via de USB poort, maar daar zit een limiet op van max 500ma.
Je moet er vanuit gaan dat zo'n ding ongeveer 1 watt kan verstoken. Met 7V heb je een spanningsval van 2V en dus ook grofweg 500mA. Met een hogere voedingsspanning wordt dat lineair minder. Dus ja, als je bang bent dat je USB-poort niet genoeg stroom kan leveren hoef je de onboard regulator eigenlijk al helemáál niet te proberen.

Eigenlijk moet je sowieso de boel gewoon extern voeden als je meer dan 500mA nodig hebt.

rekende mijn vorige post met 0,5W, dat is wat overdreven, dus je kunt bij 12V zo'n 150 mA verbruiken

zcflevo.nl


  • Niekess
  • Registratie: mei 2012
  • Laatst online: 24-01 12:06
Hey allemaal!

Een goede kennis van mij en mijzelf zijn van plan om aan de slag te gaan met Arduino, we moeten er alleen nog 1 kopen. Nu heb ik zelf al even wat gezocht en kwam ik verschillende starter kits tegen alleen weet ik niet zeker wat een goede is / nodig heeft.

Hebben jullie suggesties?

  • juiced01
  • Registratie: december 2009
  • Laatst online: 12:51
Ik wil graag een stappenmotor gebruiken. Ik heb de (NEMA17) 42BYGHW609 stappenmotor, een Stepstick DRV8825 stappenmotordriver, een 12V voeding (10A max) tafelmodel en een Arduino (zowel Mega 2560 en UNO 3 geprobeerd).

Ik heb het geheel aangesloten zoals aangegeven op onderstaande afbeelding (van internet geleend, niet van mijzelf). De kleuren van mijn motor kabels, aangesloten op het bordje zijn vlnr: blauw (2B), groen (1B), zwart (1A), rood (2A).



Direction pin is in mijn geval: 3, de step pin is 4.

[edit]
En SLEEP en RESET zijn met elkaar verbonden.

Er gebeurt, als ik de software laad op de Arduino, en de voeding aanzet, helemaal niks. De motor geeft ook geen geluid of iets dergelijks. Er gebeurt niks. In de code hieronder zie je dat de LED (13) aan en uit moet gaan, dat gebeurt wel.

Ik heb de VREF gemeten op het bordje met mijn multimeter, die is +/- 0.9v.

Wie kan me op weg helpen? Hebben jullie een idee?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
byte directionPin = 3;
byte stepPin = 4;
int numberOfSteps = 100;
byte ledPin = 13;
int pulseWidthMicros = 20;  // microseconds
int millisbetweenSteps = 250; // milliseconds - or try 1000 for slower steps

void setup() {
  Serial.begin(9600);
  Serial.println("Starting StepperTest");
  digitalWrite(ledPin, LOW);
  
  delay(2000);

  pinMode(directionPin, OUTPUT);
  pinMode(stepPin, OUTPUT);
  pinMode(ledPin, OUTPUT);
  
 
  digitalWrite(directionPin, HIGH);
  for(int n = 0; n < numberOfSteps; n++) {
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(pulseWidthMicros); // this line is probably unnecessary
    digitalWrite(stepPin, LOW);
    
    delay(millisbetweenSteps);
    
    digitalWrite(ledPin, !digitalRead(ledPin));
  }
  
  delay(3000);
   

  digitalWrite(directionPin, LOW);
  for(int n = 0; n < numberOfSteps; n++) {
    digitalWrite(stepPin, HIGH);
    digitalWrite(stepPin, LOW);
    
    delay(millisbetweenSteps);
    
    digitalWrite(ledPin, !digitalRead(ledPin));
  }
}

void loop() {
}

ASRock B85MPro4, Intel i5 4590, Scythe Mugen 4 PCGH, 16GB DDR3, Club3D 290 royalAce, 2x Seagate 2TB (RAID0), 2x Crucial MX100 256GB, Seasonic G550, FractalDesign R5, 2x Dell U2412M, ESIO nEar05, Focusrite 2i2, Logitech G810 & G403, Steelseries Arctis 5


  • Lennyz
  • Registratie: januari 2010
  • Laatst online: 11:12
quote:
Niekess schreef op dinsdag 11 juli 2017 @ 12:09:
Hey allemaal!

Een goede kennis van mij en mijzelf zijn van plan om aan de slag te gaan met Arduino, we moeten er alleen nog 1 kopen. Nu heb ik zelf al even wat gezocht en kwam ik verschillende starter kits tegen alleen weet ik niet zeker wat een goede is / nodig heeft.

Hebben jullie suggesties?
Het maakt niet uit welke je neemt. Kies gewoon een willekeurige en ga van daaruit verder bouwen. De basis is bij alle kits zo ongeveer hetzelfde.
quote:
juiced01 schreef op dinsdag 11 juli 2017 @ 23:34:

Wie kan me op weg helpen? Hebben jullie een idee?
Probeer eens:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
byte directionPin = 3;
byte stepPin = 4;
int numberOfSteps = 100;
byte ledPin = 13;
int pulseWidthMicros = 20;  // microseconds
int millisbetweenSteps = 250; // milliseconds - or try 1000 for slower steps

void setup() {
  Serial.begin(9600);
  Serial.println("Starting StepperTest");

  pinMode(directionPin, OUTPUT);
  pinMode(stepPin, OUTPUT);
  pinMode(ledPin, OUTPUT);
  
  digitalWrite(ledPin, LOW);
 

}
void loop() {
      digitalWrite(directionPin, HIGH);
  for(int n = 0; n < numberOfSteps; n++) {
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(pulseWidthMicros); // this line is probably unnecessary
    digitalWrite(stepPin, LOW);
    
    delay(millisbetweenSteps);
    
    digitalWrite(ledPin, !digitalRead(ledPin));
  }
  
  delay(3000);
   

  digitalWrite(directionPin, LOW);
  for(int n = 0; n < numberOfSteps; n++) {
    digitalWrite(stepPin, HIGH);
    digitalWrite(stepPin, LOW);
    
    delay(millisbetweenSteps);
    
    digitalWrite(ledPin, !digitalRead(ledPin));
  }
}

Als je nog meer hulp wilt, dan is het handig dat je een schema post die wel overeen komt met jouw situatie. Ik kan niets met dit plaatje. Te klein en onvolledig.

  • juiced01
  • Registratie: december 2009
  • Laatst online: 12:51
quote:
Lennyz schreef op woensdag 12 juli 2017 @ 09:19:

Als je nog meer hulp wilt, dan is het handig dat je een schema post die wel overeen komt met jouw situatie. Ik kan niets met dit plaatje. Te klein en onvolledig.
Hoi Lennyz, bedankt voor het meedenken! Helaas werkt jouw aangepaste code ook niet.

Ik heb mijn situatie nagemaakt in Fritzing. Enige wat anders is, is de volgorde van de vier motor aansluitingen op het de DRV 8825. Ik heb de volgorde die ik heb gebruikt (blauw (2B), groen (1B), zwart (1A), rood (2A)) in de tekeing gezet


(klik voor groot)

ASRock B85MPro4, Intel i5 4590, Scythe Mugen 4 PCGH, 16GB DDR3, Club3D 290 royalAce, 2x Seagate 2TB (RAID0), 2x Crucial MX100 256GB, Seasonic G550, FractalDesign R5, 2x Dell U2412M, ESIO nEar05, Focusrite 2i2, Logitech G810 & G403, Steelseries Arctis 5


  • wwwFan
  • Registratie: januari 2012
  • Nu online
quote:
...
Ik heb mijn situatie nagemaakt in Fritzing. Enige wat anders is, is de volgorde van de vier motor aansluitingen op het de DRV 8825. Ik heb de volgorde die ik heb gebruikt (blauw (2B), groen (1B), zwart (1A), rood (2A)) in de tekeing gezet

[afbeelding]
(klik voor groot)
Er zitten twee fouten in het schema. je hebt nu de Fault uitgang met de 5v voeding uitgang van de Arduino verbonden. Fault is een uitgang en mag dus nooit zo verbonden worden (en je loopt het risico dat de driver hierdoor beschadigd is).
Tevens heb je de sleep en de reset aan elkaar verbonden. Dit zijn beide ingangen. Volgens de datasheet zijn deze standaard laag en dat betekend dat de chip dus standaard inactief is. Deze moeten dus wel met de 5v voeding uitgang verbonden worden. Dus de rode aansluiting van de fault aansluiting verplaatsen naar de reset en sleep ingangen (de fault aansluiting dus niet gebruiken) en dan werkt het hopelijk.

  • Delchrys
  • Registratie: juni 2006
  • Laatst online: 03-07 11:07
Hallo,
sorry voor het binnenvallen maar ik ben bezig met een werk gerelateerd projectje en kom ergens niet uit.
Heb een datalogger gemaakt welke de data van een mma8451 sensor (accelerometer) logged naar een sd kaart.
Heb hierbij gebruik gemaakt van een voorbeeld te vinden op:
https://github.com/greima...s/LowLatencyLoggerMPU6050

Laatste stukje code van de void loop()
quote:
void loop(void) {
// Read any Serial data.
do {
delay(10);
} while (Serial.available() && Serial.read() >= 0);
Serial.println();
Serial.println(F("type:"));
Serial.println(F("b - open existing bin file"));
Serial.println(F("c - convert file to csv"));
Serial.println(F("d - dump data to Serial"));
Serial.println(F("e - overrun error details"));
Serial.println(F("l - list files"));
Serial.println(F("r - record data"));
Serial.println(F("t - test without logging"));
while(!Serial.available()) {
SysCall::yield();
}
#if WDT_YIELD_TIME_MICROS
Serial.println(F("LowLatencyLogger can not run with watchdog timer"));
SysCall::halt();
#endif

char c = tolower(Serial.read());

// Discard extra Serial data.
do {
delay(10);
} while (Serial.available() && Serial.read() >= 0);

if (ERROR_LED_PIN >= 0) {
digitalWrite(ERROR_LED_PIN, LOW);
}
if (c == 'b') {
openBinFile();
} else if (c == 'c') {
binaryToCsv();
} else if (c == 'd') {
dumpData();
} else if (c == 'e') {
checkOverrun();
} else if (c == 'l') {
Serial.println(F("\nls:"));
sd.ls(&Serial, LS_SIZE);
} else if (c == 'r') {
logData();
} else if (c == 't') {
testSensor();
} else {
Serial.println(F("Invalid entry"));
}
}
Hij wacht hier op input via de seriele monitor, toetsdruk "r", om te starten met loggen.
Ik wil dit behouden, maar een extra voorwaarde eraan hangen, dat hij ook start bij drukken op een button.
Dus iets van :
quote:
if (button == LOW){
logData();
}
Maar waar ik het ook plaats ik krijg het nergens werkend behalve als de arduino opstart met de button ingedrukt, dan werkt het wel.
Dus ergens blijft hij wachten op input en moet dat zien te doorbreken met de button, maar het wil niet lukken. Daarvoor heb ik net te weinig programmeerkennis, tenminste totdat alle haakjes en do...while...loops er komen dan.

Kan iemand mij vertellen hoe ik dit het beste kan oplossen??

Vriendelijke groet,

Bert
Pagina: 1 ... 88 ... 91 Laatste


Call of Duty: Black Ops 4 HTC U12+ dual sim LG W7 Google Pixel 3 XL OnePlus 6 Battlefield V Samsung Galaxy S9 Dual Sim Google Pixel 3

Tweakers vormt samen met Tweakers Elect, Hardware.Info, Autotrack, Nationale Vacaturebank en Intermediair de Persgroep Online Services B.V. © 1998 - 2018 Hosting door True