DotNetSiemensPLCToolBoxLibrary (LibNoDave) Zugriff auf Dual-Port RAM / FB15

Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,
ich bin neu hier und bei der Suche im Internet auf dieses Forum gestossen, und hoffe auf Hilfe.
kann mir jemand vielleicht helfen?
Mittlerweile habe ich eine Verbindung über einen PI S7 USB und PLCVcom bei einer 840D PL über X122 hinbekommen
und ich kann mit:

conn = new PLCConnection(config);

conn.Connect();

List<PLCTag> tags1 = new List<PLCTag>
{
new PLCTag("AB0"), // LED Signale zur MSST // hier die Variabeln eintragen für Zustandswerte
new PLCTag("AB1"), // LED Signale zur MSST // hier die Variabeln eintragen für Zustandswerte
new PLCTag("DB21.DBB4"), // VS Poti Bit 0-4
new PLCTag("DB34.DBB19"), // HS Poti Bit 0-4
new PLCTag("DB10.DBB56"), // Estop....
new PLCTag("DB21.DBB7")
};


conn.ReadValues(tags1);

int count = 0;

foreach (var plcTag in tags1)
{

SiemensMode(plcTag.Value != null ? Convert.ToString(Convert.ToInt32(plcTag.Value), 2).PadLeft(8, '0') : "", count);

count++;
}


Auch die PLC Statusvariabeln auslesen.

Aber wie schaffe ich es auf die NC zuzugreifen?
z.B. auf das Directory der NC Programme, Zyklen oder GUDs?
Evtl auch Parameter?
Wie kann ich diese runterladen und auch wieder hochladen?

Gibt es ein Beispiel?

Würde mich über eine Hilfe freuen.

Thomas
 
Ich hab keine PL. Die Erweiterung der Lib hab ich mit einer 840d SL gemacht. Diese hat Netzwerk Ports für die Kommunikation. Über den MPI hat es bei einem kleinen Test nicht funktioniert (nur zur PLC), wobei ich nicht weiß ob die Verbindung zur NC bei der SL überhaupt funktioniert.

Kannst du einen Screenshot der Hardware Konfiguration 840 d schicken?

Was übergibst du für config bei
'new PLCConnection(config)'
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Hans,
also ein Beispiel für die SL wäre auch gut.
Bald komme ich an eine SL ran zum testen.
Nur momentan habe ich keine SL.
HW Config schick ich mit,.


var config = new PLCConnectionConfiguration();

config.ConfigurationType = LibNodaveConnectionConfigurationType.ObjectSavedConfiguration;
config.ConnectionType = LibNodaveConnectionTypes.MPI_über_Serial_Adapter;
config.BusSpeed = LibNodaveConnectionBusSpeed.Speed_187k;
config.LokalMpi = 0;
config.ComPort = 8;
config.ComPortSpeed = "38400";
config.ComPortParity = LibNodaveConnectionBusParity.even;
config.CpuIP = "192.168.101.0" ;
config.CpuSlot = 2;
config.CpuMpi = 2;
config.EntryPoint = "S7ONLINE";


conn = new PLCConnection(config);;

Der Adapter ist ein S7 USB von PI und ist über USB verbunden.
Also über MPI sollte es doch auch funktionieren, oder?
Sinucom NC und die HMI SW geht ja auch über X122 ( MPI Adresse 3 ).

Thomas




Unbenannt.JPG
 
Zuletzt bearbeitet:
Ist das die Hardware Konfig mit der die PL funktioniert? Bei der SL taucht diese auch in der Hardware Konfig auf.

2020-11-25 09_38_04-Frage NCK Daten Lesen _ Schreiben (840dsl) · Issue #107 · dotnetprojects_Dot.png

Beispiel für ISO-Over-TCP/IP
using (var myConn = new DotNetSiemensPLCToolBoxLibrary.Communication.PLCConnection("test"))
{
myConn.Configuration.CpuIP = !string.IsNullOrEmpty(IPAddress) ? IPAddress : "192.168.214.1";
myConn.Configuration.CpuSlot = plcConnection ? 2 : 4;
myConn.Connect();
var r1 = myConn.ReadValue(new NC_Var(0x82, 0x41, 0x1, 0x1, 0x15, 0x1, 0xF, 0x8));
}
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Hans,
also das ist die PL die ist aber in keiner Maschine, sondern hängt an der Wand als Teststand.

Leider habe ich noch nie eine Aufzeichnung gemacht.
In deinem Beispiel steht eine IP adresse, die NCU hat aber kein Netzwerk also auch kein IP.

var r1 = conn.ReadValue(new NC_Var(0x82, 0x41, 0x1, 0x1, 0x15, 0x1, 0xF, 0x20));
was soll hier zurückgegeben werden? r1 bleibt NULL
MPI habe ich 2 und 3 probiert, der Wert bleibt auf NULL bei 2 und ist 20 bei 3.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Um auf eine NC-Variable zuzugreifen benötigst du die zugehörige Adresse. Diese bekommst du anhand des NC-VAR-SELECTOR (Siemens).

Hab ich hier im Verlauf schon alles geschrieben. Einfach mal die vorigen Seiten durchsuchen oder bei google eingeben.
 
Hab gerade nach einem PL Projekt geschaut.

CpuSlot ist hier wohl auch 2 für die PLC und 4 für die NC.
Außerdem wird für die NC auch eine eigene MPI-Adresse aufgeführt.

2020-11-25 16_55_56-192.168.214.212 - Remotedesktopverbindung.png2020-11-25 16_55_24-192.168.214.212 - Remotedesktopverbindung.png
 
Alles klar, vielen Dank.
Damit müsste ich erstmal klarkommen.

Nur dachte es gibt möglichkeiten wie bei FANUC Focas um auf alle NC Daten ( Programme, Directory... ) zuzugreifen,
das ist hier nicht möglich, oder?
Wie bei Fanuc z.B sowas: ret = Focas1.cnc_rdprogdir2 (FlibHndl,0,ref top, ref num, prg);
odersowas:
short ret = Focas1.cnc_upstart3(FlibHndl,0,sprg,eprg);
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Datei Up/Download, PI-Dienste, Variablen lesen/schreiben,...
Ist implementiert, jedoch anhand einer SL mit Ethernet Port.

In wieweit das auch für PL funktioniert weiß ich nicht. Ich hab auch keine PL zum Testen.
 
Danke Hans, sobald ich mein anderes Problem gelöst habe, werde ich dort weitermachen.

Jetzt habe ich aber ein anderes Problem:
Ich habe erfolgreich eine Verbindung mit einer PowerLine am X122
mit einem PI S7-USB und PLCVCOM
Jetzt möchte ich die S7 DLL verwenden, die ging früher mal.
Also mit Step7 tut diese Verbindung einwandfrei,
Mit dieser DLL kommt eine Fehlermeldung, Siehe Bild.

Was mache ich falsch? oder wer kann mir helfen?
Mit einer älteren Version von 2011 ging es noch
Siehe Bild.
Ich habe W10 64bit Version 20H2

S7DLL_NOK.JPGS7DLL_OK.JPGSeriellOK.JPGWPF_Von2011.JPG
 
Hallo,
also wenn ich das Beispiel WPFToolboxForPLCs in der Toolbox DotNetSiemensPLCToolBoxLibrary-master direkt starte, kommt dieser Fehler. Eine alte Version von 2011, die ich irgendwo im Netz gefunden habe, bei der funktioniert es. Direkt auf diesem Computer mit der gleichen Hardware...
 
Zuletzt bearbeitet:
Hallo,
also ich habe es geschafft, das die Toolbox mit der S7DLL kommuniziert.
Ich musste die Libary als 32 Bit compilieren.
Jetzt kommt aber ein Fehler mit einer IP Adresse, obwohl es in der Verbindung keine IP geben sollte.
hier ein Bild.
Mache ich etwas falsch?
Die alte Version tut aber.FehlerIP.PNG
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
vielleicht kann mich jemand unterstüzen,
hat es jemand schonmal mit der neuen Version von DotNetSiemensToolbox geschafft über die S7DLL an einer 840D PL online zu kommen,
wenn ja wie?
Bei mir kommt beim versuch eine Verbindung aufzubauen folgender Fehler:



VerbindungFehler.jpg

Verbindung über COM funktionieren.

Gibt es außerdem eine Möglichkeit ein NCK oder PLC archiv zu erstellen?
So ähnlich wie Sinucom?

Danke für die Unterstützung

Thomas
 
Hallo zusammen.....

Ich sehe das hier NC Spezialisten am arbeiten sind....
Frage von mir ....
Kann man ein Unterprogrammaufruf von der PLC starten lassen und wenn ja wo steht da was in der Doku...
 
Zurück
Oben