Aquarium Blaulicht mit Dimmfunktion
Moderator: T.Hoffmann
Hi Jay
Coole Sache!!!
Am liebsten würde ich da auch mitbasteln! Wie viele Schalt/Steuerkanäle hat das Ding? Ich werde langsam neugierig was alles möglich ist....
Kann du auch C Programmieren? Kannst du so etwas zusammensetzen? http://www.atmel.com/products/microcont ... fault.aspx Natürlich nicht für die hole Hand....
Da man das Ding über SD Flashen kann, könnte ich mit dem Java tool die einstellungen selber übernehmen.
Vielen Dank & Gruss
Roberto
Coole Sache!!!
Am liebsten würde ich da auch mitbasteln! Wie viele Schalt/Steuerkanäle hat das Ding? Ich werde langsam neugierig was alles möglich ist....
Kann du auch C Programmieren? Kannst du so etwas zusammensetzen? http://www.atmel.com/products/microcont ... fault.aspx Natürlich nicht für die hole Hand....
Da man das Ding über SD Flashen kann, könnte ich mit dem Java tool die einstellungen selber übernehmen.
Vielen Dank & Gruss
Roberto
im bin am Limit der BASCOM Demo, habe gerade mal 1/3 des Programms realisiert und der ATmega8 mit seinen 8k ist auch zu klein
ich muss nen andere Mikrocontroller besorgen dann kann ich weiter machen. ist doch nicht so leicht wie ich es mir gedacht habe.
mfg
Jay
ich muss nen andere Mikrocontroller besorgen dann kann ich weiter machen. ist doch nicht so leicht wie ich es mir gedacht habe.
mfg
Jay
Hi Jay
ich habe den falschen Linke gepostet...
Eigentlich wollte ich fragen ob du sowas hinbekommst...
http://www.leuchtmuff.de/
Gruss Rob
ich habe den falschen Linke gepostet...
Eigentlich wollte ich fragen ob du sowas hinbekommst...
http://www.leuchtmuff.de/
Gruss Rob
aus zwei gründen würde ich es nicht hin bekommen. erstens müsste ich von target3001 zu eagle umstellen, das will ich nicht. zweitens müsste ich mich in C einarbeiten, das will ich nicht. und außerdem, wenn du so was willst kannst gleich dir einen ProfiLux holen kommt mit dem preis etwa hin.
also ich werde jetzt das was ich da angefangen fertig machen, wenn du so was nicht willst kann ich es für was anderes auch benutzen.
mfg
Jay
also ich werde jetzt das was ich da angefangen fertig machen, wenn du so was nicht willst kann ich es für was anderes auch benutzen.
mfg
Jay
Hi Jay
Nein, nein so war das also nciht gemeint Ich war vom Gedanken getrieben, das wenn ich über meinen PC machen kann das ich vieleicht etwas unterstüzung leisten kann. Das Ding würde ja dann über Java steuerbar sein. Aber ich verstehe da (noch) zu wenig, wollte dir bestimmt nicht auf die Füsse tretten... Auf jedenfall bin ich gespannt wie du das hinbekommst. Natürlich wäre ich froh wenn du mir das erklären würdest. Um das Programm zu verstehen muss ich aber erst noch etwas BAsic erlernen, aber ich bin schon froh wenn du mir die Hardware erklärst. Für das sollte mein wissen reichen! Hat ja nur 3 möglichkeiten pro Pin ...
Ps: Noch einen Beitrag mehr und ich kann dir 5 Sterne geben!!
Nein, nein so war das also nciht gemeint Ich war vom Gedanken getrieben, das wenn ich über meinen PC machen kann das ich vieleicht etwas unterstüzung leisten kann. Das Ding würde ja dann über Java steuerbar sein. Aber ich verstehe da (noch) zu wenig, wollte dir bestimmt nicht auf die Füsse tretten... Auf jedenfall bin ich gespannt wie du das hinbekommst. Natürlich wäre ich froh wenn du mir das erklären würdest. Um das Programm zu verstehen muss ich aber erst noch etwas BAsic erlernen, aber ich bin schon froh wenn du mir die Hardware erklärst. Für das sollte mein wissen reichen! Hat ja nur 3 möglichkeiten pro Pin ...
Ps: Noch einen Beitrag mehr und ich kann dir 5 Sterne geben!!
- Beatbuzzer
- Auserwählter
- Beiträge: 3177
- Registriert: Fr, 17.08.07, 11:02
- Wohnort: Alfeld / Niedersachsen
- Kontaktdaten:
Was wollt ihr da denn jetzt noch alles programmieren? Soweit ich verstanden hab, geht es um eine Auf/Ab-Dimmung auf einem Kanal mit einstellbaren Zeiten?Jay hat geschrieben: im bin am Limit der BASCOM Demo, habe gerade mal 1/3 des Programms realisiert und der ATmega8 mit seinen 8k ist auch zu klein
ich muss nen andere Mikrocontroller besorgen dann kann ich weiter machen.
Das braucht aber doch keine 4kB...
- Beatbuzzer
- Auserwählter
- Beiträge: 3177
- Registriert: Fr, 17.08.07, 11:02
- Wohnort: Alfeld / Niedersachsen
- Kontaktdaten:
Hier mal mein grobes Gerüst für 1 Kanal Dimmung. Natürlich fehlt noch die Routine für die Zeiteinstellung. Aber da wusste ich nicht wie das gelöst werden soll.
Per Taster, über UART (serielle Schnittstelle), oder Potis...
Braucht 4% vom Mega8, also 0,32 kb...
Per Taster, über UART (serielle Schnittstelle), oder Potis...
Code: Alles auswählen
$regfile = "m8def.dat"
$crystal = 8000000
Config Timer1 = Pwm , Pwm = 10 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up , Prescale = 8
Start Timer1
Dim X As Word
Dim Aufdimmzeit As Word
Dim Lichtanzeit As Word
Dim Abdimmzeit As Word
Dim Lichtauszeit As Word
Do
Gosub Aufdimmen
Gosub Lichtan
Gosub Abdimmen
Gosub Lichtaus
Loop
Aufdimmen:
For X = 0 To 1023
Compare1a = X
Wait Aufdimmzeit
Next X
Return
Lichtan:
Compare1a = 1023
Wait Lichtanzeit
Return
Abdimmen:
For X = 1023 To 0 Step -1
Compare1a = X
Wait Abdimmzeit
Next X
Return
Lichtaus:
Compare1a = 0
Wait Lichtauszeit
Return
nettes programmchen, ich habe ja die DS1307 Uhr und ein LCD Display und ein Menu muss man ja auch programmieren, kurz hier ist mein code ist aber noch nicht fertig:
mfg
Jay
Code: Alles auswählen
$regfile = "m8def.dat"
$crystal = 12000000
$lib "mcsbyteint.lbx"
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portb.5 , Rs = Portb.4
Config Lcdbus = 4
Config Timer1 = Pwm , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down , Prescale = 64
Config Timer2 = Pwm , Compare Pwm = Clear Up , Prescale = 64
Config Sda = Portc.4
Config Scl = Portc.5
Const Ds1307w = &HD0
Const Ds1307r = &HD1
Config Clock = User
Config Date = Dmy , Separator = .
Config Pinb.0 = Input
Config Pind.7 = Input
Config Pind.6 = Input
Config Pind.5 = Input
Portb.0 = 1
Portd.7 = 1
Portd.6 = 1
Portd.5 = 1
Deflcdchar 0 , 4 , 14 , 21 , 31 , 10 , 14 , 21 , 32
Deflcdchar 1 , 32 , 4 , 14 , 21 , 4 , 4 , 4 , 32
Dim R As Byte
Dim G As Byte
Dim B As Byte
Dim Mnuselect As Integer
Dim Mnuselectscount As Integer
Dim Mnuselectback As Integer
Dim Mnuselectpointer As Integer
Dim Mnutext(8) As String * 8
Dim Mnuselects(8) As Integer
Dim I As Integer
Dim N As Integer
Dim M As Byte
Dim O As Byte
Dim Mnuselectold As Integer
Mnuselect = 0
Dim X As Byte
Dim X1 As Integer
Dim X2 As Integer
Dim X3 As Integer
Dim X4 As Integer
Dim X5 As Integer
Dim X6 As Integer
Dim A As Byte
Dim A1 As Integer
Dim A2 As Integer
Dim A3 As Integer
Dim A4 As Integer
Dim A5 As Integer
Dim A6 As Integer
Dim B1 As Integer
Dim B2 As Integer
Dim B3 As Integer
Dim B4 As Integer
Dim B5 As Integer
Dim B6 As Integer
Enable Timer1
Enable Timer2
Enable Interrupts
Cls
Cursor Off
Locate 1 , 1
Lcd Chr(0) ; "AQUACOM"
Locate 2 , 1
Lcd " Hello! "
Waitms 2000
Cls
Do
Select Case Mnuselect
Case 0:
' Hauptmenue
Mnuselectback = 0
Mnutext(1) = "Port 1"
Mnuselects(1) = 1
Mnutext(2) = "Port 2"
Mnuselects(2) = 2
Mnutext(3) = "Port 3"
Mnuselects(3) = 3
Mnutext(4) = "Uhrzeit"
Mnuselects(4) = 4
Mnuselectscount = 4
Gosub Mnushow
Case 1:
' Untermenü "Port 1"
Mnuselectback = 0
Mnutext(1) = "1 Ein"
Mnuselects(1) = 11
Mnutext(2) = "2 Aus"
Mnuselects(2) = 12
Mnutext(3) = "3 Ein"
Mnuselects(3) = 13
Mnutext(4) = "4 Aus"
Mnuselects(4) = 14
Mnutext(5) = "Dimm/t"
Mnuselects(5) = 15
Mnuselectscount = 5
Gosub Mnushow
Case 2:
' Untermenü "Port 2"
Mnuselectback = 0
Mnutext(1) = "1 Ein"
Mnuselects(1) = 21
Mnutext(2) = "2 Aus"
Mnuselects(2) = 22
Mnutext(3) = "3 Ein"
Mnuselects(3) = 23
Mnutext(4) = "4 Aus"
Mnuselects(4) = 34
Mnutext(5) = "Dimm/t"
Mnuselects(5) = 25
Mnuselectscount = 5
Gosub Mnushow
Case 3:
' Untermenü "Port 3"
Mnuselectback = 0
Mnutext(1) = "1 Ein"
Mnuselects(1) = 31
Mnutext(2) = "2 Aus"
Mnuselects(2) = 32
Mnutext(3) = "3 Ein"
Mnuselects(3) = 33
Mnutext(4) = "4 Aus"
Mnuselects(4) = 34
Mnutext(5) = "Dimm/t"
Mnuselects(5) = 35
Mnuselectscount = 5
Gosub Mnushow
Case 4:
' Untermenü "Uhrzeit"
I2cstart ' Start
I2cwbyte Ds1307w ' DS1307 schreiben
I2cwbyte 0 ' DS1307 Adresszeiger auf 0 stellen
I2cstart ' Start
I2cwbyte Ds1307r ' DS1307 lesen (ab vorher eingestellter Adresse 0)
I2crbyte _sec , Ack ' Sekunden
I2crbyte _min , Ack ' Minuten
I2crbyte _hour , Ack ' Stunden
I2cstop
X5 = Makedec(_sec) : X3 = Makedec(_min) : X1 = Makedec(_hour)
Gosub Uhrzeit
Case 11:
Gosub Einstell
Case 12:
Gosub Einstell
Case 13:
Gosub Einstell
Case 14:
Gosub Einstell
Case Else:
' Falls der Mnuselec mal querläuft, wird wieder ins
' Hauptmenü gesprungen.
Mnuselect = 0
End Select
Loop
Einstell:
' Wenn dieser Punkt angesprungen wird, verlangt das System eine Eingabe.
' Alle weiteren Aktionen, sofern nicht durch Interrupts erzeugt, werden
' nicht weiter verarbeitet.
' Das alte Mnuselect wird gesichert
Mnuselectold = Mnuselect
' Der Zeiger wird auf den ersten Menüeintrag gestellt.
Mnuselectpointer = 1
M = 1
' So lange das Menue nicht geaendert wurde, wird dies immer fortgesetzt.
While Mnuselectold = Mnuselect
' Zuerst einmal muss nun auf dem Display etwas angezeigt werden.
' Dies ist der Zaehler für die anzuzeigende Zeile
Sprung1:
Cls
' Displayzeilen minus 1
N = Mnuselectpointer + 1
Decr N
' Mehr als die verfuegbaren Menuepunkte können nicht angezeigt werden.
If N > Mnuselectscount Then
N = Mnuselectscount
End If
' Anzeige der Zeilen
For I = Mnuselectpointer To N
Locate 1 , 1
Lcd A1 ; A2 ; ":" ; A3 ; A4 ; ":" ; A5 ; A6
Select Case M
Case 1:
Locate 2 , 1 : Lcd Chr(1)
Case 2:
Locate 2 , 2 : Lcd Chr(1)
Case 3:
Locate 2 , 4 : Lcd Chr(1)
Case 4:
Locate 2 , 5 : Lcd Chr(1)
Case 5:
Locate 2 , 7 : Lcd Chr(1)
Case 6:
Locate 2 , 8 : Lcd Chr(1)
End Select
Next
Waitms 250
' hier werden nun die Menuetasten ausgewertet.
' Aktion Taste nach oben
If Pind.7 = 0 Then
Select Case M
Case 1:
A1 = A1 + 1
If A1 > 2 Then A1 = 0
Case 2:
A2 = A2 + 1
If A2 > 3 Then A2 = 0
Case 3:
A3 = A3 + 1
If A3 > 5 Then A3 = 0
Case 4:
A4 = A4 + 1
If A4 > 9 Then A4 = 0
Case 5:
A5 = A5 + 1
If A5 > 5 Then A5 = 0
Case 6:
A6 = A6 + 1
If A6 > 9 Then A6 = 0
End Select
End If
' Aktion Taste nach unten
If Pinb.0 = 0 Then
Select Case M
Case 1:
A1 = A1 - 1
If A1 < 0 Then A1 = 2
Case 2:
A2 = A2 - 1
If A2 < 0 Then A2 = 3
Case 3:
A3 = A3 - 1
If A3 < 0 Then A3 = 5
Case 4:
A4 = A4 - 1
If A4 < 0 Then A4 = 9
Case 5:
A5 = A5 - 1
If A5 < 0 Then A5 = 5
Case 6:
A6 = A6 - 1
If A6 < 0 Then A6 = 9
End Select
End If
' Aktion Taste vor
If Pind.5 = 0 Then
M = M + 1
If M > 6 Then
Mnuselect = 0
End If
Goto Sprung1
End If
' Aktion Taste zurueck
If Pind.6 = 0 Then
Mnuselect = 1
End If
Wend
Cls
' Es wird wieder ins Hauptprogramm zurueck gesprungen.
Return
' hier startet nun die anzeigeroutine fuer das Display
Mnushow:
' Wenn dieser Punkt angesprungen wird, verlangt das System eine Eingabe.
' Alle weiteren Aktionen, sofern nicht durch Interrupts erzeugt, werden
' nicht weiter verarbeitet.
' Das alte Mnuselect wird gesichert
Mnuselectold = Mnuselect
' Der Zeiger wird auf den ersten Menüeintrag gestellt.
Mnuselectpointer = 1
' So lange das Menue nicht geaendert wurde, wird dies immer fortgesetzt.
While Mnuselectold = Mnuselect
' Zuerst einmal muss nun auf dem Display etwas angezeigt werden.
' Dies ist der Zaehler für die anzuzeigende Zeile
Cls
' Displayzeilen minus 1
N = Mnuselectpointer + 1
Decr N
' Mehr als die verfuegbaren Menuepunkte können nicht angezeigt werden.
If N > Mnuselectscount Then
N = Mnuselectscount
End If
' Anzeige der Zeilen
For I = Mnuselectpointer To N
Locate 1 , 1
Lcd Mnutext(i)
Locate 2 , 1 : Lcd Time$
Next
Waitms 250
' hier werden nun die Menuetasten ausgewertet.
' Aktion Taste nach oben
If Pind.7 = 0 Then
' Nur wenn das Menü noch nicht oben ist.
If Mnuselectpointer > 1 Then
Decr Mnuselectpointer
End If
End If
' Aktion Taste nach unten
If Pinb.0 = 0 Then
' Nur wenn das Menü noch nicht unten ist
If Mnuselectpointer < Mnuselectscount Then
Incr Mnuselectpointer
End If
End If
' Aktion Taste vor
If Pind.5 = 0 Then
Mnuselect = Mnuselects(mnuselectpointer)
End If
' Aktion Taste zurueck
If Pind.6 = 0 Then
Mnuselect = Mnuselectback
End If
Wend
Cls
' Es wird wieder ins Hauptprogramm zurueck gesprungen.
Return
Uhrzeit:
Mnuselect = 0
Mnuselectold = Mnuselect
Mnuselectpointer = 1
M = 1
While Mnuselectold = Mnuselect
Sprung2:
Cls
N = Mnuselectpointer + 1
Decr N
If N > Mnuselectscount Then
N = Mnuselectscount
End If
For I = Mnuselectpointer To N
Locate 1 , 1
Lcd X1 ; X2 ; ":" ; X3 ; A4 ; ":" ; X5 ; X6
Select Case M
Case 1:
Locate 2 , 1 : Lcd Chr(1)
Case 2:
Locate 2 , 2 : Lcd Chr(1)
Case 3:
Locate 2 , 4 : Lcd Chr(1)
Case 4:
Locate 2 , 5 : Lcd Chr(1)
Case 5:
Locate 2 , 7 : Lcd Chr(1)
Case 6:
Locate 2 , 8 : Lcd Chr(1)
End Select
Next
Waitms 250
If Pind.7 = 0 Then
Select Case M
Case 1:
X1 = X1 + 1
If X1 > 2 Then X1 = 0
Case 2:
X2 = X2 + 1
If X2 > 3 Then X2 = 0
Case 3:
X3 = X3 + 1
If X3 > 5 Then X3 = 0
Case 4:
X4 = X4 + 1
If X4 > 9 Then X4 = 0
Case 5:
X5 = X5 + 1
If X5 > 5 Then X5 = 0
Case 6:
X6 = X6 + 1
If X6 > 9 Then X6 = 0
End Select
End If
If Pinb.0 = 0 Then
Select Case M
Case 1:
X1 = X1 - 1
If X1 < 0 Then X1 = 2
Case 2:
X2 = X2 - 1
If X2 < 0 Then X2 = 3
Case 3:
X3 = X3 - 1
If X3 < 0 Then X3 = 5
Case 4:
X4 = X4 - 1
If X4 < 0 Then X4 = 9
Case 5:
X5 = X5 - 1
If X5 < 0 Then X5 = 5
Case 6:
X6 = X6 - 1
If X6 < 0 Then X6 = 9
End Select
End If
If Pind.5 = 0 Then
M = M + 1
If M > 6 Then
X = 10 * X5
X = X + X6
_sec = Makebcd(x)
X = 10 * X3
X = X + X4
_min = Makebcd(x)
X = 10 * X1
X = X + X2
_hour = Makebcd(x)
I2cstart ' Start
I2cwbyte Ds1307w ' DS1307 schreiben
I2cwbyte 0 ' DS1307 Adresszeiger auf 0 stellen
I2cwbyte _sec ' Sekunden schreiben
I2cwbyte _min ' Minuten schreiben
I2cwbyte _hour ' Stunden schreiben
I2cstop
Gosub Mnushow
End If
Goto Sprung2
End If
If Pind.6 = 0 Then
Mnuselect = 1
End If
Wend
Cls
Return
Dim Weekday As Byte
Getdatetime:
I2cstart ' Start
I2cwbyte Ds1307w ' DS1307 schreiben
I2cwbyte 0 ' DS1307 Adresszeiger auf 0 stellen
I2cstart ' Start
I2cwbyte Ds1307r ' DS1307 lesen (ab vorher eingestellter Adresse 0)
I2crbyte _sec , Ack ' Sekunden
I2crbyte _min , Ack ' Minuten
I2crbyte _hour , Ack ' Stunden
I2crbyte Weekday , Ack ' Wochentag (in Dummy gelesen da von date$/time$ nicht genutzt)
I2crbyte _day , Ack ' Tag
I2crbyte _month , Ack ' Monat
I2crbyte _year , Nack ' Jahr
I2cstop
_sec = Makedec(_sec) : _min = Makedec(_min) : _hour = Makedec(_hour)
_day = Makedec(_day) : _month = Makedec(_month) : _year = Makedec(_year)
Return
Jay
- Beatbuzzer
- Auserwählter
- Beiträge: 3177
- Registriert: Fr, 17.08.07, 11:02
- Wohnort: Alfeld / Niedersachsen
- Kontaktdaten:
Davon stand aber eben nichts in den Anforderungen .Jay hat geschrieben:nettes programmchen, ich habe ja die DS1307 Uhr und ein LCD Display und ein Menu muss man ja auch programmieren, kurz hier ist mein code ist aber noch nicht fertig (...)
Nagut Display und Menü hängt jetzt davon ab, wie die Eingabe der Zeiten gewünscht ist.
Die RTC könnte man auch weglassen, wenn man einen präzisen Quarz anhängt und die Wartezeiten per Timer macht.
EDIT:
Ja mit solchen Anforderungen hatte ich auch gerechnet. Dann wärs mal eben schnell zwischendurch fertig gewesenIch dachte ich muss die Zeiten selber über meinem PC draufladen!!! :):)
ja ich hab mir gedacht wenn ich schon hier ein Gehäuse rum liegen habe wo ich ein 1€ Display verbaut habe sollte ich dieses benutzen. die uhr mit dem internen Quarz zu machen habe ich bisher nur schlecht realisieren können, die DS1307 ist da schon komfortable, einfach auf I²C zugreifen fertig.
habe überlegt noch ein Temperatur Sensor noch zu implementieren aber die ADC Ports des ATmega sind schon fürs Display vergeben, aber UART ist noch frei man könnte einen externen Controller mit mehreren Temperatur Sensoren machen da ist noch recht viel Luft nach oben.
mfg
Jay
habe überlegt noch ein Temperatur Sensor noch zu implementieren aber die ADC Ports des ATmega sind schon fürs Display vergeben, aber UART ist noch frei man könnte einen externen Controller mit mehreren Temperatur Sensoren machen da ist noch recht viel Luft nach oben.
mfg
Jay
- Beatbuzzer
- Auserwählter
- Beiträge: 3177
- Registriert: Fr, 17.08.07, 11:02
- Wohnort: Alfeld / Niedersachsen
- Kontaktdaten:
Das macht ja nichts. Einen von den Daten I/Os kannst du auch zwischendurch mal kurz auf den ADC umlegen, wenn gerade nichts ans Display gesendet werden muss.Jay hat geschrieben: habe überlegt noch ein Temperatur Sensor noch zu implementieren aber die ADC Ports des ATmega sind schon fürs Display vergeben
Oder nimm nen DS1820. Irgendeinen Port wirst du schon noch finden, den du zwischendurch mal kurz als 1-Wire benutzen kannst. Da können dann auch gleich ein paar mehr Sensoren seriell dran.
Ansonsten wäre noch die DS2417 RTC eine Option. Dafür brauchst nur einen I/O am µC und kannst die Temp-Sensoren auch gleich noch mit dranhängen.
also die Hardware wäre erst mal fertig. so sieht der Kasten dann geschlossen aus:
*
* Netzteil vorher ausstecken, der ISP-Programmer kann schaden nehmen.
mit der Software habe ich noch nicht weiter gemacht, habe aber jetzt bascom ohne Begrenzung.
Wie Ihr seht hat der Aquacom 1x MOSFET und 2x PWM Ausgänge. der ISP stecker kan sowohl zum Programmieren am Computer mit dem ISP-Programmer benutzt werden als auch mit dem Tasten-Kreuz. man könnte auch eine Platine machen wo ein Infrarot Empfänger drauf ist und per RC5 Fernbedienung steuern. Wie ich die Software Seite aufbaue überlege ich noch.
mfg
Jay
wenn man ein ISP-Programmer ansteckt wird das auf dem Display angezeigtmit der Software habe ich noch nicht weiter gemacht, habe aber jetzt bascom ohne Begrenzung.
Wie Ihr seht hat der Aquacom 1x MOSFET und 2x PWM Ausgänge. der ISP stecker kan sowohl zum Programmieren am Computer mit dem ISP-Programmer benutzt werden als auch mit dem Tasten-Kreuz. man könnte auch eine Platine machen wo ein Infrarot Empfänger drauf ist und per RC5 Fernbedienung steuern. Wie ich die Software Seite aufbaue überlege ich noch.
mfg
Jay
Hi Jay
Wie ich sehe leistet du ja ganze Arbeit!!!
Da ich schon seit einigen posts nichts mehr verstehe, habe ich noch folgende Frage. Das gerät hat 2 PWM Ausgänge, ich vermute da kommt ein Steuerspannung von 0-10V raus. Du verwendest 1 Mosfet. Meine Schlussfolgerung man kann 2 KSQ ansteuern mit der der selben Spannung. Sprich, man nimmt ein setting vor und es werden beide Kanale dementsprechen gesteuert.
Bin ich da richtig? Bitte korrigiere mich (Bis vor einer Woche wusste ich nicht einmal was ein KSQ, Mosfet geschweige von PMW ist). Danke Mr. Google, falls ich richtig liege! Und natürlich dir, da dies die Basis für meine Nachforschungen sind, muss ja irgenwie verstehen was du postest!
Wie ich sehe leistet du ja ganze Arbeit!!!
Da ich schon seit einigen posts nichts mehr verstehe, habe ich noch folgende Frage. Das gerät hat 2 PWM Ausgänge, ich vermute da kommt ein Steuerspannung von 0-10V raus. Du verwendest 1 Mosfet. Meine Schlussfolgerung man kann 2 KSQ ansteuern mit der der selben Spannung. Sprich, man nimmt ein setting vor und es werden beide Kanale dementsprechen gesteuert.
Bin ich da richtig? Bitte korrigiere mich (Bis vor einer Woche wusste ich nicht einmal was ein KSQ, Mosfet geschweige von PMW ist). Danke Mr. Google, falls ich richtig liege! Und natürlich dir, da dies die Basis für meine Nachforschungen sind, muss ja irgenwie verstehen was du postest!
nicht ganz, also die 2 PWM Ausgänge liefern Maximum 5 V (das ist die Spannung mit der der Mikrocontroller arbeitet). auf der Platinen ist ein Spannungsregler mit dem Namen L7805 verbaut (05 steht für 5 V), dieser liefert den gesamten Strom für alle Bauteile. Die Betriebsspannung (7,5 - 35 V) wird zum MOSFET geleitet und der Mikrocontroller steuert den MOSFET an, schaltet ihn also mit der Frequenz von 367 Hz an/aus. Kurz zu der Frequenz: Diese wird im Programm eingestellt und hängt auch von dem verbauten Quarz ab hier einer mit 12 MHz. Das Programm muss da auch wissen dafür ist der Befehl $crystal = 12000000 da. Und dann entscheidet der Prescale = 64 (Config Timer...) über die Frequenz.Predotec hat geschrieben:Das gerät hat 2 PWM Ausgänge, ich vermute da kommt ein Steuerspannung von 0-10V raus. Du verwendest 1 Mosfet. Meine Schlussfolgerung man kann 2 KSQ ansteuern mit der der selben Spannung. Sprich, man nimmt ein setting vor und es werden beide Kanale dementsprechen gesteuert.
So ein PWM-Signal siehst du auf dem nachfolgendem Bild. Wenn du unbedingt die 10 V brauchst, schaue ich das ich da noch was einbaue.
Der MOSFET Ausgang ist eigentlich dafür um z.b. 12V LED-Leisten direkt zusteuern, man kann auch normale Glühlampen/Halogen-Spot damit dimmen.
zum testen der MOSFET Ausganges habe ich ein 12V 50 W Spot benutzt, funktioniert wunderbar. man könnte hier also 4x 12 V 50 W Spots dran hängen.
mfg
Jay
jetzt überforderst du mich...
Jetzt musste ich mich 1h mit dem was du geschrieben hast auseinander setzten.... Die Steuerspannung von 0-10V war eingentlich als Dimmersteuerung bedacht, aber du hast das ja bereits intergriert! Das wird also nciht mehr benötigt. Jetzt frag ich mal vorsichtig... Ein KSQ wird immer ncoh benötigt, oder?
Ich muss eigentlich nur 2 schienen mit jeweils 14 LEDs zum leuchten bringen, die Anzahl kann auch etwas höher oder tiefer sein.
Die LEDs haben bei 3.4V Betrieb eine Stromaufnahmen von 700mA.
Bei 7 LEDs in Serie würde das 23.8V und 700mA ergeben, somit wäre ein Wiederstand bei 24V Betrieb nichtig. Die max. Spannung von diesen LEDs ist 3.5V und die Stromaufnahmen wäre dann 1A.
Dann würde ich 4 solche Serie-Schaltungen machen, das würde eine Gesamtstrom von 2.8A ergeben.
Vieleicht kann man das besser machen, das war nur meine Grundüberlegung. Bei 12V könnte ich nur 3 LEDs Betreiben, das macht 10.2V, demzufolge müsste ich widerstände einbauen damit die Dinger nicht in die Luft gehen. Aber für jeden Tip bin ich dankbar.
Jetzt musste ich mich 1h mit dem was du geschrieben hast auseinander setzten.... Die Steuerspannung von 0-10V war eingentlich als Dimmersteuerung bedacht, aber du hast das ja bereits intergriert! Das wird also nciht mehr benötigt. Jetzt frag ich mal vorsichtig... Ein KSQ wird immer ncoh benötigt, oder?
Ich muss eigentlich nur 2 schienen mit jeweils 14 LEDs zum leuchten bringen, die Anzahl kann auch etwas höher oder tiefer sein.
Die LEDs haben bei 3.4V Betrieb eine Stromaufnahmen von 700mA.
Bei 7 LEDs in Serie würde das 23.8V und 700mA ergeben, somit wäre ein Wiederstand bei 24V Betrieb nichtig. Die max. Spannung von diesen LEDs ist 3.5V und die Stromaufnahmen wäre dann 1A.
Dann würde ich 4 solche Serie-Schaltungen machen, das würde eine Gesamtstrom von 2.8A ergeben.
Vieleicht kann man das besser machen, das war nur meine Grundüberlegung. Bei 12V könnte ich nur 3 LEDs Betreiben, das macht 10.2V, demzufolge müsste ich widerstände einbauen damit die Dinger nicht in die Luft gehen. Aber für jeden Tip bin ich dankbar.
ok mal ne andere Strategie. das ist dein Aufbau: hier brauchst du kein einzigen Widerstand!
Immer wenn eine KSQ benutzt wird darf zwischen KSQ und LEDs kein Widerstand verbaut werden!
folgende Info zum auswählen der Betriebsspannung in Zusammenhang der Anzahl der LEDs in deinem Fall sind bei 24 V nur 6 LEDs zu benutzen. sonst kann zu Überlastung der KSQ kommen, muss aber nicht denn einige haben Schutzvorrichtungen für solche fälle.
mfg
Jay
nur Netzteil, KSQ, PWM-Dimmer, 6x LEDs und Draht. OK?!Immer wenn eine KSQ benutzt wird darf zwischen KSQ und LEDs kein Widerstand verbaut werden!
folgende Info zum auswählen der Betriebsspannung in Zusammenhang der Anzahl der LEDs in deinem Fall sind bei 24 V nur 6 LEDs zu benutzen. sonst kann zu Überlastung der KSQ kommen, muss aber nicht denn einige haben Schutzvorrichtungen für solche fälle.
mfg
Jay
Hast du empfehlungen zum KSQ?
Ich habe gesehen es gibt solche, die das netzteil intergriert haben... Wobei ich nur sehr wenige gefunden habe, die PWM fähig sind.
Wäre es nich Sinnvoll 2 Reihen zu machen mit jeweils 12 LEDs und 48V Netzspannung?
VielenDank
Ich habe gesehen es gibt solche, die das netzteil intergriert haben... Wobei ich nur sehr wenige gefunden habe, die PWM fähig sind.
Wäre es nich Sinnvoll 2 Reihen zu machen mit jeweils 12 LEDs und 48V Netzspannung?
VielenDank
Also folgendes habe ich gefunden...
Das wäre die Analoge Dimm- Version (0-10V), macht ca. 80€. Konstantstrom incl. Netzteil, da stellt sich die Frage ob man eine Parallel-Schaltung a jeweils 5 oder 6 LEDs machen kann.
http://www.conrad.de/ce/de/product/1770 ... 20-390-VDC
Für KSQ müsste ich 2 von denen haben, macht ca. 95€ ohne Netzteil
http://www.conrad.de/ce/de/product/1770 ... 1&ref=list
Oder 4 von diesen, macht ca. 88€ ohne Netzteil
http://www.conrad.de/ce/de/product/1770 ... 1&ref=list
Oder 4 solche, macht ca. 50-60€
http://www.*********/de/LED-Controlli ... 8_119.html
http://www.*********/de/LED-Controlli ... 8_119.html
Oder wenn man das ganze auch parallel anschliessen kann 1 solche, wobei ich irgendwann im laufe der lezten Woche gelesen habe das dies zu Störungen führen kann.
Platine 10.90 € http://www.*********/de/LED-Controlli ... 8_119.html
Im Gehäuse 12.90 € http://www.*********/de/LED-Controlli ... 8_119.html
Bei Lumi habe ich leider keine gefunden, wo in der Beschreibung steht Dimmbar PWM... Bei der einen steht das sie eingans (primär-seitig) dimmbar ist.
Gibt es das auch noch günstigere Varrianten? Ist recht schwierig im Netz die PWM fähigen KSQ zu finden, insbesondere weil die Dimmtyp heufig nicht vermerkt wird.
Die Preisschere ist von ca. 88€ + 30€ fürs Netzteil, down bis ca. 40€ incl. Netzteil.
Das wäre die Analoge Dimm- Version (0-10V), macht ca. 80€. Konstantstrom incl. Netzteil, da stellt sich die Frage ob man eine Parallel-Schaltung a jeweils 5 oder 6 LEDs machen kann.
http://www.conrad.de/ce/de/product/1770 ... 20-390-VDC
Für KSQ müsste ich 2 von denen haben, macht ca. 95€ ohne Netzteil
http://www.conrad.de/ce/de/product/1770 ... 1&ref=list
Oder 4 von diesen, macht ca. 88€ ohne Netzteil
http://www.conrad.de/ce/de/product/1770 ... 1&ref=list
Oder 4 solche, macht ca. 50-60€
http://www.*********/de/LED-Controlli ... 8_119.html
http://www.*********/de/LED-Controlli ... 8_119.html
Oder wenn man das ganze auch parallel anschliessen kann 1 solche, wobei ich irgendwann im laufe der lezten Woche gelesen habe das dies zu Störungen führen kann.
Platine 10.90 € http://www.*********/de/LED-Controlli ... 8_119.html
Im Gehäuse 12.90 € http://www.*********/de/LED-Controlli ... 8_119.html
Bei Lumi habe ich leider keine gefunden, wo in der Beschreibung steht Dimmbar PWM... Bei der einen steht das sie eingans (primär-seitig) dimmbar ist.
Gibt es das auch noch günstigere Varrianten? Ist recht schwierig im Netz die PWM fähigen KSQ zu finden, insbesondere weil die Dimmtyp heufig nicht vermerkt wird.
Die Preisschere ist von ca. 88€ + 30€ fürs Netzteil, down bis ca. 40€ incl. Netzteil.
Hallo,
@Jay:
Programmierst du das alles in Bascom? Ich versuche mich gerade in Assembler für die Atmels. Da sind die Fortschritte, gerade was die mathematischen Operationen anbelangt, recht mühsam. Daher war ich am überlegen, ob ich doch auf eine Hochsprache wechseln sollte.
Wie sind deine Erfahrungen? Du scheinst ja hier richtig fit zu sein, da du so ein "Leuchtmuff" so nebenbei aus dem Ärmel schüttelst.
Gruß
@Jay:
Programmierst du das alles in Bascom? Ich versuche mich gerade in Assembler für die Atmels. Da sind die Fortschritte, gerade was die mathematischen Operationen anbelangt, recht mühsam. Daher war ich am überlegen, ob ich doch auf eine Hochsprache wechseln sollte.
Wie sind deine Erfahrungen? Du scheinst ja hier richtig fit zu sein, da du so ein "Leuchtmuff" so nebenbei aus dem Ärmel schüttelst.
Gruß
ja ich programmiere alles in bascom, im netzt suche ich auch nach code schnipsel und die Effizienz raus zu holen. Ich würde dir weiter hin Assembler empfehlen mit dem unterschied das du es mit bascom verwendest. das zu gibt es hier eine EinführungStrumboe hat geschrieben: Programmierst du das alles in Bascom?
Wie sind deine Erfahrungen?
jetzt zum Thema zurück. Ich hätte hier noch ein Restbestand von den AP8802 KSQ(6x).
Die KSQ sind von mir entwickelt worden und der Strom wird individuell eingestellt durch auflöten eines Widerstandes(Rset = 0,29 Ohm) auf die Platine.
Hier das Kurzdatenblatt, diese sind auf jeden Fall für die 5V PWM ausgelegt und sind auch viel günstiger. mfg
Jay
Zuletzt geändert von Jay am Mo, 20.02.12, 11:46, insgesamt 1-mal geändert.
Hi Jay
Wenn du solche Dinger auf Vorrate hast würde ich ein paar nehmen.
Was kosten die Dinger? Ist der Preis immer noch der gleiche wie? Und welche hast du alles noch vorrätig (350/700/1000, etc) würde gerne ein paar in meine BAstelkiste nehmen.
Habe mir das MK2 Board bestellt
Zu meiner Frage von oben; kann man nach dem KSQ auch eine gemischte Schaltung machen?
Wenn du solche Dinger auf Vorrate hast würde ich ein paar nehmen.
Was kosten die Dinger? Ist der Preis immer noch der gleiche wie? Und welche hast du alles noch vorrätig (350/700/1000, etc) würde gerne ein paar in meine BAstelkiste nehmen.
Habe mir das MK2 Board bestellt
Zu meiner Frage von oben; kann man nach dem KSQ auch eine gemischte Schaltung machen?
also die Widerstände habe ich noch für alle Strom werte verfügbar, sind auch noch nicht eingelötet.Predotec hat geschrieben:Und welche hast du alles noch vorrätig (350/700/1000, etc) würde gerne ein paar in meine BAstelkiste nehmen. kann man nach dem KSQ auch eine gemischte Schaltung machen?
Hinter der KSQ darf nichts anderes sein als LEDs, besonders hinter der AP880x nicht das ist eine geregelte KSQ die auf kleinste Änderungen reagiert.
Deshalb habe ich auch kleine Probleme mit der gehabt, im Prototyp Stadium hat die keine Wärme Entwicklung gehabt und wo ich die Platinen bekommen fing die KSQ an zu spinnen. Aber der Fehler wurde zum Glück von "CRI 93+ / Ra 93+" entdeckt und die letzten 6 KSQ die ich hier habe haben das Problem nicht.
mfg
Jay
PS: hast eine PM