TCP/IP Anbindung über einen Webserver

 

Allgemeines

 

Der Webserver wurde auf dem Hightec Evalutionboard entwickelt. Er verwendet das Echtzeitbetriebssytem PXROS und dessen TCP/IP Implementierung PXtcp. Mit dem Evalutionboard wird ein Motor angesteuert (Links und Rechtslauf).

Um den Vorteil der Verwendung eines Betriebssystems hervorzustreichen (den modularen Aufbau von Applikationen), werden die Aufgaben in Tasks aufgeteilt.

Weiters soll hier erwähnt werden, dass der Webserver mit Rücksicht auf Codebedarf entwickelt wurde, da dieser im Fall dieses Programms schon hart an der Grenze des Hightec Evalutionboards liegt.


 


Taskkonzept

 

 

 

Das obige Blockschaltbild zeigt die im Programm aktiven Tasks nach Priorität geordnet.

Der Init Task wird dazu verwendet, alle anderen Tasks zu initialisieren. Anschließend setzt er selbst seine Priorität herunter, um die anderen Tasks aktiv werden zu lassen, und den eigentlichen Programmablauf zu starten.

 

Telnet Task und HTTP Task kommunizieren mit dem TCP/IP Task über das Socket- Interface. Es handelt sich dabei um bidirektionale Kommunikation.

Der TCP/IP Task kommuniziert mit dem Ethernet Treiber über Nachrichtendienste des PXROS.

Die Kommunikation zwischen 'Http' und 'Motor' Task erfolgt unidirektional über das Signalisieren von Ereignissen.

Der HTTP Task

 


 

 

 


Der HTTP- Task basiert auf dem HTTP 1.0 Protokoll. Obwohl das HTTP 1.0 Protokoll die Methoden ‚GET‘, HEAD‘ und ‚POST‘ kennt, ist in diesem Programm lediglich die ‚GET‘- Methode implementiert. Das HTTP 1.0 Protokoll erlaubt dies, wenn entsprechende Fehlermeldungen zum Client zurückgesendet werden.

Screenshot des Webserver: