Spotter toepassingsgebied (5 / 9 stap)

Stap 5: Arduino Sketch


WhatItDoes: Mijn schets van de SpotterLevel toont de kop of rekening houdend met dat het toepassingsgebied is gericht. De standaard magnetisch kompas is verdeeld in 360 graden met Champagne bij 0, 90, 180 Noord en West 270 Oosten. De kop is de richting die het toepassingsgebied is gericht in graden.

Voor het kompas op deze foto is de kop ongeveer 123 graden.

Ook weergegeven zijn de x, y en z-waarden van de versnellingsmeter in graden met niveau 0 en straight up op 90. Zo perfect niveau zou 0, 0, 90.0.

Ik gebruik Adafruit bibliotheken voor de LCD5110 module.

Waarschuwing: Toen ik naar Arduino aan 1.6.1 bijgewerkt, moest ik bijwerken van Adafruit_GFX en Adafruit_PCD8544 bibliotheken:

https://Learn.adafruit.com/adafruit-GFX-graphics-library

https://github.com/adafruit/Adafruit-PCD8544-Nokia-5110-LCD-Library

Zoals al eerder gezegd:

Let op: Mijn PCB gebruikt een Atmega328 geprogrammeerd met Pro-MINI 8 MHZ 3.3V bootloader. Als u deze PCB bouwen, u moet het programma met de Pro-MINI 8 MHZ, 3,3 v bootload en moet niet selecteren wanneer gebruik van de Arduino omgeving.

Arduino Environment versie 1.6.4:

Selecteren, selecteer juiste poort

SELECT, onder planken, selecteer (Arduino Pro of Pro Mini)

Selecteer, onder Processor, (Atmega328 (3,3 v, 8 Mhz))

Opmerking: Oudere versies niet hebben Processor selectie maar hebben een Pro Mini AtMega328 (3,3 v, 8 MHz) selectie onder Boards.

De PCB is ontworpen voor gebruik van een adapter van USB-BUB, of ik gebruik, het equivalent van een PL2303.

Mijn schets van de SpotterLevel moet worden gewijzigd voor uw kalibratie-waarden gevonden in de laatste stap:

Vanuit het programma kalibreren aansluit op de min/max-waarden SpotterLevel schets, ter vervanging van de waarden in de volgende regels:

Compass.m_min = (LSM303::vector) {-433,-600,-546};

Compass.m_max = (LSM303::vector) {570, 488, 579};

Dit moet het verbeteren van de rubriek lezingen.

Van het AccelCal -programma, sluit u de min/max-waarden op SpotterLevel schets, ter vervanging van de waarden in de volgende regels:

Kalibratie van de versnellingsmeter {x, y, z}

Const lange acmin [3] = {-17008,-16432,-17120};

Const lange acmax [3] = {16064, 16480, 18176};

Dit moet het verbeteren van het niveau lezingen.

LSM303dlhc richting: Er is een andere instelling van de software die mogelijk moeten worden aangepast afhankelijk van hoe de LSM303dlhc module is gericht en welke richting je geïnteresseerd bent in. In het kader van de spotter zin mij voor weet welke richting het toepassingsgebied wijst. Bij het toevoegen van de module, wilt u ervoor zorgen dat er parallelle of loodrecht op de richting die u geïnteresseerd bent. In dit geval wijst de X pijl in de richting die ik ben geïnteresseerd in. De volgende regel weerspiegelt dit:

rubriek = compass.heading((LSM303::vector) {0, 1, 0});

Als u geïnteresseerd in de tegenovergestelde richting bent als de X wijst u gebruikt:

rubriek = compass.heading((LSM303::vector) {-1, 0, 0});

Als u geïnteresseerd in dezelfde richting bent als de Y wijst u gebruikt:

rubriek = compass.heading((LSM303::vector) {0, 1, 0});

Als u geïnteresseerd bent in de richting naar beneden (Z) die u wilt gebruiken:

rubriek = compass.heading((LSM303::vector) {0, 0, -1});

De drie waarden zijn om samen te vatten, X, Y en Z. Slechts één van hen kunnen niet-nul zijn. Als het dezelfde richting als de richting dan 1 is. Als het de tegenovergestelde richting dan -1.

TECHNOBABBEL: Ik denk dat dit is met behulp van lineaire algebra en vector math. (BAH!)

Helaas, er is wat meer kalibreren om te doen. De LSM303dlhc IC is aangesloten op de interface PCB. De Raad van bestuur is vastgebout aan de bovenste plaat. Al deze spanningen op de IC van invloed op de versnellingsmeter lezen dus nul zal niet gelijk aan nul zijn. Dus voegde ik een kleine correctiefactor in mijn schets.

Laatste kalibratieprocedure:

De schets van de SpotterLevel voor bewerken openen Controleer of de waarden in deze lijn zijn alle 0.0:

dubbele ac_off [3] = {0,0, 0,0 0,0}; Gebruik deze om te kalibreren.

Laden de schets aan de Arduino.

De vergadering hechten aan een statief.

Niveau de bovenplaat van de vergadering. Ik heb een beetje T-waterpas daarop. Meeste statieven hebben een paar aanpassingen worden aangepast voor niveau.

Dit is moeilijk om te doen. Wat ik doe is het niveau parallel met een van de aanpassingen uitlijnen. Maken de aanpassing dan draai het 180 graden en controleren. Vervolgens de vergadering 90 graden draaien en herhaal voor de andere aanpassing.

Let op: de peiling heeft een heleboel spelen daarin dus zorg ervoor dat de vergadering is gelijkmatig rustend op de peiling.

Als u eenmaal de bovenste plaat zo niveau is aangezien u het kunt krijgen, is inschakelen van de Arduino. Nu langzaam de plaat rond te draaien en u de min en max waarden voor x, y, z. Neem dan het gemiddelde. Hier is wat ik kreeg, een tijd:

X Y Z

Max-0.0 0.4 83,7

Min-1.6 -1,0 83,3

Ave -0,8 -0,3 83,5

Voor de Z moet je aftrekken 90 daaruit (-6.5)

Steek deze in de schets

dubbele ac_off [3] = {-0,8, 0.3,-6.5};

Je dan eindelijk klaar bent met het kalibreren!!

Gerelateerde Artikelen

Toepassingsgebied van de rode stip

Toepassingsgebied van de rode stip

hoe maak je een rode stip toepassingsgebied/rode stip toepassingsgebied playstation verplaatsen / rode stip toepassingsgebied/maken een toepassingsgebied, starp schutter rode stip scope
PC-GELUIDSKAART toepassingsgebied INTERFACE vergemakkelijkt DC restauratie

PC-GELUIDSKAART toepassingsgebied INTERFACE vergemakkelijkt DC restauratie

om mee te beginnen moet ik waardeer erkennen en 'Christian Zeitnitz' dank voor de fantastische geluidskaart oscilloscoop & signaal generator software beschikbaar op zijn website waarop dit Instructable is gebaseerd.Tijdens het werken met de PC geluid
Kne'x [Leupold mark IV Barrett optische variërend systeem toepassingsgebied]

Kne'x [Leupold mark IV Barrett optische variërend systeem toepassingsgebied]

Dit is een kne'x versie van de werkingssfeer van de Leupold Mark IV met een Barret optische variërend systeem of BORS voor korte.Het is een lange reeks sniper scope met een zoom werken.SPECIFICATIESGewicht: n/bHoogte boven de middellijn van de Scope:
Eenvoudige maar zeer nauwkeurige Nerf LASER ACOG toepassingsgebied bijlage

Eenvoudige maar zeer nauwkeurige Nerf LASER ACOG toepassingsgebied bijlage

dit is de laser ACOG bereik ik heb voor mijn nerf recon geweer gemaakt. Ik gebruikte de aanblik die wordt geleverd met het pistool, maar ik nam het bovenste stuk af en geplakt een scope op het die is gemaakt met behulp van een rol wc-papier, plastic
Yashica T3 toepassingsgebied Hack

Yashica T3 toepassingsgebied Hack

ik was ook onder de indruk van de foto's van mijn Yashica T3 - niet zo onder de indruk met de nietige vergroting van de taille-niveau finder. Hier is een zeer eenvoudige toevoeging aan uw T3 van N.A. scope waarmee samenstelling aanzienlijk. Niet veel
Longshot toepassingsgebied maken tips

Longshot toepassingsgebied maken tips

Deze korte tutorial zal zorgen voor een andere optie voor de plaatsing van het glas B/F.Dit is hoe kort het kan krijgen.Dit is een lassen alternatief voor de fullauto223 leerprogramma, dat gaf me het vertrouwen aan mijn zoon toepassingsgebied versned
Nerf toepassingsgebied Attacment Mod

Nerf toepassingsgebied Attacment Mod

dit is een vrij eenvoudig Nerf mod om een toepassingsgebied bijlage dat op een spoor klikken. En om het merk op, dit is een scope met zoom, niet een ACOG gezicht zoals degene die wordt geleverd met de Longshot. Ook ik maakte dit eerst, dan maakte de
Nerf longshot toepassingsgebied mod in ACOG stijl scope

Nerf longshot toepassingsgebied mod in ACOG stijl scope

Nou, heres mijn tweede instructable. Dit is de eerste mod van dit soort die ik heb gezien na wat zoeken, maar misschien ik keek niet op de juiste plaatsen. Ik zal gedetailleerde instructies over het uitvoeren van dergelijke een zoete lookin nerf toep
Hoe maak je een airsoft de beschermer van het toepassingsgebied van de rode stip voor goedkoop (werkt ook voor conventionele scopes)

Hoe maak je een airsoft de beschermer van het toepassingsgebied van de rode stip voor goedkoop (werkt ook voor conventionele scopes)

zodat u uw eerste rode stip zicht hebt gekocht. Maar de nacht vóór uw eerste schermutseling die u beseffen "hangen... wat als dit geraakt wordt door een bb? Zal het breken?" Het korte antwoord is, u zult gelukkig zijn als je weg met een kras...
HD Camera monteren op de kruisboog of geweer toepassingsgebied

HD Camera monteren op de kruisboog of geweer toepassingsgebied

Dit is een eenvoudige en zeer effectieve manier van montage van een camera naar een kruisboog of geweer scope. Voor mij zal zulks zitten zeer nuttig bij de behandeling van mijn schot timing en de hoek die de herten (of wat dan ook wijs) voor mij is.
Arduino ultrasone "Parkeren Spotter"

Arduino ultrasone "Parkeren Spotter"

voor mijn eerste instructable, ik wil graag de Parking Spotter. Dit is niet een nieuw concept, weet ik. Deze build gebeurde echter specifiek om aan te passen mijn behoeften/wil/materialen al in mijn bezit. Typisch, een project begint met een idee, on
Zonne-toepassingsgebied van Makedo

Zonne-toepassingsgebied van Makedo

observeren de Transit of Venus, zonnevlekken en andere zonne-verschijnselen met deze zonne-Scope, gemaakt van geregenereerde schoenendozen en Makedo onderdelen beschikbaar op www.mymakedo.com.Stap 1: ontvouwen Om uw zonne-bereik, de kleppen van de ka
20 X inzoomen / uitzoomen toepassingsgebied opnemen

20 X inzoomen / uitzoomen toepassingsgebied opnemen

dit klopt over het meest gemakkelijk-aan-bouwstijl toepassingsgebied ooit. Zijn fundamenteel een camera op een pistool kant manieren. U kunt hetzelfde doen met een spelen oude camera, maar ik nog steeds een video camera.Stap 1: Benodigdheden u nodig:
Geweer toepassingsgebied kalibratie staan

Geweer toepassingsgebied kalibratie staan

als u wilt kalibreren van een geweer scope, moet u uw geweer zich gestaag. Ik maak een uit ongewenste hier in mijn garage.Stap 1: Gestage stuk hout Vinden van een stuk hout dat is dik genoeg en zwaar, zodat het niet na een shoot verschuift. We moeten