Innehållsförteckning:

Ball Balancer och PID Fiddler: 7 steg (med bilder)
Ball Balancer och PID Fiddler: 7 steg (med bilder)

Video: Ball Balancer och PID Fiddler: 7 steg (med bilder)

Video: Ball Balancer och PID Fiddler: 7 steg (med bilder)
Video: Balancer - plate balancing a ball with PID controller, resistive panel and servos, arduino 2024, Juli
Anonim
Ball Balancer och PID Fiddler
Ball Balancer och PID Fiddler
Ball Balancer och PID Fiddler
Ball Balancer och PID Fiddler

Detta projekt presenteras för personer som har erfarenhet av att använda en Arduino. Förkunskaper om användning av servon, OLED -skärmar, krukor, knappar, lödning kommer att vara till hjälp. Detta projekt använder 3D -tryckta delar.

Ball Balancer är en PID -testrigg för att experimentera med PID -tuning. PID Fiddler är en fjärrkontroll för justering av PID -inställning.

En PID används när du behöver mer kontroll över rörelser. Ett bra exempel är en balansrobot. Roboten måste göra små justeringar för att bibehålla balansen och snabba svar för att fånga sig själv om den stöter på en stöt eller knuff. En PID kan användas för att ställa in hjulmotornas svar för att bibehålla balansen.

Ett PID kräver feedback från en sensor. En balanseringsrobot använder gyros och accelerometrar för att mäta robotens absoluta vinkel. Sensorns utgång används av PID för att styra motorerna för att bibehålla balansen.

Så varför gjorde jag en tråkig bollbalanserare? Visst är det coolt, men balansrobotar välter när de inte är rätt inställda. Balanseringsrobotar är inte den bästa enheten för att experimentera med PID -tuning. Bollbalansen är mycket mer stabil och är ett bra visuellt verktyg för att se effekterna av PID -justering. Kunskapen från att ställa in balbalansen kan tillämpas på att ställa in en balansrobot.

Ball Balancer är en skena på en svängpunkt. På skenan är en boll som rör sig fram och tillbaka på skenan när skenan tippas. Rälsen är tippad med en servo. På skenans ände finns en sensor som mäter bollens avstånd från sensorn. Ingången till PID är bollens avstånd från sensorn, och utgången från PID är servon som tippar skenan och flyttar bollen.

Jag använder Arduino PID -biblioteket.

PID Fiddler är vad jag använder för att ställa in PID -värdena. Du behöver inte en, men det hjälper. PID Fiddler är avlägsen från Ball Balancer, den ansluts med endast två ledningar, och den kan anslutas och kopplas bort medan Ball Balancer är igång. När du väl har hittat de bästa värdena kan värdena hårdkodas i din projektskiss.

Den extra ansträngningen att göra PID Fiddler lönar sig i tid det tar att göra justeringar av PID. Du kan snabbt se resultatet av dina ändringar. Och det kan återanvändas för framtida projekt som använder PID. För att inte tala om att det är roligt att bygga och ser coolt ut!

Steg 1: Ball Balancer - Delar

Ball Balancer - Delar
Ball Balancer - Delar
Ball Balancer - Delar
Ball Balancer - Delar
Ball Balancer - Delar
Ball Balancer - Delar

3D -tryckta delar finns här:

(Monteringsanvisningar finns i instruktionerna efter utskrift i länken ovan)

1 - 1 "x 1/8" aluminiumvinkel, skuren till 500 mm längd.

1 - Adafruit VL53L0X Time of Flight Distance Sensor:

1 - Hobby Servo med kontrollhorn

1 - Styv tråd för länkning (ca 7 mm)

- Övrigt. Monteringsskruvar

1- Arduino Uno

2 - lysdioder (rött, grönt)

3 - 330 Ohm motstånd

- Övrigt. Bygeltrådar och brödbräda

- Platt svart sprayfärg

1 - Vit pingisboll

Steg 2: Ball Balancer - Montering

Ball Balancer - Montering
Ball Balancer - Montering

Monteringsanvisning för Ball Balancer finns här:

Några ytterligare tips:

Spraymål insidan av skenan svart för att minska fel från sensorn.

Koppling (visas på bilden ovan):

- Använd en styv tråd om 7 mm i längd för koppling mellan servostyrningshornet och sensorhållaren.

- Justera skenan, placera manöverhornet horisontellt i mitten av servorörelsen (servovärde 90).

- Böj en liten slinga i toppen av tråden och en z -formad böjning längst ner på tråden.

- Sätt in z -änden i kontrollhornet, markera punkten i mitten av öglan på sensorfästet.

- Borra ett litet hål och använd en liten skruv för att fästa tråden i sensorhållaren.

Steg 3: Ball Balancer Wiring & Arduino Sketch

Ball Balancer Wiring & Arduino Sketch
Ball Balancer Wiring & Arduino Sketch

Se bild ovan för kabeldragning.

Använd en separat strömförsörjning för servon. Detta kan vara en strömförsörjning eller ett batteri. Jag använder en strömförsörjning på 5V.

PID Fiddler kommer att fästas med två trådar, en till Pin 1 (Serial RX) och en till jord.

Skissen tillhandahålls.

Skissanteckningar: Börvärdet ändras från 200 mm till 300 mm var 15: e sekund. Det är bra att använda seriemonitorn på Arduino IDE för att se sensorns utmatning.

Steg 4: PID Fiddler 2 - Delar

PID Fiddler 2 - Delar
PID Fiddler 2 - Delar

3D -tryckt sköld och vred finns här:

4 - 10 Kohm -krukor

1- Momentary Contact Buttons:

1- Adafruit Monokrom 128x32 I2C OLED grafisk display:

1- Arduino Uno

- diverse. header -ping (.1 tum), plintar, anslut kabel

Steg 5: Pid Fiddler 2 - Kabeldragning, montering och Arduino -skiss

Pid Fiddler 2 - Kabeldragning, montering och Arduino -skiss
Pid Fiddler 2 - Kabeldragning, montering och Arduino -skiss
Pid Fiddler 2 - Kabeldragning, montering och Arduino -skiss
Pid Fiddler 2 - Kabeldragning, montering och Arduino -skiss

Använd kopplingsschema för att ansluta skärmen.

Monteringstips:

-För tips om hur du gör anpassade kretskort, se min instruerbara:

- Superlimhuvuden på 3D -tryckt sköld.

- Jag använder trådtråd.

- Använd krukor med fyrkantiga botten och klipp av monteringsflikarna, hetlimma dem på plats.

- Komponenter är lödda. Använd hona för OLED, så kan OLED enkelt kopplas bort och tas bort för användning i andra projekt.

Skissanteckningar:

- Anslut en kabel från kopplingsplinten (ansluten till stift 2, TX) till stift 1 (seriell RX) på Ball Balancer Arduino. Anslut en kabel mellan anslutningsplinten (jord) till marken på Ball Balancer Arduino.

- Håll knappen intryckt, justera knapparna för att justera PID -inställningarna, släpp knappen för att skicka värdena till Ball Balancer.

Steg 6: Använda Ball Balancer och PID Fiddler

Det enda som återstår är att börja leka med det!

- Lägg bollen på skenan.

- Håll knappen intryckt på PID Fiddler, ställ P, I och D på noll, ST till 200 för att starta.

- Servon slutar svara.

- Börja nu experimentera med olika P-, I- och D -värden för att se hur det påverkar bollens respons och rörelse.

- Prova att ändra värden för provtid (ST). Provtiden är tiden i millisekunder som indatan samlas in. Värdena beräknas i genomsnitt över provtiden. Sensorutmatningen för ett stillmål kommer att variera med en liten mängd. Om provtiden är för liten, kommer PID -utgången att "jittera". PID försöker korrigera för bruset i sensoravläsningarna. Genom att använda längre provtider släcks bruset, men PID -utmatningen blir ryckig.

Steg 7:

Inte använd

Rekommenderad: