Innholdsfortegnelse:
- Trinn 1: Ball Balancer - Deler
- Trinn 2: Ball Balancer - Montering
- Trinn 3: Ball Balancer Wiring & Arduino Sketch
- Trinn 4: PID Fiddler 2 - Deler
- Trinn 5: Pid Fiddler 2 - Kabling, montering og Arduino -skisse
- Trinn 6: Bruke Ball Balancer og PID Fiddler
- Trinn 7:
Video: Ball Balancer og PID Fiddler: 7 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:24
Dette prosjektet presenteres for folk som har erfaring med bruk av en Arduino. Forhåndskunnskap om bruk av servoer, OLED -skjermer, gryter, knapper, lodding vil være nyttig. Dette prosjektet bruker 3D -trykte deler.
Ball Balancer er en PID -testrigg for å eksperimentere med PID -tuning. PID Fiddler er en fjernkontroll for justering av PID -tuning.
En PID brukes når du trenger mer kontroll over bevegelsen. Et godt eksempel er en balanseringsrobot. Roboten må gjøre små justeringer for å opprettholde balansen, og rask respons for å fange seg selv hvis den støter på et støt eller trykk. En PID kan brukes til å justere hjulmotorens respons for å opprettholde balansen.
En PID krever tilbakemelding fra en sensor. En balanseringsrobot bruker gyroer og akselerometre for å måle robotens absolutte vinkel. Utgangen til sensoren brukes av PID for å kontrollere motorene for å opprettholde balansen.
Så hvorfor laget jeg en kjedelig ballbalanser? Visst er det kult, men balanseringsroboter velter når de ikke er riktig innstilt. Balanseringsroboter er ikke den beste enheten for å eksperimentere med PID -tuning. Kulebalansereren er mye mer stabil og er et godt visuelt verktøy for å se effekten av PID -tuning. Kunnskapen som er oppnådd ved å justere ballbalansen kan brukes på tuning av en balanseringsrobot.
Ball Balancer er en skinne på et svingpunkt. På skinnen er en ball som beveger seg frem og tilbake på skinnen når skinnen tippes. Skinnen er tippet med en servo. På enden av skinnen er en sensor som måler ballens avstand fra sensoren. Inngangen til PID er ballens avstand fra sensoren, og utgangen til PID er servoen som tipper skinnen og beveger ballen.
Jeg bruker Arduino PID -biblioteket.
PID Fiddler er det jeg bruker til å stille PID -verdiene. Du trenger ikke en, men det hjelper. PID Fiddler er fjern fra Ball Balancer, den kobles til med bare to ledninger, og den kan kobles til og fra mens Ball Balancer er i gang. Når du har funnet de beste verdiene, kan verdiene bli hardkodet i prosjektskissen.
Den ekstra innsatsen for å gjøre PID Fiddler lønner seg i tide det tar å gjøre tuningendringer på PID. Du kan raskt se resultatene av endringene dine. Og den kan gjenbrukes på fremtidige prosjekter som bruker PID -er. For ikke å snakke om at det er morsomt å bygge, og ser kult ut!
Trinn 1: Ball Balancer - Deler
3D -trykte deler funnet her:
(Monteringsinstruksjoner finnes i instruksjonene etter utskrift i lenken ovenfor)
1 - 1 "x 1/8" aluminiumsvinkel, kuttet til 500 mm lengde.
1 - Adafruit VL53L0X Time of Flight Distance Sensor:
1 - Hobby Servo med kontrollhorn
1 - Stiv ledning for kobling (ca. 7 mm)
- Diverse. Monteringsskruer
1- Arduino Uno
2 - LED (rød, grønn)
3 - 330 Ohm motstander
- Diverse. Stikkledere og brødbrett
- Flat svart spraymaling
1 - Hvit bordtennisball
Trinn 2: Ball Balancer - Montering
Monteringsinstruksjoner for Ball Balancer finnes her:
Noen flere tips:
Spray maling innsiden av skinnen flat svart for å redusere feil fra sensoren.
Kobling (vist på bildet ovenfor):
- Bruk en stiv ledning på omtrent 7 mm i lengden for kobling mellom servokontrollhornet og sensorbraketten.
- Nivellér skinnen, sett kontrollhornet horisontalt i midten av servobevægelsen (servoverdi 90).
- Bøy en liten løkke i toppen av tråden, og en z -formet bøyning i bunnen av tråden.
- Sett z -enden inn i kontrollhornet, merk punktet i midten av løkken på sensorbraketten.
- Bor et lite hull og bruk en liten skrue for å feste ledningen til sensorbraketten.
Trinn 3: Ball Balancer Wiring & Arduino Sketch
Se bildet ovenfor for ledninger.
Bruk en separat strømforsyning for servoen. Dette kan være en benkestrømforsyning eller batteripakke. Jeg bruker en benk strømforsyning satt til 5V.
PID Fiddler blir festet med to ledninger, en til Pin 1 (Serial RX), og en til jord.
Skissen er gitt.
Skisse Notater: Settpunktverdien endres fra 200 mm til 300 mm hvert 15. sekund. Det er nyttig å bruke den serielle skjermen på Arduino IDE for å se sensorutgangen.
Trinn 4: PID Fiddler 2 - Deler
3D -trykt skjold og knotter finnes her:
4 - 10 Kohm potter
1- Midlertidige kontaktknapper:
1- Adafruit monokrom 128x32 I2C OLED grafisk skjerm:
1- Arduino Uno
- diverse. topptekst (0,1 tommer), rekkeklemmer, tilkoblingskabel
Trinn 5: Pid Fiddler 2 - Kabling, montering og Arduino -skisse
Bruk koblingsskjema for tilkobling av skjoldet.
Monteringstips:
-For tips om hvordan du lager tilpassede kretskort, kan du se min instruksjonsboks:
- Super limhoder på 3D -trykt skjold.
- Jeg bruker wirewire.
- Bruk gryter med firkantede bunn og klipp av festetappene, lim dem på plass.
- Komponentene er loddet. Bruk kvinnelig topptekst for OLED, og OLED kan enkelt kobles fra og fjernes for bruk i andre prosjekter.
Skisse notater:
- Koble en ledning fra rekkeklemmen (kablet til pin 2, TX) til pin 1 (seriell RX) på Ball Balancer Arduino. Koble en ledning mellom rekkeklemmen (jord) til bakken på Ball Balancer Arduino.
- Hold inne knappen, juster knappene for å justere PID -innstillingene, slipp knappen for å sende verdiene til Ball Balancer.
Trinn 6: Bruke Ball Balancer og PID Fiddler
Det eneste som gjenstår er å begynne å leke med det!
- Legg ballen på skinnen.
- Hold knappen nede på PID Fiddler, sett P, I og D til null, ST til 200 for å starte.
- Servoen slutter å svare.
- Begynn nå å eksperimentere med forskjellige P-, I- og D -verdier for å se hvordan det påvirker responsen og bevegelsen til ballen.
- Prøv å endre verdier for Sample Time (ST). Prøvetiden er tiden i millisekunder innspillingen blir samlet inn. Verdiene er gjennomsnittlige over prøvetiden. Sensorutgangen til et stille mål vil variere med en liten mengde. Hvis prøvetiden er for liten, vil utskriften til PID "jitter". PID prøver å korrigere for støyen i sensoravlesningene. Ved å bruke lengre prøvetider vil støyen jevnes ut, men utgangen til PID -en blir rykkete.
Trinn 7:
Ikke brukt
Anbefalt:
FLEXBALL - en hundre piksler fleksibel PCB -ball med WiFi: 6 trinn (med bilder)
FLEXBALL - en hundre piksler fleksibel PCB -ball med WiFi: Hei beslutningstakere, det er maker moekoe! Flexball er basert på en fleksibel kretskort som er utstyrt med 100 WS2812 2020 adresserbare lysdioder. Den styres av en ESP8285-01f - den minste ESP -baserte modulen fra Espressif. I tillegg har den en ADXL345 -akselerasjon
Automatisk poengsum for et lite Skee-Ball-spill: 10 trinn (med bilder)
Automatisk scoring for et lite Skee-Ball-spill: Hjemmelagde Skee-Ball-spill kan være veldig moro for hele familien, men deres ulempe har alltid vært mangelen på automatisk scoring. Jeg har tidligere konstruert en Skee-Ball-maskin som tratt spillballene i separate kanaler basert på sc
Tinee9: Arduino Self-Balancer: 5 trinn (med bilder)
Tinee9: Arduino Self-Balancer: Tiny9 presenterer Arduino Self-Balancer bare ved hjelp av en Arduino Nano, en servo og Tiny9 LIS2HH12-modulen
PID-basert linje etter robot med POLOLU QTR 8RC-sensor Array: 6 trinn (med bilder)
PID-basert linje etter robot med POLOLU QTR 8RC-sensor Array: Hei! Dette er min første oppskrift på instrukser, og i dag tar jeg deg nedover veien, og forklarer hvordan du kan mobbe en PID-basert linje etter robot ved hjelp av QTR-8RC før vi går videre til bygningen av roboten, må vi forstå
Hastighetskontroll av likestrømsmotor ved bruk av PID -algoritme (STM32F4): 8 trinn (med bilder)
Hastighetskontroll av likestrømsmotor ved bruk av PID -algoritme (STM32F4): hei alle sammen. Dette er tahir ul haq med et annet prosjekt. Denne gangen er det STM32F407 som MC. Dette er et prosjekt på slutten av midten av semesteret. Håper du liker det. Det krever mange begreper og teori, så vi går inn på det først. Med bruk av datamaskiner og