Inhoudsopgave:

Lowcost 3D FPV-camera voor Android - Ajarnpa
Lowcost 3D FPV-camera voor Android - Ajarnpa

Video: Lowcost 3D FPV-camera voor Android - Ajarnpa

Video: Lowcost 3D FPV-camera voor Android - Ajarnpa
Video: DIY micro 3D FPV camera for Android 2024, Juli-
Anonim
Goedkope 3d Fpv-camera voor Android
Goedkope 3d Fpv-camera voor Android
Goedkope 3d Fpv-camera voor Android
Goedkope 3d Fpv-camera voor Android

FPV is een vrij cool ding. En in 3D zou het nog beter zijn. De derde dimensie is niet erg logisch op grote afstanden, maar voor een indoor Micro Quadcopter is het perfect.

Dus ik ging een kijkje nemen op de markt. Maar de camera's die ik vond waren allemaal te zwaar voor een micro-quadcopter en je hebt er een dure bril voor nodig. De andere mogelijkheid zou zijn om twee camera's en twee zenders te gebruiken. Maar nogmaals, je hebt het probleem van de dure bril.

Dus besloot ik om het zelf te maken. Alle camera's op de markt gebruiken een FPGA voor het maken van het 3D-beeld. Maar ik wilde het goedkoop en gemakkelijk houden. Ik wist niet zeker of het zou werken, maar ik probeerde twee Sync Separator IC's te gebruiken, een microcontroller om de synchronisatie te beheren en een analoog schakel-IC om tussen de camera's te schakelen. Het grootste probleem is om de camera's gesynchroniseerd te krijgen, maar het is mogelijk om dat te doen met de controller. Het resultaat is best goed.

Een ander probleem was de 3D-bril. Normaal gesproken heb je een speciale 3D-bril nodig die behoorlijk duur is. Ik heb een paar dingen geprobeerd, maar ik kon het niet alleen met elektronica oplossen. Dus besloot ik een USB-videograbber en een Raspberry Pi met Google-karton te gebruiken. Dit werkte vrij goed. Maar het was niet erg leuk om het scherm in het karton te plaatsen en alle elektronica bij de hand te hebben. Dus begon ik een Android-app te schrijven. Uiteindelijk had ik een compleet 3D FPV-systeem voor Android voor minder dan 70 Euro.

Er is een vertraging van ongeveer 100 ms. Dat komt door de videograbber. Het is klein genoeg om ermee te vliegen.

Je hebt behoorlijk goede soldeervaardigheden nodig om de camera te maken, want er is een zelfgemaakte printplaat, maar als je een beetje ervaring hebt, zou je het moeten kunnen doen.

Oké, laten we beginnen met de onderdelenlijst.

Stap 1: Onderdelenlijst

Onderdelen lijst
Onderdelen lijst

3D-camera:

  • PCB: je kunt de PCB met de onderdelen hier krijgen (ongeveer 20 Euro
  • 2 camera's: het zou met bijna elk paar FPV-camera's moeten werken. Ze moeten dezelfde TVL en dezelfde kloksnelheid hebben. Een goede keuze is om enkele cams te gebruiken waar je gemakkelijk toegang hebt tot de Christal. Ik gebruikte een paar van deze kleine camera's met 170 graden lenzen omdat ik het op een Micro Quad wilde gebruiken. (ongeveer 15 tot 20 euro)
  • FPV-zender: ik gebruik deze (ongeveer 8 Euro)
  • FPV-ontvanger (ik had er een liggen)
  • 3D-geprint kader
  • Easycap UTV007 videograbber: het is belangrijk om de UTV007-chipset te hebben. Je kunt andere UVC-videograbbers proberen, maar er is geen garantie dat het werkt (ongeveer 15 Euro)
  • USB OTG-kabel (ongeveer 5 Euro)
  • 3D FPV Viewer Android-app: Lite-versie of volledige versie
  • een soort google-karton. Google er maar op (ongeveer 3 Euro)

Extra behoeften:

  • Soldeerbout
  • Solderen ervaring
  • vergrootglas
  • AVR-programmeur
  • PC met avrdude of een andere AVR-programmeersoftware
  • Android-smartphone met USB OTG-ondersteuning
  • 3D-printer voor de camerahouder

Stap 2: Monteer de printplaat

Monteer de printplaat
Monteer de printplaat
Monteer de printplaat
Monteer de printplaat

"laden = "lui"

Image
Image
Conclusie, aanvullende informatie en enkele tips
Conclusie, aanvullende informatie en enkele tips

Conclusie: De camera werkt redelijk goed. Zelfs als het niet perfect is, is het bruikbaar. Er is een vertraging van ongeveer 100 ms, maar voor normaal vliegen en om 3D fpv te testen is het goed.

Informatie en tips:

- Als je geen Android-smartphone hebt die de easycap UTV007 of UVC ondersteunt, kun je er gemakkelijk een op e-bay krijgen. Ik kocht een oude Motorola Moto G2 2014 voor 30 Euro.

- De camera synchroniseert niet elke keer. Als je geen foto krijgt of als de foto niet in orde is, probeer dan de camera een paar keer opnieuw op te starten. Bij mij werkte dat altijd na een paar keer proberen. Misschien kan iemand de broncode verbeteren voor een betere synchronisatie.

- Als je de klok van de camera's niet hebt gesynchroniseerd, gaat één foto langzaam omhoog of omlaag. Het is minder storend als je de camera's 90 graden draait, dat het beeld naar links of rechts gaat. Je kunt de rotatie aanpassen in de app.

- Soms veranderen de linker- en rechterkant willekeurig. Als dat gebeurt, start u de camera opnieuw op. Als het probleem zich blijft voordoen, probeer dan de parameter DIFF_LONG in de 3dcam.h hoger in te stellen, compileer de code opnieuw en flash het hex-bestand opnieuw.

- U kunt de standaard instellen op PAL door PB0 en PB1 op +5V. te zetten

- U kunt de standaard instellen op NTSC door alleen PB0 op +5V. te zetten

- Met PB0 en PB1 niet aangesloten is de auto-detect mode actief met een groot verschil (standaard)

- Met alleen PB1 aangesloten op +5V is de automatische detectiemodus actief met een klein verschil. Probeer dit als je een deel van de eerste foto onderaan de tweede foto ziet. Het risico op willekeurig wisselende foto's is groter.

- Ik gebruik de standaardmodus met klokgesynchroniseerde PAL-camera's, maar ik stel de app in op NTSC. Met deze aanpassing heb ik NTSC-resultaten en geen risico op willekeurig wisselende foto's.

- Ik had erg slechte kleurvervormingen met niet-klokgesynchroniseerde PAL-camera's. Bij NTSC-camera's gebeurde dit niet. Maar hoe dan ook, het synchroniseren van de klokken is beter voor beide normen.

Details over de code:

De code is zojuist gedocumenteerd in het 3dcam.h-bestand. Alle belangrijke instellingen kunnen daar worden gedaan. Enkele opmerkingen over de definities:

MIN_COUNT: Na dit aantal regels wordt de kant geschakeld naar de tweede camera. U moet het laten zoals het is. MAX_COUNT_PAL: Deze optie wordt alleen gebruikt in de PAL-modus. Na dit aantal regels wordt het beeld teruggeschakeld naar de eerste camera. U kunt met deze parameter spelen als u de PAL-modus gebruikt. MAX_COUNT_NTSC: hetzelfde voor NTSCDIFF_LONG/DIFF_SHORT: deze parameters worden gebruikt in de automatische detectiemodus. Dit aantal wordt afgetrokken van de automatisch gedetecteerde schakeltijd. Je kunt met deze parameters spelen. MAX_OUTOFSYNC: Dit was bedoeld om de synchronisatie van de camera's te controleren, maar het werkte nooit goed. Laat het gewoon zoals het is of probeer het zelf uit te voeren.

Als je mijn PCB gebruikt, moet je de rest van de definities laten zoals ze zijn. Een makefile bevindt zich in de map Debug.

Dat is het. Ik zal binnenkort een inflight-video en een instructable voor de quadcopter toevoegen. Op dit moment is er alleen de cameratestvideo.

Update 5. Aug. 2018: Ik heb een nieuw AVR-programma gemaakt voor klokgesynchroniseerde camera's. Ik weet niet of het werkt als je de klokken niet synchroniseert. Als u gesynchroniseerde camera's heeft, moet u deze gebruiken.

Bij PAL-camera's kan het voorkomen dat er kleurvervormingen optreden. Reset de AVR totdat je een goed beeld hebt voor beide camera's. Ik heb daarvoor een resetknop aan mijn printplaat toegevoegd.

Het kan voorkomen dat je met NTSC-camera's willekeurig wisselende foto's hebt. Reset de AVR totdat deze stopt om willekeurig te veranderen. Je kunt ook spelen met de parameter DIFF_SHORT in de broncode.

Er zijn een paar wijzigingen ten opzichte van de laatste versie:

  • PAL/NTSC wordt automatisch gedetecteerd. De handmatige selectie wordt verwijderd.
  • Om DIFF_SHORT in te stellen, zet u PB1 op +5V. Dit moet je doen als je een deel van de tweede foto onderaan de eerste foto ziet.
  • De camera's synchroniseren nu altijd.

Hier is de link

Update 22. jan. 2019: Ik had de kans om de camera te testen met een veldwisselende 3D-bril. Het werkt zonder vertraging. (Getest met zeer oude Virtual IO iGlasses en Headplay 3d-bril)

Aanbevolen: