Innholdsfortegnelse:

Ball Balancer og PID Fiddler: 7 trinn (med bilder)
Ball Balancer og PID Fiddler: 7 trinn (med bilder)

Video: Ball Balancer og PID Fiddler: 7 trinn (med bilder)

Video: Ball Balancer og PID Fiddler: 7 trinn (med bilder)
Video: PID Balance+Ball | full explanation & tuning 2024, November
Anonim
Ball Balancer og PID Fiddler
Ball Balancer og PID Fiddler
Ball Balancer og PID Fiddler
Ball Balancer og PID Fiddler

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

Ball Balancer - Deler
Ball Balancer - Deler
Ball Balancer - Deler
Ball Balancer - Deler
Ball Balancer - Deler
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

Ball Balancer - Montering
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

Ball Balancer Wiring & Arduino Sketch
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

PID Fiddler 2 - Deler
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

Pid Fiddler 2 - Kabling, montering og Arduino -skisse
Pid Fiddler 2 - Kabling, montering og Arduino -skisse
Pid Fiddler 2 - Kabling, montering og Arduino -skisse
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: