|
|
(20 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt) |
Zeile 1: |
Zeile 1: |
| Im Rahmen unseres Elektrotechnik Fachpraktiukums war es unsere Aufgabe einen Android-App zu entwickeln mit der ein Pelletgrill gesteuert werden kann.
| | Mein Name ist Dominik Rebein, Student an der Hochschule Hamm-Lippstadt, Studiengang Mechatronik. |
|
| |
|
| Die Gruppenmitglieder sind:''' Kathrin Liedmann, Benedikt Schulte''' und''' Dominik Rebein'''.
| | Zuständig für den Wiki-Eintrag [http://193.175.248.171/wiki/index.php/Projekt_12:_Grill-App_f%C3%BCr_ein_Smartphone Projekt 12: Grill-App] und [http://193.175.248.171/wiki/index.php/LabVIEW_RS232_Schnittstelle LabVIEW RS232 Schnittstelle]. |
|
| |
|
| | | Kontakt unter: Dominik.Rebein@stud.hshl.de |
| __TOC__
| |
| == Einleitung ==
| |
| Hier kommt die Einleitung des Projekts
| |
| | |
| | |
| | |
| | |
| | |
| | |
| == Hardware==
| |
| Hier wird die Hardware beschrieben
| |
| | |
| === Arduino ===
| |
| | |
| === HAMA WLAN Adapter===
| |
| | |
| | |
| | |
| == Software==
| |
| Hier wird die Software beschrieben
| |
| | |
| === Arduino Programm===
| |
| | |
| <code>
| |
| void Programm()
| |
| {
| |
| #if ARDUINO > 18
| |
| #include <SPI.h> // Für Arduino Version größer als 0018
| |
| #endif
| |
| #include <Ethernet.h>
| |
| #include <TextFinder.h>
| |
| #include <SD.h>
| |
| int temp=50;
| |
| byte mac[] = { 0x90, 0xA2, 0xDA, 0x0D, 0x57, 0x90 }; // MAC-Adresse des Ethernet-Shield
| |
| byte ip[] = { 192, 168, 0, 88 }; // IP zum aufrufen des Webservers
| |
| byte sdPin = 4; // Pin der SD-Karte
| |
| EthernetServer server(80); // Server port
| |
| File webFile;
| |
| void setup()
| |
| {
| |
| Ethernet.begin(mac, ip); // Client starten
| |
| server.begin(); // Server starten
| |
| Serial.begin(9600);
| |
| Serial.println("ARDUINO - STEUERUNG");
| |
| Serial.println("Initialisiere SD-Karte...");
| |
| if (!SD.begin(sdPin))
| |
| {
| |
| Serial.println(" - Initialisierung der SD-Karte fehlgeschlagen!");
| |
| return;
| |
| }
| |
| Serial.println(" - SD-Karte erfolgreich initialisiert.");
| |
| if (!SD.exists("index.htm"))
| |
| {
| |
| Serial.println(" - Datei (index.htm) wurde nicht gefunden!");
| |
| return;
| |
| }
| |
| Serial.println(" - Datei (index.htm) wurde gefunden.");
| |
| Serial.println();
| |
| Serial.println("Verbraucher schalten");
| |
| }
| |
| | |
| void loop()
| |
| {
| |
| EthernetClient client = server.available(); // Auf Anfrage warten
| |
| | |
| if(client)
| |
| {
| |
| /*****************************************
| |
| Ausgänge über das Webformular steuern *
| |
| *****************************************/
| |
| TextFinder finder(client);
| |
| | |
| if(finder.find("GET"))
| |
| {
| |
| while(finder.findUntil("pin", "\n\r"))
| |
| {
| |
| char typ = client.read();
| |
| int pin = finder.getValue();
| |
| int val = finder.getValue();
| |
| | |
| if(typ == 'D')
| |
| {
| |
| pinMode(pin, OUTPUT);
| |
| digitalWrite(pin, val);
| |
| Serial.print(" - D"+String(pin));
| |
| }
| |
| else if(typ == 'A')
| |
| {
| |
| analogWrite(pin, val);
| |
| Serial.print(" - A"+String(pin));
| |
| }
| |
| else Serial.print(" - Falscher Typ");
| |
| | |
| if(val==1) Serial.println(" ein"); else Serial.println(" aus");
| |
| }
| |
| }
| |
| | |
| /************************
| |
| Webformular anzeigen *
| |
| ************************/
| |
| boolean current_line_is_blank = true; // eine HTTP-Anfrage endet mit einer Leerzeile und einer neuen Zeile
| |
| | |
| while (client.connected())
| |
| {
| |
| if (client.available()) // Wenn Daten vom Server empfangen werden
| |
| {
| |
| char c = client.read(); // empfangene Zeichen einlesen
| |
| if (c == '\n' && current_line_is_blank) // wenn neue Zeile und Leerzeile empfangen
| |
| { // Standard HTTP Header senden
| |
| client.println("HTTP/1.1 200 OK");
| |
| client.println("Content-Type: text/html");
| |
| client.println("Connection: close");
| |
| client.println();
| |
| | |
| // Website von SD-Karte laden
| |
| webFile = SD.open("index.htm"); // Website laden
| |
| if (webFile)
| |
| {
| |
| while(webFile.available())
| |
| {
| |
| client.write(webFile.read()); // Website an Client schicken
| |
| }
| |
| webFile.close();
| |
| }
| |
| break;
| |
| }
| |
| if (c == '\n')
| |
| {
| |
| current_line_is_blank = true;
| |
| }
| |
| else if (c != '\r')
| |
| {
| |
| current_line_is_blank = false;
| |
| }
| |
| }
| |
| }
| |
| delay(1);
| |
| client.stop();
| |
| }
| |
| }
| |
| }
| |
| </code>
| |