This dissertation has been submitted by a student. This is not an example of the work written by our professional dissertation writers.

Kurzfassung

In den letzten Jahren hat sich der Markt fuer mobile Kommunikation und Telekommunikation zu einem der erfolgreichsten Zukunfts- und Wachstumsbranchen entwickelt. Einhergehend mit der zunehmenden Verbreitung und Entwicklung von mobilen Geraeten und daraus resultierenden, stetig wachsenden Moeglichkeit an neuen mobilen Services, werden laufend Anwendungen und Einsatzmoeglichkeiten fuer mobile Geraete entwickelt und realisiert. Dabei gewinnen die Begriffe Mobilitaet und Flexibilitaet eine immer wichtigere Bedeutung.

In der vorliegenden Arbeit werden funktionsfaehige Prototypen einer Spiele-Applikation fuer eine Grossveranstaltung, die sich durch eine nahezu echtzeitbasierte Ansteuerung der Spielfigur ueber ein Mobiltelefon charakterisiert erarbeitet.

Beginnend mit einem ueberblick ueber in Frage kommender Signaluebertragungs- und Signalempfangsmoeglichkeiten werden diese analysiert und untereinander verglichen. Hierbei werden aufgrund verschiedener - fuer den Anwendungsfall erstellter - Kriterien unterschiedliche Signaluebertragungstechnologien (GSM-Sprache/DTMF, GPRS, Bluetooth, WLAN) und Signalempfangseinrichtungen (DTMF-Hardware, DTMF-Software, Bluetooth-Empfaenger, Applikationsserver) auf ihre Eignung hin evaluiert.

Aus diesen Erkenntnissen werden in Folge zwei funktionsfaehige Prototypen - die eine Softwareapplikation durch DTMF-Toene bzw. mittels Bluetooth steuern - verschiedener Technologien konzipiert, implementiert und abschliessend auf ihre Eigenschaften hin getestet.

Abstract

In recent years the market for mobile communications and telecommunications has become one of the most successful growing industry. Along with the proliferation and development of mobile devices and the resulting opportunity to research new mobile services, applications for mobile devices are developed and implemented. The terms mobility and flexibility are getting more and more important.

In this thesis functional prototypes of a game application for an event, characterized by an almost real-time-control of the game character are going to be developed.

Starting with an overview of possibilities to transmit and receive signals, different technologies will be analyzed and compared to each other. The technologies are also going to be evaluated on the basis of several criteria - especially developed for this use case.

From these results two functional prototypes - a software application handling DTMF tones and Bluetooth communication are going to be implemented and finally tested on their defined properties.

1 Einleitung

In den letzten Jahren hat sich der Markt fuer mobile Kommunikation und Telekommunikation zu einem der erfolgreichsten Zukunfts- und Wachstumsbranchen entwickelt.

Der Stellenwert der mobilen Kommunikation ist heute unbestritten und laufend werden neue Services und Anwendungen fuer mobile Geraete entwickelt.

Diese Arbeit soll das Konzept der Echtzeit-Ansteuerung von Software durch mobile Geraete behandeln und Moeglichkeiten aufzeigen dies anhand eines konkreten Beispiels zu demonstrieren. ueberdies werden verschiedene Schulungsmassnahmen fuer den Einsatz und die Inbetriebnahme aufgezeigt.

1.1 Problemstellung

Durch technische Innovationen werden die mobilen Geraete immer leistungsfaehiger. Laut einer Umfrage des Meinungsforschungsinstituts GfK im Maerz und April 2007 koennen sich 11% der oesterreicher zwar auf Fernseher und 6% auf ihr Auto verzichten, jedoch nur vier Prozent koennen sich ein Leben ohne Handy vorstellen [New07] ueberdies verwenden die meisten Handynutzer kaum alle angebotenen Funktionen, die uns die technischen Innovationen anbieten. Abbildung 1 - ueberblick ueber die genutzten Handyfunktionen [TNF Infratest, 2006] - zeigt die Nutzung spezifischer Handyservices.

Daraus ist gut ersichtlich, dass kaum Dienste zur Datenuebertragung genutzt werden. Loesungen, die es ermoeglichen, Daten mittels des Mobiltelefons zu uebertragen um zum Beispiel Befehle an Computer bzw. Server in Echtzeit zu senden, bedingen entweder oertlicher Praesenz (Bluetooth, Wireless LAN) auf Grund der Reichweitenbeschraenkung des Signals oder spezieller Datendienste (GPRS[1], WAP[2],...) mit einem zu entwickelnden UserInterface oder mittels Commandzeilenbefehlen.

Die vorliegende Arbeit beschaeftigt sich nun mit der Fragestellung, welche Signaluebertragungsmoeglichkeit sich fuer einen speziellen Anwendungsfall - in Bezug auf oertlichen Einsatz und zur Verfuegung stehender Datendienste - als besonders geeignet auszeichnen.

Im vorliegenden Fall wird der Einsatz mobiler Dienste zur Kontrolle einer Spieleapplikation bei einer Veranstaltung untersucht. Dabei werden spezielle Anforderungen wie Echtzeitfaehigkeit, oertliche Verfuegbarkeit, technologischer Bedarf etc. sowohl an das uebertragungs-, als auch das Empfangssystem gestellt.

Ein wesentliches Kriterium stellt die Echtzeitproblematik dar. Der Begriff Echtzeit wird nach DIN Norm 44300 wie folgt definiert:

„Echtzeitbetrieb ist ein Betrieb eines Rechensystems, bei dem Programme zur Verarbeitung anfallender Daten staendig derart betriebsbereit sind, dass die Verarbeitungsergebnisse innerhalb einer vorgegebenen Zeitspanne verfuegbar sind" [Ste00].

Das heisst, ein Echtzeitsystem muss nicht besonders schnell sein, sondern es muss mit der Berechnung bzw. dem Ausfuehren bestimmter Aktivitaeten in einer vordefinierten Zeitspanne zuverlaessig fertig sein. Diese Zeitdauer kann auch Stunden oder Tage betragen.

Fuer den vorliegenden Anwendungsfall muessen somit verschiedenen Technologien auf ihr Echtzeitverhalten hin untersucht werden um eine angemessene Reaktion auf eine Benutzeraktion aufzuweisen.

Weiters gilt es auch Moeglichkeiten zum Einsatz und zur Inbetriebnahme didaktisch in Form von Schulungsunterlagen aufzuzeigen. Dabei sollen die Unterlagen bzw. Moeglichkeiten einerseits fuer potentielle Kunden geeignet sein, das System erfolgreich einzusetzen, aber auch - ausgehend von einem Unternehmen, das dieses System anbietet - interne Schulungsmassnahmen aufgezeigt werden.

1.2 Motivation

Als konkreten Anwendungsfall fuer einen Prototypen zur Ansteuerung von Software mittels mobiler Endgeraete (Mobiltelefone) wurde das Szenario einer Grossveranstaltung gewaehlt, bei dem auf einer Videoleinwand ein selbst entwickelter Klon des bekannten Spiels Pac-Man von namco [Tho07] steuerbar ist. Dabei ist ein wichtiger Aspekt in wie weit welche uebertragungsmoeglichkeit unter welchen oertlichen Bedingungen ein optimales Ergebnis liefert.

1.3 Aufbau der Arbeit

Um eine Software zur Steuerung von Computersystemen mittels echtzeitbasierender Signalerkennung zu konzipieren und in Folge zu entwickeln sind gewisse Grundlagen notwendig.

Eine Aufstellung und ein Vergleich moeglicher Signaluebertragungsarten, wobei auch die Kriterien definiert werden, anhand welcher entschieden wird welche uebertragungsformen fuer den vorliegenden Anwendungsfall relevant sind, wird in Kapitel 2 erlaeutert.

Im anschliessenden Kapitel 3 wird die Signalempfangs- und auswertungsmoeglichkeit nach deren speziellen Anforderungen anhand von ausgewaehlten Einrichtungen und Methoden evaluiert.

Die aus Kapitel 2 und 3 erarbeiteten Ergebnisse werden in Form von Prototypen in Kapitel 4 dargestellt. Dies umfasst sowohl die Herangehensweise, als auch die Architektur, die dafuer verwendet wurde, bevor weitere Applikationsanwendungen aufgelistet und eroertert werden. In weiterer Folge wird im folgenden Kapitel 5 die Messergebnisse aufgezeigt.

Das Kapitel 6 erlaeutert Schulungsmassnahmen in zweierlei Hinsicht. Neben den Moeglichkeiten potentiellen Kunden den Einsatz bzw. Inbetriebnahme des Systems unter Zuhilfenahme didaktischer Massnahmen naeherzubringen, sollen auch interne Schulungsmassnahmen mittels verschiedener Moeglichkeiten Programmierer, Kundensupport und Vertrieb optimal in das System einfuehren.

Abschliessend fasst Kapitel 7 die wesentlichen Erkenntnisse zusammen und gibt einen Ausblick in die Zukunft.

2 Aufstellung und Vergleich der moeglichen Signaluebertragungsmoeglichkeiten

Der in der vorliegenden Arbeit zu evaluierende und zu entwickelnde Anwendungsfall - die Ansteuerung einer Spieleapplikation mittels mobiler Endgeraete auf einer externen Peripherie waehrend einer Grossveranstaltung - wird in diesem Kapitel hinsichtlich der Signaluebertragungsmoeglichkeiten dargestellt. Dabei gilt es zuerst Kriterien - die aufgrund der Anwendung erforderlich sind - zu definieren und in weiterer Folge durch ausgewaehlte Technologien zu evaluieren um schlussendlich eine geeignete Signaluebermittlungstechnologie zu finden.

2.1 Systemanforderung und -eigenschaften

Um eine Spieleapplikation fuer eine Veranstaltung zu realisieren sind die benoetigten Eigenschaften fuer dieses System festzuhalten. Hierbei wird nun hauptsaechlich auf die Eigenschaften und Anforderungen der Technologie eingegangen ohne Ruecksicht auf Aus- und Belastung, die unter anderem durch die z.B. begrenzte Anzahl an gleichzeitig verfuegbaren Mobilfunkkanaelen auftritt, zu nehmen.

Die folgende Abb. 2 zeigt den schematischen Aufbau des Systems, welches Benutzern mit mobilen Endgeraeten die Moeglichkeit bieten soll, interaktiv mit einem Computersystem zu agieren und das Resultat auf einem externen Anzeigegeraet zu visualisieren. Dabei soll die Interaktion zwischen dem Computersystem und dem Benutzer auf dem Weg passieren, dass eine manuelle Eingabe am mobilen Endgeraet als visuelles Resultat auf einer externen Peripherie (Videoleinwand, Monitor, etc.) wieder den Benutzer erreicht. Die Ausgabe soll somit nur auf einer externen Peripherie erfolgen und das mobile Endgeraet dient lediglich zur Informationsuebermittlung.

Die Anforderungen an das System koennen wie folgt beschrieben werden: Dem Benutzer muss es mit den technologisch einfachsten Mitteln moeglich sein eine Verbindung zwischen seinem mobilen Geraet und dem signalverarbeitenden System aufzunehmen. Bei der uebermittlung der Informationen gilt es diese nahezu in Echtzeit zu uebertragen, performant auszuwerten und die entsprechende Aktion auszufuehren, wobei auf diesen Faktor speziell in Kapitel 4 eingegangen wird.

Weiters ist ein wesentliches Kriterium die leichte Adaptions- bzw. Erweiterbarkeit des Systems um neue (Spiele-)Applikationen ohne groessere Programmiertaetigkeit aufsetzen zu koennen.

2.2 Kriteriendefinition

Fuer die Wahl einer geeigneten Signaluebertragung gilt es Kriterien zu definieren, anhand derer eine Beurteilung getroffen werden kann. Fuer den vorliegenden Anwendungsfall gilt es die Technologien auf folgende Kriterien / Anforderungen hin zu bewerten:

  • Ortsunabhaengigkeit
  • Ein wesentlicher Punkt ist die oertliche Unabhaengigkeit zwischen Endgeraet und Signalempfangseinrichtung. Bei einer Veranstaltung kann diese Entfernung durchaus von 5 m bis zu 100 m betragen und moeglicherweise Stoerungen durch elektrische Geraete, elektromagnetische Stoerungen etc. auftreten. Daher ist es einer der wesentlichsten Punkte die Reichweiten der jeweiligen Technologien zu untersuchen, wobei 100 m als Vorgabe fuer die oertliche Beschraenkung in Betracht gezogen werden. Der Benutzer soll dabei die Applikation moeglichst ohne bemerkenswerte Beeintraechtigung durch Verminderung der Signalstaerke nutzen koennen.

  • Technologiebedarf / Verfuegbarkeit der Technologie
  • Der Technologiebedarf bezieht sich auf die Ausstattung bzw. die Verfuegbarkeit der noetigen mobilen Endgeraete zur Signaluebermittlung. Sobald das System auf Technologien zurueckgreift, deren Entwicklungen erst vor kurzem abgeschlossen wurde oder Endgeraete eingesetzt werden muessen, die kaum verbreitet sind bzw. fuer die entsprechende Zielgruppe nicht verfuegbar sind, gilt dies als zu hohen Technologiebedarf. Der Benutzer soll dabei moeglichst schnell Zugang zum System finden.

  • Auslastung
  • Die geplante Spieleapplikation wird fuer maximal vier Beteiligte konzipiert werden. Da es theoretisch moeglich ist, beliebige Applikationen fuer beliebig viele Mitspieler zu entwickeln kann es bei einer Veranstaltung durchaus vorkommen, dass die Applikation zahlreich genutzt wird bzw. laufend versucht wird Zugang zum Spiel zu erhalten.

    Je nach Kommunikationstechnologie ergeben sich dabei verschiedene auslastungsspezifische Probleme. Bei der Wahl der Technologie ist demnach darauf zu achten, dass z.B. bei der Nutzung des GSM-Standards zur uebertragung der Informationen zwischen mobilem Endgeraet und Signalempfangseinrichtung genuegend freie Kapazitaeten fuer die anfallenden Telefongespraeche vorhanden sind. ueberdies - sofern man wieder von der Signaluebertragung per GSM-Standard ausgeht - kann es vorkommen, dass durch die Applikation dauerhaft mehrere Mobilfunkkanaele belegt werden.

    Somit ist bei der Auslastungsproblematik darauf zu achten, dass trotz laufender und intensiver Nutzung der Spieleapplikation dies keinen oder nur minimalen Einfluss auf bestehende Systeme hat.

    Da ein Grossteil der Anwendungen auf bis zu 4 Spieler angesetzt ist, gilt dies gleichzeitig als Vorgabe fuer die maximal gleichzeitigen Kommunikationsteilnehmer.

  • Echtzeitverhalten

Die Reaktionszeit steht im direkten Einfluss auf die Spielsteuerung. Dabei gilt es das Signal auf schnellstmoeglichem Weg zwischen mobilem Endgeraet und Signalempfangseinrichtung zu uebertragen und in Folge auszuwerten. Wie unter Punkt 1.1 beschrieben, bedeutet Echtzeitbetrieb, dass die Verarbeitungsergebnisse innerhalb einer vorgegebenen Zeitspanne verfuegbar sind. Die Verarbeitung der Daten zwischen Signalempfangseinrichtung und dem sichtbaren Resultat auf der externen Peripherie durch die programmiertechnische Auswertung der Informationen kann hierbei vernachlaessigt werden. Der weitaus groessere Anteil an Verzoegerung entsteht aufgrund der gewaehlten uebertragungsform und ist jene Zeit zwischen dem Ausloesen eines Ereignisses - z.B. das uebermitteln eines Steuerungsbefehls mittels des Endgeraetes - und der Aktualisierung auf einem Anzeigegeraet. Ein weiterer Aspekt ist die Behandlung des alten Zustandes durch das System, bevor eine neue Steuerungsinformation bedingt durch die Zeitverzoegerung verarbeitet wurde. Dabei gilt es nun Grenzen fuer die maximale Verzoegerung im Echtzeitbetrieb vom Mehrspieler-Applikation zu definieren. An der University of British Colombia wurde hierzu eine Studie von Applikationen nach [Pan08] durchgefuehrt:

12 Teilnehmer wurden unter verschiedenen Bedingungen (unterschiedliche Verzoegerungszeit waehrend des Spiels) waehrend einer Mehrspieler-Rennfahrsimulation getestet. Anzumerken bei dieser Art der Anwendung ist, dass es sich hierbei um eine komplexe 3D Applikation handelt, bei der sich eine Verzoegerung wesentlich staerker als bei „einfachen" Spielen auswirkt. Um die fuer das Spielverhalten zumutbare Verzoegerung festzustellen wurde folgender Versuchsaufbau implementiert:

Abbildung 4 illustriert den Ablauf des Testaufbaus. Nach Ausloesen und Positionsaktualisierung des Events wird ein aktueller Zeitstempel generiert und mit den anderen Mitspielern verglichen, waehrend diese ueber den Internetzugang mit messbarer Verzoegerung laufend die Applikation weiter nutzen. Bei dem Probanden wird - sichtbar unter t3 -die Verzoegerungsdauer um einen bestimmten Wert in Relation zur Internetnutzung erhoeht und die Ergebnisse - siehe Abbildung 5 - dokumentiert.

Um fuer die verschiedenen Technologien einen Ausgangswert fuer die Berechnung der Datenuebertragung zu fixieren, muss eine gemeinsame Vergleichsbasis geschaffen werden, da - je nach Technologie - zwischen Latenzzeit und Datenuebertragungsrate unterschieden wird. Somit bietet sich die Latenzzeit zu untersuchen an, da fuer alle Technologien hier Vergleichswerte erarbeitet werden koennen.

Eine Spieleraktion - je eine Eingabe am Mobilgeraet - kann dabei innerhalb von maximal 250 ms auftreten. Diese Verzoegerungszeit ist als Signal-uebermittlung aufgrund der gewaehlten uebertragungstechnologie zu sehen inkl. gegebenenfalls notwendiger Einwahlverfahren und zzgl. Softwarebearbeitungszeit.

Fuer den GSM-Bereich wurde an der University of Surrey eine Studie zur echtzeitbasierten Datenuebertragung ueber den GSM-Sprachkanal fuer Datenapplikationen [Kat09] bzw. zur Sprach- und Datenuebertragung ueber den GSM-Sprachkanal [Kat04] publiziert. Dabei wurde ein sprachaehnliches Signal erzeugt und ueber ein Add-On Modul - verbunden mit einem Headset - an ein zweites Geraet uebermittelt - siehe folgende Abbildung 6.

2.3 GPRS - General Packet Radio Service

2.3.1 Allgemeines

Ins Deutsche uebersetzt bedeutet General Packet Radio Service in etwa "Allgemein paketorientierter Funkdienst", der im Bereich Mobilfunk eingesetzt wird. Bei der Datenuebertragung wird dabei nur virtuell eine dauerhafte Verbindung aufgebaut, daher wird ein Funkkanal nur dann fuer einen Benutzer reserviert, wenn Daten uebertragen werden. So koennen andere Teilnehmer ebenfalls Daten senden/empfangen und die Leerzeiten des Systems optimal nutzen. Die Vergebuehrung von GPRS-Verbindungen basiert somit auf der benoetigten Datenmenge im Gegensatz zur Verrechnung nach Verbindungsdauer bei Sprachverbindungen. Ein grosser Vorteil von GPRS ist, dass ein Nutzer zumindest theoretisch mit dem Mobilfunknetz verbunden ist ohne staendig eine neue Verbindung aufbauen zu muessen.

Bei der paketorientierten uebermittlung mittels GPRS werden die Daten in einzelne Pakete beim Sender umgewandelt und nach der uebertragung beim Empfaenger wieder zusammengesetzt. Dabei gibt es durch die Spezifikation keine Hoechstgrenze fuer die Datenuebertragungsrate, diese wird jedoch durch die technische Realisierung des Mobilfunknetzes und den Gegebenheiten der Mobilstation begrenzt. In den Spezifikationen werden vier verschiedene Kodierungsschemata unterschieden: Coding-Scheme CS-1 bis CS-4. Je nach verwendeter Kodierung bzw. Anwendung variiert dabei die Datenuebertragungsrate. Ein wesentlicher Unterschied der Schemata sind die eingesetzten Fehlerkorrekturverfahren, die wiederum im direkten Zusammenhang mit der maximal erreichbaren Datenuebertragungsrate stehen, wie in der folgenden Tabelle ersichtlich [Leh03].

In der Tabelle werden jeweils zwei Datenraten angegeben, eine Datenrate fuer die Nutzung eines einzelnen Zeitschlitzes, sowie eine Datenuebertragungsrate bei theoretischer Nutzung von acht Zeitschlitzen. Der Begriff „Zeitschlitz" im Bereich der Mobilfunktechnologie kann dabei wie folgt erlaeutert werden:

Begriffserklaerung Zeitschlitz im Bereich Mobilfunk

Bei Sprachdiensten im Bereich des Mobilfunks wird eine uebertragungsfrequenz unter - bis zu - acht Teilnehmern aufgeteilt. Jedem dieser Teilnehmer wird dabei ein sogenannter "Zeitschlitz" zugewiesen. Pro Sendestation ist dabei zumindest ein Signalisierungszeitschlitz notwendig. Die folgende Abbildung 8 demonstriert die Signalform eines Funkkanals. Sobald zwei Frequenzen auf einer Station zur Verfuegung stehen, gibt es 16 Zeitschlitze, davon ein Signalisierungszeitschlitz und 15 Sprachkanaele.

Die obere Darstellung zeigt die Signaldauer bei einem einzelnen Mobilfunkteilnehmer aus dessen Sicht. Es werden 4,6 ms in acht Zeitschlitze / Zeitintervalle geteilt und in den daraus resultierenden 577 µs werden 114 Bits an Daten eines bestimmten Teilnehmers uebermittelt.

Die darunterliegende Abbildung zeigt die Signalnutzung aus der Sicht einer Mobilfunk-Basisstation, die in diesem Beispiel mit acht Mobiltelefonen kommuniziert. Hierbei ist gut ersichtlich, dass nach dem achten Zeitschlitz - somit einem Zeitrahmen von 4,6ms - der naechste Zeitrahmen beginnt und der abgeschlossene Zeitrahmen uebertragen wird. Obwohl durch die minimale zeitliche Verzoegerung und somit hohe Wiederholungsrate die Sprachqualitaet dadurch nicht beeintraechtigt wird, kann sich die Latenzzeit je nach Systemdesign erhoehen. Dies hat eine Verzoegerung der Sprache zur Folge.

2.3.2 Kriterienevaluierung und -initialisierung

2.3.2.1 Kriterium: Ortsunabhaengigkeit

Die Reichweitenvorgabe (5 m - 100 m) zwischen dem User mit seinem Mobiltelefon und der Anzeige auf eine Projektionsleinwand bzw. Display bei einer Veranstaltung kann ohne Probleme eingehalten werden - sofern ein Mobilfunk-Empfang gegeben ist - da keine Sichtverbindung notwendig bzw. lokalen Einschraenkungen gegeben sind.

2.3.2.2 Kriterium: Technologiebedarf / Verfuegbarkeit der Technologie

Der Technologiebedarf kann als relativ gering bezeichnet werden. Nahezu mit jedem gaengigem Mobilfunkgeraet, das zum Telefonieren verwendet werden kann - ist ein GPRS-Verbindungsaufbau moeglich. Dabei gilt es im Wesentlichen nur die richtigen Einstellungen - je nach Mobilfunkanbieter - zu konfigurieren.

Die Netzabdeckung im Bereich GSM/GPRS liegt in oesterreich bei allen Mobilfunkanbietern in etwa gleich und kann anhand folgender Abbildung illustriert werden, in dem die Netzabdeckung grau dargestellt wird:

Somit kann eine Netzabdeckung - je nach Mobilfunkanbieter - von mindestens 98 % erreicht werden und alle notwendigen ortsabhaengigen Kriterien erfuellt werden [Ora08] [Mob08] [TMo08].

2.3.2.3 Kriterium: Auslastung

Wie schon im allgemeinen bzw. beschreibenden Teil zu GPRS gezeigt, stehen nur begrenzte Zeitschlitze zur Verfuegung. Fuer GPRS-Verbindungen werden ueblicherweise einige wenige Zeitschlitze fix reserviert. Dies bedeutet dennoch, dass bei hoher Auslastung durch Telefonate die Datenrate bei GPRS sinkt, aber nicht gaenzlich 0 wird. Weit kritischer ist die Verzoegerung bei vielen Datennutzern, da die wenigen Zeitschlitze zwischen allen Datennutzern aufgeteilt werden muessen. Die GPRS-Technologie eignet sich somit nicht fuer zeitkritische Anwendungen.

2.3.2.4 Kriterium: Echtzeitverhalten

Die uebertragungsdauer ist bei konventioneller Nutzung des GPRS ueber den geforderten Maximalzeiten. Durch die Tatsache, dass nach der uebermittlung der Paketdaten der Funkkanal wieder freigegeben wird und danach ein Einwahlverfahren wieder eingeleitet werden muss, kann hier keine performante uebertragung des Signals gewaehrleistet werden. Eine Moeglichkeit waere, zu Lasten der Auslastung eine dauerhafte Verbindung aufzubauen. Diese Loesung ist dennoch nicht zielfuehrend, da die Latenzzeit im Sekundenbereich liegen kann wenn das Telefon die Funkressourcen - trotz dauerhafter Verbindung - neu anfordert.

2.3.3 Zusammenfassung der Kriterien

Die nachfolgende Tabelle zeigt im ueberblick die zu erwartenden Ergebnisse der einzelnen Kriterien bei Verwendung der GPRS-Technologie:

Die GPRS-Technologie eignet sich fuer die untersuchten Kriterien ueberwiegend gut. Die Ortsunabhaengigkeit ist lediglich auf die Verfuegbarkeit von GPRS beschraenkt, die in oesterreich annaehernd flaechendeckend gegeben ist.

Der Technologiebedarf ist ebenfalls als gut einzustufen, da weitgehend alle Mobiltelefone die GPRS Funktionalitaet besitzen. Obwohl die Auslastung kein Problem darstellt, ist das damit verbundene Echtzeitverhalten keinesfalls fuer zeitkritische Anwendungen geeignet, da die Latenzzeit im Sekundenbereich moeglich ist.

2.4 GSM-Sprachuebertragung / DTMF

2.4.1 Allgemeines

Das „Global System for Mobile Communications", kurz GSM, ist ein volldigitaler Mobilfunknetz-Standard.

GSM ist mit Sicherheit ein erfolgreicher Entwicklungsschritt der modernen Informationstechnologie. Neben dem Aspekt, dass es fuer weitere Systeme wie z.B. UMTS als Systemarchitektur diente, ist es wirtschaftlich ein erstaunlicher Erfolg: Persoenliche Mobilitaet verbunden mit universeller Erreichbarkeit. Weitere wichtige technische Merkmale sind eine internationale, grenzuebergreifende Erreichbarkeit sowie eine hohe uebertragungsqualitaet und Zuverlaessigkeit.

In der Literatur wird die GSM-Funkschnittstelle auch als Um-Schnittstelle bezeichnet. Die Funkrichtung vom GSM-Mobilgeraet zur Basisstation wird als Uplink bezeichnet, die entgegengesetzte Richtung als Downlink [Elk07b]. Fuer die Sprachverbindung werden zwei Kanaele benoetigt (Uplink und Downlink).

Zur uebertragung wird einerseits das Frequenzmultiplexing[3], andererseits das Zeitmultiplexing[4] herangezogen [Geo00] . Dazu wird das GSM-Frequenzband in 200 kHz grosse Kanaele unterteilt, wobei Senderichtung und Empfangsrichtung getrennt voneinander zu behandeln sind. Beim in oesterreich verwendeten Frequenzbereich von 900 MHz wird das Frequenzband 935 - 960 MHz in 124 Kanaele fuer die Abwaertsrichtung (Downlink) und von 890 - 915 MHz in 124 Kanaele in die Aufwaertsrichtung aufgeteilt.

Wie in Abbildung 10 ersichtlich wird eine Traegerfrequenz wiederum in acht Nutzkanaele bzw. Zeitschlitze aufgeteilt. In jedem dieser ca. 0,577 ms langen Zeitschlitze werden 156,25 Bit an Daten uebertragen. Dies ergibt sich aus der Summe der in Abbildung 10 gezeigten Aufteilung eines GSM-Zeitschlitzes zuzueglich der Datenmenge fuer den Datenstrom-Verwaltungsoverhead.

Somit stehen 124 Traegerfrequenzen mit je 8 Sprachverbindungen zur Verfuegung.

Als Steuersignal, das ueber den Sprachkanal uebertragen werden kann, ist das Mehrfrequenzwahlverfahren (MVF) - oder international besser bekannt als Dual Tone Multifrequency (DTMF) bestens geeignet.

Die DTMF-Toene, die beim Druecken einer Zifferntaste waehrend eines Gespraechs hoerbar sind, setzen sich aus zwei uebereinander gelagerten sinusfoermigen Tonsignalen zusammen. Die nachfolgende Tabelle illustriert die Frequenz-Paare. Dabei repraesentiert jede Zeile einen tiefen Ton, jede Spalte einen hohen. Wenn die Taste „1" gedrueckt wird ergibt sich ein Ton aus der ueberlagerung von 697 Hz und 1209 Hz.

2.4.2 Kriterienevaluierung und -initialisierung

2.4.2.1 Kriterium: Ortsunabhaengigkeit

Die Reichweitenvorgabe (5 m - 100 m) kann - sofern ein Mobilfunk-Empfang gegeben ist - ohne Probleme eingehalten werden. Es ist keine Sichtverbindung noetig, somit kann dieses Kriterium vollstaendig erfuellt werden.

2.4.2.2 Kriterium: Technologiebedarf / Verfuegbarkeit der Technologie

Da fuer die uebermittlung von DTMF-Toenen keinerlei zusaetzliche technologischen Eigenschaften benoetigt werden, ist der Bedarf an Technologie nicht relevant. Zur uebertragung der Signale wird der Sprachkanal benoetigt, der wiederum bei jedem Mobiltelefon vorhanden sein muss.

Wie schon beim GPRS-Technologiebedarf (Punkt 2.3.2.2) angefuehrt, kann von einer 98%-igen Netzabdeckung in oesterreich ausgegangen werden. Dadurch koennen die Erwartungen an die Technologieverfuegbarkeit zur Gaenze erfuellt werden.

2.4.2.3 Kriterium: Auslastung

Wie schon im allgemeinen bzw. beschreibenden Teil zu GPRS (siehe 2.3.1 ) gezeigt, stehen nur begrenzte Zeitschlitze zur Verfuegung. Analog zu GPRS besteht hier ebenfalls eine sehr geringe Wahrscheinlichkeit der ueberlastung des Mobilfunknetzes aufgrund einer Mehrnutzung bei Veranstaltungen.

2.4.2.4 Kriterium: Echtzeitverhalten

Um das Echtzeitverhalten zu beschreiben muss etwas weiter ausgeholt werden. Einem Mobilfunk-Teilnehmer steht in einem Zeitschlitz 22 kBit/s zur uebertragung - von Daten und Sprache - zur Verfuegung und durch Steuerungsaufgaben reduziert sich die tatsaechlich nutzbare Bitrate auf in etwa 13 kBit/s. Ein weiterer Faktor ist der uebertragungsweg (Luft) und der dadurch resultierenden hohen Fehleranfaelligkeit. Aufgrund dieser Tatsachen wurde ein Algorithmus mit der Bezeichnung RPE/LTP-LPC (Regular Pulse Excitation/Long Term Prediction - Linear Predictive Coding) entwickelt und zusaetzlich eine Sprechpausenerkennung (Voice Activity Detection) integriert, mit dem Zweck Sprechpausen zu erkennen, und fuer diesen Zeitraum die Datenuebertragung abzuschalten. Da meistens nicht beide Gespraechspartner gleichzeitig interagieren (sprechen), kann allein damit schon in etwa 50 % der Bandbreite eingespart werden. Praktisch pendelt sich das Einsparungspotential auf ca. 40% ein. Durch den Umstand, dass in den Pausen nicht gesendet wird, wird ebenfalls Akkuleistung gespart.

Beim Druecken einer Taste wird der hoerbare Tasten- bzw. DTMF-Ton nicht im Mobiltelefon erzeugt, sondern in der Vermittlungsstelle, dem Mobile Switching Center. Das Telefon sendet hierzu beim Druecken einer Taste die entsprechende Information ueber den Signalisierungskanal an den MSC, welcher Ton gestartet und gestoppt werden soll. Schlussendlich wird beim Ton zum Empfangshandy via Sprachkanal uebertragen.

Bei der uebermittlung des Signals gibt es in der Literatur keine konkreten Angaben zur Latenzzeit. Nachdem fuer eine Erkennung eines DTMF-Tons in der Literatur verschiedene Werte empfohlen werden, kann eine durchschnittliche minimale Dauer eines DTMF Tons mit 50 ms und eine Pausezeit zwischen zwei DTMF Toenen mit ebenfalls 50 ms angenommen werden, die jedoch in der Zwischenzeit nicht relevant ist, da diese Pause-Zeit als Auswertungszeit angesehen werden kann [Joe09] [Wer06]. Insgesamt ergibt dies nun mindestens 100 ms fuer die uebermittlung und Auswertung eines DTMF-Tons. Dieser Wert liegt - wie in Tabelle 1 - Auswertung Verzoegerung bei Multiplayer-Spielen ersichtlich - in einem akzeptablen Bereich.

2.4.3 Zusammenfassung der Kriterien

Die nachfolgende Tabelle zeigt im ueberblick die zu erwartenden Ergebnisse der einzelnen Kriterien bei Verwendung der DTMF-Technologie:

Die DTMF-Technologie eignet sich fuer die untersuchten Kriterien ueberwiegend sehr gut. Die Ortsunabhaengigkeit ist lediglich auf die Verfuegbarkeit von Mobilfunk beschraenkt, die in oesterreich annaehernd flaechendeckend gegeben ist.

Der Technologiebedarf ist bei einem Mobiltelefon nicht relevant, da lediglich eine Sprachverbindung aufgebaut werden muss. Auslastung und sind fuer den angedachten Anwendungsfall ebenfalls hervorragend geeignet, da eine 100%ige Auslastung kaum erreicht wird und das Echtzeitverhalten exzellente Werte erwarten laesst.

2.5 Wireless LAN

2.5.1 Allgemeines

WLAN (Abkuerzung fuer Wireless Local Area Network) bezeichnet ein lokales Funknetzwerk und dient zur kabellosen uebermittlung von Daten ueber eine Entfernung bis 300 m, je nach Umgebung und Hindernissen. Auch die uebertragungsgeschwindigkeit variiert je nach Protokoll und Technologie zw. maximal 2 MBit/s (IEEE 802.11 Standard) und 300 MBit/s (IEEE 802.11n).

Ein WLAN - Netzwerk kann dabei in verschiedenen Modi betrieben werden:

  • Infrastruktur-Modus
  • Dieser Modus aehnelt im Aufbau dem Mobilfunknetz. Der sogenannte Access Point uebernimmt die Rolle der Basisstation und sendet in einstellbaren Intervallen von ueblicherweise 10-mal pro Sekunde Datenpakete an alle Stationen im Empfangsbereich (Clients), ueblicherweise Laptops, PocketPCs, Mobiltelefone etc. mit WLAN-Modul. Dabei werden unter anderem der Netzwerkname (SSID - Service Set Identifier), die Art der Verschluesselung sowie die Liste unterstuetzter uebertragungsarten gesendet.

  • Ad-hoc-Modus

Bei diesem Modus ist jeder Station gleichberechtigt - eine Basisstation gibt es in diesem Fall nicht - und das Netzwerk laesst sich schnell und ohne grossen Aufwand einrichten. Die Netzwerkkoordination erfolgt zwischen den Endgeraeten, wobei keine Datenpakete zwischen den Geraeten weitergeleitet werden. Generell werden keine Informationen weitergeleitet, die den einzelnen Geraeten ueberblick ueber das gesamte Netzwerk geben. Ein Problem dieser Form des Netzwerks ist die Tatsache, dass sich alle Geraete innerhalb des Empfangsbereichs befinden muessen um untereinander interagieren zu koennen. Um dieses Problem zu beheben gibt es die Moeglichkeit die teilnehmenden Stationen mit einer Routing-Faehigkeit auszustatten um ggf. Daten an Geraete weiterzuleiten, die sich nicht im Sendbereich zueinander befinden - ein mobiles Ad-hoc-Netzwerk.

Fuer das vorliegende Projekt ist lediglich der Infrastruktur-Modus interessant, da sich mehrere Clients mit einem Access Point verbinden sollen und mit diesem Daten austauschen. Ein Interagieren der Clients untereinander ist nicht relevant.

Zur ueberbrueckung von groesseren Distanzen koennen weiters sogenannte Repeater eingesetzt werden. Dabei agiert der WLAN-Repeater nicht als Signalverstaerker im eigentlichen Sinne. Der Repeater baut ein weiteres Netzwerk auf, in welches sich Clients bei Bedarf einbuchen koennen. Ein Nachteil ist die damit verbundene Halbierung der uebertragungsrate, da sowohl mit dem Access-Point als auch mit den Clients kommuniziert wird.

2.5.2 Kriterienevaluierung und -initialisierung

2.5.2.1 Kriterium: Ortsunabhaengigkeit

Wie schon in der allgemeinen WLAN-Beschreibung erwaehnt liegt die maximale uebertragungsstrecke bei 300 m, je nach Beschaffenheit der Umgebung. WLAN mit dem IEEE 802.11b und 802.11g Standard funken z.B. im 2,4 GHz Bereich mit einer Wellenlaenge von 13 cm. Dabei stellen die Leitfaehigkeit des Materials zw. Access Point und Client, als auch die Wellenlaenge zwei wesentliche Faktoren fuer die uebertragungsqualitaet dar.

Je staerker die Leitfaehigkeit des Materials zw. Access Point und Client, desto staerker ist der Abschwaechungseffekt gegeben [Hag06]. Weiters stellen Objekte mit einer Dicke von mehr als 13 cm ein starkes Hindernis dar.

In dem Fall, dass keine Sichtverbindung zwischen Client und Access Point vorliegt, spielt die Wellenlaenge eine wichtige Rolle. Hier koennen diverse Welleneffekte (Reflexionen, ueberlagerungen, Beugungen, etc.) auftreten und das Signal beeinflussen. Hier gilt grundsaetzlich: Je hoeher die Frequenz des Signals, desto lichtaehnlicher ist dessen Verhalten.

Das Kriterium Ortsunabhaengigkeit ist zum Grossteil gegeben. Eine Verbesserung kann zwar mit WLAN-Repeatern erreicht werden, jedoch ist zusaetzlicher Aufwand in Form von Hardware, Installation und Konfiguration damit verbunden.

2.5.2.2 Kriterium: Technologiebedarf / Verfuegbarkeit der Technologie

Der Technologiebedarf ist als sehr hoch anzusehen. Neben der Installation und Konfiguration der Access-Points muessen die jeweiligen Nutzer ein WLAN-faehiges Endgeraet besitzen und dementsprechend konfigurieren. Dies ist je nach Alter der Nutzer und Technologieaffinitaet ein mehr oder weniger grosses Problem.

2.5.2.3 Kriterium: Auslastung

Die Auslastungproblematik ist bei der WLAN-Technologie nicht gegeben, da durch Inbetriebnahme von mehr Access-Points auch die verfuegbare Clientanzahl steigt.

2.5.2.4 Kriterium: Echtzeitverhalten

Die uebertragungsgeschwindigkeit variiert je nach Protokoll und Technologie zw. maximal 2 MBit/s (IEEE 802.11 Standard) und 300 MBit/s (IEEE 802.11n). Die uebertragungsgeschwindigkeit ist trotz eventueller baulicher Beeintraechtigungen fuer den Einsatzzweck ausreichend. Es ist darauf zu achten, dass die Latenzzeit durch den Verbindungsaufbau zw. Client und Access Point programmiertechnisch minimal zu halten bzw. eine dauerhafte Verbindung aufzubauen.

2.6 Bluetooth

2.6.1 Allgemeines

Bluetooth wurde in den 1990iger Jahren von der Firma Ericsson entwickelt und spaeter von einem Konsortium (IBM, Intel, Nokia, Toshiba u.a.) weiterentwickelt. Der Ansatz fuer die Entwicklung der Technologie war und ist es eine energiesparende und preiswerte Funkverbindung zu entwickeln, die Datenuebertragung ueber eine Kurzstrecke ermoeglicht [Gum07]. Dabei ist es ueblich zwei Geraete direkt miteinander zu verbinden, Tastatur / Maus mit einem PC, mobile Endgeraete zum Austausch von Daten etc.

Das Bluetooth-Netzwerk kann bis zu 255 Teilnehmer umfassen, davon koennen acht Bluetooth-Geraete gleichzeitig aktiv sein waehrenddessen die uebrigen 247 geparkt werden. Alle nicht aktiven Geraete koennen im Parkmodus die Synchronisation halten und auf Anfrage im Netz aktiviert werden. Dieses sogenannte Piconetz besteht aus Master- und Slavegeraeten, wobei auf einen Master, der die Kommunikation steuert und Sendebereiche (Zeitslots) vergibt, bis zu sieben Slaves kommen.

Wie in Abbildung 12 dargestellt kann ein Bluetooth-Geraet in mehreren Piconetzen eingebucht sein, wobei das Geraet nur in einem Netz als Master deklariert werden kann.

Ein Scatternet besteht aus bis zu 10 Piconetzwerken, wobei die Teilnehmer untereinander in Kontakt treten koennen. Die Kommunikation der Piconetzwerke untereinander beeintraechtigt die Datenuebertragung wesentlich.

2.6.2 Kriterienevaluierung und -initialisierung

2.6.2.1 Kriterium: Ortsunabhaengigkeit

Nachfolgende Tabelle gibt einen ueberblick ueber die Reichweite der verschiedenen Bluetooth-Klassen. Mobiltelefone werden meist mit Klasse 2 oder 3 ausgestattet, Bluetooth-USB-Sticks fuer PCs sind in allen Klassen verfuegbar.

Durch die Moeglichkeit von Scatternetzwerken und der Verwendung von Klasse 1 - Mastergeraeten ist eine komplette Abdeckung fuer eine flaechendeckende Veranstaltung an Bluetooth-Netzwerken moeglich. Hierbei ist darauf zu achten, die Netzwerke so zu organisieren, dass die sich durch die Scatternetze bedingte Reduzierung der uebertragungsgeschwindigkeit keinen zu grossen Einfluss auf das Echtzeitverhalten nimmt.

2.6.2.2 Kriterium: Technologiebedarf / Verfuegbarkeit der Technologie

Die Bewertung kann nur grob erfolgen, da sich, je nach Veranstaltung bzw. Einsatz des Systems, das Publikum dementsprechend aendert und somit die technologische Verfuegbarkeit in Form von bluetoothfaehigen Mobilgeraeten variiert. Als durchschnittlich wird der Technologiebedarf angesehen, da derzeit hauptsaechlich Pocket-PCs und Business-Mobiltelefone mit Bluetooth ausgestattet sind. Da der Fortschritt bei der technologischen Ausstattung von Mobilgeraeten konstant steigt, wird die Bluetooth-Funktionalitaet zukuenftig nahezu auf jedem Geraet verfuegbar sein.

2.6.2.3 Kriterium: Auslastung

Wie schon im allgemeinen Teil erlaeutert kann jedes Bluetooth-Netzwerk bis zu 255 Teilnehmer umfassen, davon 8 gleichzeitig aktiv. Dieser Umstand erfuellt alle gestellten Anforderungen zur Gaenze.

2.6.2.4 Kriterium: Echtzeitverhalten

Bluetooth-Datenuebertragungen haben eine Bruttodurchsatz von 1 MBit/s, abzueglich der uebermittlung von Steuerbefehlen und Protokolldaten ergibt sich bei einer asymmetrischen Bluetooth-Verbindung eine Netto-Datenrate von 723,2 kBit/s (Download) und 57,6 kBit/s (Upload), bei symmetrischer Verbindung koennen in jeder Richtung 432,6 kBit pro Sekunde uebertragen werden [Ele09]. Durch EDR (Enhanced Data Rate) kann die Brutto-Datenrate auf bis zu 3 MBit/s erhoeht werden und Netto-Datenraten von bis zu 2 MBit/s ermoeglichen. Zu beachten ist die sich verringernde uebertragungsgeschwindigkeit bei Scatternetzwerken, sofern noetig.

Bei der asymmetrischen Bluetooth-Verbindung ist die uebertragungsgschwindigkeit beim Upload sehr gering, jedoch durch den Einsatz der symmetrischen Verbindung bzw. EDR vollkommen ausreichend fuer den Anwendungsfall. Somit ist die Latenzzeit als ausreichend gering fuer den Einsatz.

2.7 Conclusio

Nach der Definition der Kriterien, die fuer eine echtzeitbasierende Ansteuerung von Software durch mobile Geraete notwendig sind, zeigt die nachfolgende Tabelle die Auswertung der gewonnenen Erkenntnisse.

Nach Gegenueberstellung der verschiedenen Technologien ist gut ersichtlich, dass sowohl GPRS, als auch WLAN teilweise nicht geeignet sind und somit fuer eine weitere Betrachtung als uebertragungstechnologie nicht in Frage kommen. Weiters ist die Signaluebertragung mittels GSM/DTMF als gut bzw. sehr gut geeignet einzustufen und als Alternative die Bluetooth-Technologie heranzuziehen.

Im folgenden Kapitel 3 - Aufstellung und Vergleich der moeglichen Signalempfangs und -auswertungsmoeglichkeiten - werden die moeglichen Signalempfangseinrichtungen und -auswertungsmoeglichkeiten behandelt um darauffolgend eine Entscheidung fuer die Entwicklung zwei ausgewaehlter Prototypen zu erlangen. Aus den Ergebnissen der uebertragungstechnologie zeichnet sich jedoch ab, DTMF und Bluetooth prototypenhaft zu entwickeln.

Aufstellung und Vergleich der moeglichen Signaluebertragungsmoeglichkeiten 15

3 Aufstellung und Vergleich der moeglichen Signalempfangs und -auswertungsmoeglichkeiten

Dieses Kapitel befasst sich mit dem ueberblick und anschliessendem Vergleich moeglicher Signaleinrichtungen - basierend auf den vorgestellten uebertragungstechniken (siehe Kapitel 2) - sowie der Beschreibung ihrer Auswertungsmoeglichkeiten.

3.1 Anforderungen an die Empfangseinrichtung

Im Gegensatz zu den uebertragungstechnologien sind hier Auswertungsgeschwindigkeit - das Echtzeitverhalten - von Signalen und die Auslastung der Empfangseinrichtung und Signalauswertung im Vordergrund.

  • Echtzeitverhalten
  • Bei der Kriteriendefinition des Echtzeitverhaltens (siehe 2.2) wurden Werte zw. 0 und maximal 200 ms als Gesamt-Zeitdauer festgelegt, in dem sich die uebertragung vom Nutzer zur Empfangseinrichtung - als auch Auswertung durch diese - befinden muss. Nur durch eine Messung der Latenz- bzw. uebertragungszeit beim Empfangsgeraet - genauer gesagt nach der programmtechnischen Auswertung des Signals - kann eine aussagekraeftige Zeitdauer angegeben werden. Dabei wird angenommen, dass der groesste Zeitverlust waehrend der uebertragung stattfindet, und ein vergleichsweise geringer Teil auf die programmiertechnische Auswertung faellt.

    wobei davon ausgegangen wird, dass die uebertragungsdauer den groessten Zeitanteil beansprucht.

  • Auslastung

Bei der Auslastung an die Empfangseinrichtung koennen die Anforderungen wie folgt definiert werden: Die steuerbare Applikation ist fuer 4 Nutzer auszulegen (siehe 2.2) und somit gilt diese Anzahl auch als Auslastungskriterium. Hierbei soll jedoch auch die Erweiterungsmoeglichkeit in Betracht gezogen werden, damit auch im Falle von mehr Nutzern keine Auslastungsengpaesse entstehen.

3.2 ueberblick moeglicher Empfangseinrichtungen

3.2.1 Internet-Applikationsserver

Fuer die uebertragungstechnologie GPRS wird als „Empfangseinrichtung" ein Webserver benoetigt. Dieser Applikationsserver ist ohne grossen Aufwand zu installieren und administrieren. Hinsichtlich der Auslastung ist ein Webserver optimal geeignet, da er zahlreiche Anfragen in kurzer Zeit verarbeiten kann. Der wesentliche Nachteil fuer den Einsatz eines Internet-Applikationsservers ist die notwendige Mobilitaet, die sich durch ggf. wechselnde Veranstaltungen ergibt.

Bei der Verwendung von WLAN ist kein externer Webserver notwendig, da ein lokales Netzwerk aufgebaut werden muss und der jeweilige Client als Server fungiert. Auch die Auslastungsproblematik ist nicht vorhanden, da - wie beim Webserver - zahlreiche Anfragen ausgewertet werden koennen.

3.2.2 Bluetooth-Empfaenger

Bluetooth-Empfaenger sind in mehreren Varianten verfuegbar - als interne Steckkarte, als auch als USB-Version. Wie schon bei den uebertragungstechnologien (siehe 2.6.1) erlaeutert, koennen bis zu 8 aktive Teilnehmer in einem Bluetooth-Netzwerk untereinander agieren und Daten austauschen. Aus diesem Grund ist die Auslastungsproblematik nicht gegeben und die Erweiterbarkeit kann durch Installation mehrerer Bluetooth-Empfaenger erreicht werden.

Die Reichweite kann bei Bluetooth - Klasse 1 bis zu 100 m betragen. Dies ist in den meisten Faellen ausreichend, da die Reichweite der Nutzer ebenfalls zw. 10 m und 100 m liegt.

3.2.3 DTMF - Erkennung durch Hard- und Software

3.2.3.1 Erkennung durch Software

Die Erkennung durch Software wird ueber die Soundkarte des Steuer- bzw. Applikationscomputers vorgenommen. Es wird das Tonsignal am Mikrofoneingang abgenommen und softwaretechnisch ausgewertet. Dadurch ist die Nutzerzahl beschraenkt durch die Moeglichkeit interne bzw. externe Soundkarten anzuschliessen. Mit der Moeglichkeit von USB-Soundkarten und USB-Schnittstellen koennen somit ohne Probleme die Signale von vier oder mehr Nutzern ausgewertet werden.

Um DTMF-Toene (Beschreibung DTMF siehe Kapitel 2.4.1) mittels Software erkennen und auswerten zu koennen gilt es das Frequenzpaar, das den Ton bildet, zu ermitteln und die Einzelfrequenzen zu extrahieren. Dazu wird bei der Erkennung durch Software das mathematische Verfahren der Fast Fourier Transformation angewendet.

Fast Fourier Transformation

Die Fast Fourier Transformation ist eine Version der diskreten Fourier Transformation zur schnelleren Berechnung dieser Transformation, entwickelt durch Joseph Fourier. Der grosse Vorteil gegenueber der diskreten Fourier Transformation ist die ueberlegene Ausfuehrungsgeschwindigkeit.

Durch die Fourier-Transformation lassen sich Signale in Form von Zeitpunkt und Abtastwert in die Form Frequenzanteil, Amplitude und Phase ueberfuehren. Die Grundidee der Fourier-Transformation ist, ein Signal als Summe verschiedener Sinuskurven mit unterschiedlicher Frequenz und Amplitude darzustellen.

Durch die Fast Fourier Transformation ist es moeglich die DTMF - Toene eines (Mobil-)Telefons in digital auszuwertende Signale mit moeglichst geringem Rechenaufwand umzuwandeln.

Methodik der Fast Fourier Transformation

In Abbildung 13 wird demonstriert, wie sich das rote Signal aus den uebrigen Einzelsinus-Signalen zusammensetzt. Daraus ist ersichtlich, dass sich jedes beliebige Signal aus einer Summe aus Einzelsignalen zusammensetzt, wobei jedes dieser Einzelsignale eine unterschiedliche Amplitude und Phase besitzt bzw. besitzen kann, siehe Abbildung 14.

Ohne mathematisch Beschreibung kann gesagt werden, dass bei der Anwendung der Fast Fourier Transformation das Signal in einzelne Sinus-Signale mit ihrer entsprechenden Amplitude und Frequenz aufgeteilt wird. Jedes dieser Einzelsignale repraesentiert ein Frequenzband. Daraus kann wiederum das Frequenzspektrum des Ausgangssignals rekonstruiert werden.

Folgende Qualitaetskriterien spielen dabei eine Rolle [Juer03]:

  • Abtastrate
  • Durch die Abtastrate fa wird die maximale Frequenz des Spektrums bestimmt und gibt die Haeufigkeit an, mit der ein Signal pro Zeitintervall abgetastet wird. Durch fmax = fa / 2 ergibt sich somit die maximal wiederherstellbare Frequenz in Abhaengigkeit der Abtastrate. Bei einer beispielhaften Abtastrate von 0,2ms (und somit einer Abtastfrequenz von 5kHz) ist die maximal wiederherstellbare Frequenz 2,5 kHz.

  • Abtastzeit

Dieser Parameter bestimmt die Bandbreite jedes Kanals. Wird beispielsweise eine Abtastzeit von 100 ms gewaehlt ergibt sich daraus eine Bandbreite von 10 Hz.

Bei der Anzahl der Abtastungen bei der Fast Fourier Transformation muss gewaehrleistet sein, dass dies ein Vielfaches von 2 ist (2, 4, 8, 16, 32, ..., 256, 512, ... 65536,... allgemein 2n). Bei einer Abtastrate von 0,2 ms und einer Abtastzeit von 100 ms wuerde dies 500 Abtastungen ergeben. Demnach muss eine Abtastzeit von 102,4 ms gewaehlt werden um 512 Abtastungen zu gewaehrleisten.

Das Ergebnis in dem gewaehlten Beispiel mittels Fast Fourier Transformation sieht wie folgt aus:

  • 256 Einzel-Sinuskurven wobei jede Kurve eine
  • 9,7656 Hz Bandbreite zw. 0 und 2,5 kHz besitzt
  • Als weiteres Beispiel demonstriert die nachfolgende Abbildung folgendes Szenario:

  • 16 Abtastungen
  • Abtastrate 1 ms

Das Ergebnis sind acht einzelne Sinuskurven mit je einer Bandbreite 62,5 Hz, wobei die maximale Frequenz 500 Hz betraegt.

Mathematische Beschreibung der Fast Fourier Transformation

Da die Fast Fourier Transformation eine Weiterentwicklung der diskreten Fourier Transformation darstellt, muss auch bei der mathematischen Beschreibung von der Definition der diskreten Fourier Transformation ausgegangen werden. Folgend wird die Herleitung der Fast Fourier Transformation nach [Ber05] beschrieben.

Wie aus Formel 1 ersichtlich werden zur Berechnung der diskreten Fourier Transformation N-1 Additionen und N Multiplikationen benoetigt. Um nun alle Frequenzstellen in Abhaengigkeit der Anzahl der Abtastwerte zu berechnen sind daher N x N Multiplikationen sowie N x (N-1) Additionen notwendig [Ber05]. Der Rechenaufwand fuer die diskrete Fourier Transformation ergibt somit in etwa N².

Um in weiterer Folge die Rechenschritte zu minimieren und die Geschwindigkeit zu maximieren laesst sich daraus in mehreren Umformungsschritten der Algorithmus der Fast Fourier Transformation gewinnen. Die Voraussetzung ist jedoch, dass die Anzahl der Abtastwerte (N) einer Zweierpotenz entspricht.

Herleitung der Fast Fourier Transformation Der erste Schritt zur Herleitung des Algorithmus der Fast Fourier Transformation ist die Aufteilung der Abtastwerte in eine gerade und eine ungerade Folge:

Formel 5 zeigt den ersten Schritt in Richtung Fast Fourier Transformation. Die N/2 - Punkte der diskreten Fourier Transformation werden durch X1[k] und X2[k] repraesentiert. Dadurch sind eine Zerlegung des Signals und eine Minimierung der Rechenleistung ersichtlich.

Rechenaufwand nach Zwischenschritt

Wie beschrieben betraegt der Rechenaufwand bei der DFT in etwa die Anzahl der Abtastwerte zum Quadrat (N²). Durch Zerlegung in Teilfolgen benoetigt nun jeder N/2 Punkt (N/2)² Rechenoperationen, in Summe ergibt dies - fuer beide Teilfolgen - 2 (N/2)² Rechenoperationen zuzueglich von N Operationen mit dem Drehfaktor folgenden Rechenaufwand:

Rechenaufwand einer Fast Fourier Transformation

Als weiterer Faktor neben der Anzahl der Abtastwerte (N) ist auch die Anzahl der Zerlegungsschritte, die nach [Rued01] log2(N) betraegt, relevant.

Im Allgemeinen ergibt sich durch vollstaendigen Ersatz von Multiplikationen und Additionen einer diskreten Fourier Transformation ein Gesamtrechenaufwand von N log2(N).

Vergleich Rechenaufwand DFT gegenueber FFT

Anhand der nachfolgenden Rechenbeispiele soll der Rechenaufwand der diskreten gegenueber der Fast Fourier Transformation veranschaulicht werden:

3.3 Conclusio

Beim Internet-Applikationsserver mit einer GPRS uebertragung besteht der grosse Vorteil in der Auslastung. Da Webserver unter einer grossen Anzahl an Anfragen operieren koennen gibt es diesbezueglich keine Auslastungsproblematik. Der Nachteil liegt in der unflexiblen Positionierung des Internet-Servers, da eine staendige und performante Verbindung zum Internet gegeben sein muss. Wie schon bei den uebertragungstechnologien aufgezeigt, ist die uebertragung durch GPRS nicht performant genug um alle Anforderungen zu erfuellen. Ergaenzt durch die unflexible Positionierung des Webservers ist GPRS fuer das Vorhaben nicht geeignet.

Der Empfang per WLAN-uebertragung hat neben dem Vorteil der Auslastung - hier ist wieder ein Applikationsserver noetig, der standardmaessig eine Vielzahl an eingehenden Verbindungen effizient verwalten kann - auch nicht die Problematik der Ortsgebundenheit eines Webservers. Da jedoch aufgrund der uebertragungstechnologie der Technologiebedarf als zu hoch eingestuft wurde, ist WLAN ebenfalls nicht fuer das Vorhaben geeignet.

Betrachtet man bei der Bluetooth-Empfangseinrichtung die moegliche Anzahl an Nutzern, so kann die Anforderung von vier Nutzern ohne Probleme erfuellt werden. Auch die Flexibilitaet bei der Platzierung des Applikationsserver ist wesentlich besser als GPRS, die Reichweite ist im Vergleich zu den anderen Technologien gering, jedoch ausreichend fuer die gestellten Anforderungen (100 m). In Anbetracht der Eigenschaften der uebertragungstechnologie und den Eigenschaften der Empfangseinrichtung wird ein Prototyp unter Bluetooth-Verwendung realisiert.

Bei der DTMF-Empfangseinrichtung ist in der Hardware- als auch Softwareloesung zu unterscheiden. Beginnend mit der Hardwareloesung ist festzustellen, dass ein erheblicher Aufwand an verschiedenen elektronischen Elementen notwendig ist, der dann an die oertlichen Gegebenheiten anzupassen waere. Dies koennte sein, dass z.B. nur ein ISDN- oder Analoganschluss verfuegbar ist. ueberdies sind ggf. Einstellungen an der Elektronik aufgrund verschiedener Eingangspegel vorzunehmen, die den Aufwand erhoehen. Somit wird diese Loesung nicht als Prototyp realisiert.

Letztlich ist bei der DTMF-Erkennung mittels Software festzustellen, dass hier zwar der Algorithmus zur Erkennung umgesetzt und justiert werden muss, jedoch sonst keine weiteren Anpassungen an Software oder Geraeten vorgenommen werden muessen. Diese Loesung eignet sich besonders gut fuer den flexiblen Einsatz, da die Ortsgebundenheit sich nur durch den GSM-Empfang einschraenkt. Als Nachteil ist zu sehen, dass fuer jeden Nutzer eine weitere Empfangseinrichtung in Form einer internen oder externen Soundkarte einzurichten ist. In Summe ist diese Loesung jedoch fuer dieses Vorhaben ideal geeignet und wird ebenfalls prototypenhaft realisiert.

4 Konzipierung und Implementierung ausgewaehlter Prototypen

Das folgende Kapitel widmet sich der Umsetzung eines Prototyps zur Erkennung und Auswertung der ueber das GSM-Netz uebermittelten Tastentoene (DTMF-Toene) und als weitere exemplarische Ausarbeitung ein Prototyp zur Steuerung von Software mittels Bluetooth - uebertragung.

Ziel des Systemdesigns ist es, moeglichst performante Prototypen zu realisieren, die dennoch flexibel fuer Erweiterungen sind. Dafuer wird ein entsprechendes Software-Framework bereitgestellt, um eine moeglichst einfache Integration der diversen Technologien zu gewaehrleisten.

Folgendes Szenario gilt es dabei aufgrund der ermittelten Ergebnisse fuer eine Softwareloesung zur Erkennung von DTMF-Toenen zu realisieren:

  • Herstellen einer Verbindung zwischen eines handelsueblichen Mobiltelefons mit der Soundkarte eines Computers.
  • Verbindung zwischen diesem am Computer verbundenen Mobiltelefon und einem User - ebenfalls ausgestattet mit einem Mobiltelefon.
  • Erstellen einer Schnittstellensoftware zum Erkennen der vom User uebermittelten Tasten.
  • Erstellung von Szenarien und Testfaellen fuer den praktischen Einsatz und zur Demonstration der Software.

Fuer die Signaluebertragung und -verarbeitung mittels Bluetooth gilt es folgende Punkte zu realisieren:

  • Herstellen einer Verbindung zwischen eines handelsueblichen Mobiltelefons mit einem Bluetooth-Adapter am Computer.
  • Erstellen einer Schnittstellensoftware zum Erkennen der vom User uebermittelten Signale und Informationen.
  • Auswertung der Signale und Erstellung von Szenarien und Testfaellen fuer den praktischen Einsatz und zur Demonstration der Software.

4.1 Herangehensweise

4.1.1 DTMF - Erkennung

Durch die Erkenntnisse aus Kapitel 3 wird als grundlegendes Berechnungsverfahren die Fast Fourier Transformation gewaehlt. Ein weiterer wichtiger und entscheidender Faktor ist die performante und nahezu in Echtzeit auszulesenden und auszuwertenden DTMF - Toene. Dies kann ebenfalls durch die Methodik der Fast Fourier Transformation erreicht werden.

Ein wesentlicher Faktor bei der Wahl der Entwicklungswerkzeuge und Programmiersprachen ist die Wahl der Plattform fuer den Einsatz des Produktes.

Dabei kommt einerseits die Programmiersprache C# zum Einsatz. Einerseits bietet sie die Moeglichkeit Windows- und Webapplikationen zu erstellen, sowie den performanten C++ Code, der die Berechnungen und Programmlogik enthaelt - einzubinden.

4.1.2 Bluetooth - uebertragung

Bei der Bluetooth-uebertragung liegt das Hauptaugenmerk bei den beiden Applikationen - die Applikation am Client, die die Daten an den Master (Applikationsserver) liefert und dort mittels Applikation dementsprechend ausgewertet und umgesetzt werden muss. Bei der Programmiersprache stehen neben Visual Basic, QBasic, Java auch C++ und C# zur Auswahl. Durch die Tatsache, dass die Applikation in das Framework eingebunden wird, wird die Wahl der Entwicklungssprache auf die der Programmiersprache des Frameworks fallen.

Zuerst wird die clientseitige Applikation entwickelt, die die Daten uebermittelt, anschliessend die Applikation, die am Applikationsserver die Daten entgegennimmt, auswertet und in entsprechende Aktionen umsetzt.

4.2 Softwarearchitektur

4.2.1 ueberblick

4.2.2 Core

GUI, Business-Logic-Layer und Data-Layer werden im „Core", dem Programmkern zusammengefasst. Hier befinden sich die Hauptbestandteile der Applikation.

Signal Input

Die einzelnen moeglichen uebertragungsformen (DTMF, Wireless LAN, Bluetooth, GPRS,...) korrespondieren aufgrund ihres unterschiedlichen Aufbaus und Programmierung als gekapselte und selbststaendig lauffaehige Module mit dem Business-Logic-Layer. In der web.config - der Applikationskonfiguration - werden die verfuegbaren uebertragungsmodule aktiviert bzw. deaktiviert.

User Interface

Das User Interface stellt die Interaktion mit dem User dar. Hier werden Daten an den Business-Logic-Layer uebergeben bzw. Daten vom Business-Logic-Layer empfangen um diese Daten anzuzeigen. Als Schnittstellenobjekte dienen Request- und Response-Messages, die ueber Datencontainer die mit dem Business-Logic-Layer kommunizieren. Dies verschafft groesstmoegliche Flexibilitaet bei der Entwicklung.

Business-Logic-Layer

Der Business-Logic-Layer beinhaltet die primaere Programmlogik, hier werden Berechnungen, Auswertungen, Berechtigungsueberpruefungen, Simulationen etc. durchgefuehrt. Weiters dient der Business-Logic-Layer als Schnittstelle fuer externe Datenelemente - den Data-Layer.

Data-Layer

Der Data-Layer beinhaltet im Wesentlichen die Anbindung an externe Datenquellen wie Datenbank, Fileserver, Webserver, Files etc. Die Parameter und der Aufruf erfolgen ueber den Business-Logic-Layer und die Resultate werden wieder an den Business-Logic-Layer uebermittelt.

4.2.3 Framework

Das Framework bilden Exception-Management, Business-Entities, Constants und Utilities. Alle Programmteile im Programmkern ("Core") haben Zugriff auf das Framework um Funktionen und Methoden zu nutzen.

Das Exception-Management hat die Aufgabe waehrend der Laufzeit auftretende Fehler abzufangen und zu protokollieren. Das passiert durch einen Eintrag in ein Logfile und / oder durch das Versenden eines Mails an den Systembetreuer. Durch das Protokollieren mit dem aktuellen Zeitstempel und der Ursache des Fehlers ist es leicht moeglich die Fehler zu lokalisieren und beheben.

Die Utilities-Library beinhaltet verschiedenste Hilfsprogramme bzw. Klassen um diverse Programmablaeufe zu optimieren und eine optimale Effizienz zu erlangen.

Einige Beispiele hierfuer sind:

  • dynamisches Anlegen von grafischen Elementen
  • Optimierung von Texten fuer die Speicherung in Datenbanken
  • Serialisierung von XML Ergebnissen fuer eine einfachere Darstellung

Die Constants-Library garantiert Applikationsweite eindeutige ID's fuer diverse Variablen. Hier werden konstante Variablen angelegt um in den verschiedenen Applikationsteilen, bedingt durch Entwicklung von mehreren Programmierern, eindeutige Bezeichnungen zu definieren.

4.2.4 Business Entities

Die Business-Entities beinhalten die Datenobjekte. Sie sind leere Datencontainer fuer die Instanzierung und Bereitstellung von Dateninformationsobjekten.

Die Datenobjekte beinhalten:

  • Konstruktoren
  • Properties

4.2.5 Vorteile der Struktur

Folgende Vorteile koennen durch diese Struktur gewaehrleistet werden:

  • Klare Abgrenzung der einzelnen Module / Teilbereiche
  • Leichte und schnelle Einbindung weiterer Programmteile (uebertragungstechnologien)
  • Geeignet fuer Projekte mit mehreren Programmierern um uebersichtlichkeit zu gewaehrleisten
  • Modular: es muessen bei Bedarf nur einzelne Bereiche aktualisiert werden
  • Wiederverwendbarkeit: Teile koennen fuer andere Projekte weiterverwendet werden

4.3 Prototypenentwicklung zur DTMF - Erkennung

Im nun folgenden Abschnitt wird die Entwicklung des Prototyps exemplarisch beschrieben, der ausfuehrliche Programmcode befindet sich im Anhang dieser Arbeit.

4.3.1 Auswahl der Software-Tools

Folgende Entwicklungswerkzeuge wurden zur Realisierung des Prototyps benoetigt:

  • Entwicklung der C++ Programmteile:
  • MS Visual Studio.NET 2005 - Visual C++

  • Entwicklung der C# Applikation sowie Testprogramme:
  • MS Visual Studio.NET 2005 - Visual C#

    ASP.NET Framework in der Version 2.0 (http://www.microsoft.com/germany/msdn/vstudio/products/default.mspx)

  • Konzept und Entwuerfe:
  • MS Office Visio 2003 (http://office.microsoft.com)

    UMLet (http://www.umlet.com)

  • Datenbanksystem

Fuer das vorliegende Projekt wird im Prototypen-Stadium keine Datenbank bzw. kein Datenbank-Management-System benoetigt. Fuer die weiterfuehrenden Entwicklungsstufen und Entwicklung eines eigenstaendigen Produktes wird es in Folge notwendig sein ein Datenbanksystem zu verwenden. Aus diesem Grund wird der SQL Server 2005 in der Express-Edition (http://www.microsoft.com/germany/msdn/ vstudio/products/express/sql/default.mspx) als Datenbanksystem angedacht.

4.3.2 Aufbau der Software

Um nun auf das Kernelement des Programms einzugehen, zeigt folgende Abbildung den systematischen Aufbau des Softwaremoduls.

Um den prinzipiellen Aufbau des Programms aufzuzeigen demonstriert Abbildung 23 die Verschachtelung der einzelnen Programmiersprachen. Die Speicherverwaltung und eigentliche Berechnung sowie Analyse des Eingangssignals erfolgt mittels C++.

Der Programmteil, der mit C# geschrieben wurde, dient als Kommunikationsschnittstelle zu externen Systemen, da durch die Eigenschaft der objektorientierten Programmiersprache sowie umfangreicher Programmbibliotheken das Spektrum an moeglichen Anwendungsfaellen zur Gaenze abgedeckt werden kann.

Neben der Eigenschaft der universellen Programmiersprache eignet sich C++ hervorragend zur Systemprogrammierung. C++ unterstuetzt nach [Str00] und [Mue07] weiters mehrere Programmierparadigmen:

  • prozedurales Programmieren
  • objektorientiertes Programmieren: Klassen, einfache und mehrfache Vererbung, Polymorphismus
  • modulares Programmieren: ueberladen von Funktionen nach Argumenttypen, Namespaces zur Einschraenkung von Sichtbarkeitsbereichen
  • generisches Programmieren: Typen und Konstanten als Parameter fuer Funktionen und Klassen

Die objektorientierte Programmiersprache C# wurde aufgrund der guten Integrationsmoeglichkeit des C++ Codes gewaehlt. ueberdies bietet dieses Entwicklungswerkzeug zahlreiche Bibliotheken zur Erstellung von Windows- und Webapplikationen.

4.3.3 Fast Fourier Transformation & DTMF Erkennung

Einerseits muss die Abtastfrequenz muss mindestens doppelt so hoch sein, wie die maximal im Analogsignal vorkommende Signalfrequenz, andererseits ist aufgrund der zu verarbeitenden Datenmenge eine geeignete und dennoch moeglichst niedrige Abtastfrequenz zu waehlen. 11.025 Abtastungen - dies ist fuer Telefonqualitaet und einen Audiokanal (mono) ausreichend -ergeben ein Abtast-Intervall von ca. 0,045 ms und bilden die Grundlage der Fast Fourier Transformation im vorliegenden Programm. Dabei reicht das Frequenzspektrum von ca. 21,5 Hz bis in etwa 5534 Hz mit einer Bandbreite von ~43Hz. Dies ergibt wiederum ca. 128 Frequenzbaender.

Ein zu beachtender Faktor ist ebenfalls die Automatic Gain Control, kurz AGC[5]. Dabei wird der Durchschnittswert eines Frequenzbandes berechnet zwischen dem niedrigsten vorkommenden DTMF Ton und dem hoechsten DTMF Ton, der erkannt wurde.

Um dies als Parameter variabel zu gestalten und die Empfindlichkeit zu variieren wurde der "Threshold"-Parameter eingefuehrt, der gemeinsam mit der Angabe der Soundkarte als Programmaufruf dient. Damit kann der Amplitudenlevel des DTMF-Tons zur Erkennung gesteuert werden. Erst bei Erreichen bzw. ueberschreiten des „Threshold"- Levels wird eine Erkennung moeglich. Dabei steuert die AGC den Aufnahmepegel der Soundkarte automatisch und gibt einen Normalisierungswert vor.

4.3.4 Implementierung der Fast Fourier Transformation

Die Funktionsweise der Fast Fourier Transformation ist die Aufspaltung eines Signals in Zeitschlitze, alle definiert durch eine Abtastung. Der zweite Schritt ist die Berechnung der Frequenz die mit dem Zeitsignal korrespondiert. Im letzten Schritt wird das Spektrum in einzelne Frequenzspektren umgewandelt.

Abbildung 27 zeigt beispielhaft die Aufspaltung des Signals. Im Beispiel wird ein Signal mit 16 Abtastungen innerhalb von vier separaten Schritten aufgespaltet. In der ersten Stufe wird das 16-Punkt Signal in ein jeweils 8-Punkt Signal - jeweils in einen geraden und ungeraden Teilbereich - geteilt. Nach der zweiten Stufe wurde das Signal in vier gleich grosse Teilsignale geteilt und endet sobald je ein einzelner Punkt erreicht wird.

Um ein besseres Verstaendnis fuer die Aufteilung zu bekommen kann auch mathematisch nach der Formel log2(N) vorgegangen werden. Somit koennen die Schritte der Aufteilung berechnet werden, z.B. das in Abbildung 27 gezeigte 16-Punkt Signal benoetigt vier Schritte, 4096-Punkte benoetigen 12 Stufen usw.

Nachdem die Struktur der Aufteilung beschrieben wurde ist der naechste Schritt die Sortierung und Neuanordnung der Samples. Abbildung 26 verdeutlicht die Sortierung, wobei auf der linken Seite die Originalsamples als dezimale und binaere Bezeichnung aufgelistet sind. Auf der rechten Seite befinden sich die umgruppierten Samples - siehe zum Vergleich Abbildung 25 - ebenfalls mit den binaeren aequivalenten. Die Idee ist nun, dass die binaeren Zahlen jeweils die Umkehr der anderen binaeren Zahl ist. Sample 3 (0011) wird vertauscht mit Sample 12 (1100), ebenso Sample 14 (1110) wechselt den Platz mit Sample 7 (0111) und so weiter. In dem zu entwickelnden Programm wird dieses Verfahren ebenfalls angewendet.

Der weitere und letzte Schritt ist das nun entstandene Frequenzspektrum in der exakten Reihenfolge zu rekonstruieren um die berechneten Daten in der chronologisch richtigen Reihenfolge zu sortieren. Der entsprechende Code ist im Anhang ersichtlich.

4.3.5 Threading

Unter Threading versteht man die Aufteilung eines Prozesses in verschiedene parallele Ablaeufe. Waehrend der Entwicklung wurde eine performante Loesung gesucht, moeglichst ohne Zeitverlust und effizient zu ueberpruefen ob weitere DTMF-Toene an das System von einem externen Mobiltelefon uebermittelt wurden.

Aus diesem Grund wurde das Threading gewaehlt und wie in der folgenden Abbildung 27 gezeigt wird, werden im Abstand von 100 ms ueberprueft ob weitere DTMF-Toene auszuwerten sind.

4.3.6 Schnittstelle zu C#

Um nun auf eine objektorientierte Schnittstelle aufzubauen wurde die Erkennung der DTMF-Toene samt Berechnung der Fast Fourier Transformation - ausgelagert in C / C++ Programme - als Dynamic Link Library[6] realisiert.

Damit agiert die Erkennung und Auswertung der DTMF-Tonsignale als eigenstaendige Software in Form der Programmbibliothek „DtfmDll.dll" und kann leicht integriert werden. Auch der Aufruf bzw. das Starten der Erkennung ist - wie in der nachfolgenden Abbildung ersichtlich - einfach zu implementieren:

4.4 Prototypenentwicklung zur Bluetooth-uebertragung

4.4.1 Auswahl der Software-Tools

Analog zu den Entwicklungswerkzeugen bei der DTMF-Erkennung wurden folgende Softwarewerkzeuge zur Realisierung des Prototyps benoetigt:

  • Entwicklung der C# Applikation fuer Client als auch Master sowie Testprogramme:
  • MS Visual Studio.NET 2005 - Visual C#

    ASP.NET Framework in der Version 2.0 (http://www.microsoft.com/germany/msdn/vstudio/products/default.mspx)

  • Datenbanksystem

Fuer das vorliegende Projekt wird im Prototypen-Stadium keine Datenbank bzw. kein Datenbank-Management-System benoetigt. Fuer die weiterfuehrenden Entwicklungsstufen und Entwicklung eines eigenstaendigen Produktes wird es in Folge notwendig sein ein Datenbanksystem zu verwenden. Aus diesem Grund wird der SQL Server 2005 in der Express-Edition (http://www.microsoft.com/germany/msdn/vstudio/products/express/sql/default.mspx) als Datenbanksystem angedacht.

4.4.2 Aufbau der Software

Abbildung 31 zeigt den Aufbau die beiden Programmelemente fuer das Senden von Daten durch den Client als auch das Empfangen und Auswerten der Daten durch den Master (Applikationsserver). Durch die Verfuegbarkeit von freien Programmbibliotheken zur Ansteuerung von Bluetoothgeraeten und der einfachen Integration in das Framework wurde die Programmiersprache C# gewaehlt. ueberdies bietet C# zahlreiche Bibliotheken zur Erstellung von Windows- und Webapplikationen.

4.4.3 Bluetooth - Sendapplikation

Als Entwicklungswerkzeug wurde C# herangezogen. Das Framework bietet saemtliche Funktionen zur Realisierung fuer ein mobiles Endgeraet - hier wurde ein Pocket PC mit Windows Mobile 2003 gewaehlt.

Folgende Funktionen muessen hierzu implementiert werden:

  • Suche nach Bluetooth-Geraeten (zum Auffinden des Applikationsservers)
  • Verbindung mit dem Applikationsserver
  • uebermitteln von Daten (zur Spielfigurensteuerung)
  • Beenden der Verbindung

Die nachfolgenden Abbildungen 33 - 36 illustrieren die Code-Elemente fuer die Initialisierung, Suche und Verbindung von Bluetooth-Geraeten.

Zu Beginn wird - wie in Abbildung 33 gezeigt - nach der ueberpruefung auf Verfuegbarkeit von Bluetooth, eine Instanz fuer den Client angelegt. Die Klasse BluetoothClient enthaelt alle fuer die Kommunikation notwendigen Funktionen bzw. Methoden.

Nach der erfolgreichen ueberpruefung auf Verfuegbarkeit von Bluetooth gilt es den Applikationsserver bzw. alle verfuegbaren Bluetooth-Geraete in Reichweite zu finden. Der Programmteil findet sich in der nachfolgenden Abbildung. Nach dem Aufruf von DiscoverDevices() werden die verfuegbaren Netzwerke in einer uebersichtsliste ausgegeben (cmbDevices). Dies ermoeglicht eine nachtraegliche Wahl, sollten mehr als ein Applikationsserver zur Verfuegung stehen.

Anschliessend ist der Verbindungsaufbau mit dem zuvor ausgewaehlten Applikationsserver zu taetigen. Hierzu wird eine neue Instanz der BluetoothEndPoint Klasse mit dem gewaehlten Applikationsserver und einer eindeutigen ID zur Zuweisung (service) angelegt - siehe Abbildung 35.

Sobald die Verbindung aufgebaut worden ist, kann mit der uebermittlung der Steuerdaten fuer die Spielfigurbewegung begonnen werden. Dabei wurden die fuer den Prototypen die Cursor-Tasten des Pocket-PCs (links, rechts, oben, unten und Enter, die Mitteltaste) herangezogen. Die nachfolgende Abbildung 36 zeigt die uebermittlung der Tasten.

4.4.4 Bluetooth - Empfangsapplikation

Die Empfangsapplikation hat die Aufgabe, die vom Client uebermittelten Daten zu empfangen und auszuwerten. Die Aufgaben des Applikationsservers sehen wie folgt aus:

  • Initialisieren des Bluetooth-Geraets
  • Warten auf Datenempfang
  • Datenauswertung und Steueraktion ausloesen

Die Initialisierung ist analog zum Client, deshalb wird hier lediglich auf den Datenempfang und Auswertung eingegangen.

Abbildung 37 zeigt auszugsweise wie der Datenempfang ausgewertet wird. Die Funktion ListenLoop() laeuft in einem eigenen Prozess und wartet kontinuierlich auf einen Datenempfang. Solange der Prozess laeuft werden Daten fuer die Steuerung erwartet und bei Ankunft ausgelesen, ausgewertet und in Folge verarbeitet. Durch die Verfuegbarkeit von Klassen und Methoden, die das .NET Framework zur Verfuegung stellt, gestaltet sich das Programm sehr kompakt und effizient.

4.5 Conclusio

Fuer die Implementierung der beiden Prototypen wurde die Programmiersprache C# und teilweise C++ verwendet. Es wurde ein prototypenuebergreifendes Framework konzipiert und entwickelt, das es ermoeglicht, modulweise neue uebertragungstechnologien zu integrieren.

Bei der DTMF Erkennung besteht der groesste Aufwand in der Wahl der geeigneten effizienten und performanten Programmiersprache(n) und der Implementierung der Fourier Transformation, im Vergleich zu der Entwicklung des Bluetooth-Prototypen ein erheblicher programmiertechnischer Mehraufwand.

Der groesste Nachteil bei Verwendung der Bluetooth-Kommunikation ist die Notwendigkeit, fuer jedes mobile Betriebssystem einen eigenen Client entwickeln zu muessen. Weiters muss dieser Client auch am entsprechenden mobilen Endgeraet installiert werden. Dies ist als grosser Nachteil gegenueber der Programmierung der DTMF-Erkennung zu sehen.

Nach der Implementierung gilt es nun alle Erkenntnisse und Vorgaben zu evaluieren - siehe Kapitel 5: Prototypen - Messergebnisse

5 Prototypen - Messergebnisse

Nach der Entwicklung beider Prototypen - DTMF-Erkennung und Bluetooth-Kommunikation - gilt es nun die Kriterien nach ihren Vorgaben hin zu ueberpruefen in wie weit die definierten Initialwerte eingehalten wurden. Dabei werden die Tests auf einem leistungsstarken Computer vorgenommen um eventuelle Verzoegerungen durch leistungsschwache Elemente weitgehend auszuschliessen.

Als Applikationsserver zur Signalverarbeitung wurde dabei ein Laptop verwendet. Bei der DTMF-Erkennung wurde ein handelsuebliches Mobiltelefon verwendet, bei der Bluetooth-Kommunikation ein HTC Touch mit Windows Mobile 2003 fuer Pocket PC.

Die Ortsunabhaengigkeit wurde im offenen Gelaende mit einer freien Sichtweite von 200 m getestet. Der Technologiebedarf wurde im praktischen Test ermittelt, die Auslastung wird nicht evaluiert, da die Prototypen bzw. die Applikationen fuer einen Nutzer ausgelegt sind. Fuer die Auswertung des Echtzeitverhaltens wurde eine programmiertechnische Loesung entwickelt, die nachfolgend in der Abbildung schematisch dargestellt wird und in den einzelnen Punkten detailliert beschrieben wird.

5.1 Kriterienevaluierung fuer DTMF - Signalerkennung

5.1.1 Ortsunabhaengigkeit

Die Reichweite der Technologie ist nur mit dem GSM Empfang beschraenkt, somit ist das Kriterium zur Gaenze erfuellt.

5.1.2 Technologiebedarf / Verfuegbarkeit der Technologie

Der Technologiebedarf ist wie erwartet sehr gering, jedes handelsuebliche Mobiltelefon ist geeignet.

5.1.3 Echtzeitverhalten

Abbildung 40 zeigt den schematischen Aufbau von Nutzer bis zur Ausgabe. Um nun das Echtzeitverhalten zu simulieren gilt es den Nutzer samt Auswertung innerhalb eines Programms zusammenzufassen.

Dabei muss vom Testprogramm das Druecken einer Taste simuliert werden, der Zeitstempel abgespeichert, die uebermittlung und Auswertung im gleichen Programm laufen zu lassen und danach einen zweiten Zeitstempel anzufertigen. Die Differenz der beiden Zeiten ergibt die uebertragungsdauer samt Auswertung.

5.2 Kriterienevaluierung fuer Bluetooth - Signalerkennung

5.2.1 Ortsunabhaengigkeit

Bei der Bestimmung des Reichweitenverhaltens ist zusaetzlich festzuhalten, dass der Client mit einem Klasse 2 - Bluetoothgeraet ausgestattet ist und somit eine Reichweite von ca. 50 m hat. Der Master (Applikationsserver) ist mit Klasse 1 und einer Reichweite von ca. 100 m ausgestattet.

Eine zufriedenstellende Verbindung war bei 80-95 m gegeben. Durch Erweiterung mit Bluetooth-Elementen koennte die Reichweite dementsprechend erhoeht werden.

5.2.2 Technologiebedarf / Verfuegbarkeit der Technologie

Bei der Verfuegbarkeit der Technologie bzw. dem Technologiebedarf muss dem Kunden, dessen mobiles Geraet mit Bluetooth ausgestattet sein muss, ueberdies noch eine fuer dessen Betriebssystem entwickelte Clientapplikation zur Verfuegung gestellt werden. Da sich derzeit verschiedene Handy-Betriebssysteme (SymbionOS, Windows Mobile, Linux/Palm, BlackberryOS, ...) am Markt befinden, muss eine Entwicklung fuer jedes dieser Systeme erfolgen.

Die Verfuegbarkeit der Technologie ist im Durchschnitt mittelmaessig, da derzeit hauptsaechlich Business-Mobilgeraete mit Bluetooth ausgestatten sind.

5.2.3 Echtzeitverhalten

Um das Echtzeitverhalten zu testen wird analog zum Test bei der DTMF- Auswertung (siehe 5.1.3), ein leistungsstarker Entwicklungscomputer als Client und Applikationsserver angesteuert. Abbildung 38 zeigt den schematischen Aufbau von Nutzer bis zur Ausgabe. Die Zeitdauer ergibt sich durch die Zeitdifferenz von der uebermittlung des Signals t0 bis zum Zeitpunkt des ausgewerteten Signals t1.

Aus der Auswertung in Tabelle 8 ist gut zu erkennen, dass die Verzoegerung optimal fuer eine Echtzeitansteuerung von Software durch mobile Geraete geeignet ist.

6 Schulungsmassnahmen

7 Zusammenfassung

Ziel der Arbeit zur echtzeitbasierten Ansteuerung von Software mittels mobiler Geraete ist einerseits einen ueberblick ueber die moeglichen Signaluebertragungstechnologien als auch Empfangseinrichtungen zu geben und andererseits prototypenhaft Applikationen zu entwickeln, die einen gewaehlten Anwendungsfall umsetzen.

Als Anwendungsfall wurde eine Veranstaltung gewaehlt, bei der Nutzer mit mobilen Geraeten Spielfiguren steuern koennen. Dazu wurden Kriterien gewaehlt, die als Voraussetzung fuer diesen Anwendungsfall gegeben sein muessen.

Signaluebertragungstechnologien

Bei der Auswertung der Signaluebertragungstechnologien wurden GPRS, DTMF, WLAN und Bluetooth gegenuebergestellt und nach den Kriterienvorgaben bewerten. Als Resultat dieser Gegenueberstellung war festzustellen, dass GPRS aufgrund seines Echtzeitverhaltens und WLAN durch die Verfuegbarkeit der Technologie nicht fuer die Wahl als uebertragungstechnologie in Frage kommen.

Signalempfangseinrichtungen

Als Empfangseinrichtungen wurden wiederum GPRS, DTMF, WLAN und Bluetooth auf ihre Eigenschaften hin untersucht. Das Ergebnis gestaltet sich analog zur Auswertung der Signaluebertragungstechnologien. GPRS und WLAN sind relativ unflexibel bei der Positionierung eines Webservers und scheiden somit fuer eine weitere Betrachtung aus. In Folge wurden somit fuer Bluetooth und DTMF - Erkennung prototypenhafte Applikationen konzipiert und entwickelt.

Prototypenentwicklung

Die Prototypen fuer die Signaluebermittlung und -erkennung wurden sowohl fuer eine DTMF Erkennung, als auch die Erkennung mittels Bluetooth realisiert um in Folge die aufgestellten und definierten Kriterien zu bestaetigen. Dazu wurde bei der DTMF-Erkennung diese mittels Implementierung der Fast Fourier Transformation realisiert, die es erlaubt Tonsignale, die am Mikrofoneingang der Soundkarte eingehen, performant zu erkennen und auszuwerten. Der grosse Vorteil liegt in der Plattformunabhaengigkeit der Technologie, da die uebermittlung ohne Zusatzsoftware ueber den GSM-Sprachkanal erfolgt. Bei der Bluetooth-Entwicklung konnte auf schon bestehende Klassen und Methoden des .NET Frameworks zurueckgegriffen werden. Der Nachteil dieser Technologie ist die Tatsache, dass zur uebermittlung der Signale eine am Client installierte Sendeapplikation Voraussetzung ist - und somit fuer jedes moegliche Betriebssystem eine Applikation entwickelt werden muss. Neben der Abhaengigkeit vom Betriebssystem des Clients ist auch noch ggf. auf dessen Version Ruecksicht zu nehmen.

Prototypentest auf Einhaltung der Kriterien

Beim Prototypentest wurden die beiden entwickelten Prototypen hinsichtlich Einhaltung der definierten Kriterien bewertet. Dazu wurde ein Testprogramm entwickelt, das den Zeitpunkt bei der uebermittlung des Signals, als auch nach der Auswertung des Signals bestimmt und aus dieser Differenz das Echtzeitverhalten bestimmt. Dabei konnte bei Verwendung der Bluetooth-Technologie eine durchschnittliche Verzoegerung von 47 ms, bei der DTMF-uebermittlung 179 ms eruiert werden.

Beide Verzoegerungswerte sind fuer das Echtzeitverhalten akzeptabel und auch das Kriterium Ortsunabhaengigkeit ist in beiden Faellen fuer den Anwendungsfall ausreichend.

Somit entscheiden der Umstand, dass einerseits die Reichweite bei Bluetooth eingeschraenkt ist und andererseits der Technologiebedarf gegenueber der DTMF uebermittlung hoeher ist, die Wahl der DTMF-Technologie als fuer den Anwendungsfall optimal geeignet.

Durch die prototypenhafte Realisierung wurden nicht alle Funktionen implementiert und so z.B. die Applikation fuer einen Nutzer ausgelegt. Somit ist der Prototyp fuer eine vollstaendig nutzbare Applikation um diese Funktion zu erweitern, als auch ggf. und soweit noch moeglich die Performance zu optimieren.

Literaturverzeichnis

  • [Ber05] Pascal Berger: Fast Fourier Transformation, Universitaet Koblenz - Institut fuer integrierte Naturwissenschaften, 2005
  • [BMI08] Deutsches Bundesministerium fuer Wirtschaft und Technologie, Ausfuehrliche Informationen zu GSM. Web: http://www.bmwi.de/BMWi/Navigation/Wirtschaft/Telekommunikation-und-Post/mobilfunk,did=33262.html, Stand 15.11.2008
  • [Boe09] Peter Boesche, Telefon als Fernsteuerung. Web: http://www.peter-boesche.de/dtmffern.htm, Stand 15.07.2009
  • [Cil01] Daniel Cil: Bluetooth - ueberblick ueber Techniken, Geraetespektrum, Zukunftsaussichten., Fachhochschule Worms; 2001
  • [Dul07] Winfried Dulz, WAP - Wireless Application Protocol. Web: http://www7.informatik.uni-erlangen.de/~dulz/moko/2003/wap.pdf , Stand 14.11.2007
  • [Ele03] Electronic for you - Webseite. Webseite: http://www.electronicsforu.com/EFYLinux/circuit/jun2003/CI-2-DTMF.pdf, Stand 26.09.2008
  • [Ele09] Bluetooth 1.0 / 1.1 / 1.2 - Webseite. Webseite: http://www.elektronik-kompendium.de/sites/kom/0803301.htm, Stand 15.07.2009
  • [Elk07] GSM-Systemarchitektur. Webseite: http://www.elektronik-kompendium.de/sites/kom/0910191.htm , Stand 25.9.2007
  • [Elk07b] GSM-Funkschnittstelle. Webseite: http://www.elektronik-kompendium.de/sites/kom/0910201.htm , Stand 25.9.2007
  • [Duq02] Manuel Duque-Antón, Mobilfunknetze. Friedr. Vieweg & Sohn Verlagsgesellschaft mbH, 2002
  • [Geo00] Otfried Georg: Telekommunikationstechnik, Springer Verlag, 2.Auflage, S. 537-650, 2000
  • [Gel09] Michael Gellis. Webseite: http://michaelgellis.tripod.com/modem.html, Stand 17.7.2009
  • [Ste00] Ralf Steinmetz: Multimedia-Technologie. Grundlagen, Komponenten und Systeme., Springer, Berlin; Auflage: 3., ueberarb. A. (Juli 2000), S. 587 ff.
  • [Grue93] Daniel Ch. von Gruenigen, Digitale Signalverarbeitung, 2. Auflage, Fachbuchverlag Leipzig, 1993
  • [Gum07] Heinz-Peter Gumm, Manfred Sommer: Einfuehrung in die Informatik, Oldenbourg; Auflage: 7., ueberarb. A. (2007), S. 232 ff.
  • [Hae00] Heiko Haeckelmann: Kommunikationssysteme: Technik und Anwendungen, Springer Verlag Berlin, 1.Auflage, S. 80, 2000
  • [Hag06] Svenja Hagenhoff: Internetoekonomie der Medienbranche, Niedersaechsische Staats- und Universitaetsbibliothek, 1.Auflage, S. 80, 2006
  • [Hel04] Stefan Helber, Raik Stolletz: Call Center Management in der Praxis, Springer Verlag Berlin, 1.Auflage, S. 95 ff., 2004
  • [Hip04] Hajo Hippner, Klaus Wilde: IT-Systeme im CRM: Aufbau und Potenziale, Gabler Verlag, 1.Auflage, S. 56, 2004
  • [Hue09] GSM-Grundlagen. Webseite: http://www.huebi-soft.de/dafu/seite1.htm , Stand 08.07.2009
  • [Joe09] Fritz Joerns: Der Telefon-Ratgeber, Franzis, 1. Auflage, 1992
  • [Juer03] Wolf-Ruediger Juergens, Techniken mit extrem schmaler Bandbreite. Webseite: http://www.dl2wrj.de/qrss/narrow/136narro.html#DSP, Stand 4.10.2007
  • [Kam06] Karl-Dirk Kammeyer, Kristian Kroschel: Digitale Signalverarbeitung. Filterung und Spektralanalyse mit MATLAB-uebungen, Teubner, 6. Auflage, 2006
  • [Kat04] Katugampala, Al-Naimi: Voice-Data Tunnelling over GSM Voice Channel, University of Surrey, http://www.ee.surrey.ac.uk/Research/PortfolioPartnership/I-labProjects/project1.htm, Stand 15.1.2009
  • [Kat09] Katugampala, Al-Naimi, Vilette: REAL TIME DATA TRANSMISSION OVER GSM VOICE CHANNEL FOR SECURE VOICE & DATA APPLICATIONS, University of Surrey, http://personal.ee.surrey.ac.uk/Personal/N.Katugampala/pubs/iee04.pdf, Stand 15.1.2009
  • [Kof98] Michael Kofler: Visual Basic 6 . Programmiertechniken, Datenbanken, Internet. Addison-Wesley, 8. Auflage, 1998
  • [Leh03] Franz Lehner. Mobile und drahtlose Informationssysteme: Technologien, Anwendungen, Maerkte, Springer Verlag, Berlin 2001, 1. Auflage S. 20
  • [Lued01] Christian Luede: Mobilfunksysteme. Vogel Verlag und Druck GmbH, 2001
  • [Mer01] Michael Merz, E-Commerce und E-Business. Marktmodelle, Anwendungen und Technologien, Kap. 3 dpunkt Verlag, Heidelberg, 2001
  • [Met05] Jan Metzner, Alexander Schaal, Schnelle Fourier-Transformation, Fachhochschule Muenchen, http://metzner.org/studies/fft/fft.pdf, Stand 3.8.2005
  • [Mit09] Mitel MT8870D/MT8870D-1 Integrated DTMF Receiverhttp://www.datasheetcatalog.org/datasheet/MitelSemiconductor/mXuwtut.pdf, Stand 13.7.2009
  • [Mob08] mobilkom austria AG, Netzabdeckung GSM/GPRS, http://www.a1.net/business/coveragemap/business.php, Stand 15.11.2008
  • [Mue07] Matthias Mueller, C++, Eine Einfuehrung, High Performance Computing Center Stuttgart, http://www.hlrs.de/people/mueller/tutorials/script/script.html, Stand 18.12.2007
  • [New07] Networld - Handy wichtiger als Auto oder Fernseher. Webseite: http://www.networld.at/index.html?/articles/0620/548/175806_s1.shtml , Stand 30.6.2007
  • [Ora08] Orange Austria Telekommunication GmbH., Pressemitteilung: Gleichzeitig online surfen: mit dem H.U.I. WLAN Router 4G von ONE Webseite: http://www.orange.at/Content.Node/presse/pressemitteilungen/de/200704032.de.php, Stand 16.11.2008
  • [Pan08] Lothar Pantel, Lars C. Wolf, On the impact of delay in real-time multiplayer games. Webseite : http://www.cs.ubc.ca/~krasic/cpsc538a/summaries/52/delay.ppt#256,1,On the Impact of Delay on Real-Time Multiplayer Games, Stand 14.10.2008
  • [Perr03] John Perr, Grundlegendes zu Akustik und Signalverarbeitung http://www.linuxfocus.org/Deutsch/March2003/article271.shtml Stand 6.10.2007
  • [Pez94] Farahd Pezeshki, Implementierung eines FFT-Algorithmus unter Windows zur Untersuchung eines leistungsstarken Warntongeraetes im Frequenzbereich. Diplomarbeit, Technische Universitaet Wien 1994
  • [Pie08] Norbert Pieper, DTMF Decoder. Webseite : http://www.polar-electric.com/DTMF/Index.html, Stand 14.10.2008
  • [Pru03] Pruss, Kruth, Meinert, Rams, Saenger, Schluerscheid: Der Geschaeftsplan, 1. Nachdruck, Galileo Press, Bonn, 2003
  • [Rag01] Dave Raggett, VoiceXML 2.0. Webseite : http://www.w3.org/Voice/Guide/, Stand 16.12.2007
  • [Rie06a] Rudolf Riemer, UMTSLink.at - Mobilfunk allgemein. Webseite : http://www.umtslink.at/Mobilfunk/mobilfunk_allgemein.php, Stand 16.7.2006
  • [Rie06b] Rudolf Riemer, UMTSLink.at - GSM allgemein. Webseite : http://umtslink.at/GSM-Start.htm, Stand 16.7.2006
  • [Rued01] Bernd Ruedinger, Eigenschaften einer zeitdiskreten Fourier Transformation. Webseite : http://www.kgw.tu-berlin.de/statisch/lehre/skript/ds/node36.html, Stand 16.9.2007
  • [Rom07] Renato Romero, Fast Fourier Transformation. Webseite : http://web.tiscali.it/vlfradio/fft_beginners/fft_beginners.html, Stand 4.10.2007
  • [Smi98] Steven W. Smith: The Scientist & Engineer's Guide to Digital Signal Processing, 1. Auflage, California Technical Pub, 1998
  • [Spe07] B. Spethmann, Prof. Dr.-Ing. A. Potchinkov, Skript zur Vorlesung Digitale Signalverarbeitung, Universitaet Kaiserslautern http://disi.eit.uni-kl.de/skripte/disi/disi.pdf, Stand 6.10.2007
  • [Sti05] Peter Sties. Ein Verfahren zur modellbasierten Entwicklung von multimedialen Informations- und Kommunikationsdiensten, Books on Demand GmbH, 2005, S. 28f.
  • [Sto01] Phil Stone, Make marketing work for you, How to books Ltd., S. 24, 2001
  • [Str00] Bjarne Stroustrup. Die C++ Programmiersprache. Addison-Wesley Verlag, 4. Auflage, 2000
  • [Tho07] Wolfgang Thomas, Ludger Stammermann. In-Game Advertising - Werbung in Computerspielen: Strategien und Konzepte, Gabler Verlag, 2007, S. 48.
  • [Tim98] Paul Timmers, Business Models for Electronic Markets, Electronic Markets 8(2), S. 3-8, 1998
  • [TMo08] T-Mobile Austria., Netzabdeckung T-Mobile & tele.ring. Web: http://www.telering.at/Content.Node2/service/netzabdeckung.php, Stand 17.11.2008
  • [Wer06] Martin Werner. Digitale Signalverarbeitung mit Matlab, Vieweg + Teubner Verlag, 3. Auflage, April 2006, S. 66.
  • [Wil01] André Willms. C++ Programmierung. Addison-Wesley Verlag, 2. Auflage, 2001
  • [Wik08] Wikipedia - GSM Rahmenstruktur im GSM Netz. Web: http://de.wikipedia.org/wiki/Global_System_for_Mobile_Communications, Stand 01.7.2007
  • [Wik09] Wikipedia - Bluetooth. Web: http://de.wikipedia.org/wiki/Bluetooth, Stand 01.07.2009
  1. General Packet Radio Service (GPRS), uebersetzt „Allgemeiner paketorientierter Funkdienst" ist ein paketorientierter uebertragungsdienst und wird im Mobilfunk verwendet.
  2. Das Wireless Application Protocol (WAP) soll Internet-Applikationen mit der Mobilfunktechnologie vereinen und bezeichnet eine Sammlung von Technologien und Protokollen, deren Zielsetzung es ist, Internetinhalte fuer die kleinen Displays der Mobiltelefone verfuegbar zu machen [Dul07].
  3. „Beim Frequenzmultiplexverfahren (Abk. FDM fuer Frequency Division Multiplex oder FDMA fuer Frequency Division Multiple Access) wird das gesamte Spektrum in mehrere Frequenzbereiche gegliedert und jeder Kanal bekommt durch das Verfahren ein exklusives Frequenzband zugeteilt" [Leh03].
  4. Beim Zeitmultiplexverfahren (Abk. TDM fuer Time Division Multiplex oder TDMA fuer Time Division Multiple Access) werden in bestimmten Zeitabschnitten (Zeitschlitzen) die Daten (Signale) verschiedener Sender auf einem Kanal uebertragen [Hae00].
  5. Unter der Automatic Gain Control versteht man in der Elektrotechnik eine automatische Verstaerkungsregelung, bei der die Eingangssignale auf ein bestimmtes Niveau normalisiert werden und somit als Referenz bzw. bessere Vergleichsmoeglichkeit fuer weitere Berechnungen dienen.
  6. Dynamic Link Library, kurz DLL, bezeichnet eine Programmbibliothek, meist fuer Windows Betriebssysteme, die zur Laufzeit dynamisch gelinkt werden und entsprechende Aktionen ausfuehren.
  7. AT-Kommandos - AT steht dabei fuer „attention" - wurden urspruenglich von der Firma Hayes entwickelt und sind Befehle zum Konfigurieren und Parametrisieren von Modems.

Writing Services

Essay Writing
Service

Find out how the very best essay writing service can help you accomplish more and achieve higher marks today.

Assignment Writing Service

From complicated assignments to tricky tasks, our experts can tackle virtually any question thrown at them.

Dissertation Writing Service

A dissertation (also known as a thesis or research project) is probably the most important piece of work for any student! From full dissertations to individual chapters, we’re on hand to support you.

Coursework Writing Service

Our expert qualified writers can help you get your coursework right first time, every time.

Dissertation Proposal Service

The first step to completing a dissertation is to create a proposal that talks about what you wish to do. Our experts can design suitable methodologies - perfect to help you get started with a dissertation.

Report Writing
Service

Reports for any audience. Perfectly structured, professionally written, and tailored to suit your exact requirements.

Essay Skeleton Answer Service

If you’re just looking for some help to get started on an essay, our outline service provides you with a perfect essay plan.

Marking & Proofreading Service

Not sure if your work is hitting the mark? Struggling to get feedback from your lecturer? Our premium marking service was created just for you - get the feedback you deserve now.

Exam Revision
Service

Exams can be one of the most stressful experiences you’ll ever have! Revision is key, and we’re here to help. With custom created revision notes and exam answers, you’ll never feel underprepared again.