Forum: Mikrocontroller und Digitale Elektronik CGIeß-o-mat fertig!


von peter (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Leute!

Wie bereits in der Rubrik "PC-Programmierung" angekündigt, habe ich mich 
in den letzten Tagen verstärkt mit dem Thema CGI, HTML, VB6 und µC-C 
auseinander gesetzt.
Sinn und Zweck des Ganzen ist es, von jeder ans Netz gebundenen Maschine 
die Pflanzen zu gießen :-)

Zunächst ist das Projekt in 3 Hauptdateien aufgeteilt, die wie folgt 
heißen:

 - Intro.cgi:   Zeigt Messwerte über den Gießvorgang 
(Feuchtigkeitssensor -> noch in Planung), Liest Messwerte aus der 
'values.dat'.
 - index.html:  Ist die Seite NACH der Passwortabfrage  (.htaccess), um 
nicht jedem User das gießen zu ermöglichen. Auf ihr befinden sich 
Buttons zum Schalten der Pumpen.
 - Giesse.cgi:  Schreibt in die 'auftraege.dat' ein Flag, welche 
Peripherie (Pumpe) geschaltet werden soll

Auf dem Server läuft außerdem ein Visual-Basic-Programm, welches alle 5 
sec die "auftraege.dat" abfragt, je nach Inhalt (wenn Flag gesetzt), 
schickt es über die serielle Schnittstelle ein Byte mit der jeweiligen 
Information. Daraufhin werden die Ausgänge vom Mikrocontroller 
geschaltet.
Im VB-Programm wird außerdem die Gießdauer und der Abfragezeitraum 
(default: 5 sec.) gewählt.


Für Infos bin ich gerne bereit, ich hoffe ihr könnt mein Projekt 
brauchen! :)

Gruß

von Markus (Gast)


Lesenswert?

Nimm besser Lazarus/Freepascal. Die EXE von VB benötigt immer ein SETUP 
Paket mit extra vielen DLLs.
Bei Freepascal kommt eine EXE dabei raus, die funktioniert ohne 
Setup-Paket.
Vor vielen Jahren hab aich auch mal VB programmiert, nach dem ich das 
dritte mal meinen PC neu installieren musste hatte ich enorme 
Schwierigkeiten meine eigenen Programme wieder zum Laufen zu bekommen!!!

von Sven P. (Gast)


Lesenswert?

Das alte alte VB braucht auch nur eine Runtime-DLL, nur das neue hängt 
halt vom .NET-Geraffel ab.

Zum Programm: Du hast eine Sache nicht berücksichtigt: Was passiert 
denn, wenn du per CGI gerade deine Auftraege.dat schreibst, und dein 
VB-Programm das zeigleich auch macht...?

Dann ist da noch ein Fehler:
1
void print_header(void) {
2
   printf("Content-Type: text/html\n\n");
3
}
Schreib lieber noch Wagenrückläufe dazu, das verlangt die 
HTTP-Spezifikation.

Unten fehlt übrigens noch print_html_end().

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.