Kopplung CPU315-2PN/DP -->PC

PerfectWorld

Level-1
Beiträge
3
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Zusammen,
ich muss mit einer CPU 315-2PN/DP Daten zu einem PC schicken,
bzw. von einem PC Sollwerte werden Sollwerte auf die SPS übertragen.
Die Sollwerte werden vom PC als ASCII Code zur Verfügung gestellt.

Ich habe etwas in dieser Art noch nie realisiert und bin für Anregungen jeder Art dankbar.

Allen einen schönen Tag noch !

PW.
 
Hallo PW.
Ist auf der Steuerung die Verarbeitung des ASCII-Code schon Realisiert?
Ansonsten als TIP OPC-Server und ein Client der den ASCII-Code für die SPS entsprechend übersetzt.
MfG Fritze.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Da hab ich ein kleines Problem.
Der PC wird nicht von uns geliefert sondern von einem anderen Hersteller.
Meine Informationen sind nur, dass er den Sollwert als ASCII Code liefert, und dies
über Telnet , HyperTerminal oder ein ähnliches Programm auf die Schnittstelle schreibt / liest.

Allen eine schönen Tag noch

PW
 
Das sieht dann aber eher danach aus, das die Daten über eine serielle Schnittstelle kommen. Da brauchst dann eine entsprechende Baugruppe. Ich ging davon aus, das die Daten via Ethernet ausgetauscht werden sollen.
MfG Fritze.
 
Nein es soll Definitiv über Ethernet kommuniziert werden.
Mit HT kann man ja auch eine Ethernetverbindung aufgebaut werden.


Allen einen schönen Tag noch !

PW
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Da ich ja nicht glaube, das deine CPU mit eingebautem CP ein Telegramm mit ASCII-Code empfangen kann und dieses auch noch entsprechend ließt und verarbeitet, lasse ich mich gerne eines besseren belehren wenn du mir die entsprechende Stelle des Baugruppenhandbuches nennst oder etweiige andere Dokumente. Wenn du bei SIEMENS einaml entsprechende Suchworte eingiebst wirst du immer auf entsprechende Baugruppen zur Punkt-zu-Punkt-Kopplung verwiesen.
MfG Fritze.
 
Tool

Hallo PW,

Für den Aufbau einer Kommunikation mit einer PN-CPU, schau Dir folgenden Link an:
Beitrag ID: 25209116

mit dem Tool kannst Du die Verbindung zwischen CPU und PC herstellen.
Die vom PC empfangenen Daten können in einen DB geschrieben werden.
Die Umsetzung von ASCII in Real-Werte (Vermutung!) musst Du leider im SPS-Programm vornehmen.


Für gewöhnlich greift aber der PC auf einen DB auf der SPS zu. Vorher muss natürlich Struktur und DB-Nr. festgelegt werden.

Viel Erfolg,
maweri
 
Umwandlung String in Zahlenwert

Um die ASCII-Zeichen in nutzbare Zahlenwerte umzuwandeln gibt's in der Standard Library unter IEC Function Blocks die FCs 37, 38 und 39.
Vorher unbedingt die Hilfe dazu durchlesen, sonst kann's ein Durcheinander geben. (gerade bei Real!):rolleyes:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich denke der Beitrag mit der ID: 1955320 kommt dem Problem noch etwas näher aber wenn ich das Problem Richtig verstanden habe so sollen die Daten vom PC aus gesendet werden und somit muß ich das Prokollhändling vom PC aus gestalten und die CPU/CP immer Empfangsbereit halten.
Interessante Aufgabe. Ich würde aber wenn möglich den ASCII-Code von der CPU fernhalten und wenn möglich auf dem PC SPSfreundlich aufbereiten.
MfG Fritze.
 
@Fritze
ich vermute bei Deiner ID fehlt eine Ziffer. Jedenfalls kann ich unter S&S von S nix finden.


@PW
Ich würde aber wenn möglich den ASCII-Code von der CPU fernhalten und wenn möglich auf dem PC SPSfreundlich aufbereiten.
versuch auf jeden Fall mit dem PC-Programmierer Kontakt auf zu nehmen.
Bisher habe ich mich immer mit denen auf einen für beide Seiten günstigen Datenaustausch geeinigt.
Meistens wissen die vorher auch nicht, was der Kommunikationspartner kann und was nicht. Ich vermute, daß man deshalb den (vermeintlichen) sichersten Weg gewählt hat. Alle Zeichen einzeln, wie bei einer seriellen Übertragung.
 
Ich glaub das geht doch viel einfacher. Es spricht ja nichts dagegen, eine Verbindung im NetPro anzulegen.

Ich habe gerade eine Kamera in eine Anlage eingebaut, die per TCP/IP mit meiner Siemens-NET-SPS kommuniziert. Dazu habe ich in der Hardwarekonfig die CP343 eingefügt und dann in NetPro eine Verbindung eingefügt. Als Kommunikationspartner habe ich die IP-Adresse der Kamera eingegeben, außerdem noch die genutzten Portnummern. Man bekommt eine ID, welche man dann später im Step7-Programm benötigt.

In Step7 habe ich einen Sende- und einen Empfangsdatenbaustein angelegt. Genutzt werden die Bausteine AG_Send imd AG_RECV. Dort gibt man die ID, die physikalische Adresse der CP, und das Sende- bzw. Empfangsfach an, dazu noch einige Bits zur Steuerung der Kommunikation. Jetzt kann man ins Sendefach seine beliebigen Daten (auch ASCII) kopieren und mit einem bit den Sendevorgang starten. Die Daten werden dann von der Kamera auf dem angegebenen Port empfangen. Schickt die Kamera Daten, dann wird mit das vom AG_RECV-Baustein signalisiert, ich kann die Daten aus dem Empfangsfach entnehmen. Man muß allerdings angeben, wieviele Daten man erwartet (Länge), also ist es wichtig, daß die Kamera (bei dir der PC) immer genau die gleiche Menge an Daten verschickt, weil ansonsten das Datenempfangsfach wieder von vorn beginnend gefüllt wird, also Daten überschrieben werden. Außerdem werden die Daten beim nächsten Vorgang dort weiter eingeschrieben, wo der vorherige Vorgang zu Ende war, der Anfang der Daten würde also immer verschoben sein.

Das Einzige, was ich nicht genau weiß, da ich damit nichts zu tun hatte :)confused:), wie die Kamera (bei dir der PC) die Daten behandelt. Ich denke, du wirst ein Programm benötigen, daß einen TCP-Socket öffnet und dann auf dem festgelegten Port die Daten versendet, bzw. empfängt. Von alleine geht da sicherlich nichts, wie auch? Eigentlich sollte der Programmierer des PC die Daten auch per TCP verschicken können, statt sie in eine Ascii-Datei zu schreiben.

Eine zweite Möglichkeit wäre, eine Bibo wie Libnodave zu nutzen, um Daten in die SPS zu schreiben und von dort zu lesen. Aber auch hier, geht sicher nichts, ohne eingene PC-Programmierung.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Es spricht ja nichts dagegen, eine Verbindung im NetPro anzulegen.

Ich fürchte doch. Soweit ich weiß, kann ein die onboard-Schnittstelle der CPU nicht über NetPro konfigurieren. Deshalb auch mein Tip mit dem Open Communication Wizard.

Sollte ich da falsch liegen, würde ich gerne wissen, wie man das hinkriegt. Ist nämlich schon ein wenig umständlich mit dem:TOOL:.
 
Ich fürchte doch. Soweit ich weiß, kann ein die onboard-Schnittstelle der CPU nicht über NetPro konfigurieren. Deshalb auch mein Tip mit dem Open Communication Wizard.

Sollte ich da falsch liegen, würde ich gerne wissen, wie man das hinkriegt. Ist nämlich schon ein wenig umständlich mit dem:TOOL:.

Ich dachte, bei der PN würde ein "richtiger" Cp 343 dahinterstehen, wenn nicht, dann wird das natürlich nichts. Ich hatte eine VIPA-NET, da geht es tatsächlich auch nur mit der vollen NET-Schnittstelle, die integrierte "PG-Netschnittstelle" konnte das auch nicht.

Aber wenn es über Netpro nicht geht, meinst du , daß es dann mit dem Wizzard geht? Der macht ja im Prinzip das Selbe, allerdings ist es durch den DB variabler und muß nicht im Netpro vorkonfiguriert werden.

PS: Warum kann Siemens nicht einmal etwas wirklich richtig und gut machen :evil:
 
PS: Warum kann Siemens nicht einmal etwas wirklich richtig und gut machen :evil:
*ACK*


Ich habe erst lange versucht die Verbindung mit AG_SEND und AG_RCV aufzubauen. Bin aber immer daran gescheitert, das ich keine Verbindungs-Nummer hatte. NetPro gab die einfach nicht her, weil's damit halt nicht richtig funktioniert.:sb7:

In dem Wizard gibt man die an und er generiert (mit IP-Adresse usw.) einen UDT in dem dann alle Daten stehen. TCON greift dann auf den DB zu, der den UDT enthält und schwupps die Verbindung steht. Mittels T_SEND und T_RCV läuft's bei mir problemlos.:s1:

Schade ist halt, das man sich die Verbindungsdaten irgendwo in einen Kommantar schreiben sollte, weil sie halt nicht in NetPro
auftauchen. Wenn man dann auch noch mit Profibus arbeitet, hat man so zu sagen doppelte Buchführung.

Schätze mal das hier die HW-Entwicklung (CPU mit PN) schneller war als die SW-Entwicklung (NetPro).:sm13:

Aber was nicht is', kann ja noch werden.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@maweri

Du hast Recht, hab es gerade ausprobiert, die PN kann keine reine TCP-Verbindung sondern nur S7-Kommunikation. Mit einem CP, auch mit dem Lean, kann man es zumindest projektieren, ob es dann mit dem Lean geht, da darf man sich überraschen lassen.

Fazit, die PN taugt nicht so richtig, um mit einem PC zu kommunizieren, es sei denn, man nutzt Libnodave.
 
Solange man den PC die 'Drecksarbeit' machen lässt, geht's eigentlich.
Beim letzten Projekt habe ich in der SPS nur zwei DBs angelegt (1. SPS->PC, 2.PC->SPS). Darüber ging dann die gesamte Kommunikation. Keine Probleme.:p

Als die SPS dann aber aktiv werden musste (Ansteuerung Barcode-Drucker) wurde's kompliziert. Mit o.g. Methode lief's dann aber trotzdem.

Meine Kollegen sind gerade dabei eine Verbindung zwischen einer 315-2 DP/PN und einem ABB-Roboter aufzubauen. Dauert länger als erwartet.
 
Solange man den PC die 'Drecksarbeit' machen lässt, geht's eigentlich.
Beim letzten Projekt habe ich in der SPS nur zwei DBs angelegt (1. SPS->PC, 2.PC->SPS). Darüber ging dann die gesamte Kommunikation. Keine Probleme.:p

Als die SPS dann aber aktiv werden musste (Ansteuerung Barcode-Drucker) wurde's kompliziert. Mit o.g. Methode lief's dann aber trotzdem.

Meine Kollegen sind gerade dabei eine Verbindung zwischen einer 315-2 DP/PN und einem ABB-Roboter aufzubauen. Dauert länger als erwartet.

Die von dir gezeigte Methode werd ich demnächst mal testen, wär ja nicht übel.

Bei der VIPA konnte ich das sogar projektieren für den PG-Anschluß, aber es lief dann nicht, die Verbindung konnte nicht aufgebaut werden. Ich mußte den "NET-Anschluß" verwenden.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
SPS/PC Kommunikation

Hallo,

maweri schrieb:
Solange man den PC die 'Drecksarbeit' machen lässt, geht's eigentlich.
Beim letzten Projekt habe ich in der SPS nur zwei DBs angelegt (1. SPS->PC, 2.PC->SPS). Darüber ging dann die gesamte Kommunikation. Keine Probleme.

Und so ist es genau richtig. Die SPS ist doof, stellt die Daten bereit und signalisiert, wenn neue Daten vorhanden. Jegliche weitere Initiative übernimmt der PC b.z.w. die zu programmierende Applikation auf dem PC. Dann klappt es auch mit dem Datenaustausch ...
Egal ob LibNoDave, AGLink oder OPC-Server, so läuft die Kommunikation SPS <--> PC einfach rund und problemlos. :)

Gruß

Question_mark
 
Zurück
Oben