Adept V+ Servicemanual Sida 1/8 MTiH / AM 2008-09-11



Relevanta dokument
Programmeringsteknisk översiktskurs för yrkeshögskoleprogram

Kapitel 16: Programmering

[] Arrayer = Indexerad variabel

PNSPO! Använda NJ med NS System Memory. 14 mars 2012 OMRON Corporation

"Crash Course in Programming"

Krav: * Filen MpUpdate.exe får inte köras när du startar denna uppdatering.

Command line argumenter. Objektorienterad Programmering (TDDC77) Vad blir resultatet? Nu då? Ahmed Rezine. Hösttermin 2016

Innehåll i detta dokument

Objektorienterad Programmering (TDDC77)

KPP053, HT2016 MATLAB, Föreläsning 1. Introduktion till MATLAB Skript Inläsning och utskrift av variabler Ekvationssystem Anonyma funktioner

Kapitel 15: Data/Matrix Editor

Paneler - VCPXX.2. Programmeringsmanual för VCP-paneler. Revision 2

Styrsystem. SoMachine TM241 / 251. Kom-igång med SoMachine projekt. Skapad: Rev

WAGO IO System Service Seminar. Diagnostik

Komma igång med 3L Pro Komma igång med 3L. Copyright VITEC FASTIGHETSSYSTEM AB

Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic

Till assemblersystemet Zuper 80 Assembler krävs en SPECTRAVIDEO 328/318+minst 16K ram extra.

Vad händer när man kör ett program? Program och processer. Funktionsanrop. Avsluta programmet

16 Programmering TI -86 F1 F2 F3 F4 F5 M1 M2 M3 M4 M5

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering

Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6

Styrsystem M580. Användare tips för Modicon M580. Skapad: Rev

Styrsystem. SoMachine TM241 / 251. Kom-igång med SoMachine projekt. Skapad: Rev

Monitor Pro V7 SCADA. Kom-igång med kommunikation Unitelway TCP/IP

Handledningsmaterial Visio 2010

Ladda upp filer fra n PLC till PC

Kommandotolken hittar du under Start->Program->Tillbehör->Kommandotolken

Föreläsning 3. Programmering, C och programmeringsmiljö

PNSPO! Minneskort till CJ. 14 mars 2012 OMRON Corporation

Kapitel 4 Arkivmenyn Innehåll

Laboration 1 Introduktion till Visual Basic 6.0

Kompilera och exekvera Javakod

Översikt över Visual Basic

Att använda pekare i. C-kod

Code-Lite tutorial ( /RoJ)

Detta dokument skall ge en kortfattad introduktion till Jasmine installationen vid DSV.

Uppdatera Mobilus Professional till version * Filen MpUpdate.exe får inte köras när du startar denna uppdatering.

WinStudio - Uppstart. Drifttagning av operato rspanel med IndraWorks och WinStudio. IndraWorks 14. Version

Installationstjänst. maj 2011

Användarhandledning Version 1.2

ALEPH ver. 18 ALEPH Digital Asset Module (ADAM)

M7005 Fischer/Weisser mätstyrningsserver M9003 ersatt med Simens S Plc

Gran Canaria - Arbetsbeskrivning knapplänkar (Mediator 8)

Installation/start av LOGGER

Supportdokument Maila fil från PLC:n Synpunkter, felaktigheter, önskemål etc. för dokumentet meddel as Fil: Malthe_Suppo_Maila fil.

... Funktionsanrop. Vad händer när man kör ett program?

Vad kan man spara? - Bilder från Facebook -.pdf-filer från Internet - Bilder ur Arkiv Digital. -Skärmdump. Och mycket mer! - Bilder från Internet

Alla filer som bearbetar PHP script ska avslutas med ändelsen.php, exempelvis ska en indexsida till en hemsida heta index.php

Krav: * Filen MpUpdate.exe får inte köras när du startar denna uppdatering.

BRUKSANVISNING FÖR NÄTVERKSANVÄNDARE

Sync Master startas via Task Scedule (schemaläggaren). Programmet kan köras på servern utan att någon är inloggad på servern.

Introduktion till Matlab

FLEX Personalsystem. Uppdateringsanvisning

FrontPage Express. Ämne: Datorkunskap (Internet) Handledare: Thomas Granhäll

Tentamen PC-teknik 5 p

Objektorienterad Programmering (TDDC77)

I Skapa Hej.java och skriv programmet. I Kompilera med javac Hej.java. I Rätta fel och repetera tills du lyckas kompilera ditt program

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

LEX INSTRUKTION LEX LDAP

Installationsanvisningar VisiWeb. Ansvarig: Visi Closetalk AB Version: 2.3 Datum: Mottagare: Visi Web kund

TDIU01 - Programmering i C++, grundkurs

Laboration 1. "kompilera"-ikonen "exekvera"-ikonen

PNSPO! CF-korts hantering till NS-serien. 14 mars 2012 OMRON Corporation

ISAC. Tel. 08/

Laboration 1. En första bekantskap med C++ Namn: Godkänd den: Rest:

Dokumentdatum Sidor 1(6)

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Muddy. Funktioner / metoder. Punktnotation. Evalueringsordning

Enkla datatyper minne

Detta är en stor uppdatering som innehåller både många förbättringar och åtgärdar fel. Vi rekommenderar alla kunder att göra denna uppdatering.

Övningar till UNIX/Linux Grundkurs och förslag till LÖSNING

kommando -fl argument

Instruktioner. Innehåll: 1. Vad är Kimsoft Control (SIDA 2) 3. Hem (SIDA 2)

mikroicd Avbuggare Handbok

KOM IGÅNG GUIDE e!cockpit Av Carsten Holm

Guide. Webbsidor i Studentportalen. Innehåll. Uppdaterad:

Ritningshantering med hjälp av aktiv mapp med arbetsflöde

Det numeriska tangentbordet

Laboration 0. Enhetsbokstaven anges med ett kolon efter och man läser ofta ut detta, exempelvis C:(sekolon).

Programmering av NXT Lego- robot Labbrapport för programmering av en Lego- robot

Databasunderhåll i Säljstöd. Maj 2011

Inledande programmering med C# (1DV402) Ditt första C#-program med Visual Studio

Decipher och Datataker DT100

Uppdatera Metem 3005 till M7005

Digitalt lärande och programmering i klassrummet. Introduktionsworkshop - Interaktiva berättelser med Twine

Kunskapsbank ICARUS DB

Medieteknologi Webbprogrammering och databaser MEB725, 5p (7,5 ECTS) Klientprogrammering JavaScript Program på flera sidor

Ethernet kommunikation med hjälp av optionskortet OPT-CI

Telia Connect för Windows

Användarmanual Jobb i Stan. CV-Handboken. Registrering, jobbsökning mm. Copyright Aditro. All rights reserved.

KPP053, HT2015 MATLAB, Föreläsning 1. Introduktion till MATLAB Skript Inläsning och utskrift av variabler Ekvationssystem Anonyma funktioner

LATHUND FRONTPAGE 2000 SV/EN

1. Uppdateringsmodul (CMS)

Outline. I Vi kan lätt göra samma sak för fyra variabler... I Hur gör vi för 400 inlästa värden? I Ofta behöver man flera likadana variabler

Föreläsning 6: Introduktion av listor

Övning 6. Parallellport, timer

Lägg märke till skillnaden, man ser det tydligare om man ritar kurvorna.

Programmera Avant 5 med PC mjukvara

Modbus över Ethernet. WAGO Contact SA TSS STR

Att komma igång med FirstClass (FC)!

Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.

Transkript:

Adept V+ Servicemanual Sida 1/8 Fetstil är obligatoriskt, icke fet tillval < > runt teckenkombinationer variabel, programnamn o andra namn kursiva Program: Hantering av program, status, anropsträd, lista, gå in/ut ur program Status/anropsträd: STATUS STATUS tasknr Lista: DIRECTORY DIR/M DIR/? DIR ro.* (LISTP program) Radera: DELETEP prog1,prog2 DELETE a.adv_cal Avsluta/starta om: ABORT tasknr RETRY tasknr PROCEED tasknr KILL tasknr Gå i/ur: SEE program, stegnr SEE DEBUG tasknr DEBUG <F4> (Exit) I editor/debugger: <F3> <Shift+F3> <F11> <Shift+F11> <H> <Esc+H> <Esc> <I> <R> <Lnn> <-nn Ctrl+Delete> visar status för alla program på stacken visar status för angiven task, om tasken är abortad visas anropsträd med programnamn o stegnummer listar alla program i minnet (RAM) listar alla modifierade program i minnet (RAM) listar alla felaktiga program i minnet (RAM) listar alla program som börjar på ro. listar angivet programs innehåll, ej speciellt användbart raderar program prog1 o prog2 i minnet (RAM) raderar program a.adv_cal inkl. alla subrutiner o alla variabler som hör till programmet a.adv_cal stoppa program i task enl. tasknr. starta program startar med steget program stannat på starta program startar med steget efter det program stannat på (rekommenderas ej!) tar bort task 0 eller angiven task från stack gå in i program för att se eller redigera, ange stegnummer för att gå direkt till angivet steg om program stannat behöver ej programnamn anges gå in i debugger för att se/felsöka/redigera i angiven task om program stannat behöver ej programnamn anges gå ur editor(redigering)/debugger till monitor gå in i subrutin cursor på rätt rad (CALL ro.sub) gå ur subrutin till anropande program växla från debug till monitor mode växla från monitor till debug mode bläddra bland redigerade program gå till valt program välj COMMAND-mode välj INSERT-mode, infogningsläge (rekommenderas) välj REPLACE-mode, överskrivningsläge gå till rad nn i COMMAND-mode återfå raderade rader nn stycken Stega i debugger: Placera cursor, i debugger, på rad att stega från, på skiljelinje visas aktuellt stegnummer; XSTEP,,stegnummer ange steg för start stegning, OBS två komman! <Ctrl+g> gå direkt till rad som kursor står på, enklare än XSTEP <Ctrl+x> stega <Ctrl+z> stega utan att gå in i subrutiner hela CALL exekveras direkt <Ctrl+b> infoga breakpoint på aktuell rad <Ctrl+n> ta bort breakpoint på aktuell rad BPT ta bort alla breakpoints i aktuellt program

Adept V+ Servicemanual Sida 2/8 Filer: Hantering av filer, lista, kopiera, spara, ändra namn, flytta, kataloger, BAK-filer Lista: FDIRECTORY FDI drive:\katalog\fil.ext FDI drive:\katalog\*.v2 FDI drive:\katalog\*n*.* FDI *.PG Lista innehåll: FLIST drive:\katalog\fil.ext listar alla filer o kataloger i defaultkatalog listar filer enl. specifikation listar alla filer med extension V2 listar alla filer som innehåller N listar alla filer med ext. PG i defaultkatalog listar innehhållet i filen enl.specifikation, används sällan Vid kopiering, sparande och namnbyte får ej detinationsnamn finnas, tidigare befintlig fil måste raderas först! Kopiera: FCOPY drive:katalog\destfil. ext=drive:källfil.ext kopiera FCOPY c:applic\db-type.st=a:db-type.st kopierar filen db-type.st från diskett till katalog applic på hårddisk Spara: STORE drive:katalog\destfil.ext sparar allt i RAM STORE a:33050123 sparar allt i RAM på diskett, ext. blir.v2 STOREP a:33050123 sparar alla program i RAM på diskett,ext blir.pg STOREL a:33050123 sparar alla locations i RAM på diskett, ext. blir.lc STOREP a:ro-main=ro.main sparar alla program under ro.main på diskett, ext. blir.pg STOREP/n a:ro-main=ro.main sparar n nivåer under program ro.main på diskett, anges 1 sparas endast ro.main t.ex då ej subrutiner skall sparas Byta namn: FRENAME destfil.ext=källfil.st FREN db-type.stb=db-type.st FREN applic\main.pg=main.pgb Radera: FDELETE drive:\katalog\fil.ext FDEL c:\applic\main.pg FDEL *.pg Kataloger: FDI/c drive:\katalog\ FDI/c c:\kurs\ FDI/d drive:\katalog\ FDI/d c:\kurs\ CD \katalog CD \kurs DEFAULT D=\katalog CD \kurs döper om fil döper om filen db-type.st till db-type.stb (BAK-fil) döper om filen main.pgb till main.pg i katalog applic raderar fil raderar filen main pg i katalog applic på hårddisk (c:) raderar alla filer med extension.pg skapa katalog (/c = create) skapa katalogen kurs på hårddisk radera katalog (/d = delete), katalog måste vara tom radera katalogen kurs på hårddisk ändra defaultkatalog (Change Directory) ändra defaultkatalog till kurs ändra defaultkatalog ändra defaultkatalog till kurs Nätverk / TCP/IP / ethernet / NFS NFS> alltid före filbeteckningar på PC/Nätverk i övrigt som ovan (NFS=Net File Server), klarar långa filnamn NFS> ej AWC controllers (MV med nätkort, räcker ej med "N") NET nätverksstatus, IP-adress o mounts visas PING aaa.aaa.aaa.aaa kopplingskontroll nätverk, aaa = IP-adress eller nodnamn FSET tcp /NODE 'pc' /ADDRESS aaa aaa aaa aaa sätt nod till pc med IP-adress aaa, observera mellanslag ej punkt och inga ' för adress FSET nfs /MOUNT 'xc' /NODE 'pc' /PATH 'C:\Adept\' mount xc av katalog C:\Adept\ på nod pc

Adept V+ Servicemanual Sida 3/8 Variabler: Hantering av variabler, lista, söka, sätta, lokala, globala, automatiska, in/ut, jokrar Lista: Alla: LISTR LISTS LISTL reals tal strings tecken locations positioner Vissa: LISTR/LISTS/LISTL var_1,var_2,var_3 lista en eller flera variabler (skilda med komma) LISTR/LISTS/LISTL var[ ] listar array LISTR/LISTS/LISTL var[10] listar arrayelement med index 10 DO @task TYPE variabel (ej locations), automatiska kan förekomma I flera tasks Med jokrar: (lämpligt när man inte vet exakt vad variabeln heter) LISTR/LISTS/LISTL ro? listar alla variabler som börjar med ro LISTR/LISTS/LISTL ro?[ ] listar alla enställiga arrayvariabler som börjar med ro LISTR/LISTS/LISTL ro?[,] listar alla tvåställiga arrayvariabler som börjar med ro LISTR/LISTS/LISTL ro?[,,] listar alla treställiga arrayvariabler som börjar med ro Lokala/automatiska: LISTR/S/L @ro.main viss reservation för automatiska endast om program på stack listar alla variabler i programmet ro.main I debugger: Dubbelklicka på önskad variabel, för uttryck dubbelklicka på parentes eller är-lika-med-tecken. Sätta: När man sätter variabler manuellt så förbigår man programmens inbyggda säkerhet, så det är mycket viktigt att man vet vad man gör! DO kan bara användas i abortad task, använd @task för att slippa aborta task 0 (default). Reals (tal): DO @task variabel=123 sätt variabel=talet 123 DO @task variabel=variabel_2 sätt variabel=värdet av variabel _2 DO @task var[1]=var[2] kopiera värdet i var[2] till var[1], gamla värdet i var[1] förloras Strings (text/tecken): DO @task $variabel= text DO @task $string=$name sätt $variabel=text sätt strängen $string=innehållet i strängen $name Locations (positioner): DO @task SET loc=trans(x,y,z,yaw,pitch,roll) med koordinater som variabler DO @task SET loc=trans(300,200,850,0,180,90)med koordinater i siffror DO @task SET loc=loc2 position loc=position loc2 DO @task SET loc=loc2:trans(300) position loc=position loc2 förskjuten 300mm i x-led HERE loc sätt position loc till robotens nuvarande position POINT loc sätt ny position eller redigera befintlig I debugger: Klicka på önskad variabel, tryck <Shift-F5> ("TEACH"), ange nytt värde/text med (t.ex. ny text )/locations med TRANS(x,y,z,p,r) (ändring av locations i debugger rekommenderas ej! använd POINT) Radera: DELETER DELETES DELETEL DELETER/S/L var, var2 radera alla talvariabler (REALS) i RAM radera alla strängar (STRINGS) i RAM radera alla positioner (LOCATIONS) i RAM radera angivna/vissa variabler i RAM

Adept V+ Servicemanual Sida 4/8 Variabler: (forts.) Det finns tre typer av variabeldefinitioner globala (default), lokala och automatiska. Globala och lokala variabler är odefinierade från början. Globala: Globala variabler skall endast finnas då de nyttjas av flera program t.ex. databaser (variantdata), eller för kommunikation mellan program. Globala variabler brukar ha samma prefix som de rutiner de styr t.ex. vi.--- för visionsrutiner eller db.--- för databaser. Lokala: Variabler blir lokala m.h.a. kommandot LOCAL var1, var2 När ett program har exekverats finns de lokala variablerna kvar i minnet och kan alltid listas/användas igen. Lokala variabler är bra om man vill att ett program skall komma igång t.ex. vad som skedde förra gången det anropades. (motsvarar VB Static) Automatiska: Variabler blir automatiska m.h.a. kommandot AUTO var1, var2 Automatiska variabler använder tillfällig plats i minnet och kan anta vilka värden som helst när de ej är satta av programmet och deras innehåll är endast giltigt om program ligger på stack. Fördelen med automatiska varabler är att ett program kan exekveras i flera tasker utan att vaiablerna stör varandra mellan taskerna, för varje task reserveras eget minnesutrymme för de automatiska varablerna. In o ut-variabler: Vid programanrop kan in resp. utvariabler användas för att skicka variabler mellan anropande program o subrutiner. Subrutiner kan o bör ses som en svart låda där man skickar in data och får ut ett resultat. In/utvariabler fungerar som automatiska variabler. CALL gen.st.change($in,$search,$chg, $out) program för att söka o ersätta text i strängar. $in anger text att ändra $search anger tecken/text att söka efter $chg anger tecken/text att ändra till $out anger ändrad text I subrutiner finns variablerna beskrivna under INPUT PARM.: resp. OUTPUT PARM.: Signaler: Växla status på signaler: SIGNAL signal, sig2 SIGNAL q.ro.down SIGNAL 2,-2003,f.quit sätter signal, flera avdelas med komma sätter signal q.ro.down låg minus (-) framför kan vara adress eller variabel Se status på signaler: LISTR SIG(i.ro.open) visar tillstånd på signalen i.ro.open (-1=ON 0=OFF) IO in- och utgångar IO 1 ingångar IO 2 flaggor avsluta med <Ctrl+c> För att se status på signaler är enklast att använda menyfunktioner. Devicenet: DEVICNET DN.RESTART $in $search $chg Devicenet-noder scannas och mappas i config_c. gen.st.change $out listar noder och status på devicenet startar om devicenet ifall t.ex. en nod varit bortkopplad eller felaktig

Adept V+ Servicemanual Sida 5/8 Felsökning Vid stopp: Time-out eller Error-larm Konrollera åtgärda Öppna Monitor Kontrollera/anteckna ev. felmeddelande: * Felmeddelande * Program task nn stopped at prognamn step nnn datum tid Vanligaste felmeddelandena: * Undefined value * programmet har stannat pga en odefinierad variabel * Aritmetic overflow * division med noll, eller annan orimlig räkneoperation Om felmeddelande försvunnit från monitor, t.ex. om man tittat i ett program kan RET tasknr (RETRY) användas för att visa meddelande igen. eller Snurrar alla tasker STAT (STATUS) ev. kolla anropsstruktur STAT tasknr Kontrollera om stoppad och i vilket program och vilket steg Gå in i program SEE programn, steg anges steg ställer sig kursor på det steget direkt. Olika fel i program: * Undefined value * ta reda på vad variabeln heter, är den lokal eller global, var och hur definieras/sätts den, anteckna program stegnummer o vaiabelnamn och under vilka omständigheter felet uppkom, ta reda på vilket värde variabeln bör ha använd debugger (lokal variabel) eller monitor (global) för att sätta variabeln till rätt värde. Variabeln kan även sökas i program med <F7> (FIND) o <F8> (REPEAT) för att hitta var den definieras. Om arrayvaribel (t.ex. $db.var[i] kontrollera att pekare/index i hakar ([ ]) har rätt värde och definierad. Väntar på en variabel (WHILE, UNTIL, IF GOTO) program har ej stannat, använd debugger stega igenom program och ta reda på varför program ej går vidare, vilka villkor uppfylls ej vad heter variablerna i villkor vilket/vilka värden skall de ha kommer variabler från annan task varför har den ej satt variabel till rätt värde kanske felet ligger där. Skärmdump Vid fel som inte kan avhjälpas på ett enkelt sätt som kräver omstart eller liknande ta en "skärmdump" dvs. en bild av PC-skärmen med ev. larm eller statuslista. Se till att önskade delar av fönster syns på skärm! Visas något felmeddelande även i monitor se till att det syns vid dump. Tryck <Print Scrn> (Print Screen) starta Paint, klistra in och spara bild i lämplig katalog. Dessa bilder underlättar oftast för leverantör/programmerare att hitta och åtgärda orsak till felet. Skärmdumpar går bra att maila. <Alt+Print Scrn> sparar bara valt fönster. Se även systemeringsdokument, programhuvuden och ev. readme-dokument för mer information om applikationens variabler.

Adept V+ Servicemanual Sida 6/8 Översikt MC/MV: variabler program filer RAM stack RAM Z STACK Y CALL/EXECUTE AUTOvariabler Robotaxlar Vision X I/O LOCALvariabler Globala variabler D: (C: / A:) LOAD LISTR/S/L @program DIR LISTR/S/L STATUS STORE READ WRITE Filer: *.PG programs *.RV reals *-ST strings *.LC locations *.V2 program o variabler FDI Monitor

Adept V+ Servicemanual Sida 7/8 Översikt AWC: variabler program filer RAM stack RAM Z STACK Y CALL/EXECUTE AUTOvariabler Robotaxlar Vision X I/O LOCALvariabler Globala variabler D: LOAD Ethernet LISTR/S/L @program DIR LISTR/S/L STATUS FDI STORE READ WRITE Filer: *.PG programs *.RV reals *.ST strings *.LC locations *.V2 program o variabler PC C: Monitor

Adept V+ Servicemanual Sida 8/8 Ordlista array en lista med variabler som kan vara en, två eller tredimensionell skrivs; "variabelnamn[x]", "variabelnamn[x,y]" resp. "variabelnamn[x,y,z]", x/y/z är elementnummer i resp. dimension. ett område i en visionbild som ses som ett objekt. blob digitala I/O digitala in-/utgångar, signaler, används för kommunikation mellan system o styrning av ventiler (utgångar), kontroll av givare (ingångar) etc. directory motsvarande katalog, en undergrupp med filer, används för att strukturera filer på hårdisk o disketter. edge eng. kant, sida. location position, en lagrad punkt som roboten kan gå till eller använda i beräkningar av nya positioner. pendant programmeringslåda. pixel bildelement, de små ljuskänsliga halvledarelement som en visionkameras känselyta("chip") är uppbyggd av, dessa omvandlar ljuset till en elektrisk signal som kan behandlas av styrsystemet. Mått på objekt i visionbilden anges oftast i millimeter men ibland i pixel. Vid kamerakalibrering så räknas förhållandet mm/pixel fram för att systemet skall kunna presentera mått i mm. real realtid string task variabel realvariabel, siffervariabel, innehåller ett numeriskt värde - tal. att data visas i realtid betyder att aktuell data visas och uppdateras direkt när den ändras - direkt uppdatering och inte efter vissa perioder eller händelser. strängvariabel, textvariabel, innehåller text, variabelnamn skrivs med $-tecken först. eng. uppdrag, i Adept-systemet kan flera program löpa samtidigt/parallell sk. multitasking, de olika parallella processerna kallas för task(s). De numreras 0-27. ett register som kan ha ett valfritt namn och som kan anta olika värden eller innehålla text. ("komponenttyp ABC", "Kalle").