INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
web server mit DHCP für acht kanal voltmeter
01.06.2014, 23:35
Beitrag #1
web server mit DHCP für acht kanal voltmeter
ich habe mal gepostet neubee baut acht Kanal Voltmeter, da habe bei meine freie zeit eine menge untersuch, und festgestellt das der Web Server Sketch ist der der sich am beste eignet für mein Projekt die Daten werden auf den pc Monitor geschaufelt und kann man eventuell mit Visual C++ ordentlich darstellen.
Nun gibt eine Problem der sehr Wahrscheinlich nicht an Arduino liegt sondern, bin mir nicht sicher, an DHCP der Beispiel Server Sketch von David A. Mellis und Tom Igoe sendet ja eine fix IP aber mein Router und mein ganzes netz sind auf DHCP eingestellt, so der Server Sketch funktionier nur wann in Genehmigt wird sich zu melden, es heisst nur selten aber den richtig so lange ich der Computer an habe.
Weist jemanden einen Sketch für den Server der sich auch mit DHCP ins netz einloggt?
vielleicht ist der uno mit sein Memory einen bisschen dürftig um dhcp zu handeln, ich habe mir aber ein due, wegen Auflösung und adc Kanäle Anzahl ageschaf und due hat doch mehr Speicher, Ich Hoffe jemanden kann mir rasch helfen.
Nächste Woche kommen ja die Teiler Dekaden, und die Instrumentation Verstärker
so möchte ich vor mit ein funktionierend Sketsch bereitet sein.
Für Heure Hilfe danke im voraus Alfredo.
PS.: MAC, IP und Port Adresse sind richtig angepasst, wenn alle gut gehet funktioniert doch das ganze Blush
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
02.06.2014, 09:10
Beitrag #2
RE: web server mit DHCP für acht kanal voltmeter
Hi,
hier ist ein Beispiel mit DHCP:
http://arduino.cc/en/Tutorial/DhcpAddressPrinter
HTH,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
02.06.2014, 12:40
Beitrag #3
RE: web server mit DHCP für acht kanal voltmeter
allo Thorsten
danke für die Antwort der sketch
wie du seihest bin mit Ethernet/Internet sehr schwach auf den Bein, wenn den Sketch aufgemacht habe stellte ich fest das DHCP wurde als Client angesprochen so der Daten Verkehr wird beeinträchtigt und nicht zu Verfügung gestellt.
haber in innen anderen Sketch folgende Eintrag gemerkt #include etherrnetDHCP.h ist dir so ne Bibliothek bekannt im arduino Library? bin gespannt grüss alfredo
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
02.06.2014, 13:47 (Dieser Beitrag wurde zuletzt bearbeitet: 02.06.2014 13:49 von rkuehle.)
Beitrag #4
RE: web server mit DHCP für acht kanal voltmeter
Hallo alfredoli,

grundsätzlich ist es dem Webserver ja egal ob er eine fixe IP-Adresse erhält oder über DHCP. (Nun gut einen Server mit einer DHCP-Adresse zu versorgen ist vielleicht nicht die beste Lösung)
Hier mal ein Code, der alle zwei Stunden eine DHCP-Adresse holt bzw. aktualisiert und diese in der Variablen ipbuf speichert und dann auf dem Serialmonitor ausgibt.
Code:
// Includes
#include <Ethernet.h> // Ethernetfunktionen
#include <SPI.h> // SPI für Ethernetboard
// Variablen
// *** Ethernet MAC Adresse steht auf Ethernetshield oder manuell setzen
static byte mac[] = {
  0x90, 0xA2, 0xDA, 0x00, 0x9B, 0xC1
};
/* Puffer für Umsetzung der DHCP-IP-Adresse von Ethernet.localIP()
Aufbau: "IP-Adresse+Abschlußzeichen "\0" */
char ipbuf[16];
/* Eine Union ist eine Vereinigung verschiedener Typen auf einer Adresse.
Dies erleichtert Redefinitionen oder die Verwendung von Variantentypen.
Sie nimmt nicht mehrere Elemente nebeneinander auf, sondern zu jedem Zeitpunkt immer nur eines.
Wird eine der Definitionsvarianten initialisiert, so werden die anderen damit implizit initialisiert,
da sie auf der gleichen Adresse beginnen.*/
union IPAddressConverter {
  uint32_t ipInteger;
  uint8_t ipArray[4];
};
unsigned long dlastnow; // letztes now() für dhcprenew
const int dhcplease = 7200; // *** DHCP Lease - 2 Stunden
EthernetClient client; // EthernetClient - Instanz erstellen
void setup()
{
  Serial.begin(9600);
  Ethernet.begin(mac); // EthernetClient starten, 1 Sekunde warten
  delay(1000);
  dhcprenew();
  dlastnow = millis();
  String message = ipbuf;
  Serial.println(message);
}
void loop()
{
  if ( millis() - dlastnow > dhcplease * 1000)
  {
    dhcprenew(); // Aktualisierung der DHCP-Adresse
    dlastnow = millis();
    String message = ipbuf;
    Serial.println(message);
  }
}
void dhcprenew()
{
  /* das eigentliche DHCP renew
   Adresse wird dann in Puffer ipbuf geschrieben */
  Ethernet.maintain();
  IPAddressConverter ipAddress;
  ipAddress.ipInteger = Ethernet.localIP();
  sprintf(ipbuf, "IP:  %d.%d.%d.%d", ipAddress.ipArray[0], ipAddress.ipArray[1], ipAddress.ipArray[2], ipAddress.ipArray[3]);
}

Damit sollte es auch möglich sein dem Seketch für den Server die DHCP-Adresse zu übergeben.

Grüße Ricardo

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.06.2014, 16:51
Beitrag #5
RE: web server mit DHCP für acht kanal voltmeter
Nun fängt an zuklappen, das Problem? das arduino uno mit volle sechs Analogskanäle Steuerung schafte es nicht richtig an Gateway (Fritzbox) sich anzumelden, da wie ich sagte eine arduino due, mir angeschafft habe, wegen seine bessere Auflösung und Kanäle Anzahl, so habe es ihn eingesetzt, mit alle seine 12 zwölfbittige Kanäle und Wunder der gleicher Programm, mit gleicher Ethernet shield hat auf Anhieb funktioniert, also arduino uno für kleine Programme mit weinig Anforderung benutzen sonst kann man sich tot suchen an Fehler di gar nicht da sind.
Hat jemanden eine Idee wie ich die angelesene Daten in Excel rein bringen kann? sonst für Berechnungen, die Excel blendend löst, soll ich mich tot programmieren.
Noch einen Flüstern sollte ich haben Smile Wie übergebe ich einen Parameterwert die Mit arduino eingelesen worden ist an Visual C++ oder an Visual Basic?
wenn Jemanden an mein Projekt Interesse hat tue ich aufzeichen in möglich lesbare Graphik und tue ich publizieren sobald fertig ist
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
05.06.2014, 00:49
Beitrag #6
RE: web server mit DHCP für acht kanal voltmeter
(02.06.2014 13:47)rkuehle schrieb:  Hallo alfredoli,

grundsätzlich ist es dem Webserver ja egal ob er eine fixe IP-Adresse erhält oder über DHCP. (Nun gut einen Server mit einer DHCP-Adresse zu versorgen ist vielleicht nicht die beste Lösung)
Hier mal ein Code, der alle zwei Stunden eine DHCP-Adresse holt bzw. aktualisiert und diese in der Variablen ipbuf speichert und dann auf dem Serialmonitor ausgibt.
Code:
// Includes
#include <Ethernet.h> // Ethernetfunktionen
#include <SPI.h> // SPI für Ethernetboard
// Variablen
// *** Ethernet MAC Adresse steht auf Ethernetshield oder manuell setzen
static byte mac[] = {
  0x90, 0xA2, 0xDA, 0x00, 0x9B, 0xC1
};
/* Puffer für Umsetzung der DHCP-IP-Adresse von Ethernet.localIP()
Aufbau: "IP-Adresse+Abschlußzeichen "\0" */
char ipbuf[16];
/* Eine Union ist eine Vereinigung verschiedener Typen auf einer Adresse.
Dies erleichtert Redefinitionen oder die Verwendung von Variantentypen.
Sie nimmt nicht mehrere Elemente nebeneinander auf, sondern zu jedem Zeitpunkt immer nur eines.
Wird eine der Definitionsvarianten initialisiert, so werden die anderen damit implizit initialisiert,
da sie auf der gleichen Adresse beginnen.*/
union IPAddressConverter {
  uint32_t ipInteger;
  uint8_t ipArray[4];
};
unsigned long dlastnow; // letztes now() für dhcprenew
const int dhcplease = 7200; // *** DHCP Lease - 2 Stunden
EthernetClient client; // EthernetClient - Instanz erstellen
void setup()
{
  Serial.begin(9600);
  Ethernet.begin(mac); // EthernetClient starten, 1 Sekunde warten
  delay(1000);
  dhcprenew();
  dlastnow = millis();
  String message = ipbuf;
  Serial.println(message);
}
void loop()
{
  if ( millis() - dlastnow > dhcplease * 1000)
  {
    dhcprenew(); // Aktualisierung der DHCP-Adresse
    dlastnow = millis();
    String message = ipbuf;
    Serial.println(message);
  }
}
void dhcprenew()
{
  /* das eigentliche DHCP renew
   Adresse wird dann in Puffer ipbuf geschrieben */
  Ethernet.maintain();
  IPAddressConverter ipAddress;
  ipAddress.ipInteger = Ethernet.localIP();
  sprintf(ipbuf, "IP:  %d.%d.%d.%d", ipAddress.ipArray[0], ipAddress.ipArray[1], ipAddress.ipArray[2], ipAddress.ipArray[3]);
}

Damit sollte es auch möglich sein dem Seketch für den Server die DHCP-Adresse zu übergeben.

Grüße Ricardo

oi Riccado
leider das Problem ist auch mit Arduino due auch aufgetreten, das vorgehn escheint folgende zu sein, wenn eine Arduino Ethernet Board ins netz kommt sie funktioniert mit dem Sketch auf anhieb, sie liest dir analog Ports Daten und verschreckt zum PC., weh du die Messungen aufbrichst aber, bei nächste Aufstarrten, wenn man in Adresse Feld der ip von Sketsch eingegeben wird, Google meldete das die Daten auf ip 192.xxx.xxx.xxx:yyyyy könnten nicht gelesen werden bzw bring irgend welche Webseiten zu Ansicht und springt nicht mehr zu Sketch, solange der Ethernet Shield wieder gesetzt oder umprogrammiert wird.
Bei Arduino due dauert etwas länger bevor der fehle auftritt.
ich denke mir das das ganze passiert im Einklang mit den pc wo die ip Adressen nicht richtig aufgelöst werden. auf einen post habe gelesen da kann auch passiere wenn der speise Spannung etwas zu niedrig wird, aber bei mir das wird mit ein 2A speise gerät... also eine enorme zeit Verschwendung.
gruss alfredo
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
05.06.2014, 07:20
Beitrag #7
RE: web server mit DHCP für acht kanal voltmeter
Hallo alfredoli,

wenn ich die richtig verstande habe sollte doch ein Webserver eine DHCP-Adresse erhalten und dann im Browser Daten liefern HuhHuhHuh
Du hattest nicht davon gesprochen dass der Webserver eine feste Adresse erhalten sollExclamation
Mein Sketch zeigt nur wie man eine DHCP-Adresse beziehen kann.

Am besten ist es, wenn du uns deinen Webserver - Sketch einstellst. Ich würde dann meinen Sketch einbinden, so daß der Webserver eine DHCP-Adresse erhält.

Grüße Ricardo

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
05.06.2014, 09:14
Beitrag #8
RE: web server mit DHCP für acht kanal voltmeter
Hi,
das ganze klingt mir irgendwie verdächtig nach Memory Leak...
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Arduino Zugriff auf MySQL Server - !ohne PHP! rkuehle 9 10.578 05.09.2016 07:18
Letzter Beitrag: mainframe
  Beispiel NTP und DHCP rkuehle 5 14.801 13.09.2013 23:49
Letzter Beitrag: citsin

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste