Tartalomjegyzék:

PID szabályozás tanítása Lego robotokkal: 14 lépés
PID szabályozás tanítása Lego robotokkal: 14 lépés

Videó: PID szabályozás tanítása Lego robotokkal: 14 lépés

Videó: PID szabályozás tanítása Lego robotokkal: 14 lépés
Videó: lego path planning with pid controller 2024, Július
Anonim
PID -szabályozás tanítása Lego Robotokkal
PID -szabályozás tanítása Lego Robotokkal

Sok fiatal robotrajongó érdeklődik a fejlettebb vezérlési témák iránt, de megzavarhatja őket a zárt hurkú rendszerek elemzéséhez gyakran szükséges számítás. Az interneten csodálatos források állnak rendelkezésre, amelyek egyszerűsítik az "arányos integrált differenciálvezérlő" (PID -vezérlő) felépítését, és egy nagyszerű leírás itt található:

Mindazonáltal ezeket nehéz lehet követni, és lehet, hogy nem alkalmasak körülbelül 20 fős osztályterembe.

Ez az Instructable lépésről lépésre bemutatja, hogyan lehet sikeresen tanítani egy diákokkal teli szobát a Lego robotrendszer, számos robot (5-10), azonos számú NXT 2.0 futtató számítógépes munkaállomás és egy hét lábnyi fekete elektromos szalag a padlón.

MELLÉK: Köszönet illeti J. Sluka -t, aki a fenti linket írta, Dr. Bruce Linnell -nek, aki néhány korai Lego -laboratóriumot hozott létre az ECPI Egyetem szintjén, és Dr. Reza Jafarinak, aki a PID Control tanulási célkitűzéseit nyújtotta az EET220 és Capstone tanfolyam.

Lépés: A laboratóriumi előkészületek a diákok érkezése előtt

Laboratóriumi előkészületek a diákok érkezése előtt
Laboratóriumi előkészületek a diákok érkezése előtt

Tudasd a diákokkal a kemény munkádat;-)

Az oktatók és a tanársegédek NAGYON elfoglaltak voltak, hogy felkészüljenek erre a laborra! A robotot feltöltötték és összeállították ehhez a laborhoz. Ha összeszerelésre van szükség, ez egy vagy több robot esetében akár 90 percet is igénybe vehet. Még több időre van szükség az akkumulátorok feltöltéséhez vagy töltési/kisütési ciklusokkal való kondicionálásához. A ma használt robot építésével kapcsolatos részletes utasításokért tekintse meg az NXT 2.0 vagy 2.1 oktatási készletet, a „kövesse a vonalat” robot építési útmutatóját. Ennek ellenére bonyolultabb programozást fogunk használni … A fekete elektromos szalag világos színű linóleumon nagyszerű pálya. Ez 3 x 7 hüvelyk, félkör alakú ívekkel.

2. lépés: Ismerje meg a robotot

Ismerje meg a robotot
Ismerje meg a robotot

Először is megismerkedhet a robot menüjével, valamint a robot egyes részeivel. Ezenkívül megismerheti a robot által használt ipari stílusú érzékelő technológiát, beleértve a fénykibocsátó diódákat, a fényérzékelőket, a léptetőmotorokat és a forgási helyzetérzékelőket. Kérjük, feltétlenül töltse ki az összes kért információt (általában aláhúzott üres _).

1. Húzza ki a robotot a töltőből és/vagy a számítógép USB -portjából. A narancssárga gombbal kapcsolja be a robotot. A narancs, a bal és a jobb gomb, valamint a „vissza” szürke téglalap gomb lehetővé teszi a menüben való navigációt. Lépjen a „Szoftverfájlok” menübe, és görgessen a roboton elérhető szoftverfájlok között. Sorolja fel az egyes szoftverfájlok nevét, pontosan hogyan kell írni, beleértve a nagybetűket és a szóközöket:

_

3. lépés: Kalibrálja a fényérzékelőt

Kalibrálja a fényérzékelőt
Kalibrálja a fényérzékelőt

2 Vizsgálja meg a fényérzékelőt és a kalibrálási információkat. Menjen vissza a főmenübe, és válassza a „Nézet” lehetőséget. Válassza ki a „Reflected Light” opciót, majd a portot (ennek a „Port 3” -nak kell lennie), amely bekapcsolja a fényt és megjelenít egy számot a képernyőn. Győződjön meg arról, hogy minden működik, és jegyezzen fel néhány kalibrálási információt.

a. Maximális olvashatóság fehér papírlap használatával: Szám: _ Írja le a papírtól való hozzávetőleges távolságot: _

b. Maximális leolvasás a világos színű linóleum padlón: _

c. Minimális leolvasás, amikor a fekete elektromos szalag közepére mutat: _

4. lépés: Ellenőrizze a motor kalibrálását

A motor kalibrálásának tesztelése
A motor kalibrálásának tesztelése

3 Vizsgálja meg a kerékmotorokat (bal és jobb), valamint a kalibrálási információkat. Menjen vissza a főmenübe, és válassza a „Motor Rotations” lehetőséget. Válassza ki a portot (a „B port” vagy „C port” legyen a két motor esetében). Nézze meg, hogy ellenőrizheti -e ennek a leolvasásnak a kalibrálását, ha az egyes motorokat meghatározott számú fordulattal elforgatja a leolvasás közben. Ugyanazt a kalibrációs tesztet fogja elvégezni mindkét motornál a „View” à „Motor Degrees” kalibrációs képernyő használatával.

Motor a B porton

  • A kerék forgatásának száma _
  • „Motor Rotations” kijelző értéke_
  • A kerék fokban elforgatott távolsága fokban_
  • „Motorfokok” kijelzési értéke_

Motor a C porton

  • A kerék forgatásának száma _
  • „Motor Rotations” kijelző értéke_
  • A kerék fokban elforgatott távolsága fokban_
  • „Motorfokok” kijelzési értéke_

A megjelenített értékek megfeleltek az elvárásoknak? Kérjük, fejtse ki. _

5. lépés: Futtassa a mellékelt ki-be vezérlőt

Futtassa a mellékelt ki-be vezérlőt
Futtassa a mellékelt ki-be vezérlőt

Az "On-Off" (néha "Bang-Bang") vezérlőnek csak két lehetősége van, be és ki. Hasonló az otthoni termosztát vezérléséhez. Ha a beállított hőmérsékletre van állítva, a termosztát felmelegíti a házat, ha túl hideg, és lehűti a házat, ha túl meleg. A kiválasztott hőmérsékletet "alapértéknek" nevezik, és a különbség a ház aktuális hőmérséklete és az alapjel között "Hiba" -nak hívják. Tehát azt mondhatná, hogy ha a hiba pozitív, kapcsolja be az AC -t, különben kapcsolja be a fűtést.

Esetünkben a robot balra vagy jobbra fordul, attól függően, hogy a fényérzékelő alapértelmezett értéke pozitív vagy negatív hiba (túl sok a fehér padlón, vagy túl sok a fekete szalagon).

Észre fogja venni, hogy a robotja már fel van töltve számos programmal (vagy használhatja a mellékelt "01 line.rbt" fájlt, amely itt van beágyazva), és olyan neveken tárolja, mint az "1 sor" és a "2 sor". kiegészítő betű lehet a program száma után, például „3b sor”. A programot az „1” számmal kell végrehajtania a nevében, majd a robotot a szalagra kell helyezni, az érzékelővel a fekete vonalon. Próbáljon távol maradni a pályán lévő más robotoktól, hogy időzíthesse a robotját anélkül, hogy megszakítaná a más robotokkal való ütközést.

4 Mérje meg a következő időpróbákat:

a. A pálya egyik egyenes oldalának teljesítéséhez szükséges idő: _

b. Írja le a robot egyenes pályamozgását: _

c. A pálya egyik ívének teljesítéséhez szükséges idő: _

d. Írja le a görbe pályás robot mozgását: _

e. Ideje egyszer teljes körben körbejárni a pályát: _

6. lépés: Nyissa meg a "01 sor" ki-be vezérlő szoftvert

Nyissa meg a
Nyissa meg a
Nyissa meg a
Nyissa meg a
Nyissa meg a
Nyissa meg a

Megnyitja a „LEGO MINDSTORMS NXT 2.0” szoftvert (nem az Edu 2.1 szoftvert), és betölti a megfelelő „01 line.rbt” nevű programot, és megvizsgálja és módosítja a szoftvert az alábbi utasítások szerint:

Nyissa meg a „LEGO MINDSTORMS NXT 2.0” szoftvert (nem az Edu 2.1 szoftvert). Az oktató megmondja, hogy a fájlok hol vannak tárolva a számítógépén, és onnan nyitja meg az „1 soros” programot. Egyszerűen válassza a „Fájl”, majd a „Megnyitás” lehetőséget, és válassza ki a megnyíló „1 soros” programot.

A program megnyitása után a „kéz” ikonnal mozgathatja a program teljes képernyőképét, és a „nyíl” ikonnal kattinthat az egyes objektumokra, és megtekintheti azok működését (és módosíthatja is).

7. lépés: A "01 soros" ki-be vezérlő szoftver megértése

Megértése a
Megértése a

Az „1 sor” program „On-Off” vezérlési módszert használ. Ebben az esetben a „Forduljon balra” vagy „Forduljon jobbra” lehetőségek közül választhat. A grafika a program elemeinek leírását tartalmazza:

8. lépés: A "01 soros" ki-be vezérlő szoftver szerkesztése

A szerkesztése
A szerkesztése

Módosítsa az alapértéket, és hasonlítsa össze az eredményeket.

A fenti 2. lépésben felfedezte a fénymérő néhány valós értékét. A b és c részekben értékeket rögzített, számokat a minimális és maximális értékekhez, amelyeket a robot látna a pálya futásakor.

5 Számítson ki egy jó alapértéket (a min és max átlaga): _

6 Válasszon egy ROSSZ set-pint értéket (egy szám nagyon közel van a minhez vagy a maximumhoz): _

Módosítsa az alapértéket ezen értékek egyikére a nyíl ikon segítségével, és kattintson a hiba számítási mezőre, és módosítsa a kivonandó számot (lásd az alábbi képet). Most csatlakoztassa a robotot a számítógéphez az USB -kábel segítségével, győződjön meg arról, hogy a robot be van kapcsolva, és töltse le az „1 soros” program új verzióját a robothoz. Látni fogja, hogy a robot mennyi idő alatt járja körbe a pályát az óramutató járásával megegyező irányban, egyszer a JÓ alapértékkel, és egyszer a ROSSZ alapértékkel.

7 Végezzen el időpróbákat JÓ és ROSSZ alapértékekkel

a. Ideje egyszer teljes körben megkerülni a pályát (JÓ alapérték): _

b. Ideje egyszer teljes körben megkerülni a pályát (BAD Set-Point): _

Észrevételei / következtetései? _

9. lépés: A "02 vonal" be- és kikapcsolásának megértése a halottzónás vezérlőszoftverrel

Megértése a
Megértése a

Ha otthonában az AC és a fűtés folyamatosan be- és kikapcsol, az biztosan tönkreteheti a HVAC rendszert (vagy legalábbis lerövidítheti annak élettartamát). A legtöbb termosztát beépített "halott zónával" készül. Például, ha az alapérték 70 Fahrenheit fok, akkor előfordulhat, hogy a termosztát nem kapcsolja be az AC-t, amíg el nem éri a 72 fokot, és nem kapcsolja be a fűtést, amíg a hőmérséklet 68 fokra nem csökken. Ha a holtterület túl széles lesz, a ház kényelmetlenné válhat.

Esetünkben a 02 soros program segítségével halott zónát adunk hozzá, amely során a robot egyszerűen egyenesen fog haladni.

Most vizsgálja meg a szoftverfájl „02 sorát”, ahogyan azt a grafika és a mellékelt fájl tartalmazza.

Ez a szoftverfájl programozza a robotot, hogy kövesse a vonalat On-Off vezérléssel, differenciálréssel. Ezt halott sávnak is nevezik, és ez azt jelenti, hogy a robot a hibától függően balra vagy jobbra fordul, de ha a hiba kicsi, a robot csak egyenesen megy.

A „02 vonal” program először kiszámítja a fentieket úgy, hogy kivonja az alapértéket a fénymérésből, majd elvégzi az összehasonlítást a fentiek szerint. Vizsgálja meg a programot a számítógépen, és jegyezze fel a látható értékeket.

Mennyi a „2 soros” program aktuális (eredeti) értéke az alapértékhez? _

Mi a „2 soros” programok aktuális (eredeti) értéke „Nagy” pozitív hiba? _

Mi a „2 soros” programok aktuális (eredeti) értéke „Nagy” negatív hiba? _

Melyik Dead-Band hibatartomány fogja a robotot egyenesen irányítani? TÓL-IG _

Futtasson három (3) időpróbát különböző értékekkel a fenti „Nagy” hiba miatt. Az aktuális „2 soros” beállítások, valamint két másik beállítás, amelyeket kiszámít. Már kiválasztott egy jó alapértéket robotjának. Most két különböző Dead-Band tartományt választhat, és rögzítheti az időt, ameddig a robot egy óramutató járásával megegyező kört tesz meg:

A 02 sor eredeti beállításai _

Halott sáv +4 és -4 között _

Halott sáv +12 és -12 között _

10. lépés: A "03 soros" arányos vezérlőszoftver megértése

Megértése a
Megértése a

Az arányos vezérléssel nem csak be- vagy kikapcsoljuk a fűtést, hanem több beállítással is rendelkezhetünk a kemence felkapcsolásához (például a lángok mérete a tűzhelyen). A robot esetében nem csak három motorbeállításunk van (bal, jobb és egyenes). Ehelyett szabályozhatjuk a bal és jobb kerék sebességét, hogy sokféle fordulatszámot érjünk el. Minél nagyobb a hiba, annál gyorsabban akarunk visszafordulni a vonalhoz.

Nézzük az arányos szabályozást a „03 sor” programmal

A „03-as vonal” programja bonyolultabb, mert nemcsak az „arányos” vezérlési módszert állítja be, hanem tartalmazza az összes szoftvert az arányos-integrál, az arányos-differenciál és az arányos-integrál-differenciál (PID) vezérléséhez. A szoftver betöltésekor valószínűleg túl nagy lesz ahhoz, hogy egyszerre elférjen a képernyőn, de valójában három részből áll, amint az a mellékelt ábrán látható.

A - A hiba kiszámítására szolgáló matematika, és a „számítás” a hiba integráljának és deriváltjának megtalálására az idő múlásával.

B - A bal motor fordulatszámának kiszámítása a Kp, Ki és Kd PID vezérlési beállításai alapján

C - A motor fordulatszámkorlátozásának tesztelésére szolgáló matematika, és a megfelelő motorsebességek elküldése a bal és a jobb motorra.

Mindhárman saját végtelen ciklusokat futtatnak (az inicializálás után), és a „kéz” ikon használatával böngészhet, de váltson vissza a „nyíl” ikonra a doboz tartalmának vizsgálatához és a beállítások módosításához.

11. lépés: A 03 soros (arányos vezérlés) program szerkesztése

A 03 soros (arányos vezérlés) program szerkesztése
A 03 soros (arányos vezérlés) program szerkesztése

A középső részben (az előző leírás B szakasza) észreveheti, hogy a „03 sor” programban a Ki és a Kd beállítása egyaránt 0.

Hagyjuk őket így. Csak a Kp értékét, a vezérlő arányos részét módosítjuk.

Kp dönti el, hogy a robot mennyire simán változtatja a sebességet, miközben eltávolodik a vonaltól. Ha a Kp túl nagy, akkor a mozgás rendkívül rángatózó lesz (hasonlóan az On-Off vezérlőhöz). Ha a Kp túl kicsi, akkor a robot túl lassan hajtja végre a korrekciókat, és távolodik a vonaltól, különösen a kanyarokon. Akár olyan messzire is sodródhat, hogy teljesen elveszíti a vonalat!

13 Milyen alapértéket használ a „03 line” program? (kivonva az A hurok fénybeállításának olvasása után) _

14 Mennyi a Kp értéke a jelenlegi „03 soros” programban? _

Időpróbák az arányos vezérlőhöz („3 soros” program)

A robot memóriájában tárolt „03 -as vonal” program eredeti beállításait fogja használni egy időméréshez, és két másik módosítást is használ a „03 -as vonal” programhoz, összesen három időmérő méréshez. Az elvégzendő módosítások magukban foglalják

DRIFTY - Olyan Kp érték megtalálása, amely miatt a robot nagyon lassan sodródik, és esetleg elveszíti szem elől a vonalat (de remélhetőleg nem). Próbáljon meg különböző Kp értékeket 0,5 és 2,5 (vagy más érték) között, amíg meg nem kapja azt, ahol a robot sodródik, de a vonalon marad.

JERKY - Olyan Kp érték megtalálása, amely a robotot ide -oda rángatja, nagyon hasonló az On -Off típusú mozgáshoz. Próbáljon ki egy Kp értéket valahol 1,5 és 3,5 között (vagy egy másik értéket), amíg meg nem kapja azt, ahol a robot csak elkezdi mutatni az oda -vissza mozgást, de nem túl drámaian. Ezt Kp „kritikus” értékének is nevezik.

A pálya körüli óramutató járásával megegyező fordulat teljes időmérésére csak az eredeti „3 soros” értékekkel és a két új értékkészlettel (DRIFTY és JERKY) van szükség, amelyeket akkor fedez fel, ha a robot csak egy rövid pályát követ. Ne felejtse el minden alkalommal letölteni a robotra vonatkozó módosításokat!

15 Jegyezze fel az arányos vezérlési értékeket és az időpróbákat a „3 soros” programhoz (ne felejtse el letölteni a robot módosításait!) Mindhárom Kp értékre (az eredeti 03 sor értéke, és két érték, amelyeket próbával és hibával határoz meg) hogy DRIFTY és JERKY legyen).

12. lépés: Fejlett PID -vezérlők

Fejlett PID vezérlők
Fejlett PID vezérlők
Fejlett PID vezérlők
Fejlett PID vezérlők

Mielőtt elkezdené ezt a lépést, győződjön meg arról, hogy elvégzi az előző lépéseket, és rögzíti az összes kért információt azzal a bizonyos robottal, amelyet használni szeretne a laborban. Mindegyik robot kissé eltér a mechanikai, motoros és különösen a pálya fényérzékelőinek eredményeit tekintve.

Számok, amelyekre szüksége lesz a korábbi kísérletekből

16 Maximális fényérzékelő leolvasás (a 2. lépéstől) _

17 Minimális fényérzékelő leolvasás (az 5. lépéstől) _

18 JÓ beállítás az alapértékhez (a fentiek átlaga) _

19 DRIFTY beállítás a Kp -hez (a 15. lépéstől) _

20 JERKY (kritikus) beállítás a Kp -hez (a 15. lépéstől) _

A PID vezérlő megértése

Lehet, hogy az Ipari szabályozás tanfolyam részeként megtudta az arányos integrált differenciál (PID) vezérlőt, és jó gyors áttekintést talál a Wikipédián (https://en.wikipedia.org/wiki/PID_controller).

E kísérlet esetében a mért érték a padlóról visszavert fény mennyisége. Az alapjel a kívánt fénymennyiség, ha a robot közvetlenül a fekete szalag pereme felett van. A hiba az aktuális fényjelzés és az alapjel közötti különbség.

Az arányos vezérlővel a bal motor fordulatszáma arányos volt a hibával. Kimondottan:

Hiba = fényolvasás-alapjel

Ezen a grafikonon az alapérték 50 volt.

Később a bal motor fordulatszámának megállapításához a hibát megszorozzuk a „Kp” arányossági állandóval:

L Motor = (Kp * Hiba) + 35

Ebben a grafikában a Kp értéke 1,5, és a 35 hozzáadása a program egy másik részében történik. A 35 érték hozzáadódik a -40 és +40 közötti tartomány konvertálásához, hogy 10 és 60 között legyen (ésszerű motorsebesség).

Az integrál egyfajta emléke a múltnak. Ha a hiba hosszabb ideig rossz, a robotnak gyorsítania kell az alapérték felé. A Ki -t az Integrál szorozza meg (az integrál a hibák futó összege - ebben az esetben minden egyes ismétléssel 1,5 -gyel csökkentve, így a robotnak „halványuló memóriája” lesz a korábbi hibákról).

A Derivative egyfajta jövőjóslat. A jövőbeli hibát úgy jósoljuk meg, hogy összehasonlítjuk az utolsó hibát a jelenlegi hibával, és feltételezzük, hogy a hiba változásának aránya némileg lineáris lesz. Minél nagyobb lesz a jövőbeli hiba, annál gyorsabban kell eljutnunk az alapértékhez. A Kd -t a Származékkal kell szorozni (a derivált az aktuális és az előző hiba közötti különbség).

L Motor = (Kp * hiba) + (Ki * integrált) + (Kd * származék) + 35

13. lépés: A legjobb PID -paraméterek megtalálása

A legjobb PID paraméterek megtalálása
A legjobb PID paraméterek megtalálása
A legjobb PID paraméterek megtalálása
A legjobb PID paraméterek megtalálása
A legjobb PID paraméterek megtalálása
A legjobb PID paraméterek megtalálása

A PID paraméterek megkeresésére számos módszer használható, de helyzetünknek egyedi aspektusai vannak, amelyek lehetővé teszik számunkra, hogy „manuálisabb” kísérleti módszert használjunk a paraméterek megtalálására. Az egyedülálló szempontok a következők:

  • A kísérletezők (ön) jól ismerik a gép működését
  • Nincs személyi sérülés veszélye, ha a vezérlő megőrül, és nem áll fenn a robot károsodásának veszélye a rossz vezérlőbeállítások miatt
  • A fényérzékelő ilyen hanyag érzékelő eszköz, és csak egy fényérzékelő van, így csak remélni tudjuk, hogy marginálisan jó végeredményt kapunk. Ezért a „legjobb erőfeszítés” jó a kísérleteinkhez

Először is, a „03-as sort” használtuk a legjobb Kp kiválasztásához (a JÓ alapérték és a JERKY Kp értékek a fenti 18. és 20. lépésben). Tekintse meg az első grafikát, hogy hogyan találtuk meg a Kp JERKY értékét.

A „04 line” szoftver segítségével határozza meg a Ki értéket. Először módosítjuk a „4 sort”, hogy megkapjuk azokat az értékeket, amelyeket a fenti 18. és 20. pontban rögzítettünk. Ezután lassan növeljük a Ki értéket, amíg olyan értéket nem kapunk, amely valóban nagyon gyorsan elvezet minket az alapértékhez. Lásd a második grafikát a Ki értékének kiválasztására vonatkozó utasításokért.

21 A leggyorsabb Ki-érték, amely a leggyorsabban a beállított ponton áll (még némi túllépés esetén is) _

A „05 line” szoftver segítségével határozza meg a Kd értéket. Először módosítsa az „5 sort” a 18., 20. és 21. lépésből származó értékekkel, majd növelje a Kd értéket, amíg meg nem kapja a végső működő robotot, amely gyorsan és nagyon kevés túllépéssel eléri az alapértéket. A harmadik ábra a Kd kiválasztására vonatkozó utasításokat mutatja.

22 Kd OPTIMÁLIS értéke _

23 MENNYI SZÁRMA A ROBOTJA, HOGY MOST MEGKERÜLI A PÁLYÁT ??? _

14. lépés: Következtetés

A laboratóriumi kísérlet nagyon jól sikerült. Körülbelül 20 tanulóval, az első grafikonon látható 10 (tíz) munkaállomás + robotbeállítás használatával soha nem volt logmikus erőforrás. Legfeljebb három robot keringett egyszerre a pályán az időmérő edzéseken.

Javaslom, hogy a PID szabályozó részt (legalábbis a "04 sor" és a "05 sor" programokat) külön napra bontsák ki az érintett fogalmak miatt.

Íme egy videó sorozat, amely bemutatja a vezérlők előrehaladását ("01 sor" -ról "05 sorra") az általam kiválasztott értékek használatával - de minden tanuló kissé eltérő értékekkel állt elő, ami várható!

EMLÉKEZTETÉS: Az egyik legfőbb oka annak, hogy a nagyon jól felkészült robotcsapatok rosszul teljesítenek a versenyrendezvényeken, az a tény, hogy nem a kalibrálást végzik pontosan azon a helyen, ahol az esemény lesz. A megvilágítás és az érzékelők lökés miatti enyhe helyzetváltozása nagyban befolyásolhatja a paraméterértékeket!

  • 01 soros (be -ki) PID vezérlés Lego Robotokkal -
  • 02 vonal (ki-be halott zónával) PID szabályozás Lego robotokkal-https://videos.ecpi.net/Watch/n4A5Lor7
  • 03 soros (arányos) PID szabályozás Lego Robotokkal -
  • 04 -es sor (arányos -integrált) PID -szabályozás Lego -robotokkal -
  • 05-ös sor (arányos-integrált-származékos) PID-szabályozás Lego-robotokkal-https://videos.ecpi.net/Watch/s6LRi5r7

Ajánlott: