Bouwverslag: zelfbouw flight controler op basis van Arduino Uno

8O Huh, de Uno heeft 2k bytes aan SRAM..... Hoe krijg je dat voor elkaar??? :p

Maar zit er een controle op het declareren van SRAM geheugen? Ik dacht het namelijk niet. Dat geeft juist kans op buffer overflows.
 
Code:
Sketch uses 15,390 bytes (47%) of program storage space. Maximum is 32,256 bytes.
Global variables use 1,064 bytes (51%) of dynamic memory, leaving 984 bytes for local variables. Maximum is 2,048 bytes.

Het dynamische geheugen dus, 51% nu , omdat ik de GLCD er af gesloopt heb, die werkte via SPI, maar vrat een hoop memory met global vars.
 
SPI zal op zicht geen groot probleem zijn. Ik verwacht eerder dat strings die je naar het display wilt sturen het probleem zijn. Die moet je wel in het programmageheugen houden. Anders kost dat enorm veel SRAM.

Zelf heb ik tijdens het vliegen 818 bytes aan ruimte tussen de stack en de heap. Ik hoef mij voorlopig geen zorgen te maken ;-)
 
Toch wel mooi om te lezen dat er op regenachtige weekenden zoveel leuke nieuwe dingen zijn te ontdekken in deze hobby
Zal me er eens in verdiepen, Uno ligt nog hier en een frame met motors is ook geen issue voor een knutsel


Staat jullie code centraal op Github?
Samen delen en uitbouwen voor de liefhebbers is zo gek nog niet. Dit is voor open source ook nog eens gratis
 
Staat jullie code centraal op Github?
Samen delen en uitbouwen voor de liefhebbers is zo gek nog niet.
Ik heb er voor gekozen om de code niet openbaar te maken. 1) Ik weet nog niet wat het eindresultaat gaat worden en 2) Kost gewoon veel te veel tijd om alles goed te onderhouden en te voorkomen dat er ongewenste fouten in komen door het "samenwerken".

Voor opensource kan je kijken naar Aeroquad of MultiWii. Er zullen er ongetwijfeld meer zijn. Maar dat zijn de twee die ik ken.
 
Ik snap het maar dan blijft het bij lezen helaas...
Door het closed source te houden loop je waardevolle adviezen en aanvulling mis die anderen voor je uitzoeken. Code delen met disclaimers en het uitsluiten van wijzigingen door anderen is ook een optie...
 
Door het closed source te houden loop je waardevolle adviezen en aanvulling mis die anderen voor je uitzoeken
Daar heb je helemaal gelijk in..... maar juist dat puzzelen en uitzoeken is zo leuk aan dit project ;-) Anders had ik wel de MultiWii gebruikt. Maar nu heb ik een Arduino Uno met telemetrie, GPS en nog veel meer moois... En geheel naar eigen wensen aan te passen :thumbsup:
 
Hahaha
Natuurlijk dat is een deel wat me ook aantrekt maar waarom een goede start niet publiek maken. De voorsprong hou je toch zelf en jij bepaald wat je met de adviezen doet

Maar desondanks: mooi project
En als je de source zipfile wilt emailen hou ik me aanbevolen ;)
 
SPI zal op zicht geen groot probleem zijn. Ik verwacht eerder dat strings die je naar het display wilt sturen het probleem zijn. Die moet je wel in het programmageheugen houden. Anders kost dat enorm veel SRAM.

Zelf heb ik tijdens het vliegen 818 bytes aan ruimte tussen de stack en de heap. Ik hoef mij voorlopig geen zorgen te maken ;-)

Probleem is voornamelijk de init code ed. voor het LCD, die vragen behoorlijk wat memory (door veel global constants), gezien het niet echt toegevoegde waarde had, heb ik het display verwijderd, en doe het gewoon via serial, qwa strings had ik juist erg weinig, dus grootste deel ging naar aansturing.
SPI zelf was de oorzaak ook niet, maar meer de code voor het display.
Ach voordeel nu is dat ik weer extra pins vrij heb :)

1399725814.jpg


Zo ver ben ik inmiddels, moet nog even de ESC's harnass maken, Arduino wordt gevoed vanaf een UBEC met lowvoltage detectie, op de 5V bus van de Arduino (regulator heb ik verwijderd, gezien ik deze niet nodig heb, dus geen risico van het doorbranden hiervan ;))
 
Ziet er goed uit. En wat een berg draden heb je dan weer he :D Welke sensoren ga je op deze quad gebruiken?

Zelf heb ik op deze regenachtige dag Eagle geïnstalleerd voor het ontwerpen van pcb's. Werkt wel erg handig en mooi. Nu alleen nog heeeeeel veel ervaring er mee krijgen haha.
 
Ziet er goed uit. En wat een berg draden heb je dan weer he :D Welke sensoren ga je op deze quad gebruiken?

Zelf heb ik op deze regenachtige dag Eagle geïnstalleerd voor het ontwerpen van pcb's. Werkt wel erg handig en mooi. Nu alleen nog heeeeeel veel ervaring er mee krijgen haha.

Eagle heb ik al jaren, heb zelfs een Personal license zodat ik 4layer prints kan maken, hier ontwerp ik alles mee.

Qwa sensoren:

een HC-SR04 (korte afstand meting voor hoogte).
en een 10DOF Module voor de rest.
De Ultrasoon corrigeert inprincipe de BMP085 voor de korte afstanden.
 
Dan zou ik in ieder geval proberen om de esc's onder op de armen te monteren en de bekabeling weg te houden van het kompas. Dit beïnvloed elkaar behoorlijk.

Succes met bouwen en programmeren.
 
Je filmpje is duidelijk wat de heading lock doet. Je kan dus om zn as tollen en toch rechtuit blijven vliegen. Nog niet iets waar ik behoefte aan heb, maar goed, ik gebruik mijn quad ook anders.
Wel mooi dat je het voor elkaar hebt gekregen.
 
Vanavond eens gekeken hoe warm de spanningsregelaar van de Arduino nu eigenlijk wordt als alles in bedrijf is. De warmte kan kennelijk maar slecht weg :rolleyes:

full


De temperatuur loopt aardig op. Voor alle zekerheid tijdens de zomer die in aantocht is heb ik er een klein koellichaam op gezet waardoor de temperatuur op 67 graden uit komt. Dit is voor het testen prima. Tijdens het vliegen is er voldoende circulatie.

Inmiddels ben ik gestart met het ontwerpen van een eigen print. Daar komt in ieder geval iets meer warmte afvoer op ;)
 
Laatst bewerkt door een moderator:
Als ik de variabele uitlees en de stick laat staan fluctueert de waarde maximaal 4us. Midstick betekend dit dus een stabiele waarde van 1500us ~ 1504us.
 
Het is al meerdere malen gezegd prima werk. Ben net een paar weken aan het vliegen met een F450 en ook mijn idee is om een flightcontroller zelf te maken. Ga zo door. Ik blijf het volgen.
Gr, Dirk
 
Back
Top