2006/2007 Projekt:
POPELKA 2007
Autor: Ročník studia: Školní rok:
Viktor Ptáček E2 2006/2007
Copyright © Viktor Ptáček 2007 Všechna práva vyhrazena. Žádná část této publikace nesmí být reprodukována, uchovávána v libovolném archivním systému, nebo přenášena jakýmkoli způsobem bez předchozí dohody a písemného svolení autora.
Čestně prohlašuji, že jsem řádně zveřejnil(a) všechny informační zdroje v seznamu použité literatury. …………………………………..
MÍSTO ZPRACOVÁNÍ Vyšší odborná škola a Střední průmyslová škola Šumperk Gen. Krátkého 1 787 29 Šumperk VEDOUCÍ PRÁCE Ing. Vít Krňávek
OBSAH
1 ÚVOD.............................................................................................................. 1 1.1
JMÉNO PROJEKTU................................................................................. 1
1.2
VZNIK A VÝZNAM POPELKY ................................................................ 1
1.3
Z ČEHO SE POPELKA SKLÁDÁ, A JEJÍ OVLÁDÁNÍ ........................ 1
2 Z ČEHO SE POPELKA SKLÁDÁ: ............................................................ 2 2.1
OBRÁZKY S POPISKY POPELKY .......................................................... 2
2.2 MECHANICKÁ ČÁST POPELKY: .............................................................. 3 2.3PNEUMATICKÁ ČÁST OBVODU................................................................ 3 2.3.1 2.3.2 2.3.3 2.3.4 2.3.5 2.3.6 2.3.7 2.3.8 2.3.9
2.4
Tlakový ventil........................................................................................................ 3 Škrtící ventil: .......................................................................................................... 4 Tlumiče hluku: ....................................................................................................... 4 Soustava pěti 5,2 ventilů(ventilový terminal): ...................................................... 4 Vertikální posun (dvojčinný válec) ........................................................................ 5 Podavač kuliček (dvojčinný válec)......................................................................... 5 Horizontálního posun (bezpístnicový válec).......................................................... 6 Hlavy s čelisti ........................................................................................................ 6 Senzory................................................................................................................... 6
ELEKTRO PRVKY: ................................................................................... 7 2.4.1 2.4.2 2.4.3 2.4.4
2.5
Rozbočovač: ........................................................................................................... 7 Zdroj:...................................................................................................................... 8 Usměrňovač + stabilizátor:..................................................................................... 8 Indikace a dálkové ovládání ................................................................................... 8
ŘÍDICÍ PRVEK: ........................................................................................ 9 2.5.1
2.5.2
Základní technické parametry AMiRiSu99:........................................................... 9
ROZMÍSTĚNÍ KONEKTORŮ A FOTKY AMIRISU99:.................. 10
2.5.3
Umístění AMiRiSU99 na Popelce: ...................................................................... 11
3 PROGRAMOVÁNÍ ALGORITMU .......................................................... 11 3.1
OSNOVA, PODLE KTERÉ JSEM POSTUPOVAL ..............................11
3.2
PROGRAMOVÁNÍ VE VÝVOJOVÝCH PROSTŘEDÍCH ...................12
3.3
PROBLÉMY, KTERÉ JSEM ŘEŠIL V MÉM ALGORITMU: ............ 13
3.4
ROZDĚLENÍ PROCESŮ:....................................................................... 14
3.5
SEZNAM ALIASŮ A PROMĚNNÝCH PRO DI0, DI1, DO0, DO1..... 15
4 ZÁVĚR¨ ........................................................................................................ 16 5 PŘÍLOHY: ...................................................................................................16 SEZNAM PŘÍLOH: ........................................................................................... 16
POUŽITÁ LITERATURA PSP3 editor procesních stanic – obsluha programu Verze 3.39 PSP3 knihovny funkčních modulů – programátorská příručka Verze 3.39 PSP3 knihovna LA modulů Pneumatické akční členy a jejich řízení Monitorování veličin z impulsních čidel Hydraulické a pneumatické mechanismy
AMiT AMiT AMiT Ing. Tomáš Vančura Petr Karafiát Ing. Jan Flieger Ing. Martin Vyšín Za nakreslení výkresů v AutoCadu děkuji studentovy z oboru strojírenství Jakubovi Dužíkovi (třída - S4)
Popelka 2007 VOŠ a SPŠ Šumperk
1
ÚVOD 1.1 JMÉNO PROJEKTU
Nejdříve bych asi měl objasnit jméno mé práce: Popelka. Pod tímto slovem si asi každý z nás představí postavu z pohádky Tři oříšky pro Popelku. A to byl také záměr - tak jak Popelka z této pohádky dostala za úkol roztřídit hrách a čočku, tak naše Popelka má roztřídit kuličky a to podle jejich průměru.
1.2 VZNIK A VÝZNAM POPELKY Projekt Popelka vznikl díky sponzorskému daru firmy SMC, která škole dodala veškeré pneumatické díly, které byly potřeba k sestrojení tohoto obvodu. Pneumatický obvod simuluje v malém měřítku třídič určitých součástí na základě velikostí, Popelka třídí kuličky na základě jejich průměru. Obvod je sestaven jako učební pomůcka, díky které by se studenti měli dozvědět základní informace o pneumatice.
1.3 Z ČEHO SE POPELKA SKLÁDÁ, A JEJÍ OVLÁDÁNÍ Projekt Popelka se neskládá jen z pneumatických prvků. Vzhledem k tomu, že tento pneumatický obvod musí někdo nebo něco řídit, bylo zapotřebí se rozhodnout, zda obvod bude řídit člověk či automat. Jelikož tento obvod má simulovat určitou část výrobního procesu, je nutné jej ovládat některým automatizačním prvkem. Tedy bylo nutné vybrat vhodné PLCčko, podle možností školy jsme k tomuto účelu vybrali PLC od firmy AMiT a to AMiRiS99. Toto PLC je k tomuto projektu vhodný, jelikož má námi požadovaný počet binárních vstupů a binárních výstupů. Projekt Popelka je učební pomůcka, je vybavena ručním ovládáním pomocí spínačů, aby si studenti na něm mohli nejdříve odzkoušet jak tento prvek funguje, a až poté mohou naprogramovat daný programovatelný automat podle svých představ. Obrázek celkového uspořádání
Pohled ze předu AMiTsys Expert 2006/2007
Pohled ze zadu -1-
Popelka 2007 VOŠ a SPŠ Šumperk
2
Z ČEHO SE POPELKA SKLÁDÁ:
2.1
OBRÁZKY S POPISKY POPELKY Indikace
AMiRiS 99
Hlava s čelisti Vertikální posun Podavač kuliček
Labirint
Horizontáln í posun
Přívod vzduchu
Tlačítko START ( spínací )
Ventilový terminál
Rozbočovač
Zdroj
Ruční ovládání
AMiTsys Expert 2006/2007
Tlačítko STOP (rozpínací )
„Pětikolík“ k připojení ručního ovládání
Usměrňovač + stabilizátor -2-
Popelka 2007 VOŠ a SPŠ Šumperk
Popelka se skládá:
Mechanické části Pneumatické části Elektro prvků Řídicího prvku (AMiRiS99) Programu
2.2 MECHANICKÁ ČÁST POPELKY: Nosnou částí je svařená železná konstrukce, ke které jsou přichyceny plastové desky, na kterých jsou upevněny veškeré prvky, které Popelka obsahuje. Labyrint – je to část Popelky, která má simulovat zásobník, ze kterého se díly berou a místo, kam se mají součásti třídit. Do labyrintu musí Popelka dle určitých podmínek roztřídit kuličky. Labyrint je navržen tak, aby se jednou naplnil a pak už kuličky kolují pořád dokola, jelikož by bylo minimálně nepohodlné pořád ručně přidávat další kuličky pro podavač a brát je ze zásobníků, kam je prvek roztřídí.
2.3PNEUMATICKÁ ČÁST OBVODU Pneumatické schéma najdete v příloze. Konstrukce pneumatického obvodu: S konstrukcí pneumatického obvodu mně pomohla firma Elzaco, která se zabývá pneumatikou a automatizací, poskytla mně základní informace o pneumatice a profesionální nářadí, které mi zpříjemnil sestrojení tohoto obvodu. Sestrojení obvodu nebylo až takový problém, ale nejhorší bylo vyladit tlakové poměry v jednotlivých prvcích tak, abych si s tím v mém programu poradil. Nemohlo to být moc rychlé, aby nepřejížděl senzory bez povšimnutí a při zastavení aby se setrvačnou rychlostí a nevyrovnáním tlaku zastavil přesně nad senzorem. Dalším problémem bylo, že k čelistem nám byli sice dodány 3 senzory, ale na čelistech byly drážky jen pro dva tyto senzory, a to byl problém. Musel jsem ze 2 senzorů rozlišit 3 kuličky, každý by si řekl, že to není problém, jsou tam přeci 4 kombinace. S tím sice souhlasím, ale při prvním pokusu seřídit tyto senzory s kuličkami, které jsem měl to nešlo seřídit, záleželo totiž na desetinách milimetru a při otřesu, který při pneumatickém řízení vzniká, se mi vždy jemně posunul senzor a magnet, který slouží k indikaci polohy taky není úplně dokonalý. Byl jsem z toho bezradný a pak mě napadlo co takhle použít jiný průměr kuliček. Našel jsem doma nějaké kuličky z ložisek a vyšlo to. Při jiném průměru kuliček se musí senzory nastavit jinak, tak aby správně signalizovaly průměr kuliček – nastavení těchto senzorů byl asi největší problém, který jsem musel řešit při montáži pneumatických prvků. Po sestrojení pneumatického obvodu, vyladění snímání průměru kuliček, jsem musel ještě namontovat senzory k vertikálnímu posunu, s čímž nebyl nejmenší problém a dále k horizontálnímu, kde jsem musel nejdříve přidělat labyrint a dle něj nastavit senzory na tomto posunu. 2.3.1
Tlakový ventil
Tlakový ventil je prvek, u něhož je tlak na vstupu téměř nezávislý na průtoku. Tlakové ventily rozlišujeme na pojistné a přepouštěcí.
AMiTsys Expert 2006/2007
-3-
Popelka 2007 VOŠ a SPŠ Šumperk Pojistný ventil zabraňuje vzestupu tlaku v obvodu nad stanovenou hodnotu, tím jistí mechanismus proti přetížení a chrání prvky před poškozením. Přepouštěcí ventil je určen k udržování nastaveného tlaku na konstantní hodnotě, je to v podstatě proměnný odpor zařazený paralelně ke generátoru, kterým trvale protéká určité množství vzduchu. 2.3.2
Škrtící ventil:
Škrtící ventil je prvek, u něhož lze spojitě měnit velikost průtočného průřezu. Průtočný průřez ventilu představuje odpor proti pohybu tekutiny. Velmi často se používají škrtící ventily spolu s jednosměrnými ventily, kdy v jednom směru je proud tekutiny škrcen a v druhém směru může volně proudit přes jednosměrný ventil.
2.3.3
Tlumiče hluku:
Pneumatické prvky jsou často velmi silnými zdroji hluku. Nejvíce hluku vzniká při rychlé expanzi plynů do okolního prostředí, proto se na všechny kanály, ve kterých dochází k tomuto jevu, montují tlumiče hluku. V našem zapojení můžeme najít 2 takovéto prvky a to:
2.3.4
Soustava pěti 5,2 ventilů(ventilový terminál): Ventilový terminál se skládá z vícenásobné desky, na kterou je připevněna pětice 5.2 ventilů. Každý ventil lze jednoduše z této desky oddělat, vyměnit za jiný třeba i jiný druh nebo jen kvůli poškození jej vyměnit. Každý ventil je zvláště ovládán připojením elektrického napětí na cívky ventilu. Každý ventil má na sobě mikrospínač (viz. Obrázek - oranžové kolečko), kterým se dá ovládat sepnutí ventilové cívky. Při
AMiTsys Expert 2006/2007
-4-
Popelka 2007 VOŠ a SPŠ Šumperk sestrojení je to velice potřebná věc k odzkoušení zapojení. Na ventilovém terminálu je přimontován i tlumič hluku.
2.3.5
Vertikální posun (dvojčinný válec)
Dvojčinné válce mají několik výhod: dosahují daleko větších pracovních rozsahů oproti jednočinným válcům s vratnou pružinou, pracovní pohyb není pružinou ovlivňován a tedy pohyb je rovnoměrný a rychlý s možností nastavit různé rychlosti v obou směrech. Parametry použitého válce: Průměr pístu 12 mm Zdvih 50 mm Hmotnost 380 g Medium Stlačený vzduch Provozní tlak 0,12 – 1 Mpa Střední rychlost pístu 50 – 500 mm/s Tlumení koncových poloh Bez tlumení Teoreticka síla válce zasouvání – 60N Vysouvání – 79N
dvojčinný válec s jednostrannou pístní tyčí
2.3.6
Podavač kuliček (dvojčinný válec)
Tento pneu prvek se skládá také z dvojčinného válce, ale má jiné parametry než vertikální posun: Průměr pístu 12 mm Zdvih 15 mm Hmotnost 250 g Medium Stlačený vzduch Provozní tlak 0,1 – 1 Mpa Střední rychlost pístu 50 – 500 mm/s Tlumení koncových poloh Bez tlumení Teoreticka síla válce zasouvání – 69N Vysouvání – 79N
AMiTsys Expert 2006/2007
-5-
Popelka 2007 VOŠ a SPŠ Šumperk 2.3.7
Horizontálního posun (bezpístnicový válec)
Slouží k horizontálnímu přesuny hlavy s kuličkou. Má 2 drážky pro senzory. U Popelky je na tomto pojezdu umístěny 4 senzory (3 senzory signalizují polohu nad labyrintem a 1 udává výchozí polohu). Parametry: Průměr pístu Zdvih Hmotnost Medium Provozní tlak Střední rychlost pístu Tlumení koncových poloh Teoreticka síla válce
2.3.8
2x12 mm 100 mm 1140 g Stlačený vzduch 0,15 – 0,7 Mpa 50 – 500 mm/s Hydraulické tlumiče na obou stranách zasouvání – 119N Vysouvání – 158N
Hlavy s čelisti
Slouží k uchopení kuličky, má na svém těle připevněny 2 senzory které snímají průměr kuličky. Parametry: Průměr pístu 12 mm Rozevření čelistí 6 mm Hmotnost 154 g Medium Stlačený vzduch Provozní tlak 0,2 – 0,6 Mpa Efektivní síla čelistí Za vnější povrch – 31 N Za vnitřní povrch – 35 N 2.3.9
Senzory V tomto zapojení využívám 2 druhy magnetických senzorů.
Magnetické senzory Magnetické senzory jsou ovládány prostřednictvím magnetického pole a jsou vhodné pro snímání polohy pístů v pneumatických válcích. Skutečnost, že magnetické pole prochází nemagnetickým kovem umožňuje, aby senzor identifikoval polohu pístu opatřeného permanentním magnetem přes hliníkovou stěnu pneumatického válce. Zdrojem magnetického pole pro magnetické senzory je permanentní magnet (nejčastěji magneticky tvrdý ferit či magnety NdFeB).
AMiTsys Expert 2006/2007
-6-
Popelka 2007 VOŠ a SPŠ Šumperk
V zapojení využívám pro snímání polohy senzory s jazýčkovými kontakty: Jazýčkové kontakty (reed contacts) - dva kontakty zhotovené z plíšků z magneticky měkkého materiálu jsou spínány polem permanentního magnetu. Hodnoty magnetického pole pro sepnutí a rozepnutí kontaktů se liší a vzniklá hystereze přispívá k odolnosti proti náhodnému sepnutí. Oba jazýčky jsou pokryty vrstvou vzácných kovů (Ag, Au, Pt) a zataveny do skleněné trubičky naplněné inertním plynem pod nízkým tlakem. Bez působení magnetického pole jsou kontakty zpravidla rozpojeny - vyrábějí se ale i jazýčkové kontakty s opačnou funkcí (v nulovém poli sepnuté). Doba sepnutí je okolo l ms. Senzory jsou velice důležité v automatizaci, díky nim můžeme obvod synchronizovat tak, aby dělal přesně to, co my potřebujeme. Bez použití senzorů by se jen těžko takovýto pneumatický obvod ovládaný nějakým logickým zapojením dal sestavit. Jedna z možností, jak udělat automatické ovládání takovéhoto nebo podobného obvodu je odčasovat ho. Nejdříve si to musím vyzkoušet nanečisto, změřit čas za jak dlouho udělá jednotlivé kroky a pak tento čas vložit v podobě časových smyček do našeho algoritmu. Tento způsob automatizace je ovšem hodně špatný. Lze to takhle sice realizovat, ale co když se nám zmenší nebo zvětší tlak v obvodu. Celý obvod by nejen pracoval nevypočitatelným způsobem, ale jeho některé pneumatické části by mohly přijít k újmě (např. na našem obvodu, kdyby byl špatně odčasován, mohlo by se stát, že kdyby byla hlava s čelistmi vlevo dole, nestihla by v daném intervalu vyjet úplně nahoru a hned by jela doprava, to by mělo za následek poškození labyrintu, možná i pneumatického prvku hlavy s čelistmi, což není zrovna levná záležitost. Z toho vyplývá, že takhle se automatizace dělat nedá, je nutné použít senzory).
2.4 ELEKTRO PRVKY: Popelka se skládá z několika elektro prvků a to: rozbočovač, zdroj, stabilizátor + usměrňovač, průmyslová řídicí stanice AMiRiS99 (tomuto zařízení bude věnovaná zvláštní kapitola), ruční ovládání a indikace. Veškeré návrhy plošných spojů a schématů můžete najít v přílohách.
2.4.1
Rozbočovač:
Tato část Popelky má největší DPS, slouží k zpřehlednění a snadnějšímu připojení jednotlivých prvků. Z jedné strany této desky jsou signály přiváděné (horní část DPS) a z druhé strany desky jsou signály vysílané (dolní část DPS). Velkou výhodou umístění rozbočovače do našeho obvodu je, že vodiče, které vedou v kabelu od jednotlivých senzorů, jsou stejně dlouhé a to se hodí pro jejich další použití nebo jejich přepojení na jiný vstup v našem obvodu. Na této desce můžete také najít 3 relátka, která mají na starost, aby se Popelka neprofesionalním zacházením nemohla poškodit. Použil jsem zde reléovou logiku, která je znázorněná a popsaná na obrázku. AMiTsys Expert 2006/2007
-7-
Popelka 2007 VOŠ a SPŠ Šumperk Řešil jsem zde 2 podmínky: - Když bude hlava s čelistmi dole vpravo nemůže jet vlevo jelikož by poškodil labyrint - Když bude hlava s čelistmi nad labyrintem nemůže jet dolů A třetí relé je tam k odpojení napájení od výstupů z AMiRiSu 99, které ovládají ventily, aby se uživatel, který chce ovládat ručně „nedohadoval“ s AMiRiSu 99.
2.4.2
Zdroj:
V obvodu jsem využil zdroj střídavého napětí s efektivní hodnotou 24V. Je to bezpečnostně oddělovací transformátor 230/24 V, takže ho stačilo jen připevnit na konstrukci Popelky. 2.4.3
Usměrňovač + stabilizátor:
Popelka má několik prvků, které je nutné napájet. Většina z nich je na 24V DC, a jelikož použitý zdroj je střídavý, bylo nutné ho usměrnit (Gretzovým můstkem). Po usměrnění je nutné ještě toto napětí vyhladit, po vyhlazení již stačí jen napětí stabilizovat na požadované napětí. Na krabičce od zdroje jsou rozmístěny 3 diody pro signalizaci napájení výstupů, vstupů a AMiRiSu99. Každý výstup ze zdroje je chráněn příslušnou pojistkou. Když nastane chyba v jednom z obvodů, dojde k destrukci pojistky a do této části dále nebude dodáváno napětí, dle pojistek a diod se dá rychle a jednoduše zjistit, ve které části obvodu nastala chyba a její identifikace je rychlejší. 2.4.4
Indikace a dálkové ovládání
Indikace - jde o DPS, která pomocí 8 mm diod signalizuje určité stavy, ve kterých se nachází pneumatický obvod. Jde o signalizaci „chod“ (jestli obvod nespí a pracuje), „výchozí poloha“ - jde o polohu hlavy s čelistmi, a to když je umístěná vlevo nahoře, dále jsou zde další 3 diody, které signalizují různý průměr již uchopených kuliček. Výstupy z této DPS jsou vhodně připojeny do rozbočovače, kde jsou propojeny s určitými výstupy z procesní stanice AMiRiS99, je nutné je programově řídit. Dálkové ovládání – jde o DPS, která obsahuje 5 tlačítek jejichž výstupy jsou kabelem propojeny s rozbočovačem a připojeny přes relé do elektricky ovládaných ventilů. Slouží k tomu, aby si studenti mohli odsimulovat to, co budou programovat. Relé, přes které jsou
AMiTsys Expert 2006/2007
-8-
Popelka 2007 VOŠ a SPŠ Šumperk tyto výstupy z dálkového ovládání propojeny s ventily, zde tvoří určitou hardwarovou ochranu před zničením mechanických částí.
2.5 ŘÍDICÍ PRVEK: K řízení popelky jsem si vybral AMiRiS99. Tento průmyslový automat se dodává i s vývojovým prostředím a to s PSP3. K AMiRiSu99je nejvhodnější verze 3.34 která obsahuje i systém NOS, který je kompatibilní s tímto průmyslovým automatem. 2.5.1
Základní technické parametry AMiRiSu99:
Číslicové vstupy universální střídavý/stejnosměrný
16 x 24V ss/st Logická 0 min -30 V, max 5 V Logická 1 min 16 V, max 30 V
Ochrana číslicových vstupů
Transil 600W
Pevnost galvanického oddělení
600 V
Číslicové výstupy tranzistorové
16 x 24 V/0,5 A ss
Ochrana tranzistorových výstupů Číslicové výstupy reléové Analogové vstupy Ochrana analogových vstupů
Transil 600 W 9 x relé na modulu AREL7S2P-X 8x
0..10 V/0..5 V/ 0..20 mA/ Ni1000 Diody + odpor 10KOhm
Analogové výstupy s modulem AM-AO2U
Max 4x 0..10 V zatížení max 10 mA
Analogové výstupy s modulem AM-AO2U
Max 4x 0..20 mA, maximální impedance 500 Ohm
Ochrana analogových výstupů
Sériový komunikační kanál
Krytí Připojení signálů Napájení Odběr (bez výstupů) Pracovní teplota Maximální vlhkost Hmotnost Rozměry (š x v x h) Zálohování RAM Programování
AMiTsys Expert 2006/2007
Transil 600 W RS232 RS485 galv. odd. 600 V (s modulem AM-RS485) CAN galv. odd. 600 V (s modulem AM-CAN) RS232 bez galv. odd. (s modulem AM-RS232) M-Bus galv. odd. 600 V (s modulem AM-MBUS/1-3) IP20, umístěno v kovovém krytu Pružinové konektory WAGO 24 V ss ±20% Max. 250 mA při 24 V 0 ÷ 70 °C 95% nekondenzující 1,9 kg 316 x 193 x 50 mm 5 let PSE (NOS), jazyk C (AC166)
-9-
Popelka 2007 VOŠ a SPŠ Šumperk 2.5.2
Rozmístění konektorů a fotky AMiRiSu99:
AMiTsys Expert 2006/2007
- 10 -
Popelka 2007 VOŠ a SPŠ Šumperk 2.5.3
Umístění AMiRiSU99 na Popelce: AMiRiS99 je přišrouben ke stojanu Popelky.
Není na jeho kostru přiveden ochranný vodič, jelikož na něm není nebezpečné napětí: pracuje se zde s napětím 24 V.
3
PROGRAMOVÁNÍ ALGORITMU 3.1 OSNOVA, PODLE KTERÉ JSEM POSTUPOVAL
1) Při prvním programování průmyslového automatu jsem musel do PLC nahrát operační systém, kterému se říká NOS. 2) Vyplnil jsem veškeré informace o stanici a k přenosu programu. 3) A MOHL JSEM ZAČÍT S TVOŘENÍM ALGORITMU. 4) Vyplnil jsem základní tabulku proměnných (DI0,DI1,DO0,DO1) – při programování jsem ji doplňoval dle potřeby. 5) Vyplnil jsem veškeré zatím známé aliasy, které budu v programu používat, pro tento účel mi posloužilo blokové schéma, pneumatické schéma a DPS rozbočovače, dle potřeby jsem tuto tabulku při programování doplňoval o další aliasy. 6) Vytvořil jsem první proces, který bude v určitém intervalu číst ze vstupů a zapisovat do proměnných a který bude číst z proměnných a zapisovat na výstupy. Tento proces je jeden z nejdůležitějších. 7) Vytvořil jsem si hlavní proces, ve kterém se ovládají veškeré prvky obvodu. První věcí, co by měl programátor udělat když, začne programovat hlavní proces v Popelce, je ošetření vypínání a zapínání celého systému a to zeleným a červeným tlačítkem zapojeným do logického kanálu DI1. Dále už zbývá „jen “ vytvořit podmínky, do kterých se AMiTsys Expert 2006/2007
- 11 -
Popelka 2007 VOŠ a SPŠ Šumperk musí Popelka dostat a po té změnit logické úrovně na jednotlivých ventilech. Když už někdy nebudou stačit podmínky, je nutné sem vložit časovač, kterým se u Popelky musí odčasovat otevření a zavření čelistí. Časovač zde používám ještě k jedné věci, což je už jen takové vylepšení algoritmu. Je to časovač, který stopuje zda je tlačítko STOP zmáčknuto delší dobu nežli 2s a jestliže je, pak se Popelka vystaví do výchozí polohy. Poté může být spuštěna pomocí tlačítka START. Při dokončení algoritmu a testování jsem přišel ještě na 2 zásadní bezpečnostní nedostatky: 1) jestliže byl zahájen vertikální posun, tak se tento posun i když jsem stiskl tlačítko STOP, vždycky dokončil. Šlo o to, že při stisku STOP se veškeré proměnné nechaly tak, jak byly vystaveny těsně před tím, než bylo stisknuté tlačítko STOP. Toto jsem ošetřil 2 podmínkami, které při stisku tlačítka STOP sledují jaké ventily jsou zapnuty a dle toho vyhodnotí, zda se má změnit aktuální nastavení ventilů, aby se přístroj zastavil. Při aplikaci v nějaké firmě by absence této podmínky mohla vést až k úmrtí. Kdyby se člověk dostal do místa, kde nemá co dělat, někdo by jej uviděl, rychle by zmáčkl tlačítko STOP, ale stroj by se nezastavil, ale dodělal by svůj aktuální pohyb, což by jej mohlo i zabít. 2) Dalším bezpečnostním prohřeškem, na který jsem přišel, bylo když měla Popelka v úchopu nějakou kuličku a při tom ji někdo vypnul. Po zapnutí Popelka jela pro další kuličku, ale to by neměla. Nejdřív měla odvést kuličku, kterou měla v čelistích, a pak teprve jet pro další. To jsem řešil zjištěním, zda má kuličku v čelistech při stisku tlačítka START a jestliže má, pak se vykonalo potřebné vystavení proměnných tak, aby se dostal běh programu v algoritmu na to místo, kde se rozhoduje, kam má kuličku zavést. Jestliže nemá kuličku v úchopu, tak se vystavily do vyhovujících logických stavů veškeré proměnné a vše šlo jak má. Další již takovou dodělávkou bylo dodělat obsluhu indikace. Problém při obsluze indikace je popsán v kapitole 3.3 „problémy které jsem řešil v mém algoritmu“ V tomto procesu se nachází mnoho podmínek – vyjadřují, kdy se má co vykonat např. Kdybych se chtěl dostat do výchozí polohy, musím vynulovat veškeré proměnné svázané s ventily a musím počkat do té doby, než se splní podmínka, že senzory, které určují výchozí polohu Popelky, budou v sepnutém stavu – k tomu jsou použity podmínky v reléovém schématu moduly LD řazeny v sérii a v pseudojazyku vnořováním příkazu If..EndIf. - takovýchto podmínek se v algoritmu nachází mnoho a nahrazují nepřesné časovače, kterými by se dalo toto zapojení také naprogramovat, ale jakmile by došlo k poklesu nebo zvýšení tlaku, stal by se tento stroj nepředvídatelným. - v algoritmu používám také časovače, ale to jen k otvíraní a zavírání čelistí, jelikož na tomto pneumatickém prvku nejsou umístěny koncové senzory, ale jen dva senzory, které mají 3 různé kombinace (při aspoň jednom aktivním senzoru), tyto dva senzory slouží jen pro vyhodnocení průměru kuličky. Nemalou částí mého programu je nulování. Nulovaní je jiné pro další periodu, stisk tlačítka START, tlačítka STOP a delším stisku tlačítka STOP.
3.2 PROGRAMOVÁNÍ VE VÝVOJOVÝCH PROSTŘEDÍCH Program PSP3 je zatím naprogramován jen pro DOS. V operačním systému Windows se tento program dá rozjet pod příkazovým řádkem. Je také vybaven knihovnou win32, takže by měla být práce v tomto OS bez problémů, toto mohu potvrdit. K největším nevýhodám tohoto programu patří absence simulace, jelikož je minimálně nepohodlné, že vždy když chce AMiTsys Expert 2006/2007
- 12 -
Popelka 2007 VOŠ a SPŠ Šumperk programátor odzkoušet svůj program, tak ho musí nahrát do automatu a pak teprve otestovat. Dalším nedostatkem je samotný systém, pro který je PSP3 naprogramováno. Je složitější se přepínat mezi okny jednotlivých procesů či databází, grafické prostředí by tento problém vyřešilo. Firma AMiT teď vyvíjí nové vývojové prostředí, které už je dostupné, ale jen ve verzi testovací, o tomto programu jsem se dozvěděl na veletrhu Ampér, kde jsem navštívil stánek AMiTu. Zde mně byl program představen a dostal jsem také instalační CD s novým vývojovým prostředím (DetStudio). Doma jsem ho hned otestoval a zjistil jsem, že je pro programovaní minimálně v pseudojazyku uživatelsky příjemnější než-li jeho předchůdce PSP3. O vývoji v pseudojazyku se můžete dočíst v kapitole: Při tvoření programu v PSP3 jsem se držel osnovy, kterou jsem napsal na začátku této kapitoly. V procesech jsem využil hlavně reléová schémata, které se mi pro mne jako uživatele, který nikdy neprogramoval žádné PLC zdálo nejjednodušší. Ale jelikož jsem při programovaní narážel na problémy, které bych jednoduše vyřešil, kdybych měl jazyk podobný Cčku, tak jsem se po naprogramování programu v reléovém schématu začal zajímat o další možnosti programování PLC od firmy AMiT. Zjistil jsem, že se dají programovat v pseudojazyku, který je vzdáleně podobný Cčku, což se mně zamlouvalo. Ale když jsem zjistil způsob zápisu v PSP3, kde jsem jen vybíral moduly a zapisoval jejich parametry, moje nadšení bylo to tam. Po návštěvě Ampéru jsem přišel na to, že v DetStudiu se dá také programovat v pseudojazyku a dají se moduly klasicky psát v textovém režimu, což mně vyhovovalo, jelikož to bylo podobné jako v Cčku. A tak jsem se dal do vývoje. Bylo to pro mne jednodušší nežli v reléovém schématu. A dle mě se v tomto zápisu programu lépe vyznává, lépe se program jak doplňuje, tak i upravuje. Komentování programu je také jednodušší a dle mě se dá udělat i přehledněji než v reléovém schématu. V příloze přikládám program, který je jak v reléovém schématu nejdříve exportován do DetStudia a posléze vytisknut do pdf. Také přikládám dokumentaci exportovanou detstudiem řídicího algoritmu napsaném v pseudojazyku.
3.3
PROBLÉMY, KTERÉ JSEM ŘEŠIL V MÉM ALGORITMU:
Když hlava s čelistmi je vlevo nahoře, má dvě možnosti volby, které závisejí na tom, v jaké části procesu bude. Řešil jsem to zvolením dalších několika bitových proměnných, do kterých se načítala část vykonaného procesu. Při testování mého algoritmu jsem přišel na další problém, když čelist uchopila kuličku, vyhodnotil program správně průměr kuličky, měl vyjet nahoru a jet doprava. Tam se měl zastavit nad otvorem, který odpovídá danému průměru. Ovšem on se zastavoval jen někdy a většinou jen kolem daného otvoru projel. Tak jsem hledal chybu v zapojení modulů v reléovém schématu a nemohl jsem nic najít. Na konec jsem přišel na to, že když čelisti přejíždí přes senzor, kde by se měly zastavit, tak nestihnou procesy zjistit stavy na vstupech, vyhodnotit je a poslat na výstupy, že se mají čelisti zastavit. Měl jsem totiž na všech procesech nastavenou periodu 0,1s, a to při nejhorší situaci udělá prodlevu 0,3s dlouhou, na to jak rychle jede horizontální posun je tato prodleva příliš dlouhá. Proto jsem změnil druh procesu na quick a hi a tím se to vyřešilo. Dále jsem tu řešil problém s indikací. Indikace musela fungovat jak u ručního ovládání tak u automatického. To jsem vyřešil dvěmi dalšími funkcemi, které jsou volány z hlavního procesu, podle toho zda je program zapnut nebo není. AMiTsys Expert 2006/2007
- 13 -
Popelka 2007 VOŠ a SPŠ Šumperk
3.4ROZDĚLENÍ PROCESŮ: Rychlé procesory: Proces pro zápis binárních vstupů do proměnných a zápis proměnných do digitálních výstupu jsem zvolil jako quick, jelikož musel stihnou načíst polohu, kde se kulička nachází a když ještě budou čelisti na senzoru, má se změnit výstup amirisu99 tak, aby čelisti zastavili, jelikož posun který registrují senzory, je velice rychlý, nestačil mi klasický proces s periodou 0,1s. Ještě jeden proces jsem musel zvolit jako rychlý a to proces, který taky souvisí se zastavením čelistí přímo na senzoru. Jednalo se o proces, který vyhodnocuje, zda je kulička nad senzorem či ještě není. Nejdříve jsem chtěl dat celý řídicí proces jako rychlý proces, ale jelikož by to více zatěžovalo procesor, tak jsem jej rozdělil na dva: hlavní proces, proces pro roztřídění kuliček. Klasické procesy: Hlavní proces, který jsem použil ke komplexnímu řízení Popelky, měl periodu 0,1s, která pro tento proces byla dostačující – tento proces volá různé „funkce“, které už nemají logicky žádné periody, ale jsou zavolány z procesu a po vykonání se průběh programu vrátí do místa, kde byla funkce volána. Funkce, které volám, jsou pro nulování a signalizaci, jinak je vše zahrnuto v hlavním procesu. Proces slouží k monitorování tlačítka stop a jakmile je zmáčknuto déle než 1s dostane se Popelka do pozice – výchozí poloha. Funkce LibXXX V těchto funkcích mám naprogramované nulování a signalizaci. Dokumentaci programu vyexportovanou z DetStudia najdete v příloze
AMiTsys Expert 2006/2007
- 14 -
Popelka 2007 VOŠ a SPŠ Šumperk
3.5 SEZNAM ALIASŮ A PROMĚNNÝCH PRO DI0, DI1, DO0, DO1 Bez kterého bych se při tvorbě programu neobešel – využíval jsem tuto tabulku, jelikož PSP3 není programován pro grafický OS a nemohl jsem mít naráz viditelných několik oken. Proměnná DI1.0 DI1.1 DI1.2 DI1.3 DI1.4 DI1.5 DI1.6 DI1.7
Alias Stop Start
Komentář Tlačítko stop (rozpínací) Tlačítko start (spinaci)
SV3
Senzor velký nevyužitý
DI0.0 DI0.1 DI0.2 DI0.3 DI0.4 DI0.5 DI0.6 DI0.7
SM1 SM2 SM3 SM4 SM5 SM6 SV1 SV2
Ver. posun 1. Ver. posun 2. Ver. posun 3. Ver. posun 4. Hor. Posun vrchni Hor. Posun dolni Celisti 1 Celisti 2
DO1.0 DO1.1 DO1.2 DO1.3 DO1.4 DO1.5 DO1.6 DO1.7
V1 V2 V3 V4 V5
Ventil 1 Ventil 2 Ventil 3 Ventil 4 Ventil 5
DO0.0 D1-provoz Dioda – provoz DO0.1 D2-vychozi_poloha Dioda – vychozi poloha DO0.2 D3-prazdny_zasobnik Dioda – prazdny zasobnik DO0.3 D4-5mm Dioda – prumer 5mm DO0.4 D5-6mm Dioda – prumer 6mm DO0.5 D6-7mm Dioda – prumer 7mm DO0.6 DO0.7 Legenda: SM – senzor malý – jedná se o senzor kontaktní (dvouvývodový) SV – senzor velký – jedná se o senzor signálový (napájení +, -, data) AMiTsys Expert 2006/2007
- 15 -
Popelka 2007 VOŠ a SPŠ Šumperk
4
ZÁVĚR
Díky této práci jsem se seznámil s pneumatikou, která pro mne byla do této doby neznámá. Dále jsem se naučil základy automatizace, pracovat ve vývojovým prostředí psp3, detstudio, osvěžil jsem si znalosti z návrhu plošných spojů v programu Eagle. Doufám, že bude tato moje práce dobrou učební pomůckou pro studenty a že se na ní naučí tolik věcí jako já. Anglická anotace The Popelka 2007 Popelka is a teaching instrument. It presents that some machine catches some object and do whith that object what it had to do in agreement with information which it finds out when the machine catches this object. It is a part of industry process. Popelka sorts marbles in agreement with diameters. With this machine can students get some information about pneumatic. They can create a programm for it and learn something about automation. When I was working on this project, I got a lot of intresting information and I think that students will get this information too.
5
PŘÍLOHY:
SEZNAM PŘÍLOH: 1) Schémata + DPS + osazovačka navržených prvků: a. Rozbočovač b. Usměrňovač + stabilizátor c. Indikace + ruční ovládání 2) Blokové schéma celého obvodu 3) Fotky již osazených DPS 4) Pneumatické schéma zapojení 5) Nákresy vyrobené v AutoCadu 6) Vygenerovaná dokumentace z DetStudia (jak pro RS tak i pro pseudojazyk) – příloze mimo tento dokument
AMiTsys Expert 2006/2007
- 16 -
Popelka 2007 VOŠ a SPŠ Šumperk
DPS rozbočovače:
AMiTsys Expert 2006/2007
- 17 -
Popelka 2007 VOŠ a SPŠ Šumperk
Osazovačka rozbočovače:
AMiTsys Expert 2006/2007
- 18 -
Popelka 2007 VOŠ a SPŠ Šumperk Schéma zdroje:
AMiTsys Expert 2006/2007
- 19 -
Popelka 2007 VOŠ a SPŠ Šumperk Zdroj pokládačka:
Zdroj DPS:
AMiTsys Expert 2006/2007
- 20 -
Popelka 2007 VOŠ a SPŠ Šumperk
Pokládačka a DPS ručního ovládání
Pokládačka a DPS indikace
AMiTsys Expert 2006/2007
- 21 -
Popelka 2007 VOŠ a SPŠ Šumperk Fotky již osazených DPS
Osazená DPS zdroje
Osazená DPS rozbočovače
Osazená DPS indikace
AMiTsys Expert 2006/2007
Osazená DPS ručního ovládání
- 22 -
Popelka 2007 VOŠ a SPŠ Šumperk Blokové schéma celého obvodu:
AMiTsys Expert 2006/2007
- 23 -
Popelka 2007 VOŠ a SPŠ Šumperk
Pneumatické schéma zapojení
AMiTsys Expert 2006/2007
- 24 -
Popelka 2007 VOŠ a SPŠ Šumperk Výkresy kompletního zapojení
Řízení vzduchu
Zdroj Usměrňovač + stabilizátor
Indikace
AMiRiS 99
AMiTsys Expert 2006/2007
- 25 -
Popelka 2007 VOŠ a SPŠ Šumperk
Regulace Vstupního tlaku
Ventilový terminál
Úchopná část
Vertikální posun
Labirint Podavač kuliček Horizontální posun
AMiTsys Expert 2006/2007
- 26 -
Popelka 2007 VOŠ a SPŠ Šumperk
AMiTsys Expert 2006/2007
- 27 -