mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Boilersteuerung attiny 2313 Bascom


Autor: Micha (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Marko (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Micha (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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 :(

Autor: Christian Auerswald (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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"

Autor: Holger Krull (krulli) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im Baumarkt gibt es Zeitschaltuhren ab 2 Eur. Low-Tech ist manchmal 
sinnvoller...

Autor: Christian Auerswald (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Den Kommentar hatte ich versucht mir zu verkneifen ;-) Seh die Sache 
aber auch so. :-)

Autor: Micha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>wenn (zeit > einschaltzeit) und (zeit < ausschaltzeit) dann "heizen"
>ansonsten "nicht heizen"

Sehr gute Idee!!!!!
Iwe macht man das Code-mässig? hat gerade mal jemand Ahnung von Bascom?

Autor: Micha (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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_h...

Autor: Christian Auerswald (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Holger Krull (krulli) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Micha wrote:
> wo ist hier der Fehler?

>
>    Return
>
Das Return ist erstmal schon zuviel...

Autor: Holger Krull (krulli) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Date$ = "11/11/00"
>Time$ = "02:00:00"
>
>Config Date = Mdy , Separator = /
>Config Clock = Soft

Die Reihenfolge der Zuweisung von Date$, Time$ und den Configs ist 
falsch
Versuche es mal so rum...

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

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

Autor: Paul Baumann (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Holger Krull (krulli) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Den Konstrukt:
>  Do
>   If Time$ = "02:01:00" Then Set Boiler
>   Wait 10
>   Reset Boiler
>   Loop

würde ich ändern in:
  Do
    If Time$ = "02:01:00" Then
      Set Boiler
      Wait 10
      Reset Boiler
    End if
  Loop

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.