# Siemens S7-Projekt nach Allen Bradley konvertieren



## Joerg123 (4 Dezember 2007)

Hallo,

ich habe da ein kleines Problem.
Ich soll ein bestehendes Programm für eine Maschine von S7 nach Allen Bradley konvertieren. Die Maschine ist eine Serienmaschine und wurde bisher immer mit S7 verkauft. Nun möchte ein Kunde gerne eine Allen Bradley haben.

So ist der Aufbau der Siemens-Hardware:
CPU 314C-2DP
3x IndraDrive von Rexroth
2x Anlaog Out
44 Eingänge
40 Ausgänge
TP 170B mit 73 Bildern zur Einstellung der Anlage

Geplante Allen Bradley Steuerung:
Compact Logix L32E
PV Plus 600 Color.

Ich habe in Bezug auf Allen Bradley keine Vorerfahrung. Ist so etwas in einem Monat realisierbar?

Was benötige ich überhaupt für Software?


----------



## Oberchefe (4 Dezember 2007)

Ich weiß ja nicht genau was der Indra Drive macht, ist das ein normaler Fu oder ein Servo? Welche Schnittstelle hat er? Falls Servo: dann würde ich über einen 1768-L43 plus 1768-ENBT und 1768-M04SE nachdenken. Alle I/O's lokal verdrahtet? Als Software brauchst Du mindestens die Rslogix5000 und die RsView. 73 Seiten Visualisierung finde ich schon heftig für die paar I/Os? Allein schon deswegen würde ich mehr als 4 Wochen ansetzen, zumindest wenn Du's alleine programmieren mußt und noch nie was mit AB gemacht hast.


----------



## JesperMP (4 Dezember 2007)

Für die verbindung CompactLogix - Rexroth drive:
Hilscher hat Profibus DP Schnittstellenmodule für CompactLogix.


----------



## Joerg123 (5 Dezember 2007)

Hallo,
schon mal vielen Dank für eure Hilfe!

Der Indra Drive arbeitet als Servo und wird über Profibus angesteuert, dafür ist ein DPM-Modul bestellt. Die E/As sind lokal verdrahtet.

Die 73 Bilder kommen hauptsächlich durch viele Einstellwerte zusammen.
Da ich das fertige Projekt für S7 vorliegen habe müsste ich ja nur alle Bilder für Allen Bradley neu anlegen und passend neu verknüpfen. Wie gesagt, ich muss das Programm nicht neu schreiben sondern nür übersetzen.

Was mich noch interessieren würde:
Aus den Umstiegszeiten von S5 auf S7 kenne ich die Problematik die eine Übersetzung mit sich bringt. Copy and Paste reicht da nicht aus. Allerdings gab es damals von IBH softec eine so schöne Konvertierungssoftware, dass hat schon recht gut funktioniert. So was gibt es nicht zufällig für mein Problem?
Wenn ich mit Copy and Paste starte, wie viel vom Befehlscode wird denn die Allen Bradley ohne Probleme annehmen?


----------



## o.s.t. (5 Dezember 2007)

Copy and Paste:

was willste denn Copy-ren und Paste-n ? Du kannst nicht im Siemens KOP einen Bereich kopieren und im RSLogix KOP einfügen, das geht nicht.
Aber beinahe alles was in Siemens KOP ist, kannste in RSLogix KOP nachmalen. Dort gibt es ja eh nichts anderes.

und Konvertiertools von S7 nach AB/CLX gibt es meines Wissens nicht

gruss, o.s.t.


----------



## Oberchefe (5 Dezember 2007)

Gateway zwischen Ethernet/IPund Profibus:
http://www.anybus.de/products/anybusx/AnyBus-X_Profibus-M_EthernetIP-S.shtml

Ich würde aber trotzdem die Motion mit der CompactLogix mitmachen, alles in einer Software, keine Kommunikation dazwischen nötig, den Indradrive gibt's doch auch mit Sercos.


----------



## Joerg123 (6 Dezember 2007)

o.s.t. schrieb:


> Copy and Paste:
> 
> was willste denn Copy-ren und Paste-n ? Du kannst nicht im Siemens KOP einen Bereich kopieren und im RSLogix KOP einfügen, das geht nicht.
> Aber beinahe alles was in Siemens KOP ist, kannste in RSLogix KOP nachmalen. Dort gibt es ja eh nichts anderes.
> ...



Unterstützt RSLogix kein AWL??


----------



## MSB (6 Dezember 2007)

Du vergleichst hier 2 völlig unterschiedliche Systeme / Hersteller,
mal von Ähnlichkeiten abgesehen, die sich bei SPSen fast zwangsweise ergeben.

Rockwell hat definitiv kein AWL oder etwas vergleichbares.
Was es für RSLogix5000 gibt sind z.B. die Programmiersprachen ST(SCL) und SFC(Graph7),
mit Ausnahme von ST ist aber auch hier ein kopieren jedweder Art unmöglich.
Auch gibt es bei RSLogix5000 keine mittelbar mit Siemens vergleichbaren FC's  oder FB's.

Da du offensichtlich wenig bis gar nichts von SPS-Herstellern außerhalb der Siemens-Welt weißt,
kannst du das mit den 4 Wochen von vorneherein vergessen.

Übersetzen heißt in deinem Zusammenhang:
Die Funktion auf der S7 Analysieren, und schauen wie sich das ganze bei AB lösen lässt.

Mfg
Manuel


----------



## marlob (6 Dezember 2007)

MSB schrieb:


> Rockwell hat definitiv kein AWL oder etwas vergleichbares.
> Was es für RSLogix5000 gibt sind z.B. die Programmiersprachen ST(SCL) und SFC(Graph7),


AB hat auch noch KOP, wo man alles drin programmieren kann. Nicht zu vergleichen mit S7-KOP. In AB kannst du mit KOP wirklich alles machen!
@Joerg123
Also wenn du dein S7 Programm in KOP umschalten kannst, dann kannst du es relativ einfach zur AB übernehmen


----------



## MSB (6 Dezember 2007)

marlob schrieb:


> AB hat auch noch KOP, wo man alles drin programmieren kann. Nicht zu vergleichen mit S7-KOP. In AB kannst du mit KOP wirklich alles machen!
> @Joerg123
> Also wenn du dein S7 Programm in KOP umschalten kannst, dann kannst du es relativ einfach zur AB übernehmen



KOP habe ich nicht gesondert erwähnt, da dieses bei AB ja Standart ist,
hingegen sind der ST/SFC-Editor nur in der Professional-Version von RSLogix5000 dabei,
und ansonsten (ähnlich wie bei Siemens) kostenpflichtig.

Mfg
Manuel


----------



## marlob (6 Dezember 2007)

MSB schrieb:


> KOP habe ich nicht gesondert erwähnt, da dieses bei AB ja Standart ist


Ich habe es nur deshalb noch einmal gesondert erwähnt, weil das meiner Meinung nach die beste Möglichkeit ist, ein Programm von S7 nach AB zu übersetzen.
@Joerg123
Hier gibt es einen 
<Werbung>KOP-Konverter</Werbung>, falls du ein Programm in AWL hast und du es erst nach KOP wandeln willst.


----------



## Oberchefe (6 Dezember 2007)

> Auch gibt es bei RSLogix5000 keine mittelbar mit Siemens vergleichbaren FC's oder FB's.


 
Seit der  Version 16 gibt es AddOnInstructions (AOI), die sind vergleichbar. Ansonsten kann man sowas auch mit einem JSR und entsprechenden Input/Return Parametern erschlagen.


----------



## Joerg123 (6 Dezember 2007)

Hallo,

erstmal nochmal vielen Dank für eure Hilfe! :???:

@MSB:
Da ich auf der AB-Hompeage ein Pic von der Software mit KOP-Symbolen gesehen habe bin ich eben davon ausgegangen dass die Soft auch AWL unterstüzt.

Ich gehe jetzt folgendermassen vor:
Nä. Woche schaue ich mir mit einem Kollegen die Software mal genau an, da ich ja bis jetzt noch nicht damit gearbeitet habe. Danach kann ich entscheiden ob ich das Projekt annehme, wenn ja habe ich bis Anfang/Mitte Februar Zeit die Machine zum laufen zu bekommen.

Gruß Jörg


----------



## Joerg123 (16 Januar 2008)

*kleine Problemchen*

Hallo,

habe mich dazu überreden lassen das o.g. Projekt anzutreten (Ist ja nie schlecht wenn man seinen Horizont erweitert).
Jedenfalls komme ich nach ca. 1 Woche schon sehr gut mit der Allen Bradley Software zu recht.
Aber ein paar kleine Probleme habe ich doch und hoffe ihr könnt mir dabei helfen:

1.) Factory Talk View Studio:
Ich möchte einen Wert in einem "Numeric Input Enable"-Feld skalieren. Im Detail geht es um eine Zeit. Der Wert 1 ist standartmäßig 1ms. Ich möchte aber diverse Timer zu 1s skalieren. Sprich wenn ich am Display die Zahl 1 eingebe muss diese als 1000 an die Steuerung übergeben werden damit der Timer 1s lang läuft. Also die Frage: Wie skaliere ich Werte?

2.) Factory Talk View Studio:
Es geht um die Benutzerverwaltung. Ich habe Buttons für Login, Logout, Change Password. Funktioniert alles prima, ich kann mich ausloggen, einloggen, aber: Wie sperre ich Bildwechsel-Buttons oder Eingabefelder wenn ich nicht eingeloggt bin??

3.) RS Logix 5000:
Kann ich irgendwo einen Taktmerker herholen ohne dass ich mir den mit Zeiten selber basteln muss? Wird benötigt für blinkende Störlampe.

4.) RS Logix 5000:
An der Anlage sind zwei Rexroth IndraDrive, angeschlossen über Profibus, nicht über Ethernet, dafür hat die Konstruktion bei uns ein Hilscher 1769DPM (Profibus Master) dazu gekauft. Kommunikation klapt wunderbar, allerdings kommen die DINT-Variablen verdreht in der Steuerung an. Hab mal eine kleine Routine gebastelt in der ich den high- und low-Bereich der Variable tausche, dann kommen Wege und Geschwindigkeiten korrekt rüber aber irgendwie gefällt mir die Lösung nicht. Frage: Kann man das Variablen-Format bei Rexroth ODER bei RSLogix einfach umstellen? Dann könnte ich mir eine komplette Routine sparen.

Schon mal vielen Dank!! Es wäre klasse wenn ich mit eurer Hilfe wenigstens eins oder zwei der Probleme lösen könnte.

Gruß Jörg


----------



## Joerg123 (17 Januar 2008)

Hallo,

Problem 4 habe ich gerade selber besser gelöst.
Es gibt da eine Funktion SWAPB, damit kann man die Reihenfolge der Bytes einer Variable ändern.

Bleiben noch Problem 1, 2 und 3.

Gruß Jörg


----------



## Joerg123 (18 Januar 2008)

Hallo,

Problem 3 habe ich über 2 Timer gelöst (Ton, Tof).

Bleiben noch Problem 1 & 2.


----------



## Joerg123 (18 Januar 2008)

Falls es noch jemanden interessiert:
Punkt 2 habe ich nun auch gelöst. :-D

Bleibt nur noch das Problem mit dem skalieren von Werten:
Falls es sich nicht am Display skalieren lässt: Gibt es wenigstens die Möglichkeit am Timer-Format etwas umzustellen?
Ich könnte zwar den Umweg über eine Variable nehmen und dann in der Steuerung mit einem festen Wert verrechnen (1000), ist aber m.M. nach kein schöner Weg.

Also: Weiß noch jemand rat??

Gruß Jörg


----------



## Oberchefe (18 Januar 2008)

Also bei der Variable solltest Du eigentlich eine Formel eingeben können, also Benutzereingabe mal 1000. Für den angezeigtenen Wert dann umgekehrt: Variablenwert geteilt durch 1000. Die einzige Schwäche die dann RsView noch hat: die Eingabegrenzen werden unformatiert angezeigt.


----------



## Joerg123 (19 Januar 2008)

Hmmm,

genau das habe ich eigentlich schon probiert, aber die Software meldet mir entweder Syntaxfehler oder zeigt mir am Display gar nichts an.
Wie muss denn die Befehlszeile unter dem Punkt Label aussehen?

Gruß Jörg


----------



## Oberchefe (20 Januar 2008)

hier ein funktionierendes Beispiel (Numeric Input) mit Skalierung Faktor 10:


----------



## Joerg123 (20 Januar 2008)

Aha, ich habe anscheinend ein falsches Feld benutzt (Numeric Input Enable), da gibt es bei den Connections kein Indicator Feld. Die Anzeige eines Wertes wird dort glaub ich unter dem Reiter 'Label' gemacht und dort kamen beim Verrechnen der Variablen immer Fehler.
Werde dass also morgen mit dem Numeric Input Cursor Point ausprobieren.

Danke!


----------

