mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 230V dimmen mit mega128 und Bascom


Autor: Malte Sönksen (boeser-korn)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo habe Probleme mit dem Dimmen unter Bascom

das angehängte Programm wollte ich reduzieren und in ein ferriges 
Programm mit rein schreiben.

kriege es aber nicht aufgedrosselt und weiss auch nicht genau wie das 
Programm abläuft.

brauche eigentlich nur ein kleines Programm,
das die nulldurchgangserkennung macht und den triac sagt wann er zünden 
soll.

Schaltplan habe ich von
http://pcdimmer.pc.ohost.de/schaltplan/pc_dimmer_s...
genommen

Mein µC läuft mit 8MHz

Danke

Autor: Malte Sönksen (boeser-korn)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier mein reduziertes nicht funktionsfähiges Programm
Die Sekunden laufen mit doppelter Geschwindigkeit!

Autor: Malte Sönksen (boeser-korn)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hat keiner Tips wie man das noch machen kann?

Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Brauchst Du eventuell noch galvenisch getrennte Halbleiterrelais mit 
Nullpunkterkennung? Hätte noch ein paar abzugeben!

Autor: Matthias Kölling (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

von Bascom verstehe ich nicht allzuviel. Aber wenn ich davon ausgehe, 
dass Dein Timer1 im Normal Operation Mode arbeitet, dann ergibt sich 
folgendes Timing:
-Der Prescaler steht auf 64. Das macht 8µs pro Tick bei 8MHz.
-Die Voreinstellung ist 3036. Der Timer zählt nach oben bis er zu 0
 überläuft. Das sind dann 62500 Ticks a 8µs, also 500ms.
Das Timing für Timer2 kannst Du auf ähnliche Weise überprüfen. Du weisst 
ja, dass das Netz 50Hz hat, also 20ms für eine volle Sinusschwingung.

Gruß Matthias

Autor: Roli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Frank - Halbleiterrelais mit Nulldurchgerkennung ist genau das falsche 
was er braucht - er will dimmen und nicht nur schalten.

Nulldurchgangerkennung ist nicht schwer. eine Kleine schaltung die immer 
beim Nulldurchgang triggert - siehe z.B. Seite von Hendrik Hölscher (DMX 
Dimmer) - der wird dann an einen Interrupteingang am µC angeschlossen. 
Im Programm wird dann bei jedem Nulldurchgang der Counter zurückgesetzt.

Den Wert wo dann ein Triac gezündet wird,  kann entweder mit einem Poti 
oder Taster oder ... eingestellt werden. Musst eben dann schaun wie fein 
du das ganze dimmen willst.

Ist jetzt mal eine Prinziperklärung - proggen musst du selbst - ist 
nicht schwer - eine einfache Übung

lg Roland

Autor: Malte Sönksen (boeser-korn)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe es schon auf 4MHz runtergestellt

aber wie kommst du auf die Werte?

kannst du deine mal reinstellen
 Danke


Das Problem ist das der Triac nicht zündet

@Frank

Welche hast du denn und wie funktionieren die denn

Autor: Malte Sönksen (boeser-korn)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schaltung und so ist schon aufgebaut

kriege es auch hin das er die nulldurchgänge zählt
jetzt muss ich nur den Counter immer zurück setzen, ich hoffe ich kriege 
das hin
melde mich später noch mal

Autor: Papsi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Hast Du die Schaltung so aufgebaut, wie im Schaltplan gezeichnet?
Kannst ja mal ein Foto machen...

Wie willst Du die Dimmer dann steuern? per Taster/Poti?

Gruß
Papsi

Autor: Malte Sönksen (boeser-korn)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
soll nachher alles automatisch gehen

der dimmer soll nachher ein lüfter steuern
der mikro liesst die temperatur vergleicht mit Solltemperatur und dreht 
umso schneller umso weiter die die beiden werte auseinander sind und das 
ganze natürlich auch anders herum wenn die fast gleich sind das der 
lüfter auf 20-30% weiter läuft ist auch einstellbar

für Gleichspannung ist die Software fertig (mosfet wird über PWM 
angesteuert) leider nicht für Wechselspannung

Die Schaltung ist so wie im Schaltplan

Autor: Henning (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mit Nullspannungserkennung ist das falsche fürs DIMMEN? Ich glaub ich 
steh aufm Schlauch...

Autor: Malte Sönksen (boeser-korn)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Henning:   Was meinst du?

Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich meine damit Roli´s Kommentar, verstehe nicht warum ein intelligentes 
Halbleiterrelais mit Nullspannungserkennung nicht zum Dimmen geeignet 
sein soll.

Laut Datenblatt perfekt für Dimmanwendungen "jeglicher Last" geeiget.. 
grübel

Autor: Malte Sönksen (boeser-korn)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
brauche ich überhaupt bei mein Projekt beide Timer?

ich brauche doch nur ein der dann anspringt wenn der Nulldurchgang 
aktiviert wird und dann bis zu einem bestimmten Wert zählt und den Triac 
zündet (Timer2) den Timer1 brauche ich doch garnicht, oder sehe ich das 
nun falsch??


Danke

Autor: Malte Sönksen (boeser-korn)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
kriege es kein Stück hin

habe die nulldetect auf 100Hz gestellt so dass ich jeden nulldurchgang 
mitkriege
beim mir tut sich aber nichts die Sekunden zählen hoch
und 100Hz kann ich auch zählen, aber dimmen kriege ich nicht hin

kann mir einer mal sagen wiso

Aktuelles Programm im Anhang

Autor: Malte Sönksen (boeser-korn)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
so birne leuchtet

muss aber ein externen Quarz ran sonst läuft das ganze nicht

das Problem ist das ich sie noch nicht dimmen kann
kann mir vielleicht jemand sagen wie die timer richtig einstellen soll
über timer weiss ich so gut wie garnichts
wäre schön wenn jemand mir das erklären könnte wie das alles zusammen 
hängt mit prescale den Teiler und so.
habe mir auch schon den Roboternetz Berechnungstoll runtergeladen
bringt mir aber auch nicht so sehr weiter


Programm läuft mit 4MHz
nullpunkt detect nach einen Gleichrichter = 100Hz
der Triac wird 20µs lang angeschaltet
wieviele Stufen zum Dimmen kann man nun max mal einstellen


zum schluss:
im Programm habe ich timer2 = 97 eingestellt Helligkeit bleibt aber 
gleich egal welche zahll ich da eingebe

Im Anhang das Programm

Danke

Autor: Malte Sönksen (boeser-korn)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich glaube ich mache immer noch was verkehrt

müsste die Einstellungen nicht anders sein:
Dimmer_triac_irq:
   Stop Timer2
   Triac_start = 1
   Waitus 10
   Triac_start = 0
Return

sollte es nicht so sein?
dann flackert die Birne aber wie wild
Dimmer_triac_irq:
   Stop Timer2
   Triac_start = 0
   Waitus 10
   Triac_start = 1
Return

was jemand was sein kann??
oder was ich falsch gemacht habe?

Autor: Matthias Kölling (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast Du inzwischen wenigstens Deine Timings überprüft? Einen Hinweis 
habe ich Dir ja geliefert. Wenn Du den Code so übernommen hast und auch 
Deine Schaltung stimmt, dann sollte das Ganze nach der Anpassung an 
Deine Quarzfrequenz laufen.

Gruß Matthias

Autor: Malte Sönksen (boeser-korn)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das ist ja grade das Problem, dass mit den Timern verstehe ich noch 
nicht
ich weiss nicht wie du auf die Werte kommst

und was sagst du zu dem vorherigen Post mit dem Triac_start?

wenn ich das obere Beispiel nehme habe ich genau 100Hz an der Leitung 
zum Triac. (Birne leuchte konstant mit einer Leuchtkrft ändert sich auch 
nicht)
wenn ich das untere nehme dann kriege ich von 80Hz bis 150Hz
und Birne flackert

Danke

Autor: Malte Sönksen (boeser-korn)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Erfolgsmeldung

er macht endlich das was ich will


Danke an Alle für eure Hilfe


Für alle die es noch selber brauchen können stell ich das Programm im 
Anhang rein

Autor: Malte Sönksen (boeser-korn)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
doch wieder ein Problem
nun wollte ich ja das in mein anderes fertiges Programm einfügen nun 
stürtzt er nach 3-4 ab
die lampe in sekunden takt kurz mal aus bis der mikro abgestürzt ist


ich dachte die interupts laufen immer auch wenn man noch ein etwas 
grösseres Programm zum laufen hat


wie kann man das beheben?

Autor: Daniel R. (daniel_r)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
230V und Bascom sind eine suboptimale Kombination. Wer sich kein 
Assembler zutraut, sollte auch bei 230V aufpassen ;))))

Duckundweg

Autor: Malte Sönksen (boeser-korn)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
dieser thread wird hier Fortgesetzt
Beitrag "intterupt Problem mega8"

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo

hat mit asembler nichts zu tun.
Zutrauen reicht nicht.
Das wissen über die absolute Gefährlichkeit
ist wichtig,und einhaltung aller Vorschriften.
wenn auch Ausländische produktionen oft gefährlich
und doch abgenommen sind.
das aber nur nebenbei.
MfG

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.