CPU 224XP + TD100C

Hightowerxxx

Level-1
Beiträge
71
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen!

Ich bräuchte dringend Hilfe bei der Erstellung eines Programms zur Kommunikation zwischen einer CPU 224XP und dem TD100C.
Ich habe mit Hilfe von Bedienungsanleitungen schon etliche Versuche gestartet, bin aber nie zu einem befriedigten Ergebnis gekommen!
Ich wollte mein Problem hier im Forum erst mal grob andeuten, um zu sehen, ob jemand bereit wäre mir zu helfen!
Falls sich jemand finden sollte, werde ich das Problem genauer erläutern!
Es ist wirklich dringend!!! :(

Vielen Dank im Voraus!!

Gruß
Sascha
 
Um die Sache zu vereinfachen..


Bei dem angehängten Programmentwurf möchte ich noch einige Sachen erweitern!


Code:
Netzwerk1

LD     SM0.0
MOVW   Spannung, VW24
*I     +10, VW24

Netzwerk2

LD     SM0.0
MOVW   VW24, VW14
/I     Stromwert, VW14


Problem ist, ich weiß nicht wie ich es als Programmentwurf umsetzen muß!

Kurze Erläuterung:
Im Hauptprogramm in NW1 bekomme ich Spannungswerte von einem Spannungsmesswandler (500V~/10V=) an IN1 geliefert! Diese Werte kommen vom Analogeingang meiner CPU224XP!
Im NW2 an IN2 bekomme ich meine Signale von einem Stromwandler (50A~/10V=) geliefert!
Beispiel:
U=100V~ >>> 2V= >>> an IN1 liegt der Wert 6400 >>> 6400 multipliziert mit 10 >>> Wert 64000 steht an VW24
I=3A~ >>> 0,6V= >>> an IN2 liegt der Wert 1920 >>> 64000 dividiert mit 1920
Usw., usw,...

Jetzt möchte ich diese Werte (im Beispiel 6400 & 1920!!!) jetzt über ein TD100C sozusagen „händisch“ an IN1 und IN2 eingeben und dabei zwischen drei Werten wählen können?
Bsp.: Wahl zwischen 2V (6400) und 3A (1920) oder 3V (9600) und 1A (640) oder 5V (16000) und 20A (12800)

Folgenden Tipp habe ich von einem Foren-Mitglied bekommen:

Im Keypad Designer sollte ich 6 Tasten mit der Funktion „Bit setzen“ versehen!

Taste1=2V ; Taste2=3V , Taste3=5V , Taste4=1A ; Taste5= 3A und Taste6=20A

Kein Problem!! Habe ich gemacht!!

Jetzt kommt die Sache, welche ich nicht ganz verstehe:


Wenn du jetzt dein S7-200 Programm erstellst und die Berechnung durchführst, dann verwende für die Werte 2V, 3V und 5V ein Wort im V-Speicher (Z.B. VW1000) und für 1A, 3A und 20A ein zweites Wort (z.B. VW2000) im V-Speicher.

Ablauf:
Drückst du die Taste für 2V, dann schreibe den Wert 6400 in VW1000 und "resete" die Bits für Tasten 3V und 5V.

Das gleiche machst du mit den Tasten für 3V, und 5V.

Drückst du die Taste 1A dann schreibe 640 in VW2000 und "resete" die Bits für Tasten 3A und 20A. Das gleiche machst du mit den Tasten für 3A und 20A.

Wenn du das so zusammenvernudelst verwende am einfachsten die Symbolik, denn jede Taste am TD erhält einen symbolischen Namen den du ganz einfach nutzen kannst.

:?: :?: :?:

Gruß
Sascha
 

Anhänge

  • fup_134.jpg
    fup_134.jpg
    64,2 KB · Aufrufe: 114
Zuviel Werbung?
-> Hier kostenlos registrieren
In der Symboltabelle (unter Assistent) findest du die Bits welche beim dürcken der Tasten aktiviert werden.

Nun musst du nnur noch die Konstante in die Variable IN1 oder I2 umkopieren. Das Netzwerk sollte in jedem Zyklus (Hauptprogramm) durchlaufen werden.
Anschliessend sollte das Bit der F-Taste noch rückgesetzt werden.

// Taste 1
LD F1
MOVW 6400, VW1000
R F1, 1 // F1 bei mir = V45.0

// Taste 2
LD F2
MOVW 9600, VW1000
R F2, 1 // F2 bei mir = V45.1
 
Das habe ich soweit verstanden!!
Taste1 ist dann bei mir V141.6 und Taste2 V141.7!

Aber wie ist das mit dem umkopieren von der Konstanten in Variable IN1 oder IN2 gemeint??
 
..so sieht das Ganze jetzt aus, aber irgendwo ist ja ein fehler vorhanden?!
Irgendwo müssen ja meine Variablen V141.6 und V141.7 auftauchen?!

Gruß
Sascha
 

Anhänge

  • stufen_widerstand_endentwurf.zip
    5,7 KB · Aufrufe: 11
Zuviel Werbung?
-> Hier kostenlos registrieren
In Netzwerk 3, 4...7 verletzt(überschreibst) du die Offsetvariable VW0 welches das TD200 als Zeiger auf deine Konfiguration nutzt (VB26).

Entweder du änderst deine Variablen (schlechter für dein Programm, besser für TD Anweder bei Ersatzteiltausch)
oder
du löscht VW0 im Programm und gibst den Offset im TD direkt an, dieser wird derzeit wohl auf 0 stehen (Parameter: Adr).
(Die zweite Lösung ist besser für dein Programm aber schlechter für TD Anweder bei Ersatzteiltausch da Offset erst (einmalig) angeben muss)
 
Irgendwie werde ich da nicht ganz schlau drauß!! :(
Ein Beispiel wäre nicht schlecht, oder die Erklärung anhand meines Programms!!! :oops:

Gruß
Sascha
 
Hallo!
Der Datenbaustein sieht bei mir folgendermaßen aus..


//----------------------------------------------------------------
//Diese Seite wurde vom Assistenten für das Text Display für die Konfiguration "TD 100C-Konfiguration 26" erzeugt.
//Sie enthält die TD-Konfiguration und alle Anwendermeldungen.
//----------------------------------------------------------------
VW0 26 //
VB26 'td' //
VB28 19 //
VB29 100 //
VB30 0 //
VB31 16#0F //
VB32 0 //
VB33 16#0F //
VB34 0 //
VB35 70 //
VB36 1 //
VB37 0 //
VB38 0 //
VB39 0 //
VB40 0 //
VW41 0 //
VB43 2#0 //
VB44 2#0 //
//----------------------------------------------------------------
//Felder der Tasten im Tastenfeld
//----------------------------------------------------------------
VB45 0, 1, 1, 0 //
VB49 0, 1, 1, 0 //
VB53 2, 2, 3, 3 //
VB57 2, 2, 3, 3 //
VB61 7, 7, 0, 0, 0, 0, 0, 4, 4, 0 //
VB71 7, 7, 0, 0, 0, 0, 0, 4, 4, 0 //
VB81 8, 8, 0, 0, 0, 0, 6, 6, 5, 5 //
VB91 8, 8, 0, 0, 0, 0, 6, 6, 5, 5 //
//----------------------------------------------------------------
//Funktionen der Schaltflächen im Tastenfeld
//----------------------------------------------------------------
VB101 44 //
VB102 46 //
VB103 47 //
VB104 45 //
VB105 41 //
VB106 42 //
VB107 7 //
VB108 8 //
VB109 0 //
VB110 0 //
VB111 0 //
VB112 0 //
VB113 0 //
VB114 0 //
VB115 'Deutsch $02$00$01' //
//----------------------------------------------------------------
//Alarmfreigabe-Baustein
//----------------------------------------------------------------
VB134 1 //Befehl TD rücksetzen
VB135 0 //Alarmfreigabebits
VB136 0 //Alarmfreigabebits
VB137 0 //Alarmfreigabebits
VB138 0 //Alarmfreigabebits
VB139 0 //Alarmfreigabebits
VB140 0 //
VB141 0 //
VB142 0 //
VB143 0 //
VB144 0 //
//----------------------------------------------------------------
//Anwendermeldungen
//----------------------------------------------------------------

Und jetzt???

MfG
Sascha
 
@ Gast

Das habe ich schon des Öfteren gemacht!!!
Das ist ja auch nicht das Problem!!

Warum zeigt mein TD100C immer die Fehlermeldung "Kein Parameterbaustein" an??

Gruß
Sascha
 
Du sieht in deiner ersten Zeile im Datenbaustein:
VW0 26
Das ist der Offset zu VB26.
Wenn im TD bei ParAdr=0 steht schaut er auf VW0.

Dein Programm aber überschreibt aber diesen.
 
Ich habe mal versucht, die Anweisungen auszuprobieren!

In Netzwerk 3, 4...7 verletzt(überschreibst) du die Offsetvariable VW0 welches das TD200 als Zeiger auf deine Konfiguration nutzt (VB26).

Entweder du änderst deine Variablen (schlechter für dein Programm, besser für TD Anweder bei Ersatzteiltausch)
oder
du löscht VW0 im Programm und gibst den Offset im TD direkt an, dieser wird derzeit wohl auf 0 stehen (Parameter: Adr).
(Die zweite Lösung ist besser für dein Programm aber schlechter für TD Anweder bei Ersatzteiltausch da Offset erst (einmalig) angeben muss)

Leider ohne Erfolg!
Ich hatte die erste Variante gewählt, und meine Variablen geändert!
Das Programm schaut jetzt folgendermaßen aus:
http://s39.yousendit.com/d.aspx?id=130XHYMLD6GXM3D08CCR9UQ018

Ich bin echt langsam am Verzweifeln!!
Hat noch jemand eine Idee?

Es ist wirklich dringend!! :(

MfG
Sascha
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo, an welcher Schnittstelle hängt das TD? Ich hatte mal ein ähnliches Prob. mit ner 215 2DP und nem td200 kann mich nur wage erinnern das da was mit der Schnittstelle war und deren nummer welche am td eingestellt war. Vielleicht morgen mehr wenn ich mein TD200 finde zum testen
Thomas
 
Hallo thomass5!

Mein TD hängt am Port 1 meiner 224XP!

Finde ich echt nett, daß du das testen möchtest!
Hoffentlich finden wir den Fehler bei mir! :?

MfG
Sascha
 
In der jetzigen Variante "Experiment" hast du die Variablen geändert, leider aber auch VW0 gelöscht.

Demnach müsstes du jetzt noch entweder im TD die Offsetadresse 26 einstellen oder den VW0=26 wieder einfügen.
 
Zurück
Oben