Crashkurs IP / AMS Net ID (TwinCAT 3)

Jörn

Level-1
Beiträge
58
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin,

ich hab bisher wenig mit der Hardwarekonfiguration zu tun gehabt und bräuchte mal einen kleinen Crashkurs in Sachen IP und AMS Net ID. :|

Daß die IP 192.168.x.x zum privaten Netzwerk gehört ist mir - inzwischen - klar. Kann/darf man einen IPC auch mit DHCP konfigurieren, bzw. kann man einen Teil des IPC auch als DHCP konfigurieren?

Habe ich das richtig verstanden, daß die AMS Net ID die IP des IPC ist und die beiden zusätzlichen Oktette die ganzen Teilnehmer innerhalb des Netzwerks adressieren?! Wie kann/darf/muss ich die AMS Net ID wählen? Bin ich da frei oder soll/muss ich in einem bestimmten Adressbereich bleiben?

Über irgendeine Doku, die das ganze Thema beleuchtet, wäre ich auch nicht böse. ;)

Vielen Dank schonmal. :)

Gruß
Jörn
 
Die AMS Net ID dient zur Kommunikation via ADS. Sie hat nichts mit der IP des Gerätes zu tun, sollte bei Controllern aber der IP entsprechen um die Geräte besser identifizieren zu können.
Zwecks Beschreibung schau mal hier im Infosys nach.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Die AMS Net ID dient zur Kommunikation via ADS. Sie hat nichts mit der IP des Gerätes zu tun, sollte bei Controllern aber der IP entsprechen um die Geräte besser identifizieren zu können.

Stimme dir grundsätzlich zu: AMS Net ID ist komplett unabhängig von der IP Adresse.
Aber nicht bei "sollte der IP entsprechen". In aktuellen Systemen entspricht sie eher der MAC (den letzten 4 Bytes), damit über Grenzen des Netzwerken hinweg (z.B. ADS over MQTT) immernoch eine eineindeutige AMS Net ID vergeben und verwendet wird.
 
Stimme dir grundsätzlich zu: AMS Net ID ist komplett unabhängig von der IP Adresse.
Aber nicht bei "sollte der IP entsprechen". In aktuellen Systemen entspricht sie eher der MAC (den letzten 4 Bytes), damit über Grenzen des Netzwerken hinweg (z.B. ADS over MQTT) immernoch eine eineindeutige AMS Net ID vergeben und verwendet wird.
Das ist eine Frage des Standpunktes, der verwendeten Topologie und weiteren Faktoren. Bei den Anlagen die ich betreut habe erfolgte die Kommunikation meist nicht über Netzwerkgrenzen und da war die Verwendung der IP als Teil der AMS Net ID am praktischten.
 
Also ist die IP die Adresse der Geräte im klassischen TCP/IP-Netzwerk und die AMS eine "interne" Adresse für die Kommunikation von/für Beckhoff-Geräten?!

Ich bin auch gerade über das Routing gestolpert. Leider ist die Doku bei Beckhoff da nicht sehr ausführlich. Was ist Aktuelle, Statische, Projekt Routing und NetId-Management?
Bei den Routes sehe ich die AMS des Gerätes, den Typ der Kommunikation und die zugehörige Adresse (z.B. eine IP bei Kommunikation via TCP/IP)?
Was sind denn die Projekt Routes? Dazu gibt es leider keine Beschreibung. Ist es richtig, daß ich bei Projekt Routes die unter NetId konfigurierten Geräte sehe? Aber nur die, die in der E/A nicht deaktiviert sind?
Im NetId-Management sehe ich die NetIds der verschiedenen Geräte? Die muss ich dort auch konfigurieren, oder?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wir haben etliche Anlagen hier in einem großen Netzwerk > 6000 IP-Clients und hatten das Problem, dass durch wechselnde IPs, bei neu hinzugekommenen Anlagen die AMS-Net-ID doppelt vergeben wurde. Das führt dazu, dass diese nicht mehr erreichbar waren. Das Problem war, dass beim Installieren des Twincat Pakets die AMS-Net-ID aus der aktuell eingestellten/vergebenen IP-Adresse erstellt wird. Nachher aber nur mehr die letzten zwei Bytes verwendet werden (für die ADS-Kommunikation). Das was vorne dran steht ist eigentlich egal da das Routing (der ADS Pakete) über TCP/IP funktioniert.

Routing geht bei ADS schon, nur halt keine Broadcast Suche (wenn ich die Frage oben richtig verstanden hab), man muss nur, wenn man eine PLC in einem anderen Netz sucht über die IP-Adresse suchen, Broadcast geht nur im selben Netz.

Wir haben dann als Lösung die AMS-Net-ID selbst vergeben mit einer IP-Adresse vorne dran, die sicher nirgends bei uns im Netz aufscheint und das ganze in einer Liste vermerkt. Das Ändern der AMS-Net-ID geht leider nur, wenn das TcSysUi Tool mit Admin-Rechten ausgeführt wird, ansonsten ist diese Maske zum Verstellen der AMS-Net-ID grau hinterlegt.

Das ganze hier nur so als Info, vielleicht hilfts ja wem mal.
Sg
M.
 
Dann versuche ich mal etwas Ordnung in Eure Aussagen zu bringen die alle nicht falsch sind aber doch meiner Ansicht nach einen etwas punktuellen Ansatz haben.
Vorweg: Bezeichnung der generischen AmsNet-Adresse ist im Folgenden: <a.b.c.d.x.y.>

#1: Die AmsNet-ID ist 6-stellig und von der Theorie beliebig. Allerdings sollte man dringend darauf achten dass das Gerät für die letzten beiden Stellen die ".1.1" trägt. Man kann sozusagen sagen das die <a.b.c.d.1.1>-Adresse die "Geräte-Adresse ist. Im Umkehrschluss sind somit die ersten 4-Stellen zu eineindeutigen Identifikation des Gerätes.
#2: Die 4 ersten Stellen müssen im Netzwerk eineindeutig sein. Viele Leute verwalten eh schon IP-Adressen pro Gerät und nutzen eben diese auch für die AmsNet ID.
#3: Die Default-Ams-Net Adresse nach der Installation von TwinCAT ist bei CX-Geräten von der Mac-Adresse abgeleitet. Bei BigWin-Geräten wird sie von der IP-Adresse des ersten Netzwerkadapters.
#4: Die letzten beiden Adressen der AmsNetID sind dann die Adresse eines Adapters bzw. Devices auf dem Gerät... Sozusagen die Postadresse (Hausnummer/Straße) in der Stadt (die ersten 4 Adressen).
#5: Man kann in den Entwicklungsumgebungen eine Option "Relative NetID" angeben (bei den Routing Einstellungen). Das bedeutet dass im Gerät selber mit der AmsNET-ID 0.0.0.0.x.y. operiert wird bzw. operiert werden kann. In Bezug auf meine Analogie aus Punkt #4. Man reduziert die Default-Welt auf die "Stadt".
#6: Der große Vorteil der relativen NetID meiner Meinung nach ist dass wenn man HW einfügt/scannt sie per Default (ohne die gesetzt Option) die AmsNetID vom gerade aktuellen Zielsystem (also a.b.c.d) abgeleitet wird und dann noch einer generierten x.y. Wenn man eine Maschine auf mehreren Targets entwickelt bzw. dort die HW hinzufügt hat man somit möglichwerweise verschiedene Werte in a.b.c.d. obwohl sie alle lokal auf dem Gerät sind. Und ab- und an geht das dann in die Hose.
Ach ja: Wenn man die Option nachträglich setzt werden die AmsNetIDs nur zu relativen ADressen wenn <a.b.c.d> mit der TargetAdresse übereinstimmen. Diese muss man also gegebenenfalls explizit vorher umsetzen.
#7: Wenn ein ADS-Befehl eine AmsNETID hat die im lokalen System nicht vorhanden ist wird der Router diese dann nach extern (also auf das Netzwerk=hinterlegte IP-Adresse) leiten wenn dieser auf einen entsprechenden eintrag für a.b.c.d hat.
#8 Die AmsNet-Adressse ist prinzipiell irgendwo in der Registry abgelegt. Änderungen brauchen also entsprechende Zugriffsrechte.
Seit einiger Zeit kann man diese aber nicht mehr direkt ändern wenn der TwinCAT Service läuft. Dies wurde wohl verriegelt da es sonst die Inkonsistenz in der Registry und der geladenen AmsNetID zu Effekten geführt hat. Man muss wenn man dies per Script ändern will deshalb zumindest in TC3 etwas anders vorgehen als vor ca 2-3 Jahren.

Guga
 
Zurück
Oben