Forum: Mikrocontroller und Digitale Elektronik Zeitschaltuhr + PWM


von (unknown) (Gast)


Lesenswert?

Hallo @-all,

ich brauche ein Arduino-Sketch wo man zeitlich gesteuert ein Motor eine 
Sek. vor und gleich wieder eine Sek zurück steuern kann.

BSP: Eine Mechanik soll um 22.00 Uhr einen Boiler Knopf für eine Sekunde 
Drücken und wieder in die ursprüngliche Position fahren.


Liebe Grüße

von spess53 (Gast)


Lesenswert?

Hi

>ich brauche ein Arduino-Sketch wo man zeitlich gesteuert ein Motor eine
>Sek. vor und gleich wieder eine Sek zurück steuern kann.

Warum programmierst du so etwas primitives nicht einfach selbst?

MfG Spess

von N. M. (mani)


Lesenswert?

Mirko J. schrieb:
> BSP: Eine Mechanik soll um 22.00 Uhr einen Boiler Knopf für eine Sekunde
> Drücken und wieder in die ursprüngliche Position fahren.

Dann hast du im Wesentlichen 3 Funktionen die du erfüllen musst:
1) Uhrzeit feststellen. z.B über eine RTC, über ein DCF/GPS Modul oder 
über einen Timeserver.
2) Ausgang ansteuern.
3) Wartezeit abwarten.

Ich würde wahrscheinlich einen momentan sehr beliebten ESP8266 oder 
ESP32 nehmen der sich über einen Timeserver die aktuelle Uhrzeit holt 
und dann über eine Endstufe einen Motor oder Hubmagnet ansteuert. Das uC 
Board bekommt man unter 5€. Dann noch ein Netzteil, einen Mosfet und das 
teuerste wird wahrscheinlich die Mechanik bzw der Aktor.

Oder wenn man nicht programmieren kann, könnte man eine normale 
Zeitschaltuhr nehmen die um 22:00 Uhr ein und um 22:01 Uhr ausschaltet.
Wenn man dann noch die Anforderung hat dass der Impuls nur 1Sek dauert, 
könnte man noch ein Multifunktionsrelais nachschalten das als 
Einschaltwischer konfiguriert ist.

von DAVID B. (bastler-david)


Lesenswert?

N. M. schrieb:
> Ich würde wahrscheinlich einen momentan sehr beliebten ESP8266 oder
> ESP32 nehmen der sich über einen Timeserver die aktuelle Uhrzeit holt

Soweit ganz Deiner Meinung.

N. M. schrieb:
> und dann über eine Endstufe einen Motor oder Hubmagnet ansteuert.

?? Ehm Wieso so umständlich Plastik Halterung Runter.
Taster Suchen
Einen Optokoppler samt 210 Ohm widerstand eingelötet.(3,3V Auf 1,2v bei 
10mA)
Plaste Abdeckung wieder Trauf
einen widerstand
und gut ??

Eher würde mich die Frage nach dem WIESO das nötig ist interessieren.
So ziemliche JEDE Leitungsanlage hat mindestens ab 2000 eine Uhr und 
diverse Programme zum einstellen der Heizzeiten.

von Alex G. (dragongamer)


Lesenswert?

Als Mechanik übrigens: 
https://www.pollin.de/p/stellmotor-fuer-zentralverriegelung-2-polig-12-v-310488
Das hat eine Feder drin. Es springt nach Abschalten des Stroms wieder in 
eine Mittelstellung zurück. Dadurch sparst du dir den Motorantrieb 
umdrehen zu müssen.
Einen Knopf kann es wahrscheinlich auch bei 5V drücken (bei 12V hat das 
Teil richtig kraft).

von (unknown) (Gast)


Angehängte Dateien:

Lesenswert?

Hallo, erstmal ein riesen Dankeschön für die vielen Ideen. Ich habe 
leider keine Ahnung von der Programmierung und suche einen Ansatz wie so 
was ausehen kann. Das nächste ist die Wirtschaftlichkeit, welcher 
Microcontroller wäre am besten geeignet wo wenig Strom verbraucht, ich 
würde es evtl... Mit einem ESP 8266? Kann mir jemand mal einen 
gedankensprung zusammenstellen? Die Hardware habe ich schon. danke

von N. M. (mani)


Lesenswert?

DAVID -. schrieb:
> ?? Ehm Wieso so umständlich Plastik Halterung Runter.
> Taster Suchen
> Einen Optokoppler samt 210 Ohm widerstand eingelötet.(3,3V Auf 1,2v bei
> 10mA)
> Plaste Abdeckung wieder Trauf
> einen widerstand
> und gut ??

Weil es nicht immer gut ist Elektrogeräte zu verändern. Wie man 
bekanntlich weiß sind Elektrogeräte die größte Quelle für Brände in der 
Wohnung.
Da würde ich mich hüten ein abgenommenes und zertifiziertes Gerät zu 
verändern.
Vorallem nicht einen Boiler oder ähnliches.
Wenn dir die Hütte abbrennt wird sich die Versicherung freuen und keinen 
Cent bezahlen.

Mirko J. schrieb:
> Ich habe leider keine Ahnung von der Programmierung und suche einen
> Ansatz wie so was ausehen kann.

Dann hast du wahrscheinlich Pech. Lerne programmieren oder Versuche dir 
das mit Hilfe zusammen zu klicken. Ist nicht viel in meinem Augen.

Mirko J. schrieb:
> Nächste ist die Wirtschaftlichkeit, welcher Microcontroller wäre am
> besten geeignet wo wenig Strom verbraucht?

Wie üblich kommen nun die neuen Anforderungen. Jetzt muss es auf einmal 
stromsparend sein.
Dann fällt der Zeitserver über WLAN Weg und ein abschaltbar DCF 
Empfänger + RTC wäre wahrscheinlich am besten geeignet. Im RTC wird der 
Alarm auf 22:00 Uhr gestellt, schaltet den Rest ein.
Wobei ein uC nur für das Monoflop Verhalten lächerlich wäre. Also 
vielleicht doch eher eine Diskrete Schaltung!?

Dann bräuchtest du auch nichts programmieren.

Dein Motor wird aber wahrscheinlich auch etwa Strom benötigen...

von (unknown) (Gast)


Lesenswert?

Der ESP ist wahrscheinlich im Verbrauch günstiger als ein UNO? W-LAN ist 
auch gegeben nur eben der Programmcot ? an dem wird das Projekt 
wahrscheinlich scheitern. Kann mir keiner eine Lösung sagen wie ich das 
mit dem ESP realisieren könnte?

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Mirko J. schrieb:
> Der ESP ist wahrscheinlich im Verbrauch günstiger als ein UNO? W-LAN ist
> auch gegeben nur eben der Programmcot ? an dem wird das Projekt
> wahrscheinlich scheitern. Kann mir keiner eine Lösung sagen wie ich das
> mit dem ESP realisieren könnte?

Lass es mit dem ESP das schaffst du nicht. Nimm einen UNO, verzichte auf 
WLAN und brich dir schon einen dabei ab eine Uhr zu implementieren, an 
eine separate rtc solltest du dabei garnicht erst denken, puffer das 
Ding mit nem Akku und hoffe einfach das es halbwegs läuft. Mehr ist bei 
deinem Wissen, Können und Wollen einfach nicht umsetzbar.

von (unknown) (Gast)


Lesenswert?

Okay, du hast wahrscheinlich recht! Evtl... Ist das Forum der falschen 
Weg eine Frage zu stellen. Danke trotzdem für eure Anteilnahme und 
entschuldigen für die Belästigung.

von Harald W. (wilhelms)


Lesenswert?

Mirko J. schrieb:

> BSP: Eine Mechanik soll um 22.00 Uhr einen Boiler Knopf für eine Sekunde
> Drücken und wieder in die ursprüngliche Position fahren.

Eigentlich macht man sowas mit einer Zeitschaltuhr für drei Euro...

von (unknown) (Gast)


Lesenswert?

Ja, aber der Motor muss ja auch wieder zurück fahren, sonnst ist der 
Knopf dauerhaft gedrückt.

von Egon D. (Gast)


Lesenswert?

Mirko J. schrieb:

> Die Hardware habe ich schon.

Unklug.

Ich würde einen Exzenter verwenden; irgendwo im
Stößel bringt man einen Anschlag und eine Feder
unter; als Antrieb dient ein Getriebemotor. Über
Drehzahl und Untersetzung kann man die Zeit
beeinflussen, die der Knopf gedrückt sein soll.

Mittels eines Kontaktes, der vom Motor betätigt wird,
sorgt man dafür, dass der Exzenter nach genau einer
Drehung stehenbleibt. Das geht wahrscheinlich mit
einer simplen Relaisschaltung, aber ich bin gerade
zu doof, mir das auszudenken.

von Stefan F. (Gast)


Lesenswert?

Bei deinem Antrieb mit dem geben Motor fehlen Endschalter. Woher soll 
der Mikrocontroller "wissen", an welcher Position sich der Schieber 
befindet? Wenn du hart gegen den Anschlag fährst, bricht Dir früher oder 
später das Getriebe.

Falls du ein Arduino Board mit RTC suchst, google mal nach 
"STM32F103C8T6 minimum system development" Board. Dazu besorgst du dir 
noch einen "ST-Link v2" kompatiblen Programmieradapter.

Anleitung: http://wiki.stm32duino.com

Die RTC wird von Arduino nicht unterstützt, so weit ich weiß. Die musst 
du "zu fuß" programmieren. Anleitung dazu: 
http://stefanfrings.de/stm32/stm32f1.html#rtc

Alternativ empfehle auch ich ein ESP Modul (z.B. NodeMCU mit ESP8266). 
Das hat zwar eine ungenaue Uhr, aber dank Internet Verbindung kann er 
die Uhrzeit von einem Server abfragen.

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Das Problem lässt sich noch deutlich einfacher lösen wenn man einfach 
einen entsprechenden Zugmagneten mit Tauchanker benutzt. Dann ist es 
wirklich nur noch ein Fall für die Zeitschaltuhr...

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Stefanus F. schrieb:
> Alternativ empfehle auch ich ein ESP Modul (z.B. NodeMCU mit ESP8266).
> Das hat zwar eine ungenaue Uhr, aber dank Internet Verbindung kann er
> die Uhrzeit von einem Server abfragen.

Manchmal fragt man sich wirklich ob der Kopf mancher Leute einfach nur 
die Sicherungskopie vom Arsch ist. Was für eine unglaublich verzerrte 
Wahrnehmung muss man haben um jemanden, der offensichtlich Fähigkeiten 
in Höhe der Grasnarbe hat, so eine Lösung anzubieten? Wie beschränkt 
muss man sein um nicht zu kapieren das die Ganggenauigkeit der Uhr das 
verdammtnochmal geringste Problem hier ist und alles Andere an dieser 
"Lösung" einfach nur Schwachsinn für die eigentliche Aufgabe ist? Ein 
verdammter AVR und zwar absolut jeder ist in Verbindung mit jedem 
erbärmlichen Quarz in der Lage die gestellte Aufgabe locker zu erfüllen, 
was aber schon mit den Programmierkenntnissen des TO flach fällt, da 
muss man sich noch nichtmal selbst ein Bein stellen und irgendwelche 
verkomplizierende Schwachsinnsscheisse einbauen...

von Stefan F. (Gast)


Lesenswert?

Tim T. schrieb:
> Ein verdammter AVR und zwar absolut jeder ist in Verbindung mit jedem
> erbärmlichen Quarz in der Lage die gestellte Aufgabe locker zu erfüllen,

Schön, dass du dich auf das gleiche Niveau begeben hast, dass du im 
selben Absatz kritisiert hast.

Wir sind hier in einem Mikrocontroller Forum, schon gemerkt? Hier 
unterhalten sich die Leute, die sich damit gut auskennen. Wenn der TO so 
eine Antwort nicht gewollt hätte, dann wäre er hier schlicht falsch 
gelandet.

Ich frage ja auch nicht in einem Hobby-Grärtner Forum, wie man am besten 
einen leckeren Salat macht, wenn ich nichts mit dem Anbau von Planzen zu 
tun haben will.

Ich frage auch nicht in einem Movie-Park-Fanclub wo man Spaß haben kann, 
wenn ich Achterbahnen nicht leiden kann.

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Aber er hat sich doch direkt im Eingangspost geoutet: 
"...Arduino-Sketch..."

von Stefan F. (Gast)


Lesenswert?

Tim T. schrieb:
> Aber er hat sich doch direkt im Eingangspost geoutet:
> "...Arduino-Sketch..."

Eben!

Warum hast du dann das zu meinem Beitrag geschrieben?:

> Manchmal fragt man sich wirklich ob der Kopf mancher Leute
> einfach nur die Sicherungskopie vom Arsch ist.
> Was für eine unglaublich verzerrte Wahrnehmung muss man
> haben um jemanden, der offensichtlich Fähigkeiten
> in Höhe der Grasnarbe hat, so eine Lösung anzubieten?
> Wie beschränkt muss man sein um nicht zu kapieren das ...
> alles Andere an dieser "Lösung" einfach nur Schwachsinn
> für die eigentliche Aufgabe ist?

Und dann hast du selbst einen AVR empfohlen. Ob er nun einen AVR, einen 
STM32 oder einen ESP Chip mit Arduino Programmiert - da gibt es 
prinzipiell keinen allzu großen Unterschied.

Außerdem hast du die einzige deutliche Anforderung des TO missachtet:

> Eine Mechanik soll um 22.00 Uhr... (etwas tun)

Das kannst du mit einem nackten AVR nicht erreichen. Der wird dir jeden 
Monat mehrere Minuten weg driften. Deswegen haben wir ihm preisgünstige 
Single-Chip Alternativen empfohlen, die er ebenfalls mit Arduino 
programmieren kann.

Abgesehen vom Fachlichen: Deine groben Beleidungen sind inakzeptabel.

von Cyblord -. (cyblord)


Lesenswert?

Stefanus F. schrieb:
> Abgesehen vom Fachlichen: Deine groben Beleidungen sind inakzeptabel.

Es heißt ja immer "Man darf sagen was wahr ist". Und hier hat er leider 
recht.

von Stefan F. (Gast)


Lesenswert?

Cyblord -. schrieb:
> Stefanus F. schrieb:
>> Abgesehen vom Fachlichen: Deine groben Beleidungen sind inakzeptabel.
>
> Es heißt ja immer "Man darf sagen was wahr ist". Und hier hat er leider
> recht.

Nein, darf man nicht immer. Schon gar nicht auf diese Weise. Das gehört 
sich nicht. Dass du auch so ein Assi auf diesem Niveau bist, wissen wir.

Abgesehen davon: Nur weil jemand das Wort "Arduino" erwähnt, muss er 
noch lange nicht geistig beschränkt sein. Im Gegenteil, wer so etwas 
auch nur denkt tickt nicht ganz sauber und wer das auch noch schreibt 
hat nicht gelernt, sich zu benehmen.

Ihr beiden seid hier die mit dem Niveau auf Höhe einer Grasnarbe.

von Cyblord -. (cyblord)


Lesenswert?

Stefanus F. schrieb:
> Abgesehen davon: Nur weil jemand das Wort "Arduino" erwähnt, muss er
> noch lange nicht geistig beschränkt sein.

Willst du wirklich dass ich DAZU meine Meinung sage? Ohoho

> Ihr beiden seid hier die mit dem Niveau auf Höhe einer Grasnarbe.

Also dein Niveau ist immer doppelt so niedrig wie unseres. SO!

: Bearbeitet durch User
von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Stefanus F. schrieb:
> Tim T. schrieb:
>> Aber er hat sich doch direkt im Eingangspost geoutet:
>> "...Arduino-Sketch..."
>
> Eben!

Genau! Siehst du ich kann das auch...

> Warum hast du dann das zu meinem Beitrag geschrieben?:
>
>> Manchmal fragt man sich wirklich ob der Kopf mancher Leute
>> einfach nur die Sicherungskopie vom Arsch ist.
>> Was für eine unglaublich verzerrte Wahrnehmung muss man
>> haben um jemanden, der offensichtlich Fähigkeiten
>> in Höhe der Grasnarbe hat, so eine Lösung anzubieten?
>> Wie beschränkt muss man sein um nicht zu kapieren das ...
>> alles Andere an dieser "Lösung" einfach nur Schwachsinn
>> für die eigentliche Aufgabe ist?
>
> Und dann hast du selbst einen AVR empfohlen. Ob er nun einen AVR, einen
> STM32 oder einen ESP Chip mit Arduino Programmiert - da gibt es
> prinzipiell keinen allzu großen Unterschied.

Nein, ich hab keinen AVR empfohlen, ich hätte nur einen AVR empfohlen 
wenn der TO dafür ausreichende Fähigkeiten besitzen würde, was er aber 
leider nicht hat. Ich habe nur zusätzlich drauf hingewiesen das dabei 
jede noch kompliziertere "Lösung" noch weniger hilfreich ist.

>
> Außerdem hast du die einzige deutliche Anforderung des TO missachtet:
>
>> Eine Mechanik soll um 22.00 Uhr... (etwas tun)
>
> Das kannst du mit einem nackten AVR nicht erreichen. Der wird dir jeden
> Monat mehrere Minuten weg driften. Deswegen haben wir ihm preisgünstige
> Single-Chip Alternativen empfohlen, die er ebenfalls mit Arduino
> programmieren kann.

Das ist Unsinn, du bekommst einen AVR mit Quarz (von komplett nackt hab 
ich nix geschrieben) mit ner monatlichen Abweichung von unter 10 
Sekunden hin, genau genug um sich bei der Aufgabe keine weiteren 
Gedanken zu machen.
Aber das ist ja auch egal, weil immernoch ausserhalb der Fähigkeiten des 
TO. Die eigentliche Lösung hatte ich zwischendurch mal erwähnt, 
Zugmagneten und Zeitschaltuhr...

>
> Abgesehen vom Fachlichen: Deine groben Beleidungen sind inakzeptabel.

Inakzeptabel finde ich viel mehr den absolut unangebrachten und oft 
überhaupt nicht zielführenden Helferkomplex mancher Leute hier, die sich 
lieber mit irgendwelchem Mist beweihräuchern und dabei komplett den 
Adressaten aus dem Blick verlieren, der es mit Sicherheit nicht 
umgesetzt bekommt.

von Stefan F. (Gast)


Lesenswert?

Tim T. schrieb:
> Nein, ich hab keinen AVR empfohlen, ich hätte nur einen AVR empfohlen
> wenn der TO dafür ausreichende Fähigkeiten besitzen würde, was er aber
> leider nicht hat.

Das ist doch Schwachsinn. Woher willst du das wissen? Du kennst den TO 
nicht. Wer mit Arduino vertraut ist, der kennt sich mit AVR schon 
wesentlich besser aus, als 99% der Weltbevölkerung! Sind die etwa auch 
alle geistig minderbemittelt?

Was berechtigt Dich dazu, andere Menschen so zu behandeln?

von (unknown) (Gast)


Lesenswert?

Erschreckend, ursprünglich bin ich zu euch gestoßen weil ich Hilfe 
suchte, ich wollte ihr kein Krieg entfachten. Back to the root ich würde 
mir NodeMCU mit ESP8266 bestellen... ?

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Stefanus F. schrieb:
> Tim T. schrieb:
>> Nein, ich hab keinen AVR empfohlen, ich hätte nur einen AVR empfohlen
>> wenn der TO dafür ausreichende Fähigkeiten besitzen würde, was er aber
>> leider nicht hat.
>
> Das ist doch Schwachsinn. Woher willst du das wissen? Du kennst den TO
> nicht. Wer mit Arduino vertraut ist, der kennt sich mit AVR schon

Schau dir mal das Muster aus Fragestellung, Lösungsansatz, 
Zusatzinformationen, etc. an, irgendwie doch typisch, oder?

> wesentlich besser aus, als 99% der Weltbevölkerung! Sind die etwa auch
> alle geistig minderbemittelt?

Willst du AVR Kenntnisse jetzt als Kontraindikator für geistige 
Beeinträchtigung ranziehen? Gewagt. Aber falls es dir nur um meine 
Haltung gegenüber Dritten geht, ja ich halte den überwiegenden Teil der 
Weltbevölkerung für geistig minderbemittelt, denke aber das die Quote 
unter 99% liegt, sonst wären die Weltbevölkerung schon ausgerottet.
Und falls die Frage aufkommen sollte, ja ich halte statistisch gesehen 
die Arduino Leute für geistig weniger fähig als die AVR/sonstige 
Elektronik interessierten Leute. Schau dir doch dazu einfach nur mal an 
was mittlerweile aus der Arduino Ecke für Fragen kommen...

>
> Was berechtigt Dich dazu, andere Menschen so zu behandeln?

Erfahrung.

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Mirko J. schrieb:
> Erschreckend, ursprünglich bin ich zu euch gestoßen weil ich Hilfe
> suchte, ich wollte ihr kein Krieg entfachten. Back to the root ich würde
> mir NodeMCU mit ESP8266 bestellen... ?

https://de.wikipedia.org/wiki/Zugmagnet

https://de.wikipedia.org/wiki/Zeitschaltuhr

Beitrag #5777983 wurde von einem Moderator gelöscht.
Beitrag #5777996 wurde von einem Moderator gelöscht.
von Stefan F. (Gast)


Angehängte Dateien:

Lesenswert?

Tim T. schrieb:
> ich würde mir NodeMCU mit ESP8266 bestellen...

Vielleicht hilft Dir das angehängte Beispiel, da frage ich das Datum und 
die Uhrzeit von einem Webserver ab und zeige es auf einem OLED an.

von (unknown) (Gast)


Lesenswert?

Super, nach meiner Arbeit schau ich später mal rein vielen lieben dank 
für dein Support.

von Stefan F. (Gast)


Lesenswert?

Da du für Vorschläge offen bist, schau Dir auch meinen "Wifi Config 
Service" an, da habe ich mir eine Web basierte Konfiguration für die 
WLAN Zugangsdaten ausgedacht: 
http://stefanfrings.de/esp8266/index.html#wificonfigservice

von (unknown) (Gast)


Lesenswert?

Stefanus F. schrieb:
> Da du für Vorschläge offen bist, schau Dir auch meinen "Wifi Config
> Service" an, da habe ich mir eine Web basierte Konfiguration für die
> WLAN Zugangsdaten ausgedacht:
> http://stefanfrings.de/esp8266/index.html#wificonfigservice

So habe mir Thread angeschaut, sehr interessant. Hätte ich das vorher 
gelesen, hätte ich mir den Nachfolger (32ger) gekauft. Naja die 
Eilbestellung ist schon auf dem Weg zu mir ;(

Heute werde ich mich mit der Einrichtung des ESP2866, beschäftigen, dann 
kann es morgen gleich losgehen :) (Ironie off)

//und danke für die informative Zusammenstellung über den "ESP"

von Stefan F. (Gast)


Lesenswert?

Mirko J. schrieb:
> Hätte ich das vorher
> gelesen, hätte ich mir den Nachfolger (32ger) gekauft.

Ist schon Ok, die Software für den älteren Chip ist deutlich 
ausgereifter.

von (unknown) (Gast)


Lesenswert?

Moin, nun wenn ich den ESP eingerichtet haben was wäre denn der nächste 
Schritt? Ich vermute mal, dass ich das W-LAN konfigurieren muss.... 
Könnt ihr mir eine
"to-do list" an die Hand geben an der ich mich orientieren kann?

Z.B.

1. W-LAN initialisieren
2. ...?
3. ...?

Bitte nicht an Wikipedia verweisen, denn dies ist heute abgeschaltet ?


Liebe Grüße

von N. M. (mani)


Lesenswert?

Mirko J. schrieb:
> Bitte nicht an Wikipedia verweisen, denn dies ist heute abgeschaltet ?

Dann schau Mal bei Google ;-)
Nimm ein fertiges Projekt das einen Zeitserver verwendet und die Uhrzeit 
ausgibt.
Gibt es viele Beispiele dazu.

von (unknown) (Gast)


Lesenswert?

Schau mal:

Der ESP8266 Sketch
Für den Sketch des ESP8266 benötigt man die WifiUdp Bibliothek, sowie 
die ESP8266WiFi Standardbibliothek. Nun muss man zunächst eine Anfrage 
über die selbstgebaute Funktion sendNTPpacket senden, und anschließend 
die empfangenen Daten auswerten und umwandeln. Zum Schluss müssen noch 
die drei Variablen über die serielle Verbindung an den Arduino gesendet 
werden.

Hier der gesamte Sketch für den ESP8266:
#include <ESP8266WiFi.h>
#include <WiFiUdp.h>

char ssid[] = "************";
char pass[] = "**************";


unsigned int localPort = 2390;

IPAddress timeServer(129, 6, 15, 28);

const int NTP_PACKET_SIZE = 48;

byte packetBuffer[ NTP_PACKET_SIZE];


WiFiUDP udp;

void setup()
{
  Serial.begin(115200);

  WiFi.begin(ssid, pass);

  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
  }


  udp.begin(localPort);

}

void loop()
{
  sendNTPpacket(timeServer);
  delay(1000);

  int cb = udp.parsePacket();

    udp.read(packetBuffer, NTP_PACKET_SIZE);

    unsigned long highWord = word(packetBuffer[40], packetBuffer[41]);
    unsigned long lowWord = word(packetBuffer[42], packetBuffer[43]);

    unsigned long secsSince1900 = highWord << 16 | lowWord;

    const unsigned long seventyYears = 2208988800UL;
    unsigned long epoch = secsSince1900 - seventyYears;

    int stund  = (epoch  % 86400L) / 3600 + 1;
    int minut   = (epoch  % 3600) / 60;
    int sekunde = epoch % 60;
    String stunde = String(stund);
    String minutestring = String(minut);
    if(minut < 10)
    {
      minutestring = "0" + minutestring;
    }


    Serial.println(stunde);
    Serial.println("|");
    Serial.println(minutestring);
    Serial.println("|");
    Serial.println(sekunde);
    Serial.println("|");

  delay(10000);
}


unsigned long sendNTPpacket(IPAddress& address)
{
  //Serial.println("sending NTP packet...");
  // set all bytes in the buffer to 0
  memset(packetBuffer, 0, NTP_PACKET_SIZE);
  // Initialize values needed to form NTP request
  // (see URL above for details on the packets)
  packetBuffer[0] = 0b11100011;   // LI, Version, Mode
  packetBuffer[1] = 0;     // Stratum, or type of clock
  packetBuffer[2] = 6;     // Polling Interval
  packetBuffer[3] = 0xEC;  // Peer Clock Precision
  // 8 bytes of zero for Root Delay & Root Dispersion
  packetBuffer[12]  = 49;
  packetBuffer[13]  = 0x4E;
  packetBuffer[14]  = 49;
  packetBuffer[15]  = 52;

  // all NTP fields have been given values, now
  // you can send a packet requesting a timestamp:
  udp.beginPacket(address, 123); //NTP requests are to port 123
  udp.write(packetBuffer, NTP_PACKET_SIZE);
  udp.endPacket();
}

von Stefan F. (Gast)


Lesenswert?

Mirko J. schrieb:
> Könnt ihr mir eine
> "to-do list" an die Hand geben an der ich mich orientieren kann?

Habe ich Dir schon gegeben: http://stefanfrings.de/esp8266/index.html

Das erste Beispielsprogramm ist der LED Blinker. Als Zweites würde ich 
ein Beispiel mit der Datumsabfrage probieren und auf dem seriellen Port 
ausgeben.

Und dann würde ich mal ganz ohne WLAN die PWM Funktionen durchprobieren.

von (unknown) (Gast)


Lesenswert?

Na supper habe das Paket erhalten nur dummerweise ohne Inhalt ?. Jetz 
bleibt mir nur noch vor den WE, mein Arduino UNO ohne Real Time bzw. 
Geht das auch ohne zusätzliche Module, wenn ich es permanent am Strom 
halten würde? Wenn ja, woher kann man die Zeit holen?

von Stefan F. (Gast)


Lesenswert?

Vielleicht wohnt jemand in deiner Nähe und hat Vorrat. Ich habe einige 
ESP-12F und zwei WiFi-Kit-8 Module da, wohne in Düsseldorf.

> Geht das auch ohne zusätzliche Module, wenn ich es
> permanent am Strom halten würde?

Du meinst mit einem Arduino? Ja schon, aber dessen Oszillatoren sind für 
Uhren nicht genau genug. Du müsstest die Abweichung vom Soll manuell 
ermitteln und heraus rechnen. Kann man machen, wenn man entweder viel 
Zeit oder ein sehr gutes Frequenz-Messgerät hat. Das Ganze ist dann 
allerdings ziemlich Temperaturabhängig.

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?


von (unknown) (Gast)


Lesenswert?

Stefanus, ich komme aus dem sonnigen Süden, da haben wir zwei 
Elektro/nik Läden die Microcontroller wie der UNO und Pi vertreiben aber 
nicht wissen was ein ESP ist  ? Giebt es keiner hier zweischen Lahr und 
Freiburg der mir einer fürs WE verkaufen kann ?

von Stefan F. (Gast)


Lesenswert?

Mirko J. schrieb:
> Lahr und Freiburg

Das ist in der Tat zu weit weg, um "mal eben" vorbei zu kommen.

von superchromosom (Gast)


Angehängte Dateien:

Lesenswert?

So Freunde, die Zeit und Datum habe ich jetzt eingebunden ;) (copy and 
paste)
Teil 1 ist geschafft jetzt muss ich nur noch den Motor ansteuern und das 
mit der Zeit verbinden.

von Cyblord -. (cyblord)


Lesenswert?

superchromosom schrieb:
> So Freunde, die Zeit und Datum habe ich jetzt eingebunden ;) (copy and
> paste)
> Teil 1 ist geschafft jetzt muss ich nur noch den Motor ansteuern und das
> mit der Zeit verbinden.

Ja dann einfach weiter mit Copy&Paste. Das ist quasi die 
Standardvorgehensweise bei Arduino.

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
Noch kein Account? Hier anmelden.