dat snap ik dan weer nietmad_max234 schreef op vrijdag 14 maart 2014 @ 14:39:
Ik snap het punt niet van interrupts
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.
Verwijderd
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'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.
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.
Is het punt niet gewoon het volgendemad_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.
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?
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.
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.
Dat zeg ik nergens, hoe kan je dat uit mijn tekst halen.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.
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/
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.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.
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 ]
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.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.
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
Verwijderd
helemaal duidelijk nu en daar heb je natuurlijk 100% gelijk inmad_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.
Kijk daar hebben we het punt. 
"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.
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.
"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.
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 ]
Eigenlijk was dat niet een vraag van mij, maar goed, ik ben er wel verder op ingegaan.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.
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
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. 
PS
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.
PS
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.
Verwijderd
ik had dat boek in 3 seconden ook al gevonden..mad_max234 schreef op vrijdag 14 maart 2014 @ 15:50:
Als ik denk wat je vraag is dat niet echt toegestaan op tweakers.
Dus feitelijk wil je beschikken over aandacht, maar mag daar geen tijd aan besteed worden?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.
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 vraag me soms af waar de haast religieuze discussies over interrupts en polling vandaan komen.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
Verwijderd schreef op vrijdag 14 maart 2014 @ 15:52:
ik had dat boek in 3 seconden ook al gevonden..
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
Verwijderd
hoofdstuk 12 is in het licht van de huidige discussie interressant
prima boek
prima boek

[ Voor 39% gewijzigd door Verwijderd op 14-03-2014 16:06 ]
Legaal of illegaal, dat is de vraag?Verwijderd schreef op vrijdag 14 maart 2014 @ 15:52:
[...]
ik had dat boek in 3 seconden ook al gevonden..
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 ]
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 aansluitwerkVerwijderd schreef op vrijdag 14 maart 2014 @ 09:31:
[...]
wellicht domme opmerking maar je hebt toch wel de originele Ethernet lib verwijderd ?
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
Verwijderd
omdat beide library's van Ethernet.h gebruik maken en de compiler anders de 'originele' pakt ondanks dat je ethercard gebruikt.
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.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?
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 ]
Zou dat dan mijn probleem zijn? Eens proberen als we de originele Ethernet hernoemen.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.
Ik dacht dat millis alleen met aanzetten op 0 ging of met een overflow.Raven schreef op vrijdag 14 maart 2014 @ 16:05:
Stopt millis() met tellen als er een delay() langskomt?
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)
Verwijderd
haal die map nou gewoon is even weg uit je library zodat er alleen ethercard in staat.Bravo51 schreef op vrijdag 14 maart 2014 @ 16:28:
[...]
Zou dat dan mijn probleem zijn? Eens proberen als we de originele Ethernet hernoemen.
of het voor jou de oplossing is weet ik niet (kan ook een registersetting zijn voor UDP filter)

been there
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.
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.
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)
(in het geval van bestaande code)
[ Voor 7% gewijzigd door Verwijderd op 14-03-2014 16:49 ]
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.
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.
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 ]
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
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 nietmad_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.
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.)
Dan vraag ik mij af waarom het hier gewoon werktVerwijderd 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.
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
Verwijderd
dan begrijp ik je probleem niet.. of had je geen probleem meer met UDP ?
oh.. het was voor Bravo51 bedoeld zie ik nu
[ Voor 28% gewijzigd door Verwijderd op 14-03-2014 20:30 ]
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 stilstaatmad_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.
We do what we must because we can.
Je hoeft niet perse delay te gebruikenResuCigam 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
dit is het meest eenvoudige voorbeeld daarvan
http://arduino.cc/en/Tutorial/BlinkWithoutDelay#.UyM5lPl5PbQ
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.
Dat was idd de vraag en ik twijfelde eraan. Kon het zo snel echter even niet vinden. Morgen maar eens uittestenResuCigam 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.
Millis() lijkt in die testsketch van mad_max234 inderdaad gewoon door te lopen. Maar waarom klopt de gemeten tijd dan niet in
Zal zo nog eens kijken, maar volgens mij wordt er gewoon een seconde te weinig gemeten
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.
Members only:
Alleen zichtbaar voor ingelogde gebruikers.
Inloggen
Zal zo nog eens kijken, maar volgens mij wordt er gewoon een seconde te weinig gemeten
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
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.
@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.
Je bent net iets te laat, zie boven jouw bericht 
Dat codes ook cyclussen kosten weet ik, maar toch niet zó veel?
Na het nog eens bekijken van de code:
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)
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
Integer!
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
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 ]
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
Zo de sketch maar eens aanpassen. Dit zou het kunnen zijn.
edit: Dat was het
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.
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

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
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
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
En wéér net iets te laat
, zie edit in bericht boven die van jou
[ 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

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 ]
Ik ook hoor. Ik heb twee programma's gecombineerd : Fade en Blink with delay en Fade en Blink with millis.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
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 ]
Ik hoef in het resultaat geen getallen achter de komma, wat kan mij een verschil van een paar mW nou schelenmad_max234 schreef op vrijdag 14 maart 2014 @ 19:31:
![]()
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.
De formule is vrij simpel:

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
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.
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
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.
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 ]
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
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
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.
Je weet nu dus zeker met bevesting dat je formule juist is.
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 ]
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.
[ Voor 11% gewijzigd door mad_max234 op 15-03-2014 15:44 ]
Leuk dat gegoochel met haakjes hekitao 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
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?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.
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
Ja, daar had ik ook zo'n last van toen ik met C++ begon, maar dan met { }
Gaat nu gelukkig iets beter
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.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?
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.
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.
('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
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.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.
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 ]
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/
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.
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/
Daar gaat het natuurlijk helemaal niet om.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/
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.
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 ]
Yikes, dat is wel veel zeg, daar kun je als energieleverancier goed aan verdienenmad_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.
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.
Dan zoek je niet goed genoegkitao 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/
[ 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
@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.
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.
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.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/

Nog erger, dat het toegestaan zou zijn in je levensonderhoud te voorzien door educatief materiaal te maken en te verkopen.
In mijn wereld mag auteur nog altijd van zijn recht gebruik maken en zijn eigen verdien model bepalen.
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.
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.
Tja,daar heb je het almad_max234 schreef op zaterdag 15 maart 2014 @ 20:04:
Vind ik toch wel wat hoger staan dan arduino boekje.
"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.
Niet van MIT maar andere lezing, en niet specifiek arduino maar wel microcontroller. 
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.
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)
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.
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 ]
MIT en gratis?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.![]()
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.
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
@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.

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

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
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.

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

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
Uhm, er is al jaren gratis onderwijs via MIT.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
“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 ]
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
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
Nee dat is als je ambassadeur wilt worden van midde/klein land, rare Amerikanen toch. 
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.
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 ]
Verwijderd
[YouTube: http://www.youtube.com/watch?v=Qst0n1aEGiY&feature=youtu.be]
soundcheck
[YouTube: https://www.youtube.com/watch?v=fzbxUQQfqd4]
channel one
[ Voor 41% gewijzigd door Verwijderd op 17-03-2014 14:34 ]
Ik hoor het klappen niet? Neem aan dat titel van filmpje iets te doen heeft met het filmpje.
Afroman, lekkere keuze muziek.
Afroman, lekkere keuze muziek.
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
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
[ Voor 58% gewijzigd door Verwijderd op 16-03-2014 13:26 ]
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.
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 :

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 ?
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 :

Ben echter nog niet zo ver (en bereid) om over te stappen.
@Borroz
Lastig programmeren zeker om een klap herkenbaar voor de uC eruit te filteren van het achtergrondgeluid ?
Of valt het wel mee ?
Verwijderd
dat is dit eenvoudige breakoutbordje.

( 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
( 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
-->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.
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.
Daar heb je het prijskaartje waar ik op doeldekitao 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)

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
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 ^^,
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 ^^,
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
Die foutmelding levert trouwens aardig wat resultaten op, o.a. http://forums.adafruit.com/viewtopic.php?f=21&t=32708
Sinds wanneer kan een Arduino trouwens piepen
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
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!
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
niet normaal ook en instant
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

Ah, Arduino Mega 2560 hiervan is de code , en ik heb het omgeschreven naar de 328
, laat zo zeggen omschrijven (totdat het compileerde)
Je weet dat er rechtsboven elk door jou geplaatst bericht een wijzig-knopje staat? 
Maar wat was de oplossing?
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
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 ]
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?
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!
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 )
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 )
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!Raven schreef op zondag 16 maart 2014 @ 14:38:
[...]
-->
[...]
Daar heb je het prijskaartje waar ik op doelde€10.536 per semester
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.
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.
Tnx, dat programma kon ik nog niet http://www.virtualbreadboard.com/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?
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.
Dat weet ik, maar nu weet je wel hoe duur het daar voor studenten ismad_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.![]()
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.

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
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.kitao schreef op zondag 16 maart 2014 @ 17:44:
Studeren zonder diplomadoel heb je bij een sollicitatie niet veel aan
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.
Ik heb zoiets gisteren zitten maken.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

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.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.
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.
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.
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.
Verwijderd
leuk.. is dat een touch screen ? en werkt het geheel op 1x18650 ?mad_max234 schreef op zondag 16 maart 2014 @ 18:26:
Ik heb zoiets gisteren zitten maken.![]()
[afbeelding]
Is testprintje voor mijn 2.4Ghz netwerk, moet draadloos bedieningspaneel worden.
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.
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 ]
virtual breadboard idd handig, denk dat ik na de trial wel kans is dat ik zoiets namaak of aanschaf?
maar wat moet ik dan kiezen ipv van arduino zodat ik bootloader niet overschrijf
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!
De standaard setting is 'AVRISP mkII' bij mij.R.G schreef op zondag 16 maart 2014 @ 23:16:
maar wat moet ik dan kiezen ipv van arduino zodat ik bootloader niet overschrijf??
We do what we must because we can.
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
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
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
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
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
Anyways, ik wilde hier nog even op inhaken.
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.

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.Oyster schreef op vrijdag 14 maart 2014 @ 15:54:
[...]
Dus feitelijk wil je beschikken over aandacht, maar mag daar geen tijd aan besteed worden?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.
'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.Ik vraag me soms af waar de haast religieuze discussies over interrupts en polling vandaan komen.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.
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
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
ISP sketch is gewoon avrisp programmer emulator/clone, dus alles wat avrisp kan programmeren kan arduino dan ook.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
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 ]
Zal ongetwijfeld goed bedoeld zijnC.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.
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.