Guten Abend, Ich hab leider nur sehr wenig Erfahrung mit µC. Ich möchte einige LEDs mit 0-10v steuern. Also muss ich ja die 0-10v in PWM umwandeln. Also so was in der Art. http://www.ebay.de/itm/LED-Digital-PWM-Dimmer-8-28-V-8A-Taster-oder-0-10-Volt-Steuerung-/131102622542?pt=DE_M%C3%B6bel_Wohnen_Lampen_Lichtzubeh%C3%B6r&hash=item1e8653434e Von diesen Wandlern bräucht ich so ca 18 Stück. Deswegen dachte ich, ich Versuch es einfach mal selber herzustellen. Die 0-10v kommen aus LCN BUS Modulen. Meine Frage jetzt ob jemand nen Schaltplan hätte mit dem Dazugehörigren Programm. Oder mir helfen kann, wo ich so einen finden kann. Oder mir helfen kann so ein herzustellen. Danke im Voraus MFG Alex
Beitrag "0-10v in Pwm umsetzen für Konstantstromquelle" Ich würde es mit einem PIC12F1501 lösen. Die 10V über einen Spannungsteiler an einen ADC-Eingang und dann mit dem PWM Modul ausgeben... Einer dieser PICs könnte dann 2 Signale umwandeln.
:
Bearbeitet durch User
Ich schlag mal wieder den Klassiker vor: Ein Dreieck- oder Sägezahngenerator mit 0-10V Ausgangsswing geht auf den invertierenden Eingang von 18 Komparatoren, z.B. dem LM339. An die positiven Inputs kommen die 0-10V aus dem Steuergerät, am Ausgang jedes Komparators liegt die gewünschte PWM für den Kanal.
Matthias Sch. schrieb: > Ich schlag mal wieder den Klassiker vor: Ein Dreieck- oder > Sägezahngenerator mit 0-10V Ausgangsswing geht auf den invertierenden Beitrag "Re: 0-10v in Pwm umsetzen für Konstantstromquelle"
Max H. schrieb: > Matthias Sch. schrieb: >> Ich schlag mal wieder den Klassiker vor: Ein Dreieck- oder >> Sägezahngenerator mit 0-10V Ausgangsswing geht auf den invertierenden > > Beitrag "Re: 0-10v in Pwm umsetzen für Konstantstromquelle" Ja, genau. Auch in diesem Thread habe (2 Posts weiter oben) genau das vorgeschlagen. Allerdings würde ich das alles direkt von 10-12V speisen, damit spart man sich jegliche Pegelanpassung etc. Den TS914 finde ich unnötig exotisch, der LM339 hat auch gleich 4 Komparatoren in einem Gehäuse. Mit 5 dieser Dingerchen sind also alle 18 Kanäle erschlagen.
Guten Abend, ich bins wieder. Hatte in der Woche leider wenig Zeit, hab es aber am Wochenende geschafft. Hab bei mir ein Mega8 gefunden und den Code draufgespielt. Die 0-10v über ein Spanungsteiler an Pin PC0 und ein FET an PB1. LEDs dran und hab gestaunt;). Es funktioniert. Hätte aber noch einige Bitten. Also bei 0v leuchten die LEDs gedimmt weiter. Kann man was machen, damit die bei 0v ganz aus sind. Ich möchte pro 0-10v ein kleines Modul bauen das Modul soll neben den Trafo in die Lampen. Deswegen brauch ich nur ein Kanal pro MC. Welcher MC ist empfehlenswert? Max H hat den PIC12F1501 vorgeschlagen oder kann ich diesen nehmen: http://www.reichelt.de/PIC-12-Controller/PIC-10LF320-IP/3/index.html?&ACTION=3&LA=2&ARTICLE=121703&GROUPID=2966&artnr=PIC+10LF320-IP Der wär halt um einiges günstiger. Kann ich den mit AVR Evaluation Board von Pollin programmieren. Passt der Code so oder muss er geändert werden, wenn ja könnt ihr mir helfen beim ändern.
1 | #define PC1 1
|
2 | #define PC0 0
|
3 | #include <avr/io.h> |
4 | #include <stdio.h> |
5 | |
6 | unsigned char adc_read8(char channel); |
7 | |
8 | int main(void) |
9 | {
|
10 | |
11 | //PC4,5 output
|
12 | DDRB = (1<<DDB1) | (1<<DDB2); |
13 | |
14 | |
15 | //TIMER 1
|
16 | ICR1 = 255; |
17 | TCCR1A = (1<<COM1A1) | (1<<COM1B1) | (1<< WGM11); //Fast PWM, TOP = ICR1, Clear on Compare Match |
18 | TCCR1B = (1<<WGM13) | (1<<WGM12) | (1<<CS11) | (1<<CS10); //Prescaler 64 //Fast PWM, Prescaler 256 |
19 | |
20 | |
21 | //ADC
|
22 | ADMUX = (1<<REFS0) | (1<<ADLAR); //VRef = AVCC |
23 | ADCSRA = (1<<ADPS2) | (1<<ADPS1) | (1<<ADEN); // 125 kHz @ 8 Mhz, ADC enabled |
24 | ADCSRA |= (1<<ADSC); |
25 | while (ADCSRA & (1<<ADSC)); |
26 | |
27 | unsigned int i = 0; |
28 | while(1) |
29 | {
|
30 | if (~i) |
31 | {
|
32 | OCR1A = adc_read8(PC0); |
33 | OCR1B = adc_read8(PC1);; |
34 | |
35 | }
|
36 | i++; |
37 | }
|
38 | }
|
39 | |
40 | unsigned char adc_read8(char channel) |
41 | {
|
42 | ADMUX = (ADMUX & ~(0x1F)) | (channel & 0x1F); |
43 | ADCSRA |= (1<<ADSC); |
44 | while (ADCSRA & (1<<ADSC)); |
45 | return ADCH; |
46 | }
|
Danke im Voraus
Alex schrieb: > Max H hat den PIC12F1501 vorgeschlagen oder kann ich diesen nehmen: > http://www.reichelt.de/PIC-12-Controller/PIC-10LF320-IP/3/index.html?&ACTION=3&LA=2&ARTICLE=121703&GROUPID=2966&artnr=PIC+10LF320-IP Ja, wäre eine auch eine Möglichkeit. Mit dem 12F1501 könntest du 2 Signale in PWM umwandeln, mit dem 10F320 nur eines. Alex schrieb: > Kann ich den mit AVR Evaluation Board von Pollin programmieren. Ich kenne das AVR Evaluation Board nicht, aber es wir mit an Sicherheit grenzender Wahrscheinlichkeit nicht gehen. Und das Programm müsstest du auf ändern, da PIC und ATmega zwei verschiedene Paar Schuhe sind.
:
Bearbeitet durch User
OK wie wäre es mit dem ATTINY 45? Der sollte in mein Programmierboard passen. Kann mir jemand vil. den Code für diesen mc umschreiben. Danke im Voraus.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.