Maak een hooggelegen ballon Tracker (Arduino) (5 / 8 stap)

Stap 5: Een schets maken


Schets:

Mijn volledige schets is beschikbaar in het zip-bestand in de volgende stap, echter, is het nuttig om een idee van het algemeen plan om gemakkelijker aan te passen.


Onderbreken:

We moeten de radio Fly-by modulerende pin D5 hoog/laag met een snelheid van 50 baud. Dat wil zeggen, elke 20ms moeten we vertegenwoordigen een nieuwe bits van gegevens als een hoog of laag voor een 1 of 0 respectievelijk. We gebruiken deze gegevensstroom voor het coderen van een tekenreeks. Er zijn verschillende methoden om dit, maar 7-bits ASCII is het meest gebruikelijk. We houden een dubbele-buffer dat de tekenreeks voor de transmissie en een kopie die wij met bijgewerkte gegevens bereiden.

Om de meest efficiënte en betrouwbare transmissie en vooral om ons nauwkeurige timing, sturen we de tekenreeks onder interrupt. Dit vereist een korte en snelle stukje code eenvoudigweg om bij te houden welke bits van welke byte van de tekenreeks die we zijn momenteel doorgeven en gaan verder met de volgende bit telkens. Als we klaar bent met één tekenreeks schakelen we de tekenreeks buffers, verplaatsen naar de meest recente gegevens uit de andere buffer verzenden.

Hoofdlus:

In de hoofdlus circuleren we, het lezen van elk van de sensoren en de GPS wanneer ze klaar zijn. De meest recente waarden worden opgeslagen in variabelen. Wanneer de GPS klaar om te bieden op een nieuwe locatie is, we lezen dat, decoderen en bijwerken van het werkexemplaar van de tekenreeks. We moeten uitschakelen onderbreekt kort om bij te werken van de buffer, zodat we niet eindigen toezending van een tekenreeks half-gebouwd. Dientengevolge, updaten we de buffer alleen wanneer een nieuwe GPS-locatie klaar, is zodat wij geen interrupts uitschakelen voor te lang hebben.

Telkens wanneer wij overschakelen buffers die we ingesteld een vlag die de hoofdlus te vertellen dat een nieuwe transmissie wordt gestart. De oude tekenreeks die werd zopas is vervolgens naar de SD-kaart geschreven voordat de buffer tot worden bijgewerkt wordt geopend.

We moeten ook een oogje houden op de GPS om ervoor te zorgen dat het blijft in de Vluchtmodus. De reden waarom dat we gebruiken een Ublox GPS module is dat het tot de hoogten die we zullen worden bezoekt werken zal - vele GPSs niet werken boven ongeveer 14 km. Om de Ublox werken op grote hoogte, moeten we ervoor zorgen dat er in de juiste modus.

Sensoren & poorten:

De Raad van bestuur kan praten met de GPS-module door I2C of UART. Ik heb gekozen de I2C-interface gebruiken, zodat ik de UART gebruiken kunnen voor foutopsporing door aan de seriële poort van de PC te koppelen. We zullen ook de I2C gebruiken om te praten met de Honeywell druksensor, maar de twee lijken te bestaan op de I2C regels zonder conflict.

Het bestuur vindt twee DS18B20 temperatuursensoren. Ik gebruikte één interne en één externe. Deze zijn zeer gevoelig voor timing en ik moest interrupts uitschakelen voor een paar microseconden tijdens het lezen van hen. Ze zijn anders zeer makkelijk te gebruiken. Ik gebruikte een kopie van de draad bibliotheek die beweerde te hebben minder blijft hangen dan de oorspronkelijke Arduino een. Waar of niet, werkte het prima.

De SD kaart zit op de SPI pinnen en wordt afgehandeld door de SDfat-bibliotheek. SD-kaart schrijven neemt dat een lading van geheugen en een van de echte trucs om deze schets probeerde om te controleren hoeveel gratis SRAM was beschikbaar.

Gerelateerde Artikelen

Maak een schets van de Arduino kleinere

Maak een schets van de Arduino kleinere

als je elke hit dat 32,256 byte maximale op een Arduino Uno en vroeg zich af als je kon maken van je schets kleinere in plaats van een upgrade naar een Mega, dit is voor jou!Het advies gegeven bij de url de compiler geeft is goed advies, maar hoe pre
Maak een zelfbalancerende Robot met Arduino UNO

Maak een zelfbalancerende Robot met Arduino UNO

Self balancing Robot is zeer interessant. Veel vrienden om ons heen wilden maken een, maar ze encounted alot van chanllenges met inbegrip van het ontbreken van de gemakkelijk-aan-de vergadering van structuren, de geschikte elektronische schakelingen
Maak een mini speelgoedauto met Arduino

Maak een mini speelgoedauto met Arduino

Elke jongen hebben de droom om een auto te maken. Dagen geleden maakte ik een nooit val kever, het is erg grappig en zo veel mensen zei dergelijke het. Hier zal het een ander speelgoedauto, die veel kleiner is en het is programmeerbaar.Ik ga niet sch
Met behulp van een joystick met je Arduino

Met behulp van een joystick met je Arduino

Joysticks zijn een grote bron van input voor een project. Vooral voor Robotica. Als hardware hackers hebben de meesten van ons hield altijd dit soort dingen. Behalve de nieuwe jongens daartoe vindt het misschien moeilijk te begrijpen van het concept
Hoe maak je een GSM locatie Tracker met de AdaFruit FONA en Arduino

Hoe maak je een GSM locatie Tracker met de AdaFruit FONA en Arduino

IntroductieIn deze tutorial gaan we een web verbonden locatie logger met behulp van de Adafruit FONA bestuur, een Arduino en de Service van Sparkfun gegevens. Het krijgt de locatie door middel van triangulatie en post-it op een onlinedatabase met een
Maak een bokszak in Arduino en eenheid met behulp van een Joystic en ballon

Maak een bokszak in Arduino en eenheid met behulp van een Joystic en ballon

Dit instructable is gewoon over lezen input van een arduino joystic maar met een lichte twist! We willen onze joystick omzetten een bokszak :) en nog beter zullen we het hele proces in unity3D visualiserenLet op: dit hele instructable is beschikbaar
Maak een ballon Parrot

Maak een ballon Parrot

Heb je ooit gewild uw eigen huisdier papegaai, maar haat de rotzooi die ze maken? Misschien wil je anderen te imponeren met unieke vaardigheden! In ieder geval kunt u de volgende stappen uit. Je moet een ballon pomp en één lange ballon.Stap 1: Prep h
Hoe maak je een Origami ballon door: Oliver

Hoe maak je een Origami ballon door: Oliver

Lees, het is super makkelijk en leuk!Stap 1: Maak een vierkant 1. Vouw diagonaal te maken van een rechthoekige driehoek.2. knippen van de bodem. (Ik verkies het gebruiken van uw handen)3. ontvouwenStap 2: Vouw de driehoek 1. fold diagonaal rechts2. h
Hoe maak en gebruik van de arduino als een Internet-provider voor een ATtiny 45/85

Hoe maak en gebruik van de arduino als een Internet-provider voor een ATtiny 45/85

In dit instructable ik zal u tonen hoe kunt u uw eigen Atting programmering shield voor de arduino en gebruikt u vervolgens de arduino als een programmeur.Meestal hebt u niet een schild kan je een breadboard versie om te programmeren van de ATtiny. (
Hoe maak je een tekening Arm met Arduino

Hoe maak je een tekening Arm met Arduino

Deze Instructables zal u tonen hoe te creëren uw zeer eigen tekening arm. De tekening arm tekent met behulp van het gat in het op de meeste stuk hout als een schrift gebruiksvoorwerp houder. Deze tekening arm werkt door te nemen input van de potentio
Maak een ballon papier

Maak een ballon papier

dit Instructable zal u tonen hoe te een ballon van papier maken. Dit is mijn eerste Instructable dus geef me wat tips of vragen indien nodig. Als mijn instructies moeten verwarrend verwijzen naar afbeeldingen. Het is niet de beste, maar veel mensen l
Maak zelf een TV afstandsbediening gecontroleerde Arduino Robot!

Maak zelf een TV afstandsbediening gecontroleerde Arduino Robot!

Hallo jongens.Abhay en Akshay hier!Vandaag gaan we naar het maken van een TV remote controlled Robot dat niet alleen werkt als een charme, maar u het ook upgraden kunt door het bewerken van de code en gebruik te maken van een paar meer knoppen op de
Hoe maak je een 2 ballon steeg

Hoe maak je een 2 ballon steeg

deze ballon ontwerp is eenvoudig en vrij eenvoudig te maken. Het duurt slechts ongeveer 20 minuten om de eerste tijd, en met verdere praktijk, dit kan worden gedaan zo weinig als 5 minuten.Wanneer om ballonnen voor dit project, vindt u enkele letters
Wetenschappelijk onderzoek hooggelegen ballon for Fun and Profit

Wetenschappelijk onderzoek hooggelegen ballon for Fun and Profit

INTROHooggelegen ballonnen zijn onbemande ballonnen, meestal gevuld met helium of waterstof, die worden uitgebracht in de stratosfeer, in het algemeen te bereiken tussen 60.000-120.000 voeten (11 tot en met 23 mi; 18 tot en met 37 km). Een dergelijke