Hochschule Bremen. Echtzeit-Erkennung einer Kurve mit dem Core Motion Framework des IOS SDK

Größe: px
Ab Seite anzeigen:

Download "Hochschule Bremen. Echtzeit-Erkennung einer Kurve mit dem Core Motion Framework des IOS SDK"

Transkript

1 Hochschule Bremen Echtzeit-Erkennung einer Kurve mit dem Core Motion Framework des IOS SDK Bachelorarbeit im Studiengang Internationaler Studiengang Medieninformatik von Jan Christoph Schrader Matrikelnummer: Datum der Abgabe Erstprüfer: Prof. Dr. Barbara Grüter Zweitprüfer: Simon Bogutzky M. Sc.

2 Eidesstattliche Erklärung Hiermit versichere ich eidesstattlich, dass ich die vorliegende Arbeit selbständig und ohne Benutzung anderer als der angegebenen Hilfsmittel angefertigt habe. Alle Stellen, die wörtlich oder sinngemäß aus veröffentlichten und nicht veröffentlichten Schriften entnommen sind, wurden als solche kenntlich gemacht. Die Arbeit wurde in gleicher oder ähnlicher Form keinem anderen Prüfungsamt vorgelegt. Mir ist bewusst, dass eine falsche Erklärung rechtliche Folgen haben wird. Bremen, 4. Mai 2015 Unterschrift II

3 Zusammenfassung Die Themen Ganganalyse und Bewegungserkennung sind ein aktuelles und breites Thema der Informatik. Diese Arbeit beschäftigt sich mit dem Teilaspekt der Kurvenerkennung. Mit Hilfe des Core Motion Framework von Apple soll ein Algorithmus entwickelt werden, welcher in Echtzeit erkennt, wann ein Benutzer mit dem Handy in der Tasche um eine Kurve geht. Hierfür wurden drei Konzepte erarbeitet die auf verschiedene Sensoren und Daten zurückgreifen. Während ein Konzept das Magnetometer nutzt, greifen zwei Sensoren auf Werte des Gyroskops zurück. Im Rahmen der Arbeit wird auf Eigenarten und Probleme der Konzepte eingegangen und mögliche Lösungen werden aufgezeigt. Die verschiedenen Konzepte werden nach deren Ausarbeitung in einem Prototyp umgesetzt, welcher für einen Test auf einer vorgegeben Strecke verwendet wird. Die Auswertung der Ergebnisse zeigen ein deutlich besseres Abschneiden des Konzeptes, welches Attitude Roll Daten nutzt und mit einem Referenzwinkel arbeitet, gegenüber den anderen beiden Konzepten. Einige mögliche Verbesserungen und Erweiterungen der Erkennung werden abschließend in dieser Arbeit aufgezeigt. Abstract Gait analysis and motion tracking is a present and large topic in computer science. This thesis deals with turn detection. Using the Core Motion Framework from the Apple SDK the goal of this thesis is to develop an algorithm that detects a turn while the user has an iphone in his pants pocket. Three different approaches using the magnetometer or the gyroscopes roll value doing a data analysis or using a reference angle were developed. Multiple problems of the approaches had to be dealt with before they were tested on a fixed track. An evaluation of the results shows the advantages using a reference angle and the roll values of the gyroscope over the other approaches. Though several weaknesses could be determined and possible improvements were provided in a forward plan. III

4 Inhaltsverzeichnis 1. Einleitung Motivation Aufgabenstellung Aufbau der Arbeit 2 2. Grundlagen Core Motion Framework Sensoren des iphone Beschleunigungssensor Gyroskop Magnetometer GPS Definition einer Kurve 8 3. Konzepte Magnetometer Attitude-Roll Analyse Referenzwinkel Bekannte Probleme der Konzepte Probleme des Magnetometer-Konzepts Probleme des Attitude-Roll Analyse-Konzepts Kardanische Blockade Umsetzung Allgemeiner Aufbau des Prototyps Grundkonfiguration Location Manager Grundkonfiguration Motion Manager Umsetzung Magnetometer Konzept Umsetzung Attitude-Roll Analyse Konzept Umsetzung Referenzwinkel Konzept Evaluation Testaufbau Teststrecke Testpersonen Testergebnisse Auswertung Fazit und Ausblick Fazit Ausblick 32 Literaturverzeichnis 34 Abbildungsverzeichnis 37 Tabellenverzeichnis 38 IV

5 1 Einleitung Die Einleitung bietet einen Einstieg in die Problematik, die Motivation hinter dem Thema und die Struktur der Arbeit. 1.1 Motivation Die Ganganalyse und Bewegungserkennung ist ein aktuelles und breit gefächertes Thema der Informatik. In diesen Bereich fällt auch das Thema dieser Arbeit. Viele weit verbreitete Anwendungen für Smartphones wie zum Beispiel Google Fit [1], Moves [2] oder Apple Health [3] führen Ganganalysen durch. Diese Anwendungen verfolgen und analysieren, wie auch viele Fitness Anwendungen, die Bewegungen und Aktivitäten des Benutzers. Dies geschieht in der Regel allerdings recht oberflächlich und beinhaltet meist nur einen Schrittzähler, eine Aktivitätserkennung und einen Streckenverlauf der mittels GPS aufgezeichnet wurde. Eine Erkennung einer Kurve in Echtzeit geht einen Schritt weiter und analysiert die Aktivität des Benutzers im Detail. In der Informatik wird der Kontext in dem der Benutzer eine Anwendung benutzt, immer wichtiger. Wenn dem Benutzer zum Beispiel Werbung gezeigt wird, soll diese möglichst von dem Supermarkt sein, welchen er gerade betritt. Das sollte so funktionieren, dass das Gerät erkennt in welchem Kontext es sich gerade bewegt, und nicht erst durch eine Eingabe des Benutzers an diese Information gelangen. Informationen zu einem solchen Kontext kann eine Kurvenerkennung beisteuern. Navigationssysteme für Autos greifen auf GPS zurück um den aktuellen Fortschritt der Route zu erfassen. Wenn man zu Fuß unterwegs ist und auf eine Navigation zurückgreift, ist dieses Vorgehen vielleicht zu ungenau und könnte zu fehlerhaft sein. Eine Kurvenerkennung kann hier zuverlässiger sagen, dass der Benutzer abgebogen ist, als die Positionsbestimmung über GPS. Hier wären als Anwendungsgebiet auch mobile Spiele zu nennen. Ein mobiles Spiel Fangen zum Beispiel könnte den suchenden Spielern mitteilen, dass der flüchtende Spieler gerade abgebogen ist. 1

6 Ein weiteres Beispiel in der das Thema Bedeutung finden kann sind Flow- Maschinen [4]. Diese analysieren den Gang des Benutzers und unterstützen ihn durch Klang, der auf Basis der Ganganalyse erstellt wurde, das Flow Erlebnis zu erlangen [5]. 1.2 Aufgabenstellung In dieser Arbeit werden mehrere Konzepte zur Erkennung einer Kurve entwickelt und evaluiert. Hierzu müssen zunächst die nötigen Grundlagen geschaffen werden bevor die Lösungskonzepte erarbeitet werden können. Zu der Herausarbeitung der Konzepte gehört auch eine Analyse, welche Probleme auftreten könnten und wie man diese lösen kann. Der nächste Schritt in dieser Arbeit ist die Umsetzung der verschiedenen Konzepte in einem Prototyp, welcher genutzt werden kann um in einer Studie die verschiedenen Konzepte zeitgleich zu evaluieren. Eine Schwierigkeit dieser Arbeit ist es, die Erkennung einer Kurve in Echtzeit zu realisieren und nicht in einem Datensatz Kurven zu erkennen. Die fertige Arbeit soll eine solide Grundlage für weitere Arbeit in diesem Themengebiet und mögliche Erweiterungen der Erkennung bieten. 1.3 Aufbau der Arbeit Das zweite Kapitel dieser Arbeit befasst sich mit den Grundlagen die für das Thema dieser Arbeit erforderlich sind. Zunächst wird auf das genutzte Core Motion Framework eingegangen und anschließend werden die verfügbaren Sensoren erläutert, sowie eine Definition einer Kurve aufgestellt. Im dritten Kapitel werden die verschiedenen Konzepte zur Erkennung hergeleitet und erläutert. Ebenso werden hier verschiedene Einschränkungen und Probleme beschrieben. Das vierte Kapitel umfasst die Umsetzung und Implementation der Konzepte. Im fünften Kapitel der Arbeit wird ein Testszenario für eine Evaluation beschrieben und die Ergebnisse der Testpersonen werden aufgezeigt und ausgewertet. 2

7 Das sechste Kapitel zieht ein abschließendes Fazit, gefolgt von einem Ausblick was für Änderungen und Erweiterungen möglich und sinnvoll wären. 3

8 2 Grundlagen Dieses Kapitel befasst sich mit den Grundlagen der für die Kurvenerkennung erforderlichen Technik. In Kapitel 2.1 wird das Core Motion Framework des ios SDK genauer betrachtet. In Kapitel 2.2 werden die verfügbaren Sensoren eines iphone beschrieben. Die verwendete Definition einer Kurve wird in Kapitel 2.3 beschrieben. 2.1 Core Motion Framework Das Core Motion Framework bietet eine Unterstützung beim Zugriff auf die Daten der im iphone verbauten Sensoren. Es besteht die Möglichkeit entweder auf die Rohdaten zuzugreifen oder auf transformierte Daten, relativ zur aktuellen Orientierung des Geräts. Ebenso ist die Möglichkeit gegeben an gewisse Daten auf mehreren Wegen zu gelangen. Die Roll, Pitch und Yaw Daten, die auf die Rotation des Geräts schließen lassen, können zum Beispiel direkt über das Framework ausgelesen werden. Diese werden mit Hilfe der Euler-Winkel errechnet. Da dies in gewissen Situationen Probleme verursachen kann [vgl. 3.4] bietet das Framework die Alternative der Quaternionen aus denen sich die Werte berechnen lassen. Auch gibt es die Möglichkeit Daten zu erhalten, die mit Hilfe mehrerer Sensoren errechnet wurden, um Ungenauigkeiten der einzelnen Sensoren zu korrigieren. Dies geschieht durch verschiedene Algorithmen die im Framework durch Apple implementiert wurden. Für die verschiedenen Sensoren kann man unterschiedliche Frequenzen einstellen in denen neue Werte geliefert werden sollen. Zusätzlich beinhaltet das Framework einen Schrittzähler und eine Bewegungserkennnung, die ermittelt ob der Benutzer gerade geht, läuft oder Auto fährt [6]. Das Core Motion Framework kann ab ios Version 4.0 aufwärts genutzt werden. Funktionen für den Magnetometer Sensor wurden in Version 5.0 eingeführt. 4

9 2.2 Sensoren des iphone Die Sensoren bilden die Grundlagen für die Kurvenerkennung. Sie liefern Daten, die Aufschluss über die aktuelle Orientierung und Veränderungen der Orientierung des Geräts geben. Sie bieten die Möglichkeit Rückschlüsse auf Aktivitäten und Verhalten des Benutzers zu ziehen. Die verschiedenen Sensoren sind nicht in allen Geräten verfügbar. Die nachfolgende Grafik zeigt eine Übersicht der Verfügbarkeit. Abbildung 2.1: Verfügbarkeit der Sensoren [7] Für diese Arbeit sind der Beschleunigungssensor, das Magnetometer, das Gyroskop und GPS interessant. Diese sind alle spätestens ab dem iphone 4 verfügbar. Mehrere Sensoren errechnen ihre Daten in Relation zu einem internen Koordinatensystem. Dieses basiert auf den drei Achsen X, Y und Z. 5

10 Abbildung 2.2: Aufbau der Achsen in einem iphone [8] In Abbildung 2.2 sind die angesprochenen drei Achsen zu sehen. Sensoren wie zum Beispiel der Beschleunigungssensor liefern einen Wert für jede der drei Achsen. Weiterhin gibt es zum Beispiel auch die Möglichkeit die Rotation des Geräts um eine bestimmte Achse mit dem Gyroskop zu errechnen [Abb. 2.2]. Auf die Funktionsweise der Sensoren im Einzelnen wird in den nächsten Abschnitten eingegangen Beschleunigungssensor Der Beschleunigungssensor misst die lineare Beschleunigung des Geräts. Dies geschieht indirekt über ein kleines Objekt auf das die Gravitationskraft wirkt. Über die Intensität lässt sich schließen, wie stark diese Beschleunigung ist. Wendet man dieses Verfahren auf drei relativ zum Gerät positionierte Achsen an, kann man die lineare Beschleunigung des ganzen Geräts messen [9]. Der Beschleunigungssensor ist in jedem iphone verfügbar [Abb. 2.1]. 6

11 2.2.2 Gyroskop Das Gyroskop bestimmt die aktuelle Ausrichtung des Geräts an allen drei Achsen [vgl. Abb. 2.2]. Zur Bestimmung der Orientierung wird die Erdanziehung genutzt. Ein Wert beschreibt die Rotation um jeweils eine der Achsen und wird in Bogenmaß pro Sekunde angegeben. Die gelieferten Sensordaten stehen im Verhältnis zum vorherigen Wert und sind keine absoluten Werte [10]. Das Gyroskop ist verfügbar ab dem iphone 4 [Abb. 2.1] Magnetometer Ein Magnetometer misst die Stärke des Magnetfeldes um das Gerät herum. Es berechnet die Ausrichtung zum magnetischen Nordpol und funktioniert damit ähnlich wie ein analoger Kompass. Zu unterscheiden ist der magnetische Nordpol vom geografischen Nordpol. Der magnetische Nordpol bewegt sich und befindet sich zurzeit nördlich von Kanada. Der geografische Nordpol liegt auf der Erdachse. Nutzt man den CLLocationManager, errechnet dieser mit Hilfe des Magnetometers das True Heading, welches die Ausrichtung zum geografischen Nordpol darstellt [11]. Ein Magnetometer ist verfügbar ab dem iphone 3GS [Abb. 2.1] GPS Der GPS Sensor bestimmt die aktuelle Position des Geräts. Hierzu werden verschiedene Daten wie die geografische Länge, Breite und Höhe ebenso wie die Geschwindigkeit und die Genauigkeit ermittelt. GPS ist verfügbar ab dem iphone 3 [Abb. 2.1]. 7

12 2.3 Definition einer Kurve Eine Kurve wird in dieser Arbeit dadurch definiert, dass eine Person ihren normalen Gang unterbricht und ihre Ausrichtung ändert. Da dies nicht innerhalb von sehr kurzer Zeit geschehen kann, muss die Veränderung über einen Zeitraum betrachtet werden. Zusätzlich muss ein Grenzwert festgelegt werden, ab dem die Veränderung der Ausrichtung ausreichend ist um als Kurve erkannt zu werden. Analog zu der Ausarbeitung wird dieser Grenzwert auf 45 festgelegt, da er genug Spielraum lässt um einen unregelmäßigen Gang zuzulassen und dennoch genau genug ist um ein nicht abruptes Abbiegen zu erfassen [12]. 8

13 3 Konzepte 3.1 Magnetometer Mit dem Magnetometer des iphones lässt sich ein Kompass nachbauen. Dieser nutzt, wie in Kapitel beschrieben, das Magnetfeld um das Gerät, um damit die aktuelle Ausrichtung des Geräts zum magnetischen Norden zu errechnen. Diese Eigenschaft kann man nutzen um die aktuelle Ausrichtung des Geräts in der Hosentasche zu ermitteln und durch Veränderungen feststellen wann um eine Kurve gegangen wurde. Wie in der Definition einer Kurve in Kapitel 2.3 festgelegt wurde, soll ab einer Veränderung um 45 eine Kurve erkannt werden. Durch den Location Manager werden, wie in Kapitel beschrieben, regelmäßig die Werte des True Heading, also der aktuellen Ausrichtung zum geografischen Nordpol, geliefert. Dieser Wert wird zu Beginn der Erkennung gespeichert und als aktuelle Gangrichtung definiert. In regelmäßigen Abständen soll nun geprüft werden ob sich die aktuelle Ausrichtung im Vergleich zu der anfänglich gespeicherten Ausrichtung um mehr als 45 verändert hat. Sollte dies der Fall sein, wurde eine Kurve erkannt und die Gangrichtung muss neu definiert werden. Hierfür wird der Wert gespeichert der bei der Überprüfung genutzt wurde. Abbildung 3.1: Übersicht der Bereiche für eine Ausrichtung oder eine erkannte Kurve 9

14 Da ein Gang selten komplett geradeaus geht, aber dabei nicht unbedingt immer eine Kurve beinhalten muss, wird, wie in der oben stehenden Grafik zu sehen ist, ein zusätzlicher Bereich eingeführt der ab 30 Veränderung beginnt und bis 45 geht. Hier wird die Ausrichtung neu definiert, aber keine Kurve erkannt. Der Bereich ist groß genug um mögliche Korrekturen der Gangrichtung vornehmen zu können, wie zum Beispiel der Gang an einer lang gezogenen Strecke die über mehrere Meter ihre Richtung ändert. Veränderungen im Bereich bis 30 werden nicht betrachtet, da in diesem Ereignisse wie zum Beispiel das Überholen eines anderen Fußgängers liegen. 3.2 Attitude-Roll Analyse Dieser Ansatz basiert auf einer kontinuierlichen Betrachtung der Roll Werte, die vom Core Motion Framework geliefert werden [vgl. 2.1]. Der Roll Wert beschreibt die Rotation des Geräts um die Y-Achse. Je nach Drehrichtung verändern sich die Werte ins Positive oder Negative. Dies ist in der folgenden Grafik zu sehen. Abbildung 3.2: Übersicht der möglichen Rotationen an den verschiedenen Achsen [13] Dieses Verhalten ermöglicht es Daten zu erhalten, die eine Bewegung der Hüfte repräsentieren und damit sehr geeignet für eine Kurvenerkennung sind. 10

15 Da die Daten relativ zu den vorherigen und nicht absolut sind, ist es nicht möglich, wie beim Konzept das auf dem Magnetometer basiert, zu prüfen, ob die Werte einen Grenzwert überschreiten [vgl. 3.1]. Dieses Konzept soll Unterschiede in den Daten feststellen, die eine Veränderung zwischen Geradeaus -Gang und Kurve -Gang charakterisieren. In der folgenden Grafik sieht man zunächst den Gang geradeaus. Abbildung 3.3: Verhalten des Roll-Wertes über die Zeit bei einem normalen Gang Zu sehen ist ein wellenförmiges, stetiges Muster das Ausschläge von ca bis +150 Grad beim Roll-Wert hat. Dieses Muster wiederholt sich immer wieder, so lange man einen gleichmäßigen Gang hat. In der folgenden Grafik wird bereits der Unterschied zum Kurven-Gang deutlich. 11

16 Abbildung 3.4: Unterschied im Verhalten des Roll-Wertes über die Zeit zwischen normalen Gang und Gang um eine Kurve Zu sehen ist hier ein Teil von ca. Sekunde 4 bis 7 in dem die Ausschläge nur ins Positive gehen, aber noch ähnlich hoch wie in der vorherigen Grafik beim Gang geradeaus sind. In diesem Abschnitt wurde tatsächlich gerade um eine Kurve gegangen. Nach der Kurve ist wieder das bereits bekannte Muster des Gang geradeaus zu sehen. Hier gibt es zwei Möglichkeiten. Neben der eben dargestellten Variante gibt es zusätzlich noch die Möglichkeit, dass die Werte während einer Kurve nur in den negativen Bereich ausschlagen. Angenommen das iphone befindet sich in der linken Hosentasche, dann werden bei einer Kurve nach links nur kleine Schritte mit dem linken Bein gemacht. Bei einer Kurve nach rechts muss man hingegen große Schritte machen um die Drehung zu vollziehen und daher auch eine größere 12

17 Bewegung mit der Hüfte machen. Mit dem Gerät in der rechten Hosentasche würde sich das Verhalten umkehren. Der Ansatz ist nun, diese Veränderungen zu erkennen. Gelingt das, kann ein Gang um die Kurve erkannt werden. Da pro Sekunde ca. 100 neue Werte dazu kommen und diese einzeln keine hohe Aussagekraft besitzen, wird hier ein Zeitfenster festgelegt in dem die Daten analysiert und verglichen werden. Dieses wird auf 100 Werte festgelegt und entspricht einer kompletten Schwingung vom Ausgangswert, in den positiven Bereich, in den negativen Bereich und zurück zum Ausgangswert. Es muss also ein Mechanismus entwickelt werden, welcher aus den Werten immer zwei Zeitfenster an Daten bereitstellt. Eins mit den aktuellsten 100 Werten und eins mit den älteren 100 Werten. Diese beiden Zeitfenster müssen nun unterschieden werden. Da die Ausschläge größer oder kleiner werden, ändert sich auch der Durchschnittswert in diesem Bereich. Eine zusätzliche Möglichkeit die gewünschte Veränderung festzustellen bietet die Distanz zwischen den kleinsten und dem größten Wert eines Zeitfensters. Idealerweise gehören die beiden Werte zu einer Schwingung, allerdings stellt es auch kein Problem dar sollte dies nicht der Fall sein. Wenn die Größe der Schwingung sich verändert, wirkt sich das auch auf die Distanz aus. Daher kann ein solcher Wert auch zum Vergleich heran gezogen werden. Einige Datenanalysen haben ergeben, dass 95 Prozent Unterschied bei der Distanz zwischen neuem und altem Zeitfenster und 80 Prozent Unterschied beim Durchschnittswert eine gute Ausgangslage für eine Kurvenerkennung bieten. Auf Probleme mit diesen Werten wird im Kapitel eingegangen. 3.3 Referenzwinkel Dieses Konzept funktioniert ähnlich wie das Konzept des Magnetometers [vgl. 3.1] von einer Referenzausrichtung aus. Das Core Motion Framework bietet eine Klasse CMAttitude welche die Ausrichtung des Geräts auf verschiedene Arten repräsentiert [14]. Neben der Repräsentation als Drehmatrix gibt es auch die Möglichkeit der Eulerwinkel (Roll, Yaw, Pitch) und der Quaternionen. Der Vorteil durch die Nutzung der Quaternionen gegenüber der Nutzung der Eulerwinkel wird in Kapitel 3.4 behandelt. 13

18 Beim Start der Erkennung wird das aktuelle CMAttitude-Objekt gespeichert und als aktuelle Gangrichtung festgelegt um eine Referenzausrichtung für die Kurvenerkennung zu haben. Da in regelmäßigen Abständen neue CMAttitude-Objekte durch den Motion Manager bereitgestellt werden, soll durch Methoden der CMAttitude-Klasse die Differenz zwischen der Referenzausrichtung und der neu erhaltenen Ausrichtung errechnet werden. Da es sich hierbei um die komplette Orientierung des Geräts handelt, müssen aus den neuen Werten noch die für die Erkennung relevanten Werte errechnet werden. Hierfür wird wie im Attitude Roll Analyse -Konzept der Roll Wert herangezogen, da er die Hüftbewegung abbildet, wenn sich das Gerät in der Hosentasche befindet [vgl. 3.2]. Abbildung 3.5: Übersicht der Bereiche für eine Ausrichtung oder eine erkannte Kurve Wie in der Grafik zu sehen ist, werden Veränderungen bis 30 nicht beachtet um kleinere Korrekturen der Gangrichtung zu ignorieren. Der Bereich zwischen 30 und 45 Veränderung wird genutzt um die aktuelle Gangrichtung festzulegen. Dafür wird das aktuelle CMAttitude-Objekt wie beim Start der Erkennung als Referenzausrichtung gespeichert. Hiermit werden Korrekturen der Gangrichtung abgefangen wie zum Beispiel bei einer Strecke die einen Drall nach rechts hat, aber eigentlich keine Kurve beinhaltet. 14

19 Beträgt die Veränderung mehr als 45, wird die Ausrichtung ebenfalls als neue Referenz gesetzt und zusätzlich eine Kurve erkannt [vgl. 2.3]. 3.4 Bekannte Probleme der Konzepte Die verschiedenen Konzepte haben mehrere bekannte Probleme oder Einschränkungen in ihrer Funktionalität die in diesem Kapitel der Arbeit behandelt werden. Ein allgemeines Problem der Konzepte besteht darin, dass sich das Gerät während der Erkennung immer in der gleichen aufrechten Lage in der Tasche befinden muss. Sollte das Gerät auf die Seite rutschen, oder von Beginn an auf der Seite liegen, kann es zu fehlerhaften Erkennungen führen. Sollte das Gerät schief liegen, werden zwar dieselben Bewegungen registriert, allerdings auf einer anderen Achse oder auf mehrere Achsen verteilt. Das würde die in den Konzepten verwendeten Werte verfälschen und zu ausbleibenden oder falschen Erkennungen führen. Im folgenden Abschnitt wird auf mehrere spezifische Probleme eingegangen Probleme des Magnetometer-Konzepts Ein allgemeines Problem bei der Verwendung des Magnetometers ist, dass es von anderen elektronischen Geräten gestört werden kann. Dies nimmt dann direkten Einfluss auf die Daten. Ebenso kann es vorkommen, dass man sich in Bereichen ohne magnetischen Einfluss befindet. In diesen Bereichen würde der Magnetometer nicht funktionieren und fehlerhafte Daten liefern. Die hohe Anfälligkeit des Magnetometers wird auch damit belegt, dass es Unterschiede in den Daten gibt, die durch Veränderungen der Höhe verursacht werden. Die Werte, die man zum Beispiel im 5. Stock erhält, unterscheiden sich von Werten die man auf Meeresspiegel-Höhe erhält [15]. 15

20 3.4.2 Probleme des Attitude-Roll Analyse-Konzepts Das Konzept der Attitude-Roll Analyse [vgl. 3.2] unterscheidet sich stark von den anderen Konzepten. Es nutzt zwar die gleichen Daten wie die anderen Konzepte, aber in einem anderen Format. Durch die Verwendung des Bogenmaßes kann nicht einfach definiert werden, dass ab 45 eine Kurve erkannt werden soll. Daher werden andere Grenzwerte verwendet, welche allerdings schwer zu finden und von vorne herein festzulegen sind. Dies liegt daran, dass Personen, auf Grund von unterschiedlichen Beinlängen, unterschiedliche Gangarten aufweisen Kardanische Blockade Die kardanische Blockade, auch bekannt als Gimbal Lock (engl.), bezeichnet ein Problem das bei der Verwendung der Eulerwinkel auftreten kann. Hierbei kann es passieren, dass zwei der drei Achsen aufeinander liegen und daher den gleichen Effekt haben. Abbildung 3.6: Beispielhafter Ablauf für eine kardanische Blockade [16] In der Abbildung ist zu sehen, dass durch die Drehung an der Y Achse im zweiten Schritt der Effekt entsteht, dass die Drehung in Schritt eins und in Schritt drei die gleiche Wirkung haben obwohl die Drehung einmal auf der X- und einmal auf der Z- Achse durchgeführt wird. Dieses Verhalten hat zur Folge, dass jede Rotation um 90 unweigerlich zum Verlust eines Freiheitgrades führt und zwei zuvor unterschiedliche Rotationen den gleichen Effekt haben [17, 18]. Dieses Problem kann bei beiden Konzepten die mit dem Roll-Wert arbeiten, auftreten, und muss bei der Umsetzung beachtet werden. Eine Möglichkeit dieses Problem zu umgehen, bietet die Nutzung von Quaternionen. Diese verwenden einen vierdimensionalen Vektor um die aktuelle Orientierung zu repräsentieren und 16

21 Probleme wie die kardanische Blockade zu umgehen [18]. Quaternionen werden durch das Core Motion Framework zur Verfügung gestellt und können daher als Alternative zu den Eulerwinkeln genutzt werden. 17

22 4 Umsetzung Dieses Kapitel der Arbeit behandelt die Implementation der verschiedenen Konzepte für einen Prototypen, der für den Test verwendet werden soll [vgl. 5.1]. 4.1 Allgemeiner Aufbau des Prototyps Der allgemeine Aufbau des Prototyps ist in der folgenden Grafik dargestellt. Abbildung 4.1: Aufbau des Prototypen 18

23 Die Basis bilden zwei Manager-Klassen, die Rohdaten von den Sensoren über den CLLocationManager [11] und den CMMotionManager [6] erhalten. Diese Daten werden an die verschiedenen Erkennungen weitergereicht. Dort werden sie entsprechend aufbereitet und analysiert. Erkannte Kurven werden als Event an den ViewController weitergegeben und dort mit einem Zeitstempel und der aktuellen GPS-Position verknüpft. Diese Information wird dann mit CoreData in der Anwendung gespeichert. Zusätzlich bietet die Anwendung die Möglichkeit, diese Daten danach als CSV-Datei zu exportieren. Der ViewController ist das Herzstück der Anwendung. In dieser Klasse werden alle Funktionen übernommen, die nicht direkt mit der Erkennung zu tun haben. Ebenso werden hier auch die beiden oben genannten Manager-Klassen für die Erkennung initialisiert. Außerdem wurde eine Klasse MotionEvent eingeführt. Abbildung 4.2: Aufbau der MotionEvent-Klasse Diese wird genutzt um eine erkannte Kurve zu repräsentieren. Wie in der Abbildung zu sehen ist, gibt es einen Zeitstempel der aussagt, wann das Event erkannt wurde und einen NSString der von der Erkennung gesetzt wird um identifizieren zu können, welche Erkennung das Objekt erstellt hat. Mit der Methode sendevent kann das Event über einen Delegate verschickt werden. Ein Delegate stellt eine Beziehung zwischen zwei Klassen her und ermöglicht den Austausch von Nachrichten [19]. Angenommen Klasse A setzt Klasse B als Delegate, dann kann Klasse A sicherstellen, dass Klasse B eine Methode zum Empfang einer Nachricht implementiert hat und darüber Nachrichten an die Klasse B verschicken. Im nächsten Abschnitt wird auf die grundlegenden Konfigurationen und Initialisierungen der Ansätze eingegangen. 19

24 4.2 Grundkonfiguration Location Manager Als erstes wird ein neues Objekt des CLLocationManager erstellt und seine init - Methode aufgerufen. Dem Location Manager wird der Wert self als Delegate zugewiesen, was bewirkt, dass die Klasse sowohl den Location Manager als auch die Methode für den Empfang der Daten stellt [vgl 4.1]. Registriert der Location Manager einen neuen Wert, wird dieser über den Delegate an die Klasse geleitet. Damit der Location Manager funktioniert, ist es zwingend notwendig, dass die Methode requestwheninuseauthorization des Location Manager einmal aufgerufen wird. Diese ist dafür verantwortlich, dass die Anwendung mittels eines Popups die Erlaubnis des Benutzers einholt, auf die Position zuzugreifen zu dürfen. Um eine möglichst genaue Bestimmung der Position zu erhalten wird dem Location Manager als distancefilter und als desiredaccuracy der Wert kcllocationaccuracybest gesetzt. Diese Konstante bewirkt möglichst genaue Positionen. Hier könnte man auch etwas ungenauere Modi wählen um beispielsweise Akkulaufzeit zu sparen. Um nicht zu viele Aktualisierungen der Ausrichtung zu erhalten wird der headingfilter auf den Wert 1 gesetzt um erst Veränderung ab 1 zu betrachten. 4.3 Grundkonfiguration Motion Manager Der Motion Manager muss, ähnlich wie der Location Manager im vorherigen Abschnitt, konfiguriert werden. Diese Konfiguration wird einmalig aufgerufen, sobald der User auf den Start -Knopf des Prototypen drückt. Als erstes wird die Methode setupforstartupdating aufgerufen. Diese Methode setzt diverse Variablen für die Erkennungen auf ihre Ausgangswerte. An dieser Stelle wird zusätzlich geprüft ob das aktuelle Gerät über die benötigten Sensoren verfügt. Nur wenn dies der Fall ist, wird fortgefahren mit dem Setzen des Update Intervalls. Das Update Intervall legt fest wie oft der Motion Manager Aktualisierungen der Daten liefern soll. Dieses wird auf 1/100 gesetzt, was gleichbedeutend mit einem Intervall von 100Hz ist. Der Motion Manager soll pro Sekunde 100 neue Daten liefern. Dies ist ein üblicher Wert für diese Art von Anwendungen [20]. 20

25 Als nächstes werden die Aktualisierungen gestartet. Hier wird der Parameter CMAttitudeReferenceFrameXArbitraryZVertival als Reference Frame übergeben. Ein Reference Frame wird als Basis Koordinatensystem für den Motion Manager genutzt. Es dient als Ausgangsposition, von derer aus alle anderen Daten ausgehen [17]. Der hier genutzte Wert bedeutet, dass die Z-Achse vertikal und die X-Achse in eine beliebige Richtung horizontal zeigen soll [21]. Die möglichen Alternativen zu diesem Reference Frame unterscheiden sich nicht deutlich von dem gewählten, da diese nur für den Magnetometer Auswirkungen haben. Dieser wird aber in dieser Arbeit nicht über den Motion Manager angesteuert. Da die Alternativen außerdem eine höhere CPU-Last zur Folge hätten, wurde das oben genannte Reference Frame gewählt [21]. Da die Erkennung nur zu gewissen Zeitpunkten ausgeführt werden soll, wird jede Aktualisierung gezählt und nur wenn eine gewisse Anzahl überschritten wurde sollen die Erkennungen aufgerufen werden. Andernfalls würden die Erkennungen nicht richtig funktionieren, da, wie in Kapitel 2.3 definiert wurde, eine Kurve einen gewissen Zeitraum benötigt. Zusätzlich würde eine ständige Überprüfung eine sehr hohe CPU Auslastung verursachen. Der Grenzwert wurde hierfür auf 100 festgelegt, da im Durchschnitt ein Schritt eine Sekunde dauert, was wie zuvor festgelegt ca. 100 Daten bedeutet [22]. Damit wird jede Sekunde beziehungsweise bei in etwa jedem Schritt auf eine Kurve geprüft. Den Methoden für die Erkennungen wird ein CMAttitude -Objekt [14] übergeben, was verdeutlicht, dass hier nicht die Rohdaten der Sensoren verwendet werden sondern über das Core Motion Framework auf die Daten zugegriffen wird. Die Vorteile dieses Vorgehens wurden in Kapitel 2.1 erläutert. 21

26 4.4 Umsetzung Magnetometer Konzept Dieser Abschnitt beschäftigt sich mit der Umsetzung des Magnetometer Konzepts. Die Aktualisierungen des Location Manager werden über die Methode locationmanager:didupdateheading: bereitgestellt. Diese wird vom Location Manager über den Delegate aufgerufen [vgl. 4.1]. Der Parameter newheading enthält die aktuelle Ausrichtung des Magnetometers und wird an die Methode detectdirectionchangewithmagnetometer übergeben. Diese errechnet zunächst die Differenz zwischen der letzten gespeicherten Ausrichtung und der aktuellen Ausrichtung ( newheading ). Beträgt diese Veränderung mehr als 30 wird die aktuelle Ausrichtung aktualisiert und in der Variable lastheading gespeichert. Beträgt die Veränderung zusätzlich mehr als 45, wurde hier eine Kurve erkannt und ein Motion Event erstellt [vgl. 4.1]. Das Event wird dann durch die sendmotionevent Methode an den ViewController weiter gegeben. Bei dieser Umsetzung gibt es noch die Besonderheit, dass auf das Core Location Framework zugegriffen wird und nicht auf das Core Motion Framework. Bei der Umsetzung des Konzepts stellte sich heraus, dass die Daten des Magnetometer, welche das Core Motion Framework durch die Klasse CMCalibratedMagneticField [23] bereitstellt, ungenauer und weniger zuverlässig sind als dieselben Daten die durch den Location Manager erhalten werden konnten. Der Zugriff auf die CLHeading-Werte lässt sich allerdings problemlos austauschen mit dem Zugriff auf die Magnetometer-Daten über das DeviceMotion-Objekt, welches durch das Core Motion Framework bei jeder Aktualisierung bereitgestellt wird. 4.5 Umsetzung Attitude-Roll Analyse Konzept Der folgende Abschnitt erläutert die Umsetzung des Attitude-Roll Analyse - Konzepts. Damit wie in Kapitel 3.2 erläutert immer zwei Listen an Werten zur Verfügung stehen, werden diese in der Methode manageframesfordetection gehandhabt. Der Methode wird ein Objekt vom Typ CMAttitude übergeben, aus welchem die aktuelle Ausrichtung errechnet werden kann. Hierfür werden Quaternionen genutzt 22

27 um in Kapitel angesprochene Probleme zu vermeiden. Für die Berechnung des benötigten Roll-Wertes wird folgende Formel angewandt [vgl 3.2] [24]: atan2(2 (quat. y quat. w quat. x quat. z), 1 2 quat. y quat. y 2 q. z + quat. z) Um den nun erhaltenen Wert im Bogenmaß in Gradmaß umrechnen zu können, wird dieser mit 180/ pi multipliziert [25]. Die Listen haben eine festgelegte Größe, welche in der Variable framesizefordirectionchangedetection festgelegt wird. Dieser Wert wurde, wie in Kapitel 4.3 erläutert, auf 100 gesetzt. Um in einer Liste die letzten 100 Daten und in der anderen Liste die vorletzten 100 Daten zu haben, müssen die neuen Werte korrekt einsortiert werden. Dafür gibt es drei Möglichkeiten, wobei die Erste darin besteht, dass die Liste mit den älteren Daten noch nicht 100 Werte hat und der neue Wert daher in diese Liste geschrieben wird. Die zweite Option ist, dass in der Liste mit den älteren Daten bereits genug Daten vorhanden sind, aber in der neueren Liste noch nicht genug Daten vorliegen. In diesem Fall wird der neue Wert in die aktuelle Liste kopiert. Im dritten Fall sind in beiden Listen bereits genug Werte vorhanden. Daher wird zunächst der neue Wert in die aktuelle Liste kopiert. Zusätzlich wird der älteste Wert der aktuellen Liste in die ältere Liste verschoben. Abschließend wird der älteste Wert in der älteren Liste gelöscht. Die folgende Abbildung verdeutlicht dieses Vorgehen noch einmal. Abbildung 4.3: Listenhandhabung bei der Erstellung der Zeitfenster Wenn die Listen erstellt sind, kann die Erkennung auf diese zugreifen und hat immer die zwei benötigten Zeitfenster an Daten zu Verfügung. 23

28 Der erste Teil der Erkennung errechnet die Durchschnittswerte der Daten in den jeweiligen Zeitfenstern. Hier werden jeweils alle Werte der Liste addiert und durch die Anzahl der Werte geteilt. Im gleichen Abschnitt wird ebenfalls der jeweils kleinste und größte Wert für spätere Überprüfungen gespeichert. Der zweite Teil der Erkennung nutzt die eben errechneten Werte für die Berechnung der Distanz zwischen dem Minimum und den Maximum, sowie den Unterschied der Durchschnittswerte. Zunächst wird berechnet um wie viel Prozent sich die Distanz zwischen dem Minimum und den Maximum verändert hat. Des Weiteren wird die Veränderung der Durchschnittswerte berechnet. Im letzten Teil der Erkennung wird die Überprüfung auf eine Kurve mit den errechneten Veränderungen vorgenommen. Wenn die Bedingungen [vgl. 3.2] erfüllt werden, wird ein Motion Event erstellt und damit die Erkennung einer Kurve signalisiert. 4.6 Umsetzung Referenzwinkel Konzept Dieses Kapitel behandelt die Umsetzung des Konzepts Referenzwinkel [vgl. 3.3]. Der Funktion für diese Erkennung wird ein CMAttitude-Objekt übergeben. Als erstes wird geprüft, ob für die Erkennung bereits ein Referenzwinkel gespeichert wurde. Ist dies nicht der Fall, wird die Ausrichtung des übergebenen Objekts als Referenzwinkel gespeichert. Gibt es bereits eine gespeicherte Ausrichtung, wird der Unterschied zwischen der aktuellen Ausrichtung und der als Referenz gespeicherten Ausrichtung errechnet. Dies geschieht mit Hilfe der Methode multiplybyinverseofattitude der Klasse CMAttitude [26]. Diese funktioniert so, dass Sie die Inverse des übergebenen Objekts, in diesem Fall der Referenzausrichtung, errechnet und mit der aktuellen Ausrichtung multipliziert. Durch dieses Vorgehen wird der Unterschied zwischen den beiden Ausrichtungen errechnet und durch die verwendete Methode in der Variable für die aktuelle Ausrichtung gespeichert. Der vorherige Stand wird überschrieben. Die aktuelle Ausrichtung wird direkt vor jedem Aufruf der Erkennungsmethode gespeichert. 24

29 Da Probleme wie die Kardanische Blockade [vgl ] umgangen werden sollen, werden ab dieser Stelle Quaternionen genutzt. Durch das Core Motion Framework [vgl. 2.1] kann man auf diese Daten problemlos über das CMAttitude Objekt zugreifen. Genutzt werden nun die Daten des eben errechneten Unterschieds der in der Variable curattitudefordirectionchangedetection gespeichert ist. Um den benötigten Roll-Wert zu errechnen, wird folgende Formel [24] verwendet: atan2(2 (quat. y quat. w quat. x quat. z), 1 2 quat. y quat. y 2 q. z + quat. z) Um den nun erhaltenen Wert im Bogenmaß in Gradmaß um zurechnen, wird dieser mit 180/ pi multipliziert [25]. Durch diese Umrechnung kann nun der Roll-Wert in Grad dem Konzept in Kapitel 3.3 entsprechend überprüft werden. Zunächst wird geprüft, ob sich der Wert zwischen 30 und 45 Grad befindet. In diesem Fall wird die der Methode übergebene Ausrichtung als neue Referenzausrichtung gespeichert [vgl. 3.3]. Danach wird zusätzlich geprüft ob der Wert auch über 45 Grad liegt. In diesem Fall wird ein Motion Event-Objekt erstellt, da eine Kurve erkannt wurde. Dies enthält den aktuellen Zeitstempel und den Namen der Erkennung. In diesem Fall wird auch noch zwischen Links- (>45 ) und Rechtskurve (<-45 ) unterschieden. 25

30 5 Evaluation In diesem Kapitel der Arbeit wird ein Test des Prototyps geplant, durchgeführt und ausgewertet. 5.1 Testaufbau Zur Überprüfung der Konzepte wurde ein Testszenario für den in Kapitel 4 entwickelten Prototypen erstellt. Für den Test wurden vier Testpersonen gesucht, die bestimmte Kriterien erfüllen, auf die in Kapitel eingegangen wird. Die Testpersonen gehen eine vorgegebene Strecke, welche im Kapitel gezeigt wird. Für alle Testpersonen sollen die gleichen Bedingungen gelten. Das zur Verfügung gestellte iphone 4S soll in der linken Hosentasche getragen werden. Das iphone 4S hat alle benötigten Sensoren [vgl. 2.2] und daher läuft der Prototyp mit allen drei Erkennungen der Konzepte parallel. Alle vier Testläufe wurden durchgeführt, während auf dem Gerät die zu dem Zeitpunkt aktuellste ios Version 8.2 installiert war. Während des Tests wird via GPS durchgehend die Position bestimmt. Wird von einem der drei Konzepte eine Kurve erkannt, verknüpft der Prototyp die aktuelle Position mit der Erkennung. So lässt sich in der Auswertung einfacher nachvollziehen, wo genau eine Kurve erkannt wurde und wo es auf der Strecke fehlerhafte Erkennungen gab. Sämtliche Daten wie die Erkennungen, die Positionen und Zeitstempel die gesammelt werden, speichert der Prototyp in einer Datenbank. Diese Daten lassen sich nachträglich als CSV-Datei exportieren. 26

31 5.1.1 Teststrecke Die geplante Strecke für den Test ist auf der folgenden Karte zu sehen. Die Strecke beginnt mit einem geraden Stück, welches dafür gedacht ist die Testpersonen in einen gleichmäßigen Gang beschleunigen zu lassen. Ebenso bietet es Zeit um eventuelle Korrekturen an der Positionierung des Geräts in der Tasche vorzunehmen. Danach bietet die Strecke eine Mischung aus sechs Links- und sechs Rechtskurven, welche unterschiedlich schnell aufeinander folgen können. Eine zusätzliche Schwierigkeit soll der Abschnitt zwischen Kurve zwei und drei darstellen. In diesem Bereich gibt es keine Möglichkeit geradeaus zu gehen und erfordert daher einige Korrekturen der Richtung ohne dass dabei eine Kurve erkannt werden soll. Abbildung 5.1: Die Teststrecke mit Start, Ziel und den Kurven 27

32 5.1.2 Testpersonen Bei der Auswahl der Testpersonen wurde Wert darauf gelegt, dass drei von vier Personen unterschiedliche Beinlängen haben, da die Beinlänge die Gangart beeinflussen und daher zu unterschiedlichen Ergebnissen führen kann. Um eine Kontrolle der Ergebnisse und deren Aussagekraft zu haben, sollten allerdings auch zwei Personen relativ gleich gebaut sein und so einen guten Vergleich bieten können. Testperson Person 1 Person 2 Person 3 Person 4 Beinlänge Lang Kurz Lang Mittel Tabelle 5.1: Beinlänge der Testpersonen Den Testpersonen war vor dem Test bekannt, dass es sich um das Thema Kurvenerkennung dreht. Ihnen wurde nahegelegt, während des Tests ganz natürlich zu gehen. Zusätzlich wurden sie dabei auch in ein Gespräch verwickelt, damit sie sich möglichst wenig auf ihren Gang konzentrieren, sondern auf das Gespräch. Dies sollte für einen normalen, authentischen Gang sorgen. 5.2 Testergebnisse Nach jedem durchgeführten Test wurden die in der Datenbank gespeicherten Dateien für die Auswertung exportiert. Die gespeicherten Erkennungen wurden mit den enthaltenen GPS-Positionen auf einer Karte eingezeichnet und konnten dann den in Kapitel festgelegten Kurven zugeordnet werden. So konnten Statistiken zu jeder Erkennung und jeder Person erstellt werden. 28

33 Magnetometer Attitude-Roll Analyse Referenzwinkel 43,75% 37,5% 81,25% Tabelle 5.2: Gesamtergebnisse der Konzepte In Tabelle 5.2 sind die Gesamtergebnisse zu sehen. Hier wird die Erkennungsrate der drei Konzepte von allen vier Testpersonen zusammengefasst dargestellt. Zu sehen ist, dass die Erkennung mittels Magnetometer 43,75% der Kurven erkannt hat. Das sind ca. 5-6 von 12 Kurven pro Person. Das zweite Konzept, welches die Roll Daten analysiert, kommt nur auf 37,5% was, ca. 4-5 Kurven entspricht. Am besten funktionierte die Erkennung mit Hilfe eines Referenzwinkels. Dieses Konzept erkannte 81,25% der Kurven und damit 9-10 Kurven pro Person. Die folgende Tabelle zeigt die Erkennungsrate aufgeschlüsselt nach Methode und Person. Person 1 Person 2 Person 3 Person 4 Magnetometer 50% 50% 41,6% 33,3% Attitude-Roll Analyse 58,3% 16,6% 41,6% 33,3% Referenzwinkel 75% 91,6% 83,3% 75% Tabelle 5.3: Ergebnisse pro Person und Konzept In Tabelle 5.3 ist besonders die zweite Testperson hervorzuheben. Bei dieser Person wurden mittels der Roll-Daten Analyse nur zwei Kurven erkannt. Allerdings klappte die Erkennung mit einem Referenzwinkel sehr gut. Hier wurden 11 von 12 Kurven erkannt. 29

34 Abbildung 5.2: Karte mit Ergebnissen der Erkennungen je Kurve Abbildung 5.2 stellt erneut die Karte mit der Teststrecke aus Kapitel dar. Neben jeder Kurve ist zu sehen zu wie viel Prozent welche Erkennung funktioniert hat. Das Ergebnis bezieht sich hierbei auf alle Testpersonen. Auffällig ist die schlechte Erkennung der ersten Kurve durch die Referenzwinkel Erkennung. Ebenso fällt die Erkennung mittels Magnetometer nach Kurve sieben fast komplett aus. Jedes der drei Konzepte hatte im Verlauf des Tests insgesamt zwei fehlerhafte Erkennungen. 30

35 5.3 Auswertung Die Testergebnisse zeigen, dass die Erkennung mittels Referenzwinkel mit 81,25% sehr gut geklappt hat. Lässt man die Erkennung der ersten Kurve außen vor, erreicht diese Methode sogar 95%. Die erste Kurve unterschied sich nicht von den anderen. Eine mögliche Erklärung wäre hier, dass die Testpersonen sich noch in einem ungewohnten Umfeld befanden, allerdings erkannten hier die anderen beiden Konzepte die Kurve deutlich besser. Das Konzept der Kurvenerkennung mittels Magnetometer erkannte mit 43,75% lediglich etwas weniger als die Hälfte der Kurven und die Roll Werte Analyse sogar nur etwas mehr als ein Drittel der Kurven mit 37,5%. Besonders der letzte Wert weicht hier stark von den Erwartungen ab. Dass die zweite Testperson, welche die kürzesten Beine hat [vgl. Tabelle 5.1], hier auf lediglich 16,6% erkannte Kurven kommt, lässt vermuten, dass diese Erkennung stark abhängig von der Gangart des Benutzers ist. Die vierte Testperson mit mittlerer Beinlänge kommt auch auf nur 33,4%. Dieses Ergebnis lässt vermuten, dass bei den Personen mit kürzeren Beinen die Ausschläge in den Daten [vgl. 3.2] nicht stark genug waren um von der Erkennung erfasst zu werden. Ebenso ist es denkbar, dass die Grenzwerte der Erkennung nicht ideal sind. Wie in Kapitel bereits dargestellt wurde, ist das Magnetometer relativ anfällig für Fehler. Dennoch erkannte dieses Konzept 43,75% der Kurven. Hier gab es keine großen Unterschiede zwischen den Testpersonen festzustellen. Bei der zweiten Testperson gab es eine fehlerhafte Erkennung, die von allen drei Konzepten gemacht wurde. Diese lag zwischen Kurve zwei und Kurve drei. Dieser Abschnitt war als Schwierigkeit vorgesehen [vgl ]. Hier ist es gut möglich, dass die Erkennungen nicht falsch funktioniert haben sondern wirklich eine Kurve erkannt haben, weil die Testperson dementsprechend gegangen ist. 31

36 6 Fazit und Ausblick In diesem Kapitel wird diese Arbeit noch einmal abschließend zusammengefasst und ein Fazit gezogen. Zusätzlich wird ein Ausblick gegeben, wie man die verschiedenen Konzepte erweitern und Erkenntnisse aus dem Test in die Erkennung einfließen lassen kann. 6.1 Fazit Diese Arbeit beschäftigte sich mit verschiedenen Konzepten zur Erkennung einer Kurve in Echtzeit mit Hilfe des Core Motion Framework des ios SDK. Hierfür wurde die Funktionsweise verschiedener Sensoren betrachtet und wie man diese für das Ziel der Arbeit nutzen kann. Es wurden drei verschiedene Konzepte erarbeitet und in einem Prototyp umgesetzt. Diese Konzepte hatten verschiedene Ansätze und verwendeten auch verschiedene Sensordaten. Ebenso wurden verschiedene Probleme herausgestellt, Eigenarten der Konzepte erarbeitet und Lösungen in den Prototyp eingearbeitet. Der Prototyp wurde verwendet um in einem Test die Funktionalität der Erkennung zu evaluieren. Diese Evaluation ergab, dass das Konzept mit den besten Resultaten das Core Motion Framework nutzt um die aktuelle Ausrichtung des Geräts zu analysieren und eventuelle Veränderungen zu erkennen. 6.2 Ausblick Für die verschiedenen Konzepte gibt es mehrere Möglichkeiten zur Erweiterung. Eine Möglichkeit, die für alle drei Konzepte denkbar wäre, ist, die Erkennung unabhängig von der Lage in der Tasche zu machen. Sollte eine Anwendung eine Kurvenerkennung einsetzen, sollte der Benutzer nicht darauf achten müssen wie das Gerät in seiner Tasche liegt. Wie in der Arbeit bereits festgestellt wurde, gibt es verschiedene Gangtypen die sich auf die Erkennung auswirken. Hier wäre denkbar das Konzept zu erweitern, welches die Roll Daten analysiert. Hier gäbe es die Möglichkeit ein Lernsystem für die 32

37 Anwendung zu entwickeln, welches beispielsweise die ersten Gänge eines Benutzers analysiert und anhand dieser Daten Grenzwerte berechnet und das Intervall für eine Überprüfung festlegt. Eine weitere Möglichkeit zu vermeiden, dass Daten in die Zeitfenster falsch eingeteilt werden und damit eine Kurvenerkennung verhindern, ist der Ansatz auf eine bestimmt Anzahl an Daten eine Fourier Transformation durchzuführen. So würde sich ermitteln lassen, wann ein Schritt gemacht wird und anhand dieser Information könnte man seine Zeitfenster erstellen. Denkbar wäre ebenfalls die Verknüpfung der Kurvenerkennung mit weiteren Bereichen der Ganganalyse. Hier bietet sich die Schritterkennung an. Diese könnte ein Taktgeber für die Überprüfung und die Erstellung der Zeitfenster und damit eine weitere Optimierung des Zeitpunktes der Überprüfung sein. 33

38 Literaturverzeichnis [1] [2] [3] [4] [5] Wikipedia (2015): Eine Tätigkeit im Flow erleben ; Online en [Stand ] [6] IOS Developer Library: Core Motion Framework Reference ; Online otion_reference/index.html#//apple_ref/doc/uid/tp [Stand ] [7] Alasdair Allan (2011): Basic Sensors in ios S. 2 [8] Alasdair Allan (2011): Basic Sensors in ios S. 39 [9] IOS Developer Library: Accessing Accelerometer Data ; Online celerometerdata_class/index.html#//apple_ref/swift/struct/cmacceleration [Stand ] [10] IOS Developer Library: Getting the Rotation Rate ; Online rodata_class/index.html#//apple_ref/c/tdef/cmrotationrate [Stand ] [11] IOS Developer Library: CLLocationManager Class Reference ; Online ocationmanager_class/index.html [Stand ] 34

39 [12] Mahmoud El-Gohary; Sean Pearson; James McNames; Martina Mancini; Fay Horak; Sabato Mellone; Lorenzo Chiari (2013): Continuous Monitoring of Turning in Patients with Movement Disability S. 4 5 [13] Andreas Eichner: Sensors & Core Motion ; Online tutorial-core-motion [Stand ] [14] IOS Developer Library: CMAttitude Class Reference ; Online tude_class/index.html [Stand ] [15] Nirupam Roy; He Wang; Romit Roy Choudhury (2014): I am a Smartphone and I can Tell my User s Walking Direction K. 4.3 [16] Alex Diener (2010): Quaternions ; Online [Stand ] [17] Denivip Media (2013): The art of core motion in ios ; Online [Stand ] [18] Logah Perumal (2011): Quaternion and Its Application in Rotation Using Sets of Regions [19] Matt Neuburg (2013): ios 7 Programming Fundamentals S. 306 [20] University of Southern California (2013): Accelerometer Gyroscope ; Online [Stand ] 35

40 [21] IOS Developer Library: CMAttitude Reference Frame ; Online tude_class/index.html#//apple_ref/c/tdef/cmattitudereferenceframe [Stand ] [22] Wiebren Zijlstra; At L. Hof (2002): Assessment of spatio-temporal gait parameters from trunk accelerations during human walking S. 6 [23] IOS Developer Library: Getting the Calibrated Magnetic Field ; Online vicemotion_class/#//apple_ref/occ/instp/cmdevicemotion/magneticfield [Stand ] [24] Wikipedia (2015): Conversion between quaternions and Euler angles ; Online [Stand ] [25] Wikipedia (2015): Radiant (Einheit) ; Online [Stand ] [26] IOS Developer Library: Obtaining the Change in Attitude ; Online tude_class/index.html#//apple_ref/occ/instm/cmattitude/multiplybyinverseofattitud e: [Stand ] 36

Software-Entwicklung für Android und ios

Software-Entwicklung für Android und ios Software-Entwicklung für Android und ios Teil 5: Sensoren Typen von Sensoren Zweck Beispiele Hardware-Sensoren Ermitteln tatsächliche Werte Accelerometer, Magnetometer, Gyroskop, Barometer, Näherungssensor,

Mehr

SiteAudit Knowledge Base. Move Add Change Tracking. Vorteile Übersicht. In diesem Artikel: Vorteile Übersicht Funktionsübersicht Berichte anpassen

SiteAudit Knowledge Base. Move Add Change Tracking. Vorteile Übersicht. In diesem Artikel: Vorteile Übersicht Funktionsübersicht Berichte anpassen SiteAudit Knowledge Base Move Add Change Tracking Dezember 2010 In diesem Artikel: Vorteile Übersicht Funktionsübersicht Berichte anpassen MAC Benachrichtigungen Vorteile Übersicht Heutzutage ändern sich

Mehr

SENSOREN MOBILER DEVICES

SENSOREN MOBILER DEVICES SENSOREN MOBILER DEVICES Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung AM1 Hauptseminar: Re-usable Content in 3D und Simulationssystemen SS 2013 Prof. Manfred Thaller

Mehr

3. Erfassung und Verarbeitung von Sensordaten

3. Erfassung und Verarbeitung von Sensordaten 3. Erfassung und Verarbeitung von Sensordaten Lernziele 3. Erfassung und Verarbeitung von Sensordaten Lernziele: Typische in mobilen Geräten enthaltene Sensorarten kennen, Daten von solchen Sensoren empfangen

Mehr

Jahresabschluss- rechnung und Rückstände

Jahresabschluss- rechnung und Rückstände ACS Data Systems AG Jahresabschluss- rechnung und Rückstände (Version 10.08.2009) Buchhaltung für Schulen ACS Data Systems AG Bozen / Brixen / Trient Tel +39 0472 27 27 27 obu@acs.it 2 Inhaltsverzeichnis

Mehr

Artikel Schnittstelle über CSV

Artikel Schnittstelle über CSV Artikel Schnittstelle über CSV Sie können Artikeldaten aus Ihrem EDV System in das NCFOX importieren, dies geschieht durch eine CSV Schnittstelle. Dies hat mehrere Vorteile: Zeitersparnis, die Karteikarte

Mehr

DRESDEN. Ermitteln von Sprunghöhen mit einem Windows Phone. ZfP-Sonderpreis der DGZfP beim Regionalwettbewerb Jugend forscht.

DRESDEN. Ermitteln von Sprunghöhen mit einem Windows Phone. ZfP-Sonderpreis der DGZfP beim Regionalwettbewerb Jugend forscht. ZfP-Sonderpreis der DGZfP beim Regionalwettbewerb Jugend forscht DRESDEN Ermitteln von Sprunghöhen mit einem Windows Phone Felix Guttbier Schule: Gymnasium Brandis Jugend forscht 2014 ERMITTELN VON SPRUNGHÖHEN

Mehr

Geschäftsführer Martin Ritter Tel: 0351-44 00 44 22 info@webneo.de. Sitz der Gesellschaft Dresden. WEBneo GmbH Breitscheidstr.

Geschäftsführer Martin Ritter Tel: 0351-44 00 44 22 info@webneo.de. Sitz der Gesellschaft Dresden. WEBneo GmbH Breitscheidstr. 1 01237 1 Dokumentation DHL Versandtool Easy Log 1. Installation / Einrichtung 1.1 Installieren des Versandtools 1. Als erstes installieren Sie das Versandtool-Plugin in Ihrem Shop und aktivieren dieses.

Mehr

Content Management Systeme

Content Management Systeme Content Management Systeme Ein Vergleich unter besonderer Berücksichtigung von CoreMedia und TYPO3 Bachelorthesis im Kooperativen Bachelor Studiengang Informatik (KoSI) der Fachhochschule Darmstadt University

Mehr

Softwareschnittstellen

Softwareschnittstellen P4.1. Gliederung Rechnerpraktikum zu Kapitel 4 Softwareschnittstellen Einleitung, Component Object Model (COM) Zugriff auf Microsoft Excel Zugriff auf MATLAB Zugriff auf CATIA Folie 1 P4.2. Einleitung

Mehr

Performance und Bandbreitenmanagement Tests Version 10.01.2005. MuSeGa

Performance und Bandbreitenmanagement Tests Version 10.01.2005. MuSeGa Berner Fachhochschule Hochschule für Technik und Informatik HTI Performance und Bandbreitenmanagement Tests Version 10.01.2005 Diplomarbeit I00 (2004) MuSeGa Mobile User Secure Gateway Experte: Andreas

Mehr

QueueMetrics Handbuch

QueueMetrics Handbuch QueueMetrics Handbuch ?... 3... 4... 5.. 9... 10.. 10 11... 12... 13 Stand: 22.09.2011 2 Mit QueueMetrics kann man: Berichte bezüglich der Call Center Aktivität erstellen, unterscheidbar nach Warteschlange/-n,

Mehr

Die NXT-Motoren im Detail

Die NXT-Motoren im Detail Die NXT-Motoren im Detail In diesem Tutorial werden wir uns die verschiedenen Betriebsarten der NXT-Motoren anhand von Beispielen anschauen. Teil 1: Regulation Lässt man einen Motor mit dem OnFwd oder

Mehr

Europas größte mobile Workforce

Europas größte mobile Workforce Europas größte mobile Workforce Überall. Jederzeit. Grenzenlos. Stellen Sie sich vor, auf Hunderttausende Smartphone- Nutzer überall vor Ort zurückgreifen zu können Kurzfristig Beschäftigte einstellen

Mehr

Oracle-Statistiken im Data Warehouse effizient nutzen

Oracle-Statistiken im Data Warehouse effizient nutzen Oracle-Statistiken im Data Warehouse effizient nutzen Reinhard Mense ARETO Consulting Köln Schlüsselworte: DWH, Data Warehouse, Statistiken, Optimizer, Performance, Laufzeiten Einleitung Für die performante

Mehr

Das Magnetfeld der Erde. Stephen Kimbrough Damjan Štrus Corina Toma

Das Magnetfeld der Erde. Stephen Kimbrough Damjan Štrus Corina Toma Das Magnetfeld der Erde Stephen Kimbrough Damjan Štrus Corina Toma Das Magnetfeld der Erde 65 1 Zusammenfassung Warum ist es so wichtig, die Werte des Magnetfelds der Erde zu kennen? Warum untersucht die

Mehr

Freelance 2000. DeltaPLC-Tool. Version 4 / Version 5

Freelance 2000. DeltaPLC-Tool. Version 4 / Version 5 Freelance 2000 DeltaPLC-Tool Version 4 / Version 5 Inhaltsverzeichnis 1 Allgemeine Beschreibung... 5 2 Aufruf des DeltaPLC-Tool... 5 3 Vergleich der PLC-Dateien... 6 4 Konfigurationsänderungen... 7 5

Mehr

Numerische Optionsbepreisung durch Monte-Carlo-Simulation und Vergleich mit dem Black-Scholes-Modell

Numerische Optionsbepreisung durch Monte-Carlo-Simulation und Vergleich mit dem Black-Scholes-Modell Numerische Optionsbepreisung durch Monte-Carlo-Simulation und Vergleich mit dem Black-Scholes-Modell Bachelorarbeit zur Erlangung des akademischen Grades Bachelor of Science (B.Sc.) im Studiengang Wirtschaftswissenschaft

Mehr

Teile ohne Bestand mit bestimmtem Alter (löschen) 9.8.1

Teile ohne Bestand mit bestimmtem Alter (löschen) 9.8.1 Teile ohne Bestand mit bestimmtem Alter (löschen) 9.8.1 9.8.1-Teile ohne Bestand mit bestimmtem Alter Dieses Programm kann nur mit Mastercode aufgerufen werden. Mit Hilfe dieses Programmes lassen sich

Mehr

Erweiterung eines SMIL Players für die Darstellung von Transparenzen und SVG Inhalten

Erweiterung eines SMIL Players für die Darstellung von Transparenzen und SVG Inhalten Bachlor-Abschlussarbeit Erweiterung eines SMIL Players für die Darstellung von Transparenzen und SVG Inhalten im Studiengang Informatik der Fakultät IV - Wirtschaft und Informatik Sommersemester 2009 Burim

Mehr

Prüfung einer mehrstufigen Datenmigration ein Fall aus der Praxis

Prüfung einer mehrstufigen Datenmigration ein Fall aus der Praxis Prüfung einer mehrstufigen Datenmigration ein Fall aus der Praxis Peter Steuri Partner / Leiter IT-Prüfung und -Beratung BDO AG, Solothurn Ausgangslage / Zielsetzungen Ausgangslage Sehr grosses, global

Mehr

Institut für Wirtschaftsinformatik. Analyse und Optimierung des Restwertemanagements eines Fahrzeugherstellers. Masterarbeit

Institut für Wirtschaftsinformatik. Analyse und Optimierung des Restwertemanagements eines Fahrzeugherstellers. Masterarbeit Institut für Wirtschaftsinformatik Prof. Dr. Michael H. Breitner Analyse und Optimierung des Restwertemanagements eines Fahrzeugherstellers Masterarbeit zur Erlangung des akademischen Grades Master of

Mehr

Beuth Hochschule BEUTH HOCHSCHULE FÜR TECHNIK BERLIN University of Applied Sciences

Beuth Hochschule BEUTH HOCHSCHULE FÜR TECHNIK BERLIN University of Applied Sciences Beuth Hochschule BEUTH HOCHSCHULE FÜR TECHNIK BERLIN University of Applied Sciences WISSENSCHAFTLICHE WEITERBILDUNG Fernstudium Industrial Engineering Produktions- und Betriebstechnik Kurseinheit 98 und

Mehr

etutor Benutzerhandbuch XQuery Benutzerhandbuch Georg Nitsche

etutor Benutzerhandbuch XQuery Benutzerhandbuch Georg Nitsche etutor Benutzerhandbuch Benutzerhandbuch XQuery Georg Nitsche Version 1.0 Stand März 2006 Versionsverlauf: Version Autor Datum Änderungen 1.0 gn 06.03.2006 Fertigstellung der ersten Version Inhaltsverzeichnis:

Mehr

WCF Services in InfoPath 2010 nutzen

WCF Services in InfoPath 2010 nutzen WCF Services in InfoPath 2010 nutzen Abstract Gerade wenn man schreibend von InfoPath aus auf eine SQL-Server Datenbank zugreifen will, kommt man quasi um einen Web Service nicht herum. In diesem Post

Mehr

Perzentile mit Hadoop ermitteln

Perzentile mit Hadoop ermitteln Perzentile mit Hadoop ermitteln Ausgangspunkt Ziel dieses Projektes war, einen Hadoop Job zu entwickeln, der mit Hilfe gegebener Parameter Simulationen durchführt und aus den Ergebnissen die Perzentile

Mehr

ProCall 5 Enterprise

ProCall 5 Enterprise ProCall 5 Enterprise Installationsanleitung Upgradeverfahren von ProCall 4+ Enterprise auf ProCall 5 Enterprise ProCall 5 Enterprise Upgrade Seite 1 von 10 Rechtliche Hinweise / Impressum Die Angaben in

Mehr

Eine Online-Befragung durchführen Schritt für Schritt

Eine Online-Befragung durchführen Schritt für Schritt Anleitung für Schulleitende Eine Online-Befragung durchführen Schritt für Schritt 20. September 2010 IQES online Tellstrasse 18 8400 Winterthur Schweiz Telefon +41 52 202 41 25 info@iqesonline.net www.iqesonline.net

Mehr

Umsetzung von DEA in Excel

Umsetzung von DEA in Excel Umsetzung von DEA in Excel Thorsten Poddig Armin Varmaz 30. November 2005 1 Vorbemerkungen In diesem Dokument, das als Begleitmaterial zum in der Zeitschrift,,Controlling, Heft 10, 2005 veröffentlichten

Mehr

FÜR GOOGLE ANDROID OPERATING SYSTEM. Dokumentation. Version 1.2013. 2013 NAM.IT Software-Entwicklung Alle Rechte vorbehalten.

FÜR GOOGLE ANDROID OPERATING SYSTEM. Dokumentation. Version 1.2013. 2013 NAM.IT Software-Entwicklung Alle Rechte vorbehalten. FÜR GOOGLE ANDROID OPERATING SYSTEM Dokumentation Version 1.2013 2013 NAM.IT Software-Entwicklung Alle Rechte vorbehalten. 1 Information Diese Dokumentation beschreibt die Funktionen der kostenpflichten

Mehr

AJAX SSL- Wizard Referenz

AJAX SSL- Wizard Referenz AJAX SSL- Wizard Referenz Version 1.0.2+ - 04.04.2011 Präambel Die vorliegende Dokumentation beschreibt den AJAX basierten SSL- Wizard der CertCenter AG. Der SSL- Wizard kann mit wenigen Handgriffen nahtlos

Mehr

Benutzerhandbuch planlauf/vibe PRO 2015

Benutzerhandbuch planlauf/vibe PRO 2015 Benutzerhandbuch planlauf/vibe PRO 2015 Anforderungen Unterstützung von OpenGL 2.1 oder höher durch die Grafikkarte Windows 7 mit Microsoft.NET-Framework 4.0 oder höher PDF-Reader (zum Öffnen des Benutzerhandbuchs)

Mehr

Einsatz der Mehrkörpersimulation in Verbindung mit Computertomographie in der Produktentwicklung

Einsatz der Mehrkörpersimulation in Verbindung mit Computertomographie in der Produktentwicklung Einsatz der Mehrkörpersimulation in Verbindung mit Computertomographie in der Produktentwicklung Hintergrund Bei komplexen Baugruppen ergeben sich sehr hohe Anforderungen an die Tolerierung der einzelnen

Mehr

ekey TOCAhome pc Software Inhaltsverzeichnis 1. ZWECK DIESES DOKUMENTS... 3 2. VERWENDUNGSHINWEIS ZUR SOFTWARE... 3

ekey TOCAhome pc Software Inhaltsverzeichnis 1. ZWECK DIESES DOKUMENTS... 3 2. VERWENDUNGSHINWEIS ZUR SOFTWARE... 3 Inhaltsverzeichnis Software ekey TOCAhome pc 1. ZWECK DIESES DOKUMENTS... 3 2. VERWENDUNGSHINWEIS ZUR SOFTWARE... 3 3. MONTAGE, INSTALLATION UND ERSTINBETRIEBNAHME... 3 4. VERSION... 3 Version 1.5 5. BENUTZEROBERFLÄCHE...

Mehr

NET-Metrix Research Frequently Asked Questions. NET-Metrix Research für ios & Android

NET-Metrix Research Frequently Asked Questions. NET-Metrix Research für ios & Android NET-Metrix Research Frequently Asked Questions NET-Metrix Research für ios & Android 1 Inhalt 1. Allgemeine Fragen... 3 1.1 Was ist NET-Metrix Research?... 3 1.2 Wie funktioniert NET-Metrix Research?...

Mehr

Thema: Risikomanagement

Thema: Risikomanagement 1.1. Risikomanagement Eine der elementarsten Anforderungen an die Projektplanung ist, durch zielgerichtete Planung mögliche Risiken, die den Projekterfolg in Frage stellen, zu identifizieren und präventiv

Mehr

Cookies Cookies E-Mail-Marketing Live Chat Analytik

Cookies Cookies E-Mail-Marketing Live Chat Analytik Cookies Cookies Was ist ein Cookie? Ein Cookie ist eine Datei, die von einem Internetserver in Ihrem Browser oder auf Ihrem Gerät installiert wird. Das Cookie ermöglicht es dem Server, Ihre Erfahrung zu

Mehr

Inhalt. Dokumentation VIAS_W. V32w6900 Workflow-Assistent

Inhalt. Dokumentation VIAS_W. V32w6900 Workflow-Assistent Dokumentation Inhalt 1. Der... 2 1.1 Benötigte Dateien... 2 1.2 Vorbereitung... 2 1.3 Hinterlegung von Workflows... 2 1.4 Definition eines neuen Workflows... 3 1.5 Definition von Aktionen... 5 1.1.1 Aktionstyp

Mehr

In dieser Aufgabe sollen Teile eines kleinen Pong-Spiels analysiert und implementiert werden. Gegeben sei dazu das folgende Szenario:

In dieser Aufgabe sollen Teile eines kleinen Pong-Spiels analysiert und implementiert werden. Gegeben sei dazu das folgende Szenario: IF1-Informatik Eph GK (GA) Bearbeitungszeit: 90 min. Seite 1 Aufgabe 1: Greenfoot mit Kara Ein Pong-Spiel In dieser Aufgabe sollen Teile eines kleinen Pong-Spiels analysiert und implementiert werden. Gegeben

Mehr

Sensoren in Apple Geräten. Minh Khoi Nguyen! Tobias Schaarschmidt! SG: MD13w1

Sensoren in Apple Geräten. Minh Khoi Nguyen! Tobias Schaarschmidt! SG: MD13w1 Sensoren in Apple Geräten Minh Khoi Nguyen Tobias Schaarschmidt SG: MD13w1 Inhalt 1. Allgemein zu iphone & ipad 2. Generationen 3. Sensoren 3.1. Arten 3.2. Funktion 1. Allgemein zu iphone - Erscheinungsjahr:

Mehr

Group and Session Management for Collaborative Applications

Group and Session Management for Collaborative Applications Diss. ETH No. 12075 Group and Session Management for Collaborative Applications A dissertation submitted to the SWISS FEDERAL INSTITUTE OF TECHNOLOGY ZÜRICH for the degree of Doctor of Technical Seiences

Mehr

Security Patterns. Benny Clauss. Sicherheit in der Softwareentwicklung WS 07/08

Security Patterns. Benny Clauss. Sicherheit in der Softwareentwicklung WS 07/08 Security Patterns Benny Clauss Sicherheit in der Softwareentwicklung WS 07/08 Gliederung Pattern Was ist das? Warum Security Pattern? Security Pattern Aufbau Security Pattern Alternative Beispiel Patternsysteme

Mehr

MGE Datenanbindung in GeoMedia

MGE Datenanbindung in GeoMedia TIPPS & TRICKS MGE Datenanbindung in GeoMedia 10. September 2002 / AHU INTERGRAPH (Schweiz) AG Neumattstrasse 24, CH 8953 Dietikon Tel: 043 322 46 46 Fax: 043 322 46 10 HOTLINE: Telefon: 043 322 46 00

Mehr

Release Notes für die Online-Version der Perinorm - September 2014

Release Notes für die Online-Version der Perinorm - September 2014 Release Notes für die Online-Version der Perinorm - September 2014 Mit der Ausgabe September 2014 wird die Software für die Online-Version von Perinorm aktualisiert. Einige Verbesserungen, die mit diesem

Mehr

Toleranzschema. ArtemiS SUITE

Toleranzschema. ArtemiS SUITE Anzeige von Referenz- und Grenzwertkurven Überprüfung von Analyseergebnissen auf Über- bzw. Unterschreitungen der definierten Grenzwertkurven HEARING IS A FASCINATING SENSATION ArtemiS SUITE Motivation

Mehr

Eine Fahrstuhlfahrt. Datengewinnung (TI 83)

Eine Fahrstuhlfahrt. Datengewinnung (TI 83) Eine Fahrstuhlfahrt Zielsetzung: In diesem Experiment ist es unser Ziel die Bewegung eines Fahrstuhls zu untersuchen und seine Beschleunigung zu messen. Der Sensor ist ein Beschleunigungsmesser, der mit

Mehr

Konzepte zur Datenhaltung für Webseiten in einem Web-Content- Management-System

Konzepte zur Datenhaltung für Webseiten in einem Web-Content- Management-System Konzepte zur Datenhaltung für Webseiten in einem Web-Content- Management-System Web-Content-Management-Systeme () dienen dazu, komplexe Websites zu verwalten und den Autoren einzelner Webseiten möglichst

Mehr

Tinytag Funk- Datenlogger- Software

Tinytag Funk- Datenlogger- Software Tinytag Funk- Datenlogger- Software Seite: 1 Tinytag Funk- Datenlogger- Software Tinytag Explorer ist die Windows- basierte Software zum Betrieb eines Tinytag Funk- Systems. Die Anwender können ihre Daten

Mehr

GeoShop Netzwerkhandbuch

GeoShop Netzwerkhandbuch Technoparkstrasse 1 8005 Zürich Tel.: 044 / 350 10 10 Fax.: 044 / 350 10 19 GeoShop Netzwerkhandbuch Zusammenfassung Diese Dokumentation beschreibt die Einbindung des GeoShop in bestehende Netzwerkumgebungen.

Mehr

3 GRAFIKEN, BILDER, ZEICHNUNGSOBJEKTE

3 GRAFIKEN, BILDER, ZEICHNUNGSOBJEKTE 3 GRAFIKEN, BILDER, ZEICHNUNGSOBJEKTE Grafiken, Bilder und Zeichnungsobjekte können in einer Präsentation mehrere Funktionen haben: Sie können eine Präsentation anschaulicher machen, können das Vorgeführte

Mehr

Computer Assisted Audit Techniques and Tools in der Wirtschaftsprüfung. Bachelorarbeit

Computer Assisted Audit Techniques and Tools in der Wirtschaftsprüfung. Bachelorarbeit Computer Assisted Audit Techniques and Tools in der Wirtschaftsprüfung Bachelorarbeit zur Erlangung des akademischen Grades Bachelor of Science (B.Sc.) im Studiengang Wirtschaftswissenschaft der Wirtschaftswissenschaftlichen

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

GDI - Gesellschaft für Datentechnik und Informationssysteme mbh. Installation und Konfiguration des GDI App Servers für die Verwendung der GDI Apps

GDI - Gesellschaft für Datentechnik und Informationssysteme mbh. Installation und Konfiguration des GDI App Servers für die Verwendung der GDI Apps GDI - Gesellschaft für Datentechnik und Informationssysteme mbh Installation und Konfiguration des GDI App Servers für die Verwendung der GDI Apps Inhaltsverzeichnis 1. Inhalt... 2 a. GDI Zeit-App... 2

Mehr

Whitepaper. Produkt: address manager 2003. David XL Tobit InfoCenter AddIn für den address manager email Zuordnung

Whitepaper. Produkt: address manager 2003. David XL Tobit InfoCenter AddIn für den address manager email Zuordnung combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: address manager 2003 David XL Tobit InfoCenter AddIn für den address manager email Zuordnung David XL Tobit InfoCenter AddIn für den address

Mehr

Bedienungsanleitung für S4-Monitor

Bedienungsanleitung für S4-Monitor Bedienungsanleitung für S4-Monitor EINLEITUNG Der S4-Leistungsmonitor von WaterRower vereint technische Perfektion mit Benutzerfreundlichkeit. Der WaterRower-Monitor der Serie 4 verfügt über 6 Informations-

Mehr

13 OOP MIT DELPHI. Records und Klassen Ein Vergleich

13 OOP MIT DELPHI. Records und Klassen Ein Vergleich 13 OOP MIT DELPHI Delphi war früher "Object Pascal". Dieser Name impliziert eine Funktionalität, welche in der Welt der Programmierung nicht mehr wegzudenken ist: die objektorientierte Programmierung,

Mehr

eassessment Oracle DB Engine Whitepaper

eassessment Oracle DB Engine Whitepaper eassessment Oracle DB Engine Whitepaper DOKUMENT: TYP: eassessment Oracle DB Engine Whitepaper Plattformdokumentation ERSTELLT VON: nova ratio AG Universitätsstraße 3 56070 Koblenz Deutschland VERSION:

Mehr

Benutzerdokumentation Hosted Backup Services Client

Benutzerdokumentation Hosted Backup Services Client Benutzerdokumentation Hosted Backup Services Client Geschäftshaus Pilatushof Grabenhofstrasse 4 6010 Kriens Version 1.1 28.04.2014 Inhaltsverzeichnis 1 Einleitung 4 2 Voraussetzungen 4 3 Installation 5

Mehr

Erweiterung für Premium Auszeichnung

Erweiterung für Premium Auszeichnung Anforderungen Beliebige Inhalte sollen im System als Premium Inhalt gekennzeichnet werden können Premium Inhalte sollen weiterhin für unberechtigte Benutzer sichtbar sein, allerdings nur ein bestimmter

Mehr

SOFTWARE. ekey TOCAhome pc. Herausgeber: ekey biometric systems GmbH Lunzerstraße 64 A-4030 Linz office@ekey.net n www.ekey.net

SOFTWARE. ekey TOCAhome pc. Herausgeber: ekey biometric systems GmbH Lunzerstraße 64 A-4030 Linz office@ekey.net n www.ekey.net SOFTWARE ekey TOCAhome pc Herausgeber: ekey biometric systems GmbH Lunzerstraße 64 A-4030 Linz office@ekey.net n www.ekey.net Ihr Finger ist der Schlüssel Inhaltsverzeichnis 1. ZWECK DIESES DOKUMENTS 3

Mehr

Der Parameter CLOSE bewirkt, dass sich das Sicherungsprogramm am Ende der Sicherung automatisch schliesst

Der Parameter CLOSE bewirkt, dass sich das Sicherungsprogramm am Ende der Sicherung automatisch schliesst 1 Sicherung 1.1 Einleitung Die Applikation WSCAR basiert auf der Datenbank-Engine Firebird 1.5.5 / 2.5.2. Beide Programme sind nur auf der Hauptstation(Server) installiert und dürfen nie deinstalliert

Mehr

Conversion Attribution

Conversion Attribution Conversion Attribution Eines der Trendthemen über das zurzeit jeder spricht ist Attribution. Das heißt allerdings nicht, dass auch jeder weiß was genau Attribution ist, was man damit machen kann und für

Mehr

Webshop III Installation

Webshop III Installation Schnittstellen Webshop III Installation Stand 15.02.2010 TOPIX Informationssysteme AG Inhaltsverzeichnis TOPIX Webshop-Schnittstelle 8.1.2...3 Neue Webshops...3 Systemanforderungen...3 OsCommerce...3 OXID

Mehr

Software Release Notes

Software Release Notes Software Release Notes dss V1.1.0 Mit Software Release Notes (SRN) informiert aizo über Software-Änderungen bei bestehenden Produkten, welche vom Endkunden aktualisiert werden können. Dokument-Nummer SRN-2011-01

Mehr

Merkblatt Masterarbeit

Merkblatt Masterarbeit Allgemeines Die Masterarbeit kann frühestens zu Beginn des 5. Semesters und muss spätestens zu Beginn des 7. Semesters per Formblatt bei der Studiengangsleitung angemeldet werden (vgl. Formblatt Anmeldung

Mehr

Testplan. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw, 16.04.2013

Testplan. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw, 16.04.2013 Software Komponenten FS13 Gruppe 03 Horw, 16.04.2013 Bontekoe Christian Estermann Michael Moor Simon Rohrer Felix Autoren Bontekoe Christian Studiengang Informatiker (Berufsbegleitend) Estermann Michael

Mehr

Administrator-Anleitung

Administrator-Anleitung Administrator-Anleitung für die Typ 2 Installation der LEC-Web-Anwendung auf einem Microsoft Windows Server Ansprechpartner für Fragen zur Software: Zentrum für integrierten Umweltschutz e.v. (ZiU) Danziger

Mehr

Grundfunktionen und Bedienung

Grundfunktionen und Bedienung Kapitel 13 Mit der App Health ist eine neue Anwendung in ios 8 enthalten, die von vorangegangenen Betriebssystemen bislang nicht geboten wurde. Health fungiert dabei als Aggregator für die Daten von Fitness-

Mehr

Computergestützte Videoanalyse physikalischer Vorgänge

Computergestützte Videoanalyse physikalischer Vorgänge Computergestützte Videoanalyse physikalischer Vorgänge Erprobung des Systems AVA Wissenschaftliche Arbeit zur Erlangung der ersten Staatsprüfung für das Lehramt am Gymnasium Universität Leipzig Fakultät

Mehr

Beschreibung. Process Description: Sartorius Bestellnummer / Order No.:

Beschreibung. Process Description: Sartorius Bestellnummer / Order No.: Q-App: USP Advanced Bestimmung des Arbeitsbereiches von Waagen gem. USP Kapitel 41 mit Auswertung über HTML (Q-Web) Determination of the operating range of balances acc. USP Chapter 41 with evaluation

Mehr

Programmierung eines NewsTickers in Java

Programmierung eines NewsTickers in Java Programmierung eines NewsTickers in Java ( & ) Projektarbeit Programmiertechnik:Java NTA FH Isny 12. Info David Mayr / Andreas Krug Seite 1 von 7 ::: David Mayr / Andreas Krug [ 12. Info NTA FH Isny ]

Mehr

TimeMachine. Time CGI. Version 1.5. Stand 04.12.2013. Dokument: time.odt. Berger EDV Service Tulbeckstr. 33 80339 München

TimeMachine. Time CGI. Version 1.5. Stand 04.12.2013. Dokument: time.odt. Berger EDV Service Tulbeckstr. 33 80339 München Time CGI Version 1.5 Stand 04.12.2013 TimeMachine Dokument: time.odt Berger EDV Service Tulbeckstr. 33 80339 München Fon +49 89 13945642 Mail rb@bergertime.de Versionsangaben Autor Version Datum Kommentar

Mehr

Analyse der Verschlüsselung von App- Daten unter ios 7

Analyse der Verschlüsselung von App- Daten unter ios 7 Analyse der Verschlüsselung von App- Daten unter ios 7 Version 1.0 Dokumentenhistorie: Version Datum Autor Co-Autor 1.0 16.12.2013 ASC - 1.0 16.12.2013 - CD Version 1.0 cirosec GmbH 2013 Seite 2 von 11

Mehr

Transportschäden und Maschinenkollisionen einfach registrieren

Transportschäden und Maschinenkollisionen einfach registrieren Y z X Robuster G-Logger, Ausführung nach Industriestandard Batteriebetrieben über 2 Jahre je nach Aufzeichnungsrate Drei Achsen Aufzeichnung, X,Y und Z Kalibrierbar für jede Achse Absolut oder relative

Mehr

Risikomanagement für IT-Projekte: Vergleich von Risiken und Methoden

Risikomanagement für IT-Projekte: Vergleich von Risiken und Methoden Sperrvermerk Risikomanagement für IT-Projekte: Vergleich von Risiken und Methoden Bachelorarbeit Zur Erlangung des akademischen Grades Bachelor of Science (B.Sc.) im Studiengang Wirtschaftswissenschaft

Mehr

Arbeiten mit Excel. 1. Allgemeine Hinweise

Arbeiten mit Excel. 1. Allgemeine Hinweise 1. Allgemeine Hinweise Man sollte eine Excel Tabelle immer so übersichtlich wie möglich halten. Dazu empfiehlt es sich, alle benötigten Daten, Konstanten und Messwerte inklusive aller dazugehörigen Einheiten

Mehr

Kassenabschluss im IOS2000/DIALOG Stand: 11/2011

Kassenabschluss im IOS2000/DIALOG Stand: 11/2011 Kassenabschluss im IOS2000/DIALOG Stand: 11/2011 Das Wichtigste zu Beginn kurz zusammengefasst: Anlegen eines Geldtransferartikels (wenn noch nicht geschehen) Seite 1 Absatz 2 Eintragen des Geldtransferartikels

Mehr

Seminar zur BWL im Wintersemester 2015 / 2016. Maschinenbelegungsplanung in der betrieblichen Fertigung

Seminar zur BWL im Wintersemester 2015 / 2016. Maschinenbelegungsplanung in der betrieblichen Fertigung Institut für Wirtschaftswissenschaft Abteilung für BWL und Unternehmensforschung Prof. Dr. Jürgen Zimmermann (juergen.zimmermann@tu-clausthal.de) Stefan Kreter, M. Sc. (stefan.kreter@tu-clausthal.de) Julius-Albert-Str.

Mehr

HOCHSCHULE KONSTANZ TECHNIK, WIRTSCHAFT UND GESTALTUNG. Das Luzifer-Rätsel. Prof. Dr. Hartmut Plesske Wintersemester 2008/09. von.

HOCHSCHULE KONSTANZ TECHNIK, WIRTSCHAFT UND GESTALTUNG. Das Luzifer-Rätsel. Prof. Dr. Hartmut Plesske Wintersemester 2008/09. von. HOCHSCHULE KONSTANZ TECHNIK, WIRTSCHAFT UND GESTALTUNG Fakultät Informatik Das Luzifer-Rätsel Prof. Dr. Hartmut Plesske Wintersemester 2008/09 von Max Nagl nagl@fh-konstanz.de Inhaltsverzeichnis Inhaltsverzeichnis

Mehr

Dreamwap. Systemanalyse

Dreamwap. Systemanalyse Dreamwap Systemanalyse Änderungskontrolle Version Datum Name Bemerkung 0.1 15.7.2000 P. Troxler Initialversion 0.2 16.7.2000 P. Troxler Neue Tabelle: Kap. 2.1. Vgl. Datenbank Tabellen 0.3 18.7.2000 P.

Mehr

Installationsanleitung Expertatis

Installationsanleitung Expertatis Installationsanleitung Expertatis 1. Komplettinstallation auf einem Arbeitsplatz-Rechner Downloaden Sie die Komplettinstallation - Expertatis_Komplett-Setup_x32.exe für ein Windows 32 bit-betriebssystem

Mehr

Installation Guide. Installation Guide. Installationsanleitung für die anaptecs JEAF Plattform. Version 1.2 Letzte Änderung 05.

Installation Guide. Installation Guide. Installationsanleitung für die anaptecs JEAF Plattform. Version 1.2 Letzte Änderung 05. Installation Guide Thema Version 1.2 Letzte Änderung 05. Dezember 2011 Status Installationsanleitung für die anaptecs JEAF Plattform Freigegeben Inhaltsverzeichnis 1 Motivation... 4 1.1 Abgrenzungen...

Mehr

Masterarbeit. im Masterstudiengang Wirtschaftswissenschaft der. Wirtschaftswissenschaftlichen Fakultät der Leibniz Universität Hannover.

Masterarbeit. im Masterstudiengang Wirtschaftswissenschaft der. Wirtschaftswissenschaftlichen Fakultät der Leibniz Universität Hannover. Entwicklung von Führungskräften mit einer Mobile-Learning Anwendung Masterarbeit zur Erlangung des akademischen Grades Master of Science (M.Sc.) im Masterstudiengang Wirtschaftswissenschaft der Wirtschaftswissenschaftlichen

Mehr

Der Anschluss an einen Computer

Der Anschluss an einen Computer Firmware version: 2.1 GUI version: 2.1 Board version: siehe Abbildung Der Anschluss an einen Computer Man verbindet das Controllerboard mit dem PC mit einem USB-Kabel und natürlich den Sensor mit dem entsprechenden

Mehr

DHL-Connector. für JTL-WAWI. Anleitung. 0.1 Änderungsverzeichnis. Versionsnummer. Datum Änderung Autor

DHL-Connector. für JTL-WAWI. Anleitung. 0.1 Änderungsverzeichnis. Versionsnummer. Datum Änderung Autor DHL-Connector für JTL-WAWI Anleitung 0.1 Änderungsverzeichnis Versionsnummer Datum Änderung Autor 1.0 03.04.2015 Erstellung des Dokumentes Thomas Kehl Datum 04.04.2015 Seite 1 von 13 0.3 Inhaltsverzeichnis

Mehr

Datenübernahme easyjob 3.0 zu easyjob 4.0

Datenübernahme easyjob 3.0 zu easyjob 4.0 Datenübernahme easyjob 3.0 zu easyjob 4.0 Einführung...3 Systemanforderung easyjob 4.0...3 Vorgehensweise zur Umstellung zu easyjob 4.0...4 Installation easyjob 4.0 auf dem Server und Arbeitsstationen...4

Mehr

Analyse 1: Diskussion der Beschleunigungsdaten

Analyse 1: Diskussion der Beschleunigungsdaten Flugzeugstart Zielsetzung: In diesem Experiment untersuchen wir die Bewegung eines Flugzeugs, indem wir seine Beschleunigung messen. Da es schwierig sein dürfte, dieses Experiment heutzutage ohne Probleme

Mehr

Projektdokumentation für den Fußballroboter Jaqueline. Rene Peschmann und Ronny Gorzelitz

Projektdokumentation für den Fußballroboter Jaqueline. Rene Peschmann und Ronny Gorzelitz Projektdokumentation für den Fußballroboter Jaqueline Rene Peschmann und Ronny Gorzelitz Inhaltsverzeichnis Inhaltsverzeichnis...2 Entwicklung von Jaqueline... 3 Das Getriebe und Gehäuse... 3 Die Schussvorrichtung

Mehr

Hochschule Mittweida. UML-Dokumenation. Franziska Frenzel [Wählen Sie das Datum aus]

Hochschule Mittweida. UML-Dokumenation. Franziska Frenzel [Wählen Sie das Datum aus] Hochschule Mittweida UML-Dokumenation Franziska Frenzel [Wählen Sie das Datum aus] Inhalt UML-Dokumenation Inhalt... 1 /PF 000/ App ausführen inkl. Tracking und UUID erstellen... 2 /PF 001/ Modus wechseln...

Mehr

So geht s Schritt-für-Schritt-Anleitung

So geht s Schritt-für-Schritt-Anleitung So geht s Schritt-für-Schritt-Anleitung Software WISO Mein Büro 365 inkl. Modul Arbeitsplatz+ Thema Netzwerkinstallation Version/Datum 15.00.10.300 Aufgrund der Vielfalt der relevanten Einstellungen, finden

Mehr

Microsoft Visio 2007-Programmierung

Microsoft Visio 2007-Programmierung René Martin Microsoft Visio 2007-Programmierung ISBN-10: 3-446-41084-8 ISBN-13: 978-3-446-41084-8 Leseprobe Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-41084-8 sowie im

Mehr

Handbuch Notruf. Notrufe über Voice over IP: Grundlagen und Praxis. www.handbuch-notruf.at. Karl Heinz Wolf nic.at GmbH. Ausschnitt aus dem

Handbuch Notruf. Notrufe über Voice over IP: Grundlagen und Praxis. www.handbuch-notruf.at. Karl Heinz Wolf nic.at GmbH. Ausschnitt aus dem Karl Heinz Wolf nic.at GmbH Ausschnitt aus dem Handbuch Notruf Notrufe über Voice over IP: Grundlagen und Praxis www.handbuch-notruf.at Handbuch Notruf 3 4 IETF-Notrufarchitektur Bei der IETF wird derzeit

Mehr

DPF Dynamic Partial distance Function

DPF Dynamic Partial distance Function DPF Dynamic Partial distance Function Vorgelegt von Sebastian Loose (MatrikelNR.: 169172), Computervisualistikstudent im 4. Semester. Hausarbeit zum Papier DPF A Perceptual Distance Function for Image

Mehr

FAQ Häufig gestellte Fragen

FAQ Häufig gestellte Fragen FAQ Häufig gestellte Fragen FAQ zu HitmanPro.Kickstart Seite 1 Inhaltsverzeichnis Einführung in HitmanPro.Kickstart... 3 F-00: Wozu wird HitmanPro.Kickstart benötigt?... 4 F-01: Kann HitmanPro.Kickstart

Mehr

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12 Grundlagen: Folge 19 - Bäume 19.1 Binärbäume - Allgemeines Unter Bäumen versteht man in der Informatik Datenstrukturen, bei denen jedes Element mindestens zwei Nachfolger hat. Bereits in der Folge 17 haben

Mehr

5.1 Bestehende Projekte bearbeiten 79 5.2 Neue Projekte erstellen 85

5.1 Bestehende Projekte bearbeiten 79 5.2 Neue Projekte erstellen 85 Projekte per DOM bearbeiten KAPITEL 5 5.1 Bestehende Projekte bearbeiten 79 5.2 Neue Projekte erstellen 85 Bisher haben wir uns angesehen, wie List & Label mit Ihren Daten bekannt gemacht werden kann und

Mehr