Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[Spanningsdeler] Solide herkenning met 8 weerstanden

Pagina: 1
Acties:

  • Cassius
  • Registratie: Januari 2002
  • Niet online
Beste medetweakers,

Ik ben een beetje op zoek naar het volgende, maar kom er in mijn hoofd en tekeningen niet uit. Ik heb een circuit nodig dat uiteindelijk maar op 1 punt wordt aangesloten op een arduino/phidgets/uC. Maar uit dat punt moet ik informatie halen die stabiel is en ook vooral duidelijk anders.

Stel je hebt 8 balletjes, daarin heb je 8 verschillende weerstanden verlijmd met hun contactpunten bloot en vergroot door middel van een plat tinnen oppervlakje. Dit balletje kan maar op 1 manier in een bepaald soort "houder", onderin die houder maakt de weerstand daarom altijd contact met de schakeling die daaronder ligt.

Deze maakt niet alleen de schakeling compleet [lees: zet signaal op de ingang van de uC]; maar geeft door die completering ook een soort waarde af op die analoge poort [ADC uiteraard]. Maar nu moet die waarde echt goed verschillen en stabiel goed verschillen wil ik erop kunnen handelen met het programma; ik dacht zelf aan het volgende [even in volgorde]:


GND --- | 5V | --- 100K --- GND
......................|
......................--- * K --- * uF --- input poort

[puntjes zijn om spaties op te vullen]

Hopelijk is dit duidelijk. Ik dacht dat een kleine condensator misschien nodig was om klappen op te vangen en het signaal behoorlijk stabiel te houden. Ik ben niet bekwaam in het rekenen hieraan aangezien dit geenzins mijn opleiding is - daarom durf ik het hier te vragen.

Wat neem ik als de 8 verschillende K's? Gewoon 10/20/30/40 etc? Of moet ik hieraan anders rekenen met bepaalde niet lineaire formules? En is mijn simpele schakeling correct, of hoe moet ik aan die 'schokdemper' rekenen :/ ?

Sorry dat het veel simpele vragen zijn - maar dat is meer een compliment naar jullie dat ik de uitleg hier meestal beter vind dan in ons electronica labje :Y !

Edit: context, dit moet zo zijn omdat de objecten helemaal passief moeten zijn en de informatie dus uit een database gehaald moet worden in de software [max msp]. Echter is een rfid te omslachtig, laat staan fysiek te groot voor het miniballetje/stokje. Dat jullie weten waarom :) !

[ Voor 10% gewijzigd door Cassius op 24-11-2008 20:29 ]

De meeste mensen deugen!


  • Mr_gadget
  • Registratie: Juni 2004
  • Laatst online: 21:54

Mr_gadget

C8H10N4O2 powered

Ik vraag me af of die schakeling überhaubt gaat werken maar misschien moet je hem nog wat duidelijker tekenen.
Je moet even rekenen aan je spanningsdeler voor de waarden van je weerstand, wat is je inputvoltage en hoeveel bits heeft je adc? Daarnaast kan je beter je condensator aan de grondzetten tegen het denderen.

  • naftebakje
  • Registratie: Februari 2002
  • Laatst online: 20-11 15:08
Dit vind ik nogal onduidelijk (schema is totaal onleesbaar). Van wat ik er uit kan gokken, wil je 8 verschillende balletjes herkennen door er 8 verschillende weerstanden in te steken, en deze via de ADC van een µC "op te meten".
Je ADC zal spanning meten, over een bepaald gebied (meestal 0 tot 5V), met een bepaalde resolutie (bijvoorbeeld 10 bits, dan kan ie 2^10 = 1024 verschillende waarden onderscheiden). Je wil 9 ! waarden herkennen, want elk van de 8 balletjes(weerstanden) en ook wanneer er geen balletje (weerstand) is.
Geen balletje = 0V is het eenvoudigst, dus de zelfgekozen weerstand van de spanningsdeler (wellicht die 100K) hang je tussen de ADC poort en de massa.
De weerstanden in het balletje kies je zo, dat de spanningen die ze in de spanningsdeler maken gelijk gespreid zijn binnen het bereik van je ADC (op die manier heb je de maximale ruimte om afwijkingen op te vangen), trek je niets aan van het bijzondere geval van geen balletje (die behandel je als de hoogst berekende weerstand, die geeft de minste spanning aan de ADC).

Als de boer zijn koeien kust, zijn ze jarig wees gerust. Varkens op een landingsbaan, leiden nooit een lang bestaan. Als de boer zich met stront wast, zijn zijn hersens aangetast. Als het hooi is in de schuur, zit het wijf bij den gebuur.


  • Cassius
  • Registratie: Januari 2002
  • Niet online
Hopelijk is het zo wat duidelijker:

Afbeeldingslocatie: http://img143.imageshack.us/img143/2219/sensordrawingno1.png

Ik weet niet zo goed hoe ik de hoogste weerstand, de bovenste dus, moet berekenen - dus heb ik nu een gemakkelijke weerstand waarmee ik met 1K/2K/3K etc de variaties kan maken in de spanningsdeler. Ik weet niet zeker of er ook een condensator tussen de hoogste weerstand en de interne ground van de uC moet? Ook beken ik dat de uF waarde van 10 gegokt is voor achter de variabele weerstand :/ ...

Mochten jullie me kunnen tonen hoe ik eraan moet / kan rekenen, dat is beter als gewoon het antwoord geven. Anders snap ik het nog niet :| ... either way, bedankt :) !

De meeste mensen deugen!


  • kluyze
  • Registratie: Augustus 2004
  • Niet online
Het eerste waar ik aan dacht toen ik je vraag las, was een opamp in een sommator schakeling. Moet je maar eens opzoeken op google. Dat gaat het geheel misschien iets stabieler maken als een spanningsdeler.

Verder als ik je verhaal lees en ik zie wat voor doel je wil bereiken, of wat ik denk dat je wil bereiken. Denk ik dat je het beste werkt met weerstanden in waardes van het binaire talstelsel. Dus bv je grootste weerstand is dan 128, dan telkens omlaag, 64, 32, 16, 8, 4, 2, 1. Maar dan met veelvouden hiervan om niet te zeer in de tolerantie van de weerstanden te knoeien. Dan kom je op een totaal van 255 uit, die je dan afhankelijk van de opamp kan versterken naar bv 2.55V. Als je dan met een externe referentie van je ADC (als dat mogelijk is) van 2.56V werkt kan je bijna binair de waarden binnen nemen en kan je mooi zien welke weerstanden je in de schakeling hebt zitten.

  • Part
  • Registratie: September 2000
  • Laatst online: 19-11 21:00

Part

Helemaal niets.....

Cassius schreef op maandag 24 november 2008 @ 23:16:
Hopelijk is het zo wat duidelijker:

[afbeelding]

Ik weet niet zo goed hoe ik de hoogste weerstand, de bovenste dus, moet berekenen - dus heb ik nu een gemakkelijke weerstand waarmee ik met 1K/2K/3K etc de variaties kan maken in de spanningsdeler. Ik weet niet zeker of er ook een condensator tussen de hoogste weerstand en de interne ground van de uC moet? Ook beken ik dat de uF waarde van 10 gegokt is voor achter de variabele weerstand :/ ...

Mochten jullie me kunnen tonen hoe ik eraan moet / kan rekenen, dat is beter als gewoon het antwoord geven. Anders snap ik het nog niet :| ... either way, bedankt :) !
Bovenste weerstand zit nu tussen de 0 en 5 volt en heeft dus geen functie.
Haal deze los bij de 5 volt en maak hem vast op line B. Vervolgens de elco er uit en je kan weerstand meten.
Je zou over de 2 meet punten nog een condensator van bv 100n kunnen zetten tegen contact dender.

Als je alle 8 balletjes tegelijk wil meten zoals hierboven beschreven dan heb je weerstanden nodig van 0.5% tolerantie of je moet 1% weerstanden gaan selecteren.

[ Voor 7% gewijzigd door Part op 25-11-2008 09:44 ]


  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 21:12

SA007

Moderator Tweaking
Je tekenening gaat zo iig niet werken.

Ik zou een pullup pakken van 10K aan de input pin, de andere input pin aan ground gooien.
Misschien een 100nF ofzo parallel eraan, maar zal ook wel werken zonder.

Dan kom je op dit soort waardes:
Geen bal = 5V
Bal1 = 51K = 4.18V = 84%
Bal2 = 27K = 3.65V = 73%
Bal3 = 15K = 3V = 60%
Bal4 = 10K (zelfde als pullup) = 2.5V = 50%
Bal5 = 6.8K = 2.02V = 40%
Bal6 = 5.1K = 1.688V = 31.2%
Bal7 = 2.2K = 0.90V = 18%
Bal8 = 1K = 0.37V = 8%

Dat zou overal meer dan genoeg speling moeten geven.
Ik heb waardes uit de E12 serie aangehouden, die zijn ook makkelijk te krijgen.

[ Voor 0% gewijzigd door SA007 op 25-11-2008 16:02 . Reden: Rekenfoutje ]


  • Cassius
  • Registratie: Januari 2002
  • Niet online
Afbeeldingslocatie: http://img141.imageshack.us/img141/7693/sensoruf0.png

Lijkt dit er dan meer op in de goede richting :) ?

Ik zocht naar de sommator en vond wat beperkte info op wikipedia - nu lijkt dit mij op zich wel redelijk goed te doen; maar ook wat complexer te bouwen [meer onderdelen] en ik kan er niet aan rekenen met mijn kennis. Daarom zou ik graag voortboorduren op het gegeven voorbeeld (omdat ik dat nog een beetje begrijp).

Wat is een "pullup"?

[ Voor 122% gewijzigd door Cassius op 25-11-2008 11:00 ]

De meeste mensen deugen!


  • Schapie
  • Registratie: Februari 2004
  • Laatst online: 19-02 21:48

Schapie

Bleh...

Pullup weerstandje wordt gebruikt om de ingang bij geen variabele toch van een stabiele waarde te voorzien. Je nulpunt ijking dus. Als je dit niet doet gaat je ingang zweven en kun je niet stabiel werken.

Volgens mij moet dat van SA007 best goed werkzaam zijn. Dit zijn iig veel gebruikte schakelingen in de meetregel techniek om dmv een potmeter waardes te meten.

No signature found


  • Part
  • Registratie: September 2000
  • Laatst online: 19-11 21:00

Part

Helemaal niets.....

Cassius schreef op dinsdag 25 november 2008 @ 10:57:
[afbeelding]

Lijkt dit er dan meer op in de goede richting :) ?

Ik zocht naar de sommator en vond wat beperkte info op wikipedia - nu lijkt dit mij op zich wel redelijk goed te doen; maar ook wat complexer te bouwen [meer onderdelen] en ik kan er niet aan rekenen met mijn kennis. Daarom zou ik graag voortboorduren op het gegeven voorbeeld (omdat ik dat nog een beetje begrijp).

Wat is een "pullup"?
Ja het gaat in de goede richting alleen nog de 100n over de *k zetten.

Voor de werking kun je beter zoeken op spannings deller.
Wikipedia: Spanningsdeler

Als je de waarden uit de tabel wil gebruiken moet je ook nog de 10K en *k omwisselen. Of je moet de tabel omdraaien.

[ Voor 13% gewijzigd door Part op 25-11-2008 12:49 ]


  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 21:12

SA007

Moderator Tweaking
Inderdaad, die waardes zijn berekend op de 10K verbonden tussen de VCC en de input.

Deze 10K trekt de spanning omhoog, vandaar pull-up ;)

  • Cassius
  • Registratie: Januari 2002
  • Niet online
Afbeeldingslocatie: http://www.freeimagehosting.net/uploads/57476bc44f.png

Mag ik vragen waarom er een tweede condensator omheen moet en waarom de waarde van 100nF aangeraden wordt?

Ik vraag me ook af of 10K wel goed is, want bij 5V gaat er dan theoretisch een stroom lopen van een halve mA ... is dat genoeg om te detecteren?

Zo ben ik een heel eind op weg, maar als er nu toch 1K in de variabele plek zit, dan meet ik toch juist 10/11 * 5V = 4.55V :/ ? Of snapte ik je commentaar niet goed Part en moet ik nu Analog In omwisselen met de GND?

[Voel me redelijk dom hier, maar ik moet het leren, klaar uit. Het voelt alleen allemaal zo zweverig als je weinig achtergrond kennis hebt op dat gebied ;) .]

[ Voor 19% gewijzigd door Cassius op 25-11-2008 13:40 ]

De meeste mensen deugen!


  • Part
  • Registratie: September 2000
  • Laatst online: 19-11 21:00

Part

Helemaal niets.....

Die 2e condensator is niet nodig maar mag wel.
Veer de rest is de schakeling prima.
Je meet vanaf de GND dus je meet 0,45 volt

[ Voor 76% gewijzigd door Part op 25-11-2008 14:01 ]


  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 21:12

SA007

Moderator Tweaking
Er gaat dan inderdaad maar een halve mA lopen, maar het gaat ook niet over de stroom maar over de spanning.

Hoe je de spanning over een punt berekend is zo:
VCC = 5V
GND = 0V
Dus 5V spanningsverschil

Je Pullup is 10K, je 'onbekende' is 5.1K
Dat betekent dat het totaal 15.1K Ohm is.

Dan loopt er een stroom van (I = U / R == I = 5 / 15100) = 0.3311 mA.

Dan staat er over je onbekende in vergelijking met je GND (want zo meet je adc):
U = I*R = 0.3311 * 5100 = 1.688V

Dit is allemaal standaard Wet van Ohm gebeuren.

Die formule kan je ook wat versimpelen door het op te delen.
Als het totaal 15.1K is en het deel wat je wil hebben 5.1K is op 5V:
(5/15.1)*5.1 = 1.688 = hetzelfde als de de andere.
Wat natuurlijk een wat simpeler berekening is ;)

offtopic:
Blijkbaar had ik deze net verkeerd berekend in mijn lijstje

[ Voor 5% gewijzigd door SA007 op 25-11-2008 16:02 ]


  • naftebakje
  • Registratie: Februari 2002
  • Laatst online: 20-11 15:08
Cassius schreef op dinsdag 25 november 2008 @ 13:36:
[afbeelding]

Mag ik vragen waarom er een tweede condensator omheen moet en waarom de waarde van 100nF aangeraden wordt?
...
De condensator die nu tussen gnd en +5V zit hoef je niet te zetten, die heeft geen/nauwelijks invloed op je meetschakeling.
De reden van de waarde van 100nF is wellicht pure gewoonte, voor ontstoring van voedingslijntjes rond een µC wordt érg vaak een 100nF condensatortje gebruikt dus is het handig om om die plaats (die ook ontstoring nodig heeft) meteen hetzelfde te zetten. In principe kan je er ook berekeningen aan gaan doen, maar een waarde uit de losse pols zal ook wel werken.

Als de boer zijn koeien kust, zijn ze jarig wees gerust. Varkens op een landingsbaan, leiden nooit een lang bestaan. Als de boer zich met stront wast, zijn zijn hersens aangetast. Als het hooi is in de schuur, zit het wijf bij den gebuur.


  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 21:12

SA007

Moderator Tweaking
Zo is het met heel erg veel componenten in de electronica eigenlijk.

Standaard pull-uo, ene gebruikt 1K iemand anders pakt lieer 10K of ergens ertussenin.

Vaak kies je je componenten ook naar wat je hebt liggen.

Vaak worden er standaardwaardes als 1K, 10K, 100nF, 100µF, etc gebruikt.
Net als dat je meestal op 3.3V 5V of 12V uitkomt.

Beetje een combinatie van goedkoop, makkelijk verkrijgbaar en de voorraad die je hebt liggen.

  • Cassius
  • Registratie: Januari 2002
  • Niet online
Nog even ter afsluiting, de schakeling werkt prima!

De meeste mensen deugen!

Pagina: 1