ABB Roboterschulung von praxiserfahrenen Trainern
in unserem Schulungszentrum in Mainburg oder vor Ort bei Ihnen
Bediener und Expertenschulungen anfragen

Autor Thema:  Fehlermeldung für sps  (Gelesen 2310 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline roboprog

  • Forum Elite LV 3
  • *
  • Beiträge: 258
    • Krauss-Maffei Automation
  • Bewertet: 0
Fehlermeldung für sps
« am: 07. Februar 2007, 10:06:11 »
hallo gemeinde

ich versuche mich gerade darann an meiner sps fehlermeldungen zu generiren aber ich hab ein problem

beim kuka kann ich direkt die eingangsnummer abfragen und daraus eine 8bit fehlernummer machen aber beim abb hab ich nur den namen jetzt muß ich was machen das ich aus z.b. 100 eingängen am abb  auch 100 fehlermeldungen an meiner sps raus bekomme wenn diese nicht anstehen .
habe mir das so gedacht das ich 8bit an die sps gebe das sind 255 fehlernummern aber wie bekomme ich diese 8bit im abb zu stande
es ist schwer so ganz ohne eingangsnummer und den umstand das es bei mir eingang 1 gleich 5mal gibt halt von jedem busteilnehmer einen

für anregungen bin ich sehr dankbar da ich noch nicht so bewandert bin in dem thema abb

gruß Roboprog
  • finde ich gut    Danke, das hat mir geholfen    brauche Hilfe    da stimmt was nicht    Lesenswert
Die dümmsten Programmierer haben die dicksten Programme


ABB Robotertraining
günstig und verständlich mit Zertifikat
ABB Roboterschulung

Offline Sven Weyer

  • Global Moderator
  • Forum Legende LV 1
  • *
  • Beiträge: 1056
  • Bewertet: +17
Re: Fehlermeldung für sps
« am: 07. Februar 2007, 13:53:22 »
Hi,
versuch es mal mit Gruppenausgängen. Hier kannst Du Ausgänge zu einer Gruppe zusammenfassen.
Gib Deiner Gruppe einen Namen: z.B.: goError
Dann nur noch den Startpunkt Deiner Gruppe, soll heißen, da wo sich das erste Signal Deiner Gruppe befindet auf dem Bus.
Und anschlieend nur noch die Länge Deiner Gruppe.
z.B:
#
EIO_GROUP_PHS = EIO_SIGNAL:

      -Name "goError" -Type "GO" -Unit "PROBUSSLAVE" -Phsig 17 -Length 8


So wird es was. Gehst Du über 8 Bit muss die SPS die Funktion mit der Highword and Lowword vertauschen. Der Roboter macht das nicht. ABB zumindestens nicht.

robotic74
  • finde ich gut    Danke, das hat mir geholfen    brauche Hilfe    da stimmt was nicht    Lesenswert
Wer nichts macht macht keine Fehler!
Wer keine Fehler macht kann nichts daraus lernen!
Wer nichts lernen kann kann sich nicht weiterentwickeln!
Wer sich nicht entwickelt geht unter!

Offline roboprog

  • Forum Elite LV 3
  • *
  • Beiträge: 258
    • Krauss-Maffei Automation
  • Bewertet: 0
Re: Fehlermeldung für sps
« am: 13. Februar 2007, 16:00:05 »
hallo robotic74

danke für die infos

aber das ist nicht ganz das was ich suche da muß ich ja jedem eingang direkt einen ausgang zuweisen den ich dann zu einem gruppenausgang zusammenfassen muß

das was ich brauche ist eigentlich
bei nicht kommen oder kommen eines inis eine 8 bit fehlernummer .
irgendwie eine routiene namens waiting(in17,true,2.0)
warte auf eingang 17 auf true und wenn er nach 2sek nicht da ist soll fehlermeldung 17 an die sps weitergegeben werden über 8bit oder mehr !

so machen wir das beim kuka
aber beim abb da gibt es keine eingangsnummern hmmm
und nun

achso die routien soll natürlich allgemein gültig sein so das ich nur noch die eingangsnummen oder besser den eingangsnamen ändern muß und das ding geht ??

ich weis das das ganzschön viele wünsche auf einmal sind und das prog bestimmt nicht mit 3 zeilen erledigt ist aber
ich wäre trotzdem dankbar für jede weitere info die zur lösung beiträgt


gruß roboprog  :hilfe:
  • finde ich gut    Danke, das hat mir geholfen    brauche Hilfe    da stimmt was nicht    Lesenswert
Die dümmsten Programmierer haben die dicksten Programme

Offline Hermann

  • Forum Legende LV 2
  • *
  • Beiträge: 1309
  • Bewertet: +45
Re: Fehlermeldung für sps
« am: 13. Februar 2007, 20:33:45 »
Halloe,
eigentlich hast Du ja schon alles richtig erkannt:
Beim ABB gibt es keine feste Reihenfolge der Eingänge, wo soll da dann eine
automatisch generierte Eingangsnummer herkommen? So wie ich das sehe
geht das halt nicht.
Vorschlag zur Güte wäre noch ein zusätzlicher Parameter in Deiner Routine:

waiting(in17,17,true,2.0) mit der gewünschten Fehlernummer.
Ist zwar nicht besonders elegant aber dafür übersichtlich.

Gruss Hermann
  • finde ich gut    Danke, das hat mir geholfen    brauche Hilfe    da stimmt was nicht    Lesenswert

Offline heini0707

  • Forum Elite LV 6
  • *
  • Beiträge: 346
  • Bewertet: +1
Re: Fehlermeldung für sps
« am: 13. Februar 2007, 21:46:18 »
Hi,

du kannst das Programm ungefähr so aufbauen:

VAR num nZaeler:=0;          !Zeitzahler
VAR num nZeitschritt:=0.1;  !Zeitschritt für die Reaktion vom UP in sek
VAR num nZ_ueberlauf:=0; !Zeitüberlauf
!**********************************************************
!Routine zum warten auf Eingang
!**********************************************************
PROC WARTE_DI(PERS string stEingang_1, PERS bool bZustand, PERS num nWartezeit, PERS num nAlarm)

!stEingang_1       !Eingangsbezeichnung vom Hauptprogramm als PERS Stringvariable übergegeben, Wert z.B.: diZyl_oben
!bZustand           !Boolsche PERS Variable
!nWartezeit         !Wartezeit auf den Eingang vom Hauptprogramm übergeben
!nAlarm              !Alarm nummer an die SPS vom Hauptprogramm übergeben

nZaeler:=0;
nZeitschritt:=0.1;
nZ_ueberlauf:=nWartezeit/nZeitschritt; !Laut dem Beispiel mit 2sek Wartezeit, müssen 20 Abläufe sein

ANFANG:
IF stEingang_1=bZustand THEN
  !Eingang ist da, geh weiter;
  RETURN;
ELSE
  nZaeler:=nZaeler+1;
  IF nZaeler>=nZ_ueberlauf THEN
    SetGO goError, nAlarm; !GO natürlich definieren wie robotic74 gezeigt hat
    RETURN;
  ENDIF
ENDIF
WaitTime nZeitschritt;
GOTO ANFANG;
!Programmende
ENDPROC
!**********************************************************

Wegen Parameterübergabe müssen die Kollegen helfen, wess so aus dem Steeg nicht auswendig  :pfeif:

ich kann keine Garantie geben, hab schon lange mit den Schweden nichts zu tun gahabt  :supi: (ist auch gut so  :twisted:)

MfG heini
« Letzte Änderung: 13. Februar 2007, 23:02:46 von heini0707 »
  • finde ich gut    Danke, das hat mir geholfen    brauche Hilfe    da stimmt was nicht    Lesenswert

Offline heini0707

  • Forum Elite LV 6
  • *
  • Beiträge: 346
  • Bewertet: +1
Re: Fehlermeldung für sps
« am: 13. Februar 2007, 22:31:36 »
Hi,

noch was zu GO`s

mfG heini
  • finde ich gut    Danke, das hat mir geholfen    brauche Hilfe    da stimmt was nicht    Lesenswert

Offline Sven Weyer

  • Global Moderator
  • Forum Legende LV 1
  • *
  • Beiträge: 1056
  • Bewertet: +17
Re: Fehlermeldung für sps
« am: 14. Februar 2007, 07:45:03 »
Hi robprog,
also bei ABB geht das ganze nicht einfach s in einer Fehlermeldung.
Ist zwar auch einfach aber geht halt nicht in einer Zeile! :mrgreen:
Also ich mach das normalerweise foglendermaßen:

WHILE di17=low DO
    WaitUntil di17=high\MaxTime:=2\TimeFlag:=bSignalErr;
     IF bSignalErr rErrorMeldung 23\stErrorText:="di17 is missing!"\ErrorLampOn;
ENDWHILE

Okay nun folgendes:
1. bSignalErr ist eine boolsche Variable. Als VAR deklariert. Wird nur für setwas verwendet. muss nicht zurückgesetzt werden da dies automatisch bei jeder WaitUntil gemacht wird wo dieser   
Timeout hinterlegt wird.
2. rErrorMeldung ist eine Routine in der folgendes gemacht wird:

PROC rErrorMeldung(
    num nParamError
    \string stErrorText
    \switch RequestStart
    \switch ErrorLampOn)

    TEST nParamError
    CASE 0:
      Reset doErrorLamp;
    DEFAULT:
      SetGO goErrorNumber,nParamError;
      IF Present(stErrorText) THEN
        TPWrite " ";
        TPWrite " ";
        TPWrite " ---------------------------------------";
        TPWrite stErrorText;
        TPWrite " ---------------------------------------";
      ENDIF
      IF Present(RequestStart) THEN
        TPWrite " ";
        TPWrite " ";
        TPWrite "Start for validation!";
        WaitUntil diStart=1;
        Reset doError;
      ENDIF
      IF Present(ErrorLampOn) THEN
        Set doErrorLamp;
      ENDIF
    ENDTEST
    RETURN;
  ENDPROC

Somit ist Deine Fehlerbehandlung allgemeingültig!
Kannst Du überall einsetzen. Der weitere Vorteil liegt darin das Du in der Wihle-Schleife Abbruchbedingungen einbinden kannst wie Grundstellungsfahrt etc. Somit hast Du alle Möglichkeiten das Programm sauber zu programmieren.

Also ich hoffe es hat Dir geholfen!

robotic74
  • finde ich gut    Danke, das hat mir geholfen    brauche Hilfe    da stimmt was nicht    Lesenswert
Wer nichts macht macht keine Fehler!
Wer keine Fehler macht kann nichts daraus lernen!
Wer nichts lernen kann kann sich nicht weiterentwickeln!
Wer sich nicht entwickelt geht unter!


xx
Fehlermeldung

Begonnen von hoegi

0 Antworten
1267 Aufrufe
Letzter Beitrag 26. Februar 2013, 16:09:05
von hoegi
xx
Fehlermeldung 38600

Begonnen von MaikEllrich

5 Antworten
1620 Aufrufe
Letzter Beitrag 16. März 2009, 17:00:02
von Buschmann
xx
IRB 1400 - Fehlermeldung 39217

Begonnen von vasf_20

7 Antworten
1717 Aufrufe
Letzter Beitrag 29. Oktober 2010, 20:36:47
von vasf_20
xx
Fehlermeldung / Warnung erzeugen

Begonnen von MateoNK

4 Antworten
995 Aufrufe
Letzter Beitrag 03. April 2014, 18:56:44
von högi
xx
Fehlermeldung 71262, IRB 4400

Begonnen von jerom

6 Antworten
1860 Aufrufe
Letzter Beitrag 17. Mai 2010, 10:35:20
von jerom
 

über das Roboterforum

Nutzungsbedingungen Impressum
Sitemap