
NGIMU brugermanual
Version 1.6
Offentlig udgivelse
Dokumentopdateringer
Dette dokument bliver løbende opdateret for at inkorporere yderligere oplysninger, der er anmodet om af brugere, og nye funktioner, der er tilgængelige i software- og firmwareopdateringer. Tjek venligst x-io
teknologier webwebsted for den seneste version af dette dokument og enhedsfirmware.
Dokumentversionshistorik
| Dato | Dokumentversion | Beskrivelse |
| 13. januar 2022 | 1.6 |
|
| 16. oktober 2019 | 1.5 |
|
| 24. juli 2019 | 1.4 |
|
| 07. november 2017 | 1.3 |
|
| 10. januar 2017 | 1.2 |
|
| 19. oktober 2016 | 1.1 |
|
| 23. september 2016 | 1.0 |
|
| 19. maj 2016 | 0.6 |
|
| 29. marts 2016 | 0.5 |
|
| 19. november 2015 | 0.4 |
|
| 30. juni 2015 | 0.3 |
|
| 9. juni 2015 | 0.2 |
|
| 12. maj 2015 | 0.1 |
|
| 10. maj 2015 | 0.0 |
|
Overview
Next Generation IMU (NGIMU) er en kompakt IMU- og dataindsamlingsplatform, der kombinerer indbyggede sensorer og databehandlingsalgoritmer med en bred vifte af kommunikationsgrænseflader for at skabe en alsidig platform, der er velegnet til både realtids- og datalogningsapplikationer.
Enheden kommunikerer vha OSC og er derfor umiddelbart kompatibel med mange softwareapplikationer og ligetil at integrere med brugerdefinerede applikationer med biblioteker tilgængelige for de fleste programmeringssprog.
1.1. Indbyggede sensorer og dataindsamling
- Trippelakset gyroskop (±2000°/s, 400 Hz sample sats)
- Tre-akset accelerometer (±16g, 400 Hz sample sats)
- Tre-akset magnetometer (±1300 µT)
- Barometertryk (300-1100 hPa)
- Fugtighed
- Temperatur 1
- Batteri voltage, nuværende, pcttage, og resterende tid
- Analoge indgange (8 kanaler, 0-3.1 V, 10-bit, 1 kHz sample sats)
- Hjælpeserie (RS-232-kompatibel) til GPS eller tilpasset elektronik/sensorer
- Realtidsur og
1.2. Indbygget databehandling
- Alle sensorer er kalibreret
- AHRS-fusionsalgoritme giver en måling af orientering i forhold til Jorden som en quaternion, rotationsmatrix eller Euler-vinkler
- AHRS fusionsalgoritme giver en måling af lineær acceleration
- Alle mål er tidsbestemtamped
- Synkronisering af tidspunkteramps for alle enheder på et Wi-Fi-netværk2
1.3. Kommunikationsgrænseflader
- USB
- Seriel (RS-232 kompatibel)
- Wi-Fi (802.11n, 5 GHz, indbyggede eller eksterne antenner, AP eller klienttilstand)
- SD-kort (tilgængelig som eksternt drev via USB)
1.4. Strømstyring
- Strøm fra USB, ekstern forsyning eller batteri
- Batteriopladning via USB eller ekstern forsyning
- Sleep timer
1Indbyggede termometre bruges til kalibrering og er ikke beregnet til at give en nøjagtig måling af den omgivende temperatur.
2 Synkronisering kræver ekstra hardware (Wi-Fi-router og synkroniseringsmaster).
- Bevægelsesudløser vågner
- Vågn op timer
- 3.3 V forsyning til brugerelektronik (500 mA)
1.5. Softwarefunktioner
- Open source GUI og API (C#) til Windows
- Konfigurer enhedsindstillinger
- Plot data i realtid
- Log realtidsdata til file (CSV file format til brug med Excel, MATLAB osv.)
- Vedligeholdelses- og kalibreringsværktøj Fejl! Bogmærke ikke defineret.
Hardware
2.1. Tænd/sluk-knap
Tænd/sluk-knappen bruges primært til at tænde og slukke for enheden (dvaletilstand). Hvis du trykker på knappen, mens enheden er slukket, tændes den. Hvis du trykker på knappen og holder den nede i 2 sekunder, mens den er tændt, slukkes den.
Knappen kan også bruges som datakilde af brugeren. Enheden sender en tidsmålingamped-knapmeddelelse, hver gang der trykkes på knappen. Dette kan give praktisk brugerinput til realtidsapplikationer eller et nyttigt middel til at markere hændelser ved logning af data. Se afsnit 7.1.1 for mere information.
2.2. LED'er
Tavlen har 5 LED-indikatorer. Hver LED har en anden farve og har en dedikeret rolle. Tabel 1 viser hver LEDs rolle og tilknyttede adfærd.
| Farve | Angiver | Opførsel |
| Hvid | Wi-Fi-status | Slukket – Wi-Fi deaktiveret Langsomt blinkende (1 Hz) - Ikke forbundet Hurtigt blinkende (5 Hz) – Tilsluttet og venter på IP-adresse Solid – Tilsluttet og IP-adresse opnået |
| Blå | – | – |
| Grøn | Enhedsstatus | Indikerer, at enheden er tændt. Den vil også blinke, hver gang der trykkes på knappen, eller der modtages en besked. |
| Gul | SD-kortstatus | Slukket – Intet SD-kort til stede Langsomt blinkende (1 Hz) – SD-kort til stede, men ikke i brug Solid – SD-kort til stede og logning i gang |
| Rød | Batteriopladning | Slukket – Oplader ikke tilsluttet Solid – Oplader tilsluttet og opladning i gang Blinker (0.3 Hz) – Oplader tilsluttet og opladning fuldført Hurtigt blinkende (5 Hz) – Oplader ikke tilsluttet og batteri mindre end 20 % |
Tabel 1: LED-adfærd
Sending af en identifikationskommando til enheden vil få alle LED'erne til at blinke hurtigt i 5 sekunder.
Dette kan være nyttigt, når du forsøger at identificere en specifik enhed inden for en gruppe af flere enheder. Se afsnit 7.3.6 for mere information.
LED'erne kan være deaktiveret i enhedsindstillingerne. Dette kan være nyttigt i applikationer, hvor lys fra LED'erne er uønsket. Identifikationskommandoen kan stadig bruges, når LED'erne er deaktiveret, og den grønne LED vil stadig blinke, hver gang der trykkes på knappen. Dette giver brugeren mulighed for at kontrollere, om enheden er tændt, mens LED'erne er deaktiveret.
2.3. Ekstra seriel pinout
Tabel 2 viser det serielle hjælpestiks pinout. Ben 1 er fysisk markeret på stikket med en lille pil, se figur 1.
| Stift | Retning | Navn |
| 1 | N/A | Jord |
| 2 | Produktion | RTS |
| 3 | Produktion | 3.3 V udgang |
| 4 | Input | RX |
| 5 | Produktion | TX |
| 6 | Input | CTS |
Tabel 2: Auxiliary serielt stik pinout
2.4. Seriel pinout
Tabel 3 viser den serielle stikkontakt. Ben 1 er fysisk markeret på stikket med en lille pil, se figur 1.
| Stift | Retning | Navn |
| 1 | N/A | Jord |
| 2 | Produktion | RTS |
| 3 | Input | 5 V indgang |
| 4 | Input | RX |
| 5 | Produktion | TX |
| 6 | Input | CTS |
Tabel 3: Seriel stik pinout
2.5. Analoge indgange pinout
Tabel 4 viser de analoge indganges stikpinout. Ben 1 er fysisk markeret på stikket med en lille pil, se figur 1.
| Stift | Retning | Navn |
| 1 | N/A | Jord |
| 2 | Produktion | 3.3 V udgang |
| 3 | Input | Analog kanal 1 |
| 4 | Input | Analog kanal 2 |
| 5 | Input | Analog kanal 3 |
| 6 | Input | Analog kanal 4 |
| 7 | Input | Analog kanal 5 |
| 8 | Input | Analog kanal 6 |
| 9 | Input | Analog kanal 7 |
| 10 | Input | Analog kanal 8 |
Tabel 4: Analog indgangsstik pinout
2.6. Konnektorens delnumre
Alle kortstik er 1.25 mm Molex PicoBlade™ Headers. Tabel 5 viser hvert delnummer, der bruges på kortet, og de anbefalede delnumre på de tilsvarende sammenkoblinger.
Hvert matchende stik er lavet af en plastikhusdel og to eller flere krympede ledninger.
| Board stik | Varenummer | Parringsvarenummer |
| Batteri | Molex PicoBlade™ skærebord, overflademontering, retvinklet, 2-vejs, P/N: 53261-0271 | Molex PicoBlade™-hus, hun, 2-vejs, P/N: 51021-0200
Molex Pre-Crimped Lead Single-Ended PicoBlade™ hun, 304 mm, 28 AWG, P/N: 06-66-0015 (×2) |
| Hjælpeserie / Seriel | Molex PicoBlade™ skærebord, overflademontering, retvinklet, 6-vejs, P/N: 53261-0671 | Molex PicoBlade™-hus, hun, 6-vejs, P/N: 51021-0600 Molex Pre-Crimped Lead Single-Ended PicoBlade™ hun, 304 mm, 28 AWG, P/N: 06-66-0015 (×6) |
| Analoge indgange | Molex PicoBlade™ skærebord, overflademontering, retvinklet, 10-vejs, P/N: 53261-1071 | Molex PicoBlade™-hus, hun, 10-vejs, P/N: 51021-1000 Molex Pre-Crimped Lead Single-Ended PicoBlade™ hun, 304 mm, 28 AWG, P/N: 06-66-0015 (×10) |
Tabel 5: Kortforbindelses varenumre
2.7. Tavle dimensioner
ET 3D TRIN file og mekanisk tegning med detaljer om alle tavledimensioner er tilgængelige på x-io
teknologier webwebsted.
Plasthus
Plasthuset omslutter kortet med et 1000 mAh batteri. Huset giver adgang til alle kortgrænseflader og er gennemsigtigt, så LED-indikatorerne kan ses. Figur 3 viser kortet samlet med et 1000 mAh batteri i plastikhus.

Figur 3: Board samlet med 1000 mAh batteri i et plastikhus
ET 3D TRIN file og mekaniske tegninger, der viser alle husdimensioner, er tilgængelige på x-io Technologies webwebsted.
Analoge indgange
Det analoge input-interface bruges til at måle voltages og få data fra eksterne sensorer, der giver målinger som en analog voltage. F.eksample, en modstandskraftsensor kan arrangeres i et potentialdelerkredsløb for at give målinger af kraft som en analog vol.tage. bindtage målinger sendes af enheden som timetamped analoge input-meddelelser som beskrevet i afsnit 7.1.13.
De analoge inputs pinout er beskrevet i afsnit 2.3, og varenumrene for et tilhørende stik er angivet i afsnit 2.6.
4.1. Analoge indgange specifikation
- Antal kanaler: 8
- ADC opløsning: 10-bit
- Sampafdragene: 1000 Hz
- Voltage rækkevidde: 0 V til 3.1 V
4.2. 3.3 V forsyningsudgang
Det analoge input-interface giver en 3.3 V-udgang, som kan bruges til at forsyne ekstern elektronik. Denne udgang slås fra, når enheden går i dvaletilstand for at forhindre, at den eksterne elektronik dræner batteriet, når enheden ikke er aktiv.
Ekstra seriel interface
Det serielle hjælpeinterface bruges til at kommunikere med ekstern elektronik via en seriel forbindelse.
F.eksample, Appendiks A beskriver, hvordan et GPS-modul kan tilsluttes direkte til den serielle hjælpegrænseflade for at logge og streame GPS-data sammen med eksisterende sensordata. Alternativt kan en mikrocontroller tilsluttet det serielle hjælpeinterface bruges til at tilføje generel input/output funktionalitet.
Den ekstra serielle interface-pinout er beskrevet i afsnit 2.3, og varenumrene for et tilhørende stik er angivet i afsnit 2.6.
5.1. Ekstra seriel specifikation
- Baudrate: 7 bps til 12 Mbps
- RTS/CTS hardware flow kontrol: aktiveret/deaktiveret
- Inverter datalinjer (for RS-232-kompatibilitet): aktiveret/deaktiveret
- Data: 8-bit (ingen fest)
- Stop bits: 1
- Voltage: 3.3 V (indgangene er tolerante for RS-232 voltagr)
5.2. Sender data
Data sendes fra den serielle hjælpegrænseflade ved at sende en seriel hjælpemeddelelse til
enhed. Se afsnit 7.1.15 for mere information.
5.3. Modtagelse af data
Data modtaget af den serielle hjælpegrænseflade sendes af enheden som en seriel hjælpemeddelelse som beskrevet i afsnit 7.2.1. Modtagne bytes bufres, før de sendes sammen i en enkelt meddelelse, når en af følgende betingelser er opfyldt:
- Antallet af bytes gemt i bufferen matcher bufferstørrelsen
- Der er ikke modtaget bytes i mere end timeoutperioden
- Modtagelse af en byte svarende til rammekarakteren
Bufferstørrelse, timeout og rammekarakter kan justeres i enhedsindstillingerne. En eksampBrugen af disse indstillinger er at indstille rammetegnet til værdien af et nylinjetegn ('\n', decimalværdi 10), således at hver ASCII-streng, afsluttet med et nylinjetegn, modtages af en ekstra seriel grænseflade sendes som særskilt tids-stamped besked.
5.4. OSC passthrough
Hvis OSC passthrough-tilstand er aktiveret, vil det serielle hjælpeinterface ikke sende og modtage på den måde, der er beskrevet i afsnit 5.2 og 5.3. I stedet vil den serielle hjælpegrænseflade sende og modtage OSC-pakker kodet som SLIP-pakker. OSC-indhold, der modtages af den serielle hjælpegrænseflade, videresendes til alle aktive kommunikationskanaler som en tidsindstillingamped OSC bundt. OSC-meddelelser modtaget via enhver aktiv kommunikationskanal, der ikke genkendes, videresendes til det serielle hjælpeinterface. Dette tillader direkte kommunikation med tredjeparts og brugerdefinerede seriel-baserede OSC-enheder gennem beskeder, der sendes og modtages sammen med eksisterende OSC-trafik.
NGIMU Teensy I/O Expansion Example demonstrerer, hvordan en Teensy (en Arduino-kompatibel mikrocontroller), der er forbundet til det ekstra serielle interface, kan bruges til at styre LED'er og levere sensordata ved hjælp af OSC passthrough-tilstand.
5.5. RTS/CTS hardware flow kontrol
Hvis RTS/CTS-hardwareflowkontrol ikke er aktiveret i enhedsindstillingerne, kan CTS-input og RTS-output styres manuelt. Dette giver en generel digital indgang og udgang, som kan bruges til at forbinde til ekstern elektronik. F.eksample: for at registrere et tryk på en knap eller for at styre en LED. RTS-udgangstilstanden indstilles ved at sende en ekstra seriel RTS-meddelelse til enheden som beskrevet i afsnit 7.2.2. En tidamped ed auxiliary seriel CTS-meddelelse sendes af enheden, hver gang CTS-indgangstilstandene ændres som beskrevet i afsnit 7.1.16.
5.6. 3.3 V forsyningsudgang
Det ekstra serielle interface giver en 3.3 V udgang, som kan bruges til at forsyne ekstern elektronik. Denne udgang slås fra, når enheden går i dvaletilstand for at forhindre, at den eksterne elektronik dræner batteriet, når enheden ikke er aktiv.
Send takster, sample satser og tidspunkteramps
Enhedsindstillingerne giver brugeren mulighed for at angive sendehastigheden for hver målemeddelelsestype, f.eksample, sensormeddelelse (afsnit 7.1.2), quaternion-meddelelse (afsnit 7.1.4) osv. Sendehastigheden har ingen indflydelse på sample rate af de tilsvarende målinger. Alle mål erhverves internt på de faste sample satser anført i tabel 6. Tidsstamp for hver måling oprettes, når sample er erhvervet. Den tidestamp er derfor en pålidelig måling, uafhængig af latensen eller buffering forbundet med en given kommuteringskanal.
| Måling | Sample Sats |
| Gyroskop | 400 Hz |
| Accelerometer | 400 Hz |
| Magnetometer | 20 Hz |
| Barometertryk | 25 Hz |
| Fugtighed | 25 Hz |
| Processor temperatur | 1 kHz |
| Gyroskop og accelerometer temperatur | 100 Hz |
| Miljøfølertemperatur | 25 Hz |
| Batteri (procenttage, tid til at tømme, voltage, nuværende) | 5 Hz |
| Analoge indgange | 1 kHz |
| RSSI | 2 Hz |
Tabel 6: Faste indvendige sample satser
Hvis en specificeret sendehastighed er større end sampHvis hastigheden for den tilknyttede måling vil blive gentaget i flere meddelelser. Gentagne målinger kan identificeres som gentagne tideramps. Det er muligt at angive sendehastigheder, der overstiger båndbredden af en kommunikationskanal. Dette vil resultere i, at beskeder går tabt. Tidspunktamps skal bruges til at sikre, at det modtagende system er robust over for tabte meddelelser.
Kommunikationsprotokol
Al kommunikation er kodet som OSC. Data sendt over UDP bruger OSC i henhold til OSC v1.0-specifikationen. Data sat over USB, seriel eller skrevet til SD-kortet er OSC-kodet som SLIP-pakker i henhold til OSC v1.1-specifikationen. OSC-implementeringen bruger følgende forenklinger:
- OSC-meddelelser sendt til enheden kan bruge numeriske argumenttyper (int32, float32, int64, OSC-tid tag, 64-bit double, character, boolean, nil eller Infinitum) i flæng, og blob- og strengargumenttyper i flæng.
- OSC-adressemønstre, der sendes til enheden, må ikke indeholde nogen specialtegn: '?', '*', '[]' eller '{}'.
- OSC-meddelelser sendt til enheden kan sendes inden for OSC-pakker. Beskedplanlægning vil dog blive ignoreret.
7.1. Data fra enheden
Alle data, der sendes fra enheden, sendes som en timestamped OSC-bundt, der indeholder en enkelt OSC-meddelelse.
Alle datameddelelser, med undtagelse af knappen, serielle hjælpemeddelelser og serielle meddelelser, sendes kontinuerligt med de sendehastigheder, der er angivet i enhedsindstillingerne.
Tidenamp af et OSC-bundt er en OSC-tid tag. Dette er et 64-bit fastpunktsnummer. De første 32 bit angiver antallet af sekunder siden 00:00 den 1. januar 1900, og de sidste 32 bit angiver brøkdele af et sekund med en præcision på omkring 200 picosekunder. Dette er den repræsentation, der bruges af Internet NTP timestamps. En OSC tid tag kan konverteres til en decimalværdi på sekunder ved først at fortolke værdien som et 64-bit heltal uden fortegn og derefter dividere denne værdi med 2 32. Det er vigtigt, at denne beregning implementeres ved hjælp af en flydende decimaltype med dobbelt præcision, ellers mangler manglen præcision vil resultere i væsentlige fejl.
7.1.1. Knap besked
OSC-adresse: /knap
Knapmeddelelsen sendes, hver gang der trykkes på tænd/sluk-knappen. Meddelelsen indeholder ingen argumenter.
7.1.2. Sensorer
OSC-adresse: /sensorer
Sensormeddelelsen indeholder målinger fra gyroskop, accelerometer, magnetometer og barometer. Budskabsargumenterne er opsummeret i tabel 7.
| Argument | Type | Beskrivelse |
| 1 | flyde32 | Gyroskopets x-akse i °/s |
| 2 | flyde32 | Gyroskopets y-akse i °/s |
| 3 | flyde32 | Gyroskop z-akse i °/s |
| 4 | flyde32 | Accelerometer x-akse i g |
| 5 | flyde32 | Accelerometerets y-akse i g |
| 6 | flyde32 | Accelerometer z-akse i g |
| 7 | flyde32 | Magnetometer x-akse i µT |
| 8 | flyde32 | Magnetometer y-akse i µT |
| 9 | flyde32 | Magnetometer z-akse i µT |
| 10 | flyde32 | Barometer i hPa |
Tabel 7: Argumenter for sensormeddelelse
7.1.3. Størrelser
OSC-adresse: /størrelser
Størrelsesmeddelelsen indeholder målinger af gyroskop-, accelerometer- og magnetometerstørrelserne. Meddelelsesargumenterne er opsummeret i tabel 8: Størrelser meddelelsesargumenter.
| Argument | Type | Beskrivelse |
| 1 | flyde32 | Gyroskopets størrelse i °/s |
| 2 | flyde32 | Accelerometerets størrelse i g |
| 3 | flyde32 | Magnetometerets størrelse i µT |
Tabel 8: Størrelsesmeddelelsesargumenter
7.1.4. Kvaternion
OSC-adresse: /quaternion
Kvaternion-meddelelsen indeholder quaternion-output fra den indbyggede AHRS-algoritme, der beskriver enhedens orientering i forhold til Jorden (NWU-konventionen). Meddelelsesargumenterne er opsummeret i tabel 9.
| Argument | Type | Beskrivelse |
| 1 | flyde32 | Quaternion m element |
| 2 | flyde32 | Quaternion x element |
| 3 | flyde32 | Quaternion y element |
| 4 | flyde32 | Quaternion z element |
Tabel 9: Kvaternion-meddelelsesargumenter
7.1.5. Rotationsmatrix
OSC-adresse: /matrix
Rotationsmatrixmeddelelsen indeholder rotationsmatrixoutputtet fra den indbyggede AHRS-algoritme, der beskriver enhedens orientering i forhold til Jorden (NWU-konventionen). Meddelelsesargumenterne beskriver matrixen i række-større ordre som opsummeret i tabel 10.
| Argument | Type | Beskrivelse |
| 1 | flyde32 | Rotationsmatrix xx element |
| 2 | flyde32 | Rotationsmatrix xy element |
| 3 | flyde32 | Rotationsmatrix xz element |
| 4 | flyde32 | Rotationsmatrix yx element |
| 5 | flyde32 | Rotationsmatrix yy element |
| 6 | flyde32 | Rotationsmatrix Yz element |
| 7 | flyde32 | Rotationsmatrix Zx element |
| 8 | flyde32 | Rotationsmatrix zy element |
| 9 | flyde32 | Rotationsmatrix zz element |
Tabel 10: Rotationsmatrixmeddelelsesargumenter
7.1.6. Euler vinkler
OSC-adresse: /Euler
Euler-vinkler-meddelelsen indeholder Euler-vinkeloutput fra den indbyggede AHRS-algoritme, der beskriver enhedens orientering i forhold til Jorden (NWU-konventionen). Meddelelsesargumenterne er opsummeret i tabel 11.
| Argument | Type | Beskrivelse |
| 1 | flyde32 | Rulle (x) vinkel i grader |
| 2 | flyde32 | Pitch (y) vinkel i grader |
| 3 | flyde32 | Krøje/retning (z) vinkel i grader |
7.1.7. Lineær acceleration
OSC-adresse: /lineær
Den lineære accelerationsmeddelelse indeholder det lineære accelerationsoutput fra den indbyggede sensorfusionsalgoritme, der beskriver tyngdekraftsfri acceleration i sensorkoordinatrammen. Meddelelsesargumenterne er opsummeret i tabel 12.
| Argument | Type | Beskrivelse |
| 1 | flyde32 | Acceleration i sensorens x-akse i g |
| 2 | flyde32 | Acceleration i sensorens y-akse i g |
| 3 | flyde32 | Acceleration i sensorens z-akse i g |
Tabel 12: Lineær accelerationsmeddelelsesargumenter
7.1.8. Jordens acceleration
OSC-adresse: /earth
Jordaccelerationsmeddelelsen indeholder jordaccelerationsoutput fra den indbyggede sensorfusionsalgoritme, der beskriver tyngdekraftsfri acceleration i jordkoordinatrammen. Meddelelsesargumenterne er opsummeret i tabel 13.
| Argument | Type | Beskrivelse |
| 1 | flyde32 | Acceleration i Jordens x-akse i g |
| 2 | flyde32 | Acceleration i jordens y-akse i g |
| 3 | flyde32 | Acceleration i jordens z-akse i g |
Tabel 13: Argumenter for meddelelse om jordacceleration
7.1.9. Højde
OSC-adresse: /højde
Højdemeddelelsen indeholder måling af højde over havets overflade. Beskedargumentet er opsummeret i tabel 14.
| Argument | Type | Beskrivelse |
| 1 | flyde32 | Højde over havets overflade i m |
Tabel 14: Argument for højdemeddelelse
7.1.10. Temperatur
OSC-adresse: /temperatur
Temperaturmeddelelsen indeholder målingerne fra hver af enhedens indbyggede temperatursensorer. Meddelelsesargumenterne er opsummeret i tabel 15.
| Argument | Type | Beskrivelse |
| 1 | flyde32 | Gyroskop/accelerometer temperatur i °C |
| 2 | flyde32 | Barometertemperatur i °C |
Tabel 15: Argumenter for temperaturmeddelelse
7.1.11. Fugtighed
OSC-adresse: /fugtighed
Fugtighedsmeddelelsen indeholder måling af relativ fugtighed. Beskedargumentet er opsummeret i tabel 16.
| Argument | Type | Beskrivelse |
| 1 | flyde32 | Relativ luftfugtighed i % |
Tabel 16: Argument for fugtighedsmeddelelse
7.1.12. Batteri
OSC-adresse: /batteri
Batterimeddelelsen indeholder batterivolumentage og strømmålinger samt tilstandene for brændstofmåleralgoritmen. Meddelelsesargumenterne er opsummeret i tabel 17.
| Argument | Type | Beskrivelse |
| 1 | flyde32 | Batteriniveau i % |
| 2 | flyde32 | Tid til at tømme på få minutter |
| 3 | flyde32 | Batteri voltage i V |
| 4 | flyde32 | Batteristrøm i mA |
| 5 | snor | Opladertilstand |
Tabel 17: Batterimeddelelsesargumenter
7.1.13. Analoge indgange
OSC-adresse: /analog
Meddelelsen om analoge indgange indeholder målinger af de analoge indgange voltages. Meddelelsesargumenterne er opsummeret i tabel 18.
| Argument | Type | Beskrivelse |
| 1 | flyde32 | Kanal 1 voltage i V |
| 2 | flyde32 | Kanal 2 voltage i V |
| 3 | flyde32 | Kanal 3 voltage i V |
| 4 | flyde32 | Kanal 4 voltage i V |
| 5 | flyde32 | Kanal 5 voltage i V |
| 6 | flyde32 | Kanal 6 voltage i V |
| 7 | flyde32 | Kanal 7 voltage i V |
| 8 | flyde32 | Kanal 8 voltage i V |
Tabel 18: Analoge input-meddelelsesargumenter
7.1.14. RSSI
OSC-adresse: /RSSI
RSSI-meddelelsen indeholder RSSI-målingen (Receive Signal Strength Indicator) for den trådløse forbindelse. Denne måling er kun gyldig, hvis Wi-Fi-modulet kører i klienttilstand. Meddelelsesargumenterne er opsummeret i tabel 19.
| Argument | Type | Beskrivelse |
| 1 | flyde32 | RSSI-måling i dBm |
| 2 | flyde32 | RSSI-måling i procenttage hvor 0% til 100% repræsenterer området -100 dBm til -50 dBm. |
Tabel 19: RSSI-meddelelsesargument
7.1.15 Serial hjælpedata
OSC-adresse: /aux serial
Den serielle hjælpemeddelelse indeholder de data, der modtages gennem den serielle hjælpegrænseflade. Meddelelsesargumentet kan være en af to typer afhængigt af enhedsindstillingerne som opsummeret i Tabel 20.
| Argument | Type | Beskrivelse |
| 1 | klat | Data modtages gennem det serielle hjælpeinterface. |
| 1 | snor | Data modtaget gennem den serielle hjælpegrænseflade med alle null-bytes erstattet med tegnparret "/0". |
Tabel 20: Argument for meddelelse om ekstra seriel data
7.1.16 Ekstra seriel CTS-indgang
OSC-adresse: /aux serial/cts
Den ekstra serielle CTS-indgangsmeddelelse indeholder CTS-indgangstilstanden for det serielle hjælpeinterface, når hardwareflowstyring er deaktiveret. Denne meddelelse sendes hver gang CTS-indgangens tilstand ændres. Beskedargumentet er opsummeret i tabel 21.
| Argument | Type | Beskrivelse |
| 1 | boolesk | CTS inputtilstand. Falsk = lav, Sand = høj. |
Tabel 21: Argument for ekstra seriel CTS-inputmeddelelse
7.1.17. Seriel CTS-indgang
OSC-adresse: /serial/cts
Den serielle CTS-inputmeddelelse indeholder CTS-inputtilstanden for det serielle interface, når hardwareflowkontrol er deaktiveret. Denne meddelelse sendes hver gang CTS-indgangens tilstand ændres. Meddelelsesargumentet er opsummeret i tabel 22.
| Argument | Type | Beskrivelse |
| 1 | boolesk | CTS inputtilstand. Falsk = lav, Sand = høj. |
Tabel 22: Argument for seriel CTS-inputmeddelelse
7.2. Data til enhed
Data sendes til enheden som OSC-meddelelser. Enheden sender ikke en OSC-meddelelse som svar.
7.2.1. Ekstra serielle data
OSC-adresse: /auxserial
Den serielle hjælpemeddelelse bruges til at sende data (en eller flere bytes) fra den serielle hjælpegrænseflade. Denne meddelelse kan kun sendes, hvis 'OSC passthrough'-tilstanden ikke er aktiveret. Beskedargumentet er opsummeret i tabel 23.
| Argument | Type | Beskrivelse |
| 1 | OSC-blob / OSC-streng | Data, der skal transmitteres fra det serielle hjælpeinterface |
Tabel 23: Argumenter for meddelelser om ekstra serielle data
7.2.2. Ekstra seriel RTS-udgang
OSC-adresse: /aux serial/rts
Den serielle hjælpe-RTS-meddelelse bruges til at styre RTS-udgangen på den serielle hjælpegrænseflade.
Denne meddelelse må kun sendes, hvis hardwareflowkontrol er deaktiveret. Beskedargumentet er opsummeret i tabel 24.
| Argument | Type | Beskrivelse |
| 1 | Int32/float32/boolean | RTS udgangstilstand. 0 eller falsk = lav, ikke-nul eller sand = høj. |
Tabel 24: Argumenter for ekstra seriel RTS-outputmeddelelse
7.2.3. Seriel RTS-udgang
OSC-adresse: /serial/rts
Den serielle RTS-meddelelse bruges til at styre RTS-outputtet på det serielle interface. Denne meddelelse må kun sendes, hvis hardwareflowkontrol er deaktiveret. Beskedargumentet er opsummeret i tabel 25.
| Argument | Type | Beskrivelse |
| 1 | Int32/float32/boolean | RTS udgangstilstand. 0 eller falsk = lav, ikke-nul eller sand = høj. |
Tabel 25: Argumenter for seriel RTS-outputmeddelelse
7.3. Kommandoer
Alle kommandoer sendes som OSC-meddelelser. Enheden bekræfter modtagelsen af kommandoen ved at sende en identisk OSC-meddelelse tilbage til værten.
7.3.1. Indstil tid
OSC-adresse: /tid
Kommandoen sæt tid indstiller dato og klokkeslæt på enheden. Meddelelsesargumentet er en OSCtimetag.
7.3.2. Lydløs
OSC-adresse: /mute
Mute-kommandoen forhindrer afsendelse af alle datameddelelser, der er angivet i afsnit 7.1. Kommandobekræftelsesmeddelelser og indstillingslæse/skrivesvarmeddelelser vil stadig blive sendt. Enheden forbliver slået fra, indtil der sendes en ophæv-kommando.
7.3.3. Slå lyden til
OSC-adresse: /unmute
Kommandoen til at slå til vil fortryde mute-tilstanden beskrevet i afsnit 7.3.2.
7.3.4. Nulstil
OSC-adresse: /reset
Reset-kommandoen udfører en softwarenulstilling. Dette svarer til at slukke for enheden og derefter tænde den igen. Softwarenulstillingen udføres 3 sekunder efter, at kommandoen er modtaget for at sikre, at værten er i stand til at bekræfte kommandoen, før den udføres.
7.3.5. Søvn
OSC-adresse: /sleep
Sleep-kommandoen vil sætte enheden i dvaletilstand (slukket). Enheden går ikke i dvaletilstand før 3 sekunder efter kommandoen er modtaget for at sikre, at værten er i stand til at bekræfte kommandoen, før den udføres.
7.3.6. Identitet
OSC-adresse: /identify
Identifikationskommandoen vil få alle LED'erne til at blinke hurtigt i 5 sekunder. Dette kan være nyttigt, når du forsøger at identificere en specifik enhed inden for en gruppe af flere enheder.
7.3.7. Ansøg
OSC-adresse: /apply
Anvend kommandoen vil tvinge enheden til straks at anvende alle afventende indstillinger, der er blevet skrevet, men endnu ikke anvendt. Bekræftelsen af denne kommando sendes, når alle indstillinger er blevet anvendt.
7.3.8. Gendan standard
OSC-adresse: /default
Gendan standardkommandoen nulstiller alle enhedsindstillinger til deres fabriksstandardværdier.
7.3.9. AHRS initialisere
OSC-adresse: /ahrs/initialisere
AHRS initialiseringskommandoen vil geninitialisere AHRS-algoritmen.
7.3.10. AHRS nul yaw
OSC-adresse: /ahrs/nul
AHRS nul yaw kommandoen nulstiller yaw komponenten af den aktuelle orientering af AHRS algoritmen. Denne kommando må kun afgives, hvis magnetometeret ignoreres i AHRS-indstillingerne.
7.3.11. Ekko
OSC-adresse: /echo
Ekkokommandoen kan sendes med alle argumenter, og enheden vil svare med en identisk OSC-meddelelse.
7.4. Indstillinger
Enhedsindstillinger læses og skrives ved hjælp af OSC-meddelelser. Indstillinger-fanen i enhedens software
giver adgang til alle enhedsindstillinger og inkluderer detaljeret dokumentation for hver indstilling.
7.4.1. Læs
Indstillinger læses ved at sende en OSC-meddelelse med den tilsvarende indstilling OSC-adresse og ingen argumenter. Enheden vil svare med en OSC-meddelelse med samme OSC-adresse og den aktuelle indstillingsværdi som et argument.
7.4.2. Skrive
Indstillinger skrives ved at sende en OSC-meddelelse med den tilsvarende indstilling OSC-adresse og en argumentværdi. Enheden vil svare med en OSC-meddelelse med den samme OSC-adresse og den nye indstillingsværdi som et argument.
Nogle indstillingsskrivninger anvendes ikke med det samme, fordi dette kan resultere i tab af kommunikation med enheden, hvis en indstilling, der påvirker kommunikationskanalen, ændres. Disse indstillinger anvendes 3 sekunder efter sidste skrivning af en indstilling.
7.5. Fejl
Enheden sender fejlmeddelelser som en OSC-meddelelse med OSC-adressen: /error og et enkeltstrengsargument.
A. Integrering af et GPS-modul med NGIMU
Dette afsnit beskriver, hvordan man integrerer et standard GPS-modul med NGIMU. NGIMU er kompatibel med ethvert serielt GPS-modul "Adafruit Ultimate GPS Breakout – 66 kanaler m/10 Hz opdateringer – Version 3” blev her valgt med henblik på demonstration. Dette modul kan købes hos Adafruit eller enhver anden distributør.
A.1. Hardware opsætning
CR1220 møntcellebatteriklemmen og ekstra serielt interfaceforbindelsesledninger skal loddes til GPS-modulkortet. Reservedelsnumrene på det serielle interface-stik er beskrevet i afsnit 2.6. De nødvendige forbindelser mellem den serielle hjælpeport og GPS-modulet er beskrevet i Tabel 26. Figur 5 viser det samlede GPS-modul med et stik til det serielle hjælpeinterface.
| Seriel hjælpestift | GPS modul pin |
| Jord | "GND" |
| RTS | Ikke forbundet |
| 3.3 V udgang | "3.3V" |
| RX | "TX" |
| TX | "RX" |
| CTS | Ikke forbundet |
Tabel 26: Ekstra serielt interface-forbindelser til GPS-modulet
Figur 4: Samlet GPS-modul med stik til ekstra serielt interface
CR1220 møntcellebatteriet er nødvendigt for at bevare GPS-modulets indstillinger og for at forsyne realtidsuret, mens ekstern strøm ikke er til stede. GPS-modulet vil miste strøm, hver gang NGIMU'en slukkes. Realtidsuret reducerer den tid, der kræves for at opnå en GPS-lås markant. Batteriet kan forventes at holde cirka 240 dage.
A.2. NGIMU indstillinger
Den serielle hjælpehastighedsindstilling skal indstilles til 9600. Dette er GPS-modulets standardbaudhastighed. GPS-modulet sender data i separate ASCII-pakker, hver afsluttet med et ny-linjetegn. Indstillingen for ekstra seriel framing-tegn skal derfor sættes til 10, så hver ASCII-pakke er tidsbestemtamped og transmitteret/logget af NGIMU separat. Den ekstra seriel 'send som streng'-indstilling skal være aktiveret, så pakker fortolkes som strenge af NGIMU-softwaren. Alle andre indstillinger skal efterlades til standardværdier, så indstillingerne matcher dem, der er vist i figur 5.
Figur 5: Indstillinger for ekstra serielt interface konfigureret til et GPS-modul
A.3. Viewbearbejde og behandle GPS-data
Når NGIMU-indstillingerne er blevet konfigureret som beskrevet i afsnit A.2, vil GPS-data blive modtaget og videresendt til alle aktive kommunikationskanaler som en tidsmålingamped meddelelse om hjælpeseriedata som beskrevet i afsnit 7.1.15. NGIMU GUI kan bruges til view indgående GPS-data ved hjælp af Auxiliary Serial Terminal (under menuen Værktøjer). Figur 6 viser indgående GPS-data, efter at en GPS-fix er opnået. Modulet kan tage snesevis af minutter at opnå en løsning, når det tændes for første gang. 
Figur 6: Indkommende GPS-data vist i Auxiliary Serial Terminal
Standard GPS-modulindstillingerne giver GPS-data i fire NMEA-pakketyper: GPGGA, GPGSA, GPRMC og GPVTG. Det NMEA referencemanual giver en detaljeret beskrivelse af dataene i hver af disse pakker.
NGIMU-softwaren kan bruges til at logge realtidsdata som CSV files eller for at konvertere data, der er logget til SD-kortet file til CSV files. GPS-data findes i auxserial.csv file. De file indeholder to kolonner: den første kolonne er den tidestamp af en given NMEA-pakke genereret af NGIMU'en, da pakken blev modtaget fra GPS-modulet, og den anden kolonne er NMEA-pakken. Brugeren skal håndtere import og fortolkning af disse data.
A.4. Konfigurerer til 10 Hz opdateringshastighed
GPS-modulets standardindstillinger sender data med en opdateringshastighed på 1 Hz. Modulet kan konfigureres til at sende data med en opdateringshastighed på 10 Hz. Dette opnås ved at sende kommandopakker for at justere indstillingerne som beskrevet i afsnit A.4.1 og A.4.2. Hver kommandopakke kan sendes ved hjælp af NGIMU GUI's Auxiliary Serial Terminal (under menuen Værktøjer). GPS-modulet vender tilbage til standardindstillingerne, hvis batteriet fjernes.
Kommandopakkerne beskrevet i dette afsnit er oprettet i henhold til GlobalTop PMTK kommandopakke dokumentation med kontrolsummer beregnet ved hjælp af en online NMEA checksum beregner.
A.4.1. Trin 1 – Skift baudrate til 115200
Send kommandopakken "$PMTK251,115200*1F\r\n" til GPS-modulet. De indkommende data vil så fremstå som 'skrald'-data, fordi den aktuelle serielle aux-baudrate på 9600 ikke svarer til den nye GPS-modul baudrate på 115200. Indstillingen for den serielle hjælpehastighed skal derefter indstilles til 115200 i NGIMU-indstillingerne før data vises korrekt igen.
A.4.2. Trin 2 – Skift udgangshastighed til 10 Hz
Send kommandopakken "$PMTK220,100*2F\r\n" til GPS-modulet. GPS-modulet sender nu data med en opdateringshastighed på 10 Hz.
A.4.3. Gemmer GPS-modulindstillinger
GPS-modulet gemmer indstillinger automatisk. GPS-modulet vil dog vende tilbage til standardindstillingerne, hvis batteriet fjernes.

www.x-io.co.uk
© 2022
Dokumenter/ressourcer
![]() |
X-IO TEKNOLOGI NGIMU High Performance Fuldt udstyret IMU [pdfBrugermanual NGIMU, High Performance Fuldt Udvalgte IMU, NGIMU High Performance Fuldt Udvalgte IMU, Ydeevne Fuldt Udvalgte IMU, Fuldt Udvalgte IMU, Udvalgte IMU, IMU |




