Hallo, das ist mein erster Post hier und stelle mich gerne erst mal vor :) Ich habe mich vor kurzem (ca. 3 Monate) dazu entschieden Elektronik in die Liste meiner Hobbys aufzunehmen. Dazu möchte ich mich auch in PIC Mikrokontroller einarbeiten und habe mir bereits ein PicKit2 gekauft. Die Einarbeitung in das Feld der Elektronik geht sicher nicht von heut auf morgen und ich habe viel zu lesen, das ist mir auch recht schnell bewusst geworden. Nachdem ich meine ersten blinkenden LEDs mittels PIC realisiert habe sollte es auch gleich etwas sinnvolleres werden. Als erstes kleines Project habe ich mich entschlossen einen IR-repeater nachzubauen, den ich hier: http://picprojects.org.uk/projects/miniprojects.htm#IR%20Remote%20Control%20Repeater gefunden habe. Momentan habe ich es auf einem Breadboard zusammengesteckt und es funktioniert soweit super und erfüllt genau den von mir benötigten Zweck. Aber bevor ich das jetzt auf eine Platine löte habe ich eine kleine Frage an die Profis hier: Ich habe den Verbrauch der Schaltung nachgemessen und bin auf ca. 6 mA gekommen (idle). Wenn ich die Schaltung nun mit einer 9V Blockbatterie betreiben möchte (ich nehme mal 600 mAh an und das ist schon viel), dann komm ich damit gerade mal 100 h weit, richtig? Meine Frage ist nun: Lässt sich da mit einfachen Mitteln noch etwas rausholen? Ich würde nur ungern mein erstes Projekt mit einem Netzteil dauerhaft an den Strom hängen... dann trau ich mich ja nicht mehr aus dem Haus :) Und wie komme ich am besten von einem Schaltdiagramm zu einer sinnvollen Auslegung auf einer Lochplatine? Auf dem Breadboard sieht das noch nicht optimal aus und es geht sicher besser. Aber für die Frage bediene ich gerne auch die Forumssuche... (Ich wollte dennoch fragen - vielleicht möchte mich jemand ja draufschupsen. Wenn ich im Forum lese bleibe ich bei jedem zweiten Thema hängen.... ist ja alles interessant hier) Danke für die Hilfe, Christian
Hallo Christian, habe mir mal das Projekt angeschaut. Meinen schwachen Englischkenntnissen verschließt sich jedoch der Zweck der Schaltung: "and allows the signal to be repeated in another location". Nun gut, Strom sparen funktioniert zum einen mit geringerer Versorgungsspannung (schau mal ins Datenblatt) - Grenzen setzt wohl die Flusspannung der LED. Anderseits kann man den Pic in jeder "Arbeitspause" in den Schlafmodus versetzen. 1000x 10µs ergeben dann auch 1/10 weniger aktive Zeit und evtl. 0.5mA oder mehr Stromersparnis. Schau doch mal nach "Lochmaster" bzw "Blackboard". Letzteres ist frei und uneingeschränkt nutzbar. Gruss GroberKlotz
Hallo GroberKlotz, herzlichen Dank für die Hilfe. Die Schaltung leitet das IR Signal einer Fernbedienung weiter. Dh. das Signal wird aufgenommen und von einer IR-LED wieder abgegeben. Dabei wird die IR-LED an einem Kabel in einen anderen Raum (oder in den Schrank in dem alle Empfänger stehen) verlängert. Soweit ich verstanden habe ist der PIC dazu da Störsignale zu filtern, damint die IR-LED nicht ständig an ist. Den Quellcode versuche ich noch nachzuvollziehen, aber der PIC wird stellenweise in den Sleepmode geschickt. Ich dachte das eventuell der Festspannungsregler viel Energie verbratet. Der hat doch sicher eine Verlustleistung beim Runterregeln. Ich kenn mich aber noch nicht so damit aus, bin wie gesagt schwer am lernen :) Aber prinzipiell brauche ich ja nirgenwo 9V... vielleicht kann man ja mit der Versorgungsspannung runter und mit 6V noch stabile 5 V generieren? Danke für die Programmtips ! Da werde ich heute nach der Arbeit mal reinschaun. Und noch mal an alle hier: Super Forum! Sehr informativ und nicht so ein rumgepöbel wie es oft in Foren der Fall ist :) Finde ich super.
....apropos Spannungsregler Die 9V haben zusammen mit dem Spannungsregler nichts mit dem Stromverbrauch zu tun. Der Spannungsregler zieht eben den Strom der Schaltung und dazu seinen Ruhestrom aus der Batterie. Dabei verbrät er die Spannungsdifferenz 9-5V mit dem Gesamtstrom zur Verlustwärme. Schau aber doch mal in die Datenblätter eines 7805 und 78L05. Der Ruhestrom beträgt beim 78L05 etwas weniger als beim 7805. Auch LowDrop-Spannungsregler glänzen mit einem niedrigen Eigenstrombedarf (z.B. LP2950). mfG GroberKlotz
>Ich würde nur ungern mein erstes Projekt >mit einem Netzteil dauerhaft an den Strom hängen... >dann trau ich mich ja nicht mehr aus dem Haus :) Tatsächlich solltest du keinesfalls 230V~ auf eigene Platine oder auch nur in eines Gehäuse mit Bastelaufbau tun. Aber du kannst ein preiswertes Steckernetzteil verwenden, ein möglichst schwaches für deinen Zweck. Geeignet ist beispielsweise das "Steckernetzteil FW 4199" das bei Pollin für 0,95 Euro erhältlich ist. Liefert unstabilisiert 7,5 Volt (d.h. bei geringer Last etwas mehr) und 'nen 5V Regler hast in deiner Schaltung ja drin. "FW" steht für den Hersteller "Friwo". Das sind (Stecker-) Netzteile zu nach Vorschrift und Zulassung gebaut sind, selbst bei Dauerkurzschluss am Ausgang darf da nichts anbrennen (warm werden dann möglicherweise schon, oder defektgehen nach 1 Stunde). Selbst bei 1W (oder 1VA) Dauerleistung aus dem Netz ist es preiswerter als 4 neue Batterien pro Jahr. Gruss
6mA ist recht viel. Der Sensor braucht davon 1,5mA. An die 1,5mA kann man aber rankommen. Dazu muß man einen MC nehmen, der mit Pin-Change aufwachen kann (z.B. ATtiny13). Auch ist eine PWM (z.B. ATtiny13) nützlich, um die 40kHz stabil zu erzeugen. Peter
GroberKlotz schrieb: > Der Spannungsregler zieht eben den Strom der > Schaltung und dazu seinen Ruhestrom aus der Batterie. Dabei verbrät er > die Spannungsdifferenz 9-5V mit dem Gesamtstrom zur Verlustwärme. Verstehe ich das richtig, dass der Spannungsregler nur dann Strom verbraucht, wenn der Verbraucher hinter dem Regler Strom verbraucht + Ruhestrom ? D.h. wenn 5V und x mA von der Schaltung gezogen werden, dann verbrät der Regler die 4V Differenz? Da muss ich noch mal lesen gehen... Erich schrieb: > Selbst bei 1W (oder 1VA) Dauerleistung aus dem Netz ist es preiswerter > als 4 neue Batterien pro Jahr. 4 Batterien pro Jahr wären noch ok. Da würde ich dann Akkus nehmen. Aber nach meiner Rechnung wären das überschlagen eine Batterie alle 4 Tage. Obwohl mir das sehr viel vorkommt. Aber 600 mAh / 6 mA = 100 h ? Erich schrieb: > Geeignet ist beispielsweise das "Steckernetzteil FW 4199" das bei Pollin > für 0,95 Euro erhältlich ist. Steckernetzteil ist allerdings eine gute Idee. Wir haben hier in der Firma einen Eletronik Schrott. Da werden ständig alte Netzteile weggeworfen... Kann ich da bedenkenlos eins mit 7,5 -9 V rauskramen oder sollte ich darauf achten das es nicht zu viel mA liefert? Sprich habe ich eine höhere Verlustleistung bei einem leicht überdimensionierten Netzteil, oder ist die Verlustleistung abhängig vom Verbraucher? Ansosnten sind 0.95 Euro natürlich auch nicht zu viel ;) Peter Dannegger schrieb: > An die 1,5mA kann man aber rankommen. Dazu muß man einen MC nehmen, der > mit Pin-Change aufwachen kann (z.B. ATtiny13). Das kann der PIC12F675 meines Wissens auch. Wenn ich durch den Sourcecode durchgestiegen bin werde ich da auch ein wenig mit rumspielen. Das kann ich ja immer noch machen, wenn ich die Platine gelötet habe... Super vielen Dank für den Input :) Gruss Christian
> An die 1,5mA kann man aber rankommen. Dazu muß man einen MC nehmen, der > mit Pin-Change aufwachen kann (z.B. ATtiny13). Das kann auch ein PIC, auch der 12F675. Der ist aber keine gute Wahl, weil er entweder mit Quarz oder intern nur mit 4 MHz läuft, was schon mal mindestens 1 mA zieht plus Timer, WDT, ADC etc, falls die nicht abgeschaltet sind (habe jetzt nicht nachgesehen). Die restlichen 5 mA sind wohl der TSOP und vor allem der 7805. Also lass erst mal den 7805 weg und nimm 3x AA oder AAA statt der Blockbatterie, das sind 4.5 Volt, da läuft auch alles problemlos. Dann kannst Du noch den 12F683 oder den 12F1822 nehmen und mit niedrigerer Frequenz betreiben, z.B. 31, 125 oder 250 khz, dann braucht der plötzlich VIEL weniger, z.B. nur noch 30-60 µA bei 31 khz. Dann kann es aber sein, dass Du den Code anpassen musst.
>Kann ich da bedenkenlos eins mit 7,5 -9 V rauskramen
Im Prinzip ja.
Gleichspannung sollte es abgeben (selten gibt es welche mit AC Ausgang);
eine interne Stabilisierung ist überflüssig solange dein 7805 drauf ist
(billige Resteteile haben das eh nicht).
Da deine Schaltung (aus Sicht des Steckernetzteils) so wenig mA braucht,
ist ein möglichst kleines gut. Leistungsstärkere haben höheren
Eigenverbrauch (des Trafos od. gar des internen Schaltreglers).
Hi, du könntest auch einfach ein USB-Netzteil nehmen z.B. Reichelt "NT IP USB SL", da kommen direkt 5V raus, sind nicht besonders stark ~700mA@5V und du kannst den Spannungsregler direkt weglassen. Gruß Marcus
So, ich war heute dann mal dumpster diving - und das recht erfolgreich :) Nun habe ich 3 Netzteile zur Auswahl: 1) Ein Nokia Netzteil: 5V / 890mA out. Das wäre ja equivalent zum USB Netzteil. Hier kann ich dann auf den Spannungsregler verzichten 2) Ein Logitech Netzteil: 5.25V / 300mA out. Muss ich noch mal nachlesen ob der PIC das mitmachen würde. Aber wahrscheinlich kann ich dann auch das Nokia nehmen... 3) Eines mit 7.2V / 500 mA out. Das könnte ich so wie es ist an die bestehende Schaltung klemmen .... Aber auch wenn ich mit dem Hobby gerade erst anfange finde ich es eine sportliche Herausforderung so energiesparend wie möglich zu sein. Besonders wenn es um eine Schaltung geht, die zwar immer an sein soll, aber maximal nur 2 Stunden pro Tag benutzt wird.... Deshalb werde ich wahrscheinlich die Schaltung noch nicht zusammenlöten sondern auf dem Breadboard lassen und erst mal mit dem Nokia Netzteil ohne dem Spannungsregler weitermachen. Mal sehen was dann rauskommt. usuru schrieb: > Also lass erst mal den 7805 weg und nimm 3x AA oder AAA statt der > Blockbatterie, das sind 4.5 Volt, da läuft auch alles problemlos. Dann > kannst Du noch den 12F683 oder den 12F1822 nehmen und mit niedrigerer > Frequenz betreiben, z.B. 31, 125 oder 250 khz, dann braucht der > plötzlich VIEL weniger, z.B. nur noch 30-60 µA bei 31 khz. Dann kann es > aber sein, dass Du den Code anpassen musst. Das hört sich sehr vielversprechend an. Das werde ich als zweiten Schritt angehen. Allerdings wird das mit 31 khz nicht funktionieren da ich ja eine 40 khz Trägerfrequenz benötige, oder ? Ach das mit dem Timing bekomme ich noch raus... das entwickelt sich zu einem schönen Lernprojekt. Gruss und schönen Abend, Christian
Christian K. schrieb: > Das hört sich sehr vielversprechend an. Das werde ich als zweiten > Schritt angehen. Allerdings wird das mit 31 khz nicht funktionieren da > ich ja eine 40 khz Trägerfrequenz benötige, oder ? Ach das mit dem > Timing bekomme ich noch raus... das entwickelt sich zu einem schönen > Lernprojekt. Kannst du den Pic selbst programmieren? Dann lege die Empfangsdiode auf eine Pin der den Pic aufweckt und leg ihn schlafen. Je nach Pic verbraucht der dann µicro oder nanoampere und zieht nur mA wenn ein Signal kommt. Dein Empfänger wird aber die Batterie leersaugen egal wie toll der µC ist. Vielleicht über einen Pin ein und ausschalten oder einen besseren finden oder ne Solarzelle nehmen
usuru schrieb: > Das kann auch ein PIC, auch der 12F675. Der ist aber keine gute Wahl, > weil er entweder mit Quarz oder intern nur mit 4 MHz läuft, Schau mal ins Datenblatt, richtig: 4MHz interner Oszillator (1% calibriert) extern max 20MHz (Arbeitstakt ist jeweils 1/4 davon). @christian im Forum hier musst Du Dich daran gewöhnen, dass die meisten Forumsteilnehmer PRO AVR (ATiny, ATmega usw) eingestellt sind und wenn einer mal 'nen PIC verwendet (so wie ich) dann werden doch manchmal einseitige Aussagen getroffen (siehe post von P.Dannegger). Betriebsbereich: Der PIC kann zwischen 2.0 bis 5.5V (Datenblatt!) betrieben werden. Zum Stromsparen also evtl. die geringstmögliche, zum Betrieb des IR-Empfängers/Senders noch ausreichende Spannung wählen. Ein echter Sparvorschlag: Ohne Empfangsimpuls den PIC in den Power Down (Sleep)-Modus zu schicken und dann beim ersten Empfangsimpuls wieder aufzuwecken! Schau doch mal dazu im Datenblatt das Kapitel "9.7 Power-Down Mode (SLEEP)" an. Genau diese Methode ist auch vom Entwickler [http://picprojects.org.uk/projects/code/RemoteEx-4.asm] vorgesehen. Eigentlich könntest Du Dich für ein erstes Erfolgserlebnis an diese Vorgabe halten und dann davon ausgehend experimentel mehr und mehr mit der Optimierung voranzuschreiten. Zum Timing: wenn Du z.B 31 kHz brauchst: 31khz * Vorteiler (für TMR0 z.B 1:1 - 1:256) * 4 = fosz (Oszillatorfrequenz Während der TMR0 ein 8Bit-Zähler ist, kannst Du auch dem 16Bit-TMR1 einen Vorteiler zwischen 1:1 und 1:1 verpassen, um auf die richtige Frequen zu kommen. Mittels der Software kannst Du jederzeit eine "Feinabstimmung" vornehmen. Also geh's an mfG GroberKlotz
Ich hab auch ein Gerät, was sehr unempfindlich ist, man muß die FB immer genau ausrichten. Hab hier mal schnell ne Version des Repeaters mit AVR gestrickt:
1 | #include <avr/interrupt.h> |
2 | #include <avr/sleep.h> |
3 | |
4 | // Target: ATtiny13
|
5 | // Input: Pin 3 = PB4 = PCINT4, low = Impuls
|
6 | // Output: Pin 6 = PB1 = OC0B, high = LED on
|
7 | |
8 | #define F_CPU 1.2e6 // 1.2MHz (factory default)
|
9 | #define PWM_FREQUENCY 40e3 // 40kHz
|
10 | #define PWM_RATIO 0.25 // 25%
|
11 | |
12 | EMPTY_INTERRUPT( PCINT0_vect ); // to awake on pin change |
13 | |
14 | int main() |
15 | {
|
16 | GIMSK = 1<<PCIE; // enable pin change interrupt |
17 | PCMSK = 1<<PCINT4; // for PB4 |
18 | OCR0A = F_CPU / PWM_FREQUENCY - 0.5; // 40kHz |
19 | OCR0B = F_CPU / PWM_FREQUENCY * PWM_RATIO - 0.5; // 25% |
20 | TCCR0A = 1<<WGM01 | 1<<WGM00; // fast PWM, OCR0A = top |
21 | TCCR0B = 1<<WGM02 | 1<<CS00; // fast PWM, no prescaler |
22 | PORTB = 1<<PB0 | 1<<PB2 | 1<<PB3 | 1<<PB4 | 1<<PB5; // pullups on |
23 | DDRB = 1<<PB1; // PB1 = output; |
24 | sleep_enable(); // enable sleep |
25 | |
26 | for(;;){ |
27 | if( PINB & 1<<PB4 ){ // high = pulse off |
28 | TCCR0A &= ~(1<<COM0B1); // disconnect PB1 from PWM (PB1 = low) |
29 | set_sleep_mode( SLEEP_MODE_PWR_DOWN ); // power down (PWM stopped) |
30 | }else{ // low = pulse on |
31 | TCCR0A |= 1<<COM0B1; // connect PWM to PB1 |
32 | set_sleep_mode( SLEEP_MODE_IDLE ); // idle (PWM running) |
33 | }
|
34 | sei(); |
35 | sleep_cpu(); // sleep until interrupt |
36 | cli(); |
37 | }
|
38 | }
|
Peter
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.