Der fc ist genau gleich nur die fc Nummer ändert sich?
Das habe ich nicht geschrieben und das ist auch nicht so.
Wenn es zwei verschiedene FC sind, dann ist es nicht notwendig, daß die FCs zur Laufzeit ihre Nummer kennen oder ermitteln. Im FC1 programmierst Du fest die Adressierung der Variablen der Station 1 und im FC2 programmierst Du fest die Adressierung der Variablen der Station 2.
Wenn es doch der selbe FC für verschiedene Stationen ist, dann ist es nicht zweckmäßig, die eigene FC-Nummer zu ermitteln, weil es ja bei jedem Aufruf die selbe Nummer ergeben würde.
Dein Vorhaben ist so oder so ziemlich sinnfrei.
Und nun ganz eindeutig: Nein, bei S7-300 und S7-400 geht es nicht, daß ein FC die eigene Nummer erfragt. (bei S7-1200 und S7-1500 geht es sehr wahrscheinlich auch nicht)
(bei S7-400 und einigen S7-300 kann man theoretisch extra einen "Programmierfehler" einbauen, welcher einen Fehler-OB aufruft und den Fehler-OB auswerten oder im Diagnosepuffer nachschauen, wo der Fehler aufgetreten ist)
Genau für die mehrfach-Verwendbarkeit von Bausteinen wurde die Parametrierfähigkeit per Aufrufparameter erfunden. Es liegt am Programmierer, bei jedem Aufruf die richtigen Aktualoperanden anzugeben - dafür wird der SPS-Programmierer schließlich bezahlt und nicht für das gedankenlose Kopieren von Code und vergessen die notwendigen Anpassungen vorzunehmen.
Harald