Boilersteuerung attiny 2313 Bascom

Gast #718763
Lesenswert?

Hallo, alle!
ich möchte aus Stromspargründen meinen Boiler zu einer festgelegten Zeit 
automatisch starten lassen.
und zwar immer um 6 uhr morgens.
Dazu soll noch eine LED immer blinken, damit ich weiss das die Schaltung 
noch läuft :)
ich habe leider in Programmierung überhaupt keine Ahnung.
kann mir einer HELFEN?
also keine fertige Lösung.
Würde mich über jede Hilfe freuen!
Danke schön!
MfG michael
Gast #718776
Lesenswert?

zunächst mal brauchste ne Uhr,
also am Einfachsten nen Uhrenquarz.
Wenn ichs aber recht weiß geht das
dann nicht mit dem Tiny, ne Mega8
(nur n paar cent teurer) kann den dann
direkt an nem Timer verwenden und
fertig ist die Realtimclock, also die
Uhr. Dann solltest Du die Uhr noch
stellen können, also Taster und LCD
währen sinnvoll. Dann noch n Relais dran
und fertig ist die Boilersteuerung.
Gast #718787
Lesenswert?

Vielen Dank für dein Beitrag! ;)
Die Idee is schon sinnvoll.
Eine Uhr krige ich WAHRSCHEINLICH noch hin (es gibt fertige Beispiele)
aber wie soll ich ihm sagen, dass er um 6 uhr einschalten soll und um 8 
uhr ausschalten?
etwa so:
if $time = 06:00:00 then
set portB.0
if $time = 08:00:00 then
reset portB.0

ich glabue es wird so NICHT funktionieren :(
Gast #718794
Lesenswert?

Was passiert aber, wenn Du die Schaltung um 09:17:22 in Betrieb nimmst? 
Zum Ausschalten ist es zu spät (das würde ja nur um 8 passieren..). Ich 
würde in der Abfrage irgendwas reinbauen wie

wenn (zeit > einschaltzeit) und (zeit < ausschaltzeit) dann "heizen"
ansonsten "nicht heizen"
Gast #718821
Lesenswert?

wo ist hier der Fehler?

$regfile = "m8def.dat"
$crystal = 1000000
$baud = 19200
$hwstack = 32
$swstack = 10
$framesize = 40


Enable Interrupts

Config Pinb.7 = Output
Boiler Alias Portb.7


Date$ = "11/11/00"
Time$ = "02:00:00"


Config Date = Mdy , Separator = /
Config Clock = Soft

   Do
   If Time$ = "02:01:00" Then Set Boiler
   Wait 10
   Reset Boiler
   Loop

   Return


der compiler meckert pber diese 2 Zeilen:
Date$ = "11/11/00"
Time$ = "02:00:00"


alles ist hier entnommen:
http://avrhelp.mcselec.com/config_clock.htm?zoom_highlightsub=clock
Gast #718834
Lesenswert?

Ich hab selber keine AHnung von Bascom. Kann man da wirklich so relativ 
komplizierte Variablenkonstrukte wie Datum und Uhrzeit verwenden? Also 
wenn ichs in C machen würde würde ich für Stunde/Minute/Sekunde jeweils 
eine extra Variable nehmen. Da ist das Vergleichen dann ja eigentlich 
auch nicht mehr schwierig. Ob das sehr effizient im Resourcenverbrauch 
ist, ist eine andere Frage. Aber ich glaub so ne einfache Zeitsteuerung 
lässt genug Platz im Controller frei. Wahrscheinlich könnte man ja sogar 
noch auf die Sekunden verzichten bei diesem Beispiel.
Gast #719001
Lesenswert?

So geht es erst mal. Zuerst muß die Uhr mit Config Clock konfiguriert 
werden, dann kann man Datum und Zeit zuweisen. Der Atmega8 muß mit 
seinem internen Takt laufen (macht er bei Dir ja auch) und an die 
"normalen" Quarzanschlüsse kommt ein Uhrenquarz mit 32,768 kHz.

Jetzt siehst Du aber noch nicht, wie spät es ist. ;-)

$regfile = "m8def.dat"
$crystal = 1000000
$baud = 19200
$hwstack = 32
$swstack = 10
$framesize = 40


Enable Interrupts

Config Pinb.7 = Output
Boiler Alias Portb.7


Config Date = Mdy , Separator = /
Config Clock = Soft

Date$ = "11/11/00"
Time$ = "02:00:00"



   Do
   If Time$ = "02:01:00" Then Set Boiler
   Wait 10
   Reset Boiler
   Loop


MfG Paul

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren