Jätka põhisisu juurde

Raamatukogu spetsifikatsioon

Funktsioonid

CanSat NeXT-iga saate kasutada kõiki tavalisi Arduino funktsioone, samuti mis tahes Arduino teeke. Arduino funktsioonid leiate siit: https://www.arduino.cc/reference/en/.

CanSat NeXT teek lisab mitmeid lihtsasti kasutatavaid funktsioone erinevate pardal olevate ressursside, nagu sensorid, raadio ja SD-kaart, kasutamiseks. Teek sisaldab komplekti näiteskeeme, mis näitavad, kuidas neid funktsioone kasutada. Allolev loetelu näitab ka kõiki saadaolevaid funktsioone.

Süsteemi initsialiseerimise funktsioonid

CanSatInit

Funktsioonuint8_t CanSatInit(uint8_t macAddress[6])
Tagastustüüpuint8_t
TagastusväärtusTagastab 0, kui initsialiseerimine oli edukas, või mitte-null, kui esines viga.
Parameetrid
uint8_t macAddress[6]
6-baidine MAC-aadress, mida jagavad satelliit ja maajaam. See on valikuline parameeter - kui seda ei esitata, siis raadiot ei initsialiseerita. Kasutatakse näiteskeemis: Kõik
KirjeldusSee käsk asub peaaegu kõigi CanSat NeXT skriptide setup()-is. Seda kasutatakse CanSatNeXT riistvara, sealhulgas sensorite ja SD-kaardi initsialiseerimiseks. Lisaks, kui macAddress on esitatud, alustab see raadio ja hakkab kuulama sissetulevaid sõnumeid. MAC-aadress peaks olema jagatud maajaama ja satelliidi vahel. MAC-aadressi saab vabalt valida, kuid on mõned mitte-kehtivad aadressid, nagu kõik baidid on 0x00, 0x01 ja 0xFF. Kui init-funktsioon kutsutakse mitte-kehtiva aadressiga, teatab see probleemist Serialile.

CanSatInit (lihtsustatud MAC-aadressi spetsifikatsioon)

Funktsioonuint8_t CanSatInit(uint8_t macAddress)
Tagastustüüpuint8_t
TagastusväärtusTagastab 0, kui initsialiseerimine oli edukas, või mitte-null, kui esines viga.
Parameetrid
uint8_t macAddress
MAC-aadressi viimane bait, mida kasutatakse erinevate CanSat-GS paaride eristamiseks.
KirjeldusSee on CanSatInit MAC-aadressiga lihtsustatud versioon, mis seab teised baidid automaatselt teadaolevaks turvaliseks väärtuseks. See võimaldab kasutajatel eristada oma saatja-vastuvõtja paare vaid ühe väärtusega, mis võib olla 0-255.

GroundStationInit

Funktsioonuint8_t GroundStationInit(uint8_t macAddress[6])
Tagastustüüpuint8_t
TagastusväärtusTagastab 0, kui initsialiseerimine õnnestus, või mitte-null väärtuse, kui esines viga.
Parameetrid
uint8_t macAddress[6]
6-baidine MAC-aadress, mida jagavad satelliit ja maajaam.
Kasutatud näitesGroundstation receive
KirjeldusSee on CanSatInit funktsiooni lähedane sugulane, kuid see nõuab alati MAC-aadressi. See funktsioon initsialiseerib ainult raadio, mitte teisi süsteeme. Maajaamaks võib olla ükskõik milline ESP32 plaat, sealhulgas arendusplaat või isegi teine CanSat NeXT plaat.

GroundStationInit (lihtsustatud MAC-aadressi määramine)

Funktsioonuint8_t GroundStationInit(uint8_t macAddress)
Tagastustüüpuint8_t
TagastusväärtusTagastab 0, kui initsialiseerimine õnnestus, või mitte-null väärtuse, kui esines viga.
Parameetrid
uint8_t macAddress
MAC-aadressi viimane bait, mida kasutatakse erinevate CanSat-GS paaride eristamiseks.
KirjeldusSee on GroundStationInit lihtsustatud versioon MAC-aadressiga, mis määrab teised baidid automaatselt teadaolevaks turvaliseks väärtuseks. See võimaldab kasutajatel eristada oma Saatja-Vastuvõtja paare vaid ühe väärtusega, mis võib olla vahemikus 0-255.

IMU Funktsioonid

readAcceleration

Funktsioonuint8_t readAcceleration(float &x, float &y, float &z)
Tagastustüüpuint8_t
TagastusväärtusTagastab 0, kui mõõtmine õnnestus.
Parameetrid
float &x, float &y, float &z
float &x: Ujukomaväärtuse muutuja aadress, kuhu salvestatakse x-telje andmed.
Kasutatud näitesIMU
KirjeldusSeda funktsiooni saab kasutada pardal oleva IMU kiirenduse lugemiseks. Parameetrid on ujukomaväärtuse muutujate aadressid iga telje jaoks. Näide IMU näitab, kuidas seda funktsiooni kasutada kiirenduse lugemiseks. Kiirendus tagastatakse ühikutes G (9.81 m/s²).

readAccelX

Funktsioonfloat readAccelX()
Tagastustüüpfloat
TagastusväärtusTagastab lineaarse kiirenduse X-teljel ühikutes G.
Kasutatud näitesIMU
KirjeldusSeda funktsiooni saab kasutada pardal oleva IMU kiirenduse lugemiseks konkreetsel teljel. Näide IMU näitab, kuidas seda funktsiooni kasutada kiirenduse lugemiseks. Kiirendus tagastatakse ühikutes G (9.81 m/s²).

readAccelY

Funktsioonfloat readAccelY()
Tagastustüüpfloat
TagastusväärtusTagastab lineaarse kiirenduse Y-teljel ühikutes G.
Kasutatud näitesIMU
KirjeldusSeda funktsiooni saab kasutada pardal oleva IMU kiirenduse lugemiseks konkreetsel teljel. Näide IMU näitab, kuidas seda funktsiooni kasutada kiirenduse lugemiseks. Kiirendus tagastatakse ühikutes G (9.81 m/s).

readAccelZ

Funktsioonfloat readAccelZ()
Tagastustüüpfloat
TagastusväärtusTagastab lineaarse kiirenduse Z-teljel ühikutes G.
Kasutatud näitesIMU
KirjeldusSeda funktsiooni saab kasutada pardal oleva IMU kiirenduse lugemiseks konkreetsel teljel. Näide IMU näitab, kuidas seda funktsiooni kasutada kiirenduse lugemiseks. Kiirendus tagastatakse ühikutes G (9.81 m/s).

readGyro

Funktsioonuint8_t readGyro(float &x, float &y, float &z)
Tagastustüüpuint8_t
TagastusväärtusTagastab 0, kui mõõtmine oli edukas.
Parameetrid
float &x, float &y, float &z
float &x: Ujukomaarvuga muutuja aadress, kuhu salvestatakse x-telje andmed.
Kasutatud näitesIMU
KirjeldusSeda funktsiooni saab kasutada pardal oleva IMU nurkkiiruse lugemiseks. Parameetrid on ujukomaarvuga muutujate aadressid iga telje jaoks. Näide IMU näitab, kuidas seda funktsiooni kasutada nurkkiiruse lugemiseks. Nurkkiirus tagastatakse ühikutes mrad/s.

readGyroX

Funktsioonfloat readGyroX()
Tagastustüüpfloat
TagastusväärtusTagastab nurkkiiruse X-teljel ühikutes mrad/s.
Kasutatud näitesIMU
KirjeldusSeda funktsiooni saab kasutada pardal oleva IMU nurkkiiruse lugemiseks konkreetsel teljel. Parameetrid on ujukomaarvuga muutujate aadressid iga telje jaoks. Nurkkiirus tagastatakse ühikutes mrad/s.

readGyroY

Funktsioonfloat readGyroY()
Tagastustüüpfloat
TagastusväärtusTagastab nurkkiiruse Y-teljel ühikutes mrad/s.
Kasutatud näitesIMU
KirjeldusSeda funktsiooni saab kasutada pardal oleva IMU nurkkiiruse lugemiseks konkreetsel teljel. Parameetrid on ujukomaarvuga muutujate aadressid iga telje jaoks. Nurkkiirus tagastatakse ühikutes mrad/s.

readGyroZ

Funktsioonfloat readGyroZ()
Tagastustüüpfloat
TagastusväärtusTagastab nurkkiiruse Z-teljel ühikutes mrad/s.
Kasutatud näitesIMU
KirjeldusSeda funktsiooni saab kasutada, et lugeda pardal oleva IMU nurkkiirust konkreetsel teljel. Parameetrid on iga telje jaoks float-tüüpi muutujate aadressid. Nurkkiirus tagastatakse ühikutes mrad/s.

Baromeetri Funktsioonid

readPressure

Funktsioonfloat readPressure()
Tagastustüüpfloat
TagastusväärtusRõhk mbar
ParameetridPuuduvad
Kasutatud näitesBaro
KirjeldusSee funktsioon tagastab pardal oleva baromeetri poolt mõõdetud rõhu. Rõhk on ühikutes millibar.

readTemperature

Funktsioonfloat readTemperature()
Tagastustüüpfloat
TagastusväärtusTemperatuur Celsiuse kraadides
ParameetridPuuduvad
Kasutatud näitesBaro
KirjeldusSee funktsioon tagastab pardal oleva baromeetri poolt mõõdetud temperatuuri. Mõõtmise ühik on Celsiuse kraadid. Pange tähele, et see on baromeetri poolt mõõdetud sisetemperatuur, seega ei pruugi see kajastada välist temperatuuri.

SD Kaardi / Failisüsteemi Funktsioonid

SDCardPresent

Funktsioonbool SDCardPresent()
Tagastustüüpbool
TagastusväärtusTagastab true, kui SD-kaart on tuvastatud, false, kui mitte.
ParameetridPuuduvad
Kasutatud näitesSD_advanced
KirjeldusSeda funktsiooni saab kasutada, et kontrollida, kas SD-kaart on mehaaniliselt kohal. SD-kaardi pistikul on mehaaniline lüliti, mis loetakse, kui seda funktsiooni kutsutakse. Tagastab true või false sõltuvalt sellest, kas SD-kaart on tuvastatud.

appendFile

Funktsioonuint8_t appendFile(String filename, T data)
Tagastustüüpuint8_t
TagastusväärtusTagastab 0, kui kirjutamine õnnestus.
Parameetrid
String filename: Faili aadress, kuhu lisatakse. Kui faili ei eksisteeri, luuakse see.
T data: Andmed, mis lisatakse faili lõppu.
Kasutatud näitesSD_write
KirjeldusSee on põhiline kirjutamisfunktsioon, mida kasutatakse mõõtmistulemuste salvestamiseks SD-kaardile.

printFileSystem

Funktsioonvoid printFileSystem()
Tagastustüüpvoid
ParameetridPuuduvad
Kasutatud näitesSD_advanced
KirjeldusSee on väike abifunktsioon, mis prindib SD-kaardil olevate failide ja kaustade nimed. Saab kasutada arendamisel.

newDir

Funktsioonvoid newDir(String path)
Tagastustüüpvoid
Parameetrid
String path: Uue kausta tee. Kui see juba eksisteerib, ei tehta midagi.
Kasutatud näitesSD_advanced
KirjeldusKasutatakse uute kaustade loomiseks SD-kaardil.

deleteDir

Funktsioonvoid deleteDir(String path)
Tagastustüüpvoid
Parameetrid
String path: Kustutatava kausta tee.
Kasutatud näitesSD_advanced
KirjeldusKasutatakse kaustade kustutamiseks SD-kaardil.

fileExists

Funktsioonbool fileExists(String path)
Tagastustüüpbool
TagastusväärtusTagastab true, kui fail eksisteerib.
Parameetrid
String path: Faili tee.
Kasutatud näitesSD_advanced
KirjeldusSeda funktsiooni saab kasutada, et kontrollida, kas fail eksisteerib SD-kaardil.

fileSize

Funktsioonuint32_t fileSize(String path)
Tagastustüüpuint32_t
TagastusväärtusFaili suurus baitides.
Parameetrid
String path: Faili tee.
Kasutatud näitesSD_advanced
KirjeldusSeda funktsiooni saab kasutada faili suuruse lugemiseks SD-kaardilt.

writeFile

Funktsioonuint8_t writeFile(String filename, T data)
Tagastustüüpuint8_t
TagastusväärtusTagastab 0, kui kirjutamine õnnestus.
Parameetrid
String filename: Kirjutatava faili aadress.
T data: Andmed, mida faili kirjutada.
Kasutatud näitesSD_advanced
KirjeldusSee funktsioon on sarnane appendFile()-iga, kuid see kirjutab olemasolevad andmed SD-kaardil üle. Andmete salvestamiseks tuleks kasutada appendFile. See funktsioon võib olla kasulik näiteks seadete salvestamiseks.

readFile

FunktsioonString readFile(String path)
TagastustüüpString
TagastusväärtusKogu faili sisu.
Parameetrid
String path: Faili tee.
Kasutatud näitesSD_advanced
KirjeldusSeda funktsiooni saab kasutada kogu faili andmete lugemiseks muutujasse. Suurte failide lugemine võib põhjustada probleeme, kuid väikeste failide, nagu konfiguratsiooni- või seadistusfailide puhul, on see sobiv.

renameFile

Funktsioonvoid renameFile(String oldpath, String newpath)
Tagastustüüpvoid
Parameetrid
String oldpath: Faili algne tee.
String newpath: Faili uus tee.
Kasutatud näitesSD_advanced
KirjeldusSeda funktsiooni saab kasutada failide ümbernimetamiseks või teisaldamiseks SD-kaardil.

deleteFile

Funktsioonvoid deleteFile(String path)
Tagastustüüpvoid
Parameetrid
String path: Kustutatava faili tee.
Kasutatud näitesSD_advanced
KirjeldusSeda funktsiooni saab kasutada failide kustutamiseks SD-kaardilt.

Raadio Funktsioonid

onDataReceived

Funktsioonvoid onDataReceived(String data)
Tagastustüüpvoid
Parameetrid
String data: Vastuvõetud andmed Arduino String kujul.
Kasutatud näitesGroundstation_receive
KirjeldusSee on tagasikutse funktsioon, mida kutsutakse, kui andmed on vastu võetud. Kasutaja kood peaks selle funktsiooni määratlema ja CanSat NeXT kutsub selle automaatselt, kui andmed on vastu võetud.

onBinaryDataReceived

Funktsioonvoid onBinaryDataReceived(const uint8_t *data, uint16_t len)
Tagastustüüpvoid
Parameetrid
const uint8_t *data: Vastuvõetud andmed uint8_t massiivina.
uint16_t len: Vastuvõetud andmete pikkus baitides.
Kasutatud näitesPuudub
KirjeldusSee on sarnane onDataReceived funktsiooniga, kuid andmed esitatakse binaarsena, mitte String objektina. See on mõeldud edasijõudnud kasutajatele, kes leiavad, et String objekt on piirav.

onDataSent

Funktsioonvoid onDataSent(const bool success)
Tagastustüüpvoid
Parameetrid
const bool success: Boolean, mis näitab, kas andmed saadeti edukalt.
Kasutatud näitesPuudub
KirjeldusSee on veel üks tagasikutse funktsioon, mida saab vajadusel kasutaja koodi lisada. Seda saab kasutada, et kontrollida, kas vastuvõtt oli teise raadio poolt kinnitatud.

getRSSI

Funktsioonint8_t getRSSI()
Tagastustüüpint8_t
TagastusväärtusViimase vastuvõetud sõnumi RSSI. Tagastab 1, kui alates käivitamisest pole sõnumeid vastu võetud.
Kasutatud näitesPuudub
KirjeldusSeda funktsiooni saab kasutada vastuvõtu signaali tugevuse jälgimiseks. Seda saab kasutada antennide testimiseks või raadio ulatuse hindamiseks. Väärtus on väljendatud dBm, kuid skaala ei ole täpne.

sendData (String variant)

Funktsioonuint8_t sendData(T data)
Tagastustüüpuint8_t
Tagastusväärtus0, kui andmed saadeti (ei tähenda kinnitusvastust).
Parameetrid
T data: Saadetavad andmed. Võib kasutada mis tahes andmetüüpi, kuid need teisendatakse sisemiselt stringiks.
Kasutatud näidisketsisSend_data
KirjeldusSee on peamine funktsioon andmete saatmiseks maajaama ja satelliidi vahel. Pange tähele, et tagastusväärtus ei näita, kas andmed tegelikult kätte saadi, vaid ainult seda, et need saadeti. Tagasiside onDataSent abil saab kontrollida, kas andmed jõudsid teise otsa.

sendData (binaarne variant)

Funktsioonuint8_t sendData(T* data, uint16_t len)
Tagastustüüpuint8_t
Tagastusväärtus0, kui andmed saadeti (ei tähenda kinnitusvastust).
Parameetrid
T* data: Saadetavad andmed.
uint16_t len: Andmete pikkus baitides.
Kasutatud näidisketsisPuudub
KirjeldussendData funktsiooni binaarne variant, mis on mõeldud edasijõudnud kasutajatele, kes tunnevad end String objekti poolt piiratud.

getRSSI

Funktsioonint8_t getRSSI()
Tagastustüüpint8_t
TagastusväärtusViimase vastuvõetud sõnumi RSSI. Tagastab 1, kui alates käivitamisest pole sõnumeid vastu võetud.
Kasutatud näidisketsisPuudub
KirjeldusSeda funktsiooni saab kasutada vastuvõtu signaali tugevuse jälgimiseks. Seda saab kasutada antennide testimiseks või raadio ulatuse hindamiseks. Väärtus on väljendatud dBm, kuid skaala ei ole täpne.

setRadioChannel

Funktsioonvoid setRadioChannel(uint8_t newChannel)
Tagastustüüpvoid
TagastusväärtusPuudub
Parameetriduint8_t newChannel: Soovitud Wi-Fi kanali number (1–11). Kõik väärtused üle 11 piiratakse 11-ga.
Kasutatud näidisketsisPuudub
KirjeldusSeadistab ESP-NOW suhtluskanali. Uus kanal peab olema standardsete Wi-Fi kanalite vahemikus (1–11), mis vastavad sagedustele alates 2.412 GHz sammudega 5 MHz. Kanal 1 on 2.412, Kanal 2 on 2.417 ja nii edasi. Kutsuge see funktsioon enne teegi initsialiseerimist. Vaikimisi kanal on 1.

getRadioChannel

Funktsioonuint8_t getRadioChannel()
Tagastustüüpuint8_t
TagastusväärtusPraegu kasutusel olev Wi-Fi põhikanal. Tagastab 0, kui kanali hankimisel tekib viga.
Kasutatud näitesPuudub
KirjeldusHangib praegu kasutusel oleva Wi-Fi põhikanali. See funktsioon töötab ainult pärast teegi initsialiseerimist.

printRadioFrequency

Funktsioonvoid printRadioFrequency()
Tagastustüüpvoid
TagastusväärtusPuudub
Kasutatud näitesPuudub
KirjeldusArvutab ja prindib praeguse sageduse GHz-des, lähtudes aktiivsest Wi-Fi kanalist. See funktsioon töötab ainult pärast teegi initsialiseerimist.

ADC Funktsioonid

adcToVoltage

Funktsioonfloat adcToVoltage(int value)
Tagastustüüpfloat
TagastusväärtusKonverteeritud pinge voltides.
Parameetrid
int value: ADC lugemine, mis tuleb konverteerida pingeks.
Kasutatud näitesAccurateAnalogRead
KirjeldusSee funktsioon konverteerib ADC lugemise pingeks, kasutades kalibreeritud kolmanda järgu polünoomi lineaarsema teisenduse jaoks. Pange tähele, et see funktsioon arvutab pinge sisendpinnil, seega aku pinge arvutamiseks peate arvestama ka takistivõrguga.

analogReadVoltage

Funktsioonfloat analogReadVoltage(int pin)
Tagastustüüpfloat
TagastusväärtusADC pinge voltides.
Parameetrid
int pin: Pin, mida lugeda.
Kasutatud näitesAccurateAnalogRead
KirjeldusSee funktsioon loeb pinge otse, selle asemel et kasutada analogRead, ja konverteerib lugemise pingeks sisemiselt, kasutades adcToVoltage.