We do what we must because we can.
QFT! Dat gevoel dat je hebt als je voor het eerst een professioneel gefabriceerd PCB in je je haden hebt die je zelf hebt ontworpen is echt super.mad_max234 schreef op maandag 16 december 2013 @ 11:02:
[...]
Je zou ze maar de kost moeten geven, productie producten met arduino erin.
Wat jij fair vind moet jij weten, ik betaal het er in ieder geval niet voor, als ik er twee moet komen bij ada dan is het bijna al de moeite om zelf serie te maken. En wat is er leuker dan met groepje klein projectje te doen en aan einde van rit ook nog iets leuk te over te houden voor laag bedragje, dat geeft voldoening.
Kopen kan iedereen, en zelf maken is veel leuker.
All electric components run on smoke. If you let the smoke out, they won't work anymore.
Jup zijn leuke dingetjes. Geen officiële arduino maar minstens net zo bruikbaar.ResuCigam schreef op maandag 16 december 2013 @ 11:03:
Die pro micro van ebay is leuk zeg. Bedankt voor de tip, binnenkort eens bestellen
Mijn huisgenoot heeft er onlangs een besteld en het is echt bizar hoe klein die dingetjes zijn
Ok, via tools => board.mcDavid schreef op maandag 16 december 2013 @ 11:03:
Hoe zie je dat voor je? Het is een kwestie van het juiste bordje aanklikken in de IDE. Alles met 32u4 kun je "arduino leonardo" voor kiezen.
Ik wist eigenlijk helemaal niet hoe dat met andere bordjes gaat, nog niet verder gekeken als uno.
Ik zal het eens proberen als ik toch besluit om zo'n mini te bestellen.
Bedankt voor de tip.
Pl2303 is lekker goedkoop, maar mist DTR pin, chip heeft die mogelijkheid gewoon. Of je gaat voor iets duurder printje waar al wel DTR lijn beschikbaar is zonder mod.
Edit.
Of je gebruikt arduino bordje, maar dan wel zonder atmega328p erin, en dan RX, TX en reste verbinden en je kan de mini pro ook programmeren.
[ Voor 15% gewijzigd door mad_max234 op 16-12-2013 11:12 ]
Eigenlijk is daar weinig mis mee toch? 't Is niet dat het problemen geeft met licenties en qua hardware kosten maakt het ook niets uit. Ontwikkeling daarentegen gaat een stuk sneller, en het maakt het leven een stuk makkelijker als je firmware-updates wilt aanbieden.mad_max234 schreef op maandag 16 december 2013 @ 11:02:
[...]
Je zou ze maar de kost moeten geven, productie producten met arduino erin.
We do what we must because we can.
Niemand verbiedt jouw om een Arduino vast te solderen hoorResuCigam schreef op maandag 16 december 2013 @ 11:34:
Ik zou toch liever geen ontwikkelbordje in productie willen gebruiken: Volgens mij zijn gesoldeerde verbindingen op termijn toch net even wat beter dan die pinnetjes in slotjes.
Unix doesn't prevent a user from doing stupid things, because that would necessarily prevent them from doing brilliant things.
while true ; do echo -n "bla" ; sleep 1 ; done
SMD is niet mijn ding Max, ik zit nou al met een vergrootglas.mad_max234 schreef op maandag 16 december 2013 @ 11:10:
Bestel er dan ook pl2303(usb->serial) of zo bij voor het programmeren, kan je best stekkertje aanmaken. En als je handig bent met smd kan je DTR pin en 0.1uF in serie solderen en daar dan reset pin aanhangen dan heb je ook auto reset.
Pl2303 is lekker goedkoop, maar mist DTR pin, chip heeft die mogelijkheid gewoon. Of je gaat voor iets duurder printje waar al wel DTR lijn beschikbaar is zonder mod.
Edit.
Of je gebruikt arduino bordje, maar dan wel zonder atmega328p erin, en dan RX, TX en reset verbinden en je kan de mini pro ook programmeren.
Dat laatste gaat dus zo ?
http://www.rjanick.com/20...rduino-pro-mini-from-uno/

Ik heb er ook maar eentje gehaald, ik werd gek van dat gepriegel
We do what we must because we can.
Daar is niks mis mee, zolang eindproduct gewoon doet wat moet doen maakt geen bal uit wat er interne gebeurt, zal geen enkele consument ooit over klagen of weet van hebben.mcDavid schreef op maandag 16 december 2013 @ 11:13:
[...]
Eigenlijk is daar weinig mis mee toch? 't Is niet dat het problemen geeft met licenties en qua hardware kosten maakt het ook niets uit. Ontwikkeling daarentegen gaat een stuk sneller, en het maakt het leven een stuk makkelijker als je firmware-updates wilt aanbieden.
Wie heeft het over bordje?ResuCigam schreef op maandag 16 december 2013 @ 11:34:
Ik zou toch liever geen ontwikkelbordje in productie willen gebruiken: Volgens mij zijn gesoldeerde verbindingen op termijn toch net even wat beter dan die pinnetjes in slotjes.
Arduino is de software, en niet de hardware, je kan dus gewoon productie printje maken zoals je dat zou doen als je gewoon GCC zou gebruiken en daar dan ipv C code in zetten de arduino code, geen enkele verschil in hardware productie voor je product, het is puur software.
Edit/
@kitao
Ja dat is helemaal juist, dan gebruik je de usb naar serial van de arduino brodje. Is niks meer dan 3 draadje aansluiten(en vcc en gnd uiteraard).
En hoeft bij pl2303 niet DTR lijn te modden, TX en RX alleen volstaan prima. Je moet dan alleen zelf even op reset drukken tijdens het uploaden zoals we voorheen ook altijd moesten.
[ Voor 12% gewijzigd door mad_max234 op 16-12-2013 11:57 ]
Ik ben ook lekker bezig met Atmel spul:



Het is niet de mooiste printplaat, maar ben er toch wel blij mee, na die vele uren werk, het is mijn eerst printplaat design ooit
(Projectje is te volgen op http://www.gm7.nl/gajemee-nl-lasergame-tijdbom/)
Elektronicaprojecten van mij: http://www.gm7.nl
dat kost je dus weer een extra breakoutbordje toch ?
@Alexander
Gaaf hoor, 5xatm328 in 1 schakeling !!
Ik heb het nog niet helemaal doorgelezen maar ziet er goed uit.
Verwijderd
ziet er interessant uitalexandersamson schreef op maandag 16 december 2013 @ 11:52:
Iedereen is lekker bezig lees ik
Ik ben ook lekker bezig met Atmel spul:
wat is dat voor een bordje met die SD kaart ? mp3 speler ?
@borroz, het is een WAV module (.WAV shield voor Arduino eigenlijk). Hiermee kan je de Atmel 328 (of elke andere uC) als audiospeler gebruiken. Ook kunnen er eventueel bestanden worden geschreven naar de SD kaart (waar ook de .WAV bestanden op komen te staan).
Elektronicaprojecten van mij: http://www.gm7.nl
Hij had geen soldeerbout klein genoeg om direct aan de µC te solderen? Mij viel het bijvoorbeeld op de Aref niet aangesloten is, maar zou ik die nodig hebben dan zou ik toch niet direct naar een ander bordje gaan.mcDavid schreef op maandag 16 december 2013 @ 11:09:
Mijn huisgenoot heeft er onlangs een besteld en het is echt bizar hoe klein die dingetjes zijnAlleen had hij nét een bepaalde functie nodig van een pin die niet uitgevoerd is op die "pro micro" dus heeft hij er ook nog een (bijna twee keer zo grote) Arduino Micro bij genomen.
Ik heb het nog niet geprobeerd, maar volgens het Arduinoforum wordt in de latere IDE's de RTS samen met DTR geschakeld.mad_max234 schreef op maandag 16 december 2013 @ 11:10:
Pl2303 is lekker goedkoop, maar mist DTR pin, chip heeft die mogelijkheid gewoon. Of je gaat voor iets duurder printje waar al wel DTR lijn beschikbaar is zonder mod.
Hoe meer ik weet,
hoe meer ik weet,
dat ik niets weet.
En iedere IC moet je dus apart programmeren ?alexandersamson schreef op maandag 16 december 2013 @ 12:15:
Het was idd 5x 328, maar het is 4x328 en 1x90USB1286 geworden.
En dat doe je ook zelf ?
Hoeveel regels code heb je dan ongeveer bij elkaar ?
Daar denkt mijn baas anders overVerwijderd schreef op maandag 16 december 2013 @ 11:16:
wow.. wat is iedereen aktief op de maandagmorgen
All electric components run on smoke. If you let the smoke out, they won't work anymore.
Het is zo'n package zonder pootjes. Knappe jongen als je daar wat aan vast kunt solderen als er ook op de PCB geen sporen naar toe lopen.Nextron schreef op maandag 16 december 2013 @ 12:20:
[...]
Hij had geen soldeerbout klein genoeg om direct aan de µC te solderen? Mij viel het bijvoorbeeld op de Aref niet aangesloten is, maar zou ik die nodig hebben dan zou ik toch niet direct naar een ander bordje gaan.
DTR lijn zorgt voor de reset, RTS hoef je niks mee te doen, werkt overigens prima hier zo.Nextron schreef op maandag 16 december 2013 @ 12:20:
[...]
Hij had geen soldeerbout klein genoeg om direct aan de µC te solderen? Mij viel het bijvoorbeeld op de Aref niet aangesloten is, maar zou ik die nodig hebben dan zou ik toch niet direct naar een ander bordje gaan.
[...]
Ik heb het nog niet geprobeerd, maar volgens het Arduinoforum wordt in de latere IDE's de RTS samen met DTR geschakeld.
"The retrofitting process consists on soldering a 0.1μF disc capacitor between the DTR pin and the Reset signal."
http://playground.arduino.cc/Learning/AutoResetRetrofit
Ieder IC inderdaad apart programmeren en het leukste is nog als je het ene aanpast, kan dat invloed hebben op het andere. Nu probeer ik rekening te houden met een aantal zaken:
Ik maak gebruik van I2C met 1 master (328) en 4 slaves (3x 328, 1x 90USB1286)
Elke 25-50 milliseconden ongeveer wordt er door iedere slave een pakket met 32 Byte verzonden naar de master. Deze master checkt wat voor wie is en stuurt elke microcontroller ook weer een pakket met 32 Byte terug/door. Ook binnen die 25 a 50 milliseconden. Hierbij maak ik gebruik van de Wire (TWI/I2C) library van Arduino IDE zelf.
SPI is sneller en stabieler, maar ik hoef niets te streamen, I2C is dan simpeler
Voor de rest programmeer ik alles zelf, behalve grote blokken, zoals de drivers voor het LCD en de SDkaart lezer, dat zijn libraries die ik hier en daar heb aangepast.
Bij elkaar heb ik nu al iets van 30 kilobyte code, waarvan ongeveer 14 zelf geschreven. Dit is gecompiled, zoals het de uC in gaat.
[ Voor 8% gewijzigd door alexandersamson op 16-12-2013 12:34 ]
Elektronicaprojecten van mij: http://www.gm7.nl
Ok, doe maar dan.mad_max234 schreef op maandag 16 december 2013 @ 10:46:
@kitao
Mini pro koop ik voor ongeveer 3 euro, ik ga er weer paar bestellen binnenkort, moet ik er voor jou ook eentje bij doen? Duurt wel week of 2 a 3 voordat ik ze in huis heb.
En deze gelijk erbij
mad_max234 in "De EL-kroeg - Deel 3"
Hola, wacht even. Die loopt op 3.3V brandstof. Ik gebruik 5V.
Dus die laatste gaat niet door maar bedankt voor het aanbod.
Was trouwens nog een hele operatie:Verwijderd schreef op maandag 16 december 2013 @ 12:37:
leuk die 'biologische bom' met haargel YouTube: 'Biologic agent' gloeiende substantie
2 potten gel (van die goedkope "meeegaaa strong eXtreme hold" troep....) 1 geel en 1 blauw, kon groen niet vinden, dus mengen. Daarna een geschikte 'container' zoeken, kon niets vinden dat niet van glas (breekbaar) was, doorschijnend was en beetje leuk leek. Een SPA Citron fles leek het meest neutrale van alle frisdrankflessen, dus die maar genomen. Ben nog aan het bedenken hoe ik de uiteindes afplak, zodat het op een onherkenbare (als frisdrankfles) cilinder lijkt.
Die smurrie in een fles krijgen... Met een roomspuit xD
[ Voor 3% gewijzigd door alexandersamson op 16-12-2013 12:43 ]
Elektronicaprojecten van mij: http://www.gm7.nl
Verwijderd
kan je na een tijdje zo de intakte dop eraf halen.. leeg laten lopen en vullen met smurrie.
dan de dop weer verwarmen en erop klikken.. alsof die fles nooit open geweest is.
* bekende festival truuk
[ Voor 9% gewijzigd door Verwijderd op 16-12-2013 12:49 ]
Uiteraard loopt die op 3.3v, 5v is niet meer echt van deze tijd, alle moderne lcd, tft, sensoren, etc gebruiken max 3.3v. Dat je nu 5v gebruikt betekend niet dat je dat altijd kan doen.kitao schreef op maandag 16 december 2013 @ 12:34:
[...]
Ok, doe maar dan.
En deze gelijk erbij![]()
mad_max234 in "De EL-kroeg - Deel 3"
Hola, wacht even. Die loopt op 3.3V brandstof. Ik gebruik 5V.
Dus die laatste gaat niet door maar bedankt voor het aanbod.
Overigens kan je aan Xmega gerust 5v i/o hangen, officieel niet, maar in de praktijk geeft het geen problemen. Heb nog niemand gezien die er eentje stuk heeft gekregen door 5v te gebruiken. Ik heb stuk of 50 a 60 printjes met xmega in wild met 5v i/o draaien.
Gisteren heb ik even 3x3 cube gemaakt, lipo(4.2v) rechtstreeks op Xmega, leds rechtstreeks op de xmega zonder weerstand, AVR houden wel van beetje SM, beetje mishandelen vinden ze helemaal niet erg.

En gaan steeds meer geruchten dat Xmega toch wel 5v tolerant is(tot bepaalde hoogste natuurlijk, de clampdiode heeft zijn limits), sommige adverteren er tegenwoordig zelfs mee.
Edit/
Overigens kan je ook gewoon weerstandje ertussen zetten bij inputs en je bent officieel 5v tolerant als je dat wenselijk vind. 3.3v is hoog zat voor TTL logich als hoog te zien, 2.7v of hoger is zat, outputs hoef je dus niks te doen.
[ Voor 11% gewijzigd door mad_max234 op 16-12-2013 15:55 ]
Verwijderd

dat is wel weer netjes.
als je hier een arduino uno 'kit' koop (6,25 gratis verzonden) zit er gelijk een handleiding bij.
http://aeturnalus.com/robotics/poor-mans-breadboard-arduino/
Verwijderd
Ik bedoel dus zoiets:
https://www.sparkfun.com/products/8938
Elektronicaprojecten van mij: http://www.gm7.nl
Dat wist ik wel. Maar hoe zit het met aangestuurde componenten zoals rtc, 5mm-led, piezo, servo, dc-motor etc ?mad_max234 schreef op maandag 16 december 2013 @ 15:33:
Overigens kan je ook gewoon weerstandje ertussen zetten bij inputs en je bent officieel 5v tolerant als je dat wenselijk vind. 3.3v is hoog zat voor TTL logich als hoog te zien, 2.7v of hoger is zat, outputs hoef je dus niks te doen.
Dat er nu 3D-tv's zijn wil nog niet meteen zeggen dat ik gelijk mijn huidige tv maar het raam uitknikker.
Maar ok, ik ga ook niet moeilijk doen om een paar eurootjes, doe die er dan maar gelijk bij.
Knap hoor. Dat gaat mij niet lukken. Sommigen kunnen tekenen, anderen hebben een talenknobbel en weer een ander kan goed honkballen. Ik kan dus niet programmeren. Laatst ook, zit ik heel boek door te spitten, kom ik bij hoofdstuk 5, staat er : "schrijf nu zelf een programmaatje over dit en dat, met voorgaande opgedane kennis moet dat geen probleem zijn".alexandersamson schreef op maandag 16 december 2013 @ 12:28:
@kitao
Bij elkaar heb ik nu al iets van 30 kilobyte code, waarvan ongeveer 14 zelf geschreven. Dit is gecompiled, zoals het de uC in gaat.
Nou zal wel, maar dat ging dus echt niet lukken.
[ Voor 33% gewijzigd door kitao op 16-12-2013 17:53 ]
Verwijderd
Nou zal wel, maar dat ging dus echt niet lukken. '
en dan denk ik.. wat doe je in vredesnaam met een arduino, programmeerbare electronica
[ Voor 5% gewijzigd door Verwijderd op 16-12-2013 18:14 ]
Ik vraag gewoon aan jou of je programmaatje voor me schrijftVerwijderd schreef op maandag 16 december 2013 @ 18:01:
en dan denk ik.. wat doe je in vredesnaam met een arduino, al is over een ander hobby nagedacht
en dan geen blinkje natuurlijk
En hoezo andere hobby
Omdat ik niet goed ben in programmeren zou ik dus geen elektronica kunnen doen ?!

[ Voor 21% gewijzigd door kitao op 16-12-2013 18:08 ]
Verwijderd
je hebt een uno.. daar kan je voorlopig mee vooruit, er is nog zoveel uit te proberen.
nu omschakelen naar een nano of mini maakt eea alleen maar verwarrender voor jou.
voor die uno zijn veel meer stukjes code en projectjes te vinden.
@kitao
Sommige stukken code die andere schrijven zijn voor mij ook echt nog goochelkunsten hoor. Maar het is erg leerzaam om te kijken naar andermans code, want soms zie je ineens iets wat jij altijd net zo goed deed weliswaar, maar via een omweg en je ziet het iemand anders op een heel simpele en makkelijke manier doen. Maar om zo ver te komen en om dus uberhaupt te snappen wat anderen bedoelen met hun code is de basis zo erg belangrijk. Begin dus met die 'Blink' van arduino, laat hem eens 2x per seconde knipperen, probeer eens een morse signaaltje, bouw het steeds verder uit en probeer als je een bepaalde functie/code onder de knie hebt eens een andere functie of code. Kijk, zeker in het begin, niet teveel naar andermans programmeerwerk, die programmeren heel functioneel, heel korte onherleidbare variabelenamen, soms 3 geneste 'for()' loops met i,j en k als variabele die alle kanten op gaan en dan nog de bitwise operators die op hex zijn toegepast... Dat zijn dus breinbrekers en demotivators voor beginnelingen. Je snapt wat ik bedoel.. Dat is dus voor later. Begin simpel, houd het simpel, breid het uit en als je de basis snap, kan je kijken naar andermans code en je eigen code verbeteren
Elektronicaprojecten van mij: http://www.gm7.nl
Elektronicaprojecten van mij: http://www.gm7.nl
Verwijderd
ja ik begrijp dat je je daaraan stoor.. sorryalexandersamson schreef op maandag 16 december 2013 @ 18:20:
Waarom noemt iedereen mij sinds dat Diederik in het kabinet zit, mij SamsoM.... in het dagelijkse leven ook al(t' is Samson)
Dat is wel zo.Verwijderd schreef op maandag 16 december 2013 @ 18:08:
nu omschakelen naar een nano of mini maakt eea alleen maar verwarrender voor jou.
voor die uno zijn veel meer stukjes code en projectjes te vinden.
Eigenlijk heb ik dat al paar keer vermeld, deze keer wil ik niet teveel dingen tegelijk oppakken. Maar aan andere kant, als de uno een 328 heeft op 5V en de mini heeft dat ook hoe groot kan het verschil dan zijn behalve het formaat ????
@Alexander
Dat probeer ik ook. Ik heb boek 'Beginning C with Arduino". Volgens mij gaat die schrijver iets te snel in z'n aanname dat iedere JanKees dit meteen als helder water ziet.
Zo zag ik ineens ToggleLed staan vanuit het niets.
Kijk ik bij Arduino Reference kom je heel dat commandowoord nergens tegen.
@kitao
ToggleLed zal waarschijnlijk dan een zelfgemaakte functie zijn waarnaar verwezen wordt, gezien het hoofdlettergebruik. Staan er haakjes na die ToggleLed? Als in 'ToggleLed()' of 'ToggleLed(whateverWoord)' ?
Zo ja, dan is het een functie die je zelf moet maken als oefening of die je moet gebruiken uit een bepaalde sketch waar die al in zit.
Elektronicaprojecten van mij: http://www.gm7.nl
[ Voor 4% gewijzigd door Raven op 16-12-2013 18:31 ]
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
Elektronicaprojecten van mij: http://www.gm7.nl
Je begrijpt me denk ik verkeerd, zo goed als alle nieuwe IC zullen max 3.3v zijn, Xmega is relatief gezien voor ic's nieuw, is in de 3.3v tijdperk ontworpen. Ze gaan nu niet snel meer 5v ontwerp maken(is duurder), zal of 3.3v zijn of zelf lager, 5v is niet meer van deze tijd, is die content dus.kitao schreef op maandag 16 december 2013 @ 17:52:
[...]
Dat wist ik wel. Maar hoe zit het met aangestuurde componenten zoals rtc, 5mm-led, piezo, servo, dc-motor etc ?
Dat er nu 3D-tv's zijn wil nog niet meteen zeggen dat ik gelijk mijn huidige tv maar het raam uitknikker.
Maar ok, ik ga ook niet moeilijk doen om een paar eurootjes, doe die er dan maar gelijk bij.
Waarom eigenlijk 3.3v hoor ik je denken? of niet?
Omdat nieuwere productie proces ook kleinere transistors met zich meebrengt, gate van transistors zijn erg dun aan worden waardoor bij 5.5v de elektronen gaan lekken door de gate. Over tijdje zullen we max 2.5v hebben, zijn als chips die niet meer dan 1.8v verdragen. CPU in je pc kan niet eens 1.5v meer aan.
RTC, led, piezo allemaal geen probleem op 3.3v, zijn allemaal in 3.3v te verkrijgen of werken standaard zowel op 3.3v als 5v, 3.3v valt nog ruim binnen de TTL logic standaard, nieuwe IC's zoals RTC zullen eerder probleem hebben met 5v, is immers tijdperk van 3,3v, sommige ic's zullen 5v tolerant zijn op de i/o zoals ntf24l01 werkt op 3.3v maar i/o pinnen kunnen 5v verdragen, maar vele zullen 3.3v als max hebben.
Voor al het andere wat hogere voltage nodig heeft, zoals we dat altijd doen, transistor/mosfet levelshifter, etc, als het echt niet op de lagere aangestuurd kan worden. Zelfde verhaal als jij nu met 5v een 12v servo zou willen aansturen.
Maar snap je bezwaar wel, is net wat simpeler om alles op gelijke logic te houden.
Moet er 3.3 naar boven gepompt worden, dan wordt het al wat duurder en heb je bi-directionaal spul nodig, zoals een TXB0108 (chip).
Bij spanningsdelers met weerstanden heb je soms dat er wat meer vermogen nodig is, die de spanningsdeleruitgang richting nul trekt (hij trekt het dus niet en werkt niet meer) of de capaciteit van de draden gaat een rol spelen, als deze wat langer zijn, omdat er te weinig stroom loopt door de weerstand van die spanningsdeler, waardoor alle stroom wordt gebruikt om je draden te voorzien van lading en het signaal niet overkomt. Het gebeurt niet vaak, maar soms heb ik dat probleem wel met spanningsdelers en dat troubleshooten is irritant, omdat de klachten vaak vaag en onduidelijk zijn.
Als je een of beide chips (of vergelijkbaar) onder de knie hebt en je zorgt voor een klein voorraadje ervan, is 3.3 / 5 geen probleem meer
[ Voor 5% gewijzigd door alexandersamson op 16-12-2013 18:44 ]
Elektronicaprojecten van mij: http://www.gm7.nl
Kwestie van met je tijd meegaan dus. Ok, ik wil het best proberen. Het is geen android-Nexus5-telefoon-investering waar we het nu over hebben.
Over dat Toggle :
Pagina 84 en verder uit dit boek :
http://it-ebooks.info/book/1581/
You should try to write the code yourself at this point. You have enough knowledge under your belt to
get the job done. It would be a cop-out to just read the code in Listing 5-1 and move on. You will learn
much more if you try to write the code first.
Listing 5-1. Random Number Match
// define the pins to be used.
#define MAX 5000L
#define MIN 0L
#define TARGETVALUE 2500L
#define MAXRECYCLES 5
#define FOUNDITIOPIN 13
#define RECYCLEIOPIN 12
#define PAUSE 1000
int foundIt = FOUNDITIOPIN;
int recycle = RECYCLEIOPIN;
www.it-ebooks.info
chapter 5 ■ Program Loops in C 86
long targetValue = TARGETVALUE;
long randomNumber;
int recycleCounter = 0;
int counter = 0;
// the setup routine runs once when you press reset:
void setup() {
// initialize each of the digital pins as an output.
Serial.begin(9600);
pinMode(foundIt, OUTPUT);
pinMode(recycle, OUTPUT);
randomSeed(analogRead(0)); // This seeds the random number generator
}
// the loop routine runs over and over again forever:
void loop() {
while (counter != -1) { // Check for negative values
randomNumber = generateRandomNumber();
if (randomNumber == TARGETVALUE) {
Serial.print("Counter = ");
Serial.print(counter, DEC);
Serial.print(" recycleCounter = ");
Serial.println(recycleCounter, DEC);
digitalWrite(foundIt, HIGH);
delay(PAUSE);
digitalWrite(foundIt, LOW);
}
counter++;
if (counter < 0) { // We've overflowed an int
counter = 0;
recycleCounter++;
Serial.print("recycleCounter = ");
Serial.println(recycleCounter, DEC);
digitalWrite(recycle, HIGH);
delay(PAUSE);
digitalWrite(recycle, LOW);
}
if (recycleCounter == MAXRECYCLES)
exit(0); // End program
}
}
long generateRandomNumber()
{
return random(MIN, MAX); // Generate random numbers between 0 and one million
}
www.it-ebooks.info 87 chapter 5 ■ Program Loops in C
You should feel fairly comfortable when looking at the code. The setup() function initializes the baud
rate for communicating with the host PC. The I/O pins are set and the random number generator is
seeded. Inside the loop() function, the while loop tests to determine whether counter is negative; counter
is an int, so if the current value is 32,767 and it is incremented, then the value “rolls over” because the high
bit (or the sign bit) changes to a 1, which is interpreted as a negative number. This is what is meant by
“recycling the int.”
Because counter is initialized to 0 when the program starts, the first while test is logic true and we
enter the loop statement body. The code then calls the random number generator and checks the value
against the target value. If they match, then an appropriate message is sent to the PC over the serial link
and the “found it” LED is lit for a second. If no match is found, then counter is incremented. The if test then checks to determine whether counter “rolled over” to a negative value. If it did, then counter is reset to 0, the recycleCounter is incremented, a message is sent to the PC, and the recycle LED is lit for a second.
Finally, the code then checks to determine whether the recycleCounter equals the maximum number
of recycles we wish to run (i.e., equal to MAXRECYCLES). If so, then the call to exit() terminates the program.
Listing 5-1 is Sorta Dumb Code
The code in Listing 5-1 is SDC for several reasons, although it does perform as designed. First, look closely
at the code and ask yourself whether the while test will ever have a chance to see a negative value for
counter. The answer is No. The reason the while statement will never see a negative value is because we
check for that possibility within the while loop code itself and change it to 0 if it is negative. Therefore, you
might as well replace the while test with
while (true) {
which sets up an infinite loop for the while test. This is a truer statement than the phony test Listing 5-1
uses. (If something is always true, then why waste the resources to test it?) The fact that we have created an infinite loop won’t be a problem because we use exit() to terminate the program anyway. Think about it.
Second, any time you see a repeating code pattern, try to think of ways to simplify it. In our case, the
statements:
digitalWrite(foundIt, HIGH);
delay(PAUSE);
digitalWrite(foundIt, LOW);
anddigitalWrite(recycle, HIGH);
delay(PAUSE);
digitalWrite(recycle, LOW);
are almost the same. Why not replace these statements with
ToggleLED(foundIt, PAUSE);
and
ToggleLED(recycle, PAUSE);
and write the new function:
void ToggleLED(int whichLED, int howLong) {
digitalWrite(whichLED, HIGH);
delay(howLong);
digitalWrite(whichLED, LOW);
}
====================================
Gaat mij te snel hoor.
Ik vroeg me ook al af of Toggle nu een commando is of een Var. Maar ik zie het nergens als Var gedefinieerd staan.
Er staat volgens mij toch echt dat het een statement is zoals digitalWrite
Die de laatste 5 regels van je code.
Probeer het zelf maar eens: maak dit:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| void setup(){ pinMode(13, OUTPUT); //Led pin initialiseren } void loop(){ ThisIsAFunction(); // Functie aanroepen } void ThisIsAFunction(){ // Dit is de functie digitalWrite(13, HIGH); delay(200); digitalWrite(13, LOW); delay(200); } |
Heb dit even uit botte hoofd lopen typen, Maar volgens mij klopt het zo.
probeer eens een sketch met dit.
Elektronicaprojecten van mij: http://www.gm7.nl
Je mist een delay na digitalWrite(13, LOW). Daardoor gaat het lijken of de LED niets doet, omdat hij te snel uit en aan gaat.alexandersamson schreef op maandag 16 december 2013 @ 18:50:
Heb dit even uit botte hoofd lopen typen, Maar volgens mij klopt het zo.
Elektronicaprojecten van mij: http://www.gm7.nl
Alle software wat op uno werkt werkt ook op mini pro, zijn immers identieke chips.Verwijderd schreef op maandag 16 december 2013 @ 18:08:
of je gaat voordat je weer is gaat klagen gewoon nog veel meer lezen en prutsen.
je hebt een uno.. daar kan je voorlopig mee vooruit, er is nog zoveel uit te proberen.
nu omschakelen naar een nano of mini maakt eea alleen maar verwarrender voor jou.
voor die uno zijn veel meer stukjes code en projectjes te vinden.
Of je moet iets met de atmega162u gaan doen, maar denk niet dat je daarop doelde.
Dus alle voorbeelden die op uno werkt kan je direct naar mini pro uploaden zonder enkele aanpassing of zo.
Enige wat verschilt is de vorm en ontbreken van serial chip, zelfs ledje op pin 13 in aanwezig.
We do what we must because we can.
Mee eens
Elektronicaprojecten van mij: http://www.gm7.nl
Vandaag dit boek uit de bieb gehaald :

Ik heb nog een stuk of 40 discrete IC's liggen om weer eens wat mee te oefenen.
[ Voor 54% gewijzigd door kitao op 16-12-2013 19:22 ]
Ik heb net een crosskabeltje gemaakt voor tussen de Ft323 en de pro mini. Nu kan ik bevestigen dat RTS net als DTR vooraf voor een reset zorgt.mad_max234 schreef op maandag 16 december 2013 @ 12:28:
DTR lijn zorgt voor de reset, RTS hoef je niks mee te doen, werkt overigens prima hier zo.
Heeft iemand enig idee of er verschil is tussen deze twee:

Beide hebben een Atmega 328P, dus effectief zal het weinig uitmaken, maar de layout van de linker leek me beter uitgedacht vanwege de ICSP-header en wel-uitgelijnde pinnen. Nu ik hem in mijn handen heb zie ik pas dat er twee ICSP-pinnen zijn verwisseld

Hoe meer ik weet,
hoe meer ik weet,
dat ik niets weet.

(Plaatje linkt naar product zelf met omschrijving)
Een teensy3.1
5V tolerant 3.3V bordje met lekkere specs op postzegelformaat
64k RAM, ideaal als je kleuren tft's wil aansturen of veel arrays moet bufferen
wordt mn volgende bestelling, om eens te kijken
[ Voor 13% gewijzigd door alexandersamson op 16-12-2013 19:34 ]
Elektronicaprojecten van mij: http://www.gm7.nl
Op die manier, dacht dat je bedoelde dat RTS ook nog nodig was tegenwoordig samen met DTR lijn, maar je bedoeld dat je kan kiezen of DTR of RTS. Als je DTR gebruikt hoef je niks met RTS te doen, en vice versa.Nextron schreef op maandag 16 december 2013 @ 19:23:
[...]
Ik heb net een crosskabeltje gemaakt voor tussen de Ft323 en de pro mini. Nu kan ik bevestigen dat RTS net als DTR vooraf voor een reset zorgt.
Heeft iemand enig idee of er verschil is tussen deze twee:
[afbeelding][afbeelding]
Beide hebben een Atmega 328P, dus effectief zal het weinig uitmaken, maar de layout van de linker leek me beter uitgedacht vanwege de ICSP-header en wel-uitgelijnde pinnen. Nu ik hem in mijn handen heb zie ik pas dat er twee ICSP-pinnen zijn verwisseld.
Alleen layout zal echt verschillen, zoals je zelf al zegt zal verder niet veel verschil in zitten, zijn meerdere versies in omloop, kies er eentje die best bij je past. Lol, iemand liggen slapen toen printje getekend heeft, icsp gebruik ik nooit, hang de programmer altijd aan de pinnen.
@alexandersamson
AVR hebben tegenwoordig ook al 32KB ram en 384KB flash, denk dat eerdaags 64KB met 512KB flash uit zal komen. Atmel wilt de avr nog niet naar het graf dragen, hoop op 64Mhz of 100Mhz avr, want zo traag zijn ze namelijk niet, klok voor klok doen ze helemaal niet zoveel onder voor cortex, iets van 25%. 100Mhz avr met FPU en 32bit registers kan nog gewoon meekomen met alle M3 en lager en zelfs aantal M4 chipjes die niet te hoog geklokt zijn zoals die van de teensy 3.1.
[ Voor 16% gewijzigd door mad_max234 op 16-12-2013 21:03 ]
De pinout wil nog weleens afwijken ja, zeker bij verschillende kloons. Die "Pro micro" is nieteens een officieel arduino-ontwerp, die is oorspronkelijk door Sparkfun in elkaar gefietst. Maar echt uitmaken doet dat niet aangezien er toch geen shields voor zijn.Nextron schreef op maandag 16 december 2013 @ 19:23:
[...]
Ik heb net een crosskabeltje gemaakt voor tussen de Ft323 en de pro mini. Nu kan ik bevestigen dat RTS net als DTR vooraf voor een reset zorgt.
Heeft iemand enig idee of er verschil is tussen deze twee:
[afbeelding][afbeelding]
Beide hebben een Atmega 328P, dus effectief zal het weinig uitmaken, maar de layout van de linker leek me beter uitgedacht vanwege de ICSP-header en wel-uitgelijnde pinnen. Nu ik hem in mijn handen heb zie ik pas dat er twee ICSP-pinnen zijn verwisseld.
Tja ik wil je niet ontmoedigen, maar die cursus programmeren heb je wel nodig als je een Arduino wil gebruiken.kitao schreef op maandag 16 december 2013 @ 19:13:
Tja, ik doe m'n best, liefst iedere dag half uurtje, maarre ... ....blijft wel electronica hobby hè, en geen cursus computer programmeren
Voor het toepassen van een Arduino heb je aan de ene kant hardware kennis nodig en aan de andere kan moet je ook kunnen programmeren om de hardware aan te sturen. Juist omdat het hard en software is is het juist zo leuk en afwisselend om met arduino's te spelen.
Ik (en anderen hier af en toe ook) vergeet af en toe nog wel eens wat voor basis kennis minimaal nodig is om een beetje leuk met de arduino te spelen, deze oude lul heeft als ik zo terug kijk best veel geleerd op school, van analoge elektronica tot microprocessor techniek. En qua programmeren zowel low level assembly (z80/8086) als structured programmeren (Turbo Pascal, Java bestond nog niet). Dat maakt een groot deel wel erg vanzelfsprekend voor mij.
All electric components run on smoke. If you let the smoke out, they won't work anymore.
Dat gaat dan nog vies tegenvallenalexandersamson schreef op maandag 16 december 2013 @ 19:30:
[afbeelding]
(Plaatje linkt naar product zelf met omschrijving)
Een teensy3.1
5V tolerant 3.3V bordje met lekkere specs op postzegelformaat
64k RAM, ideaal als je kleuren tft's wil aansturen of veel arrays moet bufferen
wordt mn volgende bestelling, om eens te kijken
Als je echt wilt bufferen heb je bijvoorbeeld zoiets nodig: http://www.embeddedartist...ts/boards/lpc4088_qsb.php. Nog meer onboard SRAM, maar belangrijker 32MB extern RAM geheugen met 32-bit databus ernaartoe.
Dat lijkt een echte engineersoplossing, waarom makkelijk doen als het moeilijk kanVerwijderd schreef op maandag 16 december 2013 @ 21:45:
[afbeelding]
een arduino gehoorapparaat .. het kan
All electric components run on smoke. If you let the smoke out, they won't work anymore.
Stuur nu 4 shiftregisters (hc595) aan en die uitgangen lopen weer door naar een een pnp darlington array(UDN2981). Helderheid kan ik nu ook regelen dmv de OE ingang van de shiftregister met pwm aan te sturen. Ik wil straks de helderheid regelen met een LDR zodat de helderheid altijd correct is.
Nu alleen nog een op een print solderen en een mooie behuizing op de kop zien te tikken
Bl44t
Ah ik zie het, de kleurdiepte. Met dat voorbeeld TFT wat je noemde heb je 1,29 MB nodigSissors schreef op maandag 16 december 2013 @ 21:57:
Dat gaat dan nog vies tegenvallen. Kleuren TFTs zijn standaard 240*320, met 16-bit per pixel = nog geen eens in de buurt van wat je nodig hebt als je het complete TFT in je geheugen wil hebben, wat wel handig is.
Als je echt wilt bufferen heb je bijvoorbeeld zoiets nodig: http://www.embeddedartist...ts/boards/lpc4088_qsb.php. Nog meer onboard SRAM, maar belangrijker 32MB extern RAM geheugen met 32-bit databus ernaartoe.
Kleurdiepte vergeten.. Dat maakt dit bordje inderdaad bijna net zo praktisch als alle andere om wat kleuren weer te geven.
Maar dat bordje wat je mij stuurde, wat een beest is dat zeg. Daar kan je vrijwel een compleet OS op draaien, al ik mijzelf dan niet afvraag of het simpeler is om dan een RPi te nemen, Al een RPi er langer over zal doen om op te starten en dit ding vrijwel meteen loopt bij aanzetten. Wel grappig om te zien dat er een XBee direct op geprikt kan worden.
Elektronicaprojecten van mij: http://www.gm7.nl
Dat besef ik wel hoor en nu ik toch wat meer vrije tijd heb kijk ik ook meer naar het software gedeelte. Soms moet je gewoon wel een sketch zelf aanpassen anders gebeurt er simpelweg niks.SnowDude schreef op maandag 16 december 2013 @ 21:37:
Voor het toepassen van een Arduino heb je aan de ene kant hardware kennis nodig en aan de andere kan moet je ook kunnen programmeren om de hardware aan te sturen. Juist omdat het hard en software is is het juist zo leuk en afwisselend om met arduino's te spelen.
Wat ik bedoelde is dat ik me niet vast ga haken aan één boekje en kost wat kost alles wil begrijpen zonder verder te gaan.
Neem nu dat ToggleLed.
In het hoofdstuk daarna kom je ineens dit tegen :
Function Type Specifier
Most functions return a Boolean value that is logic true if it is a leap year and logic false if not.
Therefore, the purpose of a function type specifier is to define the type of data that is
returned when the function is called. The type of data returned from the function can be whatever data
type you wish (e.g., double, long, char, byte, etc.).
If no value is returned from the function, then the type specifier must use the void keyword.
Dus eigenlijk behandelt hij pas in hfdst 6 wat in hfdst 5 al gebruikt werd en had Alexander gelijk met dat het een functie is.
Ik neem dit boek gewoon door en dan begin ik weer opnieuw met ander boek. Met een beetje geluk en ondanks mijn niet-aanleg ervoor zal het ooit wel eens duidelijk worden.
En dan maar hopen dat ze niet weer een andere taal gaan verzinnen.
Waar verwijs jij naar OcGuru ? Ik heb iets gemist waarschijnlijk.OcGuru schreef op dinsdag 17 december 2013 @ 00:09:
Zo, heb de logica nu werkend op breadboard voor mijn vfd klok.
Vanmorgen mijn projectje RC-Auto beëindigd. Ik zet hier even een samenvatting als jullie niet erg vinden.
Benodigdheden :
- Draadgestuurd speelgoedautootje
- Motorshield
- Uno
- APC220 setje
- Minibreadboard opplakbaar
- 4 x 1.5 V batterij voor motorshield
- 9V batterij voor uno
- Montagedraad, kroonsteentjes en paar jumpwires.
- Besturingsprogramma
Programma is hier terug de vinden en meer over de APC in dit topic.
Besturing gaat via de seriële monitor, zoals toets 8 voor vooruit, toets 4 voor links en s, m , f voor verschillende snelheden, etc. (zie programma)
Monitor op 9600 Baud zetten en op no line ending.
Duurt soms even voordat de APC pakt, maar dat is enkel in het begin
Paar foto's die te vergroten zijn door erop te klikken :




Overigens heb ik dat programma zelf in elkaar geplakt dus het is ook niet zo dat ik er helemaal niks vanaf weet
Autootje kan natuurlijk nog verder gepimpt worden, vooral de zijkant is niet erg mooi met dat witte hout in de wielkasten en er kan nog meer toeters en bellen op worden gezet zoals verlichting en sirenes.
Voor robot lijkt me dit minder geschikt, draaicirkel is nogal groot en besturing gaat grof.
Dat was het dan, projectje kitao tot een einde gebracht
Op naar de volgende
edit: Iedereen trouwens bedankt voor de geboden hulp. Met name Raven voor het APC gedeelte.
| Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72
Elektronicaprojecten van mij: http://www.gm7.nl
Voor Arduino is, althans dat vind ik, dit nog steeds de beste en volgens mij ook goedkoopste oplossing om wifi te realiseren op een Arduino: www.lucadentella.it/en/2012/12/09/enc28j60-e-arduino-11/mcDavid schreef op dinsdag 17 december 2013 @ 15:46:
Op Ebay heb je voor 3 dollar een USB-WiFi-dongeltje. Bestaan er soortgelijk geprijsde oplossingen voor Arduino? Ik kom op Ebay alleen maar modules van rond de 30-40 dollar tegen. Een Spark Core zou een optie zijn maar is ook 30 dollar.
TL;DR: Ethernetshield + als client ingestelde pricewatch: TP-Link TL-WR702N De Arduino merkt niks van die mini-router dus je kan gewoon de standaard ethernet-library en examples gebruiken.
[ Voor 8% gewijzigd door Raven op 17-12-2013 19:04 ]
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
Zoals eerder gezegd kan arduino daar niet mee overweg.mcDavid schreef op dinsdag 17 december 2013 @ 15:46:
Op Ebay heb je voor 3 dollar een USB-WiFi-dongeltje. Bestaan er soortgelijk geprijsde oplossingen voor Arduino? Ik kom op Ebay alleen maar modules van rond de 30-40 dollar tegen. Een Spark Core zou een optie zijn maar is ook 30 dollar.
Het is een 3 euro chip met veel te weinig geheugen.
De usb dingen die je ziet zijn ofwel voor de raspberry ofwel voor pc, media speler etc.
Die stickjes zijn o.a. zo klein omdat de hele controle logica in de pc/apparaat zit. In linux is dat lekker eenvoudig op te lossen met generieke drivers.
Als je graag (relatief goedkope) wifi wilt kan ik je deze router aanbevelen;
http://www.amazon.com/TP-...ne4-android/dp/B005VEJ3GM
Wat je ermee kunt doen is een bridge maken met je wifi router in huis. De tp-link werkt dan als een client en de arduino krijgt zijn internet via de ethernet poort (of usb, lees verder) van de tp-link.
Er zijn twee versies: TL-WR702N en de TL-WR703N.
Enige verschil is dat de 703 een usb poort heeft waar je je arduino aan kunt hangen en de router dan als web server de arduino aan stuurt als slave (leuk voor simpele aan-uit projectjes).
Mocht je niet anti-China zijn (dit zijn de 703 versies): klik of klik
Mocht je er verder geen verstand van hebben, bekijk dan de volgende links;
NL site:
http://mancave.conrad.nl/...-goedkope-wifi-interface/
EN site:
http://dangerousprototype...ield-wireless-capability/
Volgens de mancave site kun je deze bridge in de interface instellen, maar ik persoonlijk heb er openwrt op gezet
Persoonlijk zou ik zeggen pak de 703. Het scheelt iets van 1 euro in prijs, maar op de 703 kun je openwrt zetten.
Edit: Raven was net iets sneller, maar voor de volledigheid laat ik mijn comment staan.
[ Voor 1% gewijzigd door foekie01 op 17-12-2013 17:42 . Reden: Minor ]
Gebruik atmega328p, enc28j60 en nrf24l01 om als internet bridge te werken tussen 2.4Ghz netwerk en bestaande router. Is wel geen wifi maar je kan wel gewoon overal in huis je data van internet halen of verzenden. Kosten zijn iets van 10 euro voor de bridge.
edit/
Per 10 kosten de nrf24l01+ printjes 8 euro ongeveer, kan je 10 arduino's mee verbinden met internet. Uitbreiden kost dus erg weinig, als je dat met wifi shield of router zou moeten doen is hobby wel erg duur aan het worden.
[ Voor 23% gewijzigd door mad_max234 op 17-12-2013 17:59 ]
Verwijderd
wat is het bereik ca ??
[ Voor 32% gewijzigd door Verwijderd op 17-12-2013 18:53 ]
Ik wil een GPS-logger maken die bij het verkrijgen van een wifi-verbinding automatisch zijn logs upload. Maar misschien moet ik eens kijken naar andere verzendmethodes, misschien kan ik wat verzinnen met 433MHz zendertjes, of zou dat te traag zijn?
Verwijderd
maar wat heb je aan wifi lokatie data ? je moet loggen of dat accesspoint open staat evt. gelijk een tooltje startenmcDavid schreef op dinsdag 17 december 2013 @ 19:06:
Ik zat juist te denken aan arduino ipv raspberry pi ivm het energieverbruik, dus alle opties met externe adapters enzo vallen af.
Ik wil een GPS-logger maken die bij het verkrijgen van een wifi-verbinding automatisch zijn logs upload. Maar misschien moet ik eens kijken naar andere verzendmethodes, misschien kan ik wat verzinnen met 433MHz zendertjes, of zou dat te traag zijn?
overigens kan je geen volwaardige wifi verbinding opzetten met die printjes hierboven, dus ik denk dat je beter kan gaan voor de PI of een 'echte' wifishield gebruiken op de arduino
[ Voor 13% gewijzigd door Verwijderd op 17-12-2013 19:17 ]
Elektronicaprojecten van mij: http://www.gm7.nl
Bereik hangt af van welke module je neemt, goedkope modules met ingebouwde antenne hebben niet zo gek groot bereik, in huis haal ik 1 verdieping. Maar heb meshnetwerk, dus kan net zover gaan als je wilt, gewoon extra repeater maken. Buiten in line of sight halen ze 50meter of meer, tot 100meter.Verwijderd schreef op dinsdag 17 december 2013 @ 18:47:
interessant, ik heb inmiddels wel dit erover gevonden.
wat is het bereik ca ??
Dit principe, al gebruik ik niet zijn sketch of libary of zo, maar wel zijn principe.
http://maniacbug.wordpress.com/2012/03/30/rf24network/
Dit is ook handige pagina.
http://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo
Edit/
Van jou link:
"The nRF24L01 module is worked at 3V voltage level , so the Arduino 5V pins may destroy it , so we need to add some resister to protect the module – using the 10K and the 15K resister to reduce the voltage is a usual method. "
Dat is niet correct, vanuit datasheet:
Input voltage:
VI = -0.3 5.25 V
Supply voltages
VDD = -0.3 3.6 V
VDD Supply voltage if input signals >3.6V
min 2.7v, typ. 3.0v, max 3.3v
Of te wel 5v tolerant bij VDD van 3v, en niks nodig aan weerstanden, mag de I/O van 5v arduino direct aan de nrf24l01 hangen, voeding van de nrf24l01 mag niet hoger zijn dan 3.6v. Geldt voor zowel plus en niet plus versie.
[ Voor 28% gewijzigd door mad_max234 op 17-12-2013 20:12 ]
Ik ben hier ook mee bezig. Ben nu bezig een soort simpel DHCP op te zetten voor de node nummers (altijd opstarten als node 05, daarna nieuw node nr opvragen en het ontvangen node nr in de eeprom zetten), ook een calibratie en configuratie (calibratie van de interne 1.1 spanning, meet interval etc). En als laatste wil ik bepaalde nodes als repeater voor klik-aan-klik-uit laten werken. Op deze manier hoop ik nog maar 2 software versies te hoeven onderhouden (server + universele client). Ik gebruik wel de maniacbug library, al wil ik in een verre toekomst hier nog wel wat aan veranderen.mad_max234 schreef op dinsdag 17 december 2013 @ 20:01:
[...]
Bereik hangt af van welke module je neemt, goedkope modules met ingebouwde antenne hebben niet zo gek groot bereik, in huis haal ik 1 verdieping. Maar heb meshnetwerk, dus kan net zover gaan als je wilt, gewoon extra repeater maken. Buiten in line of sight halen ze 50meter of meer, tot 100meter.
Dit principe, al gebruik ik niet zijn sketch of libary of zo, maar wel zijn principe.
http://maniacbug.wordpress.com/2012/03/30/rf24network/
Dit is ook handige pagina.
http://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo
Edit/
Van jou link:
"The nRF24L01 module is worked at 3V voltage level , so the Arduino 5V pins may destroy it , so we need to add some resister to protect the module – using the 10K and the 15K resister to reduce the voltage is a usual method. "
Dat is niet correct, vanuit datasheet:
Input voltage:
VI = -0.3 5.25 V
Supply voltages
VDD = -0.3 3.6 V
VDD Supply voltage if input signals >3.6V
min 2.7v, typ. 3.0v, max 3.3v
Of te wel 5v tolerant bij VDD van 3v, en niks nodig aan weerstanden, mag de I/O van 5v arduino direct aan de nrf24l01 hangen, voeding van de nrf24l01 mag niet hoger zijn dan 3.6v. Geldt voor zowel plus en niet plus versie.
Mesh netwerk werkt al een paar maanden, verschillende temperatuur metingen, bewegings melder,stroom verbruik meter, alles opgeslagen in mysql database. "DHCP" werkt ook, maar er moet nog een mooie webinterface omheen en een koppeling met mysql gemaakt worden om de node nummers en configuratie info op te slaan. De calibratie en configuratie werkt nog niet, voorlopig moet alles nog in de software gecompiled worden.
Het server gedeelte van de mesh is een mini arduino aangesloten aan een linux server met een perl script. Heb een simpele web interface gebouwd met highcharts om de grafieken te laten zien.
Heb zelf een printje ontworpen, zo simpel mogelijk, batterij gevoed. De stroom verbruiksmeter loopt nu iets meer dan een half jaar op 2 AA batterijen.
De nrf24l01 werkt prima op 3.3v met 5v inputs.
Verwijderd
Niet echt, de verbruiksmeter hang alleen aan de meter in de meterkast (pulsteller). Wel wil ik de 433 repeater (transceiver, interface of hoe je het ook wil noemen) gebruiken om vanuit de server de verwarming per ruimte schakelen (hele huis is electrisch verwarmd).Promy schreef op woensdag 18 december 2013 @ 12:58:
@MacMF: begrijp ik het goed dat je eigenlijk een DIY plugwise die je hiermee maakt? (verbruik meting)
Ik zit te denken aan iets van rfid in m'n auto sleutel, als de sleutels weg zijn gaat de verwarming een paar graden lager. Vertrek ik vanaf werk dan wil dat de verwarming vast aangaat zodat ik niet in een koud huis aankom (misschien via webinterface of iets van tasker op m'n telefoon dat een berichtje naar huis stuurt als het tussen 15:00 en 18:00 is en ik het bedrijfs wlan verlaat).
Maar zover is het nog niet, eerst het mesh netwerk netjes automatiseren en kaku werkend krijgen door het hele huis.
Verwijderd
slim
Mag ik je auto ff lenen? / tuurlijk / brrr.Verwijderd schreef op woensdag 18 december 2013 @ 13:26:
'rfid in m'n auto sleutel, als de sleutels weg zijn gaat de verwarming een paar graden lager. '
slim
| Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72
Verwijderd
RobV schreef op woensdag 18 december 2013 @ 13:51:
[...]
Mag ik je auto ff lenen? / tuurlijk / brrr.
Verwijderd
Misschien wat finetuning nodig. Hoe dan ook, voorlopig ben ik nog lang niet zover.RobV schreef op woensdag 18 december 2013 @ 13:51:
[...]
Mag ik je auto ff lenen? / tuurlijk / brrr.
Imho ik zou combinatie doen van autosleutels + gsm @ wifi + motion senseors bijvoorbeeld
[ Voor 48% gewijzigd door Icekiller2k6 op 18-12-2013 15:07 ]
MT Venus E 5KW (V151) P1 HomeWizard | Hackerspace Brixel te Hasselt (BE) - http://www.brixel.be | 9800X3D, 96GB DDR5 6000MHZ, NVIDIA GEFORCE 4090, ASRock X670E Steel Legend, Seasonic GX1000
Het licht schakelen mbv de actieve client list in het netwerk was bij mijn niet zo'n succes. Opzich werkte het leuk maar mijn telefoon meldde zich altijd te laat aan op het WiFi en meldde zich bij lang gebruik vaak af, waardoor het licht nooit op tijd aan ging als ik thuis kwam, en soms spontaan uitviel.
Verwijderd
Ik dacht meer aan iets als rfid in het gangkastje waar ik de sleutels altijd neerleg. Mocht het niks zijn verzin ik wat anders. Schakelaar zal waarschijnlijk het best werken, maar is lang niet zo leuk om in elkaar te hobbiën.mcDavid schreef op woensdag 18 december 2013 @ 15:19:
RFID is lastig, heeft een bereik van een paar centimeter. Dan kun je net zo goed op een schakelaar drukken ipv je autosleutels ergens langs zwaaien.
Verwijderd
- nano
- DS3231
- DHT 22
- LDR
- 7219
- 7805
[YouTube: http://www.youtube.com/watch?v=s06q98e8reU&feature=youtu.be]
[ Voor 69% gewijzigd door Verwijderd op 24-12-2013 11:11 ]
Ah leuk, er zijn meer mensen met Arduino's en NRF24l01's bezig (die typenummers van die componenten ook altijdMacMF schreef op dinsdag 17 december 2013 @ 20:34:
[...]
Ik ben hier ook mee bezig. Ben nu bezig een soort simpel DHCP op te zetten voor de node nummers (altijd opstarten als node 05, daarna nieuw node nr opvragen en het ontvangen node nr in de eeprom zetten), ook een calibratie en configuratie (calibratie van de interne 1.1 spanning, meet interval etc). En als laatste wil ik bepaalde nodes als repeater voor klik-aan-klik-uit laten werken. Op deze manier hoop ik nog maar 2 software versies te hoeven onderhouden (server + universele client). Ik gebruik wel de maniacbug library, al wil ik in een verre toekomst hier nog wel wat aan veranderen.
Mesh netwerk werkt al een paar maanden, verschillende temperatuur metingen, bewegings melder,stroom verbruik meter, alles opgeslagen in mysql database. "DHCP" werkt ook, maar er moet nog een mooie webinterface omheen en een koppeling met mysql gemaakt worden om de node nummers en configuratie info op te slaan. De calibratie en configuratie werkt nog niet, voorlopig moet alles nog in de software gecompiled worden.
Het server gedeelte van de mesh is een mini arduino aangesloten aan een linux server met een perl script. Heb een simpele web interface gebouwd met highcharts om de grafieken te laten zien.
Heb zelf een printje ontworpen, zo simpel mogelijk, batterij gevoed. De stroom verbruiksmeter loopt nu iets meer dan een half jaar op 2 AA batterijen.
De nrf24l01 werkt prima op 3.3v met 5v inputs.

Ik heb net gisteren een paar Arduino Nano's, NRF24L01+'s, breadboards, relaisbordjes, temp en bewegings sensoren binnen (van Iteadstudio, lekker goedkoop, wel weekje of vier levertijd).
Eerste ping/pong communicatie werkte binnen een uurtje, missschien nog een tip: ik voed de RF chippies met de 3.3V van de Arduino's, en dan is bij mij wel een condensator van 10uf over de voeding nodig.
Nu maar eens goed nadenken hoe ik e.e.a wil opzetten. Ik vind de commandline tools onder Linux erg fijn werken (arduino-mk), maar ik ben er nog niet helemaal uit wat handig is voor communicatie tests (meerdere serial terminals etc).
Erg interessante materie in ieder geval!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| <?php exec("stty -F /dev/ttyACM0 cs8 9600 ignbrk -brkint -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke noflsh -ixon -crtscts"); $oldstatus = 0; while (true) { exec('gnome-screensaver-command -q | grep -q "niet"',$void,$status); if ($oldstatus != $status) { if ($status == 0) exec("echo -n '1' > /dev/ttyACM0"); //scherm aan else if ($status == 1) exec("echo -n '2' > /dev/ttyACM0"); //scherm uit $oldstatus = $status; } sleep(1); } |
Waarom in godensnaam PHP?

Scheelt toch weer 3 watt sluimerverbruik t.o.v. schermen in standby
[ Voor 13% gewijzigd door mcDavid op 19-12-2013 14:44 ]
Verwijderd
je PC schermen schakel je uit als de screensaver aanspringt .. en hoe stuur je dat aan .. of begrijp ik het verkeerdmcDavid schreef op donderdag 19 december 2013 @ 14:39:
gisteren een scriptje gemaakt dat mijn schermen aan/uit schakelt tegelijk met de screensaver:
PHP:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 <?php exec("stty -F /dev/ttyACM0 cs8 9600 ignbrk -brkint -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke noflsh -ixon -crtscts"); $oldstatus = 0; while (true) { exec('gnome-screensaver-command -q | grep -q "niet"',$void,$status); if ($oldstatus != $status) { if ($status == 0) exec("echo -n '1' > /dev/ttyACM0"); //scherm aan else if ($status == 1) exec("echo -n '2' > /dev/ttyACM0"); //scherm uit $oldstatus = $status; } sleep(1); }
Waarom in godensnaam PHP?Omdat ik daar niet over na hoef te denken
Er zijn ongetwijfeld veel geschiktere talen.
Scheelt toch weer 3 watt sluimerverbruik t.o.v. schermen in standby
Daarnaast heb ik een 433MHz (KaKu) afstandbediening die ik gebruik om mijn schermen aan/uit te zetten (met receivertje op de arduino), bovenstaande PHP-scriptje is daar eigenlijk een aanvulling op.
Ik wil mijn versterker er ook nog aanhangen (die staat nu eigenlijk ook 24/7 aan), maar ben er nog niet helemaal uit hoe ik die zou willen schakelen. Want ik wil vaak wel muziek als het scherm uit staat. Misschien een commando zoeken dat de output-niveaus van Alsa kan uitlezen en de versterker uitschakelt als het een paar minuten stil is, en aanschakelt zodra er geluid afgespeeld wordt. Misschien moet ik die combineren met een PIR sensor, zodat 'ie niet uitschakelt zolang ik aanwezig ben ofzo.
Kortom ik ben weer lekker aan het hobby'en
het script op de arduino:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
| #include <RCSwitch.h> RCSwitch mySwitch = RCSwitch(); int relayPin = 12; int rcstatus[5]; int rcreceived; void setup() { Serial.begin(9600); pinMode(relayPin,OUTPUT); pinMode(4,INPUT);//data pinMode(2,OUTPUT);//power voor RC module pinMode(5,OUTPUT);//power voor RC module digitalWrite(2,HIGH);//power voor RC module digitalWrite(5,LOW);//power voor RC module mySwitch.enableReceive(1); //interrupt 1 == Pin #3 } void loop() { if (Serial.available()) { switch (Serial.read()) { case '1': digitalWrite(relayPin,HIGH); printStatus(relayPin); break; case '2': digitalWrite(relayPin,LOW); printStatus(relayPin); break; } } if (mySwitch.available()) { int nowreceived = mySwitch.getReceivedValue(); if (nowreceived != 0) { switch (nowreceived) { case 70737: //channel C ON digitalWrite(relayPin,HIGH); printStatus(relayPin); break; case 70740: //channel C OFF digitalWrite(relayPin,LOW); printStatus(relayPin); break; } } mySwitch.resetAvailable(); } } void printStatus(int pin) { Serial.println(digitalRead(pin)); } |
[ Voor 4% gewijzigd door mcDavid op 19-12-2013 16:22 ]
Verwijderd
* aaaaaaaaaaaaaargh

net een arduino nano 'opgeblazen.. batterij van 9V op de 5V ,vergeten een draadje om te zetten, het gekke is, de arduino + code draait nog steeds, maar de usb (ftdi) wordt niet meer door windows gezien, ben benieuwd of ik nu nog wel over de ICSP header data naar binnen krijg

[ Voor 92% gewijzigd door Verwijderd op 19-12-2013 20:39 ]
even de spanning van het geheel afhalen en 5 min wachten. Heb je grote kans dat die weer herkent word...
En daarbuiten. Als je de - van de batterij niet aan de - van de arduino had zitten heeft er nooit 9v op gestaan..
[ Voor 23% gewijzigd door OcGuru op 19-12-2013 20:45 ]
Bl44t
Verwijderd

| Mijn joystick / simpit project | Blog | Elite Dangerous CMDR Cataclysm72
nrf24 begrijpen we ook nog, eenmalig volledige naam in een post is wel aan te raden want zij meer type nrf24 chips.DRAFTER86 schreef op donderdag 19 december 2013 @ 13:36:
[...]
Ah leuk, er zijn meer mensen met Arduino's en NRF24l01's bezig (die typenummers van die componenten ook altijd).
Ja daar zijn al veel mensen tegenaan gelopen, niet alleen met nrf24 chips. 3.3v lijn van originele arduino ontwerp heeft geen output condensator. Wat ook kan is tussen vcc en gnd pin van nfr24 pcb een 0805 10uf condensator solderen, dat heb ik gedaan bij enkele zodat gewoon jump wires kon gebruiken tijdens het testen met uC.Ik heb net gisteren een paar Arduino Nano's, NRF24L01+'s, breadboards, relaisbordjes, temp en bewegings sensoren binnen (van Iteadstudio, lekker goedkoop, wel weekje of vier levertijd).
Eerste ping/pong communicatie werkte binnen een uurtje, missschien nog een tip: ik voed de RF chippies met de 3.3V van de Arduino's, en dan is bij mij wel een condensator van 10uf over de voeding nodig.
Je kan overigens met nrf24l01 ook blue tooth LE profile gebruiken. Lekker goedkope bluetooth transciever, heb het zelf nog niet uitgeprobeerd.
http://dmitry.gr/index.ph...20Bluetooth%20LE%20fakery