Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 10 von 10

Thema: Negative Integerwerte von der SPS (S7) zum ABB-Roboter übertragen

  1. #1
    Registriert seit
    21.05.2008
    Beiträge
    5
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich bin noch ein absoluter ABB Anfänger und befinde mich zur Zeit an meinem Techniker-Abschlussprojekt.
    Ich muss über eine bestehende Profibus-Verbindung negatve Integerwerte von der SPS (S7) zum Roboter übertragen. Auf der S7-Seite habe ich schon High- und Low-Byte getauscht. Jetzt funktioniert es, aber leider nur mit positiven Werten. Hat jemand dafür eine Erklärung?

    Gruß strango

    Ps.: Falls es an der Profibuskarte liegt, es ist eine DSQC 352. Sie hat 8 Word in & 8 Word out
    Zitieren Zitieren Negative Integerwerte von der SPS (S7) zum ABB-Roboter übertragen  

  2. #2
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    wenn du dir den Aufbau eines signed-Integer mal anschaust, wirst du feststellen, dass bei der S7 das HSB das Vorzeichen ist...

    high = -
    low = +

    also reicht es nicht nur das byte zu tauschen. du mußt noch das Vorzeichen maskieren und in deinem rotierten Word wieder an der richtigen Stelle einbringen.
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  3. #3
    Registriert seit
    02.04.2006
    Ort
    nähe Muc
    Beiträge
    2.787
    Danke
    115
    Erhielt 126 Danke für 107 Beiträge

    Standard

    Hallo,
    ich bin mir nicht sicher. Ist schon zu lange her; Aber vielleicht ist es hilfreich.

    Für die ABB Karte gibt es eine EOI Config Datei, darin stehen die Parameter.
    Dort kannst du das das ganze Verhalten deiner Karte programmieren.
    Im OS Handbuch steht glaub alles wie es parametriert wird udn was es so alles tolles gibt. Ohne Software und Handbuch kann ich spontan leider nicht mehr sagen wie man es invertiert.

    Hoffe ist dir hilfreich.

    Grüsse
    ___________________________________________





    Sende eine SMS mit dem Stichwort "Feuer" an die 112 und innerhalb von 10 Minuten steht ein roter Partybus mit derbem Sound vor deiner Tür.


    AGB: Wer Rechtschreibfehler findet darf diese behalten. Bitte meine in eile gefertigten, selten anfallenden Vertipsler zu entschuldigen.

  4. #4
    strango ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    21.05.2008
    Beiträge
    5
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Zitat Zitat von vierlagig Beitrag anzeigen
    wenn du dir den Aufbau eines signed-Integer mal anschaust, wirst du feststellen, dass bei der S7 das HSB das Vorzeichen ist...

    high = -
    low = +

    also reicht es nicht nur das byte zu tauschen. du mußt noch das Vorzeichen maskieren und in deinem rotierten Word wieder an der richtigen Stelle einbringen.
    Ok also würde mein Vorzeichen an der falschen Position stehen. Es gibt ja für Integerzahlen verschiedene Darstellungsarten:

    Betrags-Vorzeichendarstellung (Siemens)
    Einerkomplement,
    Zweierkomplement.

    Könnte es auch sein das ABB eine andere Darstellungsart benutzt als Siemens? Ich habe leider auch keine Doku diesbezüglich.

  5. #5
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    ein roboter ohne doku? ich muß weg ...

    ja, sicher ist es möglich, dass abb eine andere form benutzt, das mit dem vorzeichen war nur das erste, was mir durch den kopf geschossen ist...

    ...besorg dir ne doku!
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  6. #6
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.718
    Danke
    398
    Erhielt 2.400 Danke für 2.000 Beiträge

    Standard

    Hallo,
    es ist nicht unüblich, dass andere Steuerungen eine andere Byte-Ausrichtung verwenden als Siemens. Eigentlich hätte das Vertauschen des High- und Low-Bytes den Erfolg bringen müssen. Das wirft für mich die Frage auf, wie du das angestellt hast und wie du anschließend die Übertragung bewerkstelligt hast ...

    Gruß
    LL

  7. #7
    Registriert seit
    28.02.2008
    Beiträge
    19
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Hallo
    habe auch schon mal so was gemacht ist aber schon lange her kann am Mo in der Firma mal nachschauen. Die Doku von ABB ist halt auch nicht der Hit glaube ich noch zu wissen!

  8. #8
    strango ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    21.05.2008
    Beiträge
    5
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    @vierlagig
    Ich kann mir leider keine über dieses Thema besorgen. Und ja da haste recht ohne richtige Doku ist echt mist!!!

    @Larry Laffer
    Im Moment hab das Problem umgangen, in dem ich mich einfach nur auf den positiven Zahlenbereich beschränkt habe. Zunächst habe ich über ProTool den Zahlenbereich begrenzt (z.B.: -100 bis +100). Danach habe ich einen Offset von +100 draufgerechnet, so wird dann die -100 zur 0 und die +100 zur +200. Im Roboter hab ich dann die +100 wieder subtrahiert.
    Die Lösung kommt mir aber irgendwie etwas gepfuscht vor.

  9. #9
    strango ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    21.05.2008
    Beiträge
    5
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Zitat Zitat von Tom08 Beitrag anzeigen
    Hallo
    habe auch schon mal so was gemacht ist aber schon lange her kann am Mo in der Firma mal nachschauen. Die Doku von ABB ist halt auch nicht der Hit glaube ich noch zu wissen!
    Hi Tom,

    genau die Erfahrung hab ich auch gemacht!!!
    Man ließt und ließt findet einfach keine richtige Antwort!!

    Ps.: Ist wirklich ein super Forum hier!!!!!!!!!!!!!!!!!!!!!!!!!

  10. #10
    Registriert seit
    20.11.2004
    Ort
    Linz, OÖ
    Beiträge
    1.365
    Danke
    96
    Erhielt 177 Danke für 133 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Soweit mir bekannt ist, werden Group-IOs (als z.B. 16 Bit Zahlen) bei den ABB-Robotern generell als Unsigned-Integer behandelt. Um dennoch negative Werte übertragen zu können gibt es 2 Wege.

    1. Wertebereich auf SPS ins Positive verschieben, anschließend am Roboter (z.B. durch Umschaufeln in einem zyklischen Task) wieder zurückschieben

    2. zusätzlich zum Zahlenwert ein eigenes (selbstdefiniertes) Vorzeichenbit an den Roboter übergeben, dieses muss dann im Roboterprogramm mit Hilfe eines IF ausgewertet werden.

    Bei uns wird generell Lösung 2 eingesetzt.


    mfg Maxl
    Bin aufgrund §2 der "Rechte des Betreibers" der Forum-Regeln nicht mehr aktiv, da nicht nicht akzeptiere, dass Informationen und Erkenntnisse ohne Quellangabe weitergegeben werden sollen. Jedem steht frei, auf die gleichen Erkenntnisse durch Eigenversuche zu kommen, vor allem Buchautoren.

Ähnliche Themen

  1. Isel Roboter
    Von Blackforest im Forum Simatic
    Antworten: 0
    Letzter Beitrag: 12.04.2011, 13:55
  2. Sistema und Roboter
    Von E-Michl im Forum Maschinensicherheit - Normen und Richtlinien
    Antworten: 1
    Letzter Beitrag: 17.04.2010, 15:49
  3. Fischertechnik 3D Roboter
    Von hansaaa im Forum Simatic
    Antworten: 14
    Letzter Beitrag: 03.01.2009, 18:15
  4. ABB Roboter an einer S7-CPU 319
    Von Tobias2409 im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 23.05.2008, 16:40
  5. Roboter
    Von drfunfrock im Forum Stammtisch
    Antworten: 3
    Letzter Beitrag: 28.04.2005, 09:13

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •