Acties:
  • 0 Henk 'm!

Verwijderd

mad_max234 schreef op vrijdag 14 maart 2014 @ 14:39:
Ik snap het punt niet van interrupts
dat snap ik dan weer niet :D

Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Iemand maakte er punt van interrupts te gebruiken, werd zelfs andere uC en multi core bijgehaald omdat interrupts even wat cpu tijd inneemt. Was dus kwestie van topic lezen en je had het gesnapt. ;)

-Andere hobby- -


Acties:
  • 0 Henk 'm!

Verwijderd

mad_max234 schreef op vrijdag 14 maart 2014 @ 14:48:
Iemand maakte er punt van interrupts te gebruiken, werd zelfs andere uC en multi core bijgehaald omdat interrupts even wat cpu tijd inneemt. Was dus kwestie van topic lezen en je had het gesnapt. ;)
nee ik snap dit wel, alleen doe jij nu voorkomen alsof het allemaal ook prima zonder interrupts kan 'omdat de processor toch tijd over heeft'
en dat is natuurlijk onzin niet altijd een voorwaarde.. neem een simpel voorbeeld, processor slaapt en wordt alleen wakker als er aan een rotaryknop (om ontopic te blijven) gedraaid wordt.

Acties:
  • 0 Henk 'm!

  • Kheos
  • Registratie: Juni 2011
  • Laatst online: 19:03

Kheos

FP ProMod
mad_max234 schreef op vrijdag 14 maart 2014 @ 14:39:
Ik snap het punt niet van interrupts, ik ken me niet indenken dat je zoveel code hebt dat je cpu tijd bijna 100% is, want dan is je keuze voor micro eigenlijk al te krap en geen enkele ruimte voor extra code of wat dan ook, dat kan als je code hebt die helemaal doorontwikkeld is. Maar als je code nog wat moet uitbreiden omdat er toch iets niet helemaal lekker liep zit je met een probleem.

In alle gevallen dat je nog cpu tijd over heb heb je prima de tijd om extra code er doorheen te verwerken.
Is het punt niet gewoon het volgende

zonder interrupts:
Ben je High? nee
Ben je High? nee
Ben je High? nee
Ben je High? nee
Ben je High? nee
Ben je High? nee
Ben je High? nee
Ben je High? woow, ja, nu wel


en
...
...
...
woow, ik ben High

in het 1e geval ga je je CPU toch altijd 100% belasten. Meer of minder code resulteert dan in meer of minder tijd tussen 2 vragen, maar je laat je CPU wel de hele tijd werken

en in het 2e geval werkt hij enkel als het nodig is?

Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Ik snap het ook nog steeds niet. En ja ik heb het topic gelezen. Je zegt dat je het punt van interrupts niet snapt, en dan zeg je dat je interrupts gebruikt. Waarom doe je dat als je het punt van interrupts niet snapt?

Overigens soms kan je wel meer code in een interrupt doen, als je weet dat dat geen probleem gaat opleveren voor jouw specifieke oplossing. Maar over het algemeen is het het beste om slechtst beperkte hoeveelheid code in je interrupt te hebben, en als meer nodig is, dan een flag zetten die ervoor zorgt dat je main loop het gaat uitvoeren, of bijvoorbeeld een RTOS thread vraagt om rekentijd.

Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Verwijderd schreef op vrijdag 14 maart 2014 @ 14:51:
[...]


nee ik snap dit wel, alleen doe jij nu voorkomen alsof het allemaal ook prima zonder interrupts kan 'omdat de processor toch tijd over heeft'
en dat is natuurlijk onzin niet altijd een voorwaarde.. neem een simpel voorbeeld, processor slaapt en wordt alleen wakker als er aan een rotaryknop (om ontopic te blijven) gedraaid wordt.
Dat zeg ik nergens, hoe kan je dat uit mijn tekst halen. :?
Zeg echt nergens dat zonder interrupts kan omdat je cpu tijd heb, ging niet eens in op specifieke code maar sprak in algemeen over interrupts, spreek nergens over rotaryknop , je hebt cpu tijd nodig voor je interrupt. ;)

Ik had het dus over dat je het wel heel bond moet maken dat je geen cpu tijd heb voor interrupts en je moet uitwijken naar multi core of iets in die trant. Als dat het geval is is de keuze van je uC in eerste plaats al verkeerd.

Edit/
Sissors schreef op vrijdag 14 maart 2014 @ 14:52:
Ik snap het ook nog steeds niet. En ja ik heb het topic gelezen. Je zegt dat je het punt van interrupts niet snapt, en dan zeg je dat je interrupts gebruikt. Waarom doe je dat als je het punt van interrupts niet snapt?

Overigens soms kan je wel meer code in een interrupt doen, als je weet dat dat geen probleem gaat opleveren voor jouw specifieke oplossing. Maar over het algemeen is het het beste om slechtst beperkte hoeveelheid code in je interrupt te hebben, en als meer nodig is, dan een flag zetten die ervoor zorgt dat je main loop het gaat uitvoeren, of bijvoorbeeld een RTOS thread vraagt om rekentijd.
Ik snap interrupts zelf natuurlijk wel, gebruik ze al jaren en heb zelf ook de grenzen opgezocht, ben er ook overheen gegaan, en heb ook veel fouten gemaakt. Ik snap dus niet waarom er punt van werd gemaakt en er zelfs gezocht werd naar uC met multi cores en interrupt routine niet in hoofd thread uitvoert.

Sommige van jullie hebben nota bene meegedaan in de discussie en jullie kunnen de desbetreffende posts niet terug vinden op de vorige pagina. :+

[ Voor 37% gewijzigd door mad_max234 op 14-03-2014 15:14 ]

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
mad_max234 schreef op vrijdag 14 maart 2014 @ 14:48:
werd zelfs andere uC en multi core bijgehaald omdat interrupts even wat cpu tijd inneemt.
Dat was niet helemaal de reden. Ik heb die propeller, wat later een multi-core blijkt te heten, er bijgehaald omdat de oorspronkelijke vraagstelling ging ergens in de richting van : "Hoe kan ik een interrupt uitvoeren zonder invloed (of tijdverlies) op de mainloop?". Het antwoord was dus de interrupt kort en krachtig te houden. Wil er echter totaal geen mainloop onderbroken willen worden dan had je volgens mij een multi-core nodig.
Ik heb niet gezegd dat je een multicore persé nodig hebt om een encoder goed te laten uitlezen. De uno kent micros(), bij goed ontworpen sketch zou dat toch geen probleem moeten zijn om een paar klikken te tellen ?
Niet dat ik die sketch zelf even schrijf maar dat terzijde

Acties:
  • 0 Henk 'm!

Verwijderd

mad_max234 schreef op vrijdag 14 maart 2014 @ 15:00:
[...]

Ik had het dus over dat je het wel heel bond moet maken dat je geen cpu tijd heb voor interrupts en je moet uitwijken naar multi core of iets in die trant. Als dat het geval is is de keuze van je uC in eerste plaats al verkeerd.
helemaal duidelijk nu en daar heb je natuurlijk 100% gelijk in 8)

Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Kijk daar hebben we het punt. :D
"Hoe kan ik een interrupt uitvoeren zonder invloed (of tijdverlies) op de mainloop?"

Daar reageerde ik dus op, even zonder dollen ik had niet door dat zo verwarrend was, dan had ik quote gebruikt. :)

Vond wel grappig om even niet gelijk link te geven naar de post die echt paar posten erboven stond.

@kitao
Ja maar waarom, ik snap het punt niet dat je geen interrupts wil/kan gebruiken. Waarom wil je geen onderbreking? Zit je dan zo krap je je cpu tijd? Of heb je er softwarematige communicatie of iets in die richting waardoor je geen interrupt kan plaatsvinden? Bij mij komen da gelijk hele berg vragen, en ben nieuwsgierig aangelegd. :D

Edit/
Ik bedoeld dus, cpu tijd die je over heb tussen je taken door.

Xmega AVR's hebben overigens 3 levels interrupts, low, mid en high. Kan ze prioriteit meegeven, als er interrupt plaatsvind met low en die is nog bezig en komt een high interrupt dan gaat die dus voor op de low en gaat er doorheen. Bijvoorbeeld handig als je knopjes indrukt en je ook nog seconden wilt bijhouden, kan je mid interrupt aan knopjes geven en high interrupt voor overflow van je timer voor het tellen van de secondes.

[ Voor 26% gewijzigd door mad_max234 op 14-03-2014 15:28 ]

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
mad_max234 schreef op vrijdag 14 maart 2014 @ 15:21:

@kitao
Ja maar waarom, ik snap het punt niet dat je geen interrupts wil/kan gebruiken. Waarom wil je geen onderbreking? Zit je dan zo krap je je cpu tijd? Of heb je er softwarematige communicatie of iets in die richting waardoor je geen interrupt kan plaatsvinden? Bij mij komen da gelijk hele berg vragen, en ben nieuwsgierig aangelegd. :D
Eigenlijk was dat niet een vraag van mij, maar goed, ik ben er wel verder op ingegaan.
Hier begon het draadje:
C.44 in "[Discussie] Arduino-topic"

Ps, weet iemand misschien waar dit boek gratis is te downloaden of online te lezen ?
http://www.amazon.com/Exp...ng-Wizardry/dp/1118549368
En dan zonder in te schrijven op een ebook-site oid

Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Kijk die post had ik dan weer gemist, dacht dat het jou probleem was en jij dus geen interrupt wilde uitvoeren, had nog pagina verder terug moeten lezen. :D

PS
Alles wat in dat boek staat staat tig keer dubbel op het internet en bekeken vanuit inzicht van meerder personen. :P

Als ik denk wat je vraag is dat niet echt toegestaan op tweakers.

-Andere hobby- -


Acties:
  • 0 Henk 'm!

Verwijderd

mad_max234 schreef op vrijdag 14 maart 2014 @ 15:50:

Als ik denk wat je vraag is dat niet echt toegestaan op tweakers.
ik had dat boek in 3 seconden ook al gevonden.. ;)

Acties:
  • 0 Henk 'm!

  • Oyster
  • Registratie: Januari 2003
  • Niet online

Oyster

Prince

C.44 schreef op woensdag 12 maart 2014 @ 21:44:
Ik was al wel bekend ermee, het RGB ledje in m'n rotary encoder kan ik nu ook de kleur laten weergeven die ik met de encoder bij elkaar mix. Per default is het rode kanaal geactiveerd en daar kun je de PWM cycle van aanpassen, druk je de encoder in kun je 't groene kanaal bedienen, nog een keer indrukken bedient het blauwe kanaal en als je nog een keer drukt kom je weer bij rood terecht. Leuk proof of concept.

Het enigste wat me op dit moment dwars zit is dat een encoder eigenlijk alleen via een interrupt 't beste werkt. Dat heet dat de Arduino alles laat vallen waar hij mee bezig is op 't moment dat je aan de knop komt... Ik kan me voorstellen dat dat niet in alle situaties handig is.

De enigste manier waarop je dat zou kunnen oplossen is door de encoder simpelweg in de loop constant te pollen voor veranderingen. Het probleem daarin is echter dat, wanneer een loop iets arbeidsintensiever is voor de processor, je de kans loopt om bepaalde input / signalen van de encoder te missen waardoor je of gewoon geen reactie krijgt op de input of de tegenovergesteld reactie die je verwachtte.
Dus feitelijk wil je beschikken over aandacht, maar mag daar geen tijd aan besteed worden? :p Dat kan natuurlijk niet. Zowel voor interrupts als polling zijn beide goede redenen te verzinnen om er gebruik van te maken. Zelf maak ik het meeste gebruik van een combinatie. Flags zetten in de ISR en de interrupts in de ISR tijdelijk uitschakelen. De flags worden dan afgevangen in de main loop. Zo kan je reentrancy en thread-safety goed in de gaten houden. Feitelijk wordt het gewoon een statemachine, in naar keuze mealy of moore opzet.

Een interessant gedachte-expiriment is trouwens een stoplicht. Op het eerste gezicht lijk je daar prima uit te kunnen komen met polling of ints. Maar je kan pas spreken over het begrijpen van polling of ints als je een werkende implementatie hebt gebouwd. Er zijn aardig wat valkuilen.
C.44 schreef op maandag 10 maart 2014 @ 22:30:
zoek 't maar es op, debouncen met delay is bad practice en zet je hele script stil en je kunt slechts 1 knop tegelijk debouncen
Ik vraag me soms af waar de haast religieuze discussies over interrupts en polling vandaan komen. :p Beide methodes kunnen een nut hebben in een toepassing. Het standaard bad practice noemen is reinste BS. Je kan trouwens prima meer dan één knop debouncen. Maar dat vereist wel wat meer inzicht en kennis over het gedrag van de inputs.

Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
Verwijderd schreef op vrijdag 14 maart 2014 @ 15:52:
ik had dat boek in 3 seconden ook al gevonden.. ;)
d:)b
wow

@Max
Wou er niets illegaals mee ofzo, dacht misschien dat het op een site als dit stond
http://it-ebooks.info/tag/arduino/
Blijkbaar niet, laat maar gaan, idd genoeg andere lektuur te vinden

Acties:
  • 0 Henk 'm!

Verwijderd

hoofdstuk 12 is in het licht van de huidige discussie interressant 8)
prima boek

Afbeeldingslocatie: http://i.imgur.com/0nsJSHE.jpg

[ Voor 39% gewijzigd door Verwijderd op 14-03-2014 16:06 ]


Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Verwijderd schreef op vrijdag 14 maart 2014 @ 15:52:
[...]


ik had dat boek in 3 seconden ook al gevonden.. ;)
Legaal of illegaal, dat is de vraag? :D

Edit/
Boek staat ook op newsgroupen, maar dat zijn duidelijk virussen of andere zooi!

En gaat niet om mij, maar om regels van tweakers, wat jezelf doet of via mail of pb regelt onderling moet je zelf weten. ;)

[ Voor 33% gewijzigd door mad_max234 op 14-03-2014 16:05 ]

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Verwijderd schreef op vrijdag 14 maart 2014 @ 09:31:
[...]


wellicht domme opmerking maar je hebt toch wel de originele Ethernet lib verwijderd ?
Waarom zou dat moeten? Toen ik laatst de ethercard library downloadde, kon ik de originele ethernet library gewoon laten staan. Waarschijnlijk omdat die anders is genoemd. De ENC28J60 die ik icm een Mega even heb getest doet het prima en er zijn maar 6 van de 10 draadjes nodig, scheelt wat aansluitwerk :)




Ik heb trouwens een vaag vermoeden waarom mijn sketch voor de meterkast-Nano niet de juiste waardes lijkt te geven. Als iemand deze vraag met ja beantwoord dan weet ik het zeker:
Stopt millis() met tellen als er een delay() langskomt?

[ Voor 9% gewijzigd door Raven op 14-03-2014 16:06 ]

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


Acties:
  • 0 Henk 'm!

  • Oyster
  • Registratie: Januari 2003
  • Niet online

Oyster

Prince

Ja, ze kunnen de functie praktisch beter halt() noemen.

Acties:
  • 0 Henk 'm!

Verwijderd

omdat beide library's van Ethernet.h gebruik maken en de compiler anders de 'originele' pakt ondanks dat je ethercard gebruikt.

Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Raven schreef op vrijdag 14 maart 2014 @ 16:05:
[...]

Waarom zou dat moeten? Toen ik laatst de ethercard library downloadde, kon ik de originele ethernet library gewoon laten staan. Waarschijnlijk omdat die anders is genoemd. De ENC28J60 die ik icm een Mega even heb getest doet het prima en er zijn maar 6 van de 10 draadjes nodig, scheelt wat aansluitwerk :)




Ik heb trouwens een vaag vermoeden waarom mijn sketch voor de meterkast-Nano niet de juiste waardes lijkt te geven. Als iemand deze vraag met ja beantwoord dan weet ik het zeker:
Stopt millis() met tellen als er een delay() langskomt?
Zover ik even snel kan zien stopt mills() inderdaad. Als je kijkt naar de delay functie van de arduino zie dat die micros() gebruikt, micros() maakt ook gebruik van timer0 net zoals mills(), dus zal mills de timer0 niet kunnen gebruiken als er delay plaatsvind. Zie link onderin, wiring.c bevat alle functies rond om mills, micros en delay.

Oplossing is denk ik micros() gebruiken ipv mills(), moet dan wel alles maal 1000 doen.

Delay functie arduino
C:
1
2
3
4
5
6
7
8
9
10
11
void delay(unsigned long ms)
{
    uint16_t start = (uint16_t)micros();

    while (ms > 0) {
        if (((uint16_t)micros() - start) >= 1000) {
            ms--;
            start += 1000;
        }
    }
}


https://github.com/arduin...no/cores/arduino/wiring.c

[ Voor 4% gewijzigd door mad_max234 op 14-03-2014 16:31 ]

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • Bravo51
  • Registratie: April 2008
  • Laatst online: 21:42
Verwijderd schreef op vrijdag 14 maart 2014 @ 16:15:
[...]


omdat beide library's van Ethernet.h gebruik maken en de compiler anders de 'originele' pakt ondanks dat je ethercard gebruikt.
Zou dat dan mijn probleem zijn? Eens proberen als we de originele Ethernet hernoemen.

Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
Raven schreef op vrijdag 14 maart 2014 @ 16:05:

Stopt millis() met tellen als er een delay() langskomt?
Ik dacht dat millis alleen met aanzetten op 0 ging of met een overflow.
Kun je het trouwens niet proberen met een kort programmaatje ?
Bijvoorbeeld serailPrint millis gedurende 10 minuten na uploaden
En dan zelfde programma maar ergens tussenin een delay van 5 minuten en dan een serialPrint millis
Dan zou er toch aanzienlijk verschil in de uitkomst moeten zijn.

Ik heb even gezocht maar kan het niet zo snel op t net vinden. Oyster had wel een antwoord maar staat niet bij waar dat vandaan komt. (niet dat ik het niet geloof ofzo)

Acties:
  • 0 Henk 'm!

Verwijderd

Bravo51 schreef op vrijdag 14 maart 2014 @ 16:28:
[...]


Zou dat dan mijn probleem zijn? Eens proberen als we de originele Ethernet hernoemen.
haal die map nou gewoon is even weg uit je library zodat er alleen ethercard in staat.
of het voor jou de oplossing is weet ik niet (kan ook een registersetting zijn voor UDP filter)

Afbeeldingslocatie: http://i.imgur.com/PkwbVHk.jpg
been there

Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
ik gebruik beide libs naast elkaar, ze hebben beide andere naam en hebben niks met elkaar vandoen. ;)

Onder andere:
Ethernet lib= W5100
Ethernetcard lib = enco28j60

Spreek de enco28j60 lib aan als ethernetcard.h, dat kan dus nooit andere lib aanroepen.

En omdat je geen foutmeldingen krijgt weet je 100% zeker dat je juist lib hebt, anders zou enc28j60.enable Broadcast() direct fout geven want die classe en functie zit niet in de Ethernet lib voor w5100.

-Andere hobby- -


Acties:
  • 0 Henk 'm!

Verwijderd

To get it work, ENC28J60 library need to be used.Due to the function name of ENC28J60 library is same as the original Ethernet library, the original Ethernet library in the library folder must be removed.
(in het geval van bestaande code)

[ Voor 7% gewijzigd door Verwijderd op 14-03-2014 16:49 ]


Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Waar haal je doe wijsheid vandaan? Welke enco28j60 lib?

Ethernetcard lib doet het hier gewoon prima naast de bestaande ethernet lib voor w5100, bij raven ook. ;)

Even terug komen op delay en millis, heb even testje geschreven, mills loopt gewoon door als er delay plaatsvind, test het zelf maar.

C:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
long buf1 = 0;
long buf2 = 0;

void setup()
{
  // start serial port at 9600 bps:
  Serial.begin(115200);

}

void loop()
{

 
    buf1 = millis();
    delay(5000);
    buf2 = millis();    
    Serial.println(buf1);
    Serial.println(buf2);
    Serial.println("");
    delay(5000);
           
  
}



Edit/
Alleen millis loopt door, codes die mogelijk gebruik maken van millis werken uiteraard niet, als je ergens millis gebruikt voor check, bijvoorbeeld, millis == 10000 en je gaat in delay rond de 8000 voor 5sec zal functie dus 10000 missen en niet werken. Zou je wel kunnen inhalen, door millis >= 10000 te doen, als arduino dan uit de delay komt zal die alsnog functie aanroepen, weliswaar 3000mS later dan normaal.

[ Voor 24% gewijzigd door mad_max234 op 14-03-2014 17:00 ]

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Oyster schreef op vrijdag 14 maart 2014 @ 16:12:
Ja, ze kunnen de functie praktisch beter halt() noemen.
mad_max234 schreef op vrijdag 14 maart 2014 @ 16:25:
[...]


Zover ik even snel kan zien stopt mills() inderdaad. Als je kijkt naar de delay functie van de arduino zie dat die micros() gebruikt, micros() maakt ook gebruik van timer0 net zoals mills(), dus zal mills de timer0 niet kunnen gebruiken als er delay plaatsvind. Zie link onderin, wiring.c bevat alle functies rond om mills, micros en delay.

Oplossing is denk ik micros() gebruiken ipv mills(), moet dan wel alles maal 1000 doen.

Delay functie arduino
C:
1
2
3
4
5
6
7
8
9
10
11
void delay(unsigned long ms)
{
    uint16_t start = (uint16_t)micros();

    while (ms > 0) {
        if (((uint16_t)micros() - start) >= 1000) {
            ms--;
            start += 1000;
        }
    }
}


https://github.com/arduin...no/cores/arduino/wiring.c
mad_max234 schreef op vrijdag 14 maart 2014 @ 16:50:
Waar haal je doe wijsheid vandaan? Welke enco28j60 lib?

Ethernetcard lib doet het hier gewoon prima naast de bestaande ethernet lib voor w5100, bij raven ook. ;)

Even terug komen op delay en millis, heb even testje geschreven, mills loopt gewoon door als er delay plaatsvind, test het zelf maar.

C:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
long buf1 = 0;
long buf2 = 0;

void setup()
{
  // start serial port at 9600 bps:
  Serial.begin(115200);

}

void loop()
{

 
    buf1 = millis();
    delay(5000);
    buf2 = millis();    
    Serial.println(buf1);
    Serial.println(buf2);
    Serial.println("");
    delay(5000);
           
  
}



Edit/
Alleen millis loopt door, codes die mogelijk gebruik maken van millis werken uiteraard niet, als je ergens millis gebruikt voor check, bijvoorbeeld, millis == 10000 en je gaat in delay rond de 8000 voor 5sec zal functie dus 10000 missen en niet werken. Zou je wel kunnen inhalen, door millis >= 10000 te doen, als arduino dan uit de delay komt zal die alsnog functie aanroepen, weliswaar 3000mS later dan normaal.
Millis() wordt in dit geval gebruikt om de tijdsduur van het ronddraaien van de schijf te meten, als millis() nou inderdaad niet (altijd) doorloopt tijdens delay(), dan zou dat mijn probleem kunnen verklaren maar de een zegt wel en de ander zegt niet :S

Het is iig niet zo dat de delay(250) er voor zorgt dat de sensor de markering mist. Zelfs als het verbruik extreem hoog is (4800W als voorbeeld), dan doet de schijf er 2 seconden over voor ie rond gedraaid is. Het probleem is echter dat de door millis() aangegeven tijdsduur korter is dan de daadwerkelijke tijdsduur. Als millis() nou door delay() gestopt wordt, dan verklaart dat het.

Voor het testen, wat ik nog moet doen, heb ik de delay(1) in de smoothing code vervangen door
C++:
1
2
3
4
5
waittime = millis();
while ((millis()-waittime) == 0){
  lcd.setCursor(13, 0);                 // set the cursor to column 13, line 0
  lcd.print("CAw");                     // display text on lcd
}

(Ik heb her en der in de code wat lcd.print's geplaatst om te kijken in welke lus/functie die zit, handig voor troubleshooten.)

De delay(250) commando's in de if's heb ik weggewerkt door de if's een 3e voorwaarde te geven en een extra functie toe te voegen zodat de if's voor het detecteren van de markering niet nogmaals aangesproken kan worden als de markering nog niet helemaal voorbij is. Die 3e voorwaarde is een variabele die 0 of 1 bevat. Deze begint 0, wat tevens de 3e voorwaarde is voor de if's. In de if's voor het detecteren wordt daar een 1 in gezet en de extra functie zet daar een 0 in zodra de markering voor de sensor weg is. (Deze methode heb ik ergens op GoT een keer gezien.)



Verwijderd schreef op vrijdag 14 maart 2014 @ 16:15:
[...]


omdat beide library's van Ethernet.h gebruik maken en de compiler anders de 'originele' pakt ondanks dat je ethercard gebruikt.
Dan vraag ik mij af waarom het hier gewoon werkt ;)

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


Acties:
  • 0 Henk 'm!

Verwijderd

Raven schreef op vrijdag 14 maart 2014 @ 17:27:

Dan vraag ik mij af waarom het hier gewoon werkt ;)
dan begrijp ik je probleem niet.. of had je geen probleem meer met UDP ?



oh.. het was voor Bravo51 bedoeld zie ik nu 8)

[ Voor 28% gewijzigd door Verwijderd op 14-03-2014 20:30 ]


Acties:
  • 0 Henk 'm!

  • ResuCigam
  • Registratie: Maart 2005
  • Laatst online: 21:35

ResuCigam

BOFH

mad_max234 schreef op vrijdag 14 maart 2014 @ 16:50:
Even terug komen op delay en millis, heb even testje geschreven, mills loopt gewoon door als er delay plaatsvind, test het zelf maar.
Grappig dat wist ik niet, ik dacht dat alles stil stond. Maar wat je zelf al in je edit zegt: Je hebt er in praktijk niet zoveel aan omdat de rest WEL stilstaat :)

We do what we must because we can.


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
ResuCigam schreef op vrijdag 14 maart 2014 @ 18:13:
Grappig dat wist ik niet, ik dacht dat alles stil stond. Maar wat je zelf al in je edit zegt: Je hebt er in praktijk niet zoveel aan omdat de rest WEL stilstaat :)
Je hoeft niet perse delay te gebruiken
dit is het meest eenvoudige voorbeeld daarvan
http://arduino.cc/en/Tutorial/BlinkWithoutDelay#.UyM5lPl5PbQ

Acties:
  • 0 Henk 'm!

  • ResuCigam
  • Registratie: Maart 2005
  • Laatst online: 21:35

ResuCigam

BOFH

Ja die ken ik, het ging er hier om of millis() stil stond tijdens delay(), niet dus.Weer wat geleerd :) En het gebruik van delay(1) zoals in het voorbeeld van Raven is in de meeste gevallen ook geen ramp trouwens.

We do what we must because we can.


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
ResuCigam schreef op vrijdag 14 maart 2014 @ 18:21:
Ja die ken ik, het ging er hier om of millis() stil stond tijdens delay(), niet dus.
Dat was idd de vraag en ik twijfelde eraan. Kon het zo snel echter even niet vinden. Morgen maar eens uittesten

Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Millis() lijkt in die testsketch van mad_max234 inderdaad gewoon door te lopen. Maar waarom klopt de gemeten tijd dan niet in
Members only:
Alleen zichtbaar voor ingelogde gebruikers. Inloggen


Zal zo nog eens kijken, maar volgens mij wordt er gewoon een seconde te weinig gemeten :S Overigens werkt de sketch zonder de delays die ik had gemaakt niet goed, veel false positives ineens. Dat heb ik met bovenstaande niet. Alhoewel, toen ik net weer testte kreeg ik er toch de nodige. Maar na even wachten liep ie normaal maar gaf na het aanzetten van de oven weer éxact 3200 watt aan, dat kan gewoon niet, helemaal daar de schijf er méér dan 3 sec over doet om rond te draaien.

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


Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Millis() loopt gewoon door als delay plaatsvind, dat is wel zeker na de test die ik paar posten hierboven heb gepost, test het zelf maar staat erbij. ;)

@Raven
Print millis voor je functie met delay en print het daarna nog eens. Dus twee long integer buffer toevoegen en gewoon millis meten, dan weet je of millis door liep of niet. Uiteraard kosten codes ook cyclussen moet je even rekening mee houden.

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Je bent net iets te laat, zie boven jouw bericht :P

Dat codes ook cyclussen kosten weet ik, maar toch niet zó veel?

Na het nog eens bekijken van de code:
Members only:
Alleen zichtbaar voor ingelogde gebruikers. Inloggen

Dumb(?) question: duration is in ms, stel nou dat die waarde 3900 heeft en door 1000 gedeeld wordt, onthoud de Arduino dan 't spul achter de komma?
(Just thinking out loud)

[ Voor 4% gewijzigd door Raven op 20-10-2014 23:19 ]

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


Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Integer! :D

Dus nee, alles word afgekapt, 1500 / 1000 = 1, 3900 / 1000 = 3

Edit/
Komt dat overeen met deel wat je mist in tijd?

En over die klokcyculssen, ja die kunnen best oplopen, als je mijn test sketch tijdje laat lopen zul je zien dat zelfs die paar regels naar paar minuten al ms scheelt.

Atmel heeft app note met hoe je beste loops en statements kan gebruiken om tijd of ruimte te besparen. Simpel if statement kan bijvoorbeeld 50 cyclussen kost. Als je veel code hebt die beetje ongunstig geschreven kan het roet in eten gooien van nauwkeurige brekingen, moet dat dus meenemen in je berekening. Je kan je code schrijven dat het zo min mogelijk ruimte kost of je schrijft hem op snelheid/nauwkeurigheid. Het is vaak een of het andere, op grote of snelheid optimaliseren, gaan vaak niet samen.

Bijv. hele rits if statements helemaal uitschrijven onder elkaar is sneller dan in loop verwerken, maar loop geeft kleinere machine code met bepaalde optimalisatie instellingen uiteraard. Je stemt je schrijfstijl dus af op je doel, en niet zoals vele denken zo netjes mogelijk voor het oog schrijven. :+

http://www.atmel.com/images/doc8453.pdf

[ Voor 105% gewijzigd door mad_max234 op 14-03-2014 19:24 ]

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
W en treshold zijn integers ja, maar duration is een long.

Maar ik heb zo'n vermoeden dat het dat zou kunnen zijn? Dan moet ik de formule ietsje aanpassen om geen getallen achter de komma te krijgen.

Na wat stoeien met calc.exe
Members only:
Alleen zichtbaar voor ingelogde gebruikers. Inloggen


Zo de sketch maar eens aanpassen. Dit zou het kunnen zijn.

edit: Dat was het :D *O*
Het valt wel op, afgezien van dat de waarde nu beter overeen lijkt te komen (al heb ik geen mogelijkheid om te checken of het éxact klopt), nu fluctueert de waarde in kleine hoeveelheden, dat deed ie voorheen niet.

[ Voor 25% gewijzigd door Raven op 20-10-2014 23:20 ]

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


Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Long is ook een integer. :)

Als je float wilt, zal je w float moeten maken, en vervolgens cycles_per_kwh en duration casten naar float in de berekening.

http://arduino.cc/en/Reference/Cast#.UyNJvYV2OSw

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
En wéér net iets te laat :+ , zie edit in bericht boven die van jou :P

[ Voor 6% gewijzigd door Raven op 14-03-2014 19:28 ]

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


Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
*O*

Ik heb me ook wel eens avond op code liggen prutsen door zoiets, geef mij maar php op dat gebied, geen gedoe met data types.

Edit/
Je wilt dus juist geen getallen achter de komma?

Wat is de formule die gebruikt word? Dus gewoon uitgeschreven niet in code.

[ Voor 34% gewijzigd door mad_max234 op 14-03-2014 19:49 ]

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
ResuCigam schreef op vrijdag 14 maart 2014 @ 18:21:
Ja die ken ik, het ging er hier om of millis() stil stond tijdens delay(), niet dus.Weer wat geleerd :)
Ik ook hoor. Ik heb twee programma's gecombineerd : Fade en Blink with delay en Fade en Blink with millis.
Dus ledje 1 doet fade en ledje 2 blinkt tegelijkertijd.
De twee programma's hebben een opmerkelijk zichtbaar verschil in het faden van de led, terwijl allebei de codes vrijwel gelijk zijn, behalve dat de andere geen delay gebruikt. Met delay lijkt het zelfs of de Fadeled niets doet de eerste paar momenten. Zulk verschil was ik eigenlijk nog niet tegengekomen in een praktijktestje.
Met een stopwatch erbij gezeten en na 6:12 minuten waren de millis allebei rond de 375.000
Dus lijkt er sterk op dat delay het millisklokje niet stil zet, wat ik eigenlijk al vermoedde en heb nu wel gezien dat als je 2 dingen tegelijk wilt doen, dat je dan beter delay niet kunt gebruiken.
Ik heb de sketches hieronder gezet, veel comments heb ik verwijderd maar wie die toch wil lezen, ze staan hier:
http://arduino.cc/en/Tutorial/BlinkWithoutDelay#.UyM5lPl5PbQ
http://arduino.cc/en/Tutorial/Fade#.UyOt2vl5PbQ
http://arduino.cc/en/tutorial/blink#.UyOuEvl5PbQ

Sketch 1: Fade and Blink with Millis
C++:
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
/*
 Fade and Blink with Millis
 Print de tijd als brightness 100 is
 */
int ledBlink = 13;
int ledState = LOW;             // ledState used to set the LED
long previousMillis = 0;        // will store last time LED was updated
long interval = 1000;           // interval at which to blink (milliseconds)

int ledFade = 9;
int brightness = 0;    // how bright the LED is
int fadeAmount = 5;    // how many points to fade the LED by
unsigned long Tijd=0;  // Tijd om te printen

void setup()  { 
  pinMode(ledBlink, OUTPUT);
  pinMode(ledFade, OUTPUT);
  Serial.begin(9600);
} 
void loop()  { 
  //Blink gedeelte
  unsigned long currentMillis = millis();
  if(currentMillis - previousMillis > interval) {
        previousMillis = currentMillis;   
    if (ledState == LOW)
      ledState = HIGH;
    else
      ledState = LOW;
    digitalWrite(ledBlink, ledState);
  }
  // Fadegedeelte ; set the brightness of pin 9:
  analogWrite(ledFade, brightness);    
  brightness = brightness + fadeAmount;
  if (brightness == 100){
    Tijd=millis();
    Serial.println(Tijd);
  } 
  if (brightness == 0 || brightness == 255) {
    fadeAmount = -fadeAmount ; 
  }       
  delay(30);                            
}


En sketch 2 : Fade and Blink with Delay

C++:
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
/*
 Fade and Blink with Delay
 Print de tijd als brightness 100 is
  */
int ledFade = 9;
int ledBlink = 13;
int brightness = 0;    // how bright the LED is
int fadeAmount = 5;    // how many points to fade the LED by
unsigned long Tijd=0;   // Tijd om te printen

void setup()  { 
  pinMode(ledBlink, OUTPUT);
  pinMode(ledFade, OUTPUT);
  Serial.begin(9600);
} 
void loop()  { 
  //Blink gedeelte
  digitalWrite(ledBlink, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);               // wait for a second
  digitalWrite(ledBlink, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);
  
  // Fadegedeelte ; set the brightness of pin 9:
  analogWrite(ledFade, brightness);    
  brightness = brightness + fadeAmount;
  if (brightness == 100){
    Tijd=millis();
    Serial.println(Tijd);
  } 
  if (brightness == 0 || brightness == 255) {
    fadeAmount = -fadeAmount ; 
  }       
  delay(30);                            
  }


2 ledjes en 2 weerstanden van 220 Ohm zijn nodig. (eigenlijk maar 1 ledje maar is duidelijker zichtbaar zonder dat onboard mini-lampje) ;)

[ Voor 4% gewijzigd door kitao op 15-03-2014 14:33 . Reden: opmaak ]


Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
mad_max234 schreef op vrijdag 14 maart 2014 @ 19:31:
*O*

Ik heb me ook wel eens avond op code liggen prutsen door zoiets, geef mij maar php op dat gebied, geen gedoe met data types.

Edit/
Je wilt dus juist geen getallen achter de komma?

Wat is de formule die gebruikt word? Dus gewoon uitgeschreven niet in code.
Ik hoef in het resultaat geen getallen achter de komma, wat kan mij een verschil van een paar mW nou schelen :+ Het resultaat moet hele watts zijn, alleen in de vorige formule kreeg een deel van de formule met getallen achter de komma te maken wat dus blijkbaar afgekapt werd....

De formule is vrij simpel:
Afbeeldingslocatie: http://www.ravenslair.nl/GoT2/formule-vermogen-in-watt.gif

C is het aantal omwentelingen/pulsen per kWh, 375 in dit geval, Tomw is de omwentelingstijd (de tijd tussen de pulsen) in seconden. Omdat ik millis gebruik werd dat dus de gemeten waarde gedeeld door 1000, wat resulteerde in een getal met wat achter de komma wat daarna met C vermenigvuldigd wordt. Na het schuiven met haakjes wordt eerst C met de gemeten waarde in ms vermenigvuldigd om daarna pas door 1000 gedeeld te worden. Resultaat: Nergens in de formule getallen met spul achter de komma.

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


Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
kWh/h = KW
3600000w/3600s = 1000w

Je moet dus naar seconden toe ipv uur als je kWh in watt uitschrijft in je berekening, je moet dus niet delen door 1000 maar keer 1000. Puls zijn immers in mS en je wilt naar seconden toen.

Edit/
Zie ook
http://www.engineerathome...gieverbruik+met+arduino/9

Word het dus zoiets voor jou
W = 3.600.000 / (375 * tpuls) * 1000

Edit/
Kon niet laten om het toch even wat verder uit te werken. :9

Deze is helemaal correct, reken het maar na. :)

W = (3.600.000 / (375 * tpuls)) * 1000;

Als je 1000w verbruikt zal elke puls 9600ms duren.

375 * 9600ms = 3600000ms
3600000w / 3600000ms = 1
1 * 1000 = 1000w

Als je 500w verbruikt zal elke puls 19200ms duren.

375 * 19200ms = 7200000ms
3600000w / 7200000ms = 0.5
0.5 * 1000 = 500w

[ Voor 78% gewijzigd door mad_max234 op 15-03-2014 15:04 ]

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Ehm, die formule geeft dezelfde waarde hoor?

tpuls = 4000ms
Jouw formule: W = 3.600.000 / (375 * 4000) * 1000 = 2400W
Formule in sketch: W = 3.600.000 / ((375*4000)/1000) = 2400W

Je hebt gewoon zitten schuiven met de haakjes ;)

[ Voor 58% gewijzigd door Raven op 15-03-2014 15:03 ]

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


Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Je moet eerste deel even vergeten, en edit los zien, heb gewoon de formule uitgeschreven en nagereken zoals het er stond, zodat ik zeker weet dat ik juiste formule heb, ben niet eens toegekomen aan vergelijk van de formules want toen posten jij de vergelijking. :)

Je weet nu dus zeker met bevesting dat je formule juist is. ;)

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
Raven schreef op zaterdag 15 maart 2014 @ 14:57:
Ehm, die formule geeft dezelfde waarde hoor?
tpuls = 4000ms
Jouw formule: W = 3.600.000 / (375 * 4000) * 1000 = 2400W
Formule in sketch: W = 3.600.000 / ((375*4000)/1000) = 2400W
Je hebt gewoon zitten schuiven met de haakjes ;)
:?
Hoe kan dat gelijk zijn ?

/edit klopt inderdaad Max. Sorry !

20 / (2*5) * 4 => 20/10 * 4 => 2 * 4 = 8
en
20 / (( 2 * 5 ) / 4 ) => 20 / (10 / 4 ) => 20 / 2.5 = 8

So, ik mag weer terug naar de schoolbankjes zeg :/

[ Voor 20% gewijzigd door kitao op 15-03-2014 16:02 ]


Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Hij haald de 000 weg nadat die keer heeft gedaan, dus getal wat daar uit komt en daarna door gedeeld word is kleiner. Dus komt hij hoger uit na zijn laatste deling. Ik haal geen 000 weg voor het delen, dus komt mijn getal 1000 lager uit na het delen, en daar komen mijn 000 erbij door die keer 1000 en komen we weer ophetzelfde uit. :D

[ Voor 11% gewijzigd door mad_max234 op 15-03-2014 15:44 ]

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
kitao schreef op zaterdag 15 maart 2014 @ 15:29:
[...]


:?
Hoe kan dat gelijk zijn ?

/edit klopt inderdaad Max. Sorry !

20 / (2*5) * 4 => 20/10 * 4 => 2 * 4 = 8
en
20 / (( 2 * 5 ) / 4 ) => 20 / (10 / 4 ) => 20 / 2.5 = 8

So, ik mag weer terug naar de schoolbankjes zeg :/
Leuk dat gegoochel met haakjes he :P
mad_max234 schreef op zaterdag 15 maart 2014 @ 15:20:
Je moet eerste deel even vergeten, en edit los zien, heb gewoon de formule uitgeschreven en nagereken zoals het er stond, zodat ik zeker weet dat ik juiste formule heb, ben niet eens toegekomen aan vergelijk van de formules want toen posten jij de vergelijking. :)

Je weet nu dus zeker met bevesting dat je formule juist is. ;)
Dat die formule juist is twijfel ik niet aan, het gaat er mij meer om in hoeverre accuraat de snelheid van de schijf tov het verbruik is. 't label van de meter zegt wel 375 toeren per kWh, maar er zal vast wel een paar % tolerantie zijn, of niet?

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


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
Raven schreef op zaterdag 15 maart 2014 @ 16:44:
Leuk dat gegoochel met haakjes he :P
Ja, daar had ik ook zo'n last van toen ik met C++ begon, maar dan met { }
Gaat nu gelukkig iets beter

Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Raven schreef op zaterdag 15 maart 2014 @ 16:44:


Dat die formule juist is twijfel ik niet aan, het gaat er mij meer om in hoeverre accuraat de snelheid van de schijf tov het verbruik is. 't label van de meter zegt wel 375 toeren per kWh, maar er zal vast wel een paar % tolerantie zijn, of niet?
Dacht dat je er ook nog niet 100% zeker over was in je (twee na) laatste post van gisteren, ik zelf was er in ieder geval nog niet 100% overtuigd van, en meten is weten. :)

Meters worden stuk voor stuk geijkt en die verlopen niet snel. Zou niet best zijn als je met tientallen duizenden klanten paar procent te veel zouden betalen, loopt toch al snel in de tientallen miljoenen die ze dan onterecht ontvangen.

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Dat de waardes gisteren niet klopten was wel duidelijk, het verschil tussen 't aan en uitzetten van de oven was overduidelijk hoger dan dat de oven daadwerkelijk verbruikte. Dat uiteindelijk de weggevallen getallen achter de komma de oorzaak waren zijn (afhankelijk van hoe je het bekijkt) geen fout in de formule ;)
('t was meer een programmeerfout dan een fout in de formule)

Nou wilde ik het totale verbruik wel met dat wat de Arduino aangaf vergelijken, maar hoe meet je het verbruik van een gehele woning? Aan elk stopcontact een Energy Logger hangen is niet echt handig, al was het met alleen de oven aan wel meteen te zien dat er wat mis ging.

Wanneer de meter hier voor het laatst geijkt is weet ik niet, iig niet in de 18-19 jaar dat wij hier wonen.

[ Voor 7% gewijzigd door Raven op 15-03-2014 17:18 ]

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


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
mad_max234 schreef op vrijdag 14 maart 2014 @ 15:50:
Alles wat in dat boek staat staat tig keer dubbel op het internet en bekeken vanuit inzicht van meerder personen.
Als ik denk wat je vraag is dat niet echt toegestaan op tweakers.
Verbaast me niks eigenlijk van een grote instelling dat het niet toegestaan is om zonder veel kosten toegang te krijgen tot goede educatieve bronnen. Zou natuurlijk ongewenste effecten geven als het gewone volk dezelfde beschikking heeft over goed onderwijs als de toplaag.

Anyway, ik heb geprobeerd dat boek te downloaden maar óf er wordt om mijn creditkaart gegevens gevraagd óf ik krijg allerlei troep op de pc. Weinig open source dus van onze J.Blum.
Hoewel die - rijk gesponsord - een aardige arduino V-tutorial op z'n site heeft staan.
http://www.jeremyblum.com/category/arduino-tutorials/page/3/

[ Voor 5% gewijzigd door kitao op 16-03-2014 05:59 . Reden: videolink verwijderd ]


Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Heb het net even opgezocht en schok wel beetje, meter mag wettelijk 4% afwijken, dacht dat het echt <1% was, weet niet hoe ik daar dan bijkom. Je mag je leverancier gewoon lastigvallen voor het ijken, kost echter wel geld, en als meter gewoon goed is worden de kosten meestal verhaald op de aanvrager, wijkt de meter te veel af nemen de meeste leveranciers de kosten op zich.

Heb je nog wat oude 100w gloeilampen of zo?

Als je nu eens zorg dat je paar verbruikers hebt die je eerst even nameet en daarvan het exacte verbruik weet, als je die dan aan je net hangt kan je het verschil meten, als dat overeenkomt met je verbruikers dan klopt je meter.

Edit/
kitao schreef op zaterdag 15 maart 2014 @ 17:59:
[...]

Verbaast me niks eigenlijk van een grote instelling dat het niet toegestaan is om zonder veel kosten toegang te krijgen tot goede educatieve bronnen. Zou natuurlijk ongewenste effecten geven als het gewone volk dezelfde beschikking heeft over goed onderwijs als de toplaag. Wat dat betreft is deze video aardig van toepassing.

Anyway, ik heb geprobeerd dat boek te downloaden maar óf er wordt om mijn creditkaart gegevens gevraagd óf ik krijg allerlei troep op de pc. Weinig open source dus van onze J.Blum.
Hoewel die - rijk gesponsord - een aardige arduino V-tutorial op z'n site heeft staan.
http://www.jeremyblum.com/category/arduino-tutorials/page/3/
Daar gaat het natuurlijk helemaal niet om.

Gaat om of het uit illegale bronnen zou komen of niet, ik zag dat boek geld kosten dan kan je er meestal niet zomaar legaal ergens anders gratis aankomen, alleen uit minder legale bronnen, dat mag niet op tweakers.

Tweakers is er juist voor om elkaar wijzer te maken en elkaar te helpen, dat is nogal tegenstrijdig met jou verhaal. :) Wat jij leert of welke boeken jij leest moet jij zelf weten, zal tweakers of wie dan ook zich niet druk om maken. Ik heb zelf voor je gezocht, en kwam hem alleen illegale bronnen tegen(newsgroupen), en verdacht klein waren en dus waarschijnlijk virussen, wil je de link wel geven via mail of pb. :+

Policy: Alle regels die op het forum gelden
"Geen licentie- of copyright-schendingen zoals links naar warez, cracks, MP3's en divx."

En gaat dan puur in het topic, wat je via mail onderling doet moet je zelf weten, tweakers wilt gewoon zo schoon mogelijk blijven, logisch toch. :)

[ Voor 58% gewijzigd door mad_max234 op 15-03-2014 18:08 ]

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
mad_max234 schreef op zaterdag 15 maart 2014 @ 17:59:
Heb het net even opgezocht en schok wel beetje, meter mag wettelijk 4% afwijken, dacht dat het echt <1% was, weet niet hoe ik daar dan bijkom. Je mag je leverancier gewoon lastigvallen voor het ijken, kost echter wel geld, en als meter gewoon goed is worden de kosten meestal verhaald op de aanvrager, wijkt de meter te veel af nemen de meeste leveranciers de kosten op zich.

Heb je nog wat oude 100w gloeilampen of zo?

Als je nu eens zorg dat je paar verbruikers hebt die je eerst even nameet en daarvan het exacte verbruik weet, als je die dan aan je net hangt kan je het verschil meten, als dat overeenkomt met je verbruikers dan klopt je meter.
Yikes, dat is wel veel zeg, daar kun je als energieleverancier goed aan verdienen :P
Dat ijken geld kost (als de meter goed is) weet ik ;)

De zwaarste gloeilampen die we hadden waren 60W, sinds een jaar of 2 is op 2 TL-lampen en een philinea lamp na alles led. De vervangingskosten van die lampen wogen niet op tegen het niet noemenswaardig lagere verbruik van de led-tegenhangers. (Of het moet tegenwoordig anders zijn)

Later maar eens naar kijken. Het verbruik van de oven is volgens mij redelijk constant tijdens 't opwarmen, dus die kan ik als indicatie voor verschil in hoog verbruik gebruiken. Daarnaast hebben we nog een beeldbuis-tv die ik als indicator voor het verschil van het wat lagere verbruik zou kunnen gebruiken.
kitao schreef op zaterdag 15 maart 2014 @ 17:59:
Anyway, ik heb geprobeerd dat boek te downloaden maar óf er wordt om mijn creditkaart gegevens gevraagd óf ik krijg allerlei troep op de pc. Weinig open source dus van onze J.Blum.
Hoewel die - rijk gesponsord - een aardige arduino V-tutorial op z'n site heeft staan.
http://www.jeremyblum.com/category/arduino-tutorials/page/3/
Dan zoek je niet goed genoeg :P Maar als een creditcard de enige betalingsmethode is, dan kan ik wel begrijpen dat mensen van deze kant van de aardbol alternatieve bronnen zoeken. Deze pdf was trouwens makkelijk te vinden moet ik zeggen en dat terwijl ik geen nieuwsgroepen gebruik.

[ Voor 18% gewijzigd door Raven op 15-03-2014 19:28 ]

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


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
@Max
Mijn post was niet bedoeld om te overtuigen maar hopelijk zet het bij sommigen wel vraagtekens. En dat lijkt me niet verkeerd; een bepaald "wantrouwen" of iemands bewering wel waar is.
Niet alles kun je als zoete koek aannemen, zoals bij delay en millis en zoals bij aarde aansluiten op je cv-waterleiding.
En bepaalde boeken zijn nu eenmaal te koop voor grof geld maar sommigen daarvan zijn gelukkig desondanks ook gewoon online te lezen zonder allerlei trucjes uit te halen.
Helaas doet grof gesponsorde J. Blum daar blijkbaar niet aan mee. Geeft niet, valt toch buiten dit topic, ook al gaf ik dan een link naar zijn arduino-Vblog.

Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
kitao schreef op zaterdag 15 maart 2014 @ 17:59:
[...]

Verbaast me niks eigenlijk van een grote instelling dat het niet toegestaan is om zonder veel kosten toegang te krijgen tot goede educatieve bronnen. Zou natuurlijk ongewenste effecten geven als het gewone volk dezelfde beschikking heeft over goed onderwijs als de toplaag. Wat dat betreft is deze video aardig van toepassing.

Anyway, ik heb geprobeerd dat boek te downloaden maar óf er wordt om mijn creditkaart gegevens gevraagd óf ik krijg allerlei troep op de pc. Weinig open source dus van onze J.Blum.
Hoewel die - rijk gesponsord - een aardige arduino V-tutorial op z'n site heeft staan.
http://www.jeremyblum.com/category/arduino-tutorials/page/3/
Erg he, het gewone volk wat niet de toegang heeft tot educatieve bronnen zoals de 'toplaag'. Een wopping 25 dollar, oftewel zo'n 20 euro. |:(

Nog erger, dat het toegestaan zou zijn in je levensonderhoud te voorzien door educatief materiaal te maken en te verkopen.

Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
In mijn wereld mag auteur nog altijd van zijn recht gebruik maken en zijn eigen verdien model bepalen. :D

Maar zoals ik al zie zijn vast en zeker tig bronnen die zijn onderwerpen ook behandelen, krijg je uitleg van meerdere mensen. Je hebt dat boekje helemaal niet nodig. ;)

En top onderwijs kan wel degelijk gratis zijn, ik volg veel lessen van MIT geheel gratis, met letures en werkbladen en alles erbij, vind ik toch wel wat hoger staan dan arduino boekje. :)

Emeritus Walter Lewin heeft ook aantal MIT lezingen gratis beschikbaar, kent hem wellicht van De wereld draait door, grappige professor en geeft leuke lectures. Maar zijn ook zat MIT lectures te vinden over elektronica, om wat beter aan te sluiten bij dit topic. :)

-Andere hobby- -


Acties:
  • 0 Henk 'm!

Verwijderd

geef is zo'n gratis MIT arduino les linkje .. ben erg benieuwd :)

Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
mad_max234 schreef op zaterdag 15 maart 2014 @ 20:04:
Vind ik toch wel wat hoger staan dan arduino boekje. :)
Tja,daar heb je het al
"hoger dit, hoger dat"
waarom dan 20 euro ?!! :?

Ben trouwens ook benieuwd naar die gratis MIT-lessen. Ik neem aan dat je geen video bedoelt op youtube met een lezing van iemand.

Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Niet van MIT maar andere lezing, en niet specifiek arduino maar wel microcontroller. :D

YouTube: Embedded Systems Course - Lecture 02: Concepts of Microcontrollers, Part 1

Edit/
Ja de video lezingen staan op youtube, niet alleen van MIT maar heel veel universiteiten doen het via youtube.

Van Stanford en MIT heb je naast lezing ook nog werkbladen bij veel lezingen die bij de lezingen horen die kan je op hun website vinden via het nummer van de lezing. Ze doen dat zodat de lessen voor iedereen beschikbaar zijn.

En zijn niet zomaar eerste de beste, zijn top professoren die videolezingen hebben gemaakt speciaal om te verspreiden. Is dus niet even iemand die met zijn iphone in publiek de lezing heeft gefilmd en stiekem online heeft gezet.

Edit/

En nee je kan niet afstuderen via deze weg. :P

Edit/
Bekende van google, een van de senior research scientist van google, kan je dus even les van krijgen.
YouTube: Lecture 5 | Programming Methodology (Stanford)

[ Voor 74% gewijzigd door mad_max234 op 15-03-2014 20:30 ]

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
mad_max234 schreef op zaterdag 15 maart 2014 @ 20:04:
In mijn wereld mag auteur nog altijd van zijn recht gebruik maken en zijn eigen verdien model bepalen. :D

Maar zoals ik al zie zijn vast en zeker tig bronnen die zijn onderwerpen ook behandelen, krijg je uitleg van meerdere mensen. Je hebt dat boekje helemaal niet nodig. ;)

En top onderwijs kan wel degelijk gratis zijn, ik volg veel lessen van MIT geheel gratis, met letures en werkbladen en alles erbij, vind ik toch wel wat hoger staan dan arduino boekje. :)

Emeritus Walter Lewin heeft ook aantal MIT lezingen gratis beschikbaar, kent hem wellicht van De wereld draait door, grappige professor en geeft leuke lectures. Maar zijn ook zat MIT lectures te vinden over elektronica, om wat beter aan te sluiten bij dit topic. :)
MIT en gratis? :? Vind ik niet samen in 1 zin passen, maar goed, wat weet ik er van :P

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


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
@Max
Bedankt, ik had al eerder zulke lezingen bekeken maar dan economie en natuurkunde. Echter nooit geweten dat er verwijzingen zijn naar bijbehorende lectuur. Is dit uitstapje toch nuttig geweest. :)
Vandaag zag ik op deze site een rfid, blijkt al voor 3 euro te koop maar dan modernere versie dus die maar besteld.
Afbeeldingslocatie: http://i.imgur.com/UCyNPpFl.jpg
Eigenlijk ook nieuw voor mij is de esplora, die had ik nog niet eerder gezien. Ziet er wel grappig uit.
Afbeeldingslocatie: http://i.imgur.com/ytnYIHol.jpg

The Esplora is different from all previous Arduino boards, in that it has inputs and outputs already connected to the board. This means that you don't need to know how to connect electronic sensors or actuators to use it as a result.

Soort kant en klaar kippetje ;)

Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Raven schreef op zaterdag 15 maart 2014 @ 22:05:
[...]

MIT en gratis? :? Vind ik niet samen in 1 zin passen, maar goed, wat weet ik er van :P
Uhm, er is al jaren gratis onderwijs via MIT.

“The idea is simple: to publish all of our course materials online and make them widely available to everyone.”
Dick K.P. Yue, Professor, MIT School of Engineering


http://ocw.mit.edu/index.htm

Veel universiteiten zijn daarmee gestart, is een trend.

Zie ook berichten op tweakers
nieuws: TU Delft maakt onderwijsmateriaal gratis online toegankelijk

"Educational Resources (Delft OpenER) sluit de TU Delft aan bij de wereldwijde trend om lesmateriaal voor iedereen toegankelijk te maken."


nieuws: MIT gaat certificaten uitdelen via vernieuwd virtueel lesaanbod

"MIT biedt via zijn OpenCourseWare-website al sinds 2002 cursussen gratis aan; inmiddels staat de teller op ruim tweeduizend cursussen die opvraagbaar zijn."


nieuws: MIT gaat kennis gratis online aanbieden

[ Voor 5% gewijzigd door mad_max234 op 16-03-2014 11:09 ]

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Ik dacht altijd dat je bij Amerikaanse universiteiten eerst een (naar Nederlandse begrippen) flinke lading geld moest betalen voor je naar binnen mocht, blijkbaar zijn er dus uitzonderingen :P

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


Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Nee dat is als je ambassadeur wilt worden van midde/klein land, rare Amerikanen toch. :D

Zover ik weet doen alle grote universiteiten in de VS er aan mee en hebben allemaal gratis online lessen, zoals Stanford, MIT, Harvard, Yale, etc.

[ Voor 8% gewijzigd door mad_max234 op 16-03-2014 13:17 ]

-Andere hobby- -


Acties:
  • 0 Henk 'm!

Verwijderd

:+
[YouTube: http://www.youtube.com/watch?v=Qst0n1aEGiY&feature=youtu.be]
soundcheck

[YouTube: https://www.youtube.com/watch?v=fzbxUQQfqd4]
channel one :9

[ Voor 41% gewijzigd door Verwijderd op 17-03-2014 14:34 ]


Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Ik hoor het klappen niet? Neem aan dat titel van filmpje iets te doen heeft met het filmpje.

Afroman, lekkere keuze muziek. :P

-Andere hobby- -


Acties:
  • 0 Henk 'm!

Verwijderd

klopt.. net weer begonnen, 1e test, pikt die geluid op .. ja dus.
nu in de code onderscheid gaan maken tussen 1 / 2 / 3 x in je handen klappen en achtergrond geluid, en dan de respectievelijke relais aan/uit zetten.
timing en interrupts :P

[ Voor 58% gewijzigd door Verwijderd op 16-03-2014 13:26 ]


Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Ik dacht even dat de relais moesten mee klapperen op de muziek of zo, maar ging puur om detecteren van het geluid, test geslaagd zo te zien. :)

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
Wat is de gebruikte microfoon als ik vragen mag ? Toevallig ben ik bij dat hoofdstuk van het Cookbook. Daar wordt een Sharp BOB-08669 breakout board for the Electret Microphone gebruikt. Paragraaf 6.7 p181 Dat boek als online pdf staat wel ineens op het net, lijkt me legaal ook. :? http://juniorfall.files.w...1/11/arduino-cookbook.pdf
Kon ik eerst ook niet online vinden behalve losse stukjes.

Heb trouwens vanmorgen deel 1 gekeken van Stanford, staan hier linkjes van de lessen:
http://webpages.uncc.edu/...GR4101-2013-08/notes.html
Inderdaad gratis online maar als je persoonlijk aanwezig wil zijn als "engineer in de dop" dan betaal je $14,650 per semester volgens dit : http://studentaffairs.sta...udents/tuition-fees_12-13
Wordt gebruik gemaakt van een RX63N :
Afbeeldingslocatie: https://support.exosite.com/hc/en-us/article_attachments/200072955/RDKRX63N_blue-300x259__1_.jpg
Ben echter nog niet zo ver (en bereid) om over te stappen. :) (en heb ook geen engineerplannen)

@Borroz
Lastig programmeren zeker om een klap herkenbaar voor de uC eruit te filteren van het achtergrondgeluid ?
Of valt het wel mee ?

Acties:
  • 0 Henk 'm!

Verwijderd

dat is dit eenvoudige breakoutbordje.
Afbeeldingslocatie: http://i.ebayimg.com/00/s/NjAwWDYwMA==/z/IkkAAOxyUI1TI7S1/$_3.JPG

( in NL ook te koop)

het aardige is dat er zowel een digitale 1 / 0 uitgang op zit, waarvan je de gevoeligheid in kan stellen, alsmede een analoge uitgang.
je kan dus bij een bepaald geluidsniveau (uitgang wordt 1) een interrupt aan je arduino aanbieden, waarop een interrupt routine gestart wordt die de feitenlijke analoge meting gaat doen

Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
mad_max234 schreef op zondag 16 maart 2014 @ 12:34:
Nee dat is als je ambassadeur wilt worden van midde/klein land, rare Amerikanen toch. :D

Zover ik weet doen alle grote universiteiten in de VS er aan mee en hebben allemaal gratis online lessen, zoals Stanford, MIT, Harvard, Yale, etc.
-->
kitao schreef op zondag 16 maart 2014 @ 14:09:
Heb trouwens vanmorgen deel 1 gekeken van Stanford, staan hier linkjes van de lessen:
http://webpages.uncc.edu/...GR4101-2013-08/notes.html
Inderdaad gratis online maar als je persoonlijk aanwezig wil zijn als "engineer in de dop" dan betaal je $14,650 per semester volgens dit : http://studentaffairs.sta...udents/tuition-fees_12-13
Wordt gebruik gemaakt van een RX63N :
[afbeelding]
Ben echter nog niet zo ver (en bereid) om over te stappen. :) (en heb ook geen engineerplannen)
Daar heb je het prijskaartje waar ik op doelde :P €10.536 per semester :X

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


Acties:
  • 0 Henk 'm!

  • R.G
  • Registratie: Januari 2009
  • Laatst online: 18:04

R.G

Hey Tweakers,

Voor een goede vriend, pas ik code aan van een arduino, deze code is afkomstig van een andere arudino dan het model wat hij heeft. Nadat ik de nieuwe firmware heb geflashed gaat de arduino als een gek piepen en brandt er een oranje en rood lampje.

Wanneer ik reflash krijg ik dit:
avrdude: stk500_getsync(): not in sync: resp=0x00

Wat is er aan de hand?

Is de opzet van arduino niet dat je een bootloader hebt en een flash en wanneer je foute code flashed dat je altijd weer kan herstellen omdat je die burned in bootloader hebt?
Of komt dit omdat de code in een loop zit en het flashen tegenhoudt door bijvoorbeeld delay?


Ik ben bang dat de code van het andere bordje andere pins gebruikt en misschien is hierdoor op verkeerde pinnen stroom gezet en hierdoor het bordje onbruikbaar is?

Graag inzicht hierin , want nu kunnen we niet verder

Goede dag Tweakers ^^,

Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Als je nou even aangeeft om wat voor soort Arduino's het gaat ;) Heb je overigens in de Arduino IDE de juiste Arduino geselecteerd voor je de sketch uploadde?

Sinds wanneer kan een Arduino trouwens piepen :P

Die foutmelding levert trouwens aardig wat resultaten op, o.a. http://forums.adafruit.com/viewtopic.php?f=21&t=32708 ;)

[ Voor 22% gewijzigd door Raven op 16-03-2014 14:41 ]

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


Acties:
  • 0 Henk 'm!

  • wesleytjuh
  • Registratie: November 2004
  • Laatst online: 21:52
Yep, klinkt alsof je een arduino Mega hebt geslecteerd ipv Uno(of hoe dat tegenwoordig ook heet) of andersom ;)

AccuSafe.nl: Alles voor je kistradio | Store | Kistradio FAQ | Onze video's | Onze versterker!


Acties:
  • 0 Henk 'm!

  • R.G
  • Registratie: Januari 2009
  • Laatst online: 18:04

R.G

Wow, ten eerste wat een snel antwoord dank je,

Yep die sites ben ik al afgegaan, we weten zeker dat we het juiste bordje selecteren
Atmega328 en de comport klopt ook ;)

Ik zal even moeten nakijken wat voor bordje het oorsponkelijk op werkt.

haha , ja hij piept echt :O niet normaal ook en instant :P

Acties:
  • 0 Henk 'm!

  • R.G
  • Registratie: Januari 2009
  • Laatst online: 18:04

R.G

Ah, Arduino Mega 2560 hiervan is de code , en ik heb het omgeschreven naar de 328
:) , laat zo zeggen omschrijven (totdat het compileerde) :P

Acties:
  • 0 Henk 'm!

  • R.G
  • Registratie: Januari 2009
  • Laatst online: 18:04

R.G

:D werkt alweer dank jullie!! :D,

Hou er rekening mee, ik doe dit via afstand met iemand heb de arduino niet zelf , of ja heb wel, maar niet waarmee de fout was :) maar nu net gelukt ;)

Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Je weet dat er rechtsboven elk door jou geplaatst bericht een wijzig-knopje staat? ;)

Maar wat was de oplossing?

[ Voor 9% gewijzigd door Raven op 16-03-2014 14:54 ]

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


Acties:
  • 0 Henk 'm!

  • R.G
  • Registratie: Januari 2009
  • Laatst online: 18:04

R.G

:) volgens mij reset knopje indrukken en houden dan upload klikken, wanneer compileren naar upload veranderd, dan knopje loslaten en usb pluggen en dan de juiste timing blijbkaar ;)

Maar, heb ik wel gelijk met dat concept van bootloader en flash? , ik kan de code zo erg aanpassen dat als ik de eeprom wis of overschrijf en andere leuke dingen doe, dat het altijd weer te herstellen is via de upload omdat de bootloader er nog is? ik gebruik de arduino isp als programmer ;)

Nog een vraagje het arduino is nogal wat werk om steeds een test opstelling te maken en dan te gaan testen kost erg veel energie en kracht,

Ik vond een programma virtual breadboard? of een kameraad vertelde over matlab

Hoe kan ik daarmee simuleren en een testopstelling maken?

Bijvoorbeeld iets met temperatuur?

[ Voor 69% gewijzigd door R.G op 16-03-2014 15:02 ]


Acties:
  • 0 Henk 'm!

  • wesleytjuh
  • Registratie: November 2004
  • Laatst online: 21:52
Als je via de ISP programmeert schrijf je het gehele flash, inclusief bootloader. De bootloader is voor programmeren via USB (eigenlijk serieel, via de ingebouwde USB -> Serial converter), via USB kan je via de arduino inderdaad zo goed als alles erin schieten, en daarna gewoon een ander programma erin schieten. De bootloader blijft in dit geval onaangepast.

Waarom gebruik je een arduino als ISP programmer?

[ Voor 6% gewijzigd door wesleytjuh op 16-03-2014 15:15 ]

AccuSafe.nl: Alles voor je kistradio | Store | Kistradio FAQ | Onze video's | Onze versterker!


Acties:
  • 0 Henk 'm!

  • R.G
  • Registratie: Januari 2009
  • Laatst online: 18:04

R.G

Ai, dat wist ik niet, ehm ik koos destijds gewoon die opties dat deed het :)
ik gebruik dat programma arduino 1.02 en bij bord selecteer ik die 328 en bij programmer heb je veel keuzes en aruido isp leek mij de keuze en dat werkt?

maar ik kan zo apparaat dus verklooien als ik daar via flash? hoe kan ik het flashen zonder dat ik de bootloader, usb serial niet om zeep help? zeg maar flashen zonder dat de boel niet meer geflashed kan worden.. ik las net nog wat over een reset hardware matig door tijdelijk te shorten (kortsluiting te maken )

Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Raven schreef op zondag 16 maart 2014 @ 14:38:
[...]
-->

[...]

Daar heb je het prijskaartje waar ik op doelde :P €10.536 per semester :X
Dat zijn geen online lessen waar we het over hebben, maar gewoon college op campus van Standford, natuurlijk kost dat geld, je krijgt dan ook gewoon erkend diploma. Jij werkt toch ook niet hele dag voor niks!

En kijk eens wat je hier betaald en word het onderwijs hier heel dik gesubsidieerd, jij en ik betalen dus elk jaar gewoon mee aan lesgeld van elke Nederlandse student, denk dat als je niet studeert er toch wel iets van 10K euro van "jou geld" via subsidies naar universiteiten gaat of de studenten zelf over leven gezien, kon/kan je maar beter gaan studeren en het geld zelf gebruiken wat je toch verplicht moet betalen. :D

Dat is in de VS niet of heel wat minder, daar betaald gewoon de student zelf alles en gaat er veel minder belastinggeld naar toe.

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
R.G schreef op zondag 16 maart 2014 @ 14:58:
Nog een vraagje het arduino is nogal wat werk om steeds een test opstelling te maken en dan te gaan testen kost erg veel energie en kracht,
Ik vond een programma virtual breadboard? of een kameraad vertelde over matlab
Hoe kan ik daarmee simuleren en een testopstelling maken?
Bijvoorbeeld iets met temperatuur?
Tnx, dat programma kon ik nog niet http://www.virtualbreadboard.com/
Staat korte video met wat uitleg
[YouTube: https://www.youtube.com/watch?v=YhMR9zkT2SM]
Een tmp zul je dan wrs moeten kiezen uit de menu-icoontjes, net als een led.
En waarschijnlijk zelf een temp. moeten invoeren. Maar persoonlijk vind ik het juist leuk om wat op te bouwen en in de praktijk is het misschien toch net iets anders. (zoals welk pootje doet wat etc)
Bijv bij dat blinkvoorbeeld uit de video. Is erg leuk allemaal maar als je niet weet wat de kathode is als je die led echt in je handen heb dan sta je dan.
Maar blijft leuk programma hoor :)

@Borroz,
ook bedankt voor de link. Binnenkort maar eens bestellen.

Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
mad_max234 schreef op zondag 16 maart 2014 @ 17:10:
[...]


Dat zijn geen online lessen waar we het over hebben, maar gewoon college op campus van Standford, natuurlijk kost dat geld, je krijgt dan ook gewoon erkend diploma. Jij werkt toch ook niet hele dag voor niks!

En kijk eens wat je hier betaald en word het onderwijs hier heel dik gesubsidieerd, jij en ik betalen dus elk jaar gewoon mee aan lesgeld van elke Nederlandse student, denk dat als je niet studeert er toch wel iets van 10K euro van "jou geld" via subsidies naar universiteiten gaat of de studenten zelf over leven gezien, kon/kan je maar beter gaan studeren en het geld zelf gebruiken wat je toch verplicht moet betalen. :D

Dat is in de VS niet of heel wat minder, daar betaald gewoon de student zelf alles en gaat er veel minder belastinggeld naar toe.
Dat weet ik, maar nu weet je wel hoe duur het daar voor studenten is :P Dat de belastingen daar veel lager zijn is bekend (daardoor zijn scholen zo duur neem ik aan?), maar dan nog is het verschil wel erg groot :X

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


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
Studeren zonder diplomadoel heb je bij een sollicitatie niet veel aan :/

Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
kitao schreef op zondag 16 maart 2014 @ 17:44:
Studeren zonder diplomadoel heb je bij een sollicitatie niet veel aan :/
Niet iedereen wilt een diploma halen, maar willen wel de kennis leren, de kennis kan je ook zonder diploma gebruiken. Wil je die wel zul je moeten studeren, en dat kost geld, net als nieuwe auto kopen, alleen verdien je bij eerste je geld dik terug en bij tweede schrijf je alleen maar af. :D


Als jij kan aantonen dat je zonder diploma meer waard bent dan studiebol met diploma dan zal slim bedrijf jou kiezen. Mensen zoals Jeri Ellsworth hebben als via zelfstudie aangeleerd, deuren gaan voor haar even hard open al heeft ze geen diploma.

Maar we dalen af, ging of kennis die beschikbaar was en niet over diploma's en banen. :)

@Raven
Je vergelijk dan wel top5 universiteit van de wereld, je papiertje is in ogen van veel mensen ook wel heel wat meer waard dan die van een gemiddelde Nederlandse universiteit.

Master bij TU Delft kost je ook iets van 16.000 dollar per jaar, is natuurlijk veel lager als MIT of Stanford maar gat is alweer stukken kleiner.


Even weer verder ontopic.
kitao schreef op zondag 16 maart 2014 @ 05:54:

Eigenlijk ook nieuw voor mij is de esplora, die had ik nog niet eerder gezien. Ziet er wel grappig uit.
[afbeelding]

The Esplora is different from all previous Arduino boards, in that it has inputs and outputs already connected to the board. This means that you don't need to know how to connect electronic sensors or actuators to use it as a result.

Soort kant en klaar kippetje ;)
Ik heb zoiets gisteren zitten maken. :D

Afbeeldingslocatie: https://dl.dropboxusercontent.com/u/69089896/foto/Nieuwe%20map/dis.jpg

Is testprintje voor mijn 2.4Ghz netwerk, moet draadloos bedieningspaneel worden.

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
mad_max234 schreef op zondag 16 maart 2014 @ 18:26:
Als jij kan aantonen dat je zonder diploma meer waard bent dan studiebol met diploma dan zal slim bedrijf jou kiezen.
[...]
Is testprintje voor mijn 2.4Ghz netwerk, moet draadloos bedieningspaneel worden.
Hangt ervan af welke bedrijfstak. Een stuurman mag zonder diploma niet varen en zo zijn er nog veel meer voorbeelden, chirurgen, piloten,etc.

Mooi gedaan hoor en mooi display, ik heb een apc220 maar nog geen display uitgeprobeerd groter als 16x2.
Op die esplora gebruiken ze een adafruit : http://www.adafruit.com/products/358
Zou ook wel zoiets willen proberen.

Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Uiteraard geldt dat in veel landen zo. Maar niet overal, kennis is niet alleen voor ons maar voor iedereen, zijn nog plekken waar men niet eens regels heeft voor autorijden of bootbesturen, ook die mensen kunnen grote baat hebben bij gratis kennis. Wellicht juist om het land verder te ontwikkelen en er wel regels voor op te maken. :)

kennis is altijd iets waard voor iemand ergens, is het niet voor jou of mij is het wel voor iemand aan de andere kant van de wereld. Vooral de landen die ver achterlopen hebben hier baat bij denk ik. En iedereen die wat wilt leren uiteraard, van jong tot oud. :)

-Andere hobby- -


Acties:
  • 0 Henk 'm!

Verwijderd

mad_max234 schreef op zondag 16 maart 2014 @ 18:26:


Ik heb zoiets gisteren zitten maken. :D

[afbeelding]

Is testprintje voor mijn 2.4Ghz netwerk, moet draadloos bedieningspaneel worden.
leuk.. is dat een touch screen ? en werkt het geheel op 1x18650 ?

Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
Nee is geen touchscreen, gewoon alleen TFT, werkt via een ILI9341 controller is SPI mode.

Ja werkt prima op een 18650, hij is niet helemaal vol, heb 3.6v nu, eigenlijk moet ik er even een 3v lp2950 tussen de 18650 en nrf24 zetten, zodat die netjes binnen de specs blijft lopen, maar <10% overvoltage durf ik wel aan, marges zijn ook weer niet zo krap. Ik weet niet hoelang die het op een 18650 volhoud, verwacht iets van 10 a 15 uur.

Maar weet nog niet zeker of ik hem remote maak, of gewoon met kabel of combinatie ervan, met simpel schakelaartje of mosfet kan je dat al voor elkaar krijgen.

Edit/
Had trouwens net weer eens de hele zooi opgeblazen, zelf het vcc van arduino mini pro pcb was stuk, verbranden mijn vingers ineens aan nrf24 chipje en rook eens wat raars, ja hoor losse vcc kabel tegen het printje en niet met labvoeding eraan maar met 18650 eraan, zelfs de kabel van de 18650 was heet.

Atmega328p stuk
tantaal gebasten
NRF24 stuk
En pcb ook stuk

Alles is weer gerepareerd, pypass aangelegd en alles vervangen en hij is weer zo goed als nieuwe. :)

[ Voor 28% gewijzigd door mad_max234 op 16-03-2014 22:18 ]

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • R.G
  • Registratie: Januari 2009
  • Laatst online: 18:04

R.G

:) oke, bedankt :D

virtual breadboard idd handig, denk dat ik na de trial wel kans is dat ik zoiets namaak of aanschaf? :P

maar wat moet ik dan kiezen ipv van arduino zodat ik bootloader niet overschrijf :) ??

Acties:
  • 0 Henk 'm!

  • wesleytjuh
  • Registratie: November 2004
  • Laatst online: 21:52
Gewoon enkel de USB kabel erin, juiste board selecteren, juiste com poort selecteren en op upload klikken. Dat is alles ;)

[ Voor 3% gewijzigd door wesleytjuh op 17-03-2014 00:02 ]

AccuSafe.nl: Alles voor je kistradio | Store | Kistradio FAQ | Onze video's | Onze versterker!


Acties:
  • 0 Henk 'm!

  • ResuCigam
  • Registratie: Maart 2005
  • Laatst online: 21:35

ResuCigam

BOFH

R.G schreef op zondag 16 maart 2014 @ 23:16:
maar wat moet ik dan kiezen ipv van arduino zodat ik bootloader niet overschrijf :) ??
De standaard setting is 'AVRISP mkII' bij mij.

We do what we must because we can.


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
Ik begrijp je vraag niet goed meer R.G. , probeer het eens rustig en duidelijk te omschrijven ?

Is voor mij tijdje geleden om te programmeren op een stand alone atm328 maar ik heb wel een paar linkjes voor je.
Als ik een standalone koop dan let ik erop dat het er 1 is met een bootloader. Dan verwissel ik de chip op de uno en schiet het gewenste programma erin en voila, kees is klaar.

Met een uno een mega ISP'en heb ik nog nergens gelezen. Een mega moet wel alle uno sketches kunnen draaien, ik heb daar zelf iig geen problemen mee gehad hoewel ik de mega nog niet veel gebruikt heb.

Als je trouwens een atm328 chip hebt zonder bootloader is ook geen ramp. Die kun je er dan met je uno erop zetten.
Heb gegoogeld op isp programming arduino:
http://arduino.cc/en/Tutorial/ArduinoISP
http://arduino.cc/en/Tuto...ToBreadboard#.UyYzzPl5PbQ
http://pdp11.byethost12.com/AVR/ArduinoAsProgrammer.htm
Die laatste link ziet er mooi ingewikkeld uit met hex-files enzo

Acties:
  • 0 Henk 'm!

  • R.G
  • Registratie: Januari 2009
  • Laatst online: 18:04

R.G

:) dank jullie wel zal het lezen en kom er op terug ;) prettige nacht allen

Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
Wacht effe.
Ik zie ineens wat :
Lijkt toch mogelijk te zijn een andere arduino uitvoering met een uno te programmeren
List of common used AVRs and how they should be connected to an Arduino Uno, for programming
http://pdp11.byethost12.com/AVR/ArduinoAsProgrammer.htm

Acties:
  • 0 Henk 'm!

  • C.44
  • Registratie: Juni 2001
  • Laatst online: 05-08-2020

C.44

TurboCharged Supra Driver

Zo heb je een thread waar je eigenlijk bijna 1 op 1 aan 't converseren bent en dan kijk je 3 dagen niet en staan er ineens 4 pagina's aan extra reacties 8)7 Anyways, ik wilde hier nog even op inhaken.
Oyster schreef op vrijdag 14 maart 2014 @ 15:54:
[...]


Dus feitelijk wil je beschikken over aandacht, maar mag daar geen tijd aan besteed worden? :p Dat kan natuurlijk niet. Zowel voor interrupts als polling zijn beide goede redenen te verzinnen om er gebruik van te maken. Zelf maak ik het meeste gebruik van een combinatie. Flags zetten in de ISR en de interrupts in de ISR tijdelijk uitschakelen. De flags worden dan afgevangen in de main loop. Zo kan je reentrancy en thread-safety goed in de gaten houden. Feitelijk wordt het gewoon een statemachine, in naar keuze mealy of moore opzet.

Een interessant gedachte-expiriment is trouwens een stoplicht. Op het eerste gezicht lijk je daar prima uit te kunnen komen met polling of ints. Maar je kan pas spreken over het begrijpen van polling of ints als je een werkende implementatie hebt gebouwd. Er zijn aardig wat valkuilen.
Ik heb zo ondertussen een simpel libje geschreven voor die rotary encoder waarbij ik inderdaad ook gebruik maak van 't zetten van flags in de ISR functies. Vervolgens verwerkt de eerstvolgende loop iteratie dan eventuele positieve (true) flags.
Ik vraag me soms af waar de haast religieuze discussies over interrupts en polling vandaan komen. :p Beide methodes kunnen een nut hebben in een toepassing. Het standaard bad practice noemen is reinste BS. Je kan trouwens prima meer dan één knop debouncen. Maar dat vereist wel wat meer inzicht en kennis over het gedrag van de inputs.
'T stukje wat je daar quote had je ietsje beter moeten lezen. Je kunt uiteraard meer dan 1 knop tegelijk debouncen. Je kunt het zelfs doen met de delay() functie (waar ik in die paar regels naar verwees). Je moet dan alleen niet proberen twee knoppen tegelijk in te drukken en dan een reactie op beide knoppen verwachten. Daar komt bij dat je met delay() je hele proces een x tijd stopzet puur om een knop te debouncen. Ik weet niet waar je vandaan haalt dat dat een standaard is maar het is in ieder geval bad practice.

Veel beter is debouncen met een timer. Eigenlijk is dat heel simpel en wellicht heb je gewoon m'n paar regels tekst verkeerd geinterpreteerd en tik ik deze lap tekst voor nop maar dat terzijde :+. Als je een knop wil debouncen met een timer moet je eigenlijk de millis() waarde opslaan als beginpunt op het moment dat de knop high word. Daarna ga je in elke daarop volgende loop iteratie kijken of de millis() waarde hoger is geworden dan de opgeslagen millis() waarde + een aantal ms. Is de knop dan nog steeds high dan kun je evt een flag setten of wat code gerelateerd aan die knop uitvoeren.

Groot voordeel is dat de loop nog een x-aantal iteraties doorloopt terwijl je die knop aan het debouncen bent. Je kunt dan evt. zelfs nog tig knoppen debouncen, in tegenstelling tot wat er gebeurt als je de delay() methode gebruikt.

Toyota Supra 3.0i Turbo Targa in Panther Black Mica - 300D || 30D || 10-20 || 50mm 1.8 mk1 || 18-55 || 17-85 || 75-300 || Giottos || Manfrotto || Cullmann || Kenko || Hoya


Acties:
  • 0 Henk 'm!

  • mad_max234
  • Registratie: September 2003
  • Laatst online: 07-02 11:09
kitao schreef op maandag 17 maart 2014 @ 00:45:
Wacht effe.
Ik zie ineens wat :
Lijkt toch mogelijk te zijn een andere arduino uitvoering met een uno te programmeren
List of common used AVRs and how they should be connected to an Arduino Uno, for programming
http://pdp11.byethost12.com/AVR/ArduinoAsProgrammer.htm
ISP sketch is gewoon avrisp programmer emulator/clone, dus alles wat avrisp kan programmeren kan arduino dan ook. ;)

avrdude bevat alle ondersteunde AVR's, niet arduino of de skecth. de isp sketch werkt samen met avrdude, in config file van avrdude staan alle ondersteunde avr's, als er eentje ontbreekt kan je hem zelf daar toevoegen.

Als je isp sketch dus in je arduino heb zitten is je arduino een avrisp programmer.

Edit
Dit is lijst die avrdude out of the box ondersteunt, dus ook arduino met isp sketch.

http://www.nongnu.org/avrdude/user-manual/avrdude_4.html

Behalve de Xmega's, die gebruiken PDI programmer en geen ISP.

[ Voor 11% gewijzigd door mad_max234 op 17-03-2014 13:09 ]

-Andere hobby- -


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
C.44 schreef op maandag 17 maart 2014 @ 11:32:
Zo heb je een thread waar je eigenlijk bijna 1 op 1 aan 't converseren bent en dan kijk je 3 dagen niet en staan er ineens 4 pagina's aan extra reacties.
Zal ongetwijfeld goed bedoeld zijn ;)
En was best informatief vond ik. Indien je trouwens nog wat willen naslaanop dat onderwerp, zie hfdst 6.10, 6.11 en 6.12. (Tracking the Movement of a Dial in a Busy Sketch)
Gaat over rec's in deze online pdf.
Heb dat zelf overigens nog niet uitgetest

@Mad_Max
Soms duizelt het me even met al die termen zoals ATM, AVR, ide, avrdude, etc. Niet dat ik ze niet kan terugvinden maar eigenlijk nooit zoveel bij stilgestaan.
De mega staat er inderdaad niet bij onderaan in mijn vorige link. Die heeft een atm2560 of de vorige versie een 1280.
Zover ik weet en heb ondervonden draait wel ieder uno (atm328)-programma op een mega en zitten er enkel wat meer pinnen op en meer geheugen en nog wat verschillen.
Pagina: 1 ... 44 ... 96 Laatste