Pages: [1] 2 3   Go Down
Author Topic: Kondensatoren als Spannungsglättung bei Stepsequencer  (Read 2238 times)
0 Members and 1 Guest are viewing this topic.
Vienna (Austria - Europe)
Offline Offline
Jr. Member
**
Karma: 0
Posts: 58
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo!

Ich hätte eine Frage bzgl. meinem Stepsequencer Projektes.
Kurze Beschreibung:
Breadboard Arduino (d.h. "onboard")
8x4 Button LED´s; 1x8 Lauflicht LED´s, 1x8 sonstige LED´s, d.h. mittels 6x 595er Shiftregister
8 Potis mittels Mutliplexer (4051er)
2x externe EEprom´s
Matrixbuttons(4x8) mittels Spannungsteiler "gelöst" (nicht optimal, bei 32 Buttons)
Steuerbuttons auch mittels Spannungsteiler (anderer Analog Pin)
2x16er LCD Display
Midi In +Out

Eine komplette Projektbeschreibung wird inkl. Dokus und Schaltplänen folgen, wenn das Projekt fertig ist (immerhin alles zusammen für weit unter 100 Euro!!!). Hardware ist als Prototyp fertig, Software befindet sich bei 85%.

Mir ist nur augefallen, dass - je nachdem welche Stromquelle (momentan über USB) ich anschließe, es zu einem kurzfristigen Spannungsabfall und zu einem Absturz des Atmegas kommt.
Vor allem tritt der Absturz dann auf, wenn ich von einem Pattern mit vielen aktiven LED´s auf eines mit weniger wechsle
Testhalber habe ich einen 4,7uf Elko  zwischen VCC und GND eines 595er geschalten und das Problem war nicht mehr vorhanden.
Da ich es jedoch nicht dem Zufall überlassen will, gibt es von eurer Seite her Erfahrung,
a) welche Kondensatorentypen geeignet sind (Elkos, Kerkos, ...)
b) welche Kapazität sie besitzen sollen
c) an welchen Stellen sie im Schaltplan am besten eingebaut werden sollen (direkt bei VCC bei den Chips?)

Vielen Dank!

Liebe Grüße

Matthias
Logged

0
Offline Offline
Faraday Member
**
Karma: 23
Posts: 3470
20 LEDs are enough
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Üblicherweise 100nF direkt an jeden Chip. "Direkt" heisst dabei mit geringstmöglichem Abstand. SMD ist da klar im Vorteil.

Was VCC angeht schaut man bevorzugt in die Application Notes des verbauten Spannungsreglers.

Ansonsten lies mal http://www.dse-faq.elektronik-kompendium.de/dse-faq.htm#F.14.1 und http://www.dse-faq.elektronik-kompendium.de/dse-faq.htm#F.14.
Logged

Check out my experiments http://blog.blinkenlight.net

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 251
Posts: 21243
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Unbedingt 0,1µF (100nF) nahe an jedem IC.
Bei so vielen LEDs ist der Stromverbrauch nicht zu vernachlässigen. Ich zähle da 42 LED.
Wieviel Strom gönnst Du den LEDs?
Grüße Uwe
Logged

Vienna (Austria - Europe)
Offline Offline
Jr. Member
**
Karma: 0
Posts: 58
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Super! 1000 Dank für eure Antworten!
Das DSE-FAQ war genau, wonach ich suchte. Denk einmal, dass ich das Layout noch leicht verbessern muss. Kritisch dürfte es nicht sein, wenn ich´s sogar mit einem langsamen Elko "ausgeglichen" hab. Gesamtverbrauch muss ich mir erst ausrechnen, spendiere den 3mm LED´s jedoch wenig Strom (d.h. höherer Widerstandswert, da ich sie nicht an der Leistungsgrenze hell haben will).

Leider ist mir beim Durchtesten noch eine Frage gekommen, die betrifft die Buttons (32), die ich, mangels I/O Pins, mittels Spannungsteiler realisiert habe:
Je mehr LED´s leuchten, d.h. je höher der Stromverbrauch, desto gravierender werden die Werteänderungen, jedoch leider nicht gleich, Beispiel:
Ich hab folgende Fixwerte errechnet (wenn alle LED´s aus sind):
const prog_uint16_t buttonmapping[]PROGMEM= {
  1017,992,964,938,912,889,866,843,823,805,787,769,752,735,721,705,692,678,665,652,640,628,616,605,594,584,576,566,557,548,538,530};

D.h. 1017 als höchsten Spannungsteilerwert, 530 als niedrigsten.
Sobald alle LED´s leuchten, ist der höchste Wert 1012, der niedrigste 542, d.h. sie verhalten sich antiproportional.
Die einzige Lösung, die mir einfällt ist, dass ich mehrere Wertetabelle erstelle, und in Abhängigkeit der leuchtenden LED´s verwende. Ideal ist dies natürlich nicht.
PS: Hab mal als Anhang zwei kleine Fotos des Prototypen gemacht!

Danke!

Liebe Grüße
Matthias


* 30965_3517218703236_686026465_n.jpg (136.69 KB, 960x720 - viewed 28 times.)

* 550700_3517216263175_203998080_n.jpg (175.54 KB, 960x720 - viewed 20 times.)
Logged

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 251
Posts: 21243
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Wenn Du als Referenzspannung für den ADC die 5V Versorgungsspannung nimmst (die default eingestellt ist) dann ist die Messung immer richtig. Ein Absinken der Versorgungspannung gibt den gleichen ADC Wert, weil die Referenzspannung gleich absinkt.
Hast Du ein R/2R Netzwerk genommen?
Wieso schöpfst Du nicht den ganzen möglichen Wertebereich aus sondern nur die Hälfte?

Als Alternative kannst Du ein oder 2 I2C Port Expander nehmen und die Tasten in eine Matrix geben oder bei 2 MCP23017 könntest Du sogar jede Taste einzeln auf einen Eingang schalten.
I2C Bus braucht 2 Pins (A4 und A5)
Grüße Uwe
Logged

Vienna (Austria - Europe)
Offline Offline
Jr. Member
**
Karma: 0
Posts: 58
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Das mit der Ref-Spannung wäre eine Idee!
Ein I2C Port Expander hab ich mir auch schon überlegt, aber ich wollte die Kosten minimiert, v.a. sind die Port Expander schwer(er) erhältlich und nach Österreich zahl ich immer Phantasieversandkosten (10-15 Euro). Schade, weil am A4/A5 hängen eh schon zwei I2C EEproms.
Den gesamten Wertebereich wollte ich nicht ausschöpfen, da die Tact-Switches, die ich verwendet habe, eher ungenau sind und somit hab ich einen höheren Treshold Wert, dazu mein "Aha-Erlebnis gerade eben:
Hab die Buttons mittels einfachem Spannungsteilerprinzip realisiert (Schema: Anhang), R/2R Netzwerk klingt da  interessanter, wären halt 64 Widerstände. Welchen Vorteil würde das R/2R ergeben, v.a. punkto Genauigkeit, bzw. Entprellen?


Danke u. LG
Matthias


* screen-capture.tiff (1197.06 KB, 965x421 - viewed 78 times.)
Logged

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 251
Posts: 21243
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hab die Buttons mittels einfachem Spannungsteilerprinzip realisiert (Schema: Anhang), R/2R Netzwerk klingt da  interessanter, wären halt 64 Widerstände. Welchen Vorteil würde das R/2R ergeben, v.a. punkto Genauigkeit, bzw. Entprellen?
Danke u. LG
Matthias
Entprellen gar keine.
Genauigkeit auch keine.
Vorteil Du hättest eine Binäre Abstufung. Wird bei DAC oft verwendet. Der Vorteil ist daß Du nur 1 Wert von Widerständen brauchst und nicht lange herumsuchen mußt damit die richtige Abstufung bekommst.
Nochmal nachgedacht; 32 Taster sind zu viele um das Auflösen zu können. Bei bis zu ca 6 Tasten könntest Du Mehrfachbetätigungen auflösen.

Quote from: madias
Den gesamten Wertebereich wollte ich nicht ausschöpfen, da die Tact-Switches, die ich verwendet habe, eher ungenau sind und somit hab ich einen höheren Treshold Wert
Wenn Du den gesamten Wertebereich ausnutzt hast Du bei gleichmäßiger Unterteilung einen größeren Abstand  zwischen den einzelnen Werten der Tasten von teoretisch 32 zwischen jeden Wert (und nicht wie jetzt zwischen 8 bis 25). Wenn Du den ganzen Wertebereich verwendest verdoppelst Du auch den jetzigen Werteabstand und somit die Störsicherheit.

Quote from: madias
Ein I2C Port Expander hab ich mir auch schon überlegt, aber ich wollte die Kosten minimiert, v.a. sind die Port Expander schwer(er) erhältlich und nach Österreich zahl ich immer Phantasieversandkosten (10-15 Euro).

https://www.distrelec.at/ishopWebFront/infoCenter.do?url=https%3A//www.distrelec.com/distrelec/infocenter.nsf/gdt%3FOpenForm%26type=gtc%26country=at%26language=de
Quote
Die Kosten der Verpackung sind im Preis enthalten. Für jede Standardlieferung wird ein Versandkostenbeitrag von Euro 3,30 zuzüglich MwSt. verrechnet. Die Lieferung erfolgt in der Regel per Paketdienst.

http://at.rs-online.com/web/generalDisplay.html?id=aboutRS&file=delivery
Transport bis 50€ Bestellwert 6,95€, dann gratis (ohne MwSt) oder Gratisabholen bei Verabredung im Lager in 3950 Gmünd.

Grüße Uwe
Logged

Vienna (Austria - Europe)
Offline Offline
Jr. Member
**
Karma: 0
Posts: 58
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Danke noch einmal für die rasche Antwort!

- Prinzipiell brauch ich überhaupt keine Mehrfachbetätigung

- Bezüglich R/2R Netzwerk: werde ich mir einfach einlesen, bevor ist unnötige Fragen stelle smiley nur bei Einzeltasterbetätigung wären es doch 1024 Werte oder?

- Distrelec + RS schickten, soweit ich mich erinnern konnte, nicht an Privatkunden...distrelec jetzt anscheinend schon lt HP

- Mit den Wertebereich hast du natürlich recht, hab gut 500 als unterste Schwelle genommen, die gar nicht notwendig ist...muss sowieso die ganze Matrix überdenken, hab jetzt auch bessere Tact switches zuhause liegen...nur bis ich das alle neu aufgebaut habe (v.a. in Betracht ziehend, dass sowieso eine 16 Button/Poti Reihe sinnvoller wäre, war halt mein erstes Arduino Projekt, wo ich eher blöd darauf los gebastelt habe u.v.a. dass meine 5 Monate alte Tochter mir eh keine Freizeit gönnt), vergehen sicher etliche Wochen smiley

Liebe Grüße

Matthias
Logged

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 251
Posts: 21243
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Distrelec verkauft an Privatkunden (kannst oben rechts auswählen wegen Preise mit oder ohne MwSt). RS verkauft in Italien an Privatkunden (wenigstens an mich). Weiß aber nichts bezüglich Österreich oder Deutschland.

Quote
nur bei Einzeltasterbetätigung wären es doch 1024 Werte oder?
Das verstehe ich nicht ganz wie Du das meinst.

Grüße Uwe
Logged

Vienna (Austria - Europe)
Offline Offline
Jr. Member
**
Karma: 0
Posts: 58
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Wie gesagt, beim R2/R Netzwerk les ich mich noch besser ein!
Ja, in AT/DE hat man bei vielen Elektronikversandhändlern das Problem, dass man Geschäftskunde sein muss und es wird auch  nachgeprüft (Ust ID), RS verschickt definitiv nicht nach AT... Eine gute, fast perfekte,  Liste ist unter http://www.mikrocontroller.net/articles/Elektronikversender zu finden.

LG
Matthias
Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 140
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo,

wo hast du die (Arcade) Buttons her? Suche auch sowas für meinen Step Sequenzer.

gruß komika
Logged

Vienna (Austria - Europe)
Offline Offline
Jr. Member
**
Karma: 0
Posts: 58
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ebay.
Gib einfach bei Ebay ein:
"Tact Switches" und wähle "kostenlose Lieferung" aus, da kommen massig Seiten aus Fernost.
Tipp: nimm immer gleich die Switches mit Button gemeinsam!

Die, die ich jetzt bestellt hab (nicht auf dem Foto), haben gute Qualität und kosten einen Spottpreis (versandkostenfrei)
Lieferzeiten sind jedoch zwischen 3 und 6 Wochen!
http://www.ebay.at/itm/330811317953?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1497.l2649#ht_1935wt_962
http://www.ebay.at/itm/330811318671?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1497.l2649#ht_2053wt_962
http://www.ebay.at/itm/330811319152?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1497.l2649#ht_2039wt_962 (blau mit LED!)

Starte mal einfach hier:
http://stores.ebay.at/jumbo4u/_i.html?_nkw=tact+switch&submit=Finden&_sid=1043007519

LG
Matthias
« Last Edit: December 28, 2012, 07:34:06 am by madias » Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 140
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hät ich das damals gefunden...
Hab jetzt schon andere. Wollte erste Digitasts nehmen, aber die sind sehr teuer.
Logged

Vienna (Austria - Europe)
Offline Offline
Jr. Member
**
Karma: 0
Posts: 58
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Kannst du ja mal auf Vorrat kaufen smiley
Bestell gut 80% meiner Elektronikartikel (Widerstände, Kondensatoren, IC Sockel, Stecker, Schalter, Arduino Erweiterungen, IC´s, EEproms, usw..) über Ebay, immer mit "Versandkostenfrei", da hab ich keine bösen Überraschungen. Hab schon gut 40 Pakete erhalten, nur eines nicht (LED´s um 2 Euro). Kostenersparnis zu Conrad/Reichelt etc.. gut 80-95%!!!
Logged

0
Offline Offline
Faraday Member
**
Karma: 23
Posts: 3470
20 LEDs are enough
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

32 Buttons per Spannungsteiler? Das kann nicht wirklich gut gehen. Grund: die Spannungsdifferenzen können höchstens 100/32 % also etwa 3% betragen. Wenn Du - warum auch immer - Widerstandstoleranzen >3% hast, dann geht das schon gelegentlich schief. Und es reicht ja nicht, daß sowas einmal funktioniert. Wenn sich die Umgebungstemperatur ändert, dann ändern sich die Widerstände auch. Ich würde sowas per Schieberegister realisieren. 2 IO Pins reichen um beliebig viele Taster per Schieberegister auszulesen.
Logged

Check out my experiments http://blog.blinkenlight.net

Pages: [1] 2 3   Go Up
Jump to: