www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ein kleines Problem :(


Autor: Hamed (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich habe ein kleines Problem, mit dem ich seit langen kämpfe und es 
nicht lösen kann.

Es geht um folgendes:
meine Freundin hat mich gefragt, ob ich für ihr Fahrrad ein 
"intelligentes" Standlicht bauen kann, das folgende Funktionen hat:
1- man kann das Standlicht mit einem Schalter ein/ausschalten
2- man kann mit einem Poti einstellen, bei welcher Lichtstärke die 
Versorgung der Lampe zwischen Batterie und Dynamo umgeschaltet wird, 
(inkl. Dauer-Batteriebtrieb und Dauer-Dynamo-Betrieb)
3- Wenn man vergessen hat, das Licht auszzuschalten, schaltet das 
automatisch nach einigen minuten aus.

so... und ich habe versucht das ganze mit einem Attiny13 zu lösen. Das 
ist ziemlich gut gelungen und die Schaltung und das Programm haben die 
Tests bestanden.
Bevor ich die ganze Geschichte zusammen löte, habe ich versucht die 
Schalrung nochmal mit einer Fahrradlampe und einem Fahrraddynamo zu 
testen und genau jetzt ist "das Problem" aufgetaucht:

mein Relais schaltet hin und her und summt manchmal. Das Problem liegt 
natürlich daran, dass die Spannung am PB4 die von mir definierte 
Hysterese überschreitet und genau beim umschalten des Relais. Ich habe 
mit Oszi die Spannung an dem Punkt gemessen und tatsächlich ist es so, 
dass mit einem realen Dynamo und ner realen Fahrradlampe die Spannung am 
PB4 beim Umschalten des Relais schwingt und springt.
Das Interessante ist, wenn ich die Masse des Dynamo von der Masse der 
Batterie trenne, dann messe ich eine andere Spannung am PB4 !
Sogar habe ich mal den Plus der Batterie getrennt und den minus mit der 
Dynamo-Masse verbunden und habe wieder eine andere Spannung gemessen.

Ich weiß nicht, ob das jetzt daran liegt, oder an was anderem.
Hat jemand vielleicht eine Idee warum es so ist, wie es ist?

Zur der Schaltung: den Relaistreiber habe ich mit einem NE55 realisiert, 
hatte vorher mit nem normalen BC547 gemacht und dann dachte, vielleicht 
liegt das irgendwie an diesem Transistor, dass Relais ständig 
umschaltet, weil die Ausgänge vom Tiny13 nicht genug Strom anbieten.
Mit dem Poti kann man die obere Grenze einstellen und weil der Eingang 
am PB4 bisschen Rippel hat, habe ich so ne Art Schmitt trigger mit dem 
Tiny13 programmiert.
Der Spannungsteiler mit 200k und 100k sind zum Vergleichen der 
Dynamo-Spannung mit dem Poti-Spannung gedacht. die sind für max. 15 Volt 
u.max dimensioniert so dass dort maximal 5V am PB4 vorhaanden ist.
Baterie hat 6V.

Auch hier das Programm vom Tiny13:

$regfile = "attiny13.dat"
$crystal = 1200000
$hwstack = 10
$swstack = 10
$framesize = 10

Declare Sub Schleife

Config Portb.0 = Output

Config Adc = Single , Prescaler = Auto , Reference = Avcc
Start Adc

Dim Dynamo As Word
Dim Obere_grenze As Word
Dim Untere_grenze As Word
Dim Vergessen_timer As Long
Const Hyst = 150

'Initialisierung:
   Portb.0 = 0
   Vergessen_timer = 0

Do


   Obere_grenze = Getadc(1)

   If Obere_grenze > Hyst Then
      Untere_grenze = Obere_grenze - Hyst
   Else
      Untere_grenze = 0
   End If


   Dynamo = Getadc(2)

   If Dynamo < Untere_grenze Then
      Portb.0 = 1

      If Dynamo < 5 Then
         Vergessen_timer = Vergessen_timer + 1
         If Vergessen_timer = 360000 Then
            Portb.0 = 0
            Call Schleife
         End If
      End If
   End If

   If Dynamo > Obere_grenze Then
      Portb.0 = 0
      Vergessen_timer = 0
   End If


Loop

Sub Schleife:
Do
Loop
End Sub


End                                                         'end program


Ich freue mich auf eure Meinungen und eventuell Verbesserungen.

Viele Grüße
Hamed

Autor: Hamed (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da gibt es einen kleinen Fehler im Bild und zwar der NO-Pin vom Relay 
ist mit der Batterie verbunden und der NC-Pin mit dem Dynamo.
Also im Normalfall ist die Lampe mit dem Dynamo verbunden bis zu dem 
Zeitpunkt dass Tiny13 den PB0 auf 1 setzt.
Der Hauptschalter habe ich auch vergessen hinzumalen. müsste am Pluspol 
der Batterie stehen.

Autor: Anja (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Wenn ich richtig verstehe hängt der Attiny direkt (unstabilisert) an der 
Batterie? (genauso wie das Poti). Der Attiny ist mit max 5.5V 
spezifiziert.

Die Analogeingänge sind auch zu hochohmig beschaltet (die Genauigkeit 
leidet). Die Quellimpedanz sollte max. ca 10 kOhm sein. (also 
Spannungsteiler mit 10 kOhm aufbauen und Poti max ca 22KOhm).
Ferner sehe ich keine Abblock-Kondensatoren in der Schaltung worunter 
die Stabilität ebenfalls leiden kann.

Das Hauptproblem wird sein daß beim Einschalten der Last die 
Batteriespannung stark einbricht. (Vermutlich sogar unter die 
Reset-Schwelle des ATTINY). Wenn ein reiner Gleichspannungsbetrieb 
möglich wäre hätte ich vorgeschlagen per PWM und MOSFET einen Softstart 
zu machen. Für gemischten AC und DC Betrieb habe ich leider keine Idee.

Autor: Ingo Laabs (grobian)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
womit hst Du den Schaltplan erstellt

Autor: Hamed (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Anja,

Du hast Recht, den Schaltplan habe ich nicht korrekt erstellt. in der 
Tat habe ich doch einen 5V Spannungsregler mit Kondensatoren dran. und 
der Attiny13 und Poti hängen schon am Ucc=5V stabilisiert.

Ich habe nochmals den richtigen Schaltplan angehängt.

Dass mit den hochohmigen Eingängen, wusste ich nicht, danke für den 
Tipp. Ich werde sie neu dimensionieren.

zu den Blockkondensatoren, wo sollen sie denn hinkommen? und wie groß 
sollten sie sein.

Zu deiner Idee mit MOSFET und sanft umschalten. Die Idee finde ich 
super. vielleicht kann ich statt einem Relais zwei Mosfets zum ein und 
ausschlten nutzen. Auf jeden Fall Danke für deine Tipps.

Es wäre schön wenn jemand eine Idee für gemischten AC DC Betrieb hätte. 
Das Problem ist, Fahrradsdynamo und die Lampen haben ihre Masse am 
Fahrradrahmen und ich möchte dass es so bleibt. Von daher muss ich die 
Batterie-Masse auch an den Rahmen verbinden. oder!?

Übrigens, die Schaltung habe ich mit Proteus erstellt.

Gruß
Hamed

Autor: Anja (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
Der Spannungsregler ist hoffentlich ein Low-Drop-Regler (normale Regler 
brauchen mindestens 7-8V am Eingang um am Ausgang zuverlässige 5V zu 
generieren).
Ich setze generell je einen 100nF an den Versorgungspins des Prozessors, 
sowie jeweils an Ein-und Ausgang des Spannungsreglers.
Zusätzlich noch einen mindestens 10uF (bis 47uF) nahe beim Prozessor.
Bei einem Low-Drop-Regler ist dieser sowieso notwendig damit dieser 
nicht schwingt. Wenn der Kondensator am Ausgang des Spannungsreglers 
groß genug ist hilft er ggf. auch über den Spannungseinbruch hinweg.
Idealerweise wird der Spannungsregler in der Nähe des Prozessors 
plaziert.

Der NE555 (sofern nicht die CMOS-Ausführung verwendet wird) verursacht 
ziemliche Störungen auf den Versorgungsleitungen. -> dort ist ebenfalls 
mindestens ein 100nF Kondensator an den Versorgungspins notwendig.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.