INHOUDSOPGAWE:

CanSat - Beginnersgids: 6 stappe
CanSat - Beginnersgids: 6 stappe

Video: CanSat - Beginnersgids: 6 stappe

Video: CanSat - Beginnersgids: 6 stappe
Video: Мухоморный 🍄Трип Фиксирую на камеру. Очутился между двух миров🌍 Реальным и Мухоморным🙏 2024, Julie
Anonim
CanSat - Beginnersgids
CanSat - Beginnersgids
CanSat - Beginnersgids
CanSat - Beginnersgids
CanSat - Beginnersgids
CanSat - Beginnersgids

Die hoofdoel van hierdie instruksies is om stap vir stap die ontwikkelingsproses van 'n CanSat te deel. Maar voordat ons begin, maak ons duidelik wat 'n CanSat is, en wat is die belangrikste funksies daarvan. Hierdie projek het begin as 'n uitbreidingsprojek in ons universiteit, Universidade Tecnológica Federal do Paraná (UTFPR), kampus Cornélio Procópio. Onder leiding van ons adviseur het ons 'n plan van aksie ontwikkel met die doel om by CanSats aan te gaan, wat beteken het om al sy aspekte en eienskappe te bestudeer, om te kan verstaan hoe dit werk, wat uiteindelik tot die bou van 'n CanSat, en die ontwikkeling van hierdie gids. 'N CanSat word geklassifiseer as 'n picosatelliet, wat beteken dat die gewig daarvan beperk is tot 1 kg, maar gewoonlik weeg die CanSats ongeveer 350 g, en die struktuur daarvan is gebaseer in 'n blikkie koeldrank, 'n silinder met 'n deursnee van 6 cm, 11,5 cm lank. Hierdie model is aangebied met die bedoeling om die ontwikkelingsproses van 'n satelliet te vereenvoudig, sodat universiteite toegang tot hierdie tegnologieë kan verkry, wat gewildheid kan behaal as gevolg van die kompetisies wat hierdie patroon aangeneem het. In die algemeen is CanSats gebaseer op 4 strukture, dit wil sê die kragsisteem, die sensingstelsel, die telemetriestelsel en die hoofstelsel. Laat ons dus elke stelsel van nader bekyk: - Kragstelsel: hierdie stelsel is verantwoordelik vir die toevoer van elektriese energie aan die ander, volgens sy behoeftes. Met ander woorde, dit is veronderstel om die stelsels die nodige spanning en stroom te voorsien, met inagneming van die perke daarvan. Dit kan ook beskermingskomponente bevat om die veiligheid en die regte gedrag van die ander stelsels te waarborg. Gewoonlik is dit gebaseer op 'n battery en 'n spanningsreguleerkring, maar baie ander funksies kan bygevoeg word, soos kragbeheertegnieke en verskillende soorte beskerming. - Sensestelsel: hierdie stelsel bestaan uit alle sensors en toestelle wat verantwoordelik is vir die versameling van die vereiste data. dit kan op verskillende maniere aan die hoofstelsel gekoppel word, seriële protokolle, parallelle protokolle, en daarom is dit baie belangrik om al hierdie tegnieke te bemeester om die geskikste te bepaal. Oor die algemeen is die seriële protokol diegene wat gereeld gekies word, vanweë hul kleiner aantal verbindings en veelsydigheid, die SPI-, I2C- en UART -protokolle. - Telemetriestelsel: hierdie stelsel is verantwoordelik om die draadlose kommunikasie tussen die CanSat en die grondbeheerstasie tot stand te bring, wat die draadlose kommunikasieprotokol en hardeware insluit. - Hoofstelsel: hierdie stelsel is verantwoordelik vir die onderlinge verbinding van al die ander stelsels, op 'n manier dat dit ook die volgorde van werking as 'n organisme beheer en sinchroniseer.

Stap 1: Die hoofstelsel

Die Hoofstelsel
Die Hoofstelsel

Om baie redes het ons 'n ARM® Cortex®-M4F-gebaseerde mikrobeheerder gekies, dit is 'n MCU met 'n lae krag, wat 'n baie hoër verwerkingskrag bied, plus verskeie funksies wat nie gereeld in RISK-mikrobeheerders voorkom nie, soos DSP-funksies. Hierdie eienskappe is interessant omdat dit die kompleksiteit van die funksies van die CanSat -toepassings moontlik maak, sonder om die mikrobeheerder te verander (natuurlik ook met inagneming van die limiete daarvan).

Solank die projek verskeie finansiële beperkings gehad het, moes die gekose mikrobeheerder ook bekostigbaar wees; daarom het ons volgens die spesifikasies die ARM® Cortex®-M4F-gebaseerde MCU TM4C123G LaunchPad gekies, dit is 'n lanseerplank wat pas by ons projek pas. Ook die dokumentasie (gegewensblaaie en kenmerkende dokumentasie deur die vervaardiger) en die IDE van die MCU was voordele wat in ag geneem moet word, solank dit die ontwikkelingsproses baie gehelp het.

In hierdie Cansat het ons besluit om dit eenvoudig te hou en dit net te ontwikkel met behulp van die lanseerplatform, maar natuurlik is dit in die toekoms nie 'n opsie nie, aangesien verskeie funksies wat in die lanseerplatform ingesluit is, eintlik nie nodig is vir ons projek nie, plus die formaat daarvan het die projek van die struktuur van ons CanSat baie beperk, solank die afmetings van 'n CanSat minimaal is.

Dus, nadat ons die regte 'brein' vir hierdie stelsel gekies het, was die volgende stap die ontwikkeling van sy sagteware, en om dit eenvoudig te hou, het ons besluit om eenvoudig 'n opeenvolgende program te gebruik wat die volgende volgorde op 'n frekwensie van 1Hz doen:

Sensorslesings> data -berging> data -oordrag

Die sensorgedeelte word later in die waarnemingsisteem verduidelik, sowel as die data -oordrag in die telemetrie -stelsel. Uiteindelik was dit om te leer hoe om die mikrobeheerder te programmeer; in ons geval moes ons die volgende funksies van die MCU, die GPIO's, die I2C -module, die UART -module en die SPI -module leer.

Die GPIO's, of bloot algemene in- en uitsette, is poorte wat gebruik kan word om verskeie funksies uit te voer, solank dit behoorlik ingestel is. Aangesien ons geen C -biblioteke vir die GPIO's gebruik nie, selfs nie vir die ander modules nie, moes ons al die nodige registers instel. Om hierdie redes het ons 'n basiese gids geskryf met voorbeelde en beskrywings wat verband hou met die registers van die modules wat ons gebruik, wat hieronder beskikbaar is.

Om die kode te vereenvoudig en te organiseer, is daar ook verskeie biblioteke geskep. Dus, biblioteke is geskep vir die volgende doeleindes:

- SPI protokol

- I2C protokol

- UART -protokol

- NRF24L01+ - transceptor

Hierdie biblioteke is ook hieronder beskikbaar, maar onthou dat ons die Keil uvision 5 IDE gebruik het, sodat hierdie biblioteke nie vir kodekomponiste werk nie. Uiteindelik, nadat u al die biblioteke geskep het en al die nodige dinge geleer het, is die finale kode saamgestel, en soos u u kan voorstel, is dit ook hieronder beskikbaar.

Stap 2: Die Sensing System

Die Sensing System
Die Sensing System
Die Sensing System
Die Sensing System
Die Sensing System
Die Sensing System
Die Sensing System
Die Sensing System

Hierdie stelsel bestaan uit alle sensors en toestelle wat verantwoordelik is vir die versameling van inligting oor die werkingstoestande van die CanSat. In ons geval het ons die volgende sensors gekies:

- 'n 3 -as digitale versnellingsmeter - MPU6050

- 'n 3 -as digitale gyroscoop - MPU6050

- 'n 3 -as digitale magnetometer - HMC5883L

- 'n digitale barometer - BMP280

- en 'n GPS - Tyco A1035D

Die keuses was hoofsaaklik gebaseer op die toeganklikheid, wat beteken dat solank die meganiese en elektriese (kommunikasieprotokol, kragtoevoer, ens) met ons projek versoenbaar is, is daar geen verdere parameters aan die keuses gestel nie, ook omdat vir sommige sensors die beskikbaarheid van opsies was beperk. Nadat die sensors aangeskaf is, was dit tyd om dit aan die werk te sit.

Die eerste een wat ondersoek is, was die drie -as digitale versnellingsmeter en gyroscoop, genaamd MPU6050 (dit kan oral gevind word, solank dit gereeld in ARDUINO -projekte gebruik word), die kommunikasie daarvan is gebaseer op die I2C -protokol, 'n protokol waarin elke slaaf besit 'n adres, waardeur verskeie toestelle parallel gekoppel kan word, aangesien die adres 7-bisse lank is, kan ongeveer 127 toestelle aan dieselfde seriële bus gekoppel word. Hierdie kommunikasieprotokol werk op twee busse, 'n databus en 'n klokbus, dus om die inligting uit te ruil, moet die meester 8 siklusse stuur (terloops, die inligting moet in 'n greep pas, solank hierdie kommunikasie gebaseer is op die bytegrootte) óf in 'n ontvang- óf in 'n oordragoperasie. Die adres van die MPU6050 is 0b110100X, en die X word gebruik om 'n lesing of 'n skryfbewerking aan te dui (0 dui 'n skryfbewerking aan en 1 dui 'n leesoperasie aan), dus as u die sensor wil lees, gebruik dan sy adres as 0xD1 en gebruik die adres as 0xD0 wanneer u wil skryf.

Nadat die I2C -protokol ondersoek is, is die MPU6050 in werklikheid bestudeer, met ander woorde sy datablad is gelees om die nodige inligting te kry om dit aan die gang te kry; vir hierdie sensor was slegs drie registers nodig, die kragbeheer 1 register - adres 0x6B (om te verseker dat die sensor nie in die slaapmodus is nie), die gyroscoop -konfigurasieregister - adres 0x1B (om die volledige skaalbereik vir die gyroscoop te konfigureer) en laastens die versnellingsmeter -konfigurasieregister - adres 0x1C (in om die volle omvang van die versnellingsmeter op te stel). Daar is verskeie ander registers wat gekonfigureer kan word, wat die sensorprestasie kan optimaliseer, maar vir hierdie projek is hierdie konfigurasies genoeg.

Nadat u die sensor korrek gekonfigureer het, kan u dit dus lees. Die verlangde inligting vind plaas tussen die register 0x3B en die register 0x48, elke aswaarde bestaan uit twee grepe wat gekodeer word op die 2 se komplement manier, wat beteken dat die geleesde data omgeskakel moet word om betekenisvol te wees (hierdie dinge sal wees later bespreek).

Nadat u klaar was met die MPU6050, was dit tyd om die digitale magnetometer met drie as te bestudeer, genaamd HMC5883L (dit kan ook oral gevind word, solank dit gereeld in ARDUINO -projekte gebruik word), en die kommunikasieprotokol is weer die seriële protokol I2C. Die adres is 0b0011110X en die X word gebruik om 'n lesing of 'n skryfbewerking aan te dui (0 dui 'n skryfbewerking aan en 1 dui 'n leesbewerking aan), dus as u die sensor wil lees, gebruik dan sy adres as 0x3D en wanneer jy wil skryf, gebruik die adres as 0x3C.

In hierdie geval moes drie registers gekonfigureer word om die HMC5883L te begin, die konfigurasieregister A - adres 0x00 (om die data -uitsetsnelheid en die metingsmodus op te stel), die konfigurasieregister B - adres 0x01 (om die versterking van die sensor te konfigureer) en laastens die modusregister - adres 0x02 (om die werkingsmodus van die toestel op te stel).

Na die korrekte opstelling van die HMC5883L is dit dus nou moontlik om dit te lees. Die verlangde inligting vind plaas tussen die register 0x03 en die register 0x08, elke aswaarde bestaan uit twee grepe wat gekodeer is op die 2 se komplement manier, wat beteken dat die gelees data omgeskakel moet word om betekenisvol te wees (hierdie dinge sal wees later bespreek). Veral vir hierdie sensor is dit veronderstel om al die inligting gelyktydig te lees, anders werk dit moontlik nie soos voorgestel nie, solank die uitsetdata slegs aan hierdie registers geskryf word wanneer alle registers geskryf is. lees dus almal.

Uiteindelik is die digitale barometer, nog 'n I2C -protokolsensor, bestudeer, ook BMP280 genoem (dit kan ook oral gevind word, solank dit gereeld in ARDUINO -projekte gebruik word). Die adres is b01110110X, die X word ook gebruik om 'n lesing of 'n skryfbewerking aan te dui (0 dui 'n skryfbewerking aan en 1 dui 'n leesoperasie aan), dus as u die sensor wil lees, gebruik dan sy adres as 0XEA en wanneer jy wil skryf, gebruik die adres as 0XEB. Maar in die geval van hierdie sensor kan die I2C -adres verander word deur die spanningsvlak op die SDO -pen te verander, dus as u GND op hierdie pen toepas, sal die adres b01110110X wees en as u VCC op hierdie pen toepas, gaan die adres om b01110111X te wees, moet u ook 'n VCC -vlak op die CSB -pen van die sensor toepas om die I2C -module in hierdie sensor moontlik te maak, anders werk dit nie behoorlik nie.

Vir die BMP280 moes slegs twee registers gekonfigureer word om dit te laat werk, die ctrl_meas -register - adres 0XF4 (om die data -verkrygingsopsies in te stel) en die config -register - adres 0XF5 (om die koers in te stel, die filter en die koppelvlakopsies vir die sensor).

Nadat u klaar is met die konfigurasie, is dit tyd vir wat regtig saak maak, die data self, in hierdie geval vind die verlangde inligting tussen die registers 0XF7 en 0XFC plaas. Beide die temperatuur en die drukwaarde bestaan uit drie grepe wat gekodeer is op die 2 se komplimentêre manier, wat beteken dat die geleesde data omgeskakel moet word om betekenisvol te wees (hierdie dinge sal later bespreek word). Om 'n hoër presisie te verkry, is daar ook verskeie korreksiekoëffisiënte wat gebruik kan word tydens die omskakeling van die data, dit is tussen die registers 0X88 en 0XA1 geleë, ja, daar is 26 grepe korreksiekoëffisiënte. nie so belangrik nie, vergeet hulle net, anders is daar geen ander manier nie.

En laastens die GPS - Tyco A1035D, hierdie een maak staat op die UART -seriële protokol, spesifiek teen 'n snelheid van 4800 kbps, geen pariteitsbitte, 8 databits en 1 stopbit nie. is 'n seriële protokol waarin die sinchronisasie van die inligting via sagteware gedoen word, en daarom is dit 'n asinchrone protokol, ook as gevolg van hierdie kenmerk, die snelheid waarin die inligting oorgedra en ontvang word, baie kleiner is. Spesifiek vir hierdie protokol moet die pakkette begin met 'n beginbit, maar die stopbit is opsioneel en die grootte van die pakkette is 8 bisse lank.

In die geval van die GPS - Tyco A1035D was twee konfigurasies nodig, naamlik die setDGPSport (opdrag 102) en die Query/RateControl (opdrag 103), al hierdie inligting, plus meer opsies, is beskikbaar in die NMEA naslaanhandleiding, die protokol gebruik in die meeste GPS -modules. Die opdrag 102 word gebruik om die baud -tempo, die hoeveelheid databits en die bestaan al dan nie van pariteitsbits en stopbits in te stel. Die opdrag 103 word gebruik om die uitvoer van standaard NMEA -boodskappe GGA, GLL, GSA, GSV, RMC en VTG te beheer; dit word beskryf met besonderhede in die naslaanhandleiding, maar in ons geval was die gekose GGA wat staan vir Global Posisioneringstelsel vaste data.

Sodra die GPS - TycoA1035D behoorlik gekonfigureer is, is dit slegs nodig om die seriële poort te lees en die string te filter wat volgens die gekose parameters ontvang is, sodat die inligting verwerk kan word.

Nadat u al die nodige inligting oor al die sensors geleer het, het dit net ekstra moeite gekos om alles in dieselfde program saam te voeg, ook met behulp van die seriële kommunikasiebiblioteke.

Stap 3: Die telemetrie stelsel

Die telemetrie stelsel
Die telemetrie stelsel

Hierdie stelsel is verantwoordelik vir die totstandkoming van die kommunikasie tussen die grondbeheer en die CanSat, behalwe die projekparameters, is dit ook op 'n paar ander maniere beperk, solank die RF -uitsending slegs toegelaat word in sommige frekwensiebande wat nie besig is nie a.g.v. ander RF -dienste, soos mobiele dienste. Hierdie beperkings is anders en kan van land tot land verander, daarom is dit belangrik om altyd die toegelate frekwensiebande na te gaan vir algemeen gebruik.

Daar is baie radio -opsies op die mark teen bekostigbare pryse; al hierdie stelsels bied verskillende maniere van modulasie op verskillende frekwensies; vir hierdie stelsel het ons keuse bestaan uit 'n 2.4GHz RF -ontvanger, die NRF24L01+, vanweë die feit dat dit reeds 'n goed gevestigde kommunikasieprotokol, solank verifikasiestelsels soos outomatiese erkenning en outomatiese herstuurstelsels. Boonop kan die transmissiesnelheid tot 2 Mbps bereik teen 'n redelike kragverbruik.

Dus, voordat ons aan hierdie transceiver werk, leer ons 'n bietjie meer oor die NRF24L01+. Soos voorheen genoem, is dit 'n 2,4 GHz -radio wat as ontvanger of sender gekonfigureer kan word. Om die kommunikasie te bewerkstellig, kry elke transceiver 'n adres wat deur die gebruiker gekonfigureer kan word, en die adres kan 24 tot 40 bits lank wees volgens u behoeftes. Die datatransaksies kan op 'n enkele of op 'n deurlopende manier plaasvind, die datagrootte is beperk tot 1 greep en elke transaksie kan al dan nie 'n erkenningsvoorwaarde genereer volgens die konfigurasies van die transceiver.

Ander verskillende konfigurasies is ook moontlik, soos die versterking na die uitset van die RF-sein, die bestaan al dan nie van 'n outomatiese heruitsendingsroetine (indien wel die vertraging, kan die hoeveelheid proewe onder ander kenmerke gekies word) en verskeie ander funksies wat nie noodwendig nuttig is vir hierdie projek nie, maar dit is in elk geval beskikbaar in die datablad van die komponent, indien u belangstelling daaroor het.

Die NRF24L01+ 'spreek' die SPI -taal as dit kom by seriële kommunikasie, dus as u hierdie transceiver wil lees of skryf, moet u die SPI -protokol daarvoor gebruik. Die SPI is 'n seriële protokol soos voorheen genoem, waarin die slawe gekies word via 'n CHIPSELECT (CS) pen, wat saam met die volledige dupleks (beide die meester en die slaaf op 'n parallelle manier kan stuur en ontvang) kenmerk van hierdie protokol laat veel hoër datatransaksiesnelhede toe.

Die datablad van die NRF24L01+ bevat 'n stel opdragte om hierdie komponent te lees of te skryf. voer dit uit. Daarom sal dit interessant wees om na die datablad te kyk, waarin 'n lys is wat al die moontlike aksies oor die ontvanger bevat en verduidelik (ons gaan dit nie hier lys nie, want dit is nie die belangrikste punt van hierdie instruksies nie)).

Benewens die transceiver, is 'n ander belangrike komponent van hierdie stelsel die protokol waardeur alle gewenste data gestuur en ontvang word, solank die stelsel gelyktydig met verskeie grepe inligting moet werk, is dit belangrik om die betekenis van elke greep te ken, dit is waarvoor die protokol werk, dit laat die stelsel toe om op 'n georganiseerde wyse alle data wat ontvang en versend is, te identifiseer.

Om dinge eenvoudig te hou, bestaan die gebruikte protokol (vir die sender) uit 'n koptekst wat bestaan uit 3 grepe gevolg deur die sensor se data, solank al die sensorsdata uit twee grepe bestaan, kry elke sensordata 'n identifikasienommer wat begin van 0x01 en volg in 'n halfmaanvolgorde, sodat elke twee grepe 'n identifikasiebyte het, sodat die kopreeks nie toevallig volgens die sensor se metings herhaal kon word nie. Die ontvanger was uiteindelik net so eenvoudig soos die sender, die protokol was net nodig om die kop wat deur die sender gestuur is, te herken en nadat ons net die ontvangen grepe gestoor het, het ons in hierdie geval besluit om 'n vektor te gebruik om dit te stoor.

Nadat u al die nodige kennis oor die transceiver opgedoen het en die kommunikasieprotokol bepaal het, is dit tyd om alles in dieselfde stuk kode saam te voeg en uiteindelik die CanSat -firmware te laat doen.

Stap 4: Die kragstelsel

Hierdie stelsel word verantwoordelik gehou om die ander stelsels die nodige energie te gee om behoorlik te werk; in hierdie geval het ons besluit om eenvoudig 'n battery en 'n spanningsreguleerder te gebruik. Dus, vir die grootte van die battery, is 'n paar bedieningsparameters van die CanSat ontleed; hierdie parameters sal die definisie van die model en die krag wat nodig is om die hele stelsel te voed, help.

Aangesien die CanSat 'n paar uur ingeskakel moet wees, was die mees geskikte om te oorweeg die mees ekstreme situasies van kragverbruik, waarin elke module en stelsel wat aan die CanSat gekoppel is, die hoogste moontlike stroom sou verbruik. Dit is egter ook belangrik om op hierdie stadium redelik te wees om nie die battery te groot te maak nie, wat ook nie interessant is nie weens die gewigsbeperkings van die CanSat.

Nadat al die gegewensblaaie van die komponente van alle stelsels geraadpleeg is, was die totale stroom wat deur die stelsel verbruik word ongeveer 160mAh, met inagneming van 'n outonomie van 10 uur, was 'n 1600mAh -battery genoeg om die stelsel die regte werksomstandighede te verseker.

Nadat u die nodige lading van die battery leer ken het, is daar verdere aspekte wat u moet oorweeg ten spyte van die outonomie, soos die grootte, die gewig, die werkingstemperatuur (solank die CanSat in 'n vuurpyl gehou word), die spanning en krag om waartoe dieselfde onder meer ingedien word.

Stap 5: Die struktuur

Die struktuur is baie belangrik vir die veiligheid van die CanSat, alhoewel dit 'n bietjie verwaarloos is in hierdie projek (eintlik was daar nie veel belangstelling in die ontwikkeling van die meganiese deel van die CanSat nie, omdat alle lede kursusse het was verwant aan elektronika). Solank die projek gebaseer was op 'n bestaande patroon, was die CanSat -patroon, nie veel nagedink oor hoe dit sou lyk nie, dus moet dit in 'n silinderformaat gevorm word, met 'n deursnee van ongeveer 6, 1 cm en ongeveer 11 cm, 65 cm lank (dieselfde mate van 'n blikkie koeldrank).

Nadat ek klaar was met die buitestruktuur, was die aandag gevestig op die aanhegtingstelsel, wat verantwoordelik was vir die behoud van al die borde in die silindriese struktuur, wat ook die absorpsie van die versnellings waaraan die CanSat sou onderwerp word, moontlik maak, na 'n paar besprekings daaroor, is besluit om albei strukture vas te maak deur hoë digtheid skuim aan die gewenste vorms te vorm.

Die buitekant van die struktuur is gemaak met behulp van PVC -pype met die gewenste deursnee, om 'n sluiting van die struktuur te maak

Stap 6: Gevolgtrekkings en toekomstige gedagtes

Die CanSat moet nog in aksie getoets word, ons doen eintlik aansoek om 'n vuurpylkompetisie (wat in Desember gaan plaasvind), ook nadat ons deur die hele gebou gegaan het (nogal wat, ons moet nog 'n paar dinge voltooi) en ontwikkeling proses, 'n paar perspektiewe en aantekeninge wat ons gedink het interessant sou wees om met u almal te deel, veral oor stryd, wenke en selfs goeie ervarings, so dit gaan:

- Die begin van die projek was die vrugbaarste ontwikkelingsperiode van die hele projek, maar ongelukkig het die groep teen die sperdatum nogal nie belangstelling in die projek gehad nie, miskien weens 'n gebrek aan onmiddellike resultate, of miskien net 'n gebrek aan kommunikasie. verskeie goeie dinge het uit die projek gekom

- Dit het baie moeite gekos om die ontvanger aan die werk te kry, aangesien al die biblioteke van nuuts af ontwikkel is, ook omdat dit twee verskillende programme en opsette verg om hierdie soort dinge te toets

- In ons geval was dit nie die beste idee om op mikrobeheerders te werk nie, gebaseer op registerkonfigurasies; nie alle lede kon tred hou met die res van die groep nie, wat lei tot probleme soos taakverdeling. Daar is tonne ordentlike C -biblioteke vir die mikrobeheerder wat ons gebruik het, so dit sou 'n baie beter idee gewees het om die hulpbronne te gebruik; daar is ook 'n IDE genaamd Code Composer, wat ook baie hulpbronne bied vir die mikrobeheerders

- Die CanSat benodig nog baie verbeterings; hierdie ervaring was gebaseer op basiese tegnieke en vaardighede, en verskeie aspekte is ook nie in ag geneem nie, sodat in die toekoms hopelik 'n uitstekende weergawe van hierdie CanSat met meer moeite en harde werk 'n werklikheid kan word.

Aanbeveel: