Acties:
  • 0 Henk 'm!

  • Frozen
  • Registratie: Oktober 2010
  • Laatst online: 25-08 16:09

Frozen

2e Reviewer van het Jaar

mcDavid schreef op zaterdag 06 december 2014 @ 20:22:
Ik zou lekker zo'n pakketje nemen. Als je los bestelt: vergeet je weerstanden niet! En een paar mosfets ofzo als je meerdere leds tegelijk wilt kunnen schakelen.

En hoe wil je die leds installeren? Is het niet makkelijker gewoon ledstrip te nemen? Scheelt je heeeeeel veel soldeer en plakwerk en geeft waarschijnlijk een mooier resultaat.
Ik heb eerder al 400 weerstanden besteld. Zitten er iets van 30 in per hoeveelheid weerstand. De waardes kwamen overeen met wat er in de doos zat.
Een ledstrip kan misschien ook wel handig zijn ja... Misschien wel heel erg handig :)

Voeg me gewoon toe op LinkedIn, iedereen is welkom!


Acties:
  • 0 Henk 'm!

  • Niellz
  • Registratie: Juli 2013
  • Laatst online: 11-01 23:16

Niellz

PSN: Niellzje

Hey,

Aangezien ik tegenwoordig bijna verdrink in de vrije tijd, zit ik er over te denken om een webshop te beginnen. Uiteraard kan ik met spullen van de groothandel niet tippen aan de prijs van bv. ebay etc maar véél meer zal het niet kosten.
Mijn idee is om op een simpele webwinkel dingen te zetten zoals potentiometers, leds en lcd schermpjes etc die besteld kunnen worden en binnen 3 dagen bij jou thuis zijn. Dit is veel sneller dan ebay of andere sites dus ook wat aantrekkelijker.

Denken jullie dat zoiets een beetje zou lopen? Het is alleen maar om een beetje bij te verdienen. Zo ja, wat voor producten moeten dan zeker op de site?

http://i.picasion.com/resize76/446eb2c88b2df1a089a17a9b8b734465.gif


Acties:
  • 0 Henk 'm!

  • Frozen
  • Registratie: Oktober 2010
  • Laatst online: 25-08 16:09

Frozen

2e Reviewer van het Jaar

Na uren zoeken op het grote wereldwijde interwebs heb ik weer een aantal vragen. Zoals jullie misschien wel weten zijn er talloze clones te vinden op het internet.

Op ebay doen de sainsmart uno (4000 sold) en de dcaele dcaoudino uno het goed (kan je kopen voor $4,50, er zit wel een CH340G in i.p.v. ATMEGA16U2)

De officiële is daarentegen 27 dollar. Dat vind ik persoonlijk veel geld.
Persoonlijk denk ik dat ik voor de zwarte sainsmart ga.

Mijn vraag is: Hebben jullie een clone, of een echte?

[ Voor 39% gewijzigd door Frozen op 07-12-2014 05:06 ]

Voeg me gewoon toe op LinkedIn, iedereen is welkom!


Acties:
  • 0 Henk 'm!

  • ThinkPad
  • Registratie: Juni 2005
  • Laatst online: 21:36
Clones werken prima, zijn 100% compatible met Arduino. Alleen afwerking is soms wat minder. Ik heb met de ~6 clones die ik heb gekocht nooit problemen gehad.

Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
Als je Windows gebruikt moet je misschien oppassen met kloons die een ft232 USB/serial converter hebben. Hoewel de beruchte driver weer teruggeroepen schijnt te zijn.

[ Voor 22% gewijzigd door mcDavid op 07-12-2014 10:25 ]


Acties:
  • 0 Henk 'm!

  • Icekiller2k6
  • Registratie: Februari 2005
  • Laatst online: 20:02
CH340G heeft enkel aparte drivers nodig om te werken ... ;) ik raad ze eigenlijk beet je aan ipv ftdi clonechips

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


Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
Grappig, de eBay verkopers lijken massaal geswitcht te zijn van counterfeit ft232's naar CH340G's. Heeft die actie van FTDI toch een goeie uitwerking gehad dus! Ik denk dat het idd voor alle partijen beter is als ze gewoon een compatibel chip gebruiken ipv een counterfeit.

Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
mcDavid schreef op zondag 07 december 2014 @ 14:00:
Grappig, de eBay verkopers lijken massaal geswitcht te zijn van counterfeit ft232's naar CH340G's. Heeft die actie van FTDI toch een goeie uitwerking gehad dus! Ik denk dat het idd voor alle partijen beter is als ze gewoon een compatibel chip gebruiken ipv een counterfeit.
Van wat ik begreep waren de slachtoffers niet allemaal counterfeits. Ik geloof dat er al gewoon compatibele chips tussen zaten, die ook op de FTDI drivers werkte. En daar is niks illegaals aan (natuurlijk is er in principe ook niks illegaals aan je driver update een bepaald pakketje laten sturen waardoor toevallig de neppe ermee stoppen).

Acties:
  • 0 Henk 'm!

  • ThinkPad
  • Registratie: Juni 2005
  • Laatst online: 21:36
Mmm CH340 zat al langere tijd op de Arduino kloontjes die ik kocht. En dat was al ruim voor #FTDIgate :p

Acties:
  • 0 Henk 'm!

  • Frozen
  • Registratie: Oktober 2010
  • Laatst online: 25-08 16:09

Frozen

2e Reviewer van het Jaar

ThinkPadd schreef op zondag 07 december 2014 @ 17:21:
Mmm CH340 zat al langere tijd op de Arduino kloontjes die ik kocht. En dat was al ruim voor #FTDIgate :p
Ik heb toch maar de 4 dollar duurdere gekocht van sainsmart. Vooral omdat daar de 16u2 chip op zit en die ook op de arduino zit :)

Voeg me gewoon toe op LinkedIn, iedereen is welkom!


  • ThinkPad
  • Registratie: Juni 2005
  • Laatst online: 21:36
Goedkope nRF24L01:
LaserJet schreef op woensdag 10 december 2014 @ 22:11:
Voor de echte tweakers/ elektronica mannen kwam ik bij MiniInTheBox voor $0,12 een wlan module tegen.
LaserJet in "[Ervaringen] Online shoppen in China - Deel 2"

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
Da's wel héél goedkoop! Heb er gelijk 10 besteld, altijd leuk speelgoed om te hebben liggen :)

  • SnowDude
  • Registratie: Januari 2002
  • Laatst online: 13-09 18:52
Ik heb ook een handje vol besteld, altijd handig!

All electric components run on smoke. If you let the smoke out, they won't work anymore.


  • BoAC
  • Registratie: Februari 2003
  • Laatst online: 18:45

BoAC

Memento mori

En de prijs is alweer bijgesteld naar $2,50 :D

  • RobV
  • Registratie: Juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
Link is d00d.. ik heb dus geen idee waar dit over ging.

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


  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
Precies wat er staat: NRF24l01 modules, van 12 cent per stuk. Op ebay kosten ze rond de euro.

Het zal ongetwijfeld een prijsfoutje geweest zijn, ben benieuwd of ik ze ga krijgen :)

  • SnowDude
  • Registratie: Januari 2002
  • Laatst online: 13-09 18:52
Ben benieuwd of ik ze krijg, Ik heb er 20 besteld :D

Zou wel een leuk hobby projectje zijn voor de kerst vakantie

[ Voor 38% gewijzigd door SnowDude op 11-12-2014 14:38 ]

All electric components run on smoke. If you let the smoke out, they won't work anymore.


  • Vuikie
  • Registratie: December 2003
  • Laatst online: 21:27
Voor degene die geïnteresserd zijn in echt een goedkope wifi: ESP8266
Ik heb er goede dingen over gelezen, dus heb er 4 besteld. Zou wel ideaal zijn voor domotica aan een Rpi...

  • ThinkPad
  • Registratie: Juni 2005
  • Laatst online: 21:36
Ja die zijn helemaal leuk, wil ik ook eens mee gaan spelen als ik tijd heb.

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
SnowDude schreef op donderdag 11 december 2014 @ 14:37:
Ben benieuwd of ik ze krijg, Ik heb er 20 besteld :D

Zou wel een leuk hobby projectje zijn voor de kerst vakantie
Kans is sowieso klein dat je ze dan al hebt. Meestal gaat post uit china niet zo snel zo rond de kerst.

  • verbraakje
  • Registratie: Februari 2006
  • Laatst online: 18:53

verbraakje

🚦

Ik heb er 50 besteld! ben benieuwd of ze net zo goed werken als de nRF24L01+ versie

Veiligheid staat voor op http://www.juniorverkeerslichten.nl


Acties:
  • 0 Henk 'm!

  • Icekiller2k6
  • Registratie: Februari 2005
  • Laatst online: 20:02
mijn nrf24l01+ bestelling is geannuleerd .. :(

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


Acties:
  • 0 Henk 'm!

  • SnowDude
  • Registratie: Januari 2002
  • Laatst online: 13-09 18:52
Die van mij ook.

All electric components run on smoke. If you let the smoke out, they won't work anymore.


Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
Hier ook, en het geld krijg je terug in de vorm van miniinthebox credits. Gelijk maar een bericht teruggestuurd dat ik dat niet accepteer.

Acties:
  • 0 Henk 'm!

  • ThinkPad
  • Registratie: Juni 2005
  • Laatst online: 21:36
mcDavid schreef op vrijdag 12 december 2014 @ 11:33:
Hier ook, en het geld krijg je terug in de vorm van miniinthebox credits. Gelijk maar een bericht teruggestuurd dat ik dat niet accepteer.
Paypal claim openen als ze weigeren om geld terug te geven :)

Acties:
  • 0 Henk 'm!

  • roeleboel
  • Registratie: Maart 2006
  • Niet online

roeleboel

en zijn beestenboel

mcDavid schreef op vrijdag 12 december 2014 @ 11:33:
Hier ook, en het geld krijg je terug in de vorm van miniinthebox credits. Gelijk maar een bericht teruggestuurd dat ik dat niet accepteer.
als ge de moeite zou nemen om het bericht tegoei te lezen, en eens op ne link te klikken, kunt ge zien dat ge dat initieel terugkrijgt in de vorm van credits, maar dat ge die credits kunt laten terugstorten.

Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
roeleboel schreef op vrijdag 12 december 2014 @ 11:50:
[...]


als ge de moeite zou nemen om het bericht tegoei te lezen, en eens op ne link te klikken, kunt ge zien dat ge dat initieel terugkrijgt in de vorm van credits, maar dat ge die credits kunt laten terugstorten.
Ik zie die credits daar niet, en vind het sowieso de grootste onzin dat ik er zelf achteraan zou moeten om mijn geld terug te krijgen. Heb bericht terug gestuurd dat ze het zelf maar terug moeten boeken naar mijn paypal account of dat ik anders een dispuut open.

Edit @ hieronder: Zij hebben een fout gemaakt, niet ik. En fouten maken is niet erg maar dan moet je ze wel netjes oplossen. Al het geld van eenzijdig geannuleerde opdrachten in je eigen credit systeem storten is geen nette oplossing, dat is gewoon hopen dat mensen het vergeten. Ze kunnen me de pot op met dat soort acties. Als we dit maar moeten accepteren met zijn allen wordt het wel heel makkelijk om even snel wat liquide middelen tevoorschijn te toveren voor de eerste de beste webshop.

[ Voor 29% gewijzigd door mcDavid op 12-12-2014 18:59 ]


Acties:
  • 0 Henk 'm!

  • CrashOverDrive
  • Registratie: Augustus 2005
  • Laatst online: 21:23
roeleboel schreef op vrijdag 12 december 2014 @ 11:50:
als ge de moeite zou nemen om het bericht tegoei te lezen, en eens op ne link te klikken, kunt ge zien dat ge dat initieel terugkrijgt in de vorm van credits, maar dat ge die credits kunt laten terugstorten.
;(
Ik ben geen grammar-nazi, maar dit is wel heel overdreven zolang het geen Tweakers.be is >:)

Acties:
  • 0 Henk 'm!

  • roeleboel
  • Registratie: Maart 2006
  • Niet online

roeleboel

en zijn beestenboel

mcDavid schreef op vrijdag 12 december 2014 @ 12:18:
[...]
Ik zie die credits daar niet, en vind het sowieso de grootste onzin dat ik er zelf achteraan zou moeten om mijn geld terug te krijgen. Heb bericht terug gestuurd dat ze het zelf maar terug moeten boeken naar mijn paypal account of dat ik anders een dispuut open.
Nogmaals: lees het bericht eens tegoei, de credits staan binnen 24u of zoiets op uw account daar
Sterker nog: ik heb nu al 0.01€ aan credits gekregen dankzij deze niet-doorgegane aankoop, dus ik ga zelfs winst maken...

En het is geen onzin om gebruik te maken van een overduidelijke prijsfout, en dan nog te gaan zeuren ook als ge niet 200% op uw wenken bediend wordt, ook al zijt ge akkoord gegaan met hun regelgeving? (heb ze zelf niet gelezen, maar dat ge terugbetaald wordt in credits zal er 100% zeker instaan, net zoals dat ge die credits kunt laten terugstorten)

Voor uw dispuut: doe gerust, maar denk er misschien aan dat ge geen dispuut hebt met de verkoper, maar met het shopping-platform. Dikke kans dat uw account geblokkeerd wordt om er nog wat te kopen als dat platform verlies draait hierdoor...

@CrashOverDrive: zoals in mijn profiel staat ben ik een vlaming :)

Acties:
  • 0 Henk 'm!

Verwijderd

roeleboel schreef op vrijdag 12 december 2014 @ 12:30:
[...]

..

En het is geen onzin om gebruik te maken van een overduidelijke prijsfout, en dan nog te gaan zeuren ook als ge niet 200% op uw wenken bediend wordt,
eens ! ;)

Acties:
  • 0 Henk 'm!

  • Promy
  • Registratie: Oktober 2002
  • Laatst online: 16-09 22:14
Ik wil hier m'n renson ventillatie-unit in de gaten houden met een arduino nano.
ik heb daarvoor 4 inputs en 4 outputs ter beschikking van het toestel (de drukknoppen en feedback leds).
De fysieke koppeling is geen probleem (werkt reeds op m'n raspberry pi), maar de software is nog niet optimaal:
De 4 leds kunnen immers aan of uit zijn, maar ook pinken.
De meest eenvoudige methode leek me eerst te checken of ze de led aan is en indien niet dan kijken of hij pinkt via pulseIn. Het probleem dat ik hier heb is echter dat dit de loop fameus vertraagt aangezien de led niet zo heel snel pinkt en ik dus 1 a 1.5seconde moet wachten om het zeker te weten. Aangezien er slechts 2 kunnen pinken (tenzij hij in fout staat) verlies ik dus 2 a 3 seconden iedere loop.

Blijkbaar zou het een optie zijn om via interrupts te werken, maar ik zie niet goed hoe ik dit het meest eenvoudig implementeer aangezien ik ook niet wil dat de interrupt continu het programma onderbreekt als de ventillatie in een stand staat waarbij de led pinkt?

Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
Zoek wat debounce without delay voorbeeldjes op. Je loop kun je gewoon door laten lopen.

Enneh, pinken? Is dat ook weer een of ander dialect voor knipperen?

Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Zojuist heb ik een stel RS485 modules besteld voor een verbinding tussen 2 Arduino's en nu vroeg ik mij af wat voor soort kabel ik daar het beste tussen kan plaatsen. Voldoet platte telefoonkabel? Daar heb ik namelijk nog genoeg van liggen, heb ook nog het nodige aan utp-kabel liggen.

[ Voor 7% gewijzigd door Raven op 12-12-2014 19:42 ]

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

Oscar Wilde


Acties:
  • 0 Henk 'm!

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05
Hangt helemaal af van de lengte en de bitrate. Ik heb het gebruikt bij 19k2 @ 20m ofzo en dat gaat prima.

Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
En wat is "het" voor kabel? Telefoon of utp? Gaat hier over een meter of 5 trouwens.

[ Voor 11% gewijzigd door Raven op 12-12-2014 19:46 ]

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

Oscar Wilde


Acties:
  • 0 Henk 'm!

  • Promy
  • Registratie: Oktober 2002
  • Laatst online: 16-09 22:14
mcDavid schreef op vrijdag 12 december 2014 @ 19:05:
Zoek wat debounce without delay voorbeeldjes op. Je loop kun je gewoon door laten lopen.

Enneh, pinken? Is dat ook weer een of ander dialect voor knipperen?
hmm, das inderdaad belgisch :) het is inderdaad knipperen

Acties:
  • 0 Henk 'm!

  • Icekiller2k6
  • Registratie: Februari 2005
  • Laatst online: 20:02
mcDavid schreef op vrijdag 12 december 2014 @ 19:05:
Zoek wat debounce without delay voorbeeldjes op. Je loop kun je gewoon door laten lopen.

Enneh, pinken? Is dat ook weer een of ander dialect voor knipperen?
Gewoon cpu time gebruiken ...

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


Acties:
  • 0 Henk 'm!

  • Vuikie
  • Registratie: December 2003
  • Laatst online: 21:27
Ik werk regelmatig met RS-485 en kan melden dat RS485 binnen een meter of 2/3 zelfs werkt met 2 simpele draaitjes zonder eindweerstanden. Bij 3m< zou ik met een 2 aderige kabel gaan werken en met eindweerstanden. Zeker als je met meer dan 2 loads gaat werken. Boven de 15 meter zou ik wel met shielded kabel gaan werken als je op hoge snelheid een beetje goede snelheden wilt behouden. Boven de 50 meter zou ik echt met shielded twisted kabel gaan werken, zeker als je langs andere kabels, zoals 230V AC, gaat.

Bij 5 meter volstaat een telefoon kabel ruim, mits je wel eindweerstanden op de juiste manier gebruikt.

Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Volgens mij zitten de eindweerstanden al op die module, afgaand op http://arduino-info.wikispaces.com/RS485-Modules dan. Het gaat puur om het verbinden van 2 Arduino's, er komen niet meer apparaten op de RS485 verbinding.

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

Oscar Wilde


Acties:
  • 0 Henk 'm!

  • Promy
  • Registratie: Oktober 2002
  • Laatst online: 16-09 22:14
mcDavid schreef op vrijdag 12 december 2014 @ 19:05:
Zoek wat debounce without delay voorbeeldjes op. Je loop kun je gewoon door laten lopen.
Ik vermoed dat dit dan nog steeds met een interrupt te combineren is, aangezien je anders in principe tussen de pulsen door kan lezen (dus toevallig de status van de pin opvragen als de net net uitstaat tijdens het "knipperen")?

Een alternatief die ik zag was telkens de laatste 10 waardes van de pinstatus bij te houden en als deze 0 is dan is de led uit, 10 dan is ze aan en anders knippert ze; Enige nadeel die ik hier zie is dat je door zeer snel of traag te lezen (arduino met iets anders bezig bv) je hier fouten kan hebben?

Acties:
  • 0 Henk 'm!

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05
Raven schreef op vrijdag 12 december 2014 @ 19:45:
En wat is "het" voor kabel? Telefoon of utp? Gaat hier over een meter of 5 trouwens.
Platte kabel bedoel ik ;)
Een nadeel van telefoonkabel is wel dat het soms heel dun is, dus als je daar ook power overheen wil sturen kun je spanning verliezen.
UTP is beter als je de A en B netjes over een getwist paar stuurt, maar bij 5m zal het weinig uitmaken.
Overigens definieert modbus een pinout standaard voor modbus-over-utp, wel zo netjes als je dat overneemt als je utp gaat gebruiken.

edit:
http://www.modbus.org/docs/Modbus_over_serial_line_V1_02.pdf blz 29

o, en ik kan me vaag herinneren dat Maxim en Modbus de benaming van de A en B aansluitingen verwisselen, check dat even ;)

[ Voor 14% gewijzigd door Ploink op 12-12-2014 22:10 ]


Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
Promy schreef op vrijdag 12 december 2014 @ 21:45:
[...]


Ik vermoed dat dit dan nog steeds met een interrupt te combineren is, aangezien je anders in principe tussen de pulsen door kan lezen (dus toevallig de status van de pin opvragen als de net net uitstaat tijdens het "knipperen")?

Een alternatief die ik zag was telkens de laatste 10 waardes van de pinstatus bij te houden en als deze 0 is dan is de led uit, 10 dan is ze aan en anders knippert ze; Enige nadeel die ik hier zie is dat je door zeer snel of traag te lezen (arduino met iets anders bezig bv) je hier fouten kan hebben?
Volgens mij onderschat je de snelheid van een microcontroller nogal. Een niet al te grote loop wordt al snel enkele duizenden keren per seconde uitgevoerd. Het bijhouden van een led die je zichtbaar ziet knipperen zal dus echt geen probleem zijn.
Met behulp van de millis() functie kun je timen hoe lang een puls duurt. Dan kun je dus na gaan of de led continue brand of na een seconde ofzo weer uit gaat. En dat is precies wat men in een debounce functie doet, alleen dan met een interval van een paar milliseconden ipv hele seconden, maar het idee blijft het zelfde.

[ Voor 7% gewijzigd door mcDavid op 12-12-2014 22:16 ]


Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Ploink schreef op vrijdag 12 december 2014 @ 22:02:
[...]

Platte kabel bedoel ik ;)
Een nadeel van telefoonkabel is wel dat het soms heel dun is, dus als je daar ook power overheen wil sturen kun je spanning verliezen.
UTP is beter als je de A en B netjes over een getwist paar stuurt, maar bij 5m zal het weinig uitmaken.
Overigens definieert modbus een pinout standaard voor modbus-over-utp, wel zo netjes als je dat overneemt als je utp gaat gebruiken.

edit:
http://www.modbus.org/docs/Modbus_over_serial_line_V1_02.pdf blz 29

o, en ik kan me vaag herinneren dat Maxim en Modbus de benaming van de A en B aansluitingen verwisselen, check dat even ;)
:? Het is toch A aansluiten op A en B aansluiten op B? Hoe kan dat verkeerd gaan :P

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

Oscar Wilde


Acties:
  • 0 Henk 'm!

  • Vuikie
  • Registratie: December 2003
  • Laatst online: 21:27
Ehm ik denk dat er nu 2 dingen door elkaar worden gehaald! RS485 is niet per definitie modbus. RS485 is, net als RS232 een electrische specificatie van een data transmissie. Modbus is een specificatie van een bus systeem, dus ook de data overdracht zelf! CAN bus maakt ook gebruik van RS485 drivers, maar is wel degelijk anders dan modbus.

RS485 heeft 2 aansluitingen D+ en D- en doet de data overdracht doormiddel van verschil in polariteit, in tegenstelling tot RS232 die met + en - 15V werkt. Daarom kan RS485 ook veel langere kabel lengtes aan, omdat de voltage veel minder van belang is dan bij RS232.

Acties:
  • 0 Henk 'm!

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05
Raven schreef op zaterdag 13 december 2014 @ 14:15:
[...]
:? Het is toch A aansluiten op A en B aansluiten op B? Hoe kan dat verkeerd gaan :P
Jaaa, je denkt toch niet dat het ZO simpel is?? :+

http://en.wikipedia.org/wiki/RS-485#Connectors zegt:
The RS-485 signaling specification states that signal A is the inverting or '-' pin and signal B is the non-inverting or '+' pin.[6]

This is in conflict with the A/B naming used by a number of differential transceiver manufacturers, including, among others:
  • Texas Instruments, as seen in their application handbook on EIA-422/485 communications (A=non-inverting, B=inverting)
  • Intersil, as seen in their data sheet for the ISL4489 transceiver[7]
  • Maxim, as seen in their data sheet for the MAX483 transceiver[8]
  • Linear Technology, as seen in their datasheet for the LTC2850, LTC2851, LTC2852[9]
  • Analog Devices, as seen in their datasheet for the ADM3483, ADM3485, ADM3488, ADM3490, ADM3491[10]
  • FTDI, as seen in their datasheet for the USB-RS485-WE-1800-BT[11]
These manufacturers are incorrect, but their practice is in widespread use. Therefore, care must be taken when using A/B naming.
Vuikie schreef op zaterdag 13 december 2014 @ 15:41:
Ehm ik denk dat er nu 2 dingen door elkaar worden gehaald! RS485 is niet per definitie modbus. RS485 is, net als RS232 een electrische specificatie van een data transmissie. Modbus is een specificatie van een bus systeem, dus ook de data overdracht zelf!
Je hebt gelijk, Modbus is een protocol bovenop RS485, net zoiets als TCP/IP bovenop Ethernet. Het zijn verschillende lagen in het OSI netwerk model.

Maar in bovenstaande wiki link staat ook:
RS-485 does not specify any connector or pinout.
Modbus is vrij algemeen en specificeert wel een paar connectors, daarom ligt het voor de hand om hun specificatie over te nemen. Ik was daar niet helemaal duidelijk in misschien ;)
Vuikie schreef op zaterdag 13 december 2014 @ 15:41:
CAN bus maakt ook gebruik van RS485 drivers, maar is wel degelijk anders dan modbus.
CAN bus is iets heel anders en gebruikt geen RS485 drivers, maar bv MAX3051. De enige overeenkomst met RS485 is dat het ook twisted pair kabel gebruikt, maar dat geldt ook voor ethernet, sata en een heleboel anderen.

Acties:
  • 0 Henk 'm!

  • Vuikie
  • Registratie: December 2003
  • Laatst online: 21:27
[qoute]

[...]

CAN bus is iets heel anders en gebruikt geen RS485 drivers, maar bv MAX3051. De enige overeenkomst met RS485 is dat het ook twisted pair kabel gebruikt, maar dat geldt ook voor ethernet, sata en een heleboel anderen.
[/quote]

Idd, hier heb je gelijk in, ik had moeten schrijven dat CAN-bus lijkt op RS-485, maar absoluut niet hetzelde is.

I stand corrected ;)

Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Ploink schreef op zaterdag 13 december 2014 @ 23:32:
[...]

Jaaa, je denkt toch niet dat het ZO simpel is?? :+

http://en.wikipedia.org/wiki/RS-485#Connectors5 zegt:

[...]
Nou volg ik het niet meer 8)7 :P

2 http://www.hobbyelectroni...-voor-rs485-communicatie/ modules aan elkaar moet dus niet zoals dit?:
Afbeeldingslocatie: http://yourduino.com/docs/RS485-NetworkExample2.jpg
http://arduino-info.wikispaces.com/RS485-Modules

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

Oscar Wilde


Acties:
  • 0 Henk 'm!

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05
Als je het zo aansluit dan werkt heb prima, maar als ik echt ga mierenneuken dan moet het volgens het boekje zo:
Afbeeldingslocatie: http://i.imgur.com/gPAbD4W.png

Lees die wiki link nog eens, dan snap je het wel.
Even voor de duidelijkheid:

RS485 specificatie A = volgens Maxim B = "-" = "inverting pin"
RS485 specificatie B = volgens Maxim A = "+" = "non-inverting pin"

Een IC fabrikant heeft een blunder gemaakt in hun datasheet en dat hebben ze nooit hersteld. Sterker nog, andere fabrikanten hebben dat weer gekopieerd, maar ze doen het allemaal fout.

Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Ah ok. Maar zolang ik modules/ic's van dezelfde fabrikant gebruik kan het A op A en B op B aansluiten eigenlijk niet misgaan? Het is dus, zoals ik het lees, pas oppassen als ik verschillende fabrikanten door elkaar ga gebruiken.

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

Oscar Wilde


Acties:
  • 0 Henk 'm!

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05
Raven schreef op maandag 15 december 2014 @ 13:51:
Ah ok. Maar zolang ik modules/ic's van dezelfde fabrikant gebruik kan het A op A en B op B aansluiten eigenlijk niet misgaan? Het is dus, zoals ik het lees, pas oppassen als ik verschillende fabrikanten door elkaar ga gebruiken.
Ja en mocht het niet werken, A en B verwisselen en nog eens proberen :)

Acties:
  • 0 Henk 'm!

  • wishmaster1986
  • Registratie: April 2004
  • Laatst online: 21:42
Iemand enig idee waarom mijn Arduino niet reageerd op mijn serial commands? Als ik via Mac OSX of via Windows via de seriele monitor de commando's zoals on en off verstuur dan werkt alles prima. Zodra ik dit via een Open-WRT router via de console doe niet. Ik verstuur dan commando's via SSH als volgende
code:
1
echo "on" > /dev/ttyACM0


Ik zie zat topics op internet met mensen die dit doen via een Open-WRT router en een Arduino. En de commando's komen ook wel aan denk ik want de TX en RX lampjes knipperen ook wanneer ik me command uitvoer.

Acties:
  • 0 Henk 'm!

  • ThinkPad
  • Registratie: Juni 2005
  • Laatst online: 21:36
baudrate verkeerd?

Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
Je moet eerst wat specifieke instellingen toepassen voor de arduino:

code:
1
stty -F /dev/ttyACM0 cs8 9600 ignbrk -brkint -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke noflsh -ixon -crtscts


Op je eigen computer moet dat ook, maar als je de arduino IDE opstart doet die dat voor je waardoor je (daarna) ook via de command line kunt communiceren.

[ Voor 25% gewijzigd door mcDavid op 16-12-2014 17:05 ]


Acties:
  • 0 Henk 'm!

  • wishmaster1986
  • Registratie: April 2004
  • Laatst online: 21:42
Dat lange commando met stty voor de baudrate had ik ook gevonden op diverse websites maar heeft helaas niet mogen helpen.

Ik zie dat er wel connectie is aangezien ik nu even een test script heb gemaakt wat om de seconde "hello" output naar de seriele poort. Doe ik nu een "cat /dev/ttyACM0" dan zie ik netjes "hello" voorbij komen.

[ Voor 46% gewijzigd door wishmaster1986 op 16-12-2014 17:20 ]


Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
Heb je wel de juiste packages voor ACM devices geinstalleerd? Ik meen mij te herinneren dat hier specifieke OpenWRT packages voor beschikbaar zijn. Bestaat /dev/ttyAMA0 uberhaupt?

Acties:
  • 0 Henk 'm!

  • wishmaster1986
  • Registratie: April 2004
  • Laatst online: 21:42
Nee ik zie alleen de ttyACM0.

Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
eh, die bedoel ik :$

Acties:
  • 0 Henk 'm!

  • wishmaster1986
  • Registratie: April 2004
  • Laatst online: 21:42
Nog enig ander idee? Ik denk dat de connectie dus wel goed is aangezien een "cat /dev/ttyACM0" wel mijn tekst laat zien die de Arduino verstuurd. Alleen de Arduino leest mijn tekst niet of verkeerd als ik die echo naar de ttyACM0.

Kan het misschien iets zijn met een karakterset? Of een code zoals een CR of LF?

Acties:
  • 0 Henk 'm!

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05
wishmaster1986 schreef op dinsdag 16 december 2014 @ 20:13:
Kan het misschien iets zijn met een karakterset? Of een code zoals een CR of LF?
Windows stuurt CR+LF aan het eind van een regel, Linux alleen LF.

Acties:
  • 0 Henk 'm!

  • wishmaster1986
  • Registratie: April 2004
  • Laatst online: 21:42
Ploink schreef op dinsdag 16 december 2014 @ 20:46:
[...]

Windows stuurt CR+LF aan het eind van een regel, Linux alleen LF.
Dat doet ie ook bij een echo commando? Als ik een LF wil echo-en dan moet het toch iets zijn zoals:
code:
1
echo "on\n"


En doet de seriele monitor van de Arduino in Windows en Mac OSX dat dan niet? Want heb niet iets in me code staan van de Arduino dat ie een CR+LF moet ontvangen en dan me functie uitvoert.

Acties:
  • 0 Henk 'm!

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05
wishmaster1986 schreef op dinsdag 16 december 2014 @ 20:53:
[...]


Dat doet ie ook bij een echo commando? Als ik een LF wil echo-en dan moet het toch iets zijn zoals:
code:
1
echo "on\n"


En doet de seriele monitor van de Arduino in Windows en Mac OSX dat dan niet? Want heb niet iets in me code staan van de Arduino dat ie een CR+LF moet ontvangen en dan me functie uitvoert.
http://en.wikipedia.org/wiki/Newline
http://linux.die.net/man/1/echo

Linux echo stuurt dus altijd een LF aan het eind van een regel, tenzij je -n gebruikt.
Windows echo stuurt een CRLF en Windows programmeurs hebben vaak de gewoonte om naar de CR te kijken als end-of-line marker en de LF gewoon te negeren. In linux werkt dat niet natuurlijk ;)

Probeer eens
code:
1
echo -e "on\r"

Acties:
  • 0 Henk 'm!

  • sypie
  • Registratie: Oktober 2000
  • Niet online
Ik ben geen programmeur maar probeer het volgende (waarschijnlijk heel eenvoudige) voor elkaar te krijgen:
Met een Deumilanove bordje 1 LED laten knipperen en 1 LED laten faden, tegelijkertijd.

Ik krijg het wel voor elkaar om de LED die ik wil laten faden per loop iets feller te laten schijnen... maar dat is natuurlijk niet de bedoeling.

Welke functie moet ik hiervoor gebruiken? Loop alleen werkt kennelijk niet.

Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online

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

Oscar Wilde


Acties:
  • 0 Henk 'm!

  • sypie
  • Registratie: Oktober 2000
  • Niet online
Dat is wanneer ik één LEDje heb. Ik heb er nu 2: 1 die moet knipperen en 1 die moet faden, tegelijkertijd.

Acties:
  • 0 Henk 'm!

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05
sypie schreef op zondag 21 december 2014 @ 12:39:
Dat is wanneer ik één LEDje heb. Ik heb er nu 2: 1 die moet knipperen en 1 die moet faden, tegelijkertijd.
PWM gebruiken voor faden en beide leds aansturen vanuit een timer interrupt, dan heb je het hoofdprogramma nog helemaal vrij om andere dingen te doen.

Acties:
  • 0 Henk 'm!

  • sypie
  • Registratie: Oktober 2000
  • Niet online
Dit brengt mij dichter bij wat ik wil bereiken. Ik moet alleen nog uitzoeken hoe en wat, ik ben echt geen programmeur. Ik denk wel dat ik hier iets mee kan, ik weet nu in ieder geval wat ik moet zoeken. Bedankt.

Een heel korte zoektocht heeft mij hier naar toe geleid. Volgens mij een aardige uitleg over Timer Interrupts: http://www.instructables.com/id/Arduino-Timer-Interrupts/

[ Voor 28% gewijzigd door sypie op 21-12-2014 14:06 ]


Acties:
  • 0 Henk 'm!

  • RobV
  • Registratie: Juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
Timer interrupt is nergens voor nodig.

Gebruik de 'blink without delay' sample als startpunt voor je loop. (Dit is zowiezo de beste aanpak voor zo'n beetje alles Arduino sketches). Afhankelijk van een wisselende parameter pas je de PWM frequentie van een pin aan met analogWrite().

[ Voor 14% gewijzigd door RobV op 21-12-2014 14:29 ]

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


Acties:
  • 0 Henk 'm!

  • Niellz
  • Registratie: Juli 2013
  • Laatst online: 11-01 23:16

Niellz

PSN: Niellzje

Ik zit meer te denken aan wanneer brightness 255 is:
if (brightness == 255) {
analogWrite(led2, HIGH)
}

http://i.picasion.com/resize76/446eb2c88b2df1a089a17a9b8b734465.gif


Acties:
  • 0 Henk 'm!

  • sypie
  • Registratie: Oktober 2000
  • Niet online
Met dan aan de verwijzing naar het "blink witgoed delay" script heb ik nu het volgende:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
/* Blink without Delay
 
 This example code is in the public domain.
 
 http://www.arduino.cc/en/Tutorial/BlinkWithoutDelay
 */

// constants won't change. Used here to set a pin number :
const int ledPin =  13;      // the number of the LED pin

// Variables will change :
int ledState = LOW;             // ledState used to set the LED

// Generally, you shuould use "unsigned long" for variables that hold time
// The value will quickly become too large for an int to store
unsigned long previousMillis = 0;        // will store last time LED was updated

// constants won't change :
const long interval = 300;           // interval at which to blink (milliseconds)

void setup() {
  // set the digital pin as output:
  pinMode(ledPin, OUTPUT);
  pinMode(9, OUTPUT);
}

void loop()
{
  // here is where you'd put code that needs to be running all the time.

  // check to see if it's time to blink the LED; that is, if the
  // difference between the current time and last time you blinked
  // the LED is bigger than the interval at which you want to
  // blink the LED.
  unsigned long currentMillis = millis();
 
  if(currentMillis - previousMillis >= interval) {
    // save the last time you blinked the LED 
    previousMillis = currentMillis;   

    // if the LED is off turn it on and vice-versa:
    if (ledState == LOW)
      ledState = HIGH;
    else
      ledState = LOW;

    // set the LED with the ledState of the variable:
    digitalWrite(ledPin, ledState);
  }
  
    // fade in from min to max in increments of 5 points:
  for (int fadeValue = 0 ; fadeValue <= 255; fadeValue += 25) {
    // sets the value (range from 0 to 255):
    analogWrite(9, fadeValue);
    // wait for 30 milliseconds to see the dimming effect
    delay(30);
  }

  // fade out from max to min in increments of 5 points:
  for (int fadeValue = 255 ; fadeValue >= 0; fadeValue -= 25) {
    // sets the value (range from 0 to 255):
    analogWrite(9, fadeValue);
    // wait for 30 milliseconds to see the dimming effect
    delay(30);
  }
 
}

Hierbij gaat de knipperende LED knipperen op het moment dat de fadende LED op 0 is. Ik weet bij deze nog niet hoe ik de frequentie van het knipperen kan aanpassen, los van de fadende LED.

Dit is voor mij een experiment, waar ik in de vakantie lekker mee ga stoeien, zodat ik na de vakantie mijn leerlingen weer wat wijzer kan maken.

Acties:
  • 0 Henk 'm!

  • Niellz
  • Registratie: Juli 2013
  • Laatst online: 11-01 23:16

Niellz

PSN: Niellzje

Volgens mij kan je de led niet sneller laten gaan dan dat, of je hebt delays van 1 ms.

http://i.picasion.com/resize76/446eb2c88b2df1a089a17a9b8b734465.gif


Acties:
  • 0 Henk 'm!

  • sypie
  • Registratie: Oktober 2000
  • Niet online
Het zou toch zo moeten zijn dat de instelling van het knipperende LEDje apart staat van het fadende LEDje? Misschien niet met bovenstaand stuk code maar dan toch wel op een andere manier?

Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
sypie schreef op zondag 21 december 2014 @ 15:36:
Met dan aan de verwijzing naar het "blink witgoed delay" script heb ik nu het volgende:

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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
/* Blink without Delay
 
 This example code is in the public domain.
 
 http://www.arduino.cc/en/Tutorial/BlinkWithoutDelay
 */

// constants won't change. Used here to set a pin number :
const int ledPin =  13;      // the number of the LED pin

// Variables will change :
int ledState = LOW;             // ledState used to set the LED

// Generally, you shuould use "unsigned long" for variables that hold time
// The value will quickly become too large for an int to store
unsigned long previousMillis = 0;        // will store last time LED was updated

// constants won't change :
const long interval = 300;           // interval at which to blink (milliseconds)

void setup() {
  // set the digital pin as output:
  pinMode(ledPin, OUTPUT);
  pinMode(9, OUTPUT);
}

void loop()
{
  // here is where you'd put code that needs to be running all the time.

  // check to see if it's time to blink the LED; that is, if the
  // difference between the current time and last time you blinked
  // the LED is bigger than the interval at which you want to
  // blink the LED.
  unsigned long currentMillis = millis();
 
  if(currentMillis - previousMillis >= interval) {
    // save the last time you blinked the LED 
    previousMillis = currentMillis;   

    // if the LED is off turn it on and vice-versa:
    if (ledState == LOW)
      ledState = HIGH;
    else
      ledState = LOW;

    // set the LED with the ledState of the variable:
    digitalWrite(ledPin, ledState);
  }
  
    // fade in from min to max in increments of 5 points:
  for (int fadeValue = 0 ; fadeValue <= 255; fadeValue += 25) {
    // sets the value (range from 0 to 255):
    analogWrite(9, fadeValue);
    // wait for 30 milliseconds to see the dimming effect
    delay(30);
  }

  // fade out from max to min in increments of 5 points:
  for (int fadeValue = 255 ; fadeValue >= 0; fadeValue -= 25) {
    // sets the value (range from 0 to 255):
    analogWrite(9, fadeValue);
    // wait for 30 milliseconds to see the dimming effect
    delay(30);
  }
 
}

Hierbij gaat de knipperende LED knipperen op het moment dat de fadende LED op 0 is. Ik weet bij deze nog niet hoe ik de frequentie van het knipperen kan aanpassen, los van de fadende LED.

Dit is voor mij een experiment, waar ik in de vakantie lekker mee ga stoeien, zodat ik na de vakantie mijn leerlingen weer wat wijzer kan maken.
Het probleem zijn je for-loops. Je script blijft hierin hangen tot de voorwaarde voor de for-loop niet meer waar is. Je zult het script dus moeten herschrijven zonder for loops en het liefst ook zonder delays. Dat kun je doen door een soortgelijke functie te maken als je voor de knipperende led gebruikt hebt, maar dan met veel kleinere intervallen (30ms) zodat het een vloeiende fade wordt.

Acties:
  • 0 Henk 'm!

  • RobV
  • Registratie: Juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
Je bent goed op weg in elk geval met het eerste gedeelte (regel 37-49), ik zou de rest wel voor je kunnen invullen, maar ik denk dat je er meer van leert om eerst zelf lekker even te puzzelen.

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


Acties:
  • 0 Henk 'm!

  • sypie
  • Registratie: Oktober 2000
  • Niet online
mcDavid schreef op zondag 21 december 2014 @ 16:21:
[...]
Het probleem zijn je for-loops. Je script blijft hierin hangen tot de voorwaarde voor de for-loop niet meer waar is. Je zult het script dus moeten herschrijven zonder for loops en het liefst ook zonder delays.
Zonder for-loops kan ik me voorstellen, omdat dit een voorwaarde creëert. De voorwaarde van de 2e loop is dat de eerste loop is afgelopen. De delays zitten er in om de intervaltijd tussen de stappen (van 0-255 helderheid) aan te geven. Het lijkt mij dat deze bij de fade-functie horen.
Dat kun je doen door een soortgelijke functie te maken als je voor de knipperende led gebruikt hebt, maar dan met veel kleinere intervallen (30ms) zodat het een vloeiende fade wordt.
De fade-tijd kan ik mee spelen, dat is ook mijn bedoeling. Ik zou graag de fade-tijd én de knipoertijd onafhankelijk van elkaar kunnen sturen. Dat zou dus inhouden dat de LED die knippert ook ergens halverwege een fade-in of fade-oud aan of uit zou moeten kunnen gaan. Nu gebeurt dat allen wanner de fade op 0 staat, omdat dan voldaan wordt aan de for-voorwaarde.
RobV schreef op zondag 21 december 2014 @ 16:36:
Je bent goed op weg in elk geval met het eerste gedeelte (regel 37-49), ik zou de rest wel voor je kunnen invullen, maar ik denk dat je er meer van leert om eerst zelf lekker even te puzzelen.
Zou je me in ieder geval een commando kunnen geven waar ik naar op zoek kan gaan? Ik weet nu dat het de "for" en de "while" niet moeten zijn. Maar welke dan, dat is de grote hamvraag.

[ Voor 17% gewijzigd door sypie op 22-12-2014 12:02 ]


Acties:
  • 0 Henk 'm!

  • sypie
  • Registratie: Oktober 2000
  • Niet online
Dubbel.

[ Voor 97% gewijzigd door sypie op 22-12-2014 12:01 ]


Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
Als je een if-statement gebruikt op dezelfde manier als bij de knipperende led, moet je eruit kunnen komen.

Probeer anders eerst de LED's allebei te laten knipperen, maar in een verschillend tempo.

Acties:
  • 0 Henk 'm!

  • RobV
  • Registratie: Juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
Om twee dingen tegelijk te kunnen doen, moet je af van de wachtstand. Ik zal het proberen uit te leggen met een verhaaltje:

Bij ons hadden we op de hoek een snackbar. Op zaterdag was het altijd druk. Maar de eigenaar was niet erg handig. Hij nam eerst de bestelling op van klant 1, dan gooide hij alles in de frituur en stond te wachten tot alles klaar was. Daarna pakte hij alles in en rekende af. Dan begon hij aan klant 2.

In pseudo code:

code:
1
2
3
4
5
6
7
8
9
10
11
12
void loop()
{
    while(geen_klant())
    {
       delay(200);
    }

    neem_bestelling_op();
    gooi_alles_in_de_frituur();
    delay(5000);
    reken_af();
}


Je snapt, dat als er twee klant achter elkaar aan binnenkomen, dat hopeloos inefficient gaat worden.

De pizza-puntenzaak ernaast deed het beter. Als er een klant binnenkwam, nam hij direct de bestelling op en stopt hij de pizza in de oven. Ondertussen deed hij andere dingen zoals worst snijden en deeg kneden. Na 5 minuten ging er een wekker af en was een pizza klaar. Soms had hij wel twee pizza's tegelijk in de oven, maar daarvoor had hij een 2e wekker gekocht.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
void loop()
{
   /* het probleem van meer dan 2 klanten heb ik hier even buiten beschouwing gelaten */
   if(nieuwe_klant())
   {
      neem_bestelling_op();
      vul_oven(pizza);
      if(pizza_1_bezig()  == false)
      {
          wekker1.start();
      }
      else
      {
         wekker2.start();
      }
   }

   if(wekker1.rinkelt())
   {
      //haal pizza 1 uit de oven
      wekker1.stop();
      pizza_inpakken_en_wegwezen();
   }

   if(wekker2.rinkelt())
   {
      wekker2.stop();
      pizza_inpakken_en_wegwezen();
   }

   //doe andere dingen.
}


Laat dit eventje bezinken.

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


Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Heeft iemand toevallig ervaring met I2C waarbij er 2 identieke modules aangesloten moeten worden met identiek en helaas niet te veranderen adres? Lees her en der wel dat het werkend te krijgen is, zowel met softwarematige als hardwarematige oplossingen, maar als iemand hier toevallig al eens tegenaan is gelopen en ervaringen zou willen delen :)

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

Oscar Wilde


Acties:
  • 0 Henk 'm!

  • sebastius
  • Registratie: September 2000
  • Laatst online: 06:44

sebastius

Laten we lekker link gaan doen

Ja er bestaan dacht ik I2C switches voor. Je zou in het geval van Arduino ook misschien een 2e i2c bus kunnen maken?

Acties:
  • 0 Henk 'm!

  • ThinkPad
  • Registratie: Juni 2005
  • Laatst online: 21:36
RobV schreef op maandag 22 december 2014 @ 13:03:
Om twee dingen tegelijk te kunnen doen, moet je af van de wachtstand. Ik zal het proberen uit te leggen met een verhaaltje:
[..]
Leuk uitgelegd :)

offtopic:
De Arduino die m'n slimme meter uitleest en waar jij me toen met de code ook een goed eind op weg hebt geholpen draait nog steeds als een tierelier :)

[ Voor 24% gewijzigd door ThinkPad op 22-12-2014 17:20 ]


Acties:
  • 0 Henk 'm!

  • RobV
  • Registratie: Juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
ThinkPadd schreef op maandag 22 december 2014 @ 17:19:
[...]

Leuk uitgelegd :)

offtopic:
De Arduino die m'n slimme meter uitleest en waar jij me toen met de code ook een goed eind op weg hebt geholpen draait nog steeds als een tierelier :)
Merci! Ik ben nooit officieel trainer geweest,maar heb in de afgelopen 25 jaar heul veul mensen op weg geholpen. Helaas mis je bij zo'n forum een stukje interactie om iemand echt goed te helpen, maar goed... alle beetjes helpen.

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


Acties:
  • 0 Henk 'm!

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05
Raven schreef op maandag 22 december 2014 @ 17:16:
Heeft iemand toevallig ervaring met I2C waarbij er 2 identieke modules aangesloten moeten worden met identiek en helaas niet te veranderen adres? Lees her en der wel dat het werkend te krijgen is, zowel met softwarematige als hardwarematige oplossingen, maar als iemand hier toevallig al eens tegenaan is gelopen en ervaringen zou willen delen :)
Ik heb dat wel eens gedaan met 4 Sensirion SHT71/SHT75 sensoren. Deze hebben een eigen 2-wire protocol dat niet I2C is, maar het lijkt er wel op. Knoop ze allemaal aan dezelfde SCL, geef ze elk een aparte SDA en dan gewoon bitbangen met 4 tegelijk.

Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
sebastius schreef op maandag 22 december 2014 @ 17:17:
Ja er bestaan dacht ik I2C switches voor. Je zou in het geval van Arduino ook misschien een 2e i2c bus kunnen maken?
De switches (multiplexers) ben ik al tegengekomen, maar zoek eigenlijk iets waarvoor ik niet weken op hoef te wachten, dat ik zelf iets in elkaar kan MacGyveren mbv transistors ofzo, die heb ik namelijk ruim op voorraad. Zie bijv. http://forum.arduino.cc/i...10115.msg826927#msg826927 , alleen jammer dat daar geen schema bij staat.
Ploink schreef op maandag 22 december 2014 @ 19:35:
[...]

Ik heb dat wel eens gedaan met 4 Sensirion SHT71/SHT75 sensoren. Deze hebben een eigen 2-wire protocol dat niet I2C is, maar het lijkt er wel op. Knoop ze allemaal aan dezelfde SCL, geef ze elk een aparte SDA en dan gewoon bitbangen met 4 tegelijk.
't is alleen de vraag hoe dat moet, zo goed ken ik i2c nou ook weer niet ;) Gaat over de HMC5883L trouwens.

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

Oscar Wilde


Acties:
  • 0 Henk 'm!

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05
Raven schreef op maandag 22 december 2014 @ 20:26:
[...]

De switches (multiplexers) ben ik al tegengekomen, maar zoek eigenlijk iets waarvoor ik niet weken op hoef te wachten, dat ik zelf iets in elkaar kan MacGyveren mbv transistors ofzo, die heb ik namelijk ruim op voorraad. Zie bijv. http://forum.arduino.cc/i...10115.msg826927#msg826927 , alleen jammer dat daar geen schema bij staat.


[...]
't is alleen de vraag hoe dat moet, zo goed ken ik i2c nou ook weer niet ;) Gaat over de HMC5883L trouwens.
Zo moeilijk is het niet en als je even zoekt op bitbang I2C dan zijn er veel code samples te vinden. Je kan het ook zelf uitvlooien en er wat van leren.
Probeer het eerst met eentje en pas de code dan aan om ze tegelijkertijd uit te lezen. Gebruik bij voorkeur geen DigitalWrite/Read want dat is erg langzaam.

Bdw, ik zie dat HMC5883L idd geen adres selectie heeft en ook geen CS (chip select) of Enable pin. Blijkbaar heeft Honeywell nooit gedacht dat een of andere gekke tweaker er twee zou willen aansluiten :+
Tegelijk uitlezen heeft misschien wel een voordeel omdat je data hebt van hetzelfde moment tijdens de acrobatische actie van je quadcopter.

[ Voor 16% gewijzigd door Ploink op 22-12-2014 21:11 ]


Acties:
  • 0 Henk 'm!

  • sypie
  • Registratie: Oktober 2000
  • Niet online
Ontzettend bedankt voor de moeite die je gedaan hebt. Ik snap de analogie. Wat ik echter niet snap, en dat ligt aan mijn kennis en onkunde, is hoe ik dit moet programmeren.

Ik ben nu een beetje aan het stoeien gegaan zonder verdere documentatie bij de hand. Ik kan heel veel van internet halen, wat ik vervolgens aan weet te passen. Ik weet echter niet hoe code opgebouwd is, behalve dat iets ingesteld moet worden in de opstartfase en vervolgens in een loop zit van begin tot einde. Voor mij zou een cursus basiscode een héél goed idee zijn. (maar eerst mijn opleiding afronden)

Acties:
  • 0 Henk 'm!

  • RobV
  • Registratie: Juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
Dat kan nooit kwaad, maar onderschat de waarde van freubelen niet. Het is leuk én leerzaam. Zelf ergens achter komen geeft meer voldoening dan iets gewoon overnemen van een ander.

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


Acties:
  • 0 Henk 'm!

  • sypie
  • Registratie: Oktober 2000
  • Niet online
Dat ben ik geheel met je eens... Mijn vraagstuk leek voor mij redelijk eenvoudig: als ik twee LEDjes kan laten knipperen, om de beurt, dan moet ik het toch ook voor elkaar krijgen om de ene te laten fade en de andere te laten knipperen? Op zich kon dat ook prima, maar dit ging volgens de for-statements. De volgende stap was... niet duidelijk voor mij...

Ik ben geen programmeur, ik ben een technicus. Ik sluit dingetjes op elkaar aan, met of zonder solderen. Ik repareer elektrische apparaten (zolang het niet te klein wordt zoals dat wat Sebastius doet). Omdat ik nu een aantal leerlingen aan het experimenteren heb gezet met mijn Arduino bordje wil ik er zelf ook wat mee prutsen. Ik heb deze 2 weken daar wat tijd voor vrij gehouden, echter heb ik maar beperkt materiaal: 5 Ledjes en bijbehorende weerstanden :D

Ik ben ook al bezig geweest om te kijken of ik het met Scratch kan opzetten maar dat gaat nog helemaal niet goed. Ook daar moet ik flink wat tijd in investeren om dat onder de knie te krijgen.

Heb je een paar hints voor je "analogie"-code?
* zijn de wekkers bijvoorbeeld timers, waar eerder over gesproken werd?

Acties:
  • 0 Henk 'm!

  • sebastius
  • Registratie: September 2000
  • Laatst online: 06:44

sebastius

Laten we lekker link gaan doen

Te klein zoals ik doe? Haha ik heb ook een ondergrens, mobiele telefoons brand ik me niet aan :P

Acties:
  • 0 Henk 'm!

  • sypie
  • Registratie: Oktober 2000
  • Niet online
Ik doe alleen dingen die ik met mijn standaard soldeerbout kan doen (of liever nog: met een tang en een schroevendraaier), jij doet dingen met een heteluchtpistool en vergrootglas.

Acties:
  • 0 Henk 'm!

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05
sypie schreef op maandag 22 december 2014 @ 22:43:
[...]

Ontzettend bedankt voor de moeite die je gedaan hebt. Ik snap de analogie. Wat ik echter niet snap, en dat ligt aan mijn kennis en onkunde, is hoe ik dit moet programmeren.
Het is een andere benadering die je even onder de knie moet krijgen. Als je een knipper led wil en een fade led, op verschillende snelheid, dan heb je twee taken. Op een PC kun je gewoon twee threads maken die elk hun eigen ding doen en dan worden de acties vanzelf verweven. Zonder multithreading moet je dat in elkaar weven zelf doen.
De basis is bijvoorbeeld een oneindige lus en een kleine delay of timer zodat je code bijvoorbeeld 100x per seconde wordt uitgevoerd. Als je dit eenmaal doorhebt, dan kun je het ook naar de achtergrond verplaatsen in een timer interrupt.
De truuk is dus dat je bij elke iteratie van de lus de status van de led bijhoudt (of de pizza bestelling..) en daarop actie onderneemt.

Hier een voorbeeld voor een knipper led, waar je op de zelfde manier een fade led bij kan maken.

C:
1
2
3
4
5
6
7
8
9
10
unsigned char blink_count=0;
unsigned char blink_speed=3;
while (1) {
  blink_count+=blink_speed;
  if (blink_count & 128) {LED aan}; else {LED uit};  
  
  // LED fade hier :)

  delay_ms(10); 
}

Acties:
  • 0 Henk 'm!

  • RobV
  • Registratie: Juni 2013
  • Niet online

RobV

Welcome to the grid, Program.

(overleden)
Misschien leuk als in in hapklare brokjes vanaf 0 begin?

De functies setup() en loop()

Een lege sketch (want zo heet zo'n Arduino programmaatje) ziet er zó uit:
C:
1
2
3
4
5
6
7
void setup()
{
}

void loop()
{
}


setup wordt maar één keer aangeroepen door de Arduino, loop wordt daarentegen elke keer aangeroepen. Achter de schermen zit namelijk de standaard main functie van C:

C:
1
2
3
4
5
6
7
8
void main()
{
   setup();
   for(;;)
   {
      loop();
   }
}


Ik denk dat de heren ontwerpers dit gedaan hebben zodat ze het for statement niet gelijk uit te hoeven leggen. Hoe dan ook, het is belangrijk om te weten dat er 2 functies zijn, en dat wanneer de loop functie is afgelopen, hij direct weer overnieuw begint.

variabelen en scope
Ik houd het voor de introductie even bij een type variabele die alleen getallen kan bevatten: de int. De int kan op een 16-bit processor een getal bevatten van in ieder geval -32767 tot 32768 (ongeveer). Dit is voor de meeste doeleinden voldoende. (*disclaimer: dit kan verschillen op systemen, maar voor dit doel goed genoeg)

In C kun je variabelen niet gewoon gebruiken, je zult ze moeten declareren:

C:
1
int teller;

Hiermee geeft je aan dat je een ding hebt gemaakt dat 'teller' heet en dat hij een getal kan bevatten. Meestal geven we zo'n ding gelijk een waarde.
C:
1
int teller = 0;


Binnen de loop kunnen we de teller mooi gebruiken:

C:
1
2
3
4
5
6
7
8
9
10
void loop()
{
   int teller;

   teller = teller + 1;
   if(teller > 100)
   {
      //doe iets met lampjes of zo.
   }
}


Helaas, waarom werkt dit niet? Dit werkt niet, omdat de teller BINNEN de loop functie is gedefinieerd. Wanneer de IF is uitgevoerd (en het einde van loop() is bereikt) begint de functie opnieuw en wordt OPNIEUW een 'teller' gedefinieerd. Deze begint vrolijk vanuit zijn startwaarde 0.

Er zijn meerdere manieren om dit op te lossen:
  1. door de teller BUITEN de functie te definiëren, of
  2. door de variabele static te maken.
Als je hem buiten een functie definieert, blijft hij zijn waarde behouden en kan de variabele in iedere functie gebruikt worden. Dit noemen we een globale variabele. De andere manier, static, heeft als voordeel dat de 'teller' alleen te gebruiken is binnen de functie waar je hem definieert (is meestal iets netter).

haakjes eehm accolades 'curly braces'
Binnen C, C++, Java, C# en alle varianten worden opdrachten gegroepeerd met behulp van braces:

C:
1
2
3
4
5
6
7
8
9
10
11
12
void loop()
{
   if(....) 
   {
      //doe dit
      //doe dat
   }
   else
   {
      //doe wat anders
   }
}


Zorg er altijd voor dat je braces netjes gebalanceerd zijn (dus voor elke haak-open ook een haak-sluiten), en spring je code in bij elke haak-open. De compiler interesseert het geen reet maar wij mensen vinden dit bijzonder prettig. Het maakt overigens niet uit of je een haakje-open op dezelfde regel of op een nieuwe regel plaatst. Dit is een kwestie van voorkeur en conventie (wees wel altijd consequent dat scheelt fouten).

Tweede tip: hoewel voor een groep met één statement de haakjes overbodig zijn, adviseer ik je ze toch te gebruiken om potentiele bugs te vermijden:

C:
1
2
3
4
5
6
7
8
9
10
//niet zo:
if(teller > 100)
    start_de_motor();
...

//maar zo:
if(teller > 100) 
{
   start_de_motor();
}


Het risico is namelijk dat je een 2e ding wilt doen naast het starten van de motor en dan krijg je deze situatie:
C:
1
2
3
4
//niet zo:
if(teller > 100)
    start_de_motor();
    bak_een_taart();

In bovenstaand geval bak je namelijk ALTIJD een taart, onafhankelijk van de if. De if eindig namelijk na het starten van de motor omdat er geen braces omheen staan.

Nog een instinker: variabelen vergelijk je met ==, variabelen geef je een waarde met =
C:
1
2
3
4
5
6
//fout fout fout
if(x = 4)
{

}
// x heeft nu altijd de waarde 4.


Ik sluit deze tutorial af met een laatste instinker:

Achter if, while, for hoort géén punt-komma
C:
1
2
3
4
5
6
//fout fout fout
if(teller > 100);    // hier hoort geen puntcomma
{
  bak_een_pizza();
}
//fout fout fout


De uitleg? Een punt-comma zonder code is een soort NULL-statement en sluit daarmee het if-statement af. Ik noem deze expliciet omdat beginner heel vaak zitten de puzzelen waarom hun sketch niet werkt. Als je deze 2 instinkers (genoemd 'ongewenste assignatie' en 'empty statement') snel herkent scheelt dat een hoop tijd.

Succes!

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


Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Ploink schreef op maandag 22 december 2014 @ 21:02:
[...]

Zo moeilijk is het niet en als je even zoekt op bitbang I2C dan zijn er veel code samples te vinden. Je kan het ook zelf uitvlooien en er wat van leren.
Probeer het eerst met eentje en pas de code dan aan om ze tegelijkertijd uit te lezen. Gebruik bij voorkeur geen DigitalWrite/Read want dat is erg langzaam.

Bdw, ik zie dat HMC5883L idd geen adres selectie heeft en ook geen CS (chip select) of Enable pin. Blijkbaar heeft Honeywell nooit gedacht dat een of andere gekke tweaker er twee zou willen aansluiten :+
Tegelijk uitlezen heeft misschien wel een voordeel omdat je data hebt van hetzelfde moment tijdens de acrobatische actie van je quadcopter.
Kijk, nou weet ik waar ik op moet zoeken, thanks :)

Vandaar mijn vraag :+ , eerst maar eens kijken of die HMC5883L wel wat kan detecteren in de watermeter, in de gasmeter iig wel, daar lijkt een ronddraaiend magneetje (als alternatief voor afwezige reflector) in te zitten :D ('t gaat dus niet over quadcopters :P )

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

Oscar Wilde


Acties:
  • 0 Henk 'm!

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05
Raven schreef op dinsdag 23 december 2014 @ 10:03:
[...]
Kijk, nou weet ik waar ik op moet zoeken, thanks :)

Vandaar mijn vraag :+ , eerst maar eens kijken of die HMC5883L wel wat kan detecteren in de watermeter, in de gasmeter iig wel, daar lijkt een ronddraaiend magneetje (als alternatief voor afwezige reflector) in te zitten :D ('t gaat dus niet over quadcopters :P )
Ok hij hoeft dus niet te vliegen :D

Dat van de gasmeter wist ik niet. Zit daar echt een magneetje in of detecteert dat compas de schommeling van het aardmagnetisch veld doordat intern een stuk ijzer beweegt? (Balgenmeter)

Er zijn twee typen watermeters, bij de veelgebruikte natte meter zit het hele telwerk onder water. Als je het glas zou breken heb je een lekkage.
Bij de droge meter zit in de metalen behuizing een draaiend magneetje. Het telwerk zit daar op geschroefd en wordt aangedreven door het magneetje.
Zie ThaHandy in "Watermeter elektronisch aflezen"

Acties:
  • 0 Henk 'm!

  • Raven
  • Registratie: November 2004
  • Niet online
Nope :P , al is ie al wel met breadboard en Arduino van de gasmeter gevallen :X , de kabel die er aan hing was ietsje te zwaar en trok de boel naar beneden.

Ene ThierryP op http://forum.jeelabs.net/node/978.html bracht mij op het idee, samen met een aantal bronnen die aangaven dat er in het telwerk van de gasmeter wel eens een ronddraaiend magnetisch iets zou kunnen zitten. Zie http://forum.jeelabs.net/comment/6623.html#comment-6623 voor het resultaat van ThierryP. De plaatjes zijn helaas dood, maar met dank aan Google cache een keer opgeslagen:
Afbeeldingslocatie: http://www.ravenslair.nl/GoT2/MAG3110-1.jpg

Afbeeldingslocatie: http://www.ravenslair.nl/GoT2/MAG3110-2.jpg


Ik heb de gasmeter hier een tijdje laten draaien door de thermostaat hoger te zetten. De sketch op een Arduino Nano las om de 200ms de HMC5883L uit die ik op een breadboard had geplaatst en op de gasmeter had gelegd en na zo'n 1400 resultaten te hebben gekregen heb ik alles overgezet naar MS Excel. Toen ik voor zowel de X, Y als Z coördinaten elk apart een grafiek liet maken (Excel 2010 doet niet aan 3d :/ en Matlab is niet het meest makkelijke softwarepakket) zag ik bij alle 3 als resultaat iets dat iets weg bleek te hebben van een sinusfunctie. Nadat de meter stopte met draaien, werd het een redelijk vlakke lijn.

Oftewel: resultaten waar ik wat mee kan :D Alleen ff uitvissen hoeveel m3 een zo'n sinusachtige periode voorstelt.



Watermeter:
Afbeeldingslocatie: http://www.ravenslair.nl/GoT2/watermeter.jpg

Geen idee of daar een magneetje in zit, vandaag maar eens naar kijken. Vitens wil er overigens geen plaatsen met dataloggingmogelijkheden daar dit een consumenten aansluiting 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


Acties:
  • 0 Henk 'm!

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05

Er zijn kleine bewegende delen, maar het grootste stuk metaal dat beweegt is dat stuk blik op de balg (20:30 in de video). Ik vermoed dus dat je de sensor ook lager, net onder de naad kan plaatsen en dan misschien een groter signaal krijgt.
Raven schreef op dinsdag 23 december 2014 @ 11:02:
Vitens wil er overigens geen plaatsen met dataloggingmogelijkheden daar dit een consumenten aansluiting is. :/
De leiding na de meter is van jou, dus je mag daar zelf een tweede meter achter plaatsen. Er zijn ook geschikte meters voor warm water en erg duur is een drooglopende meter met magneetje niet.
http://www.bestelsnel.nu/...ermeters/drooglopend/p-1/
De meters met pulsgever zijn wel duur, maar die hebben gewoon een reed switch en die kost bijna niks dus die kan je er ook zelf in klussen. Desnoods haal je gewoon het telwerk er af en dan zit je bovenop de magneet.

Acties:
  • 0 Henk 'm!

  • webdavid
  • Registratie: Mei 2014
  • Laatst online: 12:24
Hallo heren,

Voor natuurkunde ( havo 5 ) moet ik een autotje maken die een lijn kan volgen. Nou ben ik niet echt goed in elektronica dus ik wist eerst niet waar ik moest beginnen. Na lang zoeken op het internet kwam ik op het idee om met een arduino dit te doen. Nu zie ik veel verschillende tutorials alleen zo zie ik door de bomen het bos niet meer. Zouden jullie me hierbij kunnen helpen?

Ik heb al verschillende lijstjes van onderdelen gezien. Alleen zijn ze allemaal verschillend. Mijn idee is om dus 2 wieletjes voor te hebben en een winkelwagen wieletje achter. Dit is mijn schets:

Afbeeldingslocatie: http://i58.tinypic.com/dqr9u0.png

Mijn probleem is dat ik niet weet wat ik allemaal moet kopen.

ps: Ik heb niet veel geld

Alvast bedankt!

daviddebestnl @ tweakers2 clash of clans || i5 4690 ~ gtx 750 ti


Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
Als je op ebay zoekt naar "arduino wheels" vind je handige wieltjes inclusief motortje en overbrenging.
Verder zul je een motor driver (shield) nodig hebben, en natuurlijk de arduino en de sensoren.

Verder heb je natuurlijk wat jumperkabeltjes, een soldeerbout, breadboard enz. nodig om te experimenteren en te testen, maar dat kun je vast wel in het technieklokaal vinden.

oh en vergeet de nodige constructiematerialen niet om het autootje van te bouwen. Goed moment om je technisch lego of k'nex weer tevoorschijn te halen.

[ Voor 16% gewijzigd door mcDavid op 23-12-2014 15:10 ]


Acties:
  • 0 Henk 'm!

  • Sebazzz
  • Registratie: September 2006
  • Laatst online: 16-09 15:42

Sebazzz

3dp

Motor driver is niet noodzakelijk, in de Arduino starter kit zit een chip die je kan gebruiken.

[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]


Acties:
  • 0 Henk 'm!

  • sypie
  • Registratie: Oktober 2000
  • Niet online
Hier nog een (veel eenvoudiger) voorbeeld van zoiets: http://www.playwithrobots...imple-line-follower-robot
Pagina: 1 ... 66 ... 96 Laatste