Përmbajtje:

Detektor Hummingbird/Bëj fotografi: 12 hapa (me fotografi)
Detektor Hummingbird/Bëj fotografi: 12 hapa (me fotografi)

Video: Detektor Hummingbird/Bëj fotografi: 12 hapa (me fotografi)

Video: Detektor Hummingbird/Bëj fotografi: 12 hapa (me fotografi)
Video: Сравнение Redmi Note 8 и Meizu Note 9 2024, Korrik
Anonim
Detektor/Marrës i Fotografive të Hummingbird
Detektor/Marrës i Fotografive të Hummingbird

Ne kemi një ushqyes të kolibrave në kuvertën tonë të pasme dhe për dy vitet e fundit unë kam qenë duke bërë fotografi të tyre. Hummingbirds janë krijesa të vogla të mahnitshme, shumë territoriale dhe luftimet e tyre mund të jenë qesharake dhe të mahnitshme. Por po lodhesha duke qëndruar si një statujë në pjesën e prapme të shtëpisë sime në mënyrë që t'i bëja fotografitë e tyre. Më duhej një mënyrë për të kapur fotografi pa qenë e nevojshme të qëndroja pas shtëpisë për periudha të gjata kohore duke pritur. Unë e di që mund të kisha përdorur një qepen me telekomandë, por doja që fotografitë të bëheshin automatikisht pa pasur nevojë të isha atje. Kështu vendosa të bëj një pajisje për të zbuluar kolibrat dhe për të bërë një fotografi automatikisht.

Unë gjithmonë kam pasur ndërmend të përdor një mikrokontrollues për ta bërë këtë. Mikrokontrolluesi do të jetë në gjendje të drejtojë qepenin e kamerës nën kontrollin e softuerit. Por sensori për të zbuluar një kolibër të vogël ishte një gjë tjetër. Mund të kisha përdorur një sensor lëvizjeje, por doja të provoja diçka unike. Vendosa të përdor zërin si shkas.

Hapi 1: Zgjedhja e një mikrokontrolluesi

Zgjedhja e një mikrokontrolluesi
Zgjedhja e një mikrokontrolluesi

Mikrokontrolluesi që zgjodha ishte një PJRC Teensy. Teensy përdor një mikrokontrollues ARM, veçanërisht, një ARM Cortex M4. Cortex M4 përmban pajisjen për të kryer një FFT (Shndërrim i shpejtë i Furierit) që do të bënte zbulimin. PJRC gjithashtu shet një bord audio që ju lejon të përdorni Teensy për të luajtur muzikë, si dhe për të regjistruar audio me një hyrje të jashtme, ose, një mikrofon të vogël që mund të shtoni në tabelë. Plani im ishte që Teensy të bënte një FFT në audio nga mikrofoni.

Hapi 2: FFT?

FFT?
FFT?

Një FFT është një formulë/algoritëm matematikor që transformon një sinjal nga fusha e kohës në fushën e frekuencës. Çfarë do të thotë kjo është se merr zërin e marrë nga koha nga mikrofoni dhe e kthen atë në madhësinë e frekuencave që janë të pranishme në valën origjinale. Ju shikoni, çdo valë arbitrare, e vazhdueshme mund të ndërtohet nga një seri valësh sinus ose kosinus që janë shumëfish të plotë të disa frekuencave bazë. Një FFT bën të kundërtën: merr një valë arbitrare dhe e kthen atë në madhësinë e valëve që, nëse përmblidhen së bashku, do të krijonin valën origjinale arbitrare. Një mënyrë edhe më e thjeshtë për ta thënë këtë është, kam planifikuar të përdor softuer dhe pajisje FFT në Teensy për të përcaktuar nëse "dëgjon" përplasjen e krahëve të një kolibri në frekuencën që shfaqen përplasjet e krahëve. Nëse ai "dëgjon" një kolibër, unë do t'i dërgoj një komandë një kamere për të bërë një fotografi.

Funksionoi! Pra, si e bëra, si mund ta bësh dhe si mund ta bësh edhe më mirë?

Hapi 3: Si Tingëllon Një Zhurmë Humberi?

Si Tingëllon Zogu i Kolibit Hovering?
Si Tingëllon Zogu i Kolibit Hovering?

Para së gjithash, më duhej të kuptoja se çfarë frekuence do të dëgjoja përplasjet e krahëve të kolibrit. Për ta përcaktuar këtë, unë përdor iPhone tim. Unë e bashkova iPhone me një trekëmbësh dhe e regjistrova atë me video me lëvizje të ngadaltë drejtpërdrejt para ushqyesit të kolibrit në kuvertën tonë. Pas një periudhe kohe e hoqa kamerën dhe e shkarkova videon. Pastaj shikova videon duke kërkuar një kolibër para ushqyesit. Kur gjeta një sekuencë të mirë, unë numërova numrin e kornizave individuale që u deshën që kolibri të përpëliste krahët nga një pozicion deri në të njëjtin pozicion. Lëvizja e ngadaltë në iPhone është rreth 240 korniza për sekondë. Unë vëzhgova një kolibër që rri pezull para ushqyesit dhe numërova 5 korniza që ai të lëvizë krahët nga pozicioni përpara në pozicionin e pasmë dhe pastaj të kthehet në pozicionin përpara. Kjo është 5 korniza nga 240. Mbani mend, ne dëgjojmë një tingull në çdo goditje të krahëve të krahëve të kolibrit (një në goditjen përpara dhe një në goditjen prapa). Për 5 korniza për një cikël ose periudhë, ne mund të llogarisim frekuencën si një të ndarë me periudhën dmth 1 / (5/240) ose 48 Hz. Kjo do të thotë se kur ky kolibër po rri pezull, tingulli që dëgjojmë duhet të jetë dy herë ky ose rreth 96 Hz. Frekuenca është ndoshta më e lartë kur ata fluturojnë dhe nuk fluturojnë. Mund të ndikohet gjithashtu nga masa e tyre, por unë mendoj se mund të supozojmë se shumica e zogjve të së njëjtës specie kanë afërsisht të njëjtën masë.

Hapi 4: Seritë Fourier dhe Adoleshentët

Seritë Fourier dhe Adoleshentët
Seritë Fourier dhe Adoleshentët

Teensy (Kam përdorur një Teensy 3.2) është bërë nga PJRC (www.pjrc.com). FFT do të llogaritet në një mostër të zërit. Për të marrë tingullin, PJRC shet një bord përshtatës audio për Teensy (TEENSY3_AUDIO - 14,25 dollarë). Ata gjithashtu shesin një mikrofon të vogël që mund të ngjitet në bordin e përshtatësit audio (MICROPHONE - 1.25 dollarë). Bordi i përshtatësit audio përdor një çip (SGTL5000) me të cilin Teensy mund të flasë përmes një autobusi serik (I2S). Teensy përdor SGTL5000 për të marrë audio nga mikrofoni dhe për ta dixhitalizuar atë, domethënë, për të krijuar një grup numrash që përfaqësojnë tingullin që dëgjon mikrofoni.

Një FFT është vetëm një version i shpejtë i asaj që quhet Transformimi Fourier Diskret (DFT). Një DFT mund të kryhet në një numër arbitrar të mostrave, megjithatë, një FFT duhet që mostrat të ruhen në grupe që janë shumëfish binar. Pajisja Teensy mund të kryejë një FFT në një grup prej 1024 mostrash (1024 = 2^10) kështu që kjo është ajo që ne do të përdorim.

Një FFT zakonisht prodhon, si dalje, madhësitë DHE marrëdhëniet fazore midis valëve të ndryshme të përfaqësuara. Për këtë aplikim ne nuk jemi të shqetësuar me marrëdhëniet fazore, por ne jemi të interesuar për madhësitë dhe shpeshtësinë e tyre.

Bordi audio Teensy provon audio në një frekuencë prej 44, 100 Hz. Pra, 1024 mostra në këtë frekuencë përfaqësojnë një interval kohor prej 1024/44100 ose rreth 23.2 milisekonda. Në këtë rast, FFT do të prodhojë si dalje, madhësi që janë shumëfishë të plotë të periudhës së mostrës prej 43 Hz (përsëri, 1/0.0232 është e barabartë me rreth 43 Hz). Ne do të donim të kërkonim madhësi që janë afërsisht dyfishi i kësaj frekuence: 86 Hz. Nuk është pikërisht frekuenca e përplasjeve tona të krahëve të llogaritura të kolibrit, por, është mjaft afër siç do ta shohim.

Hapi 5: Përdorimi i të dhënave të Furierit

Përdorimi i të dhënave të Furierit
Përdorimi i të dhënave të Furierit

Bibliotekat që PJRC ofron për Teensy do të përpunojë mostrat dhe do të kthejë një sërë vlerash të madhësisë. Ne do t'i referohemi çdo madhësie në grupin e kthyer si një kosh. Koshi i parë (në kompensimin zero në grupin e të dhënave që marrim përsëri) është kompensimi DC i valës. Ne mund ta injorojmë me siguri këtë vlerë. Koshi i dytë (në kompensimin 1) do të përfaqësojë madhësinë e komponentit 43 Hz. Kjo është periudha jonë bazë. Koshi tjetër (në kompensimin 2) do të përfaqësojë madhësinë e komponentit 86 Hz, e kështu me radhë. Çdo kosh i mëvonshëm është një shumëfish i plotë i periudhës bazë (43 Hz).

Tani kjo është ajo ku bëhet pak e çuditshme. Nëse do të përdornim një FFT për të analizuar një tingull të përsosur 43 Hz, atëherë FFT do të kthente koshin e parë në një madhësi të madhe dhe të gjithë pjesët e tjera të koshave do të ishin të barabartë me zero (përsëri, në një botë të përsosur). Nëse tingulli që kapëm dhe analizuam ishte 86 Hz atëherë kosha në kompensimin e një do të ishte zero dhe koshi në kompensimin 2 (harmonika e dytë) do të ishte me madhësi të madhe dhe pjesa tjetër e koshave do të ishte zero, e kështu me radhë. Por nëse kapim tingullin e një kolibri dhe ai ishte 96 Hz (siç e kam matur në një zogun tim) atëherë kompensimi 2 bin @ 86 Hz do të kishte një madhësi pak më të ulët (sesa vala e përsosur 86 Hz) dhe kazanët rreth tij (një më i ulët dhe disa më të lartë) secili do të kishte një vlerë zvogëluese jo-zero.

Nëse madhësia e mostrës për FFT -në tonë ishte më e madhe se 1024 ose nëse frekuenca jonë e kampionimit audio ishte më e ulët, ne mund ta bënim zgjidhjen e koshave tanë më të mirë (dmth. Më të vegjël). Por edhe nëse i ndryshojmë këto gjëra për t'i bërë kazanët tanë FFT 1 Hz shumëfish të periudhës bazë, përsëri do të na duhet të merremi me këtë 'derdhje' të koshit. Kjo ndodh sepse ne kurrë nuk do të merrnim një frekuencë krahësh që zbarkonte, gjithmonë dhe saktësisht, në një kazan të vetëm. Kjo do të thotë që ne nuk mund ta bazojmë zbulimin tonë të një kolibri në vlerën në koshin e kompensuar 2 dhe të injorojmë pjesën tjetër. Ne kemi nevojë për një mënyrë për të analizuar të dhënat në disa kosha në mënyrë që të përpiqemi dhe t'i kuptojmë ato. Më shumë për këtë më vonë.

Hapi 6: Filloni ndërtimin

Filloni Ndërtimin
Filloni Ndërtimin
Filloni Ndërtimin
Filloni Ndërtimin

Për prototipin tim të detektorit të kolibrave kam përdorur kunja ekstra të gjata mashkull-mashkull të ngjitura në kunjat në adoleshencë. Unë e bëra këtë në mënyrë që të mund ta lidhja Teensy në një pjatë të vogël pa saldim. E bëra këtë sepse supozova se do të bëja shumë ndryshime në prototip dhe me tabelën e bukës, mund ta ndryshoja këtë dhe vetëm telat e kërcyes kudo që të kisha nevojë. Kam bashkuar shirita femra në anën e poshtme të bordit audio që lejon që ajo të lidhet në krye të Teensy. Mikrofoni është ngjitur në anën e sipërme të bordit audio (shiko fotot). Më shumë detaje mbi montimin mund të gjenden në faqen e PJRC:

(https://www.pjrc.com/store/teensy3_audio.html).

Hapi 7: Pajisje kompjuterike për të kapur një fotografi

Pajisje kompjuterike për të kapur një fotografi
Pajisje kompjuterike për të kapur një fotografi
Pajisje kompjuterike për të kapur një fotografi
Pajisje kompjuterike për të kapur një fotografi

Unë kam (mirë, gruaja ime ka) një aparat fotografik dixhital Canon Rebel. Ekziston një prizë në kamerë që ju lejon të lidhni një telekomandë manuale të telekomandës. Bleva një telekomandë manuale nga B & H Photo. Kablli ka folenë e duhur për të vendosur kamerën në njërën anë dhe është i gjatë rreth 6 metra. Unë e preva kabllon në fund pranë kutisë së kontrollit të butonave dhe i hoqa telat dhe i bashkova në tre kunja me kokë që mund t'i lidhja në dërrasën e bukës. Ekziston një tel i zhveshur që është i tokëzuar dhe dy sinjale të tjera: maja është shkas (rozë) dhe unaza (e bardhë) është fokus (shiko fotografitë). Shkurtimi i majës dhe/ose unazës në tokë funksionon qepenin dhe fokusin në kamerë.

Duke përdorur një tel bluzë, unë kalova një terren të përbashkët nga Teensy në një zonë ku mund ta përdorja në dërrasën e bukës. Unë gjithashtu lidha anodën e një LED me pin 2 në Teensy dhe katodën e LED me një rezistencë (100-220 ohms) në tokë. Unë gjithashtu lidha kunjin 2 të Teensy me një rezistencë 10K dhe anën tjetër të rezistencës u lidha me bazën e një tranzistori NPN (një 2N3904 që gjendet kudo). Lidhja emetuesin e tranzistorit me tokën dhe kolektorin e lidha me telat e bardhë dhe rozë nga kablloja që shkon te kamera. Teli i zhveshur, përsëri, ishte i lidhur me tokën. Sa herë që LED ndizet nga Teensy, transistori NPN gjithashtu do të ndizet dhe do të shkaktojë kamerën (dhe fokusin). Shihni skemën.

Hapi 8: Dizajni i sistemit

Dizajni i Sistemit
Dizajni i Sistemit

Për shkak se frekuencat e përplasjes së krahut të Hummingbird ka të ngjarë të mos shkojnë mbi disa qindra Hz, atëherë nuk kemi vërtet nevojë të regjistrojmë frekuenca zanore mbi, të themi, disa qindra Hz. Ajo që na nevojitet është një mënyrë për të filtruar vetëm frekuencat që duam. Një filtër me bandë ose edhe me kalim të ulët do të ishte i shkëlqyeshëm. Tradicionalisht ne do të zbatonim një filtër në harduer duke përdorur OpAmps ose filtra të kondensatorit të ndërruar. Por falë përpunimit të sinjalit dixhital dhe bibliotekave të softuerit Teensy, ne mund të përdorim një filtër dixhital (nuk nevojitet saldim … vetëm softuer).

PJRC ka një GUI të mrekullueshëm në dispozicion që ju lejon të tërhiqni dhe lëshoni sistemin tuaj audio për bordin Teensy dhe audio. Mund ta gjeni këtu:

www.pjrc.com/teensy/gui/

Vendosa të përdor një nga filtrat bikuadratikë të kaskaduar të siguruar nga PJRC për të kufizuar frekuencat e zërit nga mikrofoni (filtri). Kam përplasur tre filtra të tillë dhe i vendosa për funksionimin e bandës në 100 Hz. Ky filtër do të lejojë frekuencat e sistemit pak më lart dhe pak më poshtë frekuencës që ne jemi të interesuar.

Në bllok -diagramin (shiko figurën) i2s1 është hyrja audio në bordin audio. I lidha të dy kanalet audio me një mikser dhe më pas me filtrat (mikrofoni është vetëm një kanal, por, i përzieva të dyja kështu që nuk më duhej të kuptoja se cili kanal ishte … më quani dembel). Drejtoj daljen e filtrit në daljen audio (kështu që mund ta dëgjoj audion nëse dua). Unë gjithashtu lidha audion nga filtrat në bllokun FFT. Në bllok -diagramin, blloku i etiketuar sgtl5000_1 është çipi i kontrolluesit audio. Nuk ka nevojë për lidhje në diagram.

Pasi të keni bërë të gjithë këtë ndërtim bllok ju klikoni në Eksport. Kjo sjell një kuti dialogu ku mund të kopjoni kodin që është krijuar nga bllok diagrami dhe ta ngjisni në aplikacionin tuaj Teensy. Nëse shikoni kodin, mund të shihni se është një çast i secilit kontroll së bashku me 'lidhjet' midis përbërësve.

Hapi 9: Kodi

Kodi
Kodi

Do të duhej shumë hapësirë në këtë Instructable për të kaluar në detaje softuerin. Ajo që do të përpiqem të bëj është të nënvizoj disa nga pjesët kryesore të kodit. Por kjo nuk është një aplikim shumë i madh gjithsesi. PJRC ka një video mësimore të shkëlqyeshme për përdorimin e Teensy dhe bibliotekat/veglat audio (https://www.youtube.com/embed/wqt55OAabVs).

Fillova me disa kode shembull FFT nga PJRC. Kam ngjitur atë që kam marrë nga mjeti i projektimit të sistemit audio në krye të kodit. Nëse shikoni kodin pas kësaj do të shihni njëfarë inicializimi dhe më pas sistemi fillon të digjitalizojë audion nga mikrofoni. Softueri hyn në lakin 'përgjithmonë' () dhe pret që të dhënat FFT të jenë të disponueshme duke përdorur një thirrje në funksionin fft1024_1.available (). Kur të dhënat FFT janë në dispozicion, unë marr një kopje të të dhënave dhe i përpunoj ato. Vini re se, unë marr të dhëna vetëm nëse madhësia më e madhe e koshit është mbi një vlerë të caktuar. Kjo vlerë është mënyra se si e vendos ndjeshmërinë e sistemit. Nëse koshat JAN above mbi vlerën e caktuar atëherë e normalizoj valën dhe e transferoj në një grup të përkohshëm për përpunim, përndryshe, e injoroj dhe vazhdoj të pres për një FFT tjetër. Duhet të përmend se unë gjithashtu përdor funksionin e kontrollit të fitimit të mikrofonit për të rregulluar ndjeshmërinë e qarkut (sgtl5000_1.micGain (50)).

Normalizimi i valës do të thotë që unë i rregulloj të gjithë kazanët në mënyrë që kosha me vlerën më të madhe të jetë e barabartë me një. Të gjithë kazanët e tjerë janë shkallëzuar me të njëjtin proporcion. Kjo e bën më të lehtë analizimin e të dhënave.

Kam përdorur disa algoritme për të analizuar të dhënat, por, u vendosa duke përdorur vetëm dy. Një algoritëm llogarit zonën nën kurbën e formuar nga kazanët. Kjo është një llogaritje e thjeshtë që vetëm shton vlerat e koshave në të gjithë rajonin e interesit. Unë e krahasoj këtë zonë për të përcaktuar nëse është mbi një prag.

Algoritmi tjetër përdor një grup vlerash konstante që përfaqësojnë një FFT të normalizuar. Këto të dhëna janë rezultatet e një nënshkrimi të vërtetë (optimal) të kolibrit. Unë e quaj këtë një mbrojtje. Unë i krahasoj të dhënat e mbrojtjes me të dhënat e normalizuara FFT për të parë nëse kazanët përkatës janë brenda 20% të njëri -tjetrit. Zgjodha 20% por, kjo vlerë mund të rregullohej lehtë.

Unë gjithashtu numëroj sa herë algoritmet individuale mendojnë se kanë një ndeshje, domethënë, mendojnë se dëgjojnë një kolibër. Unë e përdor këtë numërim si pjesë e përcaktimit të kolibrit sepse, mund të ndodhë nxitje e rreme. Për shembull, kur ndonjë tingull është me zë të lartë ose përmban frekuencën e krahëve të zogjve, si duartrokitja, ju mund të merrni një shkas. Por nëse numërimi është mbi një numër të caktuar (një numër që unë zgjedh) them se është një kolibër. Kur kjo ndodh, ndez LED për të treguar që kemi një goditje dhe i njëjti qark shkakton kamerën përmes transistorit NPN. Në softuer kam vendosur kohën e aktivizimit të kamerës në 2 sekonda (koha kur LED dhe transistori janë ndezur).

Hapi 10: Montimi

Montim
Montim

Ju mund të shihni në foto sesi unë (në mënyrë pa ceremoni) montova elektronikën. Unë e kisha Teensy të kyçur në një dërrasë buke e cila ishte ngjitur në një dërrasë transportuesi së bashku me një tjetër (të papërdorur) të pajtueshëm me Arduino (mendoj se një Arduino Zero). E kam lidhur të gjithë me një shtyllë tendë metalike në kuvertën time (gjithashtu shtova lehtësimin e tendosjes në kabllon që kalon në kamerë). Shtylla ishte menjëherë pranë ushqyesit të kolibrave. Unë furnizova pajisjet elektronike me një tullë të vogël LiPo që mund ta përdorni për të rimbushur një celular të vdekur. Tulla e energjisë kishte një lidhës USB në të, të cilin e përdorja për të kaluar energjinë tek Teensy. E kalova kabllin e këmbëzës në distancë te Kamera dhe e futa. Isha gati për një veprim të shpendëve!

Hapi 11: Rezultatet

Rezultatet
Rezultatet

Vendosa kamerën në një trekëmbësh pranë ushqyesit. Unë e kisha kamerën të fokusuar në skajin e përparmë të ushqyesit dhe e vendosa atë në Sport Mode e cila bën disa fotografi të shpejta kur shtypet qepenja. Me kohën e fikjes prej 2 sekondash kam kapur rreth 5 fotografi për ngjarje të shkaktimit.

Kam kaluar disa orë duke u marrë me softuerin herën e parë që e provova këtë. Më duhej të rregulloja ndjeshmërinë dhe numrin e goditjeve të algoritmit të njëpasnjëshëm. Më në fund e ndryshova dhe isha gati.

Fotografia e parë që bëri ishte e një zogu që fluturoi në kornizë sikur të merrte një kthesë me shpejtësi të lartë si një avion luftarak (shih më lart). Nuk mund t'ju them sa i emocionuar isha. Unë u ula i qetë në anën tjetër të kuvertës për një kohë dhe e la sistemin të funksionojë. Arrita të regjistroj shumë fotografi, por, hodha shumë. Rezulton, ndonjëherë ju thjesht merrni kokën ose bishtin e një zogu. Gjithashtu, kam marrë shkaktarë të rremë, të cilët mund të ndodhin. Në total mendoj se kam mbajtur 39 fotografi. Zogjve iu deshën disa udhëtime në ushqyes për t'u mësuar me tingullin e qepenit nga kamera, por ata përfundimisht dukej se e injoruan atë.

Hapi 12: Mendimet përfundimtare

Mendimet përfundimtare
Mendimet përfundimtare

Ky ishte një projekt argëtues dhe, funksionon. Por, si shumica e gjërave, ka shumë vend për përmirësim. Filtri me siguri mund të jetë i ndryshëm (si një filtër me kalim të ulët ose ndryshime në aranzhimin dhe/ose parametrat) dhe ndoshta kjo mund ta bëjë atë të funksionojë më mirë. Unë jam gjithashtu i sigurt se ka algoritme më të mira për t'u provuar. Do të provoj disa prej tyre gjatë verës.

Më është thënë se ekziston një kod i mësimit të makinerisë me burim të hapur atje … ndoshta sistemi mund të 'trajnohet' për të identifikuar kolibrat! Nuk jam i sigurt se do ta provoj këtë, por, ndoshta.

Cilat gjëra të tjera mund t'i shtohen këtij projekti? Nëse kamera kishte një vulë datash/orësh, mund t'i shtoni ato informacione fotografive. Një gjë tjetër që mund të bëni është të regjistroni audion dhe ta ruani në një kartë uSD (bordi audio i PJRC ka një çarë për një). Audio e ruajtur mund të jetë në gjendje të përdoret për trajnimin e një algoritmi mësimi.

Ndoshta diku një shkollë e Ornitologjisë mund të përdorë një pajisje të tillë? Ata mund të jenë në gjendje të grumbullojnë informacione si kohëzgjatja e ushqyerjes, shpeshtësia e ushqyerjes dhe, me fotografitë, mund të jeni në gjendje të identifikoni zogj të veçantë që kthehen në ushqim.

Shpresa ime është që dikush tjetër ta zgjasë këtë projekt dhe të ndajë atë që bëjnë me të tjerët. Disa njerëz më kanë thënë se kjo punë që kam bërë duhet të kthehet në produkt. Unë nuk jam aq i sigurt, por, më mirë do ta shihja atë të përdoret si një platformë mësimi dhe për shkencën.

Faleminderit per leximin!

Për të përdorur kodin që kam postuar do t'ju duhet Arduino IDE (https://www.arduino.cc/en/Main/Software). Ju gjithashtu do të keni nevojë për kodin Teensyduino nga PJRC (https://www.pjrc.com/teensy/td_download.html).

Recommended: