Liebe Mikrocontroller-Mitglieder! Ich weiß nicht, ob ich es hier in diese Rubrik oder in die "PC-Programmierung"-Rubrik schreiben soll. Falls ich mich gnadenlos für die Falsche entschieden habe, bitte ich vielmals um Entschuldigung :-) Meine Freundin hat bald Geburtstag und sie wünscht sich einen Heimtrainer zum Geburtstag. Es soll einer um 99 Euro von Neckermann sein. - Heute bestellt und nun beginnt das ewige Warten! Wie es an einem langweiligen und frustrierten Sonntag üblich ist, kommen einem die schrägsten Ideen in den Sinn, wie auch diese: Da wir beide keine eigene Wohnung haben und uns derzeit größtenteils mit Webcam und Chat in Verbindung halten, sind wir auf die Idee gekommen, uns gegenseitig mit unserer Sportivität "auszuspionieren". So kam meine Idee, die Daten ihres Heimtrainers ( z.B. Drehzahl der Schwungscheibe pro Minute) mit einem Mikrocontroller des Typs Atmega8 / Atmega16 zu erfassen, diese via RS232 (UART) an den jeweiligen Rechner zu senden, welche wiederum von einem eigens geschriebenen Programm empfangen werden UND ...aufgepasst jetzt kommts ... aktuell über das Internet an meinen PC übertragen wird. Ich dachte dabei an ein Browser-Interface oder ein kleines Programm, welches die auf meinem Webserver (Webspace von meinem Provider) gespeicherten Daten entgegennimmt. Nun zur Frage: Ist es möglich, Daten periodisch auf dem Webspace abzuspeichern? Oder gibt es eine andere Möglichkeit, Echtzeitdaten über das Internet von Rechner-A an Rechner-B zu übertragen? Ich freue mich auf Antworten, und Nein, es ist kein Aprilscherz, ich meine es ernst :) Gruß Ludwig
@ Ludwig Austerer (Gast) >Nun zur Frage: Ist es möglich, Daten periodisch auf dem Webspace >abzuspeichern? Oder gibt es eine andere Möglichkeit, Echtzeitdaten über >das Internet von Rechner-A an Rechner-B zu übertragen? Ja, mit einem kleinen Webserver. Beitrag "Webserver ATmega32/644DIP ENC28J60" MfgG Falk
nutze die zeit lieber sinnvoll und verbringe eben diese zeit um deine freundin zu besuchen
ok Danke erstmal für deine schnelle Antwort! Würde das nicht softwaremäßig über meinen Webspace auch funktionieren? Ich dachte da an ein von mir geschriebenes PC-Programm, welches zyklisch die Daten an den Webspace transferiert?! Danke
Ludwig Austerer wrote:
> Würde das nicht softwaremäßig über meinen Webspace auch funktionieren?
Nun ja, sicherlich würd das funktionieren... Allerdings musst du dafür
eine PHP seite schreiben und dazu ein kleines C Programm, welches zu
erst die Daten puffert, die vom UART kommen und dann als HTTP_Request
weiterschicken. Am einfachsten wär da wirklich noch der Webserver wie er
in der Codesammlung ist. Mit dem PC ist das ewig viel Coderei.
JÜrgen G. wrote: > ... > weiterschicken. Am einfachsten wär da wirklich noch der Webserver wie er > in der Codesammlung ist. Mit dem PC ist das ewig viel Coderei. mit linux (bzw. cygwin) ist es grade mal einzeiler (ein etwas langer einzeiler) so in der richtung: while [ 1 ]; do sleep 60; cat -n 1 /dev/ttyS0 | ncftp -u ftpusername -p ftppasswort ftp.ftpserver.de results.txt; done oder mit tools wie socat kann man den rs232 port ins netzt legen (umleiten)
Kauf euch ne WebCam, ist billiger schneller und du kannst auch noch sehen wie sie schwitzt ;) Gruß Hagen
@Gerard Choinka: Das würde heißen, dass ich einen Linux-Webserver einrichten müsste, an den das Mikrocontroller-Board via RS232 angeschlossen ist...oder eben die emulation von Linux. sleep 60, bedeutet das, dass er im Minutentakt die Daten am Server mit dem Puffer der RS232 synchronisiert? Ich habe auf meinem Uralt-PC zuhause Ubuntu Linux. Welches Programm benötige ich für diesen Servereinsatz? Danke
Oh,...ich hatte ein Verständnisproblem. Es würde also heißen, dass der Linux-Rechner als "FTP-Programm" funktioniert, welcher permanent die result.txt auf den Server schickt. Ich müsste dann also lediglich diese result.txt an einem Client (z.B. dann meinem Notebook) abrufen, um an die Messdaten meiner Freundin zu gelangen :)
>Ist es möglich, Daten periodisch auf dem Webspace >abzuspeichern? Oder gibt es eine andere Möglichkeit, Echtzeitdaten über >das Internet von Rechner-A an Rechner-B zu übertragen? ja, das ist, was das Internet prinzipiell macht. Siehe z.B. auch Chat, Voice-Chat, Video-Chat usw. ist auch alles Echtzeit ohne, dass man irgendwas auf einen Webserver hoch lädt. Also ich würde ja jetzt nicht anfangen und für so eine "Mini-Aufgabe" einen Webserver zusammen löten. Da ist es sicher schneller, wenn du einfach eine Client-Server-Anwendung schreibst, welche dann die Daten vom COM-Port des PCs (UART) entgegen nimmt und dann über das Internet (TCP/IP) zum Rechner deiner Freundin und andersrum schickt. Damit würdest du allerdings nicht zu deinem gewünschten Webinterface kommen. Mit der FTP-Variante kann es ggf. vorkommen, dass dir das dein Webspace-Provider auf dauer übelnimmt, wenn du ständig verbindest und ein Dateichen hochlädst. ...besonders wenn es sich um kostenlosen Webspace handelt.
hmm ok, das heißt aber dann, dass ich "nur" zwischen Mir und meiner Freundin kommuniziere und theoretisch niemand anders auf die Daten zugreifen kann. Mir wäre es lieber, wenn ich es erstmal mit meinem Heimtrainer zuhause versuche, denn da habe ich dann auch mehr zeit zu probieren. Ich würde es jetzt so machen, dass ich den Linux-Rechner an den AtMega anschließe, der dann die Daten erstmal in die text-Datei schreibt. Anschließend schickt er sie über die Codezeile von Gerard Choinka an meinen Webspace. - Welches FTP-Programm benötige ich in Linux für diese Codezeile? -ist das das NCFTP? - Gäbe es eine Möglichkeit, dass der Linux-Rechner gleichzeitig mein Webserver ist, auf den ich dann diese Text-Datei mit einem FTP-Programm welches auch unter Linux läuft hochlade? Dann hätte ich das Problem mit dem free-Webspace nicht. Danke
Und als "Antrieb" für den Linux-Rechner kann man am besten eine Dynamo an den Heimtrainer bauen...
- Gäbe es eine Möglichkeit, dass der Linux-Rechner gleichzeitig mein Webserver ist, auf den ich dann diese Text-Datei mit einem FTP-Programm welches auch unter Linux läuft hochlade? Dann hätte ich das Problem mit dem free-Webspace nicht. Hi, Das geht, einfach eine Webserversoftware installieren. Und das Programm, dass die per RS232 empfangenen Meßdaten in eine Datei umwandelt, gleich noch HTML drumherumbauen lassen, z.B. <HTML><HEAD>Hildegards Leistungsabgabe</HEAD><BODY>Der Heimtrainer verlangt mir gerade plöpp Watt ab!</BODY></HTML> und die Datendatei in das Verzeichnis schreiben, das im Webserver freigegeben ist. Mit dyndns.org oder ähnlichen Diensten deinem hiermit entstandenen heimischen Webserver einen festen Domainnamen zuweisen, z.B. schatzisheimtrainer.dyndns.org und ggf. noch den Router korrekt einstellen, Stichwort NAT. Dann kanns abgehen, und du kannst mit dem Refresh-Knopf deines Browsers zugucken. Und sie entsprechend später bei Dir ! Gruß, Hendi
@Hendi: Das Problem bei deinem Vorschlag ist aber nur, dass ich eben ständig die HTML-Seite mit den Messwerten manuell hochladen muss. Drum würde ich auf den Codeschnipsel von Gerard zurückgreifen, um das Hochladen der Datei zu Automatisieren. Ich muss also folgende Sachen programmieren: - Mikrocontroller - RS232 Empfang für "Heimtrainer-PC" - Routine, um die Daten zyklisch an den Server zu schicken Welches Programm nehme ich für den Empfang der Daten der Seriellen Schnittstelle unter Linux (xubuntu)? Welches FTP-Programm eignet sich am besten? Hat der Codeschnipsel von Gerard etwas mit dem FTP-Programm selbst zutun, oder kann man da auch ein anderes nehmen, damit es funktioniert, unabhängig von dem NCFTP? Danke Gruß
Falk Brunner wrote: > @ Ludwig Austerer (Gast) > >>Nun zur Frage: Ist es möglich, Daten periodisch auf dem Webspace >>abzuspeichern? Oder gibt es eine andere Möglichkeit, Echtzeitdaten über >>das Internet von Rechner-A an Rechner-B zu übertragen? > > Ja, mit einem kleinen Webserver. > > Beitrag "Webserver ATmega32/644DIP ENC28J60" > > MfgG > Falk kleiner Webserver wäre auch das hier: Beitrag "ENC28J60 (Mikro-)Web-Server die Nächste"
ok also schritt-für-schritt..... ...ich installiere gerade mal Xubuntu auf einem "Spiel-Rechner", der andere ist mir jetzt zu "sauber" um auf ihm diverse Sachen auszuprobieren. Nun brauche ich also als Erstes Apache bzw ein FTP-client-Programm. Wenn das mal läuft bin ich schonmal froh ;) Wisst ihr ob xubuntu diese Serverprogramme mitliefert? Danke!
Ludwig Austerer wrote:
> Wisst ihr ob xubuntu diese Serverprogramme mitliefert?
sudo apt -get programmname
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.