Sisukord:
- Tarvikud
- Samm: roboti seadistamine
- 2. samm: juhtkangi seadistamine
- 3. samm: juhtkangi väärtuste kontrollimine
- Samm: muutujate X ja Y reguleerimine
- Samm: X ja Y teisendamine vasak- ja paremmootorite väärtusteks
- 6. samm: väärtuste saatmine raadiosõnumitena
- Samm 7: sõnumite vastuvõtmine oma robotil
- 8. samm: sissetulevate sõnumite kasutamine roboti mootorite juhtimiseks
- 9. samm: nuppude kasutamine - lisasõnumite vastuvõtmine
- Samm 10: Lisasõnumite saatmine kontrolleri nuppude abil
- Samm: järgmised sammud
Video: Mikro: bitiroboti ja juhtkangi programmeerimine: bitikontroller MicroPythoni abil: 11 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:47
Robocamp 2019, meie suvise robootikalaagri jaoks, joovad, programmeerivad ja ehitavad noored vanuses 10-13 aastat BBC mikro: bitipõhist "kaalulangetusrobotit", samuti programmeerivad mikro: bitti kaugjuhtimispuldina kasutamiseks.
Kui olete praegu Robocampis, jätkake 3. sammuga, kuna oleme esimesed kaks sammu rühmana teinud
See on samm-sammult juhis, kuidas saada mikro: bit robot juhtkangiga: bitikontrolleriga suhtlema.
See ei võta kõige kiiremat teed, et kõik toimiks, vaid proovib asju väikeste tükkidena, et saaksite koodi teekonnal testida, oma templi peale panna ja mõista, miks me teeme asju, mida teeme !
Selle tegevuse jaoks kasutame oma kohandatud robotit, kuid see töötab iga robotiga, mis kasutab sarnast mootorijuhti, näiteks L9110.
Meie roboti disainifailid leiate siit:
See juhend on kirjutatud algajatele, kuid kui te pole kunagi varem MicroPythoniga micro: bitit kasutanud, soovitame kõigepealt proovida lihtsamat programmi, näiteks meie nimemärki Instructable: https://www.instructables.com/id/Felt -Microbit-Nam…
Tarvikud
2x BBC mikro: bit
Robot, mis töötab BBC mikro: bitiga (vt ülaltoodud selgitust)
juhtnupp: bitikontroller (meie saime Cool Componentsist)
Samm: roboti seadistamine
Teil on mõned võimalused MicroPythoni koodi kirjutamiseks oma mikro jaoks: bit:
- Mu, mille saate alla laadida ja installida siit:
- Veebitoimetaja, mille leiate siit:
Need juhised eeldavad, et kasutate Mu
Avage Mu ja ühendage oma micro: bit arvutiga. Mu peaks tunnistama, et kasutate micro: bitit, ja valige micro: bit 'Mode', kuid kui ei, siis muutke seda käsitsi.
Hankige robotimootori testikoodi koopia siit:
Kui te pole Githubiga harjunud, võib see olla intuitiivne! Selle koodi hankimiseks on kaks lihtsat viisi:
- Salvestage töötlemata fail oma arvutisse ja laadige see seejärel faili Mu:
- Kopeerige ja kleepige kogu antud kood uude faili kaustas Mu.
Nüüd klõpsake Mu tööriistaribal nuppu "Flash", et saata oma uus kood micro: bitile.
See ei tööta, kui micro: bit pole ühendatud
Kollane tuli mikro: bit tagaküljel hakkab vilkuma. Kui see on lõpetatud, on teie kood üle kantud.
MOOTORI SUUNADE SEADISTAMINE
See programm lülitab mootorid eri suundades sisse, kui vajutate mikro: bitil nuppu "A".
See, mida soovite juhtuda, on järgmine:
- Kui kuvatakse „A”, liigub vasak mootor edasi
- Kui kuvatakse "B", vasak mootor vasakule
- Kui kuvatakse „C”, liigub parem mootor edasi
- Kui kuvatakse „D”, parem mootor tagurpidi
Tõenäoliselt see nii ei ole, kuna see sõltub sellest, kuidas olete oma roboti ühendanud!
Koodi ülaosast leiate muutujate loendi, mis määravad, milline mikro: bitti tihvt juhib mootori suunda.
Kui kasutate mõnda meie robotit (faili), vahetage muutujate nimed ümber, et robot liiguks õiges suunas:
Kui kasutate oma robotit, kontrollige enne koodi muutmist, milliste tihvtidega on mootorijuht ühendatud.
AJAKATSE
Nüüd kontrollige, kuidas teie robot sõidab, asendades põhiahelas oleva testkoodi mõne oma koodiga.
Käskite robotil sõita, kutsudes funktsiooni drive (). Selleks on kaks argumenti - vasaku mootori väärtus ja parema mootori väärtus vahemikus 0 (välja lülitatud) kuni 1023 (maksimaalne kiirus).
Näiteks helistades ajamile (500, 500), ütlete mõlemale mootorile, et need lülituvad edasi, umbes poole kiirusega.
Proovige mõnda võimalust, et mõista, kui sirge see sõidab ja kui hästi see pöörab.
Vihje: mootoritestid olid sees nii mõnda aega True loop kui ka if -väide - mootorid ei pöörle enne, kui vajutate mikro: bitil nuppu A ja see kontrollib igavesti, kas olete nuppu A vajutanud.
Vihje: mootorid ei lülitu välja enne, kui te neile seda ütlete! Nad jätkavad alati oma viimaseid juhiseid.
VALIKULINE: SÕIDU PARANDAMINE SIRGELISELT
Kui teie robot ei sõida sirgjooneliselt, võib üks teie mootoritest pöörduda kiiremini kui teine.
Pärast seda, kui olete kontrollinud, et miski ei takistaks ratta füüsilist pöörlemist vabalt pöörlema, saate ajamisfunktsioonis koodi muuta, et vähendada kiirema mootori kiirust.
Kerige üles, et leida ajamifunktsiooni määratlus, ja vaadake kahte peamist juhist:
def drive (L, R):
# Allpool on reguleerimine mootori kiiruse erinevuse parandamiseks L = int (L*1) R = int (R*1)
Need kaks rida võtavad praegu väärtuse L ja R, korrutavad need 1 -ga, seejärel veenduge, et need on ikka täisarvud (int).
Näiteks kui teie vasak mootor on kiirem, muutke selle joone *1 väärtuseks *0,9 ja vaadake, kas see parandab olukorda.
Te ei saa seda täiuslikuks muuta, kuid saate reguleerimist jätkata, kuni see sirgemaks läheb.
RAADIO SEADISTAMINE
Nüüd seadistage raadio, lisades koodi ülaossa järgmised read:
impordi raadio
radio.config (kanal = 7, grupp = 0, järjekord = 1) radio.on ()
See võimaldab teie robotil saada juhiseid teiselt micro: bitilt, kuid hetkel saab ta juhiseid mis tahes muult micro: bitilt.
Seda seetõttu, et kanal 7 ja rühm 0 on vaikekanalid.
Muutke neid numbreid, valides kanali vahemikus 0-82 ja rühma vahemikus 0-255. Nüüd saab teie micro: bit juhiseid ainult teistelt, kellel on sama konfiguratsiooniteave.
järjekord = 1 tähendab, et mikro: bit hoiab korraga ainult ühte sissetulevat sõnumit - see annab vaikimisi veidi kiirema reageerimisaja, mis on 3.
Nüüd peate oma põhiahela koodi muutma, selle asemel et käivitada juhiseid, kui vajutate nuppu, oodake sissetulevat raadiosõnumit ja vastake asjakohaselt.
Proovige testina järgmist koodi (see ei tee midagi enne, kui olete juhtnupp 2. etapis seadistanud):
kuigi tõsi:
message = radio.recept () if message == 'forward': drive (500, 500)
2. samm: juhtkangi seadistamine
Ühendage oma roboti micro: bit vooluvõrgust lahti ja ühendage hoopis juhtkangi micro: bit
Hankige juhtkangi seadistuskoodi koopia siit:
Seadistage raadio sama konfiguratsiooni (kanali ja grupi numbri) abil, mida kasutasite roboti puhul - see võimaldab neil kahel suhelda.
Programmi lõpus käivitage oma peamine tsükkel:
kuigi tõsi:
if button_a.was_pressed (): radio.send ('edasi')
See kood ei kasuta veel juhtkangi: bit. See kasutab sõnumi saatmiseks nuppu micro: bit.
Veenduge, et nii teie robotil kui ka kontrolleri mikro: bitidel oleks võimsus, seejärel vajutage sõnumi saatmiseks nuppu.
Kui sõnum on edukalt vastu võetud ja teie robot liigub … hästi tehtud! Olete seadistusjuhistega lõpetanud.
VEAVAHETUSED
Kui saate kontrolleri micro: bit veateate, siluge oma kontrolleri kood
Kui saate oma roboti micro: bit veateate … teie raadiosõnum saadeti edukalt! Kuid robot ei saa sellest aru, seega kontrollige, kas teie saadetud sõnum ja sõnum, mille te robotil käskisite kuulata, vastavad.
Kui üldse midagi ei juhtu
- Veenduge, et vilksaksite igale mikro: bitile õiget koodi - seda on lihtne kogemata vilgutada!
- Veenduge, et teie kanali ja grupi numbrid vastaksid igale mikro: bitile
3. samm: juhtkangi väärtuste kontrollimine
Järgmised paar sammu kasutavad kontrolleri koodi
Enne kontrolleri juhtkangi kasutamist peate teadma, milliseid väärtusi saate pulga vajutamisel.
Asendage oma põhisilmus järgmise koodiga:
kuigi tõsi:
juhtnupp = joystick_push () print (joystick) unerežiim (500)
Välgutage seda koodi oma micro: bitile, seejärel klõpsake Mu tööriistaribal nuppu REPL. See avab redaktori allosas terminali, mis annab teile reaalajas lingi mikro: bitile.
See ei tööta, kui micro: bit pole ühendatud
Kui REPL on avatud, vajutage lähtestamisnuppu oma mikro: bitti tagaküljel.
Te peaksite nägema, et mõned väärtused kuvatakse ekraanile trükituna:
Lükake juhtkangi pulka ja vaadake, mis numbritega juhtub.
Märkige väärtused, mis on antud siis, kui juhtkang on keskmises asendis - minu puhul (518, 523).
Selle sulgemiseks klõpsake uuesti Mu tööriistariba nupul REPL - te ei saa uut koodi micro: bitile välgutada, kui see on avatud.
Samm: muutujate X ja Y reguleerimine
Soovite muuta juhthoova funktsiooni antud väärtusi nii, et:
- keskel on see null
- üleval on positiivne
- alla on negatiivne.
See vastab juhistele, mida robot vajab - positiivne number edasi sõitmiseks ja negatiivne number tagurpidi sõitmiseks.
Vaadake viimases etapis saadud numbreid. Esimene number on x ja teine number y.
Muutke programmis juba sisalduvat joystick_push () definitsiooni, vähendades oma väärtused algsest:
def joystick_push ():
x = pin0.read_analog () - 518 y = pin1.read_analog () - 523 return x, y
Kasutage oma numbreid, need võivad minu omast erineda
Välgutage uut koodi, avage REPL, vajutage micro: bit lähtestamisnuppu ja kontrollige oma väärtusi.
Kas saate (0, 0)?
Samm: X ja Y teisendamine vasak- ja paremmootorite väärtusteks
Hetkel ei ole sellest juhtkangist eriti kasu robotiga sõitmiseks. Lõpuni edasi lükates saate väärtuse, näiteks (0, 500).
Kui annaksite need numbrid robotile, lülitaks see sisse parema mootori, kuid mitte vasaku, mis pole see, mida soovite juhtuda!
See diagramm näitab, mis juhtub x- ja y -väärtustega juhtkangi liigutamisel ja mida me tahame, et robot teeks juhtkangi liigutamisel.
X ja y väärtuste segamiseks peate kasutama mõnda matemaatikat, et anda teile midagi kasulikumat.
n
MATEMAATIKA
Alustuseks lükake juhtkangi lõpuni ette.
Näide väärtustest, mida võite saada, on järgmine:
x = 0
y = 500
Roboti jaoks kasulikuks saamiseks soovite saada selliseid väärtusi:
vasakul = 500
õige = 500
Proovime lisada x ja y erineval viisil, et näha, milliseid numbreid saame:
x + y = 0 + 500 = 500
x - y = 0 - 500 = -500 y + x = 500 + 0 = 500 y - x = 500 - 0 = 500
Nüüd vaatame, mis juhtub, kui lükkame juhtkangi lõpuni paremale.
Näide väärtustest, mida võite saada, on järgmine:
x = 500
y = 0
Roboti paremale pööramiseks soovite, et vasak mootor liiguks edasi ja parem mootor tahapoole:
vasakul = 500
paremal = -500
Proovime oma valemit uuesti:
x + y = 500 + 0 = 500
x - y = 500 - 0 = 500 y + x = 0 + 500 = 500 y - x = 0 - 500 = -500
Võrrelge kahte valemikomplekti, et välja selgitada, milline valik annab teile õige vasaku väärtuse ja milline valik õige õige väärtuse.
Proovige seda mõne väärtusega, mille saate oma juhtkangist, veendumaks, et valitud valem töötab kogu aeg.
n
JOYSTICK FUNKTSIOONI LAIENDAMINE
Laiendage ja muutke juhtkangi funktsiooni, et luua kaks uut muutujat vasakule ja paremale ning tagastada need väärtused x ja y asemel:
def joystick_push ():
x = pin0.read_analog () - 518 y = pin1.read_analog () - 523 left = right = return left, right
Välgutage uut koodi, avage REPL, vajutage micro: bit lähtestamisnuppu ja kontrollige oma väärtusi.
Kas saate väärtused, mida ootate?
Kui vajate rohkem abi, vaadake meie näidiskoodi siit:
6. samm: väärtuste saatmine raadiosõnumitena
Nüüd on teil mõned väärtused robotile saatmiseks valmis.
Muutke oma põhitsüklit nii, et see kontrolliks juhtkangi väärtusi, kuid valmistab seejärel väärtuste printimise asemel need raadiosõnumina saatmiseks valmis.
kuigi tõsi:
juhtnupp = juhtnupp_push () sõnum = str (juhtnupp [0]) + "" + str (juhtnupp [1])
See ei saada tegelikult veel sõnumit!
Mis toimub selles uues koodireas?
- juhtnupp [0] tähendab esimest teavet, mis väljub juhtkangi funktsioonist (vasakul)
- juhtnupp [1] on järgmine teave (paremal)
- str () teisendab mõlemad numbrid stringivorminguks (numbrite asemel tekstiks) - see on vajalik teabe edastamiseks raadio kaudu.
Olete harjunud nägema +, et tähendada liitmist - see võib nii numbreid liita kui ka stringe ühendada, mis tähendab, et kleebib kaks informatsiooni kokku.
Näide:
150 + 100 = 250
str (150) + str (100) = 150100
Seega ühendab liitmine teie vasak- ja parempoolsed väärtused kokku.
Et sundida eraldama kahe teabe bitti (et robot teaks, et need on kaks bitti teavet), ühendage nende vahele täiendav string, kasutades "". Ruumi ümbritsevad kõnemärgid tähendavad, et see on juba string.
Lõpuks laiendage oma koodi, et saata see äsja loodud teade raadio kaudu:
radio.send (sõnum)
magama (10)
Unerežiim aeglustab sõnumite saatmist, nii et vastuvõttev mikro: bit ei koormataks liiga palju teavet!
Enne järgmise sammu juurde liikumist välkuge sellest koodist oma kontrolleri micro: bit ja siluge kõik vead
Samm 7: sõnumite vastuvõtmine oma robotil
Minge algusest peale tagasi oma robotikoodi juurde - ärge unustage oma kontrollerit micro: bit vooluvõrgust lahti ühendada, et te kogemata robotikoodi sellele ei välgutaks
Kerige alla oma põhisilmuseni - eemaldage testkood ja lisage see:
kuigi tõsi:
sõnum = raadio. vastuvõtt () print (sõnum) unerežiim (100)
See määrab muutuja sissetuleva sõnumiga võrdseks ja prindib sõnumi REPL -i, et kontrollida, kas sõnumid tulevad ootuspäraselt.
Välgutage oma uut koodi, mis on ühendatud REPL -iga, seejärel vajutage juhtnuppu.
Peaksite saama midagi sellist:
VEAVAHETUSED
Kui saate kontrolleri micro: bit veateate, siluge oma kontrolleri kood
Kui saate oma roboti micro: bit veateate … teie raadiosõnum saadeti edukalt! Kuid robot ei saa sellest aru, seega kontrollige, kas teie saadetud sõnum ja sõnum, mille te robotil käskisite kuulata, vastavad.
Kui üldse midagi ei juhtu
- Veenduge, et vilksaksite igale mikro: bitile õiget koodi - seda on lihtne kogemata vilgutada!
- Veenduge, et teie kanali ja grupi numbrid vastaksid igale mikro: bitile
8. samm: sissetulevate sõnumite kasutamine roboti mootorite juhtimiseks
Nüüd saadetakse raadio kaudu stringina kaks numbrit.
Peate selle teate jagama kaheks stringiks, seejärel teisendama stringid uuesti numbriteks ja edastama selle draivifunktsiooni. Palju toimub korraga!
Enne seda peate kontrollima, kas saadetav sõnum on õiges vormingus.
Kui sõnumeid ei saadeta, saate selle asemel teate „Puudub”. Kui proovite seda jagada, saate veateate.
kuigi tõsi:
sõnum = raadio.saada (), kui sõnumit pole
Mis siin toimub?
- Uus kood käivitatakse, kui sõnum on midagi muud kui „Puudub”.
- message.split () kontrollib sõnumis tühikut (mille lisasime viimases etapis) ja kasutab seda sõnumi kaheks jagamiseks.
- int (sõnum [0]), int (sõnum [1]) teeb vastupidist sellele, mida tegime eelmises etapis - saab iga teabe eraldi ja teisendab selle täisarvuks (täisarvuks).
- int (teade [0]) kasutatakse ajamifunktsiooni vasaku mootori väärtuseks ja int (teade [1]) parema mootori väärtuseks.
Kontrollige, kas see töötab - kas mootorid pöörlevad juhtkangi vajutamisel?
Kui ei - aeg silumiseks!
Kui jah, siis fantastiline! Sul on töötav kaugjuhtimispult!
Enne järgmise sammu juurde liikumist kulutage natuke aega oma robotiga harjutamiseks. Kas see sõidab nii, nagu ootate?
Järgmised sammud näitavad teile, kuidas juhtnupu nuppude abil oma robotile lisafunktsioone lisada
Kui soovite näha selle koodi meie senist versiooni:
- Robot:
- Kontroller:
9. samm: nuppude kasutamine - lisasõnumite vastuvõtmine
Praegu proovib teie kood jagada mis tahes sõnumi, mis ei ole Puudub. See tähendab, et kui see saab näiteks „tere“, saate veateate.
Selleks, et teie micro: bit saaks teisi sõnumeid tõlgendada, peab ta kõigepealt kontrollima iga oodatud sõnumit ja seejärel jagama kirja ainult siis, kui sellel pole kästud sellega midagi muud teha.
Laiendage oma koodi järgmiselt.
kui sõnum pole Puudub:
if message == 'tere': display.show (Image. HAPPY) elif message == 'duck': display.show (Image. DUCK) else: message = message.split () drive (int (sõnum [0]), int (sõnum [1]))
Esiteks kontrollib ta, kas on saanud teate "tere". Kui on, kuvab see õnneliku pildi, seejärel minge tagasi silmuse ülaossa ja kontrollige järgmist sõnumit.
Kui teade pole tere, kontrollib see järgmisena, kas sõnum on „part”.
Kui teade ei ole „tere” VÕI „part”, teeb see loendis viimase asja, mis jagab sõnumi pooleks ja lülitab mootorid sisse. See ei püüa sõnumit jagada, kui see on saanud tere või pardi, mis tähendab, et te ei saa kummagi sõnumi veateadet.
Kahekordne võrdusmärk on oluline - see tähendab "võrdub", võrreldes ühe võrdusmärgiga, mis määrab midagi (nii et sõnum = "tere" tähendab, et me määrame muutujaks "tere", sõnum == "tere" tähendab, et me küsime, kas sõnum võrdub sõnaga tere).
Proovige seda praegu testimiseks vaid kahe valikuga - saate hiljem lisada nii palju muid sõnumeid kui soovite.
Link töötavale koodile:
Samm 10: Lisasõnumite saatmine kontrolleri nuppude abil
Ühendage oma roboti micro: bit vooluvõrgust lahti ja ühendage hoopis juhtkangi micro: bit
Muutmiseks pöörduge tagasi kontrolleri koodi juurde.
Sarnaselt robotikoodiga soovime, et kontroller kontrolliks enne juhtkangi väärtuste saatmist, kas proovite saata muid sõnumeid.
Silmuse ülaosas tahame ikkagi, et see kontrolliks juhtkangi praeguseid väärtusi, aga ka seda, kas see kontrollib, kas praegu vajutatakse nuppu:
kuigi tõsi:
juhtnupp = joystick_push () nupp = button_press ()
button_press () tagastab väärtuse A, B, C, D, E või F sõltuvalt sellest, millist nuppu praegu vajutatakse (kui midagi ei vajutata, tagastab see nupu None).
Nüüd saame teha if-elif-else avalduse, nagu tegime robotikoodi puhul-kahe nupu abil ja juhtnupu väärtuse saatmise, kui ühtegi nuppu ei vajutata.
kui nupp == 'A':
radio.send ('tere') uni (500) elif nupp == 'B': radio.send ('pard') uni (500) else: message = str (juhtkang [0]) + "" + str (juhtnupp [1]) raadio.saada (sõnum) uni (10)
Kui vajutate nuppu, saatke üks sõnumitest, mida käskisite robotil eelmises etapis jälgida.
Sõnum saadetakse alati, kui nuppu vajutatakse ja arvutid on palju kiiremad kui inimesed! Seega võib see sõnumi saata mitu korda, enne kui teil on õnnestunud sõrm nupult eemaldada.
Unerežiim pärast sõnumi saatmist aeglustab seda, nii et see ei kontrolli nuppu uuesti nii kiiresti - proovige siin mõnda numbrit, et saaksite endale sobiva aja - liiga aeglaselt ja see ei reageeri ka kiiresti ja teie robot saab nii palju nuputeateid, et see võib juhtkangile reageerimise lõpetada!
Kas see töötab?
Kui saate veateateid, mõelge hoolikalt läbi, mida just muutsite ja mis toimub.
Kui saate robotil vea, kui vajutate oma kontrolleri nuppu - teate, et sõnum jõuab kohale, kuid see ajab roboti segadusse. Kontrollige, kas teie saadetud sõnum ja robotile otsitud sõnum on samad.
Link töötavale koodile:
Samm: järgmised sammud
Nüüd on teil teadmised, mida vajate oma roboti mootorite ja juhtkangi: bitikontrolleriga töötamiseks
Kasutage neid teadmisi kahe programmi täiustamiseks ja muutke need enda omaks. Mõned ideed allpool!
Teie kontrolleril on kuus nuppu! Mida sa tahad, et nad teeksid?
- Kuidas oleks programmeerida tantsurutiin, mida teie robot käsu järgi tegema peaks? Kirjutage drive () käskude algoritm, mis on eraldatud uni () käskudega!
- Kas soovite muuta roboti liikumissuunda, et see saaks hõlpsalt tagurpidi sõita? Mõelge oma juhtkangi x ja y väärtustele. Mida nad esindavad ja kuidas saaksite nendega manipuleerida?
- Kas teie robotil on (või võiksite lisada!) Lisafunktsioone, nagu LED -id, kõlar või andurid?
Ideid koodi täiustamiseks
- Kas saaksite aidata oma robotil tundmatute sõnumitega toime tulla, kasutades proovi/välja arvatud koodi?
- Juhtkangist vasakule ja paremale väärtuste arvutamiseks kasutatud matemaatika ei anna meile täielikku väärtuste vahemikku (roboti ajam võtab vastu numbri kuni 1023). Kas saate seda koodi parema ulatuse muutmiseks muuta?
- Juhtkangi väärtuste segamiseks on ka teisi meetodeid - kas saate välja mõelda, kuidas seda paremini teha?
Soovitan:
Arduino klaviatuuri juhtkangi pikenduskast ja helikontrolleri asi Deej abil: 8 sammu
Arduino klaviatuuri juhtkangide pikenduskast ja helikontroller, kasutades Deejat: miks Ma olen mõnda aega tahtnud klaviatuurile lisada väikese juhtkangi liideseelementide juhtimiseks või muid väiksemaid ülesandeid mängudes ja simulaatorites (MS Flight Sim, Elite: Dangerous, Tähesõjad: eskadronid jne). Samuti olen Elite: Dangerous jaoks olnud
Robotikäe juhtimine TLV493D, juhtkangi ja Arduino abil: 3 sammu
Robotikäe juhtimine TLV493D, juhtkangi ja Arduino abil: alternatiivne kontroller teie robotile TLV493D anduriga, 3 vabadusastmega (x, y, z) magnetandur, millega saate oma uusi projekte juhtida oma I2C -side abil mikrokontrollerid ja elektrooniline plaat, mis Bast P
ATmega328 programmeerimine Arduino IDE abil 8MHz kristalli abil: 4 sammu
ATmega328 programmeerimine Arduino IDE -ga, kasutades 8MHz kristalli: Selles süstitavas kirjeldan samm -sammult ATmega328P IC (sama mikrokontroller olemas Arudino UNO -l) programmeerimise juhendit, kasutades Arduino IDE -d ja Arduino UNO -d programmeerijana, et teha endale kohandatud Arduino, et oma projekte teha
Kuidas juhtida BLDC mootorit Arduino ja juhtkangi abil: 6 sammu
Kuidas juhtida BLDC mootorit Arduino ja juhtkangi abil: Tere sõbrad selles õpetuses, ma näitan teile, kuidas juhtida harjadeta alalisvoolumootorit ehk BLDC mootorit Arduino ja juhtkangi abil
Tehke infrapuna-termomeeter COVID-19 jaoks MicroPythoni abil: 8 sammu
Tehke infrapuna termomeeter COVID-19 jaoks MicroPythoni abil ise: koroonaviiruse (COVID-19) puhangu tõttu peab ettevõtte personal mõõtma ja registreerima iga töötaja temperatuuri. See on personalile tüütu ja aeganõudev ülesanne. Nii et ma tegin selle projekti: töötaja vajutas nuppu, see