Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-23 15:11
Jag hade liten eller ingen erfarenhet av att köra stegmotorer, så innan jag designade, skrev ut, monterade och programmerade 'Antique' Auto Correcting Analog Clock (https://www.instructables.com/id/Antique-Auto-Correcting-Analog-Clock/) med en stegmotor bestämde jag mig för att designa och testa programvaran med en mycket enklare testarmatur. Om du, som jag, har liten eller ingen erfarenhet av stegmotorer, så hoppas förhoppningsvis denna korta instruerbara med källkod.
Testarmaturen kräver följande komponenter:
- En prototypplatta.
- En Adafruit Feather ESP32 med honhuvuden.
- Ett ULN2003 -baserat stegstyrkort.
- En 28BYJ-48 5vdc stegmotor.
- Några tröjor från man till kvinna.
- Ett Adafruit 3.7vdc litiumbatteri.
- En 3D -tryckt indikatorhand.
Stegkontrollen, stegmotorn och bygelkablarna som jag använde ingår i ett 5-pack som jag köpte som ett kit online (sök efter "TIMESETL 5st DC 5V Steppmotor 28BYJ-48 + 5st ULN2003 Driver Board + 40st hona för kvinnlig bygelkabel ").
Batteriet är valfritt. Observera batteriets utgångar 3,7vdc, men stegreglerkortet och steget är 5vdc. Testarmaturen fungerar endast på batteri, även vid lägre spänning.
Jag har inkluderat en video som visar stegen som krävs för att ladda ner programvaran till ESP32, koppla ESP32 till stegmotorkontrollen och sätt i stegmotorn och batteriet.
Steg 1: Kabeldragning
Jag använde de manliga / kvinnliga bygelkablarna som ingår i satsen för att ansluta testarmaturen. Sex ledningar krävs och sätts in enligt följande:
- ESP32 stift 14 (hane) till stegbräda stift IN4 (hona).
- ESP32 stift 32 (hane) till stegbräda stift IN3 (hona).
- ESP32 stift 15 (hane) till stegbräda stift IN2 (hona).
- ESP32 stift 33 (hane) till stegbräda stift IN1 (hona).
- ESP32-stift "GND" (hane) till stegbrädans stift "-" (hona).
- ESP32 -stift "USB" (hane) för USB -drift ELLER "BAT" (hane) för batteridrift, till stegkortet "+" (hona).
När trådarna har satts in och dubbelkontrollerats kopplar du in stegmotorkabeln i stegmotorns styrkortskontakt. Anslutningen är nycklad och passar bara på ett sätt.
Slutligen, om du använder ett batteri, anslut det till ESP32 -batterikontakten.
Steg 2: Indikator
För en indikator på stegmotorn har jag designat och 3D -skrivit ut en indikatorhand "Hand.stl". Jag skrev ut indikatorhanden på.15 mm lagerhöjd, 20% fyllning utan stöd och tryckte den sedan på stegmotoraxeln.
Som ett alternativ kan tejp, kartong eller annat material användas som indikator.
Steg 3: Programvara
Jag skrev stegtestprogramvaran i Arduino 1.8.5 -miljön. Om du inte redan har gjort det, ladda ner Arduino -miljön och nödvändiga USB -drivrutiner till din dator och installera dem. Besök också Adafruit -webbplatsen för ytterligare Adafruit ESP32 -relaterad programvara. Jag tyckte att den här länken var till stor hjälp: Adafruit ESP32 och Arduino -miljön.
Med en USB -kabel ansluten mellan din dator och ESP32 och "Stepper.ino" laddad i Arduino -miljön, ladda ner "Stepper.ino" till ESP32.
När den har laddats ner bör steget stiga 6 grader en gång per sekund.
Jag skrev den här testprogramvaran av två skäl; först, för att lära sig hur man driver en stegmotor, och för det andra att konvertera steget 4096 steg per rotation av stegmotorn till 60 en sekund 6 graders "fästingar" för klockan.
Funktionen "Steg (nDirection)" driver stegmotorn. Denna funktion upprätthåller en lokal (statisk) heltalsvariabel "nPhase", som antingen ökas eller minskas med en (varje gång funktionen anropas), enligt tecknet på funktionsargumentet nDirection. Denna variabel är begränsad i intervallet till 0 till 7, som, när den används tillsammans med väskströmställaren, driver motorfaserna i enlighet med tillverkarens specifikationer för varje steg.
Funktionen "Update ()" avgör när och hur många steg som ska vidtas för varje fästing för att jämnt fördela 60 fästingar per 360 graders rotation. Denna funktion stegar stegmotorn antingen 68 eller 69 steg för varje fästing. Till exempel, om funktionen bara använde 68 steg per fästing, skulle (68 steg * 60 fästingar) = 4080 steg inte vara tillräckligt med steg för att slutföra 360 graders rotation (kom ihåg att steget kräver 4096 steg för 360 graders rotation). Och om funktionen använde 69 steg per fästing, då (69 steg * 60 fästingar) = 4140 skulle vara för många steg. Den enkla algoritmen jag skrev fördelar jämnt 68 och 69 stegfästingar under hela 360 graders rotation och kan avgöra vilken rotationsriktning som är snabbast till önskad andra räkning (används i klockan).
Och det är så jag utformade och testade mjukvaran för 'Antik' Auto Correcting Analog Clock.
Om du har några förslag och / eller frågor får du gärna kommentera så ska jag göra mitt bästa för att svara.
Rekommenderad:
Arduino Car Reverse Parking Alert System - Steg för steg: 4 steg
Arduino Car Reverse Parking Alert System | Steg för steg: I det här projektet kommer jag att utforma en enkel Arduino Car Reverse Parking Sensor Circuit med Arduino UNO och HC-SR04 Ultrasonic Sensor. Detta Arduino -baserade bilomvändningsvarningssystem kan användas för autonom navigering, robotavstånd och andra
Steg för steg PC -byggnad: 9 steg
Steg för steg PC -byggnad: Tillbehör: Hårdvara: ModerkortCPU & CPU -kylarePSU (strömförsörjningsenhet) Lagring (HDD/SSD) RAMGPU (krävs inte) CaseTools: Skruvmejsel ESD -armband/mathermisk pasta med applikator
Tre högtalarkretsar -- Steg-för-steg handledning: 3 steg
Tre högtalarkretsar || Steg-för-steg-handledning: Högtalarkretsen förstärker ljudsignalerna som tas emot från miljön till MIC och skickar den till högtalaren varifrån förstärkt ljud produceras. Här visar jag dig tre olika sätt att göra denna högtalarkrets med:
Steg-för-steg-utbildning i robotik med ett kit: 6 steg
Steg-för-steg-utbildning i robotik med ett kit: Efter ganska många månader av att bygga min egen robot (se alla dessa), och efter att två gånger ha misslyckats med delar, bestämde jag mig för att ta ett steg tillbaka och tänka om min strategi och riktning. De flera månaders erfarenhet var ibland mycket givande och
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): 8 steg
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): ultraljudsgivare L298N Dc kvinnlig adapter strömförsörjning med en manlig DC-pin Arduino UNOBreadboardHur det fungerar: Först laddar du upp kod till Arduino Uno (det är en mikrokontroller utrustad med digital och analoga portar för att konvertera kod (C ++)