# Profibusadressen



## Markus (8 September 2004)

hallo,

was hat es eigentlich mit der vergabe von dp-adressen auf sich?

wenn ich in einem projekt zwei sps und zwei mp370 habe, dann mache ich normalerweise sps_1 = 12; sps_2 =22; mp_1 = 11; mp_2 = 21

wäre doch sinngemäs, oder?

aber der simatic manager mault dann rum, WIESO?
bzw. gibt ne warnung aus das die adressen zu nahe bei einander liegen.

darf ich etwa nur jede zweite adresse benutzen?
dürfen physikalisch neben einenander liegende geräte nicht analog zur position adressiert werden?


ich habe jetz ein großes projekt mit 45dp-stationen (6x cpu, 6x mp, leserechen, et200 und sonstiges)

das projekt trennt sich in drei linien, mit je 15 teilnehmern.
aber durch alle linien hätte ich gernen einen durchgängigen bus (teleservice und die rennerei bei der ib)

also dachte ich das ich folgende adressen reservieren:

linie-1: 1-20
linie-2: 21-40
linie-3: 41-60

geht das?
was soll der schwachsinn mit den adressen die zu nahe bei einander liegen?
gibts da ne logische erklärung für, oder muss man das "schlecht gelaunte nuschel orakel" an der simatic hotline befragen? 


nur kurz:
ein master (315) kann max 32 slaves verwalten, richtig?
oder kann er mehr (wieviele) und es dürfen nur 32 im segment sein?
(wieso kann ich mehr projektieren?)


----------



## Balou (8 September 2004)

Nabend

man kann an eine Profibus CPU meines wissens nach die Adressen 0 bis 126 oder 128 dranhängen (bin nicht sicher) die Schnittstelle kann aber Leistungsmäsig nur 32 Teilnehmer treiben. Für die nächsten 32 Teilnehmer brauchst du dann einen Repeater welcher auch nur 32 Teilnehmer pro Segment Treiben kann. 
Wichtig auch wenn ein Repeater keine DP Adresse hat ist er doch als Teilnehmer des Segments zu rechnen.

Bei deinem Adress Problem weis ich auch net weiter würde mich aber sehr Intressieren.

Ich mache es immer so das CPU = 2, OP = 1, PG = 0 und die Slaves dann fei weg so wie es kommt.
Meist so das wenn die DP Adresse 4 ist auch das erste Byte 40 ist usw.

MfG Balou


----------



## smoe (8 September 2004)

In einem DP Netz können max 127 Teilnehmer adressiert werden. Nur max 32 dürfen in einem Segment sein. Eine 315 CPU kann IMHO 126 Slaves bearbeiten.

Eine etwas "überlegte" Adressvergabe mache ich auch immer. Wobei ich dann zb. bei 20 Teilnehmern schon mal bei Adresse 100 ankomme. Ich habe aber bis jetzt immer nur einen DP-Master pro Strang verwendet und habe diesen Master immer mit 2 adressiert. Slaves die zusammengehören sind dann aufsteigend adressiert (zb. Schrank x 30-35) Diese Fehlermeldung habe ich noch nie gesehn.

smoe


----------



## Markus (9 September 2004)

ok, die segmentgrenze von 32 hat also einen rein physikalischen hintergrund. die norm sagt halt das ein segment nur 32 teilnehmer treiben kann, aber teoretisch wären eventuell auch mehr möglich.
(eben je nach dem wie die teilnemer den pegel nach unten ziehen...)

gut, die repeater kommen so oder so rein (leitungslänge)

ok, das hat mir geholfen, aber die frage mit den adressen ist imer noch offen:


fakt ist, wenn ich im simatic-manager 2 cpu und 2 mp an das selbe dp-netz hänge adressen( 11 und 12 ; 21 und 22 ).

die anlagen laufen so alle problemlos, aber der simatic-manager gibt beim übersetzen der verbinungsdaten immer die meldung aus:



> Warnung: Die PROFIBUS-Adressen '11' und '12' der aktiven Teilnehmer (Master) im PROFIBUS-Subnetz 'PROFIBUS' sollen nicht unmittelbar aufeinander folgen.
> 
> Warnung: Die PROFIBUS-Adressen '21' und '22' der aktiven Teilnehmer (Master) im PROFIBUS-Subnetz 'PROFIBUS' sollen nicht unmittelbar aufeinander folgen.




WARUM NICHT?

soll ich zwischen zwei mastern (bzw. aktiven teilnemer) immer 10 adressen frei lassen? kann ich machen, aber wieso?

und wieso liegen die standart adressen 1 und 2 auch nebeneinander?


----------



## jogi (9 September 2004)

Hi Markus,

hier steht, wieso das so ist, aber nicht warum  :roll: 

http://www4.ad.siemens.de/-snm-0135...deID0=10805387&lang=de&siteid=cseus&aktprim=0

habs zwar ehrlich gesagt, nicht ganz verstanden, könnte aber noch ein Relikt aus längst vergangenen Zeiten sein (Step7 V2.0) :shock: 

und vielleicht aktuell gar nicht mehr von bedeutung ?!?

Gruß Jörg
[/url]


----------



## Zottel (9 September 2004)

Auf dem Profibus ist immer nur ein Master zur Zeit sendeberechtigt. Der fragt seine Slaves ab und reicht dan die Sendeberechtigung "token" an den Master mit der nächsthöheren Adresse weiter.
Ist diese Adresse größer als die eigene Adresse +1, so gibt es eine Lücke "gap" im Adressraum.
Der Master fragt in gewissen Abständen nach, ob neue Teilnehmer mit Adressen in diesem Lückenbereichaufgenommen wurden. Dazu versucht er probehalber, das Token an eine Adresse in der Lücke weiterzureichen. Bekommt er eine Quittung, so wird der neue Teilnehmer in den token ring aufgenommen.
Wenn Siemens, wie der Link vermuten läßt, damit vor einer bestimmten ASIC-Version Probleme hatte, so vermute ich, daß der Master nicht erkennt, daß es keine Lücke gibt und dann alle oder die folgenden Adressen bis zum nächsten bekannten Master abklappert und eventuell diesen doppelt in seine Teilnehmerliste aufnimmt.


----------



## Heinz (10 September 2004)

Hallo,
nur zur Wiederholung und zur Verständnis:
Du möchest die 6 CPU's mit allen Slaves über ein Bussystem verarbeiten.

Das heißt in Klartext Du hast 6 Master im Netz, die sich um den Zugriff auf die Slaves "prügeln".


----------



## Markus (10 September 2004)

ja, wobei nur 3 cpu auf slaves zugreifen.
immer zwei cpu bilden eine linie, die dann wieder eine mpi-kommunikation haben. weil master-master mit 300ern ja nicht geht...

siehst du da ein problem?


----------



## Heinz (10 September 2004)

Hallo Markus,
wie Du schon geschrieben hast. Multi Master is nicht. 

Daher würde ich folgenden Ansatz wählen:
Jeden EA Strang einer CPU zuordnen. Die Anzahl von max. 32 Teilnehmern ist richtig, jedoch sieht hier die Praxis etwas anders aus. Je nach Länge und Teilnehmer kann die Anzahl auch geringer sein. 

Da Du die 315 einsetzt wirst Du 2 Schnittstellen haben. Eine würd ich für die EA Ebene nehmen und die anderer zur Projektierung über MPI vernetzten. Im S7 Manager ein Multiprojekt mit Deinen 6 CPU anlegen.

Die OP würde ich auch an den MPI hängen.

Dann kannst Du (wie bei DP auch) über den MPI-Bus (Teleservice müßte gehen)  alle CPUs und die OP's von "einer" Stelle überwachen. Ich würde vor Ort an strategischen Stellen MPI Anschlüsse legen.


----------

