Sisukord:
- Tarvikud
- Samm: tutvuge Stepper Driver Pinoutiga
- Samm: ühendage Arduino 5V/GND oma leivalauaga
- Samm: ühendage +/- rööpad VIO/GND-ga
- Samm: ühendage DIR/STEP Arduino digitaalsete kontaktidega
- Samm: jätkake ja lisage see kondensaator…
- 6. samm: minge edasi ja ühendage see GND
- Samm: ühendage mootor draiveriga
- 8. toiming: ühendage EN, MS1 ja MS2 võrguga "-"
- Samm: jootke naissoost toitepistik kahe juhtme külge
- Samm: ühendage äsja joodetud naissoost pistik
- Samm: ühendage need VM/GND -ga
- 12. samm: imetlege oma kätetööd
- 13. samm: valikuline - kontrollige oma VREF -i
- 14. samm: nupud
- Samm: lisage mikrofoniplaat
- 16. samm: see peaks olema lõpptulemus
- 17. samm: kood
- 18. samm: paigaldamine ja rataste seadistamine
- 19. samm: lõplik seadistamine
Video: Arduino Cradle Rocker: 19 sammu (piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:46
Vabandust, ma ei suutnud vastu seista intensiivsele muusikale, mida minu videotöötlus soovitas.
Mul sündis hiljuti esimene laps ja mul oli juba puidust häll, mille onu (kes on vinge puutöömees) mu vennapojale tegi. Mu vennapoeg oli sellest juba ammu välja kasvanud, nii et võtsin selle hea meelega vastu ja väldisin kogu raha kulutamist ükskõik millisele hällile/lapsevankrile, mille peale emablogijad mu naise minestasid. Häll on üsna lihtne disain, põhimõtteliselt kaks püstikut, mille kaudu on poldid, mis toetavad hälli korpust. Selle kinnitamiseks on eemaldatav tihvt.
Mõne nädala jooksul leidsime, et suudame sageli kerget närvilisust summutada, lastes hälli pisut õõtsutada, kuni meie poiss end sisse seadis. Õhtul, kui me sellest teada saime, veetsin hilisõhtul paar 10 -minutilist venitust, käsi ulatub katte alt, õõtsutades teda uniselt, õnnelik, et leidsin viisi, kuidas teda rahustada ilma voodist välja tõusmata. hommikul kinnitasin nööri ja väikese karabiini, et saaksin hälli kõigutada, ilma et peaksin kätt sirutama.
Hommikul pärast seda hakkasin ma ajurünnakuid tegema, et lasta robotil see laps minu jaoks rokkida. Sisestage Arduino…
Tarvikud
Ok, see oli minu esimene Arduino projekt kunagi, nii et tegin mõningaid katseid ja katsetusi ning olen kindel, et minu kujunduses on arenguruumi, kuid siin on minu osade nimekiri: Arduino Uno (13 dollarit) kõige juhtimiseks komplekt (10 dollarit) juhtmete ühendamiseks
Sammumootor (14 dollarit) See on kõige lõbusam tükk, sest see on asi, mis teeb kogu töö. Alustasin pisut väiksema pöördemomendiga, kuid siis sain selle ja see töötab päris hästi. Võite vabalt hankida veelgi võimsama. Astmelised mootoridraiverid (10–30 dollarit) See asub Arduino ja mootori vahel. See konkreetne seade suudab ilmselt mootorit vaiksemalt juhtida kui mõned teised, nii et ma läksin sellega, kuna mootor jääb minu (ja mu poja) peast mõne jala kaugusele, kui me magame. Algselt ostsin ühe TMC2209 draiveri umbes 10 dollari eest, kuid lõpuks ostsin 4 -se paki, sest mul oli algul mõningaid raskusi ja tahtsin veenduda, et ma pole mingil hetkel tahvlit praadinud. Lõppkokkuvõttes tappisin tegelikult 3 lauda, mis viib mind järgmise punkti juurde … Kondensaatorid! ($ 10) Teil on tõesti vaja ainult 1 47 uF 50 V kondensaatorit, nii et see 240 -karp oli liiga suur. 36 V toiteallikas (17 dollarit) ostsin algselt nõrga 12 V toiteallika, seejärel sain teada, et see oli kõigi mu probleemide allikas ja sain sellise, mis oli lähemal maksimaalsele pingele, millega mu samm -mootor hakkama sai. Kui kasutate mõnda muud mootorit või astmelist juhti, veenduge, et see talub pinget (V) ja toite voolutugevus (A) on vähemalt sama kõrge kui mootori maksimaalne võimendus. Naissoost pistikupesad (8 dollarit) See on toiteploki pistikupesa. Leivalauale kleepimiseks peate need mõne juhtme külge jootma. Suur pakk džemprid (9 dollarit), et saaksin juhtnupud ruumis kuhu iganes soovida.
Nupud (8 dollarit) sisse/välja lülitamiseks jne
Mikrofonivõimendi (11 dollarit) Oh, yall ei teadnud, et ka see on heli aktiveeritud?
Mõned väikesed rihmarattad (8 dollarit) kasutasin neid, kuid võib olla paremaid alternatiive. Lisateavet hiljem. Teil on kindlasti vaja ka jootekolvi ja kõike, mida soovite mootori paigaldamiseks kasutada. Mina isiklikult tegin neljast kokku keeratud puutükist kareda kasti ja kruvisin need siis teise puutüki külge, mis on umbes minu hällijala laius. Praegu on mul see lihtsalt kinnitatud, sest ma ei tea, kas ma tahan onu hälli abielluda.
Samm: tutvuge Stepper Driver Pinoutiga
Minu kasutatud modelleerimisprogrammil ei olnud täpselt seda draiveritahvlit, nii et peate sellele pildile viitama. Olen kõik paigutanud samasse suunda nagu see pilt.
Samm: ühendage Arduino 5V/GND oma leivalauaga
Ühendage Arduino 5V juhe oma leivalaua ühel küljel asuva "+" rööpaga Ühendage ühe Arduino GND juhe leivaga samal küljel asuva rööpaga "-"
(ignoreeri
Samm: ühendage +/- rööpad VIO/GND-ga
Ühendage traat "-" rööbast astmelise juhtplaadi vasakus alanurgas asuva GND-ga. Ühendage traat "+" rööbast VIO-ga
Samm: ühendage DIR/STEP Arduino digitaalsete kontaktidega
Ühendage samm -juhtplaadi DIR- ja STEP -tihvtid kahe Arduino digitaalse tihvtiga. Ma kasutasin vastavalt tihvte 2 ja 3, kuid see pole oluline, kui määrate tihvtid hiljem oma koodi.
Samm: jätkake ja lisage see kondensaator…
Põlesin välja 2 astmelist draiveriplaati, kuna mul polnud kondensaatorit, nii et lähme edasi ja lisame 47uF 50V kondensaatori draiveriplaadi VM/GND tihvtidele. Veenduge, et "-" tihvt kondensaatoril on leivaplaadi GND tihvtis (kondensaatori vastaval küljel on "-")
6. samm: minge edasi ja ühendage see GND
GND-l, millele kondensaatori just lisasite, jätkake ja ühendage see sama "-" rööpaga nagu teine GND.
Samm: ühendage mootor draiveriga
Milline tihvt kuhu läheb, sõltub ostetud mootorist, kuid minu loetletud on ühendusskeem amazoni loendis.
Minu mootorile -
Ühendage roheline ja must ühendusega M2B ja M2A
Punase ja sinise ühendamine M1A ja M1B -ga Märkus. Kui teie mootoril pole mingil põhjusel diagrammi, saate multimeetri olemasolu korral hõlpsalt aru saada, millised juhtmed moodustavad vooluahela. Seadke oma multimeeter madalale võimendusele ja lülitage mootor välja. Puudutage ühte multimeetri juhtmest ühe mootorijuhtme juurde ja proovige seejärel kõiki teisi juhtmeid teise juhtmega. Kui saate takistuse näidu, moodustavad need kaks juhtmest 1 vooluahela ja ülejäänud kaks juhtmest teise.
8. toiming: ühendage EN, MS1 ja MS2 võrguga "-"
Ma ei ole täiesti kindel, kas see on vajalik, kuid usun, et see seab mootori TMC2209 draiveris väiksema mikrosammu sätte. Saate need ühendada rööpaga "-", mis on neile kõige lähemal, kuna ühendame selle hiljem teise küljega.
Samm: jootke naissoost toitepistik kahe juhtme külge
Ma ei ole jootmise osas maailma parim, nii et peate seda mujalt otsima, kuid ma tegin seda nii. Ma painutasin juhtmete otsad nii, et need asetseksid tasapinnaliste pistikute juhtmete vastas, ja jootsin juhtme juhtme külge. Mul ei olnud nööriga termokahanevat kraami, nii et mässisin need lihtsalt imeliselt elektrilindiga.
Samm: ühendage äsja joodetud naissoost pistik
Palun ärge ühendage oma tegelikku toiteallikat veel. Punane juhe "+", must "-"
Samm: ühendage need VM/GND -ga
Ühendage need "+" ja "-" rööpad VM-i ja selle kõrval asuva GND-ga. Need, millel kondensaator peal.
12. samm: imetlege oma kätetööd
Olgu, mootor ja juht on nüüd täielikult seadistatud! Siit edasi hakkame lihtsalt kontrollima. Muide, edasi minnes:
- Kui olete oma draiveri mingil põhjusel lahti ühendanud, ärge proovige seda ühendada, kui teie 36 V toide on ühendatud. Ma tappisin oma kolmanda draiveriplaadi niimoodi.
- Ühendage 36 V toide enne Arduino toite ühendamist. Ma isiklikult Arduinot ei praadinud, kuid nägin teel palju hoiatusi selle kohta.
13. samm: valikuline - kontrollige oma VREF -i
TMC2209 -l on potentsiomeeter, mis juhib mootori voolu. Kui teil on sama draiver, mis mul, saate selle kohta lugeda siit. Kui soovite seadet reguleerida:
- Ühendage kogu toide lahti ja ühendage mootori juhtmed draiverist lahti.
- Ühendage juht juhi EN (lubamise) tihvtiga lahti. See on nööpnõel vasakus ülanurgas.
- Ühendage oma mootori toiteallikas (36V)
- Kasutades 20 V pingega multimeetrit, puudutage ühte juhet GND allika juurde (ma kasutasin traati, mis ühendati minu rööpaga) ja puudutage teist juhet VREF-i tihvtiga. Palun ärge puudutage juhtmest midagi muud, kui te seda teete, saate juhi lühistada.
- Potentsiomeetri kruvi õrnaks reguleerimiseks kasutage väikest kruvikeerajat. Minu pardal on vastupäeva = rohkem võimsust. Minu VREF loeb isiklikult ~ 0.6V.
14. samm: nupud
Järgmisena ühendage oma nupud nii. Nad ei vaja võimu.
- Ühendage nuppude leivalaua "-" rööbas ühe Arduino GND-ga. Soovi korral saate selle ka lihtsalt teise leivalaua "-" rööbastelt aheldada.
- Ühendage iga nupu üks tihvt "-" rööpaga
- Ühendage iga nupu teine tihvt Arduino digitaalse tihvtiga.
Kasutasin 4 nuppu: mootor sisse/välja
Mootor jätkab
Mikrofon sisse lülitatud
Mikrofon välja lülitatud
Lisateavet selle kohta, kui jõuame koodi juurde, kuid ma kasutasin erinevaid mikrofoninuppe lihtsalt sellepärast, et mul polnud LED -e, mis annaksid mulle teada, kas mikrofon on sisse või välja lülitatud, nii et erinevate sisse- ja väljalülitusnuppude olemasolu muutis selle lollikindlaks.
Samm: lisage mikrofoniplaat
See on lihtne ja Adafruitil on siin head juhised (ja jootmise põhitõed!).
- Ühendage "-" GND-ga
- Ühendage GND mikrofoniplaadil "-" (saate GND otse GND-ga ühendada ja eelmise sammu vahele jätta)
- Ühendage VCC Arduino 3.3V toitega. See on oluline, kuna see toiteallikas on vähem mürarikas kui 5 V, mille tulemuseks on paremad mikrofoninäidud
- Ühendage OUT Arduino ANALOG IN pistikuga. Mina kasutasin A0.
16. samm: see peaks olema lõpptulemus
Kõik peaks nüüd valmis olema. Siin on pilt lõplikust skeemist ja minu juhtmete segadusest tegelikkuses. Vaatame mõnda koodi!
17. samm: kood
Ok, vaatame koodi! See pole küll minu kõige puhtam töö, aga saab töö tehtud. Olen lisanud kommentaare, et siin kõike selgitada, kuid olge minuga. Selle kõige jaoks kasutasin Arduino IDE -d (saadaval Windowsis ja Macis tasuta). Jist on järgmine: määrake pöörlemiskiirus ja vahemaa
Määrake mitu kivimit (kiiget), mida teha.
Pöörake seadistatud kaugust 1 hooga. Pöörake määratud arvu kordi.
Kõige selle vahel jälgige nupuvajutusi või kuulake mikrofoni, et näha, kas mootor peaks sisse lülitama. Peate reguleerima kiiruse, kauguse ja mikrofoni tundlikkuse väärtusi. Mootori kiirus mõjutab helitugevust ja pöördemomenti. Mida kiiremini mootor läheb, seda valjem on see ja seda väiksem on pöördemoment. Minu oma on praegu peaaegu vaikne, seega on võimalik see tööle panna ilma palju heli tegemata.
#include // "tavaline" samm -mootoriteek
//#define DEBUG 1 // tühista see kommentaar, kui soovid reguleerida mikrofoni taset // Nuppude seadistus - need vastavad kohtadele, kus nuppudega ühendatud digitaalsed tihvtid const int motorEnablePin = 10; const int jatkuPin = 11; const int micDisablePin = 12; const int micEnablePin = 13; // Mikrofoni seadistamine - A0 on siin mikrofoni analoog. Näidisaken on millisekundites int intPin = A0; const int sampleWindow = 1000; allkirjastamata int proov; bool micEnabled = vale; topeltmikTundlikkus = 0,53; // peate ilmselt seda muutma // Minu jaoks oli umbes.5 piisavalt hea, et mitte vägisi väriseda //, kuid süttib väikeste nutude korral int stepsPerRevolution = 3200; // muuda seda, et see vastaks teie mootori sammude arvule ühe pöörde kohta // Minu mootor on 200 sammu/pööre // Aga ma seadistasin draiveri 1/16 mikrosammuga // nii 200*16 = 3200 … ausalt öeldes pole aimugi, kas see on õige viis // seda teha Stepper myStepper (stepsPerRevolution, 2, 3); // 2 & 3 on DIR & STEP tihvtid int stepCount = 0; int mootorikiirus = 95; // peate seda kohandama vastavalt oma hällile ja beebi kaalule int numSteps = 90; // Kaugus, mille mootor liigub. // Peate seda kohandama vastavalt mootorile kinnitatava ratta raadiusele //. See ja kiirus on tõenäoliselt katse -eksituse meetod. // Märkus - samm -mootoritel suurem kiirus = väiksem efektiivne pöördemoment // Kui teil pole piisavalt pöördemomenti, jätab teie mootor sammud vahele (ei liigu) int oldmotorButtonValue = HIGH; bool lubatud = vale; // mootor lubatud? int loopStartValue = 0; int maxRocks = 100; // mitu korda sa tahad seda rokkida enne int rockCount = 0; void setup () {#ifdef DEBUG Serial.begin (9600); // silumislogimiseks #endif pinMode (motorEnablePin, INPUT_PULLUP); // See on säte, mille abil nupud töötavad ilma toite pinMode (jatkuPin, INPUT_PULLUP); pinMode (micEnablePin, INPUT_PULLUP); pinMode (micDisablePin, INPUT_PULLUP); myStepper.setSpeed (motorSpeed); // määrab mootori kiiruseks eelnevalt määratud} void loop () {int motorButtonValue = digitalRead (motorEnablePin); // digitalRead loeb lihtsalt nuppude väärtusi int jatkuVäärtus = digitalRead (jatkuPin); // See tuvastab mootorinupu vajutamise ja takistab selle vallandumist rohkem kui üks kord klõpsu korral, kui (motorButtonValue == HIGH && oldmotorButtonValue == LOW) {lubatud =! Lubatud; } micCheck (); // Kui mootor on välja lülitatud ja mikrofon sisse lülitatud, kuula, kas beebi nutab, kui (! Lubatud && micEnabled) {kui (getMicReading ()> = micSensitivity) lubatud = true; } if (lubatud) {stepsPerRevolution = stepsPerRevolution * -1; // vastupidine suund // Minu seadistusega on efektiivsem tagurdada // esimesel hoos. Saate selle panna pärast tsüklit // kui teie puhul see nii pole // pöörlege mootoriga ülalmääratud vahemaa (int i = loopStartValue; i <numSteps; i ++) {// kontrollige, kas välja lülitada int tempmotorButtonValue = digitalRead (motorEnablePin); if (tempmotorButtonValue! = motorButtonValue) {rockCount = 0; // Need kaks järgmist rida "salvestavad" mootori asendi, nii et järgmine kord, kui selle sisse lülitate // jätkab see reisimist nii, nagu te poleks seda välja lülitanud. See hoiab ära viskamise // teie liikumiskaugused loopStartValue = i; // salvestada positsiooni stepsPerRevolution = stepsPerRevolution * -1; // säilitada suund oldmotorButtonValue = tempmotorButtonValue; murda; } checkContinue (jatkuVäärtus); // kontrollige, kas jätkamisnuppu on vajutatud micCheck (); myStepper.step (stepsPerRevolution / 50); // kui palju samme tuleb teha ühe tsükli kohta, // peate võib -olla seda korrigeerima // veenduge, et jätkame silmuse täielikku kaugust, kui tsükkel on lõppenud // see tuleb mängu, kui lülitasite mootori ise välja ja see "salvestas" positsioon if (i == numSteps - 1) {loopStartValue = 0; }}} viivitus (100); // tehke 100 millise paus enne järgmise roki tegemist. Peate seda kohandama. if (lubatud) checkComplete (); oldmotorButtonValue = motorButtonValue; // seda kasutatakse topeltklõpsude vältimiseks} // See kood on otse Adafruitilt. double getMicReading () {unsigned long startMillis = millis (); unsigned int peakToPeak = 0; // tipust tippu allkirjastamata int signalMax = 0; allkirjastamata int signalMin = 1024; while (millis () - startMillis <sampleWindow) {micCheck (); if (digitalRead (motorEnablePin) == LOW) lubatud = true; sample = analogRead (micPin); if (sample signalMax) {signalMax = proov; // salvesta ainult maksimaalsed tasemed} else if (sample
for (int i = loopStartValue; i <numSteps/2; i ++) {
myStepper.step (stepsPerRevolution * -1 / 50); // samm 1/100 revolutsioonist:
}
} }
18. samm: paigaldamine ja rataste seadistamine
See on minu jaoks endiselt WIP, sest nagu ma ütlesin, pole ma kindel, kas tahan kruvisid oma hälli veel panna. See, kuidas ma kaevanduse üles seadsin, on järgmine:
- Pange klamber, mis toimib hällist väljuvana, nii et mu ratas saaks sirgjooneliselt tõmmata
- Keerasin toorkasti kokku, et mootor sisse panna, ja kruvisin selle alusplaadi külge, mille kinnitasin hälli jala külge
- Valmistas kohandatud puidust rihmaratta, millel oli auk, et see sobiks väikese astmelise rihmarattaga. Tegin keskaugu väga tihedaks ja lihvisin sammurattaratast. Puurisin läbi ratta augu keskele, et pääseda ligi metallist rihmaratta kruvile, et seda samm -mootorile pingutada.
- Jooksis nööri hällist "käsivarrest" ratta külge. Kinnitasin nööri, lastes selle läbi puuritud augu ja teipides lihtsalt paika.
Parem lahendus kolmandale etapile on kõigepealt osta suurema läbimõõduga rihmaratas. Minu oma on soone sees veidi alla 3 läbimõõduga ja töötab minu konkreetse hälli jaoks tõesti hästi.
Minu esimene versioon kasutas ratta asemel kätt. See ei töötanud peaaegu sama hästi, sest jõudu ei rakendatud järjekindlalt ja see oli ka väga vastuvõtlik, kui algasend polnud õige. Ratta kasutamine lahendab need probleemid. Ma lõbustasin ka väikese rihmaratta süsteemi abil, kuid lõpuks ei olnud seda vaja, sest mu ratas andis mulle piisavalt pöördemomenti.
19. samm: lõplik seadistamine
Paigaldage mikrofon oma lapse lähedale, kuid kohta, kus nad ei kavatse juhtmeid lüüa. Pange nupud kuhu iganes soovite, kui teil on lõppsihtkohta jõudmiseks piisavalt juhtmeid. Samuti võite lihtsalt asendada nupud arduino wifi seadistusega, kuid ma pole veel nii sügavale läinud. Õnn kaasa!
Soovitan:
Kuidas: Raspberry PI 4 peata (VNC) installimine RPI-pildistaja ja piltidega: 7 sammu (koos piltidega)
Kuidas: Raspberry PI 4 peata (VNC) installimine Rpi-pildistaja ja piltidega: kavatsen seda Rapsberry PI-d kasutada oma blogis hunniku lõbusate projektide jaoks. Vaadake seda julgelt. Tahtsin uuesti oma Raspberry PI kasutamist alustada, kuid mul polnud uues asukohas klaviatuuri ega hiirt. Vaarika seadistamisest oli tükk aega möödas
Atari punkkonsool beebiga 8 sammu järjestus: 7 sammu (piltidega)
Atari punkkonsool koos beebi 8-astmelise sekveneerijaga: see vaheehitus on kõik-ühes Atari punk-konsool ja beebi 8-astmeline järjestus, mida saate freesida Bantam Tools töölaua PCB-freespingis. See koosneb kahest trükkplaadist: üks on kasutajaliidese (UI) plaat ja teine on utiliit
Polt - DIY juhtmeta laadimise öökell (6 sammu): 6 sammu (piltidega)
Bolt - DIY juhtmeta laadimise öökell (6 sammu): Induktiivsed laadimised (tuntud ka kui juhtmeta laadimine või juhtmeta laadimine) on traadita jõuülekande tüüp. See kasutab kaasaskantavatele seadmetele elektrit pakkumiseks elektromagnetilist induktsiooni. Kõige tavalisem rakendus on Qi traadita laadimisst
Arvuti demonteerimine lihtsate sammude ja piltidega: 13 sammu (piltidega)
Arvuti demonteerimine lihtsate sammude ja piltidega: see on juhis arvuti demonteerimiseks. Enamik põhikomponente on modulaarsed ja kergesti eemaldatavad. Siiski on oluline, et oleksite selles osas organiseeritud. See aitab vältida osade kaotamist ja ka kokkupanekut
Odavaim Arduino -- Väikseim Arduino -- Arduino Pro Mini -- Programmeerimine -- Arduino Neno: 6 sammu (piltidega)
Odavaim Arduino || Väikseim Arduino || Arduino Pro Mini || Programmeerimine || Arduino Neno: …………………………. Palun TELLI minu YouTube'i kanalile, et saada rohkem videoid ……. .See projekt käsitleb kõigi aegade väikseima ja odavaima arduino liidestamist. Väikseim ja odavaim arduino on arduino pro mini. See sarnaneb arduinoga