Talaan ng mga Nilalaman:

Ball Balancer at PID Fiddler: 7 Hakbang (na may Mga Larawan)
Ball Balancer at PID Fiddler: 7 Hakbang (na may Mga Larawan)

Video: Ball Balancer at PID Fiddler: 7 Hakbang (na may Mga Larawan)

Video: Ball Balancer at PID Fiddler: 7 Hakbang (na may Mga Larawan)
Video: PID Balance+Ball | full explanation & tuning 2024, Hulyo
Anonim
Ball Balancer at PID Fiddler
Ball Balancer at PID Fiddler
Ball Balancer at PID Fiddler
Ball Balancer at PID Fiddler

Ang proyektong ito ay ipinakita para sa mga taong may karanasan sa paggamit ng isang Arduino. Ang dating kaalaman sa paggamit ng mga servo, pagpapakita ng OLED, kaldero, pindutan, paghihinang, ay makakatulong. Gumagamit ang proyektong ito ng mga naka-print na bahagi ng 3D.

Ang Ball Balancer ay isang pagsubok sa pagsubok ng PID para sa pag-eksperimento sa pag-tune ng PID. Ang PID Fiddler ay isang remote para sa pag-aayos ng PID tuning.

Ginagamit ang isang PID kapag kailangan mo ng higit na kontrol sa paggalaw. Ang isang magandang halimbawa ay isang robot sa pagbabalanse. Ang robot ay kailangang gumawa ng maliliit na pagsasaayos upang mapanatili ang balanse, at mabilis na tugon upang mahuli ang sarili nito kung makasalubong nito ang isang paga o tulak. Maaaring magamit ang isang PID upang ibagay ang tugon ng mga motor na gulong upang mapanatili ang balanse.

Ang isang PID ay nangangailangan ng puna mula sa isang sensor. Ang isang robot sa pagbabalanse ay gumagamit ng mga gyros at accelerometers upang masukat ang ganap na anggulo ng robot. Ang output ng sensor ay ginagamit ng PID upang makontrol ang mga motor upang mapanatili ang balanse.

Kaya't bakit ako nakagawa ng isang mainip na ball balancer? Tiyak na cool ito, ngunit ang pagbabalanse ng mga robot ay natapos kapag hindi sila naayos nang tama. Ang pagbabalanse ng mga robot ay hindi ang pinakamahusay na aparato para sa pag-eksperimento sa pag-tune ng PID. Ang ball balancer ay mas matatag at mahusay na tool sa visual upang makita ang mga epekto ng pag-tune ng PID. Ang kaalamang nakuha mula sa pag-tune ng ball balancer ay maaaring mailapat sa pag-tune ng isang robot sa pagbabalanse.

Ang Ball Balancer ay isang riles sa isang pivot point. Sa riles ay isang bola ang paggalaw pabalik-balik sa riles kapag ang riles ay tipped. Ang riles ay naka-tip sa isang servo. Sa dulo ng riles ay isang sensor na sumusukat sa distansya ng bola mula sa sensor. Ang input sa PID ay ang distansya ng bola mula sa sensor, at ang output ng PID ay ang servo na tumuturo sa riles at ilipat ang bola.

Gumagamit ako ng Arduino PID library.

Ang PID Fiddler ang ginagamit ko upang ibagay ang mga halagang PID. Hindi mo kailangan ang isa, ngunit nakakatulong ito. Ang PID Fiddler ay malayo mula sa Ball Balancer, kumokonekta ito sa dalawang wires lamang, at maaari itong konektado at idiskonekta habang tumatakbo ang Ball Balancer. Kapag nahanap mo ang pinakamahusay na mga halaga, ang mga halaga ay maaaring maging mahirap na naka-code sa iyong sketch ng proyekto.

Ang labis na pagsisikap na gawin ang PID Fiddler ay magbabayad sa oras na kinakailangan upang makagawa ng mga pagbabago sa pag-tune sa PID. Mabilis mong makikita ang mga resulta ng iyong mga pagbabago. At maaari itong magamit muli sa mga susunod na proyekto na gumagamit ng PIDs. Hindi man sabihing masaya itong bumuo, at mukhang cool!

Hakbang 1: Ball Balancer - Mga Bahagi

Ball Balancer - Mga Bahagi
Ball Balancer - Mga Bahagi
Ball Balancer - Mga Bahagi
Ball Balancer - Mga Bahagi
Ball Balancer - Mga Bahagi
Ball Balancer - Mga Bahagi

Natagpuan ang mga naka-print na bahagi ng 3D dito:

(Ang tagubilin sa Assembly ay matatagpuan sa mga tagubilin sa Pag-print sa link sa itaas)

1 - 1 "x 1/8" anggulo ng aluminyo, gupitin sa 500mm ang haba.

1 - Adafruit VL53L0X Oras ng Flight Distance Sensor:

1 - Hobby Servo na may control sungay

1 - Matigas na kawad para sa pag-link (mga 7mm)

- Misc. Mga mounting screw

1- Arduino Uno

2 - LEDs (pula, berde)

3 - 330 Ohm resistors

- Misc. Jumper wires at Breadboard

- Flat Black Paint Paint

1 - Puting Ping Pong bola

Hakbang 2: Ball Balancer - Assembly

Ball Balancer - Assembly
Ball Balancer - Assembly

Ang tagubilin sa Assembly para sa Ball Balancer ay matatagpuan dito:

Ilang karagdagang mga tip:

Pagwilig ng pintura sa loob ng rail flat black upang mabawasan ang error mula sa sensor.

Linkage (Ipinapakita sa larawan sa itaas):

- Gumamit ng isang matigas na kawad na halos 7mm ang haba para sa pagkakaugnay sa pagitan ng sungay ng servo control at ng bracket ng sensor.

- I-level ang riles, ilagay ang pahalang na control control sa kalagitnaan ng punto ng kilusang servo (halaga ng servo 90).

- Bend ang isang maliit na loop sa tuktok ng kawad, at isang hugis na z na liko sa ilalim ng kawad.

- Ilagay ang dulo ng z sa control sungay, markahan ang punto sa gitna ng loop sa bracket ng sensor.

- Mag-drill ng isang maliit na butas at gumamit ng isang maliit na tornilyo upang ikabit ang kawad sa bracket ng sensor.

Hakbang 3: Mga Kable ng Ball Balancer at Arduino Sketch

Mga Kable ng Ball Balancer at Arduino Sketch
Mga Kable ng Ball Balancer at Arduino Sketch

Sumangguni sa larawan sa itaas para sa mga kable.

Gumamit ng isang hiwalay na supply ng kuryente para sa servo. Ito ay maaaring isang bench power supply, o baterya pack. Gumagamit ako ng isang bench power supply na itinakda sa 5V.

Ang PID Fiddler ay ikakabit ng dalawang wires, isa sa Pin 1 (Serial RX), at isa sa lupa.

Ibinigay ang sketch.

Mga Tala ng Sketch: Ang halaga ng itinakdang punto ay magbabago mula 200mm hanggang 300mm bawat 15 segundo. Kapaki-pakinabang na gamitin ang Serial Monitor sa Arduino IDE upang makita ang output ng sensor.

Hakbang 4: PID Fiddler 2 - Mga Bahagi

PID Fiddler 2 - Mga Bahagi
PID Fiddler 2 - Mga Bahagi

Ang 3D naka-print na kalasag at mga knobs ay matatagpuan dito:

4 - 10 Kohm kaldero

1- Mga Pambatang Button na Makipag-ugnay:

1- Adafruit Monochrome 128x32 I2C OLED Graphic Display:

1- Arduino Uno

- maling header ping (.1 in), mga terminal block, hook up wire

Hakbang 5: Pid Fiddler 2 - Mga Kable, Assembly at Arduino Sketch

Pid Fiddler 2 - Mga Kable, Assembly at Arduino Sketch
Pid Fiddler 2 - Mga Kable, Assembly at Arduino Sketch
Pid Fiddler 2 - Mga Kable, Assembly at Arduino Sketch
Pid Fiddler 2 - Mga Kable, Assembly at Arduino Sketch

Gumamit ng mga diagram ng mga kable para sa mga kable ng kalasag.

Mga Tip sa Assembly:

- Para sa mga tip sa paggawa ng mga pasadyang circuit board, tingnan ang aking itinuturo:

- Mga sobrang pandikit na header sa 3D na naka-print na kalasag.

- Gumagamit ako ng wire wire wire.

- Gumamit ng mga square na kaldero sa ibaba at putulin ang mga mounting tab, maiinit ang pandikit sa lugar.

- Ang mga sangkap ay solder. Gumamit ng babaeng header para sa OLED, at ang OLED ay madaling mai-plug at maalis para magamit sa ibang mga proyekto.

Mga Tala ng Sketch:

- Ikonekta ang isang kawad mula sa terminal block (wired to pin 2, TX) upang i-pin ang 1 (serial RX) ng Ball Balancer Arduino. Ikonekta ang isang kawad sa pagitan ng terminal block (ground) sa lupa ng Ball Balancer Arduino.

- Pindutin nang matagal ang pindutan, ayusin ang mga knobs upang ayusin ang mga setting ng PID, pindutan ng paglabas upang maipadala ang mga halaga sa Ball Balancer.

Hakbang 6: Paggamit ng Ball Balancer at PID Fiddler

Ang natitira lamang ay upang magsimulang maglaro dito!

- Ilagay ang bola sa riles.

- Hawakan ang pindutan pababa sa PID Fiddler, itakda ang P, I, at D sa zero, ST hanggang 200 upang magsimula.

- Hihinto ang servo sa pagtugon.

- Ngayon simulang mag-eksperimento sa iba't ibang mga halagang P, I, at D upang makita kung paano ito nakakaapekto sa tugon at paggalaw ng bola.

- Subukang baguhin ang mga halaga para sa Sample Time (ST). Ang sample na oras ay ang oras sa milliseconds ang input ay nakolekta. Ang mga halaga ay na-average sa oras ng sample. Ang output ng sensor ng isang target pa rin ay mag-iiba sa pamamagitan ng isang maliit na halaga. Kung ang sample time ay masyadong maliit, ang output ng PID ay "jitter". Sinusubukan ng PID na iwasto para sa ingay sa mga pagbabasa ng sensor. Ang paggamit ng mas mahabang Sample Times ay magpapakinis ng ingay, ngunit ang output ng PID ay magiging maselan.

Hakbang 7:

Hindi ginagamit

Inirerekumendang: