163 52 68MB
Norwegian Pages 221 Year 1993
J. Ouwehand A. Drost
Styrings- og automatiseringsteknikk II Bokmål Norsk utgave ved Odd Hammertoft og Øyvind Lundegaard
®NKI
Originaltittel: Besturingstechniek en automatiseringstechniek 2 © 1988 by B.V. Uitgeverij Nijgh & Van Ditmar, The Hague, The Netherlands Norsk utgave: ©NKI 1993 1. utgave 1. opplag 1993
Utgiver: NKI Forlaget Hans Burums vei 30 Postboks 111, 1341 Bekkestua Tlf: Sentralbord 67 58 88 00 Ordrekontor 67 58 89 00
Sats: PrePress as Trykk: GCS as Det må ikke kopieres fra denne boka i strid med åndsverkloven og fotografiloven eller i strid med avtaler om kopiering inngått med KOPINOR, interesseorgan for rettighetshavere til åndsverk. Kopiering i strid med lov eller avtaler kan medføre erstatningsansvar, og kan straffes med bøter eller fengsel.
ISBN 82-562-2915-2
Forord
Digitale styresystemer blir mer og mer brukt i dagens industri. Boka Styrings- og automatiseringsteknikk II er en videreføring av del I og dekker læreplanen innen faget styrings- og reguleringsteknikk for Automatiker, VK I og VK II, og store deler av fagene i styrings- og praktisk reguleringsteknikk på henholdsvis linje for elkraft- og automatiseringsteknikk i teknisk fagskole. Boka er også godt egnet som fordypningslitteratur på linjene maskin- og prosessteknikk, Teknisk fagskole. Hovedvekten i denne boka er imidlertid lagt på styring med PLS-teknikk.
Grafcet-funksjonsdiagramnet blir i stor utsterkning benyttet som grunnlag for utarbeidelse av program. Lærestoffet blir godt belyst gjennom et stort antall eksempler og prosjekter fra virkeligheten. Alle med løsningsforslg.
Boka avslutter med et par kapitler som grundig beskriver utviklingen innen fleksibel produksjonsautomatisering (FPA).
Innhold
1
1.1 1.2 1.2.1 1.3 1.4 1. 5 1.6 1.7 1.8
2
2.1 2.2 2.3 2.4 2.5 2.6 2.6.1 2.6.2 2.7 2.8
3
3.1 3.2
Spesielle styringer
]
Innledning Ulikhetsminner Kontrolltelling Eksempler Styringsformler, regler Eksempler Oppgaver Kontrollert stopp-prosedyre Oppgaver
1 1 3 4 5 6 14 15 22
Sekvensstyringer og grafcet-funksjonsdiagrammer I
26
Innledning Sekvensstyringer Skiftebetingelser og regler Eksempler Grafcet-funksjonsdiagram Grafcet-manipulasjoner Betinget gjentakelse Betingede sprang Eksempler Oppgaver
26 26 30 31 37 38 38 40 42 50
Grafcet-funksjonsdiagrammer II
54
Innledning Samtidige sekvenser
54 56
3.2.1 3.2.2 3.3 3.4 3.5 3.6
PLS-programmer for samtidige sekvenser Låsing av nulltrinnet Forgreninger Gjentakelse av sekvenser (subrutiner) Eksempler Oppgaver
58 66 66 69 73 86
4
Prosjekter
89
4.1 4.2 4.3 4.4 4.5 4.6
Innledning Prosjekt 1: Prosjekt 2: Prosjekt 3: Prosjekt 4: Oppgaver
$9 89 96 101 105 107
5
5.1 5.2 5.2.1 5.3 5.3.1 5.4 5.5 5.6 5.7
6
6.1 6.2 6.3 6.4 6.5 6.5.1 6.5.2 6.5.3 6.6
Bøye- og skjæremaskin Løsemekanisme for en matrise Anlegg for pakking på pall Røreverk
Tellere
H8
Innledning Prinsippet for en frekvensdeler Frekvensdeleren som teller Dekodere Desimaltelling IC-teknikk med tellere Telling med PLS Tellere og grafcet-funksjonsdiagrammer Oppgaver
118 118 121 123 125 126 131 133 134
Styringer med tellere
136
Innledning Telling med PLS Kombinatoriske styringer med tellere Sekvensielle styringer med tellere Prosjekter Prosjekt 1: Skiftestasjon Prosjekt 2: Testinnretning Prosjekt 3: Fyllemaskin Oppgaver
136 136 139 142 1 46 146 149 132 134
7
7.1 7.2 7.3 7.4 7.5 7.5.1 7.5.2 7.5.3 7.6 7.6.1 7.6.2 7.6.3 7.6.4 7.6.5 7.7 7.7.1 7.7.2 7.8 7.9
8
8.1 8.2 8.2.1 8.2.2 8.3 8.3.1 8.3.2 8.3.3 8.4 8.5
Fleksibel produksjonsautomatisering (FPA) I
160
Innledning Apparatur Organisasjon Informasjon Systemer Fleksible produksjonsceller Fleksible monteringsceller Styring av celler Identifikasjon av produkter Optisk kodeavlesning Identifikasjon med stolpekode Punktkoden Mekaniske etiketter Elektroniske etiketter Dynamiske buffere Automatisk styrte kjøretøyer (AGV) Transportbaner Overføringsbaner Oppgaver
160 162 163 164 165 165 166 167 167 168 169 173 174 179 180 181 182 184 189
Fleksibel produksjonsautomatisering II
191
Innledning "Pick & place"-enheter Ikke fritt programmerbare "pick & place"-enheter Fritt programmerbare "pick & place"-enheter Roboter Robottyper Tool center point Robotstyring Nettverk Oppgaver
191 192 193 195 198 200 205 205 207 211
1
Spesielle styringer
1.1
Innledning
I del 1 har vi bare behandlet sekvensielle styringssystemer hvor vi utleder en kommando av de signalene som er til stede. Når det gikk fram av styringsformlene at en bestemt signalkombinasjon forekom på flere skillelinjer, kunne vi ved valget av neste signal forhindre at kommandoen ble gitt flere ganger. Det fins imidlertid praktiske situasjoner hvor dette signalet mangler. Vi snakker med andre ord om situasjoner hvor den samme kommandoen forekommer på forskjellige skillelinjer. Når det er tilfellet, og vi bare kan danne én kommando, må vi finne fram til andre metoder for å skille signalkombinasjonene fra hverandre. I dette kapittelet skal vi derfor introdusere det vi kaller et ulikhetsminne. Når det gjelder virkningen av en nødstopp-prosedyre, har vi hittil begrenset oss til systemer hvor energiomformeme blir brakt tilbake til utgangsposisjonen. Men det fins mange praktiske eksempler på at dette er umulig. I disse tilfellene kan vi ikke følge et fast mønster etter en stopp-prosedyre. Teknikkene vi da må ta i bruk, skal vi komme inn på i dette kapittelet.
1.2
Ulikhetsminner
For å være helt sikker på at den samme kommandoen ikke opptrer på forskjellige skillelinjer, er det utviklet en metode slik at vi på en enkel måte kan kontrollere dette og ta en beslutning ut fra resultatet. Denne metoden skal vi belyse med et par eksempler. Figur 1.1 viser en sekvensiell styring.
1
Styringsformler: B’ A* A B~
=■= = =
b() b, a0 a1 anbt
s,
Figur 1.1
Vei-signal-diagram
Når vi setter opp styringsformlene ved hjelp av vei-signal-diagrammet, ser vi at kommandoene A+ og B' blir gitt av de samme signalene. Vanligvis går vi nå inn i diagrammet og søker etter et signal som gjør A+ og B~ forskjellige. Et slikt signal forekommer ikke i dette tilfellet. Signalkombinasjonene på skillelinje 2 og skillelinje 4 er
Styringsformler: Q. = Qr = Q = B'= A = A~= B =
b0 • s, a, _ (b0-st + q) -3! q b, ' a0 ■ q a, a0-bj q
Figur 1.2
Vei-signal-diagram med minne
helt identiske. For å gjøre signalene forskjellige bruker vi et minne Q som avgir logisk T på skillelinje 2 og logisk '0' på skillelinje 4. På figur 1.2 er det brukt et slikt minne i styringen fra figur 1.1. Vi ser at kommandoene A+ og B nå skiller seg ut fra hverandre.
1.2.1
Kontrolltelling
Når vi skal undersøke om vi trenger et ulikhetsminne i en sekvensiell styring, bruker vi en metode som blir kalt kontrolltelling. Figur 1.3 viser bevegelsesdiagrammet for en sekvensiell styring.
Figur 1.3
Bevegelsesdiagram
Under bevegelsesdiagrammet er det tre linjer. Hver sylinder betjener én signalgiver, aldri to. På den første linjen angir vi for eksempel posisjonen til ap 0 betyr at aj er ubetjent, mens 1 betyr at den er betjent. Det samme gjelder for bT på linjen nedenfor. For å kunne skille nuller og enere på de to linjene fra hverandre (aj er nemlig også et annet element enn bj), multipliserer vi alle verdier på den øverste linjen med 2°, på neste linjen med 21, på en eventuell tredje linje med 22 osv. I dette eksempelet viser den tredje linjen summen av verdiene på de to linjene ovenfor. Vi ser da at summen blir den samme på skillelinjene 2 og 4, nemlig 1. Konklusjonen er at den samme signalkombinasjonen er til stede på de to linjene, og at vi derfor trenger et minne som gir logisk '1' på skillelinje 2 og logisk '0' på skillelinje 4.
Merknad: Minnet skal gi henholdsvis logisk ' 1 og logisk ’0’ på de to nevnte skillelinjene, men får ikke settes eller nullstilles. Det ville føre til en ustabil situasjon i styringen. Med ustabil situasjon mener vi en situasjon hvor styringen også er avhengig av andre faktorer enn signalene og logikken.
3
1.3
Eksempler
Eksempel 1.1
Figur 1.4 viser bevegelsesdiagrammet til en sekvensiell styring. Undersøk ved kontrolltelling om vi i dette tilfellet må bruke et ulikhetsminne.
Løsning-. Når vi har satt inn verdiene til signalgiveme og addert, ser vi at vi må ha et minne som gir logisk '1' på skillelinje 2 og logisk '0' på skillelinje 5.
Eksempel 1.2
Figur 1.5 viser bevegelsesdiagrammet til en sekvensiell styring.
Undersøk om vi trenger et ulikhetsminne, og finn ut hvor dette minnet eventuelt må gi logisk T og logisk '0'.
Løsning-. Vi setter inn verdiene for signalene, hvor sylinder D representerer 23. Når vi adderer, ser vi at vi trenger et minne som gir logisk '1' på skillelinje 4 og logisk ’0' på skillelinje 6.
4
Figur 1.5
1.4
Bevegelsesdiagram med kontrolltelling
Styringsformler, regler
Bruk av minner i sekvensielle styringer byr på mange fordeler som vi nå skal behandle en for en. Som den første fordelen kan vi fastslå at når et minne blir satt eller nullstilt på en bestemt skillelinje, er dette ofte forbundet med en svært kort koplingstid. Likevel kan vi noen ganger bruke denne koplingstiden til å forlenge kommandoene til bestemte sylindere. Figur 1.6 er en gjengivelse av figur 1.2. Vi ser her at kommando A+ fortsetter til skillelinje 3, mens kommando A~ starter på skillelinje 3. Skillet mellom disse to kommandoene er frambrakt av minnet Q som blir nullstilt på skillelinje 3. Regel 1 Vi kan la en plusskommando vare fram til den skillelinjen hvor minuskommandoen begynner dersom kommandoene er atskilt av koplingstiden til et minne. Det vil si at vi bruker q i plusskommandoen og q i minuskommandoen, eller omvendt. Regel 2 Når vi har fastslått at vi trenger et ulikhetsminne, må dette så langt det er mulig innpasses i styringsformlene. Det forenkler vanligvis styringsformlene og styringen.
5
Styringsformler: Qs = b() ■ s, Qr = 9|
Q = (b0 - s, + q) a,
=q * B a1 X
bi
A ' = b, q A~ = q
B
=a()-q
Figur 1.6
Vei-signal-diagram
Regel 3 På skillelinje 1 må minnene være satt. Grunnen er at når energien faller bort, går utgangene til minnene automatisk til logisk '0'.
1.5
Eksempler
Eksempel 1.3
En sekvensiell styring består av tre sylindere. Bevegelsene er gjengitt på figur 1.7.
6
Figur 1.7
Bevegelsesdiagram
a b c
Utfør kontrolltelling og bestem hvor et eventuelt ulikhetsminne må plasseres. Sett opp styringsformlene. Tegn et pneumatisk skjema.
Figur 1.8
Vei-signal-diagram
Kontrolltellingen viser at vi trenger et minne som gir logisk '1' på skillelinje 2 og logisk ’0’ på skillelinje 5. Vi har valget mellom å nullstille dette minnet på skillelinje 3 eller skillelinje 4.1 dette tilfellet har vi valgt skillelinje 3. 7
b
Styringsformler: Qs = c0 • St
Qr Q C+ A+ A B+ B C“
c
= = = = = = = =
ai (c0-s, + q)-aj q c, -q q at b]-a0 b0-q
Figur 1.9 viser det pneumatiske skjemaet som er utarbeidet på grunnlag av styringsformlene.
Eksempel 1.4
En sekvensiell styring består av tre sylindere A, B og C og en elektromotor M som bare har en dreieretning. Bevegelsene til sylindeme og elektromotoren er gjengitt på figur 1.10.
8
Figur 1.10
Bevegelsesdiagram
a Utfør kontrolltelling og undersøk om det er behov for et ulikhetsminne. b Sett opp styringsformlene. c Tegn et strømkretsskjema. d Tegn et logisk skjema.
Løsning: a Kontrolltellingen er utført på figur 1.11. Vi ser at både skillelinjene 3 og 6 og skillelinjene 4 og 5 gir samme resultat. Den siste er imidlertid en tidsfunksjon, og her trenger vi derfor ikke å plassere et minne. Minnet Q må gi logisk T på linje 3 og logisk ’0’ på linje 6.1 vår løsning har vi valgt å sette minnet på skillelinje 2 og nullstille det på skillelinje 5. Dermed har vi brukt minnet optimalt. b
Styringsformler: Qs
=Ci
Qr Q C C“ A+ B" To A M
~ =(c!+q)-fo = a0 • c0 • st =q =q = -c0-q =bl = b0-q = ajj
c
Strømkretsskjemaet er gjengitt på figur 1.12.
d
Figur 1.13 viser det logiske skjemaet.
9
3
2 2'
1
5 5'
4
7=1
6
A
bi
B
mono
7 _ C
bi
M
mono
0
0 0
°l J 4
0
0
1
0
2°x a
1
0
0
2’ x b
0
1
0
0
22x c
3
3
1
0
1
1
0
2
0 1
St[
I
F
I
8l
5!’?!!!!!
b0 J
bi
|-
C A >
C1
........... r
1
r0
/
t0
Q
A’
77777/. 7777.
J
1
\777 W///, w////, 7777 7,
A'" 7777 B’
C‘
c* M
Figur 1.11
10
7777 77777
4----7777 7777 7777
kw
'//////, 7////Z7
Vei-signal-diagram
— W//Å
Figur 1.13
Logisk skjema
Eksempel 1.5
Figur 1.14 viser en mekanisme som presser inn pinner i et arbeidsstykke. Pinnene blir satt på plass for hånd. Styringsbetingelsene er: - Når en giver x signaliserer at en pinne er plassert i holderen og startsignalet st er gitt, går sylinder B ut og presser pinnen inn i arbeidsstykket. Sylinder B går tilbake til utgangsstillingen. Sylinder A går ut. Sylinder B går ut igjen for å presse inn neste pinne. - Sylinder B går tilbake til utgangsstillingen. Sylinder A går tilbake til utgangsstillingen. 11
Figur 1.14
Plassering av pinner
Alle sylindeme er bistabilt betjent og utstyrt med signalgivere. a Oversett styringsbetingelsene til et vei-signal-diagram. b Utfør kontrolltelling og sett opp styringsformlene. c Skriv PLS-programmene for denne mekanismen.
Løsning: a Figur 1.15 viser vei-signal-diagrammet. Det ér trukket tre ekstra linjer for kontrolltellingen. b
12
Ved kontrolltellingen viser det seg at skillelinjene 1 og 3 har samme verdi. Vi trenger derfor et minne Q som gir logisk '0' på skillelinje 1 og logisk '1' på skillelinje 3.
Figur 1.15
Vei-signal-diagram
Styringsformler:
Qs = bj a0 Qr =a,
Q B+ B" A+ A c
= = = = =
(bj • a0 + q) aj a0 • b0 • x ■ q • st + aj • b0 bj b0-q bj • aj
Når vi skal skrive PLS-programmene, må vi først gi signalene og kommandoene adresser. Se tabell 1.1. Tabell 1.1
Adresser Melsec
Hitachi a0 aj b() b, x st
=00 =01 =02 =03 = 04 = 05
Q =200 A+ = 10 = 11 B+ = 12 B~ = 13
a0 aj b0 b, x s,
= 400 =401 =402 =403 = 404 = 405
Q = 100 A" = 430 X =431 B+ = 432 B = 433
13
PLS-programmene blir da slik tabell 1.2 viser. Tabell 1.2
PLS-programmer
Melsec
Hitachi
1.6
Instruksjon
000 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022
ORG AND OR AND NOT OUT ORG AND AND AND AND NOT ST R AND OR STR OUT ORG OUT ORG AND OUT ORG AND OUT
Adr./Data 03 00 200 01 200 00 02 04 05 200 01 02
12 03 13 02 200 10 03 01 11 END
Instruksjon
LD AND OR ANI OUT LD AND AND AND ANI LD AND ORB OUT LD OUT LD AND OUT LD AND OUT
Adr./Data
403 400 100 401 100 400 402 404 405 100 401 402 432 403 433 402 100 430 403 401 431 slutt
Kommentarer
last bj og a0 eller q °g al =Q last a0 og b0 og x og st ogq last aj og b0 OR-blokk = B+ last bj = Blast bQ ogq = A+ last b] og ai = A" på programmet
Oppgaver
1 2 3 4 5
1
14
Instr. nr.
Kontrollspørsmål Hva er grunnene til at vi i noen tilfeller må sette inn et ekstra minne i en styring? Hvorfor må ikke en styring være satt på skillelinje 1? Hva er grunnene til at vi bruker minne i en styring så sant det er mulig? Hva mener vi med et ulikhetsminne? Hvilke regler gjelder for ulikhetsminner?
Øvingsoppgave Se bevegelsesdiagrammene til de sekvensielle styringene på figur 1.16. Utfør kontrolltelling og angi hvor et minne må gi logisk '1' og logisk '0'.
Figur 1.16
1.7
Bevegelsesdiagrammer
Kontrollert stopp-prosedyre
Etter en nødstopp eller stoppkommando kan vi vente at styringen reagerer på en av disse måtene:
-
Energiomformeme (elektromotorer e.l.) stanser og blir stående. Energiomformeme går samtidig tilbake til utgangsposisjonen.
Men det fins styrte maskiner hvor disse reaksjonene ikke er ønskelig fordi det kan oppstå farlige situasjoner. Det gjelder særlig anlegg eller maskiner med gripemekanismer. På figur 1.17 er for eksempel griperen G åpen i utgangsposisjonen.
Når det blir gitt startsignal, skal gripemekanismen ta tak i et produkt og overføre det til en maskin eller et verktøy. Dersom energiomformeren skulle gå tilbake til utgangs posisjonen etter en stopp-prosedyre, ville griperen åpne seg og slippe produktet. For å unngå denne situasjonen må først alle sylindere gå tilbake til utgangsposisjonen. Når dette er gjennomført, blir det gitt signal om at griperen kan åpne seg. Det kan også hende at styringen (elektrisk eller pneumatisk) faller ut. Dersom griperen blir kommandert av et monostabilt hovedkoplingselement, vil også produktet falle ut. Det er grunnen til at klemmer, gripere og andre mekanismer som skal holde et produkt fast, helst bør kommanderes bistabilt. For å unngå uønskede situasjoner kan vi også
15
Figur 1.17
Gripemekanisme
gjennomføre noe vi kaller en kontrollert stopp-prosedyre. Vi skal belyse dette nærmere med et eksempel.
16
Figur 1.18
Gripemekanismen
Eksempel 1.6
Gripemekanismen på figur 1.18 blir brukt til å plukke opp produkter fra et transportbånd og plassere dem i en klemme. Vi har disse styringsbetingelsene:
-
a b c d e
Når startsignalet st er gitt, går den vertikale sylinderen ut, V+. Griperen tar tak i produktet, G+. Den vertikale sylinderen går inn og vipper produktet opp, V-. Den horisontale sylinderen går ut, H+. Den vertikale sylinderen går ut, V+. Griperen slipper produktet, G~. Den vertikale sylinderen går inn, V~. Den horisontale sylinderen går inn, H~. Alle hovedkoplingselementene er bistabile. Når det blir gitt stoppsignal s går alle sylindeme tilbake til utgangs posisjonen. Først når det blir signalisert at dette er utført, kan griperen motta en G~-kommando. Tegn vei-signaldiagrammet Sett opp styringsformlene uten stoppsyklus Sett opp styringsformlene med stoppsyklus Tegn det logiske skjemaet Skriv PLS-programmene
Løsning: a Figur 1.19 viser vei-signal-diagrammet for styringen til gripemekanismen hvor det er tatt hensyn til alle styringsbetingelsene. Vi legger merke til at det ikke er behov for et ulikhetsminne.
b
Styringsformlene: V+ = h0-g0-st G+ =v1-h0 v” = gi ’ho
H+ V+ G v" H"
= = = = =
v0-gj hrgl vj • hj go • h! v0-g0
Når vi setter sammen V+- og V_-kommandoene, får vi dette bildet:
v+ G+ V’ H+ G" H”
= = = = = =
ho-go'St + hj -gi Vj-h0 gl-h0 + g0■ hj vo g! v1 •h1 v0-g0 17
c
18
Vi går ut fra et stoppsignal sp fra en bistabil stoppbryter som gir et holdesignal når den blir betjent. Dette signalet bryter alle plusskommandoer og gir sylindeme H og V en minuskommando. Når sylindeme har returnert til utgangsposisjonen, signalisert av v0 og h0, åpner griperen seg og slipper produktet. Styringsformlene ser da slik ut:
V = (h0 ■ g0 - st + h] -g.) G + = Vj -h0 V =gi-h0 + g0-hj = v0-g, G = Vj■h] H ' = vn-gf)
’ sp •s; + Sp ■s; + v0-h0-sp + sp
signaler for den vanlige syklusen til gripemekanismen
signaler for den kontrollerte stopp-prosedyren
Som regel blir det brukt et spesielt stoppminne istedenfor bistabile eller monostabile stoppbrytere. Dette minnet blir satt av et stoppsignal og nullstilt etter at alle sylindere eller energiomformere er tilbake i utgangsposisjonen. Ved bruk av stoppminne ser styringsformlene slik ut: Qs = sp (set dominant) Qr = v0•g0•ho______ Q — sp + q • v0 • g0 • h0 V+ G+ V’ H G“ H
= (h0-g0-st + h] -gji = V] -h0 = gt-h0 + go-hj = v0-g! = vt • h] = v0-g0
-q ■q +q q + v0-h0-q +q
d
Det logiske skjemaet er gjengitt på figur 1.20.
e
Før vi kan skrive PLS-programmene, må vi definere adressene. Se tabell 1.3. Tabell 1.3
Adresser Melsec
Hitachi v0 vj go gi h() h1 s, sp
=00 = 01 =02 =03 =04 = 05 = 06 =07
Q V+ V G G' * H H"
= = = = = = =
200 10 11 12 13 14 15
v0 V] go g, h() h] s, sp
=400 =401 =402 =403 =404 =405 = 406 =407
Q V+ V~ G’ G“ H’ H
= 200 =430 =431 =432 = 433 = 434 = 435
Programmene blir da slik tabell 1.4 viser.
19
st
sp
vo
Figur 1.20
20
V1
9o
9i
h0
h,
Logisk skjema
Tabell 1.4
PLS-programmer Melsec
Hitachi
Instruksjon
Adr./Data
Instr. nr.
Instruksjon
000 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022
ORG AND AND OUT ORG NOT AND OR OUT ORG AND AND OUT ORG AND OR AND NOT OUT ORG AND AND NOT OUT ORG AND
00 02 04 300 300 200 07 200 04 02 06 301 05 03 301 200 10 01 04 200 12 03 04
LD AND AND OUT LDI AND OR OUT LD AND AND OUT LD AND OR ANI OUT LD AND ANI OUT LD AND
400 402 404 100 100 200 407 200 404 402 406 101 405 403 101 200 430 401 404 200 432 403 404
023 024
ST R AND
02 05
LD AND
402 405
025
OR STR
026 027 028 029 030 031 032 033 034
STR OR STR OUT ORG AND AND NOT OUT ORG AND
200
035 036
Adr./Data
ORB
200
Kommentarer last v0 °g go °g ho = hjelpeadresse last hjelpeadresse ogq eller s =Q last h0 °g go og st = hjelpeadresse last hj og gi eller hjelpeadresse ogq = V+ last Vj og hø ogq = G+ lastgi l 1 ogh0 J lastg0 ) ogh1 | blokk 2 OR-blokk => blokk 1 + blokk 2 last q OR-blokk
11 00 03 200 14 01 05
LD ORB OUT LD AND ANI OUT LD AND
431 400 403 200 434 401 405
= v-
STR AND
00 04
LD AND
400 404
last v0 1 og h0 ? blokk 2
037 038
AND OR STR
200
AND ORB
200
039 040 041 042 043 044
OUT ORG AND OR OUT
13 00 02 200 15
OUT LD AND OR OUT END
ogq OR-blokk => blokk 1 + blokk 2 = Glast v0
433 400 402 og go eller q 200 = H" 435 slutt på programmet
last v0 Og gj ogq = H+ last Vj 1 og hq f blokk 1
21
1.8
Oppgaver
1 2 3 4 5 6 7 8
9
1
Kon trollspørsmål Hvordan reagerer en styring normalt på en nødstopp? I hvilke typer av styringer bør vi unngå den vanlige stopp-prosedyren? Hva mener vi med en gripemekanisme? Hvorfor blir en griper vanligvis styrt av en bistabil kommando? Hva mener vi med en kontrollert stopp-prosedyre? Hvordan blir en kontrollert stopp-prosedyre satt opp? Hvilken funksjon har stoppminnet? Hvorfor må et minne i en styring alltid nullstilles av en stopp eder nødstopp-prosedyre? Hvorfor er set dominerende i et stoppminne?
Øvingsoppgaver Figur 1.21 viser bevegelsesdiagrammene til forskjellige sekvensielle styringer. Sett opp de nødvendige styringsformlene etter de metodene vi har gjennomgått, og utfør oppgavene. Bruk nødstopp i alle tilfellene.
a Tegn et strømkretsskjema.
b Tegn et logisk skjema. 2
3
4
6
7=1
bi
mono
mono
Tegn et pneumatisk skjema.
Figur 1.21
d Skriv et PLS-program.
2
Figur 1.22 viser bevegelsesdiagrammet til en sekvensiell styring. Styringen må inneholde en stopp-prosedyre som reagerer slik mellom skillelinjene: 1-2 Sylinder A går tilbake. 2-3 Sylinder B går tilbake til utgangsposisjonen, og etter at den har returnert, blir det gitt signal slik at sylinder A går inn. 3-4 Når sylinder B er tilbake, går sylinder A inn. 4—6 Sylinder A går tilbake, og motoren stopper.
Figur 1.22
a b c d e 3
Bevegelsesdiagram
Utfør kontrolltelling. Tegn et vei-signal-diagram. Sett opp styringsformlene. Tegn et logisk skjema. Tegn en koplingsskjema for IC-er hvor det blir brukt NAND-logikk.
Figur 1.23 er en skjematisk framstilling av en bøyemaskin som består av en klemsylinder A og to bøyesylindere B og C. For maskinen gjelder disse styringsbetingelsene:
23
Sylinder A går ut og klemmer fast materialet. - Sylinder B går ut og bøyer materialet i vinkel. Deretter går den direkte tilbake til utgangsposisjonen. Sylinder C går ut og bøyer materialet videre. Etter at sylinder C har gått tilbake til utgangsposisjonen, går sylinder A inn. Sylinder A blir bistabilt betjent, mens sylindeme B og C er monostabile. a Utfør kontrolltelling. b Sett opp styringsformlene som må inneholde en stopp-prosedyre med regulert retur. Sylinder A må være den siste som går tilbake. c Tegn et strømkretsskjema for styringen. 4
24
Figur 1.24 viser prinsippet for en støpemaskin. Når startsignal er gitt, finner disse bevegelsene sted: - Sylinder S går ut og lukker støpeformen. Sylinder D åpner ventilen slik at polystyren, som står under trykk, blir blåst inn i støpeformen. - Når polystyrenet har størknet, lukker sylinder D ventilen. Deretter åpner sylinder S støpeformen, og samtidig går sylinder U ut slik at den støpte delen blir vippet ut av formen. Som ekstra betingelser gjelder at etter et stoppsignal sp skal først sylinder D lukke ventilen, og deretter skal sylinder S åpne støpeformen. - Alle sylindere er bistabilt betjent. a Utfør kontrolltelling b Sett opp styringsformlene. c Skriv et PLS-program.
Figur 1.24
Støpeform
25
2 Sekvensstyringer og grafcet-funksjonsdiagrammer I
2.1
Innledning
Hittil har vi brukt forskjellige minner som: - startminner ulikhetsminner stoppminner Når det er behov for minner i en sekvensiell styring, er spørsmålet om det ikke er mulig å iverksette hver kommando i styringen med et minne. Det har ført til utviklingen av et system som vi kan kalle sekvensstyring. En sekvensstyring består av flere minner som blir satt og nullstilt etter tur, slik at styringen blir gjennomført.
I dette kapittelet skal vi gjennomgå sekvensstyringer. Dessuten skal vi gi en grunn leggende innføring i en metode som vi kan kalle grafcet-funksjonsdiagram, og som likner mye på sekvensstyringer.
2.2
Sekvensstyringer
I sekvensstyringer bruker vi forskjellige minner i en bestemt rekkefølge. Metoden kan derfor alltid brukes i forbindelse med sekvensielle styringer. Figur 2.1 viser vei-signaldiagrammet for en sekvensiell styring med to sylindere A og B. Begge sylindeme blir bistabilt kommandert. Ved de løsningsmetodene vi hittil har behandlet, har vi funnet fram til signaler som vi har satt sammen til kommandoer. Med sekvensstyringer er dette ikke lenger nødvendig. Vi setter i stedet inn tre minner Qp Q2 og Q3 mellom skille linjene. Kommandoene blir gitt med disse tre minnene. 26
Figur 2.1
Vei-signal-diagram
A+ = Qi B = q2 A = B" = q3 Vi må selvfølgelig finne fram til signaler for å sette og nullstille minnene. Det må skje etter helt bestemte regler. Minnene må settes og nullstilles etter tur (trinn for trinn). Det vil si at et minne ikke kan settes når det foregående minnet ikke er til stede, og kan heller ikke nullstilles uten at det neste minnet er til stede.
Det betyr at: Set-signalet til et minne inneholder utgangssignalet til det foregående minnet. - Reset-signalet til et minne blir dannet av utgangssignalet til neste minne. Figur 2.2 viser et logisk skjema hvor betingelsene for en sekvensstyring er oppfylt. Figur 2.3 viser signalene og minnene til den sekvensielle styringen på figur 2.1.
27
Figur 2.2
Logisk skjema for en sekvensstyring
Styringsformlene for setting og nullstilling av minnene ser da slik ut:
Qiset Qi Q2scl Q^,ct Q3set
28
=q3-a0-b0-st = q? =qi-a1 = q3 =q2b1
Figur 2.4
Logisk skjema
Ved hjelp av formlene for minnene og kommandoene kan vi nå tegne det logiske skjemaet. Se figur 2.4.
I de sekvensstyringene vi nå har gjennomgått, er det en betingelse som ikke er oppfylt. I forrige kapittel slo vi fast at alle minner måtte være nullstilt på skillelinje 1. Men for å starte en sekvensstyring må minne Q3 gi logisk T, men det kan det ikke gjøre, for da virker ikke syklusen. For å oppfylle denne betingelsen må vi sette inn et ekstra minne som gir logisk '1' når styringen er i hvilestilling. Dette minnet starter da sekvensstyringen. Dessuten kan vi utvide styringen med en kopling som gir et set-signal til minnet når energi blir tilført. Denne prosedyren kaller vi initialisering av trinnkoplingen. Det ekstra minnet blir kalt nullminne eller beredskapsminne QfJ. På figur 2.5 ser vi at det logiske skjemaet for styringen på figur 2.4 er utvidet med dette minnet.
Figur 2.5
Sekvensstyring med nullminne
Vi ser av skjemaet at når Q3 gir logisk '1', opptrer kommandoene A- og B~, mens det samtidig som forberedelse står logisk '1' på set til Qo. Når signalgiveme a() og b() blir betjent, blir Qo satt, og dermed blir Q3 automatisk nullstilt. Den eneste funksjonen Qo har, er å plassere logisk '1' på OG til Qlset. Når startsignalet st blir gitt, blir Qj satt, og dermed starter sekvensen igjen opp.
29
2.3
Skiftebetingelser og regler
Fordi det neste minnet skal nullstille det foregående, må signalene ha en bestemt lengde.
Minnene blir skiftet under påvirkning av primærsignalene. Disse signalene er blant skiftebetingelsene til en sekvensstyring. Men vi må også ta hensyn til andre skifte betingelser som har innvirkning på rekkefølgen i sekvensstyringen. Som eksempel kan vi nevne nødstopp hvor alle sylindeme går tilbake til utgangsposisjonen. Dersom vi skal overføre denne skiftebetingelsen til vårt eksempel, må nødstopp føre til disse reaksjonene:
-
Arbeidssyklusen blir brutt. Alle minner blir nullstilt slik at alle pluss- og minuskommandoer faller bort. Et minne blir satt slik at alle sylindeme gir en minuskommando. Når alle sylindeme er tilbake i utgangsposisjonen (a0 og b0), blir nullminnet satt slik at styringen er klar for en ny syklus.
Formlene blir da: Qos
= q3.a0-b0 + q4-a0-b0 + ini
Qos Qor Qi, Q>r Q2s
= q2■qio q3 q4•qio q5 q6 qo qn q3 + q5
kommandoer monostabil b = qio M = qH L = q4 + q5 + q6
bistabil A + = q] A = q3 C+ =q3 C =q5
timer = q&
____________ _______
Uten merkelapper vil set-betingelsene til Q3 og Q5 se slik ut: Qsset ~ Qsset = Qi i ' bø- Etter at gjentakelsessekvensen er utført, vil derfor Q3 og Q5 bli satt samtidig. Det er selvfølgelig ikke meningen. Med merkelapper gjør vi forskjell på styringsformlene etter at gjentakelsessekvensen er gjennomført. Merkelapp (minnet) Q4 aktiverer motor L. Når dette minnet skal styre en energiomformer forbundet med signalisering, vil vi også her støte på en skiftebetingelse. I tabellene 3.12 og 3.13 er henholdsvis adressene og PLS-programmene for denne styringen gjengitt.
Tabell 3.12
Adresser Melsec
Hitachi
200 201 202 203 204 205 206
A+ A" B+ C+ C M L To
=430 =431 =432 =434 =435 =436 =437 =450
Qo Q, Q2 Q3 Q4 Q5 Qo
= = = = = = =
600 601 602 603 604 605 606
o
= 400 =401 =402 =403 =404 = 405 = 500 = 71
O
a0 a, b0 bi c0 c, st ini
O
= = = = = = =
II
Qo Q, Q2 Q3 Q4 Q5 Qo
sO
•—
II —
—
—
II
66
= 10 = 11 = 12 = 14 = 15 = 16 =17 = T 00
o
A+ A’ B+ C+ C’ M L To
ro ro
00 01 02 03 04 05 06 777
o
= = = = = = = =
II
a0 a, b0 bi Co c, st ini
71
Tabell 3.13
PLS-programmer
Hitachi Instr. nr.
Melsec Instmksjon
Adr./Dau
Kommentar
Instr. nr.
sekvensprogram (med FUN 03)
000 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 026 027 028 029 030 031 032 033 034 035 036 037 038 039 040 041 042 043 044 045 046 047
72
------ 1
ORG AND T OR STR FUN OUT ORG AND STR AND FUN OUT ORG AND STR FUN OUT ORG AND AND STR AND FUN OUT ORG AND AND STR FUN OUT ORG AND AND STR FUN OUT ORG AND STR OUT ORG AND STR AND AND OR STR STR FUN
206 00 777 201 03 200 200 06 202 210 03 201 201 01 203 03 202 202 211 02 204 210 03 203 203 00 05 205 03 204 204 211 02 206 03 205 205 04 200 206 201 01 203 00 05
211 03
last q6
Instmksjon
LD S STL LD S STL OUT LD
Og Cj
STL OUT STL STL LD S STL OUT OUT LD S STL OUT OUT k LD S RET
OR-blokk last qH
045
END
= Q0 last q0 og st last q2 ogQio = Qi last q2 og ai last q3
=q2
last q2
og 411 og bo
last q4 og 410
=q3
last q3
og ao
OgCj
last q5
=q4
last q4 °g4n og bo last q6
=q5
last q5
og co last q0
=q6
last q2 og a! last q3 °ga0
Kommentarer
sekvensprogram og kommandoen STL
000 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 026 027 028 029 030 031 032 033 034 035 036 037 038 039 040 041 042 043 044
°gfo eller ini last qj
Adr./Data
S S STL OUT LD S STL OUT STL STL LD S STL OUT OUT LD AND S
s
71 600 600 500 601 601 430 401 602 610 610 432 403 611 611 436 602 611 402 603 603 431 434 400 405 604 610 604 437 604 611 402 605 605 435 437 404 606 606 437 450 3.5 450 600
last ini set Qo trinn 0 last st set Qj trinn 1 = A+ last aj set Q2 set Q10 trinn 10 = B+ last bj setQu trinn 11
=M trinn 2 trinn 11 last b0 set Q3 trinn 3 = A" = C+ last an ogG set Q4 setQ10 trinn 4 =L trinn 4 trinn 11 last b0 set Q5 trinn 5
=c
=L last c0 set Q6 trinn 6 =L = ro tid = 3,5 s last tQ set Qo slutt step/ladder slutt program
Tabell 3.13
PLS-programmer (forts.) Melsec
Hitachi Instr. nr.
048 049 050 051 052 053 054 055 056 057 058 059 060 061 062 063 064 065 066 067 068 069 070 071 072
Instruksjon
Adr/Data
Kommentar
Instr. nr.
Instruksjon
Adr./Data
Kommentarer
sekvensprogram (med FUN 03) - Qio 210 OUT lastq10 210 ORG 03 AND °gbj last q3 203 STR eller q5 205 OR 03 FUN = Qh 211 OUT kommandoer last qx 201 ORG = A+ 10 OUT last q3 203 ORG = A" OUT 11 = C+ 14 OUT last q5 205 ORG = c15 OUT last q10 210 ORG = B+ 12 OUT last q (j 211 ORG =M OUT 16 last q4 204 ORG eller q5 205 OR eller q6 206 OR =L 17 OUT last q6 206 ORG 0003.5 = To (3,5 s) OUTT slutt på programmet 99 FUN
Med Melsec PLS er det også mulig å programmere via spesielle subrutineinstruksjoner. Det ligger imidlertid utenfor rammen av denne boka.
3.5
Eksempler
Eksempel 3.1
I en treforedlingsbedrift skal bjelker kuttes i riktig lengde og freses i en samtidig syklus. Figur 3.8 er en skjematisk framstilling av maskinen hvor denne bearbeidingen foregår. Alle sylindeme er bistabilt betjent. Styringsbetingelsene til maskinen er: - Syklusen startes med startknapp st. Bjelken blir først satt i klemme med K+. - Deretter blir kappsaga betjent med Z+/Z_. - Samtidig som bjelken kuttes, skal den også freses: først F+, så H+ og deretter F~ samtidig med H_.
73
hT
Figur 3.8
Skjære- og fresemaskin
Tabell 3.14
Adresser
Hitachi k0 k, z0 z, f0 f] h0 h, st ini
a b c
h
= = = = = = = = = =
00 01 02 03 04 05 06 07 20 777
K+ K Z+ Z F+ F H+ H"
= = = = = = = =
10 11 12 13 14 15 16 17
Hitachi & Melsec
Melsec
sekvensprogram: 200 osv.
k0 kj z0 z, f0 f, hø h, st ini
= 400 =401 =402 =403 =404 =405 = 406 =407 = 500 = 71
K+ K" Z+ Z F+ F H+ H
= 430 = 431 = 432 = 433 = 434 = 435 = 436 = 437
Tegn bevegelsesdiagrammet og grafcet-funksjonsdiagrammet. Sett opp styringsformlene for sekvensstyringen. Skriv PLS-programmene med FUN 02 (Hitachi) og S/R-metoden (MELSEC). Bruk adressene i tabell 3.14.
Løsning-. a Figur 3.9 viser bevegelsesdiagrammet og grafcet-funksjonsdiagrammet. De to syklusene som foregår samtidig, er plassert i en samtidig sekvens. Bevegelsen til klemsylinder K faller utenfor denne sekvensen.
74
a bevegelsesdiagram Figur 3.9
b
b grafcet-funksjonsdiagram
Diagrammer til eksempel 3.1
Styringsformlene for denne sekvensstyringen er gjengitt i tabell 3.15.
Tabell 3.15
Styringsformler for eksempel 3.1
Minne
Set
Reset
Qo Q.
q2’k0 +>ni
qi qio’920 9o 9ii 92 921 922 92
q2 Qio Qii
Q2o q21 Q22
9o' st Q11 ' zo 922 ’ fo' f*o qrki
q 10 ■ zi qrk1 q2o ■ G q2) hi
kommandoer bistabil K + = 9i K" = 92 Z + — 9io Z = 9ii
c
F+ F" H+ H
— = = =
920 922 921 922
PLS-programmene er (delvis) gjengitt i tabell 3.16.
75
Tabell 3.16
PLS-programmer for eksempel 3.1
Hitachi Instr. nr.
Instruksjon
000 001 002 003 004 005 006 007
Melsec Adr./Data
Kommentar
Instr. nr.
Instruksjon
Adr./Data
Kommentarer
ORG AND OR FUN OUT ORG FUN OUT NOT
202 00 777 02 200 201 02 200
last q2 ogk0 eller ini set Qo last q.
000 001 002 003 004 005
LD AND OR S LD R
202 400 71 200 201 200
last q9 °g k0 eller ini set Qo last q. reset Qo
reset Qo
i
i
fi
fi
4-I
1 4
016 017 018 019 020 021 022 023 024 025
ORG AND AND AND AND FUN OUT ORG FUN OUT NOT
211 02 222 04 06 02 202 200 02 202
last qj j °g z0 °g q22 °gfo og h0
012 013 014 015 016 017 018 019 1
LD AND AND AND AND S LD R i
i
reset Q2
055 056
LD OUT
201 430
i
i
1
1
1
061 062 1 ;
ORG OUT
last q j = K+
1
201 10 1
067 068 069 070
LD OUT OUT END
073 074 075 076
ORG OUT OUT FUN
222 15 17 99
last q22 =F = H~ slutt på programmet
i
set Q2 last q0
1 i
1
i
211 402 222 404 406 202 200 202
last qu °g z0 Og 922
°gfo °g h0 set Q2 last q0 reset Q,
1
last qt = K+ l
222 435 437
last q22 =F = Hslutt på programmet
Eksempel 3.2
Figur 3.10 viser en "pick & place"-enhet * som er oppstilt ved et løpende bånd. Båndet transporterer to typer av produkter til en rullebane. Produkt A blir forflyttet etter denne syklusen: V+/G+/V_/H+/V+/G_/V“/H_, mens produkt B blir forflyttet etter denne syklusen: V+/G+/V“/H+ og og Z~. Når et produkt signaliserer at det er til stede (signal st), bestemmer signalkombinasjonen x og y valget av syklus.
Fordi griper G ikke har noen signalgiver, blir det operert med en tidsforsinkelse på 0,5 s. Alle sylindere og griperen er monostabilt betjent. *Norsk: plukk & plasser-enhet
76
Figur 3.10
"Pick & place"-enheten til eksempel 3.2
Tabell 3.17
Adresser Melsec
Hitachi
h0 hj v0 Vj z0 Z; x y st mi
a b c
= = = = = = = = =
00 01 02 03 04 05 06 07 20 777
H+ = 10 V+ = 12 Z+ = 14 G+ = 16 70 = T00 minner: 200 osv.
h0 h] v0 v, z0 zt x y st ini
= 400 =401 = 402 =403 =404 =405 = 406 =407 = 500 = 71
H + = 430 V+ =432 Z+ =434 G+ = 436 To =450 minner: 600 osv.
Tegn grafcet-funksjonsdiagrammet for styring av "pick & place"-enheten. Sett opp styringsformlene. Skriv PLS-programmene for styringen. Bruk FUN 03 eller STL. 77
Løsning: a Figur 3.11 viser de to grafcet-funksjonsdiagrammene. Etter nulltrinnet kan vi velge styringsgren direkte avhengig av kombinasjonen av signalene x og y. Se figur 3.1 la. Fordi begynnelsen på programsyklusene er lik, kan vi spare trinn, og dermed programlinjer, ved å utsette valget av syklus til trinn 2 er utført. Trinnene 12 og 22 på figur 3.1 la kan også øyensynlig kombineres. Det er imidlertid ikke mulig fordi etter at slag V- er utført, er ikke lenger signalkombinasjonen x og y til stede. Derfor kan vi heller ikke velge mellom de to styringsgrenene. Men de to siste trinnene i grafcet-funksjonsdiagrammet kan vi godt kombinere. Svaret på oppgavene b og c finner vi ved hjelp av grafcet-funksjonsdiagrammene på figur 3.11.
a
løsning med 17 trinn
Figur 3.11
78
b
løsning med 14 trinn
Grafcet-funksjonsdiagrammer til eksempel 3.2
Tabell 3.18 inneholder styringsformlene.
b
Tabell 3.18
Styringsformler for eksempel 3.2
Minne
Set
Reset
Qo Qi Q2
q3'hO‘Zo +ini
qi q2 qio + q20 qo qi 1 qi 2 qi 3 q 14 q3 q2> q22 q23 q24 q3________________________________________
q0-St qi ■ vi (q,4 + q24)'V0 q2-G-x-y
q3
Qio Qn Q12 Q13 Q14 Q20 Q2I Q22 Q23 Q24
qio'vo qn -h, qi2'vi q 13 ■ G q2-/0-x-y q20■vo q2)'hig q22'vi q23 • G
kommandoer V* = qi+Q2 + C112+C113+Cl22+C123 H — q 1 1 + Q12+Q1 3 + Q14 + ^21 + ^22 + ^23 + ^24 = q2 + qio + qi 1 + qu + q20 + q21 + q22 z = q?i + q22 + q23 + q?4 To =q2 + qi3 + q23
c
Tabell 3.19 gjengir bare en del av PLS-programmene. Vi begrenser oss til trinnene 2, 3, 10 og 20 til kommandoen for TQ.
Tabell 3.19
PLS-programmer for eksempel 3.2 Melsec
Hitachi Instr. nr.
Instruksjon
Adr./Data
Kommentar
Adr./Data
Instr. nr.
Instruksjon
000
program Q 0 og Q 1
000
program Q 0 og Q 1
1
1
1
i
1
l
1
013 014 015 016 017 018 019 020 021 022 023 024 025 026
ORG AND STR OR FUN OUT ORG OR AND STR FUN OUT ORG ANDT
201 03 210 220 03 202 214 224 02 200 03 203 202 00
last q2 Og Vj lastq10 eller q20
011 012 013 014 015 016 017 018 019 020 021 022 023 024
STL LD S STL LD S STL LD S STL LD ANI AND S
601 403 602 614 402 603 224 402 603 602 450 406 407 610
=q2
last q14 eller q24
°g vo last q()
=q3
last q2 °g G
Kommentarer
trinn 1 last v1 set Q2 trinn 14 last Vq set Q3 trinn 24 last v0 set Q3 trinn 2 last tg og x ogy set Qio_____
79
Tabell 3.19
PLS-programmer for eksempel 3.2 (forts.)
Hitachi Instr. nr.
027 028 029 030 031 032
Instruksjon
Melsec Adr./Data
AND NOT 06 AND 07 STR 211 FUN 03 OUT 210 program Q 1 1 t.o.m. Q
i
i
Kommentar
Instr. nr.
og X og y last qj ।
025 026 027 028
LD last tn 450 AND 406 og x AND 407 °gy S 620 program Q 11 t.o.m. Q 14 ogQ21 t.o.m. Q 22
i
l
i
last q2
053 054
RET slutt step/ladder program V+; H+; G+ oj;z+
1
i
084 085 086 087 088 089
LD OR OR OUT k END
= Qto 14
051 052 053 054 055 056 057 058
ORG 202 AND T 00 AND 06 AND 07 STR 221 FUN 03 OUT 220 program Q 2 1 t.o.m. Q
l
i
077
program V+; H+; G+ og Z+
1
l
i
1
107 108 109 110 111
ORG OR OR OUTT FUN
202 213 223 0000.5 99
last q2 eller q13 eller q?3 = To (6,5 s) slutt på programmet
i
°gf0 og x ogy last q21
~ Q20 24
1
Instruksjon
Adr./Data
i
Kommentarer
1
i
last q0 602 613 eller q,. 623 eller q23 =r 450 Jo 0.5 t = 0,5 s slutt på pr ogrammet
Melsec-programmet gir anledning til noen kommentarer: - Kommandoene er plassert i slutten av programmet i samsvar med figur 3.3b (høyre kolonne). - For aktivering (set) av trinn 3 blir trinn 14 og trinn 24 programmert atskilt med STL og skiftebetingelsene for å parallellkople de to styringsgrenene (ELLER-konvergens). - For aktivering av trinnene 10 og 20 er det tilstrekkelig med STL 602 en gang. Deretter setter vi på nytt trinnene med de korrekte skiftebetingelsene.
Eksempel 3.3
Figur 3.12 er en skjematisk framstilling av en stampemaskin. Maskinen består av en firetrinnssylinder A/B, hvor tre av trinnene blir brukt, nemlig A- med B~ og A+ og A~ med B+. Sylinderen blir bistabilt betjent. Maskinen virker slik: Når startknappen st blir betjent, blir kommandoene A- og B~ gitt.
80
Deretter blir bevegelsen C+/C~ utført i løpet av 40 s. Så blir kommando A+ gitt. Den andre delen av kassa blir nå stampet i 40 s. Den siste delen av syklusen blir satt i gang med kommandoene A- og B Styringssyklusen blir avsluttet med bevegelsen C+/C_ som varer i 40 s.
-
Tabell 3.20 inneholder PLS-adressene. Tabell 3.20
Adresser
Hitachi
a0 a, b0 b, c0 C] st ini
= = = = = = = =
00 01 02 03 04 05 06 777
Melsec
A + = 10 A“ = 11 B + = 12 B = 13 C + = 14 C" = 15 To = T00 Q = 200 osv.
a0 aj b0 b, c0 Cj st ini
= 400 =401 = 402 =403 =404 =405 = 500 = 71
A+ = 430 A~ = 431 B + = 432 B" = 433 C+ = 434 C“ = 435 To =450 Q - 200 osv.
81
a b c
Tegn grafcet-funksjonsdiagrammet for denne styringen. Lag en tabell som inneholder styringsformlene. Skriv PLS-programmet og bruk FUN 02-utsagnet eller S/R-metoden, avhengig av hvilken PLS du har tilgang til.
Løsning: a Figur 3.13 viser grafcet-funksjonsdiagrammet til stampemaskinen. Legg merke til at det er plassert en betinget gjentakelse inni gjentakelsessekvensen. Den betingede gjentakelsen blir forlatt så snart tidsforsinkelsen, som blir styrt av merkelappminnet, gir utgangssignal.
Figur 3.13
82
Grafcet-funksjonsdiagram til eksempel 3.3
b
Styringsformlene er gjengitt i tabell 3.21. Tabell 3.21
Styringsformler for eksempel 3.3
Minne
Set
Reset
Qo Qi Qa
q6-qi2’Q + i"’
q3
qa■q12■Q q3’ai q4•q12•Q qs-ao-bi qi2’Q + qra0.b0 + q3-a1 + q5-a0. b,
qi q2-qio q3 q4■qio q5 q6-qio q0 qn q)2 qio + q3 + q5 + q0
qo ’ st q i ‘ ao’bo
Q4
q5 Qo Qi o Qu Q12
qio-C] q 11 ■co
kommandoer A' A B+ B Q CTo
c
= q3 = q, + q5 =q5 = q, = qio =q.i — q2 + q 4 + q 6
Tabell 3.22 viser PLS-programmene. Vi begrenser oss til programmering av minnene Q{) og og minnetrinnene i subrutinene. Kommandoene ser vi for letthets skyld bort fra.
83
Tabell 3.22
PLS-programmer for eksempel 3.3
Melsec
Hitachi
84
Adr./Daia
Kommentar
Instr. nr.
Instruksjon
000 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 1 i
last q6 206 ORG 212 AND ogq12 00 ANDT °gf0 eller ini 777 OR 02 FUN set Qo OUT 200 last q. 201 ORG FUN 02 reset Qo OUT NOT 200 last q0 ORG 200 AND 06 og st FUN 02 set Qj OUT 201 ORG 202 last q2 AND 210 °g 410 FUN 02 reset Q] OUT NOT 201 program Q2 t.o.m. Q 6 i
1
l
057 058 059 060 061 062 063 064 065 066 067 068 069 070 071 072 073 074 075 076 077 078 079 080 081 082 083 084 085
ORG ANDNOTT STR AND AND OR STR STR AND OR STR STR AND AND OR-STR FUN OUT ORG FUN OUT NOT ORG AND FUN OUT ORG FUN OUT NOT ORG AND FUN OUT
212 00 201 00 02
last q12
203 01 205 00 03
02 210 211 02 210 210 05 02 211 212 02 211 211 04 02 212
og ‘o last q} oga0 og bo OR-blokk last q3 og aj OR-blokk last q5 og ao ogbj OR-blokk set QI0 last qj j
reset Q1() lastqæ OgC]
set Qj j last q12
reset Qj j last qj ] og co set Q12
Instr. nr.
Instruksjon
000 001 002 003 004 005 006 007 008 009 010 011 012 013
last q6 LD 206 AND 212 ogq12 AND 450 °gfo eller ini OR 71 set Qo 200 S last qj LD 201 reset Qo R 200 last q0 LD 200 AND 500 og st set Q, 201 S last q2 202 LD AND 210 °g qio reset Q] R 201 program Q2 t.o.m. Q 6
I-I
i
Adr./Data
i1
Kommentarer
1
038 039 040 041 042 043 044 045 046 047 048 049 050 051 052 053 054 055 056 057 058 059 060 061 062 063 064 065 066 067
212 last q12 LD ANI 450 °g’ro last qj LD 201 AND 400 °g ao AND 402 og bo ORB OR-blokk LD 203 last q3 AND 401 °g aj ORB OR-blokk LD 205 last q5 AND 400 og ao AND 403 Og bj ORB OR-blokk 210 setQ10 S LD 211 last q j j R 210 reset Q10 LD 210 lastq10 AND 405 OgC] 211 S set Qj ] LD 212 last q12 R 211 reset Qu 211 LD last q]] 404 og co AND 212 set Q12 S LD 210 lastqæ OR 203 eller q3 OR 205 eller qs 200 eller qf) OR R 212 reset Q12 program kommandoer og timer
l
1
086
END
1
i slutt på programmet
Tabell 3.22
PLS-programmer for eksempel 3.3 (forts.) Mel sec
Hitachi Adr./Data
Instr. nr.
Kommentar
Instr. nr
Instruksjon
086 087 088 089 090 091 092
210 lastq10 ORG 203 eller q3 OR 205 eller q5 OR 200 eller q0 OR 02 FUN OUT NOT 212 reset Q12 program kom mandok:r og timer
l
l
109
FUN
Instruksjon
Adr./Data
Kommentarer
i
99
slutt på programmet
Eksempel 3.4
Figur 3.14 viser grafcet-funksjonsdiagrammet med adresser for Hitachi PLS. Skriv PLS-programmet med bruk av FUN 03-utsagn og direkte aktivering av utgangene (se figur 3.4, høyre kolonne).
Løsning: Se tabell 3.23. Tabell 3.23 Instr. nr.
000 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015
PLS-program for eksempel 3.4
Instmksjon
Adr./Data
ORG AND OR STR FUN OUT ORG AND STR FUN OUT ORG AND STR OUT FUN
11 02 777 10 03 200 200 00 11 03 10 10 01 200 11 99
Kommentar
last utgang 11 og skiftebetingelse 02 eller ini last utgang 10 = Qo last q0 og skiftebetingelse 00 last utgang 11
= utgang 10 last utgang 10 og skiftebetingelse 01 last q0 = utgang 11 slutt på programmet
85
Figur 3.14
3.6
Oppgaver
1 2 3 4 5 6
8
86
Grafcet-funksjonsdiagram til eksempel 3.4
Kontrollspørsmål Hva er den store fordelen ved å bruke grafcet-funksjonsdiagrammer? Hvorfor bruker vi et initieringssignal når vi setter nulltrinnet? Hvilken adresse har dette signalet i Hitachi og i Melsec PLS? Hva er faren ved å bruke et initieringssignal? Hvorfor må vi ha merkelappminner ved samtidige sekvenser? Hvorfor har firetrinnssylinderen på figur 3.12 to ulike slaglengder? Hvordan programmerer vi best et minne dersom vi ikke nøyaktig vet hvordan en PLS behandler dominansen til et minne? Hvorfor er det nødvendig å låse skiftebetingelsene innbyrdes ved begynnelsen av styringssekvensene til en forgrening? Hvorfor må alle de første trinnminnene i parallelle styringsgrener være satt ved samtidige sekvenser før det foregående minnet kan nullstilles?
Figur 3.15
Grafcet-funksjonsdiagram
1
2
Øvingsoppga ver Figur 3.15 viser en samtidig sekvens for to bistabilt betjente sylindere A og B. a Sett opp styringsformlene. b Skriv et PLS-program. Bestem selv adressene. Figur 3.16 viser en forgrening. Sylinder A blir monostabilt betjent, mens sylinder B blir bistabilt betjent.
Figur 3.16
Grafcet-funksjonsdiagram
a Sett opp styringsformlene. b Skriv et PLS-program for styringen. Bestem selv adressene. 3
Vei-signal-diagrammet på 3.17 skal omformes til et PLS-program.
a Tegn grafcet-funksjonsdiagrammet. b Sett opp styringsformlene. c Skriv et PLS-program.
87
4
5
Stampemaskinen på figur 3.12 skal programmeres for fire trinn. Tegn grafcet-funksjonsdiagrammet. Figur 3.18 viser et doserings- og blandeanlegg. Anlegget består av en doseringspumpe P, tilførselsventilene A og B, tømmeventilen C og nivåføleme 1 og h. Styringsbetingelsene er: Dersom lavnivågiveren ikke lenger er betjent, starter styringen som fyller lagringstanken. Først blir ventil C lukket, og deretter blir denne styringssyklusen gjennomført: - Ventil B blir åpnet, og deretter blir doseringspumpen aktivert i 20 s før ventil B igjen blir lukket. - Ventil A fyller tanken til nivå h. Når dette nivået er nådd, blir ventil A lukket.
Etter at de to syklusene er utført blir røreverket M satt i gang i 2 min. Deretter blir ventil C åpnet igjen.
Figur 3.18
Pumpeanlegg
a Tegn grafcet-funksjonsdiagrammet for styringen. b Skriv et PLS-program med selvvalgte adresser.
88
4 Prosjekter
4.1
Innledning
I det tre første kapitlene har vi gjort oss godt kjent med sekvensielle styringer og sekvensstyringer som består av flere trinn. I dette kapittelet skal vi integrere disse emnene. Med integrering mener vi: - innbygging av pause- og stopp-prosedyrer i en sekvensstyring kombinering av forskjellige grafcet-funksjonsdiagrammer
Alle styringsproblemene blir drøftet i form av prosjekter og løst ved hjelp av grafcetfunksjonsdiagrammer.
4.2
Prosjekt 1: Bøye- og skjæremaskin
Figur 4.1 viser en bøye- og skjæremaskin. Maskinen består av en klemsylinder K, en bøyesylinder B og en skjæresylinder S. Klemsylinderen blir bistabilt betjent, mens de to andre sylindeme blir monostabilt betjent. Vi har disse styringsbetingelsene:
-
-
Syklusen blir satt i gang med startknapp st. Først lukker sylinder K klemmen hvor det er plassert et metallbånd. Deretter blir metallbåndet bøyd av sylinder B. Når sylinder B er tilbake i utgangsposisjonen, går sylinder S ut og skjærer av den overflødige delen. Når vi trykker på stoppknappen s , åpner klemmen seg først når sylindeme B og S befinner seg i utgangsposisjonen.
Når vi skal skrive PLS-programmene, bruker vi adressene i tabell 4.1.
89
s
Figur 4.1
Bøye-og skjæremaskin
Tabell 4.1
Hitachi k0 k, b0 b, s0 Sj s, sp ini
a b c d e
= = = = = = = =
00 01 02 03 04 05 06 07 777
*K K” B‘ S+
= = = =
10 11 12 14
Hitachi & Melsec
Melsec
minner: 200 osv. for Hitachi, 600 osv. for Melsec
k0 k, b0 b] s0 Sj st sp ini
= 400 =401 = 402 =403 = 404 = 405 = 500 = 501 = 71
K+ K~ B+ S+
= 430 = 431 = 432 =434
Tegn vei-signal-diagrammet og sett opp styringsformlene for maskinen. Tegn det pneumatiske skjemaet. Tegn strømkretsskjemaet. Tegn grafcet-funksjonsdiagrammet idet vi går ut fra at maskinen er utstyrt med en trinnkopling. Skriv et PLS-program for sekvensstyringen.
Løsning'. a Figur 4.2 viser det fullstendige vei-signal-diagrammet. Kontrolltellingen viser 90
at den samme signalkombinasjonen forekommer på tre skillelinjer. På skillelinjene 2, 4 og 6 går signalkombinasjonen k} • b0 • s0 igjen. For å skille kombinasjonene fra hverandre, må vi ta i bruk to ulikhetsminner.
For at stoppsyklusen skal blir korrekt utført, griper vi inn i minnene med en stoppknapp (fortrinnsvis bistabil). Minnene blir nullstilt slik at de to monostabilt betjente sylindeme B og S kan returnere direkte. Klemsylinderen mottar en 91
minuskommando først etter at begge sylindeme B og S er tilbake i utgangs posisjonen. Av den grunn er signalet b0 tatt med i styringsformelen for K~. b
Det pneumatiske skjemaet er gjengitt på figur 4.3. I minnekoplingen er reset dominerende. Sylindeme blir betjent av 5/2-ventiler.
Figur 4.3
92
Pneumatisk skjema
c
Figur 4.4 viser strømkretsskjemaet. Legg merke til at stoppbryteren er bistabil. De Morgans lov er brukt på styringsformlene:
d
Hovedsyklusen til styringen er gjengitt på figur 4.5. Minnene 1 til og med 6 gjengir den normale syklusen, mens stoppsyklusen er plassert i en separat (parallell) sekvens. Det er flere løsningsmuligheter. Vi ser at en løsning med grafcetfunksjonsdiagram er temmelig enkel å utføre.
Figur 4.4
Strømkretsskjema
Figur 4.5
Grafcet-funksjonsdiagram
93
Når styringen virker på et av trinnene fra 1 til og med 4 og vi trykker på stoppknappen sp, skjer dette: - Når styringen virker på trinn 1 og vi trykker på stoppknappen s , blir trinn 8 aktivert, og slag K_ blir utført. - Dersom styringen virker i trinn 2 eller trinn 3 når vi trykker på sp blir det ventet på signal b0 (signal s0 er der ennå) i trinn 7, og deretter fortsetter styringen til trinn 8. Når styringen virker på trinn 4, blir slaget S+ avbrutt og det blir ventet på signalet sQ på trinn 7. Deretter blir kommandoen K~ gitt på trinn 8.
Merknader. Skiftebetingelsen sp som sørger for spranget fra trinn 1 til trinn 8, kan vi også kople til trinn 7. Dersom det blir trykt på sp mens trinn 1 blir utført, blir da trinn 7 aktivert. Fordi bQ • s0 = 1, går spranget direkte til trinn 8. e
Se tabell 4.2 når det gjelder styringsformlene, og tabell 4.3 når det gjelder PLS-programmene.
Tabell 4.2
Styringsformler
Minne
Set
Reset
Qo Q> q2 q3 Q4 q5 Qo q7 q« kommandoer
k0-(q6 + q«) + ini q0-St q. kl q2 • b, q3b0 q4-Si q5-s0 sP-(q2 + q3 + q4> q--b()-s0 + q, -sp
q> q2 q3 q4 q3 qh qo q8 qo
K * = qi K = q(1 + q« B = q2 S + = q4
94
+ + + +
q8 q7 q7 q7
Tabell 4.3
PLS-programmer for en bøye/skjæremaskin
Hitachi Instr. nr.
Instruksjon
Melsec Adn/Data
Kommentar
Instr. nr.
sekvensprogram 000 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 026 027 028 029 030 031 032 033 034 035 036 037 038 039 040 041 042 043 044 045 046 047
ORG OR AND OR STR FUN OUT ORG AND STR OR FUN OUT ORG AND STR OR FUN OUT ORG AND STR OR FUN OUT ORG AND STR OR FUN OUT ORG AND STR FUN OUT ORG AND ORG FUN OUT ORG OR OR AND STR FUN OUT
206 210 00 777 201 03 200 200 06 202 208 03 201 201 01 203 207 03 202 202 03 204 207 03 203 203 02 205 207 03 204 204 05 206 03 205 205 04 200 03 206 202 203 204 07 210 03 207
Instruksjon
Adr./Data
Kommentarer
sekvensprogram og kommandoer
last q6 eller qg ogk0 eller ini last qT = Qo last q0 og st last q2 eller q8
= Qi last qj ogkj last q3 eller q7
=q2
last q2 °g bj lastc^ eller q7
=q3
last q3 °g b0 last q5 eller q7
=q4
lastq4 OgSj last q6
=q5
last q5 og s0 last q0
=q6
last q2 eller q3 eller q4
°g SP last qg
=q7
000 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 026 027 028 029 030 031 032 033 034 035 036 037 038 039 040 041 042 043 044
LD S STL OUT LD S STL OUT LD S STL LD S STL OUT LD S LD S STL OUT LD S LD S STL LD S LD S STL OUT LD S LD S STL LD S STL LD AND S RET END
71 600 606 431 400 600 610 431 400 600 600 500 601 601 430 401 602 501 610 602 432 403 603 501 607 603 402 604 501 607 604 434 405 605 501 607 605 404 606 607 402 404 610
last ini set Qo trinn 6 = Klast kQ set Qo trinn 8 = K~ ogk0 set Qo trinn 0 last st set Q, trinn 1 = K+ last kj set Q2 last sp set Q8 trinn 2 = B+ last bj set Q3 last s„p set Q7 trinn 3 last bQ set Q4 last sp set Q7 trinn 4 = S+ last Sj set Q5 last sn p set Q7 trinn 5 last s0 set Q6 trinn 7 last b0 og s0 set Q8 slutt step/ladder slutt på programmet
95
Tabell 4.3
PLS-programmer for en bøye/skjæremaskin (forts.)
Hitachi Instr. nr.
Instmksjon
Melsec Adr./Data
Kommentar
Instr. nr.
Instmksjon
Adr./Data
Kommentarer
sekvensprogram 048 049 050 051 052 053 054 055 056
057 058 059 060 061 062 063 064 065 066
4.3
ORG AND AND STR AND OR STR STR FUN OUT kommandoer ORG OUT ORG OR OUT ORG OUT ORG OUT FUN
207 02 04 201 07
last q7 og b0 og s0 last
200 03 210
last q0
=q8
201 10 206 210 11 202 12 204 14 99
last qj = K+ last q6 eller q8 = Klast q2 = B+ lastq4 = S+ slutt på programmet
°g Sp
Prosjekt 2: Løsemekanisme for en matrise
Figur 4.6 viser en løsemekanisme for en matrise. Mekanismen består av disse delene: en matrise som 16 pressede produkter i tur og orden skal frigjøres fra en "pick & place"-enhet for transport av produktene - et bord med to firetrinnssylindere som "pick & place"-enheten er montert på - et løpende bånd for videre transport av produktene. Alle sylindere og griperen blir bistabilt betjent. Griperen har ingen signalgiver, men kommandoene G+ og G_ blir holdt med en tidsforsinkelse på 0,5 s. Vi har disse styringsbetingelsene: - Etter startsignalet st blir alle sylindere plassert i utgangsposisjonen. - Produktene plukkes ut av matrisen i rekkefølge 1 til 16 og slippes ned i trakten over det løpende båndet. - Motoren til det løpende båndet går kontinuerlig og hører ikke med til styringen. - Etter at alle produktene er overført til transportbåndet, går energiomformeme tilbake til utgangsposisjonen.
96
a b
Tegn grafcet-funksjonsdiagrammet for mekanismen. Sett opp styringsformlene.
Løsning-. a Når vi studerer prosjektet nærmere, er det tre stadig gjentatte bevegelser som går igjen, nemlig: - syklusen til "pick & place”-enheten - forflytningssyklusene 1 til 4 og 9 til 12 - forflytningssyklusene 5 til 8 og 13 til 16 97
a
hovedsyklus
Figur 4.7
b gjentakelsessekvensen til manipulatoren
Grafcet-funksjonsdiagram for en utløsningsmekanisme
De tre bevegelsessyklusene som stadig går igjen, plasserer vi i gjentakelsessekvenser. Figur 4.7 viser det komplette grafcet-funksjonsdiagrammet. Hovedsyklusen (figur 4.7a) er et ganske enkelt diagram. Trinn 1 skal sikre at gripeenheten er i utgangsposisjonen. Vi skal først frigjøre produktene 1 til 4 fra matrisen. Denne prosessen blir styrt av gjentakelsessekvensen på figur 4.7c. I disse
98
c
gjentakelsessekvensen til produktene 1-4 og 9-12
d gjentakelsessekvensen til produktene 5-8 og 13-16
gjentakelsessekvensene er det i hver posisjon lagt inn en gjentakelsessekvens (trinn 31 til og med trinn 36) for styring av gripeenheten. Vi har dermed en subrutine inni subrutinen. Så snart gjentakelsessekvensen forbundet med merkelappminne 2 er utført, blir kommandoen C+ gitt i hovedsyklusen. Deretter blir gjentakelsessekvensen på figur 4.7d kalt opp. Innenfor denne sekvensen er også trinnene 31 til og med 36 med. Gjentakelsessekvensene som blir kalt opp i hovedsyklusen, har et løst trinn i hver ende. Disse trinnene begrenser signalmengden for setting og nullstilling av et antall minner. Den beste måten å vise dette på er å sette opp styringsformlene uten løse trinn. Når det gjelder virkemåten for øvrig, viser vi til figur 4.7.
99
b
Styringsformlene er gjengitt i tabell 4.4. Tabell 4.4
Styringsformler for en løsemekanisme
Minne
Set
Reset
Qo Qi
q9-a0-b0 +ini
4i
q0-s,
42’410
q2
4i 'ao'bø'Cø’d0■e0■v0
43
Q3 Q4 Qs Qo QQ8 Qo Qio Qii Q12 Q13 Q14 Ql 5 Q16 Q17 Q18 Q’o
q2-qi8
44’420
q3-ai
45
q4-q28
4o’4io
q5-a0'b1
47
q6-qi8
48’420
q
418
qi7-q36-e0
4.3 + 47
q 3' a 1 + q 7 ■ a,
42 1 ’4 31
q21
420
422
Q22 Q23 Q24 Q25 Q26 Q27 Q28 Q31
q21 ■ q.36 ■ eo
423’431
422 'C0
424
423 ’ 4.36 ’ e0
425’431
424'C1 ' dø
426
425'436 ’ eO
427’431
426’Cø
428
427’436’e0
45 + 49
410 + 412 ’ ci + 4i4'co'di +q1É,-C] + q20 +
432
422 ' CO + q24 ' C1 'dø + 426 ' co
Q32 Q33
432
G
4.34
q.34
4.33 ■ VO
435
434’ei
4.36
Q35 Q36
4.33
43 1 ■ V 1
435
412 + 414 + 416 +
G
418 + 422 + q24 + 426 + 428
kommandoer A" = 43 + 47 A = 4i+45+49 B = 45 B = 41+49 C + = 412 + 416 + 424 C~ = 41 + 414 + 422 + E + = 434 E' = 41+ 436
100
426
D+ D * V V" G+ G To
= 414 = 41 + 424
= 431 = 41 + 433
= 432 = 41 + 4.35 = 4.32 + 4.35
Vi ser at et ganske innviklet problem kan løses temmelig enkelt med grafcet-metoden. Skriving av styringsformlene er ganske tidkrevende, men dersom det blir gjort på den riktige måten, er det ikke spesielt vanskelig. Hemmeligheten ligger i en konsekvent bruk av grunnreglene. - Et minne settes av foregående minne og de tilhørende skiftebetingelser. - Et minne nullstilles av det direkte påfølgende minnet.
4.4
Prosjekt 3: Anlegg for pakking på pall
Figur 4.8 viser et anlegg for pakking på pall sett ovenfra. Vi kan velge mellom en automatisk syklus og en manuelt betjent syklus.
Figur 4.8
Anlegg for pakking på paller
101
Vi har disse styringsbetingelsene for den automatiske prosessen: - Bånd 1 sørger for kontinuerlig tilførsel av esker. Giver z gir signal når en eske er til stede. - Når z (eske til stede) og y (pall til stede) blir betjent, følger et slag C+/C“ til x blir betjent. - Sylinder A gjør et pluss-slag slik at sylinder C igjen kan skyve esker opp på pallen. - Når x igjen blir betjent, skyver sylinder B pallen over på bånd 2 som sørger for den videre transporten. - En ny pall blir automatisk tilført fra en hellende rullebane. - Motorene Mj og M2 roterer kontinuerlig. - Dersom stoppknappen sp blir betjent når en av sylindeme er utgående, skal alle sylindere gå tilbake til utgangsposisjonen, og motorene stoppe.
For den manuelle prosessen har vi disse styringsbetingelsene: Motorene roterer kontinuerlig. - For eksempel ved service eller vedlikehold kan sylindeme beveges uavhengig av hverandre og av signaleringen ved hjelp av trykk-knapper. Bare en sylinder kan beveges om gangen. a Tegn grafcet-fuksjonsdiagrammet for denne styringen. b Sett opp styringsformlene. c Programmer nulltrinnet og trinnet for stoppsyklusen.
Løsning: a Grafcet-funksjonsdiagrammet er gjengitt på figur 4.9. Diagrammet viser de spesielle mulighetene som denne løsningsmetoden byr på. Forskjellige basisdiagrammer er her kombinert med hverandre. Innenfor hovedsyklusen (trinnene 0 til og med 11) er det satt inn to betingede gjentakelser. Med en (bistabil) startknapp sp kan vi hoppe til en stoppsyklus (trinn 12). Parallelt med hovedsyklusen er det en forgrening med tre styringsgrener for den manuelle syklusen.
For at vi skal kunne velge mellom automatisk og manuell betjening av sylindeme, må vi installere en bistabil vekselkontakt eller to bistabile brytere («aut.» og «man.»). Den automatiske syklusen trenger ingen nærmere forklaring. Dessuten blir hver styringsgren startet med st (bistabil). Når det gjelder den manuelle syklusen, har vi disse merknadene: - Når manuell betjening blir valgt via nulltrinnet og bryteren «man.», blir trinn 20 satt. - Fra trinn 20 kan vi nå velge plusskommandoen for en av sylindeme. Bryterne r, s og t er monostabile. 102
Figur 4.9
Grafcet-funksjonsdiagram for pallanlegget
- Vi antar at vi betjener r. Kommandoen A+ blir da gitt, og sylinder A går ut. Låsing kan eventuelt utføres med r • s • t osv. - Når sylinder A er helt ute og vi betjener r på nytt, følger kommandoen A-. - Når a0 blir betjent, kan en ny sylinder betjenes via nulltrinnet, eller vi kan gå over til den automatiske syklusen. 103
b
Tabell 4.5 inneholder styringsformlene for prosjektet. Tabell 4.5
Styringsformler for en pakkemaskin
Minne
Set
Reset
Qo
qiraobo + qi2’ao'bo’Co + + q22 • ao + q24 • b0 + q26 • Co + ini q0 • aut • hand • st q. -y q2z + q5zx q3-c! q4 ■ co q5-x qb•at•z + q9•z•x q7-c. q8 ■ co q 9x Qio'bi sp'(q3 + q6 + q7 + qio) q0 • aut ■ hand • st q20-r q2i-r q2o ■s q23-s q2o ■ t q25-t
qi + q20
Qi q2 q3 q4 q5 q6 q7 q8 Qo Qio Qn Q12 Q20 Q21 Q22 Q23 Q24 Q25 Q26 kommandoer A+ A' B+ B“ C c
c
104
= = = = —
q6 + q21 q,i -f qJ2 + q22 qio -h q23 qu -1f qi2 + q24 q3 + q7 + q25 q4 + q8 + q]2 + q26
q2 q3 q4 + q]2 q5 q3 + q6 q7 + qJ2 q8 + qi2 q9 q7 + q10 qi 1 + qi2 q0 q0 q2i + q23 + q25 q22 q0 q24 q0 q26 q0
motorminne og motorer Qmm set = st Mj = M2 = qm
reset — sp
Tabell 4.6 gjengir programmeringslinjene for nulltrinnet og de første trinnene av den parallelle sekvensen. Adressene er ikke oppgitt for seg, men kan utledes av tabellen.
Tabell 4.6
PLS-programmer for en pakkemaskin Melsec
Hitachi
4.5
Instr. nr.
Instruksjon
Adr./Data
Kommentar
Instr. nr.
Instruksjon
Adr./Data
000 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 023 024 025 026 027 028 029 030 031 032 033 034 035
ORG AND AND STR AND AND AND OR STR STR AND OR STR STR AND OR STR STR AND OR STR OR FUN OUT ORG OR FUN OUT NOT ORG OR OR OR AND FUN OUT ORG FUN OUT NOT osv.
211 00 02 212 00 02 04
last q!j oga0 og b0 last q12 °ga0 og b0 °g c0 OR-blokk last q22 °g a0 OR-blokk last q24 og b0 OR-blokk last q26 °g c0 OR-blokk eller ini
000 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 026 027 028 029
LD AND AND LD AND AND AND ORB LD AND ORB LD AND ORB LD AND ORB OR S LD OR R LD OR OR OR AND S LD R osv.
211 400 402 212 400 402 404
222 00 224 02 226 04
777 02 200 201 220 02 200 203 206 207 210 07 02 212 200 02 212
set Qo last q} eller q20
reset Qo last q3 eller q6 eller q7 eller q10 °g sn set Q12 last q0
222 400 224 402 226 404
71 200 201 220 200 203 206 207 210 501 212 200 212
Kommentarer
last q] j og a0 og b0 last q12 oga0 °g b0 °g co OR-blokk last q22 oga0 OR-blokk last q24 og b0 OR-blokk last q26 og c0 OR-blokk eller ini set Qo last qt eller q20 reset Qo last q3 eller q6 eller q7 eller q]0 ogSp set Q12 last q0 reset q12
reset q19
Prosjekt 4: Røreverk
Figur 4.10 viser et røreverk med svingarm. Vi har disse styringsbetingelsene: - Ved hjelp av et startminne blir røresyklusen startet med en startbryter st og stoppet med en stoppbryter s . Syklusen består av en kontinuerlig bevegelse A+/A_ utført av en pneumatisk sylinder.
105
Prosessen må kunne stoppes under syklusen med en pauseknapp p. Når pauseknappen slippes, skal syklusen settes i gang igjen.
a b
Tegn grafcet-funksjonsdiagrammet for prosessen. Tegn det logiske skjemaet for trinnkoplingen.
Løsning-, a
Figur 4.11 viser grafcet-funksjonsdiagrammet for røreverket. Vi legger merke til at den monostabile pauseknappen er tatt med i skiftebetingelsene slik at et trinn først kan aktiveres når pauseknappen ikke lenger er betjent. Startminnet har betegnelsen qs. Styringsformler = si _ Qo,el = Qi 'ao 'P + ini = qo'Qx'P Q2,c, = qi a, p * A = q, A = q.
Figur 4.11
106
Grafcet-funksjonsdiagram
reset reset reset reset
= = = =
sp q, q, q0
Figur 4.12
4.6
Logisk skjema for røreverket
Oppgaver
1 2
3 4
5
Kontrollspørsmål Hvilke to hovedmetoder kan vi benytte for å løse et styringsproblem? Hvilken løsningsmetode gir færrest komponenter når vi lager en styring av maskinvarekomponenter? Har antall trinn i en trinnkopling utført med PLS noen særlig innvirkning på prisen? En ekte nødstopp blir ikke utført via PLS-programmet, men griper direkte inn i energiomformeme. Forklar hvorfor. På figur 4.13 ser vi et bevegelsesdiagram og et grafcet-funksjonsdiagram for en enkel styring. a Hvorfor blir kommando A+ i trinn 4 gjentatt? b Kan vi overføre spranget i trinn 5 til trinn 4?
107
b bevegelsesdiagram Figur 4.13
6
Diagrammer
Hvilke to grunnregler følger vi når vi skal sette opp styringsformlene for minnene i en trinnkopling?
Merknad: For PLS-programmene i de neste oppgavene er det ikke satt opp spesielle tabeller med adresser. Dersom løsningen skal bli entydig, er det en stor fordel å følge disse reglene:
-
startadresse/stoppadresse startminne hjelpeminner (merkere) trinnminner
Hitachi 20/21 300 301 ev. 200 ev.
-
signaler i alfabetisk rekkefølge kommandoer i alfabetisk rekkefølge stigende adressering timere
00/07 10/17 110/117 T00/T07
-
Melsec 500/501 100 101 ev. 200 ev. 600 ev. 400/407 430/437 530/537 450/457
Øvingsoppga ver
1 108
Figur 4.14 viser lossestedet til et transportbånd. Eskene blir overført til båndet ved hjelp av en gripeenhet og en sugekopp. Vi har disse styringsbetingelsene:
- Når en arbeidsdag begynner, blir styringen startet med en monostabil startknapp st og et startminne. - Styringen aktiverer (set) et separat minne, og motoren til transportbåndet begynner å rotere. - Når en eske blir tilført (x = '1'), og bordet er tomt (y = '0'), flytter gripeenheten esken til bordet. - På slutten av hvert slag V+ må det innføres en tidsforsinkelse på 0,5 s slik at sugekoppen kan henholdsvis fylles med og tømmes for luft. - Sylindeme må være bistabilt betjent.
vakuum
Figur 4.14
a b c d e
2
Losseanlegg
Tegn vei-tid-diagrammet for lossesyklusen. Lag grafcet-funksjonsdiagrammet. Sett opp styringsformlene. Tegn det logiske skjemaet. Skriv et PLS-program for styringen.
Med boreenheten på figur 4.15 blir sylindere automatisk boret. Maskinen består av en transportsylinder A, en posisjoneringssylinder B, en klemsylinder C og en boresylinder D. Alle sylindeme har to endestillingsbrytere (signalgivere) og blir bistabilt betjent. Vi har disse styringsbetingelsene: - Sylindere blir automatisk tilført fra et magasin. Signalgiver x kontrollerer fyllingen av dette magasinet. 109
- Maskinen blir startet med en startknapp st i kombinasjon med et startminne Q - Før syklusen kan begynne, blir det kontrollert om det er en sylinder i magasinet, om alle sylindeme er i utgangsposisjonen, og om det er et startsignal (utgangsposisjonen til A er ytterposisjonen). - Transportsylinder A går inn, og en sylinder blir tilført fra magasinet. - Transportsylinder A og posisjoneringssylinder B går ut. - Sylinder C klemmer den tilførte sylinderen fast. - Arbeidsstykket blir boret. - Når boret er trukket tilbake, trekker også sylindeme B og C seg tilbake slik at en ny syklus kan starte. - Når stoppknapp sp blir betjent, må sylindeme returnere på en sikker måte.
Figur 4.15
Boreautomat
a Tegn grafcet-funksjonsdiagrammet for boremaskinen. b Sett opp styringsformlene. c Skriv et PLS-program. 3
110
Figur 4.16 viser et fyllingsanlegg. Tomme esker blir plassert for hånd på veiebordet, og deretter trykker operatøren på en monostabil startknapp st. Når det er et tilstrekkelig antall lokk i magasinet og esken er til stede, kan syklusen starte. Sylinder A holder ventilen under siloen åpen til kontakt x signalerer at esken er full. Deretter lukker sylinder A ventilen igjen, og sylinder C plasserer et lokk på esken. Til slutt skyver sylinder B den fulle esken over på en transportrenne. Alle sylindeme blir monostabilt betjent.
silo
Figur 4.16
a b c d e 4
Anlegg for fylling av esker
Tegn vei-signal-diagrammet for anlegget. Lag et grafcet-funksjonsdiagram. Sett opp styringsformlene. Tegn det logiske skjemaet for styringen. Skriv et PLS-program for styring av fyllingsanlegget.
Målestasjonen på figur 4.17 kontrollerer lengden på produkter. Vi har disse styringsbetingelsene: - Installasjonen blir startet med et startminne. - Motoren til transportbåndet begynner å rotere. - Når et produkt aktiverer signalgiver v, går blokkeringssylinderen C ut. - Når signalgiver w blir betjent, stopper transportbåndet, og "pick & place"enheten trer i virksomhet. Den transporterer produktet via B+/G+/0,5 s/B_/a+/B+/G_/0,5 s/B_ til et målebord. "Pick & place"-enheten venter i posisjonen A+, mens sylinder C går inn. - Mens "pick & place"-enheten står i «ventestilling», foregår målingen ved hjelp av signalgiveme z (signalerer at produktet er til stede), x og y (målesignaler). - Det er nå to muligheter: - Produktet blir godkjent. "Pick & place"-enheten plasserer da produktet på
båndet igjen slik at det begynner å gå. "Pick & place"-enheten venter på neste produkt i posisjonen A~ B~. - Produktet blir vraket. En signallampe lyser, og det vrakede produktet blir skjøvet vekk fra målebordet av sylinder D. "Pick & place"-enheten går tilbake til utgansposisjonen. og båndet går igjen. - Sylindeme A, B og C blir bistabilt betjent, mens sylinder D blir monostabilt betjent.
Figur 4.17
Målestasjon
a Lag et grafcet-funksjonsdiagramm for måleinnretningen. b Sett opp styringsformlene. c Skriv et PLS-program.
Figur 4.18
Produksjonscelle
113
5
Figur 4.18 viser en produksjonscelle som består av en manuell stasjon og tre produksjonsstasjoner som virker automatisk. Vi har disse styringsbetingelsene: - Enten det er plassert plater i produktholderen på den manuelle stasjonen eller ikke, kommer produksjonssyklusen i gang når den bistabile startknappen st blir betjent. - Først dreier sylinder D bordet en kvart omdreining. - Deretter blokkerer sylinder E bordet. - De tre sekvensielle styringene til produksjonsprosessen kommer nå i gang samtidig: - Boresyklusen blir utført i to omganger. - Plassering av hylsene er bare mulig når giver x signalerer at det er tilstrekkelig med hylser til stede. - Ved innpressing av hylsene er det en tidsforsinkelse på 3 s mellom pluss-slaget og minusslaget. - Alle sylindeme har to endestillingsbrytere. - Griperen G har ingen endestillingsbrytere og virker med en tidsforsinkelse på 0,5 s. - Sylinder P blir monostabilt betjent, de andre sylindeme er bistabile. - Når stoppknappen sp blir betjent, skal alle sylindere gå tilbake til utgangs posisjonen. Styringen kan ikke forlate nulltrinnet før den blir frigitt av stoppknappen. a Lag et grafcet-funksjonsdiagram for produksjonscellen. b Sett opp styringsformlene. c Skriv et PLS-program.
6
Kunststoffpressa på figur 4.19 må virke etter disse styringsbetingelsene: - Den helautomatiske syklusen startes med et startminne. - Granulat tilføres med D+/l s/D_. - Deretter koples varmeelementet inn, og pressesyklusen P+/20 s/P” blir gjennomført. - Når slag P~ blir aktivert, koples varmeelementet ut. - Kjølevifta K avkjøler produktet i 5 s. - Deretter blir produktet kastet ut. - Når x blir betjent, starter en ny syklus. - Dersom signalgiver x fremdeles ikke er betjent 5 s etter at sylinder U er tilbake i utgangsposisjonen, lyser signallampe L på styrepanelet. - Etter at produktet er fjernet fra formen for hånd, kan operatøren sette i gang pressa igjen med knapp y.
a Lag et grafcet-funksjonsdiagram. b Sett opp styringsformlene. c Skriv et PLS-program. 7 114
Boremaskinen på figur 4.20 skal bore to rekker av fire hull i en plate. Platene blir plassert i en produktholder for hånd, og deretter blir startsignalet st gitt. Alle sylindeme blir bistabilt betjent. Hullene blir boret i den rekkefølgen som er angitt.
granulat
Figur 4.20
Boreautomat
115
Signalgiveme x og y detekterer stillingen til produktholderen etter første og andre boresyklus. a Lag et grafcet-funksjonsdiagram for boremaskinstyringen. b Sett opp styringsformlene. c Skriv et PLS-program. 8
116
Figur 4.21 viser et halvautomatisk renseanlegg. Vi har disse styringsbetingelsene: - En rensekurv blir heist opp i rensekaret med en håndbetjent talje. Kurven betjener signalgiver x. - Når en monostabil startknapp st blir betjent, starter den automatiske delen av syklusen så sant det er produkter nok i siloen. - Sylinder C (bistabil) lukker rensekaret. - Sylinder A blir monostabilt betjent og holder den øverste ventilen åpen i 5 s. - Deretter åpner sylinder B den nederste ventilen i 5 s. - Røreverket blir nå drevet av motor M og virker i 5 min. - Den automatiske delen av syklusen avsluttes med kommandoen C~. - Rensekurven blir heist ut av rensekaret med den håndbetjente taljen. Deretter blir en ny kurv plassert i karet, og prosessen starter opp på ny.
Figur 4.21
Renseanlegg
a Lag et grafcet-funksjonsdiagram for den automatiske delen av prosessen. b Sett opp styringsformlene. c Skriv et PLS-program for renseanlegget.
9
Renseanlegget i oppgave 8 blir utvidet med en "pick & place"-enhet for transport av rensekurven og en pumpe som pumper væske som har lekket ut, tilbake til karet. Sylindeme til "pick & place"-enheten blir bistabilt betjent, og bortsett fra G er de utstyrt med to endestillingsgivere. Lag et grafcet-funksjonsdiagram for styring av hele anlegget. Vær oppmerksom på at flere prosesser kan finne sted samtidig.
117
5 Tellere
5.1
Innledning
I de foregående kapitlene har vi behandlet mange forskjellige emner. V i har gjort oss kjent med forskjellige teknikker som spiller en rolle ved automatisering, for eksempel: - kombinatoriske styringer - sekvensielle styringer - tidskoplinger - minnekoplinger - trinnkoplinger Det er likevel et område vi hittil ikke har vært inne på, nemlig telling. Telling, sammenlikning og beslutning er viktige deler av automatiseringsteknikken som blir brukt i mange forskjellige systemer. I dette kapittelet skal vi forklare hvordan tellere i prinsippet er bygd opp, og hvordan de virker med utgangspunkt i logiske skjemaer. Når det gjelder utførelsen, skal vi behandle teknikker som bygger på IC-er og på PLS Telling blir sjelden utført pneumatisk eller elektrisk.
5.2
Prinsippet for en frekvensdeler
Figur 5.1 viser det logiske skjemaet for en RS-vippe som er realisert ved hjelp av NAND-porter. Ifølge figuren er en av utgangene på logisk T. Når både set og reset er '0', kan vi lese verdiene direkte ut av skjemaet. Vi ser at: Q = T~1 = 0 Q = (FT = 1
118
I
Figur 5.2
Set-signal
Når vi gir et set-signal, får vi den tilstanden som figur 5.2 viser. Endringen gir dette resultatet:
Q = O- 1 = 1 q = =o
Vi kan utføre denne operasjonen flere ganger. Den endelige konklusjonen blir at minnevirkningen fungerer. SR-vippen har ingen dominans. Set og reset må derfor aldri opptre samtidig. Vi får en variant av SR-vippen når vi utstyrer den med en klokkeinngang. Se figur 5.3.
Figur 5.3
Klokket RS-vippe
Vippen kopler nå bare når den blir tilført en klokkepuls, det vil si at klokkeinngangen er på logisk '1'. Når vi kopler set og reset til utgangene, får vi en helt ny komponent som vi kaller frekvensdeler. Se figur 5.4. Studerer vi figuren nærmere, ser vi at når inngangen blir påtrykt fire klokkepulser, kopler Q-utgangen to ganger. Det vil si at komponenten er i stand til å endre fire inngangspulser til to utgangspulser. Vi snakker om en todeling. Frekvensdeleren begynner å kople på
119
Figur 5.4
Frekvensdeler
den stigende flanken til klokkepulsen. Dersom klokkepulsen varer lenger enn koplings tiden til frekvensdeleren, får vi en instabil tilstand. Frekvensdeleren kan begynne å oscillere (kople flere ganger). For å forhindre dette plasserer vi en ny todeler etter den første. Se figur 5.5.
Figur 5.5
MS-frekvensdeler
Det går fram av figuren at den første vippen, kalt master, begynner å kople når klokkepulsen går over fra ’0' til '1'. Det vil si på den stigende flanken. Den andre vippen, kalt slave, kopler på den fallende flanken av klokkepulsen. Det vil si at når en puls blir påtrykt inngangen, er det mastervippen som kopler fra '0' til '1' og slavevippen som kopler fra '1' til '0'. Det som står på utgangen av mastervippen, blir overtatt av slavevippen. Vi sier at slavevippen følger mastervippen. Denne frekvensdeleren oscillerer ikke.
120
5.2.1
Frekvensdeleren som teller
Figur 5.6 viser det logiske symbolet for en MS-vippe som blir påtrykt flere klokkepulser (tellepulsef). Ved siden av klokkeinngangen ser vi to andre innganger, J og K. Denne vippen har betegnelsen JK MS-vippe.
Figur 5.6
Logisk symbol for en JK MS-vippe
JK MS-vippen har den egenskapen at når inngangene J og K blir aktivert samtidig, vil utgangen på vippen alltid skifte verdi når klokkepulsen går fra høy til lav (fallende flanke). Se figur 5.5. På figur 5.7 er klokkepulsen og utgangssignalet tegnet under hverandre.
På denne figuren ser vi tydelig hvordan todelingen foregår. Det er naturligvis mulig å bruke utgangen til en frekvensdeler som klokkepuls på inngangen til en ny todeler osv.
Figur 5.8
Fire frekvensdelere med utgangssignaler
På figur 5.8 ser vi fire frekvensdelere som er koplet etter hverandre, og hvor utgangen til en frekvensdeler blir brukt som klokkepuls til neste frekvensdeler. For hver frekvensdeler blir antall pulser halvert. Figur 5.9 viser fire frekvensdelere Qo, Qp Q2, og Q3 og et pulstog på seksten klokkepulser. På figuren skal alle reset-inngangene være på logisk '1'.
121
Figur 5.9
Utgangssignalene til fire frekvensdelere
Ser vi nærmere på utgangssignalene, går det fram at resultatet er en binærkode. Se tabell 5.1. Tabell 5.1
Binærkode Desimalt
Binært
2°
Vekt
23
22
2'
Bit
3
2
10
0 0 0 0 0 0 0 1 0 0 10 0 0 11 0 10 0 0 10 1 0 110 0 111 10 0 0 10 0 1 10 10 10 11 110 0 110 1 1110 1111
122
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Konklusjon: Når vi påtrykker fire seriekoplede frekvensdelere et antall pulser, får vi en binærkode på utgangen av frekvensdeleme. Det vil si at vi teller binært.
5.3
Dekodere
Når vi bruker tellere i en styring, kan hensikten for eksempel være at utgangssignalet skal angi hvor mange enheter som er produsert, eller hvor mange slag en sylinder har utført. Det er ofte ønskelig med en desimal avlesning av resultatet. Det signalet vi ønsker, kan være sammensatt av binære signaler fra frekvensdelere. Figur 5.10 viser standardsymbolet for en sekstenteller. Denne telleren har en felles reset-inngang og går et trinn framover i binærkoden hver gang klokkepulsen går fra logisk '1' til logisk ’0’. Ved å kople en OG-port til utgangen på de to frekvensdeleme Qj og Q3, blir det gitt et signal når telleren har kommet til desimaltallet 10.
Figur 5.10
Sekstenteller med et dekodersignal ved tallet 10
Signalet fra OG-porten kaller vi et dekodersignal. Med dette signalet kan vi utføre en kommando eller klargjøre telleren for en ny syklus. Vi sier at vi nullstiller telleren. Den tiende pulsen blir altså ikke angitt av Qo, Qp Q2 og Q3, men nullstiller bare telleren. Vi disponerer nå en teller som teller fra 0 til 9, det vil si ti pulser. Den blir derfor kalt dekadeteller. I det logiske symbolet for en dekadeteller er ikke dekodersignalet og nullstillingen angitt. Når telleren har kommet til 9, går den automatisk tilbake til 0. Figur 5.11 viser det logiske symbolet for en dekadeteller.
Figur 5.11
Dekadeteller
Dersom vi vil ha desimale verdier istedenfor binære, må binærkoden omgjøres til en desimalkode. Det skjer med en 4 -* 10-dekoder. Figur 5.12 viser hvordan en slik
123
Figur 5.12
Skjematisk framstilling av en 4-GO-dekoder
dekoder kan være oppbygd. Her blir utgangen til den dekoderen som svarer til den påtrykte binærkoden, stilt på I praksis blir det ofte brukt dekodere med inverterte utganger. Den anviste utgangen blir da '0'. Noen dekodere blir realisert med NOGporter istedenfor OG-porter.
124
5.3.1
Desimaltelling
Når vi vil telle desimalt, må tallet 10 angis etter 9, tallet 100 etter 99 osv. Det kan vi få til ved å kople sammen flere dekadetellere. Som dekodersignal bruker vi da overgangen fra 9 til 0, hvor Q3 går fra T til '0'. Denne flanken blir brukt til å flytte neste teller et trinn framover. Fra hver dekadeteller kommer dermed en binærkode, og hver teller utgjør en potens av 10. Vi snakker dermed om å lese ut en binærkode desimalt, eller forkortet BCD-kode (eng. Binary Coded Decimal). BCD-koden gjøres forståelig ved å dekode de fire binære utgangene til en dekadeteller i sju utganger som er koplet til et LED-display, det vil si et bildefelt med sju lysemitterende dioder. Den dekoderen som omformer de fire binære signalene fra tellerne til sju signaler som kan gjengis av sifferindikatoren, kaller vi en 4 -♦ 7-segmeatdekoder. Se figur 5.13.
Figur 5.13
4—»7-dekoder med sifferindikator
teller-
Figur5.14
Tusenteller
125
Figur 5.14 viser en tusenteller som er utført med fire 4 -» 7-segmentdekodere og sifferindikatorer.
5.4
IC-teknikker med tellere
Når vi skal konstruere en styring som inneholder tellere, fins det i dag bare to muligheter: IC- eller PLS-teknikk. Vi skal i dette kapittelet behandle disse teknikkene uavhengig av hverandre, og vi begynner med IC-ene. Som en naturlig fortsettelse av hva vi tidligere har gjennomgått, holder vi oss til TTL-logikk.
For enkle styringer hvor maksimumsverdien er lavere enn ti, blir vanligvis en eller flere JK MS-vipper brukt, eventuelt i kombinasjon med logiske porter. Vi snakker om en sammensatt teller. Figur 5.15 viser det logiske symbolet for en JK MS-vippe og tilkoplingsdataene for TTL 7476 som er mye brukt.
Figur 5.15
JK MS-vippe, TTL 7476
De to frekvensdeleme i denne IC-en kopler slik vi har forklart tidligere i dette kapittelet. Master-delen overtar den påtrykte informasjonen på stigende flanke, mens slavedelen følger opp på fallende flanke. Vi har hittil behandlet IC-er med fjorten pinner. Denne IC-en er en sekstenpinners IC. IC-er som er bygd opp av tellerkomponenter, blir kalt standardtellere. En av de mest brukte standardtelleme er IC 7490. Figur 5.16 viser det logiske symbolet for en dekadeteller og tilkoplingsdataene for IC 7490.
126
Figur 5.16
Dekadeteller (7490)
tellepuls
7490
Figur 5.17
reset
7490
hundrer
7490
tiere
7490
enere
reset klokke
Tilkopling av en dekadeteller
Figur 5.18
Tusenteller
127
I denne telleren må klokkepulsen påtrykkes inngang A, mens inngang BD (pinne 1) må koples til pinne 12. For at den skal virke som dekadeteller, må den koples slik figur 5.17 viser.
Figur 5.18 viser skjematisk hvordan tre dekadetellere må koples for at vi skal få en tusenteller. For å gjøre den binære avlesningen av en dekadeteller forståelig kan vi for eksempel kople de fire utgangene til 7490 til en IC med ti utganger, som gjengir tallene 0 til 9. Denne IC-en (7445) blir ofte kalt en 4 10-dekoder. Se figur 5.12. Figur 5.19 viser tilkoplingsdataene for denne IC-en. Det er viktig å merke seg at utgangene '0' er aktive.
Vcc = pinne 16 Gnd = pinne 8 12345679
Figur 5.19
10 11
4—10-dekoder (7445)
Dersom vi vil lese av desimaltallene på et sjusegmenters bildefelt (LED-display), må vi plassere en 4 -> 7-dekoder 7447 mellom telleren og bildefeltet.
Figur 5.20
4—>7-dekoder (7447)
Som en oppsummering viser figur 5.21 tilkoplingsdataene for et sjusegmenters bildefelt.
128
10
Figur 5.21
Sjusegments LED-display
Eksempel 5.1
Fra et anlegg kommer en prellfri tellepuls som vi vil telle med en dekadeteller. Lag et koplingsskjema for denne tellekoplingen slik at tellingen kan følges opp av et sjusegmenters bildefelt.
Løsning: Koplingsskjemaet er gjengitt på figur 5.22. Dekadeteller 7490 er tilkoplet slik figur 5.17 viser, det vil si at utgang Qo (12) er koplet til en inngang (1). Reset på telleren
tellepuls (prellfri)
reset
Figur 5.22
Koplingsskjema for en dekadeteller
129
Tabell 5.2
130
IC-er som blir brukt som tellere
koples til pinnene 2 og 3, mens pinnene 6 og 7 må koples til jord. De fire utgangs signalene Qo til og med Q3 blir koplet til 4 -» 7-dekoderen 7447.1 denne IC-en blir pinnene 3, 4 og 5 koplet til logisk '1'. De sju utgangene til dekoderen blir ført fram til et sjusegmenters bildefelt. Mellom dekoderen og bildefeltet blir det koplet inn et antall motstander på 180 Q.
5.5
Telling med PLS
Hittil har vi behandlet tellere hvor den binære verdien blir forhøyet med T på fallende flanke. Disse tellerne blir kalt opptellere (eng. up-counters = UC). Men vi har også nedtellere. I PLS-teknikken blir ikke bare disse typene brukt, men også det vi kaller opp/nedtellere. Nedtelleren er imidlertid mest brukt, og vi skal derfor begrense oss til denne typen. Ved programmering av en teller med PLS blir klokkepulsen, i likhet med de andre signalene, påtrykt sentralenheten (CPU). Gjennom programmet blir det kontrollert om en tellepuls er påtrykt. I så fall blir det gitt signal til telleren (OUT 60). Telleren reduserer da det tallet som er til stede med 1. Først når telleren er tom, får vi et T'-signal på den interne tellerinngangen. Dette signalet kan ved hjelp av LD 60 lastes i sentralenheten. Deretter kan vi via utgangsregisteret lage en T'-utgang (OUT 430). Hele syklusen er gjengitt skjematisk på figur 5.23.
I de PLS-ene vi har brukt, er det et antall telleradresser slik at vi kan telle fra 0 til 999. Tellerne fins på de adressene som er gjengitt i tabell 5.3.
IM
Figur 5.23
OM
Teller i en PLS
131
Tabell 5.3
Telleradresser
Hitachi C 50-C 57 C 60-C 67 C 70-C 77
Mel sec
24 tellere 0 t.o.m. 999
60 - 67 460-467 560-567 660-667
32 tellere 0 t.o.m. 999
For å kunne tømme telleren må vi først sette inn et tall. Vi sier at vi forhåndsinnstiller (preset) telleren. Dette skal vi forklare nærmere med et eksempel. Men først må vi definere noen adresser. Se tabell 5.4.
Tabell 5.4
Adresser
Hitachi
Melsec
Eksternt reset-signal Initialisering Tellesignal Preset-verdi Teller Kommando
Eksternt reset-signal Initialisering Tellesignal Preset-verdi Teller Kommando
01 777 00 004 C 50 10
401 71 400 k =4 60 430
Tabell 5.5 viser programmene til disse tellerne hvor vi kan forhåndsinnstilte tellerne med et eksternt signal elter med et initieringssignal (ini). Først laster vi tellesignalet. Det går da et signal til telleren som minsker verdien med 1. Etter at vi har påtrykt telleren fire signaler, er den tom og plasserer logisk T på tellerutgangen. Dette signalet blir via de interne inngangene lastet i sentralenheten. Deretter blir det omformet til en utgangskommando.
Tabell 5.5
PLS-programmer
Hitachi
132
Instr. nr.
Instruksjon
000 001 002 003
ORG STR OR OUT C
00 01 777 50004
004 005 006
ORG C OUT FUN
50 10 99
Adr./Data
Kommentarer
last tellesignal last reset-signal eller ini = teller 50 preset-verdi 004 last teller 50 = utgang slutt på programmet
Melsec
5.6
Instr. nr.
Instruksjon
Adr./Data
Kommentar
000 001 002 003 004 005 006 007 008
LD OR RST LD OUT k LD OUT END
401 71 60 400 60 4 60 430
last reset-signal eller ini reset teller 60 last tellesignal teller 60 preset-verdi = 4 last telleren = kommando slutt på programmet
Tellere og grafcet-funksjonsdiagrammer
I et grafcet-funksjonsdiagram må en teller gjengis som en betinget gjentakelse. Figur 5.24 er en del av et diagram hvor vi har en betinget gjentakelse, og hvor forskjellige verdier hører til telleren.
Figur 5.24
Teller i et grafcet-funksjonsdiagram
Figur 5.25
Forkortet grafcet-funksjonsdiagram
På trinn 13 starter en elektromotor. Hovedkoplingselementet til denne motoren er monostabilt. På motorakselen er det en tellerskive med et lite hull i, slik at det blir gitt et tellesignal for hver omdreining. Dette tellesignalet er skiftebetingelsen for spranget over til trinn 14. Det er imidlertid et løst trinn, og spranget til trinn 15 foregår derfor med det samme tellesignalet. Dette trinnet setter i gang en teller og overtar samtidig kommandoen for motoren. Så lenge telleren inneholder en verdi, hopper styringen tilbake til trinn 13 via cnt. Når telleren er tom, springer styringen videre til trinn 16 slik at motoren stopper. På figur 5.25 ser vi et diagram som i prinsippet gjengir det samme som figur 5.24.
Her er imidlertid ikke telleren angitt som en betinget gjentakelse, men som kommandoen tell. Tellesignaler blir tilført slik vi er vant til ved initialisering. 133
Når telleren er tom, er skiftebetingelsen oppfylt, og styringen hopper til neste trinn. Denne forkortede tegnemåten blir ofte brukt i mer kompliserte sekvensielle styringer.
I neste kapittel skal vi komme nærmere inn på hvordan telling foregår med en PLS.
5.7
Oppgaver
Kon trollspørsmål
1
2 3 4 5 6 7 8 9 10
11 12
a Har en RS-vippe dominans? b Hva får vi på utgangen til en RS-vippe dersom set- og reset-signalet blir påtrykt samtidig? Hva er grunnen til at en frekvensdeler kan oscillere? Med hvilken komponent kopler en MS-vippe slavedelen på fallende flanke? Hvilken kode får vi på utgangen til et antall seriekoplede frekvensdelere? Hvordan kopler vi utgangene til en sekstenteller for å få en elleveteller? Hvordan omformer vi en binærkode til en desimalkode? Hvordan kan vi forbinde de fire utgangene til en dekadeteller med et sjusegmenters bildefelt (LED-display)? Hvilken IC bruker vi i en enkel styring som ikke teller lenger enn til 10? Hva mener vi med en IC standardteller? Hvorfor bruker vi ikke bare reset-signalet ved programmering av telleren i en PLS, men tilføyer adresse 71? Hva er interne innganger og utganger i en PLS? Når vi skal tegne grafcet-funksjonsdiagrammet til en teller, må vi ha et løst trinn. Hvorfor?
Øvingsoppga ver
1
Bevis ved hjelp av skjemaet på figur 5.1 at når set- og reset-signalet er til stede samtidig, blir begge utgangene logisk T.
2 Bevis ved hjelp av skjemaet på figur 5.5 at todelingen virker, og at koplingen ikke kan oscillere.
134
3
Tegn et logisk skjema for en femdeler (0 til 4) som består av to todelere og en dekoder.
4
Tegn koplingsskjema for en hundreteller med utgangspunkt i figur 5.22.
5
Bruk tabellene 5.3 og 5.4 og skriv et PLS-program for en styring som teller til seks produkter på et transportbånd og deretter styrer en sylinder A slik at den skyver produktene av båndet.
6
Tegn et grafcet-funksjonsdiagram for den sekvensielle styringen på figur 5.26.
Figur 5.26
Bevegelsesdiagram
135
6 Styringer med tellere
6.1
Innledning
Mange produksjonsmaskiner og pakkemaskiner behandler produkter som må telles. Vi tenker blant annet på: telling av produserte enheter og automatisk utkopling av produksjonsmaskinen telling av vrakede enheter - telling av enheter i en forpakning I dette kapittelet skal vi først behandle telling med en PLS og deretter se på en del praktiske bruksområder i form av prosjekter.
6.2
Telling med en PLS
Telling med en PLS kan foregå med en nedteller (eng. down-counter = DC), en oppteller (eng. up-counter = UC), eller en opp/nedteller (eng. up/down-counter = UDC). I denne boka behandler vi bare nedtellere, som er mest brukt. Når det gjelder UDC og UC henviser vi til håndbøker fra produsentene. Tabell 6.1 viser telleradressene til Hitachi J 16 og Melsec F2 40M.
Tabell 6.1
Telleradresser
Hitachi
C 50-C 57 C 60-C 67 C 70-C 77
136
Melsec 24 tellere 0 t.o.m. 999
60- 67 460-467 560-567 660-667
32 tellere 0 t.o.m. 999
Nedtelleren må ha en tellerinngang (klokkeinngang) og en reset-inngang. Som regel snakker vi i stedet om en preset-inngang. Når vi aktiverer denne inngangen, forhåndsinnstiller (preset) vi nemlig telleren på en verdi, vi nullstiller (reset) den ikke. Reset blir gjeme brukt i UC (opptellere), og telleren nullstilles med 1 på resetinngangen. Figur 6.1 viser skjematisk hvordan vi kan forhåndsinnstilte telleren i PLS-programmet. tellerinngang
bildet eltet til PLS-en
reset-inngang
til hjelpeadresse
Figur 6.1
Skjematisk framstilling av en teller
Telleren har: - en tellerinngang. Til denne inngangen kopler vi det signalet elter den signalkombinasjonen tellepulsen avgir. Den stigende flanken til tellepulsen aktiverer telleren. - en preset-inngang. Her forhåndsinnstiller vi telleren på et tall med maksimum tre sifre. Når vi skal forhåndsinnstilte en teller ved begynnelsen av en RUN-syklus, bruker vi også initieringspulsen (777 for Hitachi og 71 for Melsec). - en tellerutgang. Denne utgangen gir logisk T når telleren står på 000. Se figur 6.2. tellerinngang
reset-inngang forhåndsinnstilling = 4
Figur 6.2
Signal-tidsdiagram for en PLS-teller
137
Prinsippet for programmering av en teller er gjengitt i tabell 6.2. Programmet oppfyller disse betingelsene: telling med signalgiver 00 cq. 400 i teller C 50 cq. 60 forh åndsinn sti11ing med signalgiver 01 cq. 401 og på RUN-steder i PLS-en utgang 10 cq. 430 styrt av fire tellepulser. Tabell 6.2
Programmering av en teller
Hitachi
Melsec
Instr. nr.
Instruksjon
Adr./Data
000 001 002 003
ORG STR OR OUT C
004 005 006
ORG C OUT FUN
00 last tellesignal 01 last reset-signal 777 eller ini 50004 = teller 50 preset-verdi 004 50 last teller 50 10 = utgang 99 slutt på programmet
Kommentar
lastr. nr.
Instruksjon
Adr./Data
Kommentarer
000 001 002 003 004 005 006 007 008
LD OR RST LD OUT K LD OUT END
401 71 60 400 60 4 60 430
last reset-signal eller ini reset teller last tellesignal teller = 60 preset-verdi 4 last teller 60 = utgang slutt på programmet
Når vi ser nærmere på de to PLS-programmene, framgår dette: Hitachi: Først blir tellesignalet lastet med ORG (linje 000). Deretter blir reset-signalet lastet med STR (linjene 001 og 002). - Telleren blir nå programmert med fem sifre (linje 003), der de to første angir telleradressen og de tre siste forhåndsinnstillingen. - Linjene 004 til og med 006 er programlinjer fra det vanlige programmet hvor operasjonene blir programmert.
Melsec: Her blir først reset-signalet lastet og plassert på reset-inngangen til telleren (linjene 000 til og med 002). - Deretter blir tellesignalet plassert på telleren, og preset-verdien blir ført inn direkte ved hjelp av k (linjene 003 til og med 005). - Linjene 006-008 hører til det vanlige programmet. Før vi utarbeider styringsprogrammer, gjengir vi en tabell med noen spesielle funksjonsadresser som kan brukes i programmene.
138
Spesielle hjelpefunksjoner
Tabell 6.3
Adresse eller funksjon
Hitachi
Beskrivelse
Melsec
(mye brukt) 777
71
770 771
77 —
hjelpefunksjonen er aktiv under 1 skanneperiode etter PLS-en er satt i RUN, first scan, (initialiseringspuls) når denne hjelpefunksjonen blir aktiv, koples alle utganger ut med denne hjelpefunksjonen blir alle timere, tellere, skiftregistre osv. nullstilt, gjeme i begynnelsen av et program: ORG 777 -♦ OUT 771
(i spesielle tilfeller)
6.3
772 — 773
— 73 72
774 775 776 —
— — — 70
pulsgeneratorer: 1 skanneperiode høy/1 skanneperiode lav 0,01 s klokke (100 Hz) 0,005 s høy 0,005 s lav 0,1 s klokke (10 Hz) Melsec: 0,05 s høy/0,05 s lav, Hitachi: en puls på 0,04 s hvert 0,01 s. 1 s klokke (1 Hz) en puls på 0,04 s hvert sekund 10 s klokke (0,1 Hz) en puls på 0,04 s hvert sekund minuttklokke, en puls på 0,04 s hvert minutt hjelpefunksjonen er aktiv når PLS-en er i RUN
Kombinatoriske styringer med tellere
Vi kan styre tellere med bestemte signalkombinasjoner. Forhåndsinnstilling kan vi også foreta med en kombinatorisk kopling. Vi skal forklare dette nærmere med et par eksempler. Eksempel 6.1
Figur 6.3 viser det logiske skjemaet til en nedteller.
Figur 6.3
Nedteller
Styringsformlene for denne kombinatoriske styringen er: tellepuls = a • b + c reset = d + ini U = cnt
139
PLS-adressene er gjengitt i tabell 6.4. Tabell 6.4
Adresser
Hitachi
Melsec
a b c d ini CNT U
a b c d ini CNT U
=00 = 01 =02 = 03 = 777 = C 50 = 10
= = = = = = =
400 401 402 403 71 460 430
Skriv PLS-programmene for denne koplingen.
Løsning: Tabell 6.5 viser PLS-programmene for begge typene. Tabell 6.5
PLS-programmer
Hitachi Instr. nr.
000 001 002 003 004 005 006 007 008
Melsec
Instruksjon
Adr./Data
ORG AND OR STR OR OUTC ORG C OUT FUN 99
00 01 03 04 777 50012 50 10
Kommentar
last a । og b I tellepuls eller c J last d 1 -i» ■ ( reset eller inij = CNT (preset 12) last teller =U slutt på programmet
Instt. nr.
Instruksjon
Adr./Data
Kommentarer
000 001 002 003 004 005 006 007 008 009 010
LD OR RST LD AND OR OUT K LD OUT END
403 71 460 400 401 402 460 12 460 430
last d । eller ini * reset reset teller J loast a i og b , tellepuls eller c J = CNT preset 12 last teller =U slutt på programmet
Eksempel 6.2
En vulkaniseringspresse blir lukket med en startknapp st og skal være lukket i to timer før den kan åpnes med en annen knapp s . a b
Tegn vei-signal-diagrammet for denne styringen. Skriv et PLS-program (bestem selv adressene).
Løsning. a Vei-signal-diagrammet er gjengitt på figur 6.4. b Når vi skal programmere vulkaniseringstiden, støter vi på et problem. Vi kan ikke programmere tiden 7200 s med en enkelt timer i en PLS. Det er imidlertid tre tenkelige måter å løse problemet på: 140
- Vi programmerer åtte timere i serie, for eksempel 7 ganger 999 + 207 s eller en annen kombinasjon. - Vi programmerer en timer, for eksempel for 72 s, og gjentar denne tiden 100 ganger ved hjelp av en teller. Utgangssignalet til telleren blir deretter brukt sammen med sp for å gi kommandoen A-. - Vi tar en fast puls (for eksempel minuttklokken til Hitachi) og kopler den til en teller (preset-verdi 120). Når telleren er tømt, bruker vi igjen utgangssignalet til kommandoen A”. Tabell 6.6
PLS-programmer Melsec
Hitachi Instr. nr.
Instruksjon
Adr./Data
Kommentar
000 001 002 003 004 005 006 007 008 009 010 011
ORG AND STR OR OUT C ORG AND OUT ORG C AND OUT FUN
776 01 00 777 50120 05 00 10 50 06 11 99
last 1-min klokke °g ai last a0 eller ini = CNT (preset 120) last st °g ai = A+ last teller
Instr. nr.
000 001 002 003 004 005 006 007 008 009 °g SP 010 = A” slutt på programmet 011 012 013 014 015 016 017
Instruksjon
Adr./Data
Kommentarer
LD ANI OUT K LD OUT LD RST LD OUT K LD AND OUT LD AND OUT END
401 100 450 72 450 100 400 460 100 460 100 500 400 430 460 501 431
last og hjelpeadresse = T0 tid - 72 s last t0 = hjelpeadresse last a0 reset teller last hjelpeadresse = CNT preset 100 last st °ga0 = A+ last teller °g SP = A" slutt på programmet
141
Den sistnevnte metoden er ikke så gunstig med Melsec fordi de tilgjengelige klokkepulsene krever en altfor stor teller. Vi skriver derfor disse programmene. Se tabell 6.6: - Hitachi med minuttklokken Melsec med en timer på 72 s som blir gjentatt 100 ganger. Vi kan knytte disse kommentarene til programmene: Hitachi: - Når a1 blir betjent, lar vi (den alltid tilgjengelige) minuttklokken telle 72 ganger ved hjelp av teller C 50. Deretter blir utgangen til telleren aktivert. - Telleren blir forhåndsinnstilt av signal a0 eller initieringspulsen 777. — Kommandoen A blir gitt med utgangen til telleren og stoppsignalet sp. -
Melsec: - Når a, blir betjent, lar vi en timer gå i 72 s. Når tiden er gått, blir timerutgangen høy, og en hjelpefunksjon eller merker 100 blir aktivert. - Den aktiverte hjelpefunksjonen nullstiller timeren fordi den er koplet til timerinngangen med ANI 100. Hjelpefunksjonen genererer samtidig en tellepuls.
Når timeren er nullstilt, faller hjelpefunksjonen bort, og timeren starter opp på ny. - Når vi har kommet til 100 tellepulser, blir utgangen til telleren aktivert, og når vi betjener s , blir kommandoen A- gitt.
-
6.4
Sekvensielle styringer med tellere
Vi støter ofte på tellere i sekvensielle styringer. I innledningen til dette kapittelet nevnte vi telling av produkter. Vi skal nå belyse dette nærmere med et eksempel. Eksempel 6.3
Bevegelsesdiagrammet på figur 6.5 viser en sekvensiell bevegelse av to sylindere, A og B. Sylinder A skal bevege seg åtte ganger fram og tilbake, mens sylinder B utfører den
Tabell 6.7 Adresser
Hitachi a0 a, b0 b, ini st 142
= 00 A+ = 10 = 01 A“ = 11 = 02 B+ = 12 = 03 B’ = 13 = 777 CNT = C 50 = 04 Q = 200 osv. sp = 05_______
Melsec
a0 a, b0 b, ini s( sp
= 400 =401 = 402 =403 = 71 = 500 = 501
A+ =430 A~ =431 B+ =432 B - = 433 CNT = 460 Q = 200 osv.
samme bevegelsen én gang. Når vi betjener en stoppknapp sp, skal energiomformeme gå tilbake til utgangsposisjonen. Tabell 6.7 inneholder PLS-adressene.
a b c
Tegn grafcet-funksjonsdiagrammet. Sett opp styringsformlene. Skriv et PLS-program for styringen.
Løsning-. a Se grafcet-funksjonsdiagrammet på figur 6.6.
Figur 6.6
Grafcet-funksjonsdiagram
143
b
Styringsformlene til denne sekvensielle styringen er sammenfattet i tabell 6.8. Tabell 6.8
Styringsformler
Minne
Set
Reset
Qo Qi Q2 Q3 Q4 Qs Qo
9s' b0 + q6 -a0 • b0 + ini q0 ■ st q, -b] + q4.cnt-sp q2a1 q3 ■ ao q4.cnt Sp‘(q, + q2 + q3 + q4)
qi q2 q3 q4 q2 qo q0
c
+
42
4-
42
X ) X> 42 42 — Lm u u>
II 1
II II
II
1
ro ro
+
> >
+
kommandoer
+ + + +
q6 qft q6 q5 + q6
teller
tellepuls = q4 reset = qj
Tabell 6.9 viser PLS-programmene for Hitachi og Melsec. Programmet for Hitachi PLS er skrevet med FUN 03-utsagnet, mens S/R-metoden er brukt for Melsec PLS. Telleren blir forhåndsinnstilt med Qj ved begynnelsen av hvert program. Vi kan også nullstille ved slutten av programmet med for eksempel Q5 eller Q6 eller med signalet bQ. Vi må være oppmerksom på at programmet begynner med en nullstilt teller. Når vi for eksempel nullstiller med: teller reset = q5 + q6 må vi tilføye «+ ini».
Merknad: I styringsteknikken kan vi bygge inn stoppbetingelser via PLS i et styringsprogram. Det er ikke tillatt å oppta et «ekte» nødstopp i programvaren. En nødstopp må gripe direkte inn i energiomformeme. En elektromotor må for eksempel koples direkte ut fra nettet uten at en PLS kommer mellom.
I enkelte tilfeller kan den derimot ha en dobbel funksjon, det vil si at nødstoppbryteren kopler ut energien til de aktuelle motorene, men samtidig gir den også inngangssignal til PLS-en. Vi skal nå se på noen enkle prosjekter hvor tellefunksjoner inngår.
144
Tabell 6.9
PLS-programmer Melsec
Hitachi 'i
Instr. nr.
Instruksjon
000 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 026 027 028 029 030 031 032 033 034 035 036 037 038 039 040 041 042 043 044 045 046 047
sekvensprogram ORG AND STR AND AND OR STR OR STR FUN OUT ORG AND STR OR FUN OUT ORG AND STR AND NOTC AND NOT OR STR STR OR FUN OUT ORG AND STR OR FUN OUT ORG AND STR OR OR FUN OUT ORG AND C STR FUN OUT ORG OR OR OR
Adr ./Data
Kommentar
last q5 °g b() last q6 oga0 °g b0 eller blokk 777 eller ini 201 last q; 03 200 = Qo 200 last q0 04 og st 202 last q2 206 eller q6 03 201 = Qi 201 last qj 03 ogbj 204 last q4 50 og teller 05 °g$P eller blokk 203 last q3 206 eller q6 03 202 =q2 202 last q2 01 og aj 204 last q4 206 eller q6 03 203 =q3 203 last q3 00 oga0 202 last q2 205 eller q5 206 eller q6 03 204 =q4 204 last q4 50 og teller 200 last q0 03 205 =q5 201 last q] 202 eller q2 203 eller q3 204 eller q4
205 02 206 00 02
Instr. nr.
Instruksjon
000 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 026 027 028 029 030 031 032 033 034 035 036 037 038 039 040 041 042 043 044 045 046 047
sekvensprogram LD AND LD AND AND ORB OR S LD R LD AND S LD OR R LD AND LD ANI ANI ORB S LD OR R LD AND S LD OR R LD AND S LD OR OR R LD AND S LD R LD OR OR OR
Adr./Data
205 402 206 400 402 71 200 201 200 200 500 201 202 206 201 201 403 204 460 501 202 203 206 202 202 401 203 204 206 203 203 400 204 202 205 206 204 204 460 205 200 205 201 202 203 204
Kommentarer
last q5 °g bo last q6 °ga0 °g bo eller blokk eller ini set Qo last qj reset Qo last q0 og st set Qj last q2 eller q6 reset Qt last qj ogbj last q4 og teller og Sp eller blokk set Q2 last q3 eller q6 reset Q2 last q2 Og a] set Q3 last q4 eller q6 reset Q3 last q3
og ao set Q4 last q2 eller q5 eller q6 reset Q4 last q4 og teller set Q5 last q0 reset Q5 last q] eller q2 eller q3 eller q4
145
Tabell 6.9
PLS-programmer (forts.)
Hitachi Instr. nr.
048 049 050 051 052 053 054 055 056 057 058 059 060 061 062 063 064 065
6.5 6.5.1
Melsec
Instruksjon
Adr./Data
Kommentar
sekvensprogram AND 05 °g sp STR 200 last q0 FUN 03 OUT 206 =q6 kommandoer ORG 202 last q9 OUT 10 = A+ ORG 203 last q3 OR 206 eller q6 OUT 11 = A" ORG 201 last q j OUT 12 = B+ ORG 205 last q5 OR 206 eller q6 OUT 13 = BORG 204 last q4 STR 201 last qj OUT C 50008 = CNT (8 ganger) FUN 99 slutt på programmet
Instr. nr.
048 049 050 051 052 053 054 055 056 057 058 059 060 061 062 063 064 065 066 067
Instruksjon
sekvensprogram AND S LD R kommandoer LD OUT LD OR OUT LD OUT LD OR OUT LD RST LD OUT K END
Adr./Data
501 206 200 206
Kommentarer
set (?6
last q0 reset Q6
202 last q2 430 = A+ 203 last q3 206 eller q6 431 = Alast q} 201 = B+ 432 last q5 205 eller q6 206 = B~ 433 last q( 201 reset teller 460 last q4 204 460 = CNT 8 preset 8 slutt på programmet
Prosjekter
Prosjekt 1: Skiftestasjon
Figur 6.7 viser en skiftestasjon. Produktenhetene blir tilført via transportbånd I og overført tre og tre til transportbånd II. Antall produkter må kunne programmeres (vi bruker en teller til dette). Båndmotorene Mj og M2 blir startet manuelt. Den automatiske syklusen blir startet med st og stoppet med s . Disse signalgiveme virker på et startminne.
Tabell 6.10
Adresser
Hitachi
146
a0 a, x s, sp ini
= = = = = =
00 01 02 05 06 777
Melsec A+= 10 Q«.„ = 220 sekvensprogram 200 osv. CNT = C 50
a0 aj x st sp ini
= 400 =401 = 402 = 500 = 501 = 71
A+= 430 Qstart = 220 sekvensprogram 600 osv. CNT = 460
Figur 6.7
Vekselstasjon
Signalgiver x signalerer produktene. Idet tre produktenheter er talt, blir det gitt en monostabil kommando A+. PLS-adressene er gjengitt i tabell 6.10.
a b c d
Tegn grafcet-funksjonsdiagrammet for denne styringen. Sett opp styringsformlene. Tegn det logiske skjemaet for styringen. Skriv PLS-programmet med STL-utsagnet.
Figur 6.8
Grafcet-funksjonsdiagram
147
Løsning: a Se grafcet-funksjonsdiagrammet på figur 6.8. b
Styringsformlene er gjengitt i tabell 6.11. Tabell 6.11
Styringsformler
Minne
Set
Qsl Qo Qi q2 q3
c
sp
q3-a0 + ini qo-qst
q! cnt q2at
q> q2 q3 qo
kommandoer
teller
A’ = q2
tellepuls -:qi ■ X reset = q0
Det logiske skjemaet på figur 6.9 viser at en ganske enkel kopling fører til et svært komplisert logisk skjema.
Figur 6.9
148
Reset
Logisk skjema
d
Se PLS-programmene i tabell 6.12.
Tabell 6.12
PLS-programmer Melsec
Hitachi Instr. nr.
000 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024
025 026 027 028 029 030 031
6.5.2
Instruksjon
Adr./Data
Kommentar
minner 05 last st ORG 06 last s STR 03 FUN OUT 220 = startminne 203 last q3 ORG AND 00 oga0 777 eller ini OR 201 last qj STR 03 FUN 200 = Q0 OUT ORG 200 last q0 AND 220 °g 9st STR 202 last q2 FUN 03 OUT 201 = Qi 201 last qj ORG AND C 50 og teller STR 203 last q3 FUN 03 202 =q2 OUT 202 last q2 ORG 01 °g al AND STR 200 last q() 03 FUN OUT 203 =q3 kommandoer ORG 202 last q2 OUT 10 = A+ ORG 201 last qj AND 02 og x STR 200 last q0 OUT C 50003 = CNT (3 ganger) FUN 99 slutt på programmet
Instr, nr.
000 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020
021 022 023 024 025
Instruksjon
Adr./Data
Kommentarer
minner og kommandoer LD 500 last s S 220 set startminne LD 501 last sp R 220 reset startminne 71 LD last ini S 600 = Qo STL 600 trinn 0 RST 460 reset teller last qst LD 220 set Qj S 601 trinn 1 STL 601 last teller LD 460 set Q2 S 602 trinn 2 STL 602 = A+ OUT 430 last aj LD 401 set Q3 S 603 trinn 3 STL 603 last a0 LD 400 600 set Qo S slutt step/ladder RET kommandoer last qt LD 601 og x AND 402 = CNT OUT 460 preset-verdi 3 K 3 END
Prosjekt 2: Testeinnretning
Figur 6.10 viser en testeinnretning for stoler. Modellen prøves 10 000 ganger kontinuerlig. Sylinderen blir bistabilt betjent.
Skriv et PLS-program for testing av stolen. Bestem selv adressene.
149
Figur 6.10
Prøveoppstilling
Løsning-, Tellerne i våre PLS-er kan telle til 1000. Vi må derfor programmere to tellere. Tabell 6.13 viser de adressene vi har valgt. Tabell 6.13
Adresser
Hitachi a0 = 00 A+ aj = 01 A“ st = 02 CNT 1 sp = 03 CNT 2 startminne Qst = 200 hjelpeadresse = 201
Melsec = 10 =11 = C51 = C52
a0 at s, sp
= = = =
400 401 500 501
A’ A~ CNT 1 CNT 2
= 430 =431 = 461 = 462
Når vi skal programmere, går vi fram på denne måten: Vi programmerer et startminne med st som set og sp som reset eller utgangs signalet til teller 2 som blir aktivert etter 10 000 sylinderslag. - Vi teller pulsene fra aj med teller 1. Etter 200 pulser går utgangen til denne telleren høy, og dermed blir hjelpeadresse 200 aktiv. - Med hjelpeadresse 200 teller vi inn teller 2 og nullstiller teller 1. - Når teller 1 har fullført femti omganger, går utgangen høy. Vi bruker utgangen til denne telleren til å nullstille startminnet slik at slaget A+ ikke blir utført flere ganger. - For å kunne starte opp igjen må vi nullstille teller 2 med st.
150
Vi får da disse styringsformlene: startminne S = st = sp + cnt2 startminne R A+ = ao +
Q21r = 022
Q22s = Q21 ' ^2 Q22r = 423
Q2 3s = 022 '^0 + ^2 5 ’ Q23r ~ 426
Q24s — 420
a b
Q24r = 425
Q25s = 424 ’ t>2 Q25r ~ 423
Kommandoer: s+
= 421 + 424
D+ =425
s
— 423
To
B+ =422 + 425
= 422 + 425
177
Figur 7.22
178
Elektronisk etikett på skjæreverktøy
7.6.5
Elektroniske etiketter
Koding av verktøy i maskinhaller byr på store problemer med de teknikkene vi hittil har behandlet, det vil si stolpe- og punktkoder. Etikettene kan bli skadd eller tilgriset slik at de ikke lenger lar seg lese. Problemet kan løses ved at elektroniske brikker blir styrt av et magnetfelt slik at avlesning kan finne sted. Mikroelektronikken og utviklingen av den såkalte EEPROM (electrical erasable programmable read only memory), det vil si et programmerbart leselager hvor data kan endres eller slettes elektrisk, har gjort dette mulig. Elektroniske etiketter blir nå brukt i stort omfang både i forbindelse med verktøy og i produksjon. Figur 7.22 viser en elektronisk etikett brukt på et skjærervektøy.
Figur 7.23 viser en elektronisk etikett som er festet på karosseriet til en bil som er i produksjon. I denne etiketten er alle data lagret slik at den nødvendige informasjon er til stede på alle stasjoner. Dermed er vi ikke lenger avhengig av en sentral datamaskin.
Figur 7.23
Bruk av elektronisk etikett i bilindustrien
179
Figur 7.24
Elektronisk etikett med lese- og skriveenhet
På figur 7.24 ser vi en elektronisk etikett som er festet på en verktøyholder. Ved siden av båndet er det en lese- og skriveenhet.
7.7
Dynamiske buffere
Vi nevnte i begynnelsen av dette kapittelet at fleksibiliteten til FPA for en stor del er avhengig av tilførsel og viderebefordring av råmaterialer og halvfabrikata. For å forhindre at vi får opphopning av produkter på en FPA-celle, blir det brukt dynamiske buffere. I disse bufferne er det lagret materialer eller deler som kontinuerlig blir ført fram til de forskjellige stasjonene. Når en stasjon er ferdig med en operasjon, er det alltid en ny del tilgjengelig. Det er derfor ikke nødvendig at bearbeidingstiden er like lang på hver stasjon, noe som er en betingelse ved kontinuerlig produksjon. Følgen er at det der heller ikke forekommer opphopning ved en enkel stasjon.
For store produkter og for intern transport gjennom fabrikken blir det ofte brukt automatisk styrte kjøretøyer (eng. automatic guided vehicles = AGV). Bufringen består da av at delene blir transportert direkte fra en celle eller fra lageret til produksjonsstedet.
I mindre systemer og ved intern transport i en FPA-celle blir det som regel brukt en transportbane. Det fins mange typer av transportbaner som bygger på forskjellige prinsipper, men generelt skiller vi mellom: 180
stive transportbaner overføringsbaner Ved stive transportbaner må produktene stoppes og fjernes fra banen. Ved overføringsbaner er det mulig å skyve produkter fra hovedbanen til en nærliggende stasjon uten at de andre produktene blir berørt.
7.7.1
Automatisk styrte kjøretøyer (AGV)
Disse kjøretøyene blir styrt av en datamaskin og beveger seg via tråder på gulvet i verkstedhallen. Automatisk styrte kjøretøyer blir ofte brukt mellom forskjellige FPA-celler eller mellom en FPA-celle og lageret eller ekspedisjonen. Viderebefordring av verktøy, for eksempel til en FFC, kan også besørges av en AGV. Se figur 7.25. Automatisk styrte kjøretøyer kan også brukes til å transportere store arbeidsstykker fra stasjon til stasjon under produksjonsprosessen. Denne metoden blir stadig mer brukt ved sluttmontasjen i bilfabrikkene.
Figur 7.25
Automatisk styrt kjøretøy
181
7.7.2
Transportbaner
Transportbaner blir mye brukt i forbindelse med kontinuerlig produksjon. Figur 7.26 viser hvordan en moderne transportbane er bygd opp.
Figur 7.26
Oppbygningen av et transportbånd
Båndet består i prinsippet av et plast- eller metallkjede med koplingsstykker som er utformet slik at det danner en bæreflate for produktene. Føringsskinnene danner en renne som produktene blir transportert i. Figur 7.27 viser en transportbane i en farmasøytisk bedrift for transport av flasker. Flaskene blir kontrollert og fylt, det blir satt på kork og etikett, og alt skjer dynamisk. Det vil si mens flaskene og båndet er i bevegelse.
Stive transportbaner blir mye brukt i FFC fordi det vanligvis ikke er nødvendig med endringer i banen. I forbindelse med FAC er stive transportbaner mindre aktuelle fordi det er nødvendig med en viss fleksibilitet når det gjelder transportmetoden.
Dersom det er ønskelig å bruke en stiv transportbane ved FPA, må den tjene som en fleksibel buffer som kontinuerlig fører fram produkter til bearbeiding, mens de egentlige arbeidsoperasjonene foregår mens arbeidsstykket er i ro. I praksis forekommer det at produktet må identifiseres og stoppes på banen, for deretter å bli overtatt av for eksempel en manipulator. Figur 7.28 viser et eksempel på et FPA-system med en hovedbane og flere sidebaner.
182
Figur 7.27
Transportbane i en kontinuerlig produksjonsprosess
Figur 7.28
FPA-system med transportbaner
183
Mellom hovedbanen og sidebanene er det veksler som kan skyve et produkt fra hovedbanen til en av sidebanene, eller omvendt. Det er også mulig å få banene til å virke uavhengig av hverandre når vekselen står i midtstilling. Ved hver veksel må det være to identifiseringspunkter, mens selve vekselen blir styrt av en PLS. En manipulator griper et produkt og flytter det fra produktholderen til sidebane I. Der leser et identifiseringspunkt informasjonen i informasjonsbæreren og gir den videre til den sentrale styringen. Denne styringen gir styringen av banen beskjed om å sluse produktet via veksel A til hovedbanen. Via vekslene B, C og D blir produktbæreren transportert til de forskjellige stasjonene på sidebanene hvor arbeidsoperasjonene finner sted. Når den sentrale styringen konstaterer at et produkt er klart, blir det via veksel A igjen ledet til sidebane I hvor den blir fjernet fra banen av den samme manipulatoren. Slike transportbaner blir svært ofte brukt i fleksible produksjonsceller. Fordelene ved denne typen dynamisk buffer er: - relativt billig i innkjøp - lite vedlikehold - overgangen mellom banene er forholdsvis enkel bestandig mot forurensninger Ulempene er: - trenger stor gulvflate - tåler ikke store belastninger - produktene må fjernes fra banen liten fleksibilitet ved endringer av arbeidsoperasjonen
7.8
Overføringsbaner
For å eliminere de fleste ulempene ved stive transportbaner er det utviklet transport systemer som består av standardelementer og funksjonelle enheter (moduler). Disse systemene blir utelukkende brukt i fleksible monteringsceller eller fabrikker og blir kalt overføringsbaner. Banene er bygd opp av moduler og består av en sentral hovedtransportbane som er utstyrt med moduler som utfører forskjellige transportfunksjoner. Rundt banen er det plassert en rekke stasjoner hvor arbeidsoperasjonene finner sted. Ved endringer i produksjonsforholdene kan rekkefølgen endres, nye stasjoner kan tilføyes, og stasjoner kan tas vekk. Figur 7.29 viser en overføringsbane hvor paller med produkter blir sluset inn på hovedbanen. Pallene er utstyrt med identifikasjonssystemer som inneholder alle data om produktet. Pallene sirkler rundt på hovedbanen til de blir ledet til en buffer og videre til en arbeidsstasjon via identifikasjonen og et overførings system. Etter at arbeidsoperasjonen er utført, blir pallen med produktet ført tilbake til hovedbanen ved hjelp av en ny buffer. Etter at pallen har vært innom alle nødvendige stasjoner, blir den ledet ut ved en bestemt stasjon.
184
Figur 7.29
Overføringssystem
Mulighetene for variasjon i dette systemet ligger i at en produktfamilie kan monteres uten at det er nødvendig å gripe inn. Ved eventuelle endringer i produksjonen kan banen svært raskt tilpasses den nye situasjonen. Overføringen av en palle fra hoved banen til en arbeidsstasjon skjer ved hjelp av en overføringsenhet. På figur 7.30 ser vi en del av hovedbanen og en overføringsenhet.
Etiketten med informasjonene på pallen blir lest av et identifiseringspunkt, og den sentrale styringen avgjør om pallen skal overtas av overføringsenheten. I så fall holder
Figur 7.30
Overføringsmekanisme
185
186
Figur 7.31
Fleksibel sammenstillingscelle
en stoppmekanisme pallen igjen. Deretter blir pallen plassert på en stasjonsbuffer ved hjelp av et PLS-styrt overføringssystem. Når arbeidsoperasjonene på en stasjon er utført, blir pallen ledet tilbake til hovedbanen. Etter at produktet har vært innom alle stasjoner, blir pallen ledet ut av systemet. Figur 7.31 viser en produktholder med en påmontert pumpe.
Figur 7.32
Produktbærer
Figur 7.23 viser en komplett fleksibel sammenstillingscelle. Denne cellen viser hvor mange muligheter dette systemet gir. I dette konseptet skjer en god del av monteringen på hovedbanen. Det betyr at monteringstiden må være like lang på alle stasjoner. I disse cellene skjer monteringen ved hjelp av spesielle roboter som blir kalt SCAR A -roboter. Systemet inneholder også et par manuelle stasjoner og en kontrollstasjon. Delene som skal monteres, blir framskaffet av automatisk styrte kjøretøyer.
Eksempel 7.2
Figur 7.33 viser en overføringsbane som består av to tversenheter Dj og D2, se også figur 7.34, og en forbindelse v mellom hovedbanen og sidebanen. Tversenhet Dj blir kommandert av en 4/3-ventil og har tre stillinger: en høy stilling, en lav stilling og en midtstilling. D2 har bare to stillinger. Dessuten har vi to stoppere, S t og S2, to grensebrytere, og B7 og en kodeleser C. Overføringen virker slik:
-
-
-
En produktholder blir stoppet av stopperen Sj som i hvilestilling er skjøvet ut. (Dette blir signalisert av x.) Deretter blir koden på kodeholderen lest av kodeleser C. Etter to sekunder slipper stopperen produktholderen løs. Alle produktholdere med en annen kode enn a • b blir sluppet gjennom av stopper Sp Holdere med koden a • b blir holdt tilbake av Dt som nå står i midtstilling. (Dette blir signalisert av Bj.) Deretter opptrer kommandoene Dj+, D2+ og S2+ samtidig.
187
Figur 7.33
Overføringsmekanisme
Figur 7.34
Tversenhet
Produktholderen blir av D, skjøvet til forbindelsesbanen v, som i sin tur bringer produktet videre til D2. - B? signaliserer når produktet er inne på sidebane II. Deretter opptrer kommandoene D^, D2~ og S2~, og holderen kan fortsette ut via bane II. Tegn et grafcet-funksjonsdiagram.
Løsning-. Se figur 7.35.
Figur 7.35
188
7.9
Oppgaver
Kontrollspørsmål 1
2 3 4 5 6
7 8 9
10
11 12
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
Hva mener vi med: - kontinuerlig produksjon - diskontinuerlig produksjon - fleksibel produksjonsautomatisering? Hva er forskjellen mellom konvensjonelle produksjonsmetoder og FPA? Hvordan er forholdet mellom den gjennomsnittlige stykkprisen ved kontinuerlig/diskontinuerlig produksjon og ved FPA? Hva er grunnene til at mange går over til FPA? Hvilke faktorer er av betydning ved gjennomføringen av et FPA-prosjekt? Hvilke forholdsregler må vi ta når en CNC-dreiebenk skal brukes til fleksibel produksjon? Hvilke produkter og deler egner seg for FPA? Hvordan settes et fleksibelt produksjonssystem opp? Hva kaller vi et system hvor programmeringen skjer via et koplet overordnet system som styrer de nødvendige programmene til de underordnede systemene? a Hva mener vi CIM? b Hva er SCS? c Hva er FMS? Hvilke deler består en FMS av? a HvaerenFFC? b Hva er en FFE? c Hva er forskjellen mellom FFC og FFE? Hva mener vi med fleksible sammenstillingsceller? Hvilke delområder består FPA av? Hvilke to hovedgrupper av identifiseringsmetoder har vi? Hvilke undersystemer blir brukt ved identifisering? Beskriv kort hvordan optisk kodeavlesning foregår. Hvordan virker en stolpekode? Hva er forskjellen mellom en diskret og en kontinuerlig kode? Hvordan kan en stolpekode som blir lest fra høyre mot venstre, likevel tolkes riktig? Hva mener vi med en innskutt «to av fem-kode»? Hvilke fordeler og ulemper har en stolpekode? Hvordan virker punktkoden? Hvilke fordeler og ulemper har en punktkode? Hvordan virker mekaniske etiketter? Hva mener vi med en elektronisk etikett? Hva er fordelen med elektroniske etiketter? Hvilken funksjon har en dynamisk buffer i et FPA-system? Hva mener vi med AGV, og hvordan blir dette systemet brukt som buffer?
189
30 Hvilke to transportbanesystemer har vi? 31 Hvilke fordeler og ulemper har en stiv transportbane? 32 Hva består en overføringsbane av?
1
Øvingsoppgave 1
Figur 7.36 viser en hovedtransportbane I og en sidebane II. Hovedbanen blir tilført produkter som er utstyrt med optisk kodeavlesning med mulighetene A og B. Produkt A går gjennom hovedbanen, mens produkt B via en bistabil kommando W+ blir styrt til bane II ved hjelp av vekselen. Et eventuelt nytt produkt A skal da kalle opp kommandoen W-.
Figur 7.36
a Tegn et grafcet-funksjonsdiagram av styringen. b Sett opp styringsformlene. c Skriv et PLS-program.
190
8 Fleksibel produksjons automatisering II
8.1
Innledning
I forrige kapittel gjorde vi oss kjent med fleksibel produksjonsautomatisering. For at vi skal kunne utnytte denne automatiseringsteknikken i praksis, er et logistisk system (transport med identifikasjon) uunnværlig. Vil vi legge opp til fleksibel produksjon, trenger vi en del apparatur i tillegg til de systemene som ble behandlet i forrige kapittel. I dette kapittelet skal vi gå nærmere inn på håndteringsmekanismer som blir mye brukt i FPA som: - "pick & place"-enheter roboter
Figur 8.1
Bruk av håndteringsmekanismer i et FPA-system
191
På figur 8.1 ser vi "pick & place"-enheter og roboter som virker sammen i et FPAsystem. Fordi et automatisk FPA-system kan styres på forskjellige måter, må vi legge en del vekt på de ulike styringssystemene i et såkalt nettverk.
8.2
" Pick & place" -enheter
"Pick & place"-enheter forekommer i mange forskjellige utførelser. "Pick & place"enheten på figur 8.2a har tre hovedbevegelser eller bevegelsesakser. Begynner vi med foten, har vi først en horisontal, rettlinjet bevegelse. Vi sier at den første aksen er en translerende akse eller en T-akse. Den andre er en vertikal, translerende akse. Griperen kan rotere om den vertikale aksen. Den er derfor en rotasjonsakse eller en R-akse. I betegnelsen av "pick & place"-enheter og roboter blir de tre første aksene nevnt. I dette tilfellet snakker vi om en TTR-"pick & place"-enhet.
Bevegelsene til griperen (åpen eller lukket) blir ikke regnet som bevegelsesakse. Arbeidsområdet til "pick & place"-enheten på figur 8.2 er en vertikal flate.
Figur 8.2
192
Treakset "pick & place"-enhet
"Pick & place"-enheter kan utføres med maksimum seks akser. Vi kan dele dem inn i fritt programmerbare og ikke fritt programmerbare enheter.
8.2.1
Ikke fritt programmerbare " pick & place " -enheter
Ikke fritt programmerbare "pick & place"-enheter beveger seg per akse mellom to ytterstillinger. Mellomstillinger er ikke mulig, men vi kan forskyve endepunktene til en bevegelsesakse ved å flytte anslagene. Figur 8.3 viser en lineær enhet av en "pick & place"-enhet. Vi skiller mellom disse delene: endeplate med endeanslag for begrensning av den lineære bevegelsen stempel med stempelstang, som kan være pneumatisk drevet styreskinne, som gir den nødvendige stivheten teleskoprør for lufttilførsel til de forskjellige komponentene enheten består av
Figur 8.3
Den lineære enheten til en "pick & place"-enhet
Figur 8.4 viser montering av en "pick & place"-enhet. Foten til denne enheten er utstyrt med en dreiemodul. Fra foten kan vi telle disse aksene: - en rotasjonsakse i foten (R) - en vertikal, translerende bevegelse (T) - en horisontal, translerende bevegelse (T) - en roterende bevegelse av griperen (R)
193
Figur 8.4
RTT-"pick & place"-enhet
Denne "pick & place"-enheten har dermed fire bevegelsesakser. Dersom vi også her tar med de tre første aksene i betegnelsen, kan vi snakke om en RTT-"pick & place"-enhet. De fleste produsenter av "pick & place"-enheter bygger enhetene opp av moduler. Vi kan derfor selv sette sammen moduler til enheter som passer til de oppgavene de skal utføre i en bestemt prosess.
Figur 8.5 er en sprengskisse av en moduloppbygd enhet som består av to rotasjonsmoduler og to lineære moduler. Når vi skal velge "pick & place"-enhet, må vi ta hensyn til forskjellige (tekniske) spesifikasjoner. Generelt kan vi si at posisjoneringsnøyaktigheten blir mindre når operasjonen blir mer komplisert, vekten til det som skal håndteres øker, og/eller slaglengden til den horisontale bevegelsesaksen øker. Posisjoneringsnøyaktigheten til "pick & place"-enheter varierer mellom 0,01 og 1 nm. 194
1 anslag 2 hydraulisk demper 3 hastighetsregulering
Figur 8.5
8.2.2
4 montering 5 aluminiumshus
6 monteringsplate 7 hydraulisk demping
Sprengskisse av en moduloppbygd "pick & place"-enhet
Fritt programmerbare "pick & place"-enheter
På figur 8.6 ser vi en "pick & place"-enhet som blir brukt til å fylle en eske med flasker. For å kunne utføre denne operasjonen med et slikt hjelpemiddel må vi gjøre noen forbedringer. Hvis vi bruker en «vanlig» enhet, må vi plassere esken på et bevegelig bord fordi "pick & place"-enheten bare virker i ytterposisjonene. Hvis vi derimot kunne programmere bevegelsene til "pick & place"-enheten langs hele den horisontale aksen, kunne vi klare oss med et mye enklere bord. Figur 8.6b er en svært forenklet framstilling av et system. Istedenfor en trinnmotor med kulespindel kunne vi bruke en fritt programmerbar lineær sylinder.
195
b
196
Figur 8.6
skjema av fyllesystemet
Fritt programmerbar "pick & place"-enhet
Føler
Målelinjal
Arbeidssylinder
-------- Brems
Proporsjonal reguleringsventil
Sylinderstyring
--------
-------- I
Programmeringsapparat
Figur 8.7
Prinsippet for en fritt programmerbar sylinder
Figur 8.7 viser prinsippet for en fritt programmerbar (pneumatisk) sylinder. Virkemåten til en fritt programmerbar sylinderstyring bygger på disse prinsippene: Posisjonen til stempelet i en sylinder blir ved hjelp av en føler og en målelinjal meddelt til styringsenheten. En proporsjonal reguleringsventil blir styrt av et analogt signal avhengig av posisjonen som er oppgitt i styringsprogrammet. Avhengig av avviket i forhold til den oppgitte posisjonen skaper den proporsjonale reguleringsventilen en trykkforskjell mellom sylinderrommene på begge sider av stempelet inntil posisjonen ligger innenfor de oppgitte toleransene.
Figur 8.8
Lineær enhet med veimålesystem
197
-
Når sylinderen befinner seg innenfor posisjoneringstoleransen (ca 0,1 mm), vil reguleringsventilen holde den der, ofte understøttet av en bremsesylinder.
Figur 8.8 viser en gjennomskåret lineær enhet hvor veien blir målt av en roterende enhet.
8.3
Roboter
Ordet robot kommer av det tsjekkiske ordet «robota» som betyr tjener eller slave. I denne boka skal vi begrense oss til roboter som blir brukt i industrien. Det vil si industriroboter. Med en industrirobot mener vi:
■
En automatisk håndteringsinnretning spesielt utviklet for bruk i industrien, fritt programmerbar i forskjellige frihetsgrader, og som dessuten er utstyrt med en eller flere gripere eller verktøy.
Når vi snakker om industriroboter, kommer vi aldri utenom begrepene frihetsgrad eller bevegelsesakse. Antall frihetsgrader eller bevegelsesakser bestemmer posisjoneringsfriheten til de produktene eller verktøyene roboten håndterer.
Dersom vi bestemmer posisjonen til et vilkårlig punkt i rommet med koordinatene x, y og z, kan vi nå dette punktet ved rettlinjet bevegelse (translasjon) langs tre akser. For at en griper skal kunne bevege seg fritt i rommet, er tre rotasjoner nødvendig.
198
Figur 8.9
Frihetsgradene til en industriell robot
Antall frihetsgrader en robot har, bestemmer bevegelsesfriheten og dermed tilpasningsmulighetene i konkrete tilfeller. På figur 8.9 ser vi at vi kan utstyre en industrirobot med seks frihetsgrader . - translasjon langs x-, y- og z-aksen - rotasjon om x-, y- og z-aksen
Grunnen til at industriroboter blir brukt, er at de har mange positive egenskaper. Vi skal her nevne noen av dem: En industrirobot kan overta ubehagelige arbeidsoppgaver som: - medfører støvplager, for eksempel pussing av støpejemsdeler - medfører ubehagelig varme, for eksempel ved støping med flytende metaller - farlig arbeid, for eksempel behandling av radioaktivt materiale eller aggressive stoffer - ensformig arbeid, for eksempel montering på samlebånd En industrirobot kan gjenta operasjoner mer nøyaktig. Ved montasje, posisjonering av arbeidsstykker og ved sveiseoperasjoner kommer denne egenskapen godt med. Produksjonskvaliteten ligger derfor på et høyt nivå. En industrirobot kan virke helkontinuerlig. Produksjonskostnadene blir dermed vesentlig redusert.
Figur 8.10
TTT-robot
Det fins mange flere frihetsgrader, tenk bare på menneskehånden!
199
Det fins naturligvis også enkelte ulemper: - Anskaftelses- og implementeringskostnadene er høye. - Følsomheten (med spesielle følere) og oversikten er svært begrenset og kan ikke på noen måte sammenliknes med de menneskelige sanser.
8.3.1
Robottyper
I likhet med "pick & place"-enhetene blir også robotene delt inn etter bevegelsesakser ut fra basis. Vi skiller mellom disse typene: TTT, TRT, RTT, RRT, RRR og den såkalte SCARA-roboten. Noen av disse typene skal vi springe lett over.
På en TTT er de første tre bevegelsesaksene rettlinjede (translerende). Figur 8.10a viser en TTT-robot, mens figur 8.10b viser det blokkformede arbeidsområdet til denne roboten. Roboten på figuren har en rotasjonsakse etter den tredje translasjonsaksen.
200
Figur 8.11
TTT-portalrobot
Figur 8.12
Figur 8.13
RTT-robot
RRR-robot
201
TTT-roboten fins i forskjellige utførelser. En av dem er portalroboten på figur 8.11.
Når vi går ut fra basis, har RTT-roboten først en rotasjonsakse og deretter to translasjonsakser. Se figur 8.12.
Hver robot har sitt bruksområde. Den mest brukte er RRR-roboten. Se figur 8.13. Denne robottypen har fem akser og en posisjoneringsnøyaktighet på 0,2 mm. Når overarmen til roboten er todelt, får vi en robot med seks akser. Se figur 8.14.
Figur 8.14
Seksakset RRR-robot
Figur 8.15 viser en svært alminnelig montasjerobot. Denne roboten er av typen RRT. Den har til sammen fire akser og blir ofte kalt svingarmrobot eller SCARA (selective compliancy assembly robot arm). Det vil si en selektivt fjærende robot. «Selektivt fjærende» vil si at roboten bare kan fjære horisontalt og ikke vertikalt (som for eksempel en husdør). Posisjoneringsnøyaktigheten er 0,05 mm. 202
Figur 8.16 viser en SCARA-robot som monterer et produkt.
a
konkret utførelse
Fi gur 8.15
Figur 8.16
b arbeidsområde
SCARA-robot
Montering med SCARA-robot
203
a på tilkoplingsflensen
b
c
Figur 8.17
204
Tool centre point (TCP)
midt i griperen
rotasjon om TCP
8.3.2
Tool centre point
I beskrivelser av industriroboter støter vi alltid på begrepet «tool centre point» (TCP). Det er det punktet som i forhold til foten av roboten beveger seg gjennom arbeids området. Robotstyringen bruker derfor sentrum av flensen hvor verktøyet eller griperen er montert, som standardverdi. Se figur 8.17a. Men når verktøyet eller griperen er montert på robotarmen, kan vi forflytte TCP. På 8.17b ser vi en griper hvor TCP er programmert midt mellom bakkene. Fordelen med å kunne forflytte TCP ser vi på figur 8.17c. Robotarmen roterer her rundt TCP. Verktøyet eller arbeidsstykket kan dermed rotere om sin egen senterlinje.
8.3.3
Robotstyring
Det fins flere måter å programmere en robot på. Vi skiller mellom:
Point-to-point- eller innstillingsmetoden. Roboten blir ført fra punkt til punkt for hånd, og aksestillingene som hører til de forskjellige punktene, blir lagret i programmet. Denne metoden har en del begrensninger fordi den ikke virker utenfor et aksesystem. Multipoint- eller følgeprogrammering. Roboten blir beveget i en bestemt bane. Hvert 0,01 s blir posisjonen til de forskjellige aksene lagret i minnet. Multipointmetoden krever stor lagringskapasitet og blir bare brukt på spesielle tilfeller, for eksempel ved sprøytemaling. CP-styring («controlled path»). Vi snakker også om teach-in-programmering. Dette er den mest brukte programmeringsmetoden, og vi skal derfor gå litt nærmere inn på den. Med en programmeringsenhet eller et teach-panel blir roboten flyttet fra punkt til punkt ved hjelp av en mus. Se figur 8.18. Ved siden av den banen TCP må beskrive, innneholder programmet også mange andre data som:
-
-
griperfunksjoner med ventetider (åpen/lukket) sveiseparametre reaksjon på eksterne signaler («wait» og «interrupt») flytting av TCP, for eksempel ved skifte av verktøy innstilling av bevegelseshastigheten og -nøyaktigheten forskjellige basisinstruksjoner osv.
Vi kan laste inn alle programdata via en meny. Programmet har en basisstruktur og kan bestå av et hovedprogram med subrutiner.
205
a
programmeringsenheten
b robotprogrammering
Figur 8.18
Programmering med en programmeringsenhet
Metoden har disse fordelene: Programmeringsoperasjonene blir utført av roboten. - Vi ser direkte resultatet av hver bevegelse. - Programmet er enkelt å tilpasse.
206
Metoden har disse ulempene: Vi posisjonerer på øyemål, noe som medfører en viss unøyaktighet. Programmeringen krever en del maskintid og fører derfor til produksjonstap. En moderne metode som først og fremst har til hensikt å eliminere ulempene ved sistnevnte metode, er «off-line»-programmering. Robotprogrammet blir da forberedt på en PC. Det er til og med mulig å skrive hele programmet uten å fastlegge punktene på banen. Punktene blir angitt senere med roboten (i maskintid selvfølgelig). I dette tilfellet snakker vi om hybrid programmering.
8.4
Nettverk
Et fleksibelt produksjonssystem (flexible manufacturing system = FMP) virker ikke uten et styrings- eller kommunikasjonssystem. Alle de komponentene i et fleksibelt produksjonssystem vi hittil har behandlet, som logistikk med identifikasjon, håndtering og transport og produksjons- og monteringsverktøy, må koples til hverandre på en forsvarlig måte. Styringene blir deler i et eller annet koplingssystem. Figur 8.19 viser tre forskjellige grunnformer av et koplingssystem.
b ringformet
— master
Figur 8.19
c
busstruktur
Koplingssystem
Koplingssystemet på figur 8.19a er stjemeformet, det vil si at alle slavedeler er forbundet med masterdelen. I det ringformede nettverket på figur 8.19b er slavedelene koplet innbyrdes til hverandre, mens kommunikasjonen foregår via en ringledning. Ringledningen er ofte dobbelt.
207
Dersom vi får kabelbrudd i et system med dobbelt ledning, vil systemet likevel (delvis) fungere. Figur 8.19c viser det mest moderne koplingssystemet. PLS-ene er forbundet med en kommunikasjonsbuss som formidler informasjonen. I dette systemet er det også vanligvis mulig å drive den uskadde delen av systemet videre dersom en eller flere PLS-er skulle falle ut eller vi får brudd i kommunikasjonsbussen, se figur 8.20a og b. Hvis kommunikasjonsbussen ved bruddet blir isolert fra masterdelen, er det i visse systemer mulig å «velge» en ny master.
------ master -----hovedringledning hjelperingledning
kabelbrudd
a
PLS-forstyrrelse
ringformet kopling
b bussformet kopling
Figur 8.20
Forstyrrelser i et koplingssystem
De forskjellige systemene kan koples sammen til et nettverk. Se figur 8.21.
208
Det sier seg selv at vi ikke kan kople sammen forskjellige PLS-typer til et nettverk. Selv forskjellige PLS-typer fra samme produsent kan ikke alltid kommunisere med
busskopling
Figur 8.21
Nettverk
hverandre. Med kommunisering mener vi her at PLS-ene ikke er koplet til hverandre via innganger og utganger (I/O), men via en kopling ved hjelp av et kommunikasjonssystem og koplingsmoduler som er en del av PLS-en.
For at automatiseringen skal bli vellykket, må vi i industrielle systemer kunne kommunisere på forskjellige nivåer. Ifølge MAP (manufacturing automation protocol) fra General Motors skiller vi mellom fem kommunikasjonsnivåer: - nivå 0: energiomformere og sensorer nivå 1: maskin- og prosess-styringer - nivå 2: produksjonsstyringer og supervisjon (kontroll og veiledning) - nivå 3: produksjonsledelse nivå 4: finansiell planlegging og administrasjon
nivå finansiell planlegging og administrasjon
produksjonsadministrasjon
produksjons styring og supervisjon
maskin- og prosesstyring
Figur 8.22
Nivåinndeling ifølge MAP
energi omformere og sensorer
209
Figur 8.23
Utførelse av MAP på forskjellige nivåer
Figur 8.22 er en skjematisk framstilling av de forskjellige nivåene, mens 8.23 er en konkret gjengivelse av inndelingen i nivåer. Vi kan kalle MAP et hierarkisk system med en pyramideformet oppbygning. Figur 8.24 viser de fem nivåene. Vi ser at informasjonen som blir utvekslet mellom de forskjellige nivåene, avtar etter hvert som vi nærmer oss toppen av pyramiden. Av dette kan vi
210
Figur 8.24
Hierarkisk oppbygning ifølge MAP
trekke den konklusjonen at i et godt utbygd system, blir mest mulig informasjon mottatt og behandlet på laveste nivå. Med det mener vi at det er bedre å lagre mest mulig informasjon i produktbæreren, for eksempel ved hjelp av elektroniske etiketter, enn at en datamaskin som ligger ett eller to nivåer høyere, skal følge produktbæreren.
8.5
Oppgaver
Kontrollspørsmål 1 Hva mener vi i FPA med et logistisk system? 2 Hvilke tre bevegelsesakser finner vi igjen i betegnelser på roboter og "pick & pl ace"-enheter? 3 Hvor stor er posisjoneringsnøyaktigheten (omtrent) til "pick & place"-enheter, og hva er den avhengig av? 4 Hva er fordelen med moduloppbygde "pick & place"-enheter? 5 Hva mener vi med en industrirobot? 6 Hva mener vi med frihetsgrad? 7 Hvor mange frihetsgrader kan vi maksimalt utstyre en robot med? 8 Hvilke fordeler og ulemper medfører bruken av industriroboter? 9 En robot blir beskrevet ved hjelp av de tre første aksene. Når roboten har mer enn tre akser, er de øvrige aksene rotasjonsakser. Hvorfor er det slik? 10 Hva mener vi med TCP i forbindelse med en robot, og hvorfor kan vi endre posisjonen til dette punktet i programmet? 11 Når blir multipoint-programmering brukt? 12 Hvilken programmeringsmetode blir mest brukt i forbindelse med roboter? 13 Hvorfor egner en SCARA-robot seg spesielt godt for montering av deler? 14 Etter hvilke tre grunnformer kan vi kople sammen PLS-er? 15 Hva er fordelen med en ringformet kopling med to nngledninger sammenliknet med et system hvor det bare er én ringledning? 16 Vi kan kople sammen PLS-er via innganger og utganger, men også via et koplingssystem og koplingsmoduler. I det sistnevnte systemet kan PLS-ene (delvis) «titte inn i» minnene til hverandre. Hvilke fordeler har dette systemet sammenliknet med I/O-koplingen? 17 Hvorfor er det fornuftig å behandle mest mulig informasjon på laveste automatiseringsnivå?
Øvingsoppga ver 1
Tegn skjematisk prinsippet for en fritt programmerbar sylinder, og beskriv i generelle vendinger hvordan den virker.
211
212
2
Tegn arbeidsområdet til disse robotene: a TTT-roboten b RTT-roboten c TRT-roboten d SCARA-roboten
3
Skisser de fem kommunikasjonsnivåene ifølge MAP.
4
Tegn et PLS-system hvor en prosess-styring på kommunikasjonsnivå 2 er koplet til tre PLS-systemer på nivå 1 via en busskopling: - PLS-system A består av en «master» og to «slaver» som er forbundet med hverandre ved hjelp av en kommunikasjonsbuss. - PLS-system B består av en «master» og fire «slaver» i en stjemekopling. - PLS-system C består av en «master» og fire «slaver» i en ringkopling.
Illustrasjonene
Vi takker følgende bedrifter og institusjoner for tillatelse til å bruke følgende illustrasjoner: Fig. 8.13a; 8.14; 8.18a
Asea Brown Boveri B.V., Apeldoorn
BT Benelux Interntransport N.V., Ede Festo B.V., Delfgauw
Fig. 6.10
Isotron Systems B.V., ’s-Hertogenbosch
NCR Nederland N.V., Amsterdam Nedap N.V., Groenlo
Fig. 7.25
Fig. 7.8
Fig. 7.9
Fig. 7.22; 7.23
Norgren Martonair B.V., Amsterdam
Fig. 1.17; 1.18; 4.15; 8.2a; 8.4; 8.6a; 8.8; 8.11
Fig. 7.7; 7.18; 7.19; 7.24; 7.29; 7.30; 7.31; 7.32; 7.33; 7.34; 8.3; 8.10; 8.12b; 8.13b; 8.15; 8.16
Willem van Rijn B.V., Amsterdam
SKF-Nederland B.V., Veenendaal Telemecanique B.V., Haarlem
Fig. 7.26; 7.27
Fig. 8.5; 8.23
213