Problem bei Logikentwicklung

SPS_Laie

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

brauche Hilfe bei meinem Problem...
...bei einer Aufgabe, die ich im Praktikum gestellt bekommen habe und nicht weiß, wie ich diese löse. Erst einmal soll ich ohne Rechner, also auf dem Blatt Papier, mir eine Logik (in FUP mit UND, ODER, usw.) überlegen.

Zur Aufgabe: Ich soll über einen Implus einen Timer (1h) starten lassen. In diesem Zeitraum soll ein Differenzierer (dx/dt) differenzieren und danach das Ergebnis mit einem Grenzwert vergleichen. Wenn das Ergebnis überm Grenzwert liegt, soll ein Motor A gestartet werden. Wenn der Motor A dann läuft, ist anderer Motor B noch auszuschalten. Wenn dann die Stunde vorüber ist, geht die ganze Sache von vorn los......

Ich weiß gerade nicht so richtig, wie ich dies realisieren soll. Wäre über Eure Hilfe sehr dankbar!

Grüße!
 
Logische Verknüpfungen in FUP ist ja ok aber die Rechenoperationen würd ich in AWL schreiben. Wie und ob man sowas in FUP realisieren kann weis ich selber nicht
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wir hatten ja schon kurz Kontakt per PN, als Diskussionsgrundlage stelle ich hier noch einmal einen kurzen Vorschlag rein.

Das Ganze für Step7.

Einen Impuls mit einer SA-Zeit kannst du z.Bsp. so programmieren:

erstes Netzwerk
Code:
UN    M      0.0 
L     S5T#1H 
SA    T      1 
NOP   0 
NOP   0 
NOP   0 
U     T      1      
=     M      0.0

Das ist in AWL einzufügen und kann in KOP/FUP umgeschaltet werden.

M0.0 ist eine Stunde lang True und dann genau einen Zyklus lang False. Nach diesem 1 Zyklus wird die SA-Zeit wieder gestartet und M0.0 ist wieder eine Stunde lang True.

Während der M0.0 True ist kannst du differenzieren. Wenn der M0.0 False ist kannst du deine Ergebnise auswerten und die Logik für die Motorumschaltung abarbeiten.

zweites Netzwerk in AWL:
Code:
U     M      0.0 
SPBN EDIF

//genau 1 Stunde lang wird dieses Netzwerk abgearbeitet
//hier kann der Differenzierer laufen

EDIF: NOP   0

drittes Netzwerk in AWL:
Code:
UN    M      0.0 
SPBN  NDIF

//genau 1 Zyklus wird dieses Netzwerk abgearbeitet, nachdem die eine Stunde abgelaufen ist
//hier kann bestimmt werden welcher Motor laufen soll
//hier können die Daten für den Differenzierer wieder auf Anfang gestellt werden

NDIF: NOP   0

Nur mal so aus der Schnelle und mit dem, was ich deinen Ausführungen entnehmen konnte.
Netzwerk 2 und 3 kann man auch so gestalten, dass das Ganze in KOP/FUP anzusehen ist, dann benötigt man aber mehr Netzwerke.
 
Zuletzt bearbeitet:
Was für ein Praktikum ist das denn?

Vielleicht ist es ja nicht so schwiergig wie es aussieht.

Differential ist ja die erste Ableitung, hier die Änderung X über den Zeitraum t.
mit t=1h benötigst du ja im Grunde nur DeltaX.
Daraus ergibt sich eine Logik die in FUP durchaus realisierbar ist:
-> X1 speichern
-> Timer starten
-> Timer abgelaufen
-> X2 speichern
-> X2-X1
-> mit Grenzwert vergleichen
-> Ausgänge Motoren entsprechend setzen/rücksetzen
-> X1=X2
-> wieder von vorn

MfG
 
das klingt gut...
könntest du das so grob mal aufbauen? Mir steht nämlich leider kein Softwareprogramm zur Verfügung, wo ich am Rechner die Logik entwicklen kann. Oder gibt es eine Demo oder Freeware-Version, wo ich mir den AWL-Code in FUP übersetzen kann.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
das klingt gut...
könntest du das so grob mal aufbauen?

Das wird hier eher keiner für dich machen, es ist dein Praktikum, nicht unseres.
Hilfestellungen bekommst du immer, aber du mußt schon mal selbst loslegen und hier ein wenig Code zeigen, wie du dir das vorstellen würdest.
Ist natürlich auf dem Papier ziemlich theoretisch, es wäre schöner, du könntest auch am Rechner ein wenig testen und dann konkretere Fragen stellen.
 
Zurück
Oben