Via synkronaktioner styrd pendling (OSCILL)

Relevanta dokument
Uppsöka fast punkt (G75, G751)

Kartesisk PTP-körning

Axelbyte, spindelbyte (RELEASE, GET, GETD)

Programmerbar spegling (MIRROR, AMIRROR)

Tandmatning (G95 FZ) Funktion. Grunder. Tandmatning (G95 FZ)

Definition och initiering av fältvariabler (DEF, SET, REP)

Spindelvarvtal (S), spindelrotationsriktning (M3, M4, M5)

Inställbar nollpunktsförflyttning (G54... G57, G G599, G53, G500, SUPA,

3. Välj den sprajt (bild) ni vill ha som fallande objekt, t ex en tårta, Cake. Klicka därefter på OK.

1. Mätning av gammaspektra

General Purpose registers ALU I T H S V N Z C SREG. Antag att vi behöver skriva in talet 25 till register R18

Whack-a-Witch. Introduktion. Nivå

Introduktion. Torsionspendel

Tentamen i. TDDC67 Funktionell programmering och Lisp

Programmeringspalett. Pr o gr a mvar a

Objektorienterad programmering Föreläsning 11. Copyright Mahmud Al Hakim

Design av en klass BankAccount som representerar ett bankkonto

Datorövning 5 Exponentiella modeller och elasticitetssamband

Applikationsexempel Timer med tryckknapp

Föreläsning 10. Besiktningsprotokollet

Design av inbyggda system

Sirius II Installation och Bruksanvisning

Besiktningsprotokollet

1. Vi satte ut ett körblock med standardinställningar 2. Ett till körblock sattes men varaktighet en ställdes istället på 3,55 rotationer (se bild)

Det är principer och idéer som är viktiga. Skriv så att du övertygar examinatorn om att du har förstått dessa även om detaljer kan vara felaktiga.

SNABBGUIDE I G-KODER. Andra upplagan för operatörer. Daniel Karlsson

REV 3. Användarmanual

Labbrapport svängande skivor

729G04 Programmering och diskret matematik. Python 2: Villkorssatser, sanningsvärden och logiska operatorer

JF-Link. Trådlös elmanövrering av hydraulik. Instruktionsbok. Bruksanvisning i original

Lär dig programmera! Prova på programmering med enkla exempel! Björn Regnell

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

IndraDrive - ProfiNet

Uppdrag för LEGO projektet Hitta en vattensamling på Mars

ALTERNATIVA KOORDINATSYSTEM -Cylindriska koordinatsystem. De polära koordinaterna r och " kan beskriva rörelsen i ett xyplan,

Monteringsinstruktion för Rolltor Easy Utgåva: 04/2010

Grunderna i stegkodsprogrammering

Programmera i teknik - kreativa projekt med Arduino

Lathund för spel med karta

Programmering i Scratch 2.0

Aktivitetsbank. Matematikundervisning med digitala verktyg II, åk 1-3. Maria Johansson, Ulrica Dahlberg

Design av inbyggda system

Analysverktyget Program Version:

Uppgift 1 - programmet, Uppg6.m, visade jag på föreläsning 1. Luftmotståndet på ett objekt som färdas genom luft ges av formeln

Handbok Milestone

Skjutdrivning 2SB5. Komplettering av bruksanvisningen SIPOS 5. Ändringar förbehålls!

Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2

TAOP61 Projekt 2. Kaj Holmberg (LiU) TAOP61 Optimering 28 oktober / 14

Handbok Milestone

Föreläsning 4 Programmeringsteknik DD1310. Felhantering. Syntax. try och except är reserverade ord som används för hantering av exekverings fel.

TELEX PROFESSOR Daisyspelare

Laboration 4: Stora talens lag, Centrala gränsvärdessatsen och enkla punktskattningar

Introduktion till programmering D0009E. Föreläsning 1: Programmets väg

Micro:bit. Börja skapa egna program

Introduktion till att programmera med Scratch (lektion 3 av 5)

Program & programmering

Klassdeklaration. Metoddeklaration. Parameteröverföring

Chalmers Tekniska Högskola och Mars 2003 Göteborgs Universitet Fysik och teknisk fysik Kristian Gustafsson Maj Hanson. Svängningar

TEKNISK NOTIS TN AT006

Programmering B med Visual C

Centronic EasyControl EC545-II

DOP. Difference Projekteringsvägledning DOP 3.0. Projekteringsvägledning. Tryckreglerande spjäll DIFFERENCE - Driftsättning DOP 3.

Låt vara en reell funktion av en reell variabel med definitionsmängden som är symmetrisk i origo.

Snabbguide i G-koder. Daniel Karlsson CNC Support

Boverkets författningssamling Utgivare: Förnamn Efternamn

INNEHÅLLSFÖRTECKNING... 2 FÖRORD... 3 INLEDNING... 4 ATT ANVÄNDA MOTORERNA... 9 LOOP (UPPREPANDE) FUNKTIONEN SKAPA EN EGEN KLOSS...

Laborationens mål är att få displayen att visa timmar, minuter och sekunder samt att kunna ställa klockan.

Ökenracet. Introduktion. Nivå. STEG 1: Skapa scenen och lägg till sprites. Checklista. STEG 2: Få lejonet och papegojan att röra på sig.

Introduktion till MATLAB, med utgångspunkt från Ada

Programmering, grundkurs, 8.0 hp HI1024, HI1900 etc., Tentamen TEN1. Måndagen den 10 januari 2011,

Design vid utveckling av inbyggda system

PGC: Läser från fotocell och lackar efter avläst. Läser från fotocell och lackar efter programerat. Detaljräknare

Sphero SPRK+ Appen som används är Sphero Edu. När appen öppnas kommer man till denna bild.

Automatic Systems. Mekanisk enhet vändkors Standardarm TR4XX FÄLTMANUAL. Intergate AB Kilegatan Strömstad Tel: Fax:

Motivation. Programmeringsuppgift: En första ansats: Lagra info om anställda Håll reda på varje anställds närmaste chef. som också är en anställd!

1 Ström ON på Baksida: 2 Kontrollera att STANDBY knapp lyser Grönt: Referenskörning (JOG-ZERO) Tryck JOG: Tryck ZERO Return:

Optimering med bivillkor

SWCombi Sol-Vind-RadioAutomatik Installations- & bruksanvisning

KUNGLIGA TEKNISKA HÖGSKOLAN KISTA. Lego Linefollower. Få en robot att följa linjen på golvet!

Att använda accelerationssensorn i en smarttelefon/surfplatta för att göra mätningar

JavaScript. Innehåll. Historia. Document object model DHTML. Varför Javascript?

Bruksanvisning Kopplingsur

Datorprojekt, del 1. Digitala system 15 p

Bilaga KeyControl Felsökning

Vetenskaplig metod och statistik

Design av inbyggda system. Innehåll. Hårdvarunära design. Hårdvarunära design. Hårdvarunära design. Hårdvarunära design TDD

Julskoj. Nivå. Introduktion

Handbok Milestone

Design av inbyggda system

Imperativ programmering. Imperativ programmering konstruktioner i Lisp. Datastrukturer (kap ) arraystruktur poststruktur

Introduktion till Matlab

Mätstyrning med M7005

Kontaktperson Datum Beteckning Sida Mathias Johansson P (4) Energiteknik

Design av interaktiv multimedia. Läs i förväg om det som övningarna kommer att beröra. Träna hemma både före och efter övningarna.

Instruktioner för uppdatering av enheter med ISP

1. (Dugga 1.1) (a) Bestäm v (3v 2u) om v = . (1p) and u =

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Exempelduggan. Luffarschack. Koda spel

Kurs i programmering Java Uppgifter

Affärsidé Mål Intressenterna Systemanalys

LANDSTINGSSERVICE I UPPSALA LÄN STYR- OCH ÖVERVAKNINGSSYSTEM. 3. Exempelmallar. Dokument Exempelmallar. Sidnr 1(18)

Transkript:

Funktion Syntax Betydelse Vid denna typ av pendling är en ansättningsrörelse tillåten endast vid vändpunkterna resp. inom definierade vändningsområden. Allt efter krav kan pendelrörelsen under ansättningen fortsättas eller stoppas tills ansättningen är fullständigt genomförd. 1. Fastlägga parametrar för pendlingen 2. Definiera rörelsesynkronaktioner 3. Tillordna axlar, fastlägga ansättning OSP1[<Pendelachse>]= Position för vändpunkt 1 OSP2[<Pendelachse>]= Position för vändpunkt 2 OST1[<Pendelachse>]= OST2[<Pendelachse>]= FA[<Pendelachse>]= OSCTRL[<Pendelachse>]= OSNSC[<Pendelachse>]= OSE[<Pendelachse>]= WAITP(<Pendelachse>) Hållningstid i vändpunkt 1 i sekunder Hållningstid i vändpunkt 2 i sekunder Matning för pendelaxeln Inställnings- resp. återställningsposition Antal renbränningsslag Slutposition Frige axel för pendling Axeltillordning, ansättning OSCILL[<Pendelachse>]=(<Zustellachse 1>,<Zustellachse 2>,<Zustellachse 3>) POSP[<Zustellachse>]=(<Endpos>,<Teillänge>,<Modus>) OSCILL: POSP: Endpos: Teillänge: Tillordna ansättningsax(el)(lar) för pendelaxeln Fastlägga total och delansättningar (se Kapitel Fil- och programförvaltning) Slutposition för ansättningsaxeln efter det att alla delansättningar har körts. Storlek på delansättningen i vändpunkten/vändområdet

Modus: Uppdelning av den totala ansättningen i delansättningar = två lika stora reststeg (förinställning); = alla delansättningar lika stora Rörelsesynkronaktioner WHEN DO WHENEVER DO när, då alltid när, då Exempel I vändpunkt 1 ska ingen ansättning göras. Vid vändpunkt 2 ska ansättningen göras redan på avståndet ii2 före vändpunkt 2 och pendelaxeln inte vänta i vändpunkten på avslutningen av delansättningen. Axel Z är pendelaxel och axel X ansättningsaxel. bild 1 1. Parametrar för pendlingen Programkod Kommentar DEF INT ii2 ; Definiera variabel för vändområde 2 OSP1[Z]=10 OSP2[Z]=60 ; Definiera vändpunkt 1 och 2 OST1[Z]=0 OST2[Z]=0 ; Vändpunkt 1: Fint precisionsstopp Vändpunkt 2: Fint precisionsstopp FA[Z]=150 FA[X]=0,5 ; Matning pendelaxel Z, matning ansättningsaxel X

Programkod Kommentar OSCTRL[Z]=(2+8+16,1) ; Koppla från pendelrörelse i vändpunkt 2; efter RWL renbränna och uppsöka slutposition; efter RWL uppsöka motsvarande vändposition OSNC[Z]=3 ; Renbränningsslag OSE[Z]=70 ; Slutposition = 70 ii2=2 ; Ställa in vändområde WAITP(Z) ; Tillåter pendling för Z-axeln 2. Rörelsesynkronaktion Programkod WHENEVER $AA_IM[Z]< $SA_OSCILL_REVERSE_POS2[Z] DO -> $AA_OVR [X]=0 $AC_MARKER[0]=0 WHENEVER $AA_IM[Z]>= $SA_OSCILL_REVERSE_POS2[Z] DO $AA_OVR[Z] =0 WHENEVER $AA_DTEPW[X]==0 DO $AC_MARKER [0]=1 WHENEVER $AC_MARKER[0]==1 DO $AA_OVR[X] =0 $AA_OVR[Z]=100 Kommentar ; Alltid när den aktuella positionen för pendelaxeln Z i MKS är mindre än början på vändområde 2, då sätts den axiala övermanningen för ansättningsaxeln X på 0% och flaggan med index 0 på värdet 0. ; Alltid när den aktuella positionern för pendelaxeln Z i MKS är större än eller lika med vändposition 2, då sätts den axiala övermanningen för pendelaxeln Z på 0%. ; Alltid när restvägen för delansättningen är lika med 0, då sätts flaggan med index 0 på värdet 1. ; Alltid när flaggan med index 0 är lika med 1, då sätts den axiala övermanningen för ansättningsaxeln X på 0%. Därmed förhindras en för tidig ansättning (pendelaxel Z har ännu inte åter lämnat vändområde 2, men ansättningsaxel X är beredd för en förnyad ansättning). Sätter den axiala övermanningen för pendelaxeln Z från 0% (aktion i den 2:a synkronaktionen) till förflyttning åter på 100%. -> måste programmeras i ett block 3. Starta pendling

Programkod Kommentar OSCILL[Z]=(X) POSP[X]=(5,1,1) ; Starta axlarna Pendelaxeln Z får axel X som ansättningsaxel ;tillordnad. M30 ; Programslut Axeln X ska till slutpositionen 5 köra i steg på 1. Beskrivning 1. Fastlägga pendelparametrar Före rörelseblocket, som innehåller tillordningen av ansättnings- och pendelaxel samt fastläggandet av ansättningen, ska parametrarna för pendlingen fastläggas (se "Asynkron pendling"). 2. Fastlägga rörelsesynkronaktioner Via synkronvillkor följer: Undertrycka ansättning, tills pendelaxeln befinner sig inom ett vändområde (ii1, ii2) eller i en vändpunkt (U1, U2). Stoppa pendelrörelse under ansättningen i vändpunkten. Starta pendelrörelse åter efter avslutad delansättning. Start av nästa delansättning fastläggs. 3. Tillordna pendel- och ansättningsaxel samt fastlägga total och delansättning. Fastlägga pendelparametrar Tillordning av pendel- och ansättningsaxel: OSCILL OSCILL[Pendelachse] = (Zustellachse1, Zustellachse2, Zustellachse3) Med kommandot OSCILL görs axeltillordningarna och starten av pendelrörelsen. Maximalt kan en pendelaxel tillordnas 3 ansättningsaxlar. hänvisning Före starten av pendlingen måste synkronvillkoren för axlarnas beteende vara fastlagt. Fastlägga ansättningar: POSP POSP[Zustellachse] = (Endpos, Teillänge, Modus) Med kommandot POSP meddelas styrningen: Total ansättning (via slutpositionen) Storleken på respektive delansättning vid vändpunkten resp. i vändområdet

Delansättningsbeteendet när slutpositionen uppnås (via moden) Mode = 0 Mode = 1 För de båda sista delansättningarna görs en uppdelning av den kvarvarande vägen fram till målpunkten på 2 lika stora reststeg (förinställning). Alla delansättningar är lika stora. De beräknas ur den totala ansättningen. Fastlägga rörelsesynkronaktioner De i det följande utförda rörelsesynkronaktionerna används helt allmänt till pendling. Du finner exempellösningar för lösningen av de enskilda kraven, som tjänar som komponent för upprättande av användarspecifika pendelrörelser. hänvisning I enskilda fall kan synkronvillkoren också programmeras annorlunda. Nyckelord WHEN DO WHENEVER DO när, då alltid när, då Funktioner Med de i det följande detaljerat beskrivna språkverktygen kan följande funktioner realiseras: 1. Ansättning i vändpunkt. 2. Ansättning i vändområde. 3. Ansättning i båda vändpunkterna. 4. Stoppande av pendelrörelsen i vändpunkten. 5. Åter starta pendelrörelsen. 6. Inte starta delansättningen för tidigt. För alla här som exempel framställda synkronaktioner gäller fölgande antaganden: Vändpunkt 1 < vändpunkt 2 Z = pendelaxel X = ansättningsaxel

hänvisning För närmare förklaringar se Kapitel Rörelsesynkronaktioner. Tillordna pendel- och ansättningsaxel samt fastlägga total och delansättning Ansättning i vändområde Ansättningsrörelen ska börja inom ett vändområde innan vändpunkten har uppnåtts. Dessa synkronaktioner förhindrar ansättningsrörelsen tills pendelaxeln befinner sig i ett vändområde. Under givna antaganden(se ovan) resulterar följande anvisningar: Vändområde 1: WHENEVER $AA_IM[Z]> $SA_OSCILL_RESERVE_POS1 [Z]+ii1 DO $AA_OVR[X] = 0 Vändområde 2: WHENEVER $AA_IM[Z]< $SA_OSCILL_RESERVE_POS2 [Z]+ii2 DO $AA_OVR[X] = 0 Alltid när den aktuella positionern för pendelaxeln i MKS är större än början på vändområde 1, då sätts den axiala övermanningen för ansättningsaxeln på 0%. Alltid när den aktuella positionern för pendelaxeln i KS är mindre än början på vändområde 2, då sätts den axiala övermanningen för ansättningsaxeln på 0%. Ansättning i vändpunkt Så länge som pendelaxeln inte har uppnått vändpunkten äger ingen rörelse rum för ansättningsaxeln. Under givna antaganden(se ovan) resulterar följande anvisningar: Vändområde 1: WHENEVER $AA_IM[Z]<> $SA_OSCILL_RESERVE_POS1 [Z] DO $AA_OVR[X] = 0 $AA_OVR[Z] = 100 Vändområde 2: För vändpunkt 2: WHENEVER $AA_IM[Z]<> $SA_OSCILL_RESERVE_POS2 [Z] DO $AA_OVR[X] = 0 $AA_OVR[Z] = 100 Alltid när den aktuella positionen för pendelaxeln Z i MKS är större eller mindre än positionen för vändpunkt 1, då sätts den axiala övermanningen för ansättningsaxel X på 0% och den axiala övermanningen för pendelaxeln Z på 100%. Alltid när den aktuella positionen för pendelaxeln Zu i MKS är större eller mindre än positionen för vändpunkt 2, då sätts den axiala övermanningen för ansättningsaxel X på 0% och den axiala övermanningen för pendelaxeln Z på 100%. Stoppande av pendelrörelsen i vändpunkten

Pendelaxeln stoppas i vändpunkten, samtidigt börjar ansättningsrörelsen. Pendelrörelsen fortsätter när ansättningsrörelsen är fullständigt utförd. Samtidigt kan denna synkronaktion användas till att starta ansättningsrörelsen om denna stoppades av en föregående synkronaktion som ännu är verksam. Under givna antaganden(se ovan) resulterar följande anvisningar: Vändområde 1: WHENEVER $SA_IM[Z]== $SA_OSCILL_RESERVE_POS1 [Z] DO $AA_OVR[X] = 0 $AA_OVR[Z] = 100 Vändområde 2: WHENEVER $SA_IM[Z]== $SA_OSCILL_RESERVE_POS2 [Z] DO $AA_OVR[X] = 0 $AA_OVR[Z] = 100 Alltid när den aktuella postionen för pedelaxeln i MKS är lika med vändposition 1, då sätts den axiala övermanningen för pendelaxeln på 0% och den axiala övermanningen för ansättningsaxeln på 100%. Alltid när den aktuella postionen för pedelaxeln Zu i MKS är lika med vändposition 2, då sätts den axiala övermanningen för pendelaxeln X på 0% och den axiala övermanningen för ansättningsaxeln på 100%. Online-utvärdering av vändpunkten Står på den högra sidan om jämförelsen en med $$ kännetecknad huvudkörningsvariabel, så utvärderas de båda variablerna kontinuerligt i IPO-takt och jämförs med varandra. hänvisning Mer informationer härtill se kapitel "Rörelsesynkronaktioner". Åter starta pendelrörelsen Denna synkronaktion används för att fortsätta pendelaxelns rörelse när delansättningsrörelsen är avslutad. Under givna antaganden(se ovan) resulterar följande anvisningar: WHENEVER $AA_DTEPW[X] ==0 DO $AA_OVR[Z] = 100 Alltid när restvägen för delansättningen för ansättningsaxel X i WKS är lika med noll, då sätts den axiala övermanningen för pendelaxeln på 100%. Nästa delansättning Efter utförd ansättning måste en för tidig start av nästa delansättning förhindras.

Därtill används en kanalspecifik flagga ($AC_MARKER[Index]), som sätts i slutet av delansättningen (delrestväg 0) och raderas när vändområdet lämnas. Då förhindras nästa ansättningsrörelse med en synkronaktion. Under givna antaganden(se ovan) resulterar t.ex. för vändpunkt 1 följande anvisningar: 1. Sätta flagga: WHENEVER $AA_DTEPW[X] ==0 DO $AC_MARKER[1]=1 Alltid när restvägen för delansättningen för ansättningsaxel X i WKS är lika med noll, då sätts flaggan med index 1 på 1. 2. Radera flagga WHENEVER $AA_IM[Z]<> $SA_OSCILL_RESERVE_POS1 [Z] DO $AC_MARKER[1] = 0 Alltid när den aktuella positionen för pendelaxel Z i MKS är större eller mindre än positionen för vändpunkt 1, då sätts flagga 1 på 0. 3. Förhindra ansättning WHENEVER $AC_MARKER[1] ==1 DO $AA_OVR[X] = 0 Alltid när flaggan är lika med 1, då sätts den axiala övermanningen för ansättningsaxeln X på 0%.