BWP-WS19-02/Dokumentation/SensorenKartierung: Unterschied zwischen den Versionen

Aus Verteilte Systeme - Wiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde geleert.)
Markierung: Geleert
 
(44 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
=Teamstruktur=
 
Phase 1:
 
* Jan (Manager)
 
* Jonas (Tester)
 
* Mario (Dokumentation)
 
</br>
 
Phase 2:
 
* Jan (Tester)
 
* Jonas (Dokumentation)
 
* Mario (Manager)
 
 
=Arbeitspakete=
 
 
=Sensoren & Kartierung=
 
 
==Adafruit BNO055 Absolute Orientation Sensor==
 
 
Der [https://cdn-shop.adafruit.com/datasheets/BST_BNO055_DS000_12.pdf BNO055-Sensor] beinhaltet drei Accelerometer, drei Gyroscope und drei Magnetometer (jeweils X-, Y- und Z-Achse). Außerdem steht ein ARM-Cortex-M0 zur Verfügung, welcher mittels Sensor Fusion direkt auswertbare Daten liefert.
 
 
Folgende Daten stehen als Output zur Verfügung:
 
* '''Absolute Orientation (Euler Vector, 100Hz)'''
 
: Three axis orientation data based on a 360° sphere
 
* '''Absolute Orientation (Quaterion, 100Hz)'''
 
: Four point quaternion output for more accurate data manipulation Angular
 
* '''Velocity Vector (100Hz)'''
 
: Three axis of 'rotation speed' in rad/s
 
* '''Acceleration Vector (100Hz)'''
 
: Three axis of acceleration (gravity + linear motion) in m/s^2
 
* '''Magnetic Field Strength Vector (20Hz)'''
 
: Three axis of magnetic field sensing in micro Tesla (uT)
 
* '''Linear Acceleration Vector (100Hz)'''
 
: Three axis of linear acceleration data (acceleration minus gravity) in m/s^2
 
* '''Gravity Vector (100Hz)'''
 
: Three axis of gravitational acceleration (minus any movement) in m/s^2
 
* '''Temperature (1Hz)'''
 
: Ambient temperature in degrees celsius
 
 
Nachfolgendes Bild zeigt einen Testaufbau mit BNO055 und einem nRF52 Feather auf einem Steckbrett. Das nRF52 Feather kommuniziert über I2C mit dem BNO055.
 
 
[[Datei:BNO055.jpg|Testaufbau mit BNO055 und einem nRF52 Feather auf einem Steckbrett|300px]]
 
 
==VL53L0X Time-Of-Flight Distance Sensor==
 
 
==Positionbestimmung mit einer optischen Maus==
 
 
For the determination of the X-Y position we used a PS/2 optical mouse:
 
 
First we made the Mouse - Arduino Connections for our test: Vcc, Gnd, Data and Clock pins from the mouse were needed.
 
<br/>
 
[[Datei:mouse_uno.png|mouse-uno-conections|300px]]
 
<br/> <br/>
 
*Basic overview of the PS/2 protocol of a mouse:
 
 
There are 2 counters that keep track of the X - Y position. They get inc/dec if movement is detected and get reset if a Data Packet is sent to the Host(Arduino).
 
 
The Data Packet is 3 bytes size, where the first byte are flags (overflow flags for the counters for example), bytes 2 and 3 is where X and Y movement is stored.
 
 
In Order to get the Data Packet the PS/2 protocol provides us with the Read Data Command:<code>0xEB</code> <br/> <br/>
 
You can read more about PS/2 mouse protocol [https://isdaman.com/alsos/hardware/mouse/ps2interface.htm here].Thanks this information and the "Computer Mouse Project" from [https://homofaciens.de/technics-base-circuits-computer-mouse_en.htm hofaciens.de].We were able to read the X-Y positions of the mouse!! Now we can get the absolute position by doing a Vector addition:
 
<br/> <br/>
 
[[Datei:mouse_abs.png | 250px]][[Datei:vectors.jpg | 300px]]
 
 
=Quellen=
 
[https://cdn-learn.adafruit.com/downloads/pdf/adafruit-bno055-absolute-orientation-sensor.pdf?timestamp=1573732933 Adafruit Learning Systems]
 
 
[https://cdn-shop.adafruit.com/datasheets/BST_BNO055_DS000_12.pdf BNO055 Datasheet]
 

Aktuelle Version vom 18. Februar 2020, 16:18 Uhr