Hallo, suche Lösungsmöglichkeiten. Folgendes habe ich vor: Funkschaltsteckdose ist klar, soll sich per Funk einschalten lassen. Wie gehabt, gibt's für ein paar Euro an jeder Ecke. Jetzt kommt's: Alle 6 Stunden soll das Relais der Funkschaltsteckdose für ca. 1 Minute einschalten. Jetzt könnte man einen Timer nehmen....aber welchen. Das Ganze sollte natürlich möglichst klein sein... Wie würdert ihr das lösen???
Ich brauche nur die Schaltung für den Intervall-Timer. Funk bleibt wie es ist, d.h. der Timer schaltet alle paar Stunden für ne Minute ein, und das wars...quasi arbeiten Funkt und Timer parallel! Also die Intervall Geschichte ist von Interesse. Bei Pic natürlich mit SW...
1. Sei vorsichtig. Benutze einen Trenntrafo 2. Suche in der Funksteckdose einen Elko, an dem eine plausible Betriebsspannung liegt (also 5 bis 12V) 3. Verfolge die Leiterbahnen an der Relaisspule. Finde den Transistor, über den die Spule geschaltet wird. 4. Baue eine Timerschaltung, die mit der gefundenen Betriebsspannung läuft und wenig Strom braucht. 5. Gib den Ausgang der Timerschaltung über eine Diode auf die Basis des Transistors, der das Relais schaltet.
Danke, aber soweit bin ich schon. Jetzt fehlt nur noch die PIC Schaltung mit der dazugehörigen SW. Und weil man das Rad nur ungerne immer wieder neu erfinden möchte, poste ich hier einmal. Denn sowas gibt es mit Sicherheit schon, ist wahrscheinlich eine der einfachsten PIC Schaltungen die es gibt...deshalb hier die Frage.
Claus Andy schrieb: > Jetzt fehlt nur noch die PIC Schaltung mit der dazugehörigen SW. Dann müßtest du erstmal verraten, ob das Einschalten jeweils zu festen Tageszeiten erfolgen so oder eher irgendwann, ungefähr alle sechs Stunden.
Wenn du mit dem uC an die 50Hz kommst, dann müsste ich so einen Code haben, ansonsten fehlt mir der Code für das kalibrieren des WDT wie z.B. alle 15 Minuten den WDT Timeout messen und diese Zeit dann immer von der Gesamtzeit abzählen. Eigentlich so wie es der Basic Stamp macht, aber wie gesagt, bisher brauchte ich den nicht.
alle 6 Stunden reicht... 50 Hz hab ich auch zur Verfügung..
basic stamp ist schon zu viel des guten pic10f222 alleine müßtes schon ausreichen...oder gibt noch was einfacheres?
Claus Andy schrieb: > Alle 6 Stunden soll das Relais der Funkschaltsteckdose für ca. 1 Minute > einschalten. Jetzt könnte man einen Timer nehmen....aber welchen. Das > Ganze sollte natürlich möglichst klein sein... > > Wie würdert ihr das lösen??? für 7,70€ http://www.elektrofachmarkt-online.de/index.php?cat=226&gclid=CNSG1vjmq7ECFcEXzQodK1AAig&lang=DEU&product=350240
und wie baust du das in eine funkschaltsteckdose ein? kopfschüttel
Claus Andy schrieb: > und wie baust du das in eine funkschaltsteckdose ein? kopfschüttel Was hat die Forderung des TO mit einer Funksteckdose zu tun? Du mußt schon genau lesen lernen. Noch einmal: >Alle 6 Stunden soll das Relais der Funkschaltsteckdose für ca. 1 Minute >einschalten.
@Hanz G. Ich glaube Du hast die Aufgabenstellung nicht verstanden. Insofern hast du nicht richtig gelesen, und übrigens, die Aufgabenstellung kommt von mir.
Claus Andy schrieb: > Jetzt fehlt nur noch die PIC Schaltung > mit der dazugehörigen SW. Solch eine Software müsstest Du Dir typisch selber schreiben. Einen einfachen Intervalltimer kann man sich aber auch problem- los aus 2...3 CMOS-ICs zusammenbauen. Gruss Harald
> Solch eine Software müsstest Du Dir typisch selber schreiben. > Einen einfachen Intervalltimer kann man sich aber auch problem- > los aus 2...3 CMOS-ICs zusammenbauen. Ein PIC10F200 etc braucht aber weniger Platz
Richtig, deshalb suche ich auch eine Lösung mit einem PIC10Fxxx. Die Tipps die hier bereits zum Besten gegeben wurden (Danke, aber ist das nicht ein Mikrocontroller-Board) waren, vornehm ausgedrückt, vollkommen daneben. Fehlt nur noch einer, der mit Bimetallen arbeitet und das als Lösung anbietet ;-). Im Grunde suche ich einen kleinen Prozessor der zyklisch alle paar Stunden den Ausgang für ne Minute High setzt. Sorry, das sollte doch die einfachste Übung überhaupt sein (für Jemanden der schon mal mit Prozessoren gearbeitet hat)! Die Resonanz ist bis jetzt eher dürftig...
tt2t schrieb: >> Solch eine Software müsstest Du Dir typisch selber schreiben. >> Einen einfachen Intervalltimer kann man sich aber auch problem- >> los aus 2...3 CMOS-ICs zusammenbauen. > > Ein PIC10F200 etc braucht aber weniger Platz Soviel grösser sind 2...3 SMD-ICs auch nicht. Dafür sollte man noch ein Plätzchen im Gehäuse finden. Gruss Harald
Den PIC10F200 gibt es es im 6-pol SOT-23-Gehäuse und er braucht nur einen 100nF zwischen zu Vdd und Vss. Bei "2-3" CMOS kommen noch plus 4-5 C plus R dazu und man hat schon wieder Drahtverhau oder eine Platine.
cand schrieb: > Sorry, das sollte doch die einfachste Übung überhaupt sein Ist es auch. Programmiere einen Timer des µC so, dass er alle paar Millisekunden ein ISR auslöst. In der ISR-Routine zählst du, wie oft der Timer sich gemeldet hat und aktivierst nach Erreichen eines vordefinierten Zählerstandes (6h) den Steuerausgang. Nach einer festen Zahl weiterer Timer-Pulse (1 min) deaktivierst du den Steuereingang wieder. Dann fängst du wieder von Vorne an. Am Steuerausgang hängt über einen Vorwiderstand ein Transistor, der das Lastrelais schaltet.
cand schrieb: > Im Grunde suche ich einen kleinen Prozessor der zyklisch alle paar > Stunden den Ausgang für ne Minute High setzt. Sorry, das sollte doch die > einfachste Übung überhaupt sein (für Jemanden der schon mal mit > Prozessoren gearbeitet hat)! Die Resonanz ist bis jetzt eher dürftig... Was Du suchst ist jemand, der deine Arbeit übernimmt. Du sagst doch selbst, das es "die einfachste Übung überhaupt" sein soll. Warum setzt Du dich dann nicht hin und nimmst einen X-belibigen µC und versuchst das Programm selbst zu schreiben? Wenn Du dann an deine grenzen kommst und nicht mehr weiter weist, wird Dir hier im Forum gerne geholfen. Nur die ENTWICKLUNG einer Software DEINEN Vorstellung wird hier keiner übernehmen. Ein bisschen eigeninitiative muss man schon zeigen. PS: Das musste eben mal raus. Ich bastel mich auch nur durch und musste auch schon Rückschläge einstecken. Aber da muss man drüber stehen und weiter machen.
@Stephan W. Arbeit? Klar geht's um Arbeit. Fängt man bei Null an, kauft man sich ne Umgebung und fummelt wochenlang dran rum. Normalerweise merkt man dann, dass ein anderer Prozessor viel geeigneter wäre. Also wieder zurück auf Start. Mit anderen Worten, das ganze Procedere dauert leicht Monate. Im Grunde suche ich eine Empfehlung (Nimm Prozessor x). Software die das kann, gibt's hier. Muss man halt ein wenig anpassen. Und fertig. So entwickelt man halt heute. Jedenfalls wenn man noch was anderes zu tun hat als rum zu doktern. Anders ausgedrückt, ich hab ne Anwendung. Möchte mich nicht zum Programmierer weiterbilden...
> Ist es auch. Programmiere einen Timer des µC so, dass er alle paar > Millisekunden ein ISR auslöst. Der PIC10F200 kennt keine Interrupts. Braucht man auch nicht, wenn man nur alle x Stunden einen Pin "wackeln" will. Einfach einen mehrstufigen Zähler aus y Bytes mit einem geeigneten Wert (je nach gewünschter Zeit) vorbesetzen, runter zählen lassen, wenn der auf null ist das Bit wackeln und dann wieder von vorne. Der Befehl DECFSZ ist ideal dafür. Die Genauigkeit des internen Oszillators ist ab Werk auf 1% genau getrimmt, der Stromverbrauch des PIC liegt dabei ca 0,4 µA bei 5 Volt. Programmieren musst Du schon selbst, fertige Software gibt es dafür nicht, hier ist NICHT Windows.
Ein Atiny mit 8 Polen hat immerhin einen Timer, da ist das dann nur ein Klacks
> Ein Atiny mit 8 Polen hat immerhin einen Timer, da ist das dann nur > ein Klacks Klar, das können die 8-pol PICs auch. Ob man jetzt den Timer programmiert oder eine Zählerstufe mehr, dürfte aber egal sein.
Hier eine Vorlage. Schau daß dein uC mit nur 2V läuft und dann ist der Stromverbrauch auch in Ordnung. list p=10F200 ; list directive to define processor #include <p10F200.inc> ; processor specific variable definitions radix dec org 0x01FF data _CP_OFF & _WDT_ON & _MCLRE_OFF __CONFIG _CP_OFF & _WDT_ON & _MCLRE_OFF ;***** VARIABLE DEFINITIONS d0 EQU 0x1C d1 EQU 0x1D d2 EQU 0x1E d3 EQU 0x1F ;***** DEFINE DEFINITIONS #define Ticks #define Seconds * 250 Ticks #define and + #define Minutes * 60 Seconds #define Hours * 3600 Seconds ;***** USER DEFINES #define DIRS 0xff ; TRIS value #define PINS 0 ; GPIO value #define INTERVAL1 6 Hours #define INTERVAL2 1 Minutes ;***** MACRO DEFINITIONS loadi32 macro val movlw -(((val)>>0 )&0xff) movwf d0 movlw -(((val)>>8 )&0xff)+1 movwf d1 movlw -(((val)>>16)&0xff)+1 movwf d2 movlw -(((val)>>24)&0xff)+1 movwf d3 endm ;********************************************************************** ORG 0xFF ; processor reset vector ; Internal RC calibration value is placed at location 0xFF by Microchip ; as a movlw k, where the k is a literal value. ORG 0x000 ; coding begins here goto 0x40 ORG 0x40 goto start ;********************************************************************** ;****** FUNCTION CALLS ;********************************************************************** Delay; movlw -125 movwf TMR0 clrwdt btfsc TMR0,7 goto $-1 decfsz d0, f goto $+2 decfsz d1, f goto $+2 decfsz d2, f goto $+2 decfsz d3, f goto Delay retlw 0 start movwf OSCCAL ; update register with factory cal value movlw DIRS tris GPIO movlw PINS movwf GPIO btfsc 3,3 iorlw 1 btfsc 3,4 iorlw 2 addwf PCL retlw 0 ; wdt wake: return goto wdt_fail goto mclr_pin main_ clrwdt movlw 4 option ; set tmr0 div 32 goto main ;********************************************************************** mclr_pin ; currently unhandled wdt_fail ; currently unhandled main loadi32 INTERVAL1-INTERVAL2 call Delay loadi32 INTERVAL2 call Delay goto main END ; directive 'end of program'
Bei loadi32 das erste - wegmachen, da ja decfsz verwendet wird, - braucht es bei incfsz .
Danke pic, endlich jemand der die Richtung erkannt hat wo es hingehen soll. Das assembeln wollte ich mir altersbedingt nicht mehr antun, lieber vergebe ich das als bezahlten Auftrag. Insofern bitte ich um Angebote, die mein Problem lösen. Stufe 1:) Ich habe bei der Funksteckdose A eine Spannung von 5 Volt, bei der Funksteckdose B einmal 3,1V und 6,8V zur Verfügung. Welcher Prozessor jetzt verwandt wird ist mir vollkommen egal (<1€), er sollte nur mit den bei den beiden Funksteckdosen Typ A und B zur Verfügung stehenden Spannungen ohne weitere Beschaltung laufen. (Bitte einen µC mit wenig Beinen. Eine Paltine benötige ich nicht. Der Blockkondensator und der Spannungteiler für den Transistortreibers des Relais möchte ich direkt am µC verlöten und einschrumpfen. Insofern bitte nichts 2x2 mm kleines, ein wenig größer darfs schon sein. Die fertige Schaltung hat demnach 3 Drähte, und am Ende ein Stück Schrumpfschlauch. Funktionsbeschreibung: Alle 6h schaltet der Ausgang auf High (für eine Minute) und anschließend wieder auf Low. Bei der erstmaligen Inbetriebnahme (also beim Einstecken der Funksteckdose) ist der Ausgang für eine Minute High, um sich dann wieder 6h auszuruhen. Danach gibt's wieder eine Minute High, usw. Die Funktionnalität des Funkschaltens soll natürlich erhalten bleiben. Den Sourcecode benötige ich, um ggf. nachträglich die Zeiten verändern zu können. Das Angebot umfaßt 5 programmierte µC, um die Beschaltung kümmere ich mich dann selbst. Stufe2:) Zusätzlich zur Stufe 1, stelle ich Funkschaltsteckdose A und B zur Verfügung, mit der Bitte um hardwaremäßige Integration. Bei beiden Funkschaltsteckdosen wird über einen Treibertransistor ein Relais geschaltet. Kann aber gut sein das hier verschiedene Spannungsteiler für A und B benötigt werden. Am Ende sollte das vernünftig funktionieren (die Funkfunktion natürlich auch noch). Stufe3:) Für die, die auch noch gerne Löten mögen, 50 mal bauen und einbauen plus testen. Ich erwarte ein Angebot, (je nachdem für welche Stufe) und am Ende der Arbeit eine Rechnung. Nachricht bitte per PN. Danke!
Wieso hast du es dann nicht im Markt gepostet , oder explizit darauf hingewiesen daß es ein Auftrag ist. Ich benutze auch generell lieber Hochsprache, aber da ich eher davon ausgehen kann, daß du die Tools dafür nicht hast, habe ich es als Assemblerlösung gepostet. Bei den Pic Prozessore, steht explizit in den Datenblättern dass sie nur mit zwei Kondensatoren die 1-2% Genauigkeit schaffen, und das sind dann schon ca 5Minuten Fehler am Tag, theoretisch und mit den zwei Condensatoren. Ein gut gemeinter Rat, lass den pic 10f200, verwende einen uC mit EEprom damit du die Zeiten über z.B. RF reingeben kannst. Da du nichts einen Schaltplan reinstellst, dann kann man eigentlich auch nur die Programmierung liefern, eine Funktionsgarantie keinesfalls.
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.