Inhoudsopgave:

Verbonden oriëntatiearmband - Ajarnpa
Verbonden oriëntatiearmband - Ajarnpa

Video: Verbonden oriëntatiearmband - Ajarnpa

Video: Verbonden oriëntatiearmband - Ajarnpa
Video: Hoe word je vervuld door de Heilige Geest? | Kees Kraayenoord | Zondag 21 mei 2024, November
Anonim
Verbonden oriëntatie armband
Verbonden oriëntatie armband

Dit academische project, de verbonden oriëntatiearmband, werd gerealiseerd door vier studenten van de ingenieursschool Polytech Paris-UPMC: Sébastien Potet, Pauline Pham, Kevin Antunes en Boris Bras.

Wat is ons project?

Tijdens een semester moesten we een verbonden armband maken die door een hardloper zal worden gebruikt. Zijn parcours zal worden georiënteerd door verschillende punten waar hij zal taggen, en dit zal toelaten om zijn koers vast te leggen. Die gegevens worden realtime in een cloud opgeslagen.

Dit product kan de temperatuur, de vochtigheid en de oriëntatie aangeven. Bovendien hebben we drie knoppen, waaronder één die een GPS-positie verzendt als de loper een probleem heeft (SOS-knop), daarom hebben we deze in realtime nodig. De tweede maakt het mogelijk om de armband te taggen en de laatste om de armband uit te schakelen omdat we een product met een laag stroomverbruik willen.

We hadden een bugdet van 120 €. Volg onze tutorial om een verbonden oriëntatiearmband te realiseren!

Stap 1: Benodigd materiaal

Materiaal nodig
Materiaal nodig
Benodigd materiaal
Benodigd materiaal
Benodigd materiaal
Benodigd materiaal

Lijst van componenten:

- STM32L432KC-Nucleo Ultra Low Power

- SigFox-module TD1208

- RFID-lezer 125 kHz

- Temperatuur/vochtigheidssensor HTU21D

- Accelerometer module 3-assig ADXL345

- Kompasmodule 3-assig HMC5883L

- Scherm OLED ADA938

- GPS-module Grove 31275

- Batterij 1,5 V LR6

- Spanningsregelaar Pololu 3.3V U1V11F3

- Enkele bedieningsknoppen

Stap 2: Programmeergedeelte

Programmeeronderdeel
Programmeeronderdeel

Allereerst hebben we alle componenten geprogrammeerd met de mbed-ontwikkelaarssite. Daarvoor hebben we een microcontroller STM32L476RG-Nucleo gebruikt die een laag verbruik heeft.

Het scherm, de temperatuur-/vochtigheidssensor en het kompas werken in I²C-communicatie. De RFID-lezer en de versnellingsmeter werken in seriële communicatie. Voor elk onderdeel moest je een eigen bibliotheek toevoegen.

Voor de temperatuur- / vochtigheidssensor, het kompas en de versnellingsmeter moet u een gedefinieerde functie in hun bibliotheek aanroepen om de gegevens te krijgen.

De RFID-lezer werkt op seriële communicatie, u moet de functie "getc()" gebruiken omdat de tag gegevens retourneert in char.

Alle codes zijn beschikbaar als bestand, behalve de code van het scherm OLED.

Stap 3: Elektronische montage

Elektronische assemblage
Elektronische assemblage

Na het programmeren van elk onderdeel hebben we een labdec-plaat genomen en deze op de STM32L432KC-Nucleo aangesloten. Volg het bedradingsschema in de bijlage om alle componenten te monteren, of elke pincode wordt gedetailleerd beschreven op de codemontage.

We hebben drie knoppen toegevoegd met drie weerstanden van 10 Kilo ohm: één om de GPS-positie te sturen in geval van gevaar, één om aan/uit te zetten en de laatste om de loper het punt te laten markeren. We hebben een zoemer toegevoegd als je op de SOS-knop drukt.

Het bestand "braceletOrientation" in bijlage is ons project op Fritzing. Dit is een samenvattend bestand van onze componenten en onze bedrading zowel op labdec als op PCB. Verder hebben we de montagecode van alle componenten toegevoegd.

Stap 4: Data-acquisitie

Data-acquisitie
Data-acquisitie
Data-acquisitie
Data-acquisitie
Data-acquisitie
Data-acquisitie

Actoboard

Actoboard is een op dashboards gebaseerde tool. Het toont alle gegevens die door de Sigfox-module zijn verzonden. Het zal dan via URL deze gegevens naar nodered sturen om in de database te worden ingevoegd.

Stuur de gegevens:

Om de gegevens via uw code te verzenden, moet u eerst de pincode (Tx, Rx) van de module Sigfox aangeven (u kunt deze zien in onze code). Daarna, dankzij dit commando: "sigfox.printf("AT$SF=%02X%02X%02X%02X%02X%02X \r\n", lat_deg, long_deg, lat_10s, long_10s, lat_100s, long_100s);", dit voorbeeld stuurt de gegevens van de GPS naar Actoboard.

Ontvang de gegevens:

Nadat u uw gegevensbronnen hebt ingesteld in relatie tot uw Sigfox-module, moet u uw gegevensformaat instellen voor het ontvangen van de gegevens van uw code. Voor hetzelfde voorbeeld als voorheen (GPS) moet u het gegevensformaat als volgt instellen: "lat_deg::uint:8 long_deg::uint:8 lat_10s::uint:8 long_10s::uint:8 lat_100s::uint:8 long_100s::uint:8".

Wees voorzichtig met het type en het aantal bits, je moet exact dezelfde lengte hebben. Dus ik raad je aan om je gegevens als volgt in je code te casten: "lat_deg = (int8_t)lat_deg;".

Wees ook voorzichtig met het aantal cijfers, in dit voorbeeld verzenden we alleen gegevens met maximaal 2 cijfers. Maar als u grotere gegevens zoals "%04X" wilt overbrengen, weet u misschien dat Actoboard het cijfer gaat omkeren. Als u bijvoorbeeld 0x3040 verzendt, zal Actoboard 0x4030 begrijpen. U moet het cijfer dus omkeren voordat u een gegevensformaat verzendt dat groter is dan 2 cijfers.

Dashboard bewerken:

Om uw gegevens in een Dashboard op Actoboard te bewerken, hoeft u alleen maar een widget toe te voegen. Er is een lijst met widgets, u moet degene kiezen die het beste bij uw systeem past. En daarna hoef je alleen maar te kiezen welke gegevens welke widget gaan vullen.

Verzenden naar knooppunten:

Om alle gegevens die u op Actoboard ontvangt over te zetten naar nodered via URL, hoeft u alleen maar het vak "forwarding url" in uw instellingen in te vullen met uw nodered project-URL. We hebben bijvoorbeeld het vak gevuld met "https://noderedprojet.mybluemix.net/projet".

Stap 5: Databank

Databank
Databank
Databank
Databank
Databank
Databank
Databank
Databank

Bluemix

  • geknoopt:
  • Ontvang het gegevensformulier Actoboard

Om het gegevensformulier Actoboard te krijgen, moet u een "websocket" -invoer toevoegen die u moet instellen via "POST" en uw URL specificeren (voorbeeld in foto).

Het formatteren van data

U moet de gegevens die u in uw database wilt toevoegen (cloudant) extraheren en opmaken. daarvoor moet je een "functie" -blok toevoegen. Zie de foto in bijlage om te begrijpen hoe dat te doen.

Je kunt geometrische dingen op een kaart toevoegen, we hebben bijvoorbeeld een functie die een punt met de GPS-coördinaat op een kaart toevoegt en deze koppelt. We gebruiken deze functie om de race te maken en daarna schakelen we de andere functie die een polygoon rond het punt gaat creëren als je een RFID TAG aanvinkt.

Verzenden naar cloudant

Na het formatteren van uw gegevens, moet u ze naar uw cloudant DataBase sturen. Daarvoor moet u een "cloudant" opslagblok toevoegen en de instellingen specificeren zoals de naam van uw DataBase, de bewerking "insert" zie ons voorbeeld in bijlage.

Vergeet niet om uw nodered te "implementeren" om uw systeem te laten werken.

Wolken:

In je cloudant-database kun je nu alle gegevens zien die je hebt verzonden met de sigfox en opmaak in knooppunt rood. U kunt kiezen welke informatie u wilt zien, zoals "datum, apparaat, TAG RFID, GPS".

En je kunt de geometrische dingen die je hebt gemaakt visualiseren in de knooppuntfunctie in het menu "gps Geospatial Indexes"

Stap 6: Demonstratie

Samenvattend hadden we vier Interfaces Human-Machine die bediend werden door vier drukknoppen.

De basisinterface geeft de temperatuur, de vochtigheid, het tagnummer, een chronometer en de magnetische richting aan.

Op een van de drukknopacties vindt u een echt interfacekompas. Er wordt een cirkel op het scherm getekend met de richting goed gepositioneerd.

Bij een andere drukknopactie stuurt u een SOS-bericht waarmee uw locatie naar de database wordt verzonden. Bovendien hoort u een SOS-bericht in morsecode.

Bovendien wekt u bij de laatste druk op de knop de RFID-tag. Daarna heb je vijf seconden om je oversteekplaats te markeren. Dan hoort u een pieptoon. Deze actie verhoogt een teller op het display en stuurt de tag met de tijd op onze database. Ten slotte zullen alle tags de rit op een kaart tekenen.

De automomy van ons horloge is ongeveer 4h30 (ongeveer 660mA/h). Het hangt af van het gecontroleerde tagnummer.

Om na de race af te sluiten, vind je alle loperacties terug op onze database bluemix.

Aanbevolen: