Hi, ich habe einen Microcontroller (Programmiert auf der Arduino IDE). Da ich hier "Zeitgesteuerte" tools drauf habe, brauche ich hier irgendwie eine Uhrzeit... meine Idee war, ich gehe zu "www.irgendeinServerDenEsFürImmerGibt.de" und hole mir da die Zeit <- z.B. im JSON Format oder sowas... Hat jemand eine Idee für einen Server und ein "ca. doing". Ich habe länger nach etwas gesucht, welches mir einfach online ein JSON-Format ausspuckt, da vermutlich nur Port 80 & 443 zur verfügung stehen :/
Gibt es vielleicht im LAN einen NTPd? Fritzboxen haben das z.B. Sonst kann+darf man bei einer Internetverbindung auch meist immer irgendeinen NTP erreichen. Netzwerke die sich durch Firewalls, Proxies und DMZ' abschotten haben eigentlich immer einen NTP im LAN.
> Hat jemand eine Idee für einen Server und ein "ca. doing".
Mikrophon anschließen und die große Glocke des Doms auswerten (DFT).
Hinweis: Big Ben (London) kann z. Z. nicht ausgewertet werden.
Hubble schrieb: > Mikrophon anschließen Oder eine Kamera und schauen, in welche Richtung die Schatten fallen. Dazu ggf. mit einem Magnetometer/Kompass o.ä. kombinieren. Nur die Umstellung Sommer/Winterzeit könnte schwierig werden...
naja... nicht alles ist witzig ^^ also wegen DCF Empfänger <- wozu Geld ausgeben, wenn ich eh Online bin... => Wegen NTPd im LAN ... müsste da weitgehenst unabhänig vom LAN bleiben (das Modul wird an mehreren Orten laufen und nicht jeder Ort hat eine Fritzbox oder überhaupt mehr als ein Modem) die idee mit dem NTP-Server hatte ich auch schon "ein bisschen" ... allerdings fehlt mir da das Know-How wie ich mit einem Arduino da drauf zugreifen kann... insbesondere, da der meines wissens den UDP-Port 123 verwendet und ich leider nur 80 und 443 zur verfügung habe (zumindest zuverlässig zur verfügung habe).
baer schrieb: > die idee mit dem NTP-Server hatte ich auch schon "ein bisschen" ... > allerdings fehlt mir da das Know-How wie ich mit einem Arduino da drauf > zugreifen kann... insbesondere, da der meines wissens den UDP-Port 123 > verwendet und ich leider nur 80 und 443 zur verfügung habe (zumindest > zuverlässig zur verfügung habe). Gibt es kein NTP-Shield für Arduino?
Dann nimm einen eigenen Server (dyndns reicht ja), der die aktuelle Uhrzeit als JSON-Objekt oder einfach String verschickt, wenn diese Einschränkungen schon so extrem sind...
Falls kein LAN oder WLAN greifbar böten sich als ICs an DS3231 oder RV-3029-2 (können beide I2C), das sind temperaturkompensierte Uhrenchips mit extrem geringen Stromverbrauch im Sleep.
Cyblord -. schrieb: > Gibt es kein NTP-Shield für Arduino? https://www.arduinoclub.de/2016/05/07/arduino-ide-esp8266-ntp-server-timezone/
baer schrieb: > also wegen DCF Empfänger <- wozu Geld ausgeben, wenn ich eh Online > bin... Also das beißt sich aber irgendwie mit baer schrieb: > müsste da weitgehenst unabhänig vom LAN bleiben Denn das Internet kommt doch heute praktisch nur noch durchs LAN ans Endgerät. Ein DCF77 Empfänger kostet Geld, ja, aber ein Netzwerkshield gibts auch nicht kostenlos und so eine Auswertung eines DCF77 kostet einen AVR praktisch kaum messbare Leistung während so ein Netzwerkhandle einen AVR schon ganz schön stressen kann.
Ein GPS Modul kostet beim freundlichen Chinesen um die 5€ und das liefert als Abfallprodukt ebenfalls eine sehr genaue Zeit.
Gerald B. schrieb: > Ein GPS Modul kostet beim freundlichen Chinesen um die 5€ und das > liefert als Abfallprodukt ebenfalls eine sehr genaue Zeit. Aber nur wenn das Modul nicht im Keller verbaut ist. (oder eine blech Garage, oder einen Stahlbeton Garage, oder oder oder
Falls das Teil am Netz haengt, kann man die Netzfrequenz als Normal verwenden.
baer schrieb: > da vermutlich nur Port 80 & 443 zur verfügung stehen HEAD http://www.google.de/ >HTTP/1.1 200 OK >Date: Thu, 14 Sep 2017 16:31:03 GMT [... Rest ignorieren ...]
Hi Wie genau muß die Uhrzeit denn sein und über welchen Zeitraum? Seiten wie https://www.uhrzeit.org/ sollte es noch 'n paar Tage lang geben. Hatte zuerst heute.de geschaut, dort fiel mir aber keine Uhr auf. Vor Jahren habe ich Mal, per Cronjob und Script, die Lottozahlen ausgelesen (Das aber auf lotto.de ), man muß 'nur' schauen, daß man die gesuchte Stelle aus dem ganzen Datenstrom passend ausschneidet. War in PHP durchaus lösbar - man musste nur nachschauen, wenn vom Script eine Fehler-Mail kam ... da hatte lotto.de dann was umgestellt :) So kannst Du, je nach Verbindungsqualität, eine sekundengenaue Uhrzeit bekommen - da Du eh online bist, sollte Das "für's Erste" doch vll. schon reichen. MfG ... ok ... im http-Header steht's ja auch drin :)
:
Bearbeitet durch User
Warum diese ganzen Verrenkungen ??? Der TE programmiert mit Arduino IDE, hat Netz-Zugriff und es gibt für die Arduino IDE Bibliotheken für NTP (s. oben) bingo !!!
bingo schrieb: > Warum diese ganzen Verrenkungen ??? Der TE programmiert mit Arduino IDE, > hat Netz-Zugriff und es gibt für die Arduino IDE Bibliotheken für NTP > (s. oben) > > bingo !!! oder einfach mal genau lesen > da vermutlich nur Port 80 & 443 zur verfügung
Peter II schrieb: > bingo schrieb: >> Warum diese ganzen Verrenkungen ??? Der TE programmiert mit Arduino IDE, >> hat Netz-Zugriff und es gibt für die Arduino IDE Bibliotheken für NTP >> (s. oben) >> >> bingo !!! > > oder einfach mal genau lesen > >> da vermutlich nur Port 80 & 443 zur verfügung ......^^^^^^^^^^ Probieren geht über theorieren. Warum nur diese beiden Ports ??, der TE schreibt selbst, dass er an wechselnden Orten arbeiten will. NTP ist ein Standard-Protokoll, das viele Rechner (Windows/Mac/Linux) brauchen, um Rechner synchron zu halten. Warum sollte man das blockieren?
Die Seite mit der aktuellen Uhrzeit und Datum bei jedem Aufruf, mit wenig Overhead die ich gefunden habe ist die: https://www.timeanddate.com/worldclock/fullscreen.html?n=37 Siehe Quelltext von der Seite. Die Zeit steht auch immer an der gleichen Position. Brauchst nur die Zeile auswerten:
1 | <div id=rs1><div>Local time in Berlin</div><div id=i_date>Donnerstag, 14. September 2017</div><div id=i_time>19:28:54</div> |
haha, lustige ideen dabei :) ...
> das problem wie google oder so ist einfach die Datenmenge welche ich verarbeiten
muss...
ich habe mir schon selbst überlegt einfach ne PHP auf einen webserver
von mir zu legen und einfach nur einen timestamp auszugeben... aber mein
server existiert halt evtl. übernächstes jahr nicht mehr... die Module
(welche ich Kunden anbieten möchte) allerdings schon...
NTP fällt flach, weil z.B. einige Mobilfunk Modems (mit M2M Sektor)
ports nur gegen Geld freischalten ... und wieso mehr freischalten als
man WIRKLICH braucht...
LAN also "LOCAL AREA NETWORK" hat keine "Notwendigkeit" selbst im
Internet zu sein...
Ich habe nie was von Arduino geschrieben sondern lediglich, dass ich
mich der IDE bediene... die Module bestehen zu 95% aus einem extrem
günstigen ESP8266 und die Gesamtkosten inkl Netzteil belaufen sich auf
keine 3€ ... ein Zusätzliches Modul wie GPS oder ein WTC oder was auch
immer, wenns auch nur 20ct kostet ist es einfach zu teuer <- und noch
schlimmer, es verbaucht Strom ^^
Soooo genau muss die Zeit nicht sein, ich werde die einmal am Tag
Syncronisieren, und das reicht auch... hier geht es darum, dass z.B.
diverse tätigkeiten nicht zu "Nachtstunden" ausgeführt werden sollen...
und ob das jetzt um 21:00:00,0000 ist oder um 21:05 ist völlig rille...
also brauch ich also weniger technische ideen als eher links bei welchen
man die zeit bekommt (und nicht komplette homepages) <-
selbstverständlich müsste man wenigstens 5 jahre in Zukunft davon
"ausgehen können" dass die seite exisitiert...
baer schrieb: > problem wie google oder so ist einfach die Datenmenge Deswegen schrieb ich: HEAD - Request, nicht GET. Da kommen nur ein paar Zeilen und fertig. Wenn dein Kopfloses Framework kein HEAD kann: GET http://www.google.de/falsche/url/ich_will_eine_fehlerseite_sehen Mit der 404 Fehlerantwort kommt auch die aktuelle Zeit + ca. 1.5kb HTML. Warum google: Gibt es wohl noch lange & Server haben synchronisierte Uhren & Kurze Latenz dank Serverfarmen überall. Kannst natürlich auch itunes.com oder twitter.com (Vorsicht, Zensur in manchen Ländern) oder bild.de oder wen du auch sonst mit unnützen Anfragen belasten willst verwenden.
evtl hilft das: https://github.com/PaulStoffregen/Time und das http://tf.nist.gov/tf-cgi/servers.cgi Wenn man Online ist, dann ist DCF77 doch mal sowas von unnötig :-) Nur geht dann halt die Uhr nicht mehr wenn der dritte Weltkrieg ausbricht. Aber ob dann Frankfurt noch existiert, steht auf einem anderen Blatt ;-) viel Erfolg G Ert
Wenn Du von nem Mobilfunkmodem sprichst... Fällt da nicht irgendwo auch die Zeit raus?
wer es IMMER genau will nimmt NTP, DCF77, RTC3231 & GPS zusammen und einen Controller der die Zeiten überwacht und abgleicht vor der Zeitweiterleitung.
Es gibt auch Wasserstoff-, Caesium- und Rubidium-Atom-Uhren in Chipgröße. Wenn man sowas mit einem GPS-Empfänger kombiniert dürfen zwischen den Ablgleichzeitpunkten schon mal ein paar Jahre liegen bis die Abweichung 1s erreicht. https://www.microsemi.com/products/timing-synchronization-systems/clocks-frequency-references
baer schrieb: > ich habe mir schon selbst überlegt einfach ne PHP auf einen webserver > von mir zu legen und einfach nur einen timestamp auszugeben... aber mein > server existiert halt evtl. übernächstes jahr nicht mehr... die Module > (welche ich Kunden anbieten möchte) allerdings schon... Kommerziell anbieten, aber noch nicht einmal sicherstellen könnne, einen primitiven Server nachhaltig zu betreiben? Du solltest dein Geschäftsmodell noch einmal überdenken oder alternativ die Identität deiner Firma hier veröffentlichen, damit man vor dir gewarnt ist. Ernsthaft: einen Server fährt man prinzipiell mit NTP und da dann die Zeit als JSON-Datensatz auszugeben ist so primitiv, daß man das selbst mit einem billigsten virtuellen Server realisieren kann. Eine eigene Domain ist ebenfalls preislich zu vernachlässigen. Es ist also kein Problem, für sehr wenig Geld so einen Service nachhaltig bereitzustellen, wenn man es wirklich will. Du solltest darüber nachdenken, wieviel dir deine Kunden (und dein Ruf ...) wert sind. Und so etwas wie http://time.doeblitz.net/time kostet nun wirklich kaum Ressourcen, das hat man auf einem Webserver eigentlich immer über.
Ich glaube ihr driftet langsam ab. Asiatische Händler bietet sehr preisgünstige RTC Module an, die man notfalls genau bekommt, indem man den Quarz auswechselt oder einen Kondensator durch einen Trimmer auswechselt. Abgesehen davon könnten die spottbilligen (ab 1,50 Euro) Mikrocontroller Module mit STM32F103RBT8 von interesse sein. Denn die enthalten einen Timer mit 32kHz Quarz, der im Standby Modus weiter laufen kann und mit Pufferbatterie betrreibbar ist. Die dazu nötige Erweiterung der Arduino IDE heisst STM32Duino. Wenn man von einer ständigen Internet Anbindung ausgehen kann, würde ich mir die Ubhrzeit natürlich aus dem Netz holen.
Ich würde es so machen: 1) Eigener Server, der NTP-Zeit per HTTP ausgibt 2) Fallback: pool.ntp.org 3) Zeit einstellbar per GET/POST-Request + kleines HTML-File oder Programm, dass die aktuelle Systemzeit an das Modul übermittelt (mit Passwort, nicht ins Netz übertragener ID-Nummer/etc gegen Missbrauch gesichert) Eventuell kann man Punkt 3) heutzutage bereits mit irgendwelchen Fancy-Technologien wie WebSockets realisieren, um das Modul im LAN automatisch zu erkennen. Dadurch wäre die Langlebigkeit deines Produktes sichergestellt. Du könntest das Produkt aber auch nach definitivem Produktions- und Vertriebsende einfach Opensource machen. VPS gibt es ab 3 EUR. Oder du hostest das Projekt bei Google App Engine, da gibt es auch ein Gratis-Angebot (Always Free Tier): https://cloud.google.com/free/docs/always-free-usage-limits Glaube nicht dass das über Nacht eingestellt wird, ich habe immer noch mein Gratis-Google-Apps (Gmail mit eigener Domain) aus 2008 ;)
:
Bearbeitet durch User
baer schrieb: > ich habe einen Microcontroller (Programmiert auf der Arduino IDE). Da > ich hier "Zeitgesteuerte" tools drauf habe, brauche ich hier irgendwie > eine Uhrzeit... DCF77 ist zuverlässig, günstig und funktioniert meist auch im Keller. Dazu einen 0815-Uhrenchip mit Batteriepufferung und alles wird gut. Minderwertige Quarze und hohen Temperaturdrift kann man per Software rauskompensieren...
baer schrieb: > Ich habe nie was von Arduino geschrieben sondern lediglich, Fandest du dich ganz toll als du die Leute mit deiner Geheimnistuerei in die Irre geführt hast? > dass ich > mich der IDE bediene... die Module bestehen zu 95% aus einem extrem > günstigen ESP8266 Und was ist der Rest? > NTP fällt flach, weil z.B. einige Mobilfunk Modems (mit M2M Sektor) > ports nur gegen Geld freischalten ... und wieso mehr freischalten als > man WIRKLICH braucht... Handelt es sich bei den verheimlichten magischen 5% zufällig um ein GSM-Modem? Dann wäre die Lösung bei vielen Modems und GSM-Netzen nämlich AT#NITZ=1,1 ... AT+CCLK? > LAN also "LOCAL AREA NETWORK" hat keine "Notwendigkeit" selbst im > Internet zu sein... Langsam drehtst du ab, oder? Du fragst nach Webseiten im Internet und behauptest jetzt, dass dein magisches Gerät nicht mit dem Internet verbunden ist? > also brauch ich also weniger technische ideen als eher links bei welchen > man die zeit bekommt (und nicht komplette homepages) <- > selbstverständlich müsste man wenigstens 5 jahre in Zukunft davon > "ausgehen können" dass die seite exisitiert... Ja, klar ... Irgendwas Non-Standard, im Internet, dass fünf Jahre in der Zukunft noch da ist ... Ich würde mal vorschlagen du überdenkst dein Konzept, statt sich über Leute zu beschweren die dir helfen wollen. > haha, lustige ideen dabei :) ...
TU S. schrieb: > 2) Fallback: pool.ntp.org Ich empfehle ptbtime1.ptb.de ptbtime2.ptb.de ptbtime3.ptb.de Im Zeitgesetz von 1978 wird die Physikalisch-Technische Bundesanstalt mit der Verbreitung der gesetzlichen Zeit in Deutschland beauftragt. - Wikipedia Genauer bekommst unsere Deutsche Zeit wirklich nicht ;-) baer schrieb: > LAN also "LOCAL AREA NETWORK" hat keine "Notwendigkeit" selbst im > Internet zu sein... Liest du eigentlich was du selbst schreibst? baer schrieb: > meine Idee war, ich gehe zu "www.irgendeinServerDenEsFürImmerGibt.de" > und hole mir da die Zeit <- z.B. im JSON Format oder sowas... Grüße pelzfrucht
> meine Idee war, ich gehe zu "www.irgendeinServerDenEsFürImmerGibt.de" > und hole mir da die Zeit <- z.B. im JSON Format oder sowas... Falls du Dich nicht mit dem NTP Protokoll auseinandersetzen möchtest, rufe einfach die Startseite der PTB auf: http://ptb.de/ Dann erhälst du einen Header, der so aussieht: Date: Sun, 17 Sep 2017 07:32:47 GMT Manchmal muss man sich einfach dumm stellen und mal was ausprobieren. Übrigens liefern sehr viele Webserver diesen Header, nur ob die Uhr des jeweiligen Servers auch synchron läuft weiss wohl nur der Betreiber. Bei der PTB darf man sicher davon ausgehen, daß die Uhrzeit stimmt.
> Arduino kann kein HTTPS.
Aber der Server geht auch mit HTTP. Da frage ich mich, ob es hier mehr
ums Erbsenzählen geht als um Elektronik.
Dra schrieb: > Seine Aussage ist nicht falsch. Nicht falsch, aber wiedersprüchlich! @Stefan Us Tipp ist wohl der sinnvollste. Man erhält hier die Zeit simpel per HTTP (auch ohne s am Ende ;) von der PTB die genauste Zeit die du erhalten kannst auf diesem Wege. Gut, rein theoretisch muss der Server Admin der PTB nicht unbedingt auch den PTB Zeitserver als Referenzquelle für die Server Zeit konfiguriert haben, es ist aber mehr als naheliegend und er dürfte auch die nächsten 10 Jahre noch erreichbar bleiben. Grüße pelzfrucht
Chris F. schrieb: > Es gibt auch Wasserstoff-, Caesium- und Rubidium-Atom-Uhren in > Chipgröße. Was du so als "Chipgröße" bezeichnest. Die Abmessungen sind dort in Inch und nicht in 1/100 Inch angegeben ...
man man man, ich bin beeindruckt war für "nette Menschen" hier unterwegs sind ^^ egal, Thema erledigt :) der HTTP-Header-Abruf hat mir sehr geholfen und wurde genau so umgesetzt. Vielen Dank an alle Konstruktiven Tipps
UTC oder GMT ist zwar nett, aber “voll anstemgend vong Programierumg her“. :) Da muss man halt die Zeitumstellung beachten. Ich wollte das nur mal so in den Raum werfen. Ist keine Kunst, aber man muss halt dran denken.
> Da muss man halt die Zeitumstellung beachten.
Ich plädiere dafür, diesen Unfug endlich abzuschaffen. Die
Zeitumstellung macht nur Ärger und ist für nichts gut.
Sehe ich genauso. Von mir auch auch die Sommerzeit, die ja sooo energiesparend ist. Wobei ich es sinvoller finden würde, einfach den Tagesrythmus anzupassen. Wenn man im Winter um 9 Uhr anfängt, geht man im Sommer halt schon um 8 Uhr auf die Arbeit, dann hat man genauso viel vom Tag.
:
Bearbeitet durch User
baer schrieb: > hier geht es darum, dass z.B. > diverse tätigkeiten nicht zu "Nachtstunden" ausgeführt werden sollen... > und ob das jetzt um 21:00:00,0000 ist oder um 21:05 ist völlig rille... Ich hab mal ne einfache Uhr mit AVR, 32kHz Quarz und Goldcap zum Stützen aufgebaut. Den Gangfehler habe ich über 3 Monate ermittelt und dann die Korrekturrechnung hart reincodiert. Nach ~10 Jahren geht sie <2min vor.
Leroy M. schrieb: > UTC oder GMT ist zwar nett, aber “voll anstemgend vong Programierumg > her“. :) > > Da muss man halt die Zeitumstellung beachten. Das kommt darauf an, was du brauchst. Wenn du einen anständigen time_t haben willst, der natürlich auf die Unix-Epoch und UTC bezogen ist, dann ist das genau nicht der Fall - so etwass braucht man üblicherweise, wenn man z.B. kontinuierliche Aufzeichungen machen will - timestamps, in denen die Zeitzone unterschiedlich sind, sind ekelhaft. Wenn man dagegen die Lokalzeit braucht, OK, dann ist es natürlich bequemer, diese auch gleich zu beziehen. Wichtig ist, das man vorher darüber nachdenkt, was man eigentlich braucht.
baer schrieb: > Soooo genau muss die Zeit nicht sein, ich werde die einmal am Tag > Syncronisieren, und das reicht auch... hier geht es darum, dass z.B. > diverse tätigkeiten nicht zu "Nachtstunden" ausgeführt werden sollen... > und ob das jetzt um 21:00:00,0000 ist oder um 21:05 ist völlig rille... dann nehme einen Arduino, eine RTC3231 und die DS1307new LIB reicht völlig, wenn du eh die Uhr alle paar Monate um 1s nachstellen willst
Stefan U. schrieb: > Falls du Dich nicht mit dem NTP Protokoll auseinandersetzen möchtest, Wobei volles NTP mit kontinuierlicher und sprungfreier Zeitsynchronisation bei einem µC möglicherweise unnötig ist. SNTP hat die gleiche Basis, ist aber als reine Abfrage gedacht und dementsprechend simpler.
Leroy M. schrieb: > UTC oder GMT ist zwar nett, aber “voll anstemgend vong Programierumg > her“. :) > > Da muss man halt die Zeitumstellung beachten. Gerade bei UTC muss man NICHT an die Zeitumstellung denken.
Un glaublich was hier für ein Gezumpel gemacht wird wo es doch nach nem viertel Jahr egal sein soll, ob die Uhr noch genau ist oder 5 Minuten daneben liegt. Wie schon gesagt, in diesem Falle würde ich das Problem schlicht via DCF77 lösen. Die Sendeanlage wird sicher auch noch in 20 Jahren in Mainflingen stehen.
> Wie schon gesagt, in diesem Falle würde ich das Problem > schlicht via DCF77 lösen. Die Sendeanlage wird sicher auch noch in 20 > Jahren in Mainflingen stehen. Da würde ich mich nicht drauf verlassen! Die asendeanlage wird da sicher noch stehen, aber ob da noch genauu so wie heute die Zeit rauskommt... Mittelwellenrundfunk war auch einfach so weg! Aber das Problem wurde ja mittels HTTP Abfrage gelöst.
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.