06.10.2010 20:27 | |
Beigetreten: 05.01.2007 Letzter Bes: 07.04.2023 Beiträge: 1690 Bewertung: (580)
|
Hallo, leider verstehe ich nicht genügend präzise, was du tatsächlich als Funktion der LOGO! benötigst, also welche Eingangssignale (oder ggf. in der Logo! bereitgestellte Signale) sollen wie (prinzipiell) als Ausgangssignale bereitgestellt werden? Welche Anforderungen bestehen an diese Ausgangssignale? a) In jedem Fall solltest du deinen Sender nur mittels LOGO!-Transistorausgängen ansteuern! b) Die meisten mir bekannten Sender überwachen periodisch die 8 Digitaleingänge selbstständig bezüglich Potential und ggf. Änderung (Flanken). Daraus wird dann ein serielles Datenpacket generiert und entweder periodisch ODER nur dann, wenn sich mindestens ein Signal geändert hat, gesendet. c) Oder hast du tatsächlich einen Sender, der nur auf die Eingangssignaländerungen reagiert und nur jeweils ein Datenpaket generiert und sendet, dass Adresse und Status eines Eingangsbits hat? ...Welchen Mindestabstand der Änderung eines Bits ist dann dabei erforderlich?... MfG
|
==> Meine TAG-Listen: "deut." |
|
06.10.2010 22:12 | |
Beigetreten: 05.01.2007 Letzter Bes: 07.04.2023 Beiträge: 1690 Bewertung: (580)
|
Hallo Andreas, fein, dass du so schnell reagiert hast. Soweit habe ich die Aufgabenstellung nun verstanden und muss erst nal darüber sinnen. a) Hilfreich wäre noch die Info, wie schnell bzw. wie häufig sich die Eingangssignale an der LOGO! ändern (können) und welche Dauer diese Signale haben (min/max. ON und OFF Zeiten)? b) Muss die Reihenfolge der detektierten Signalflangen der 8 Eingangssignale (ON oder OFF) bei der Ausgabe zwingend beachtet werden? c) Ist ggf. ein RESET bzw. Abgleich von LOGO! und Sender/Empfänger vorgesehen oder erforderlich, wenn ja, wie? EIN Modul mit 16 Digitalausgängen gibt es nicht, lediglich Module mit 4 bzw. 8 Digitalausgängen. Da max. 20 Ausgänge unterstützt werden, sind deine Hardwareanforderungen (16 Transistorausgänge) mittels Zusatzmodulen möglich! Siehe dir doch mal meine Lösung an unter LOGO Übung - variablen Wert 0 - 255 ins Schieberegister Je nach Änderungshäufigkeit und -geschwindigkeit der 8 LOGO!-Eingänge könnte der Schaltungsentwurf ggf. als Basis für eine Lösung deiner Aufgabenstellung dienen? Dort werden 8 Bit ggf. zyklisch detektiert und ins Schieberegister übertragen. Zwischen Übertragung und erneutem "Einlesen" der 8 Eingänge müsste man nun die Schieberegisterbits der Reihe nach "testen" und bei Änderung des Status/Potentials auf den zugeordneten Ausgang (abhängig von der Änderungsrichtung) einen Impuls ausgeben. Allerdings kann so (einfach) die Änderungsreihenfolge der 8 Eingangsdatenbits NICHT auf die Ausgangsdaten übertragen werden...?... MfG
|
Zuletzt bearbeitet von: Betel am: 06.10.2010 22:27Link und Lösungsansatz ergänzt.. ==> Meine TAG-Listen: "deut." |
|
16.10.2010 20:58 | |
Beigetreten: 05.01.2007 Letzter Bes: 07.04.2023 Beiträge: 1690 Bewertung: (580)
|
Hallo Anderas, wie bereits angedeutet, ist eine Lösung deiner Aufgabenstellung mit einer LOGO! nicht trivial. Grundsätzlich bestimmen die Bedingungen der seriellen Ausgangsdaten die maximal zulässige Anzahl der parallel eingehenden Ereignisse (hier Signalflanken). Eine (Zwischen-)Speicherung dieser Ereignisse kann eine gewisse Entlastung ergeben, arbeitet aber nur dann einwandfrei, wenn die Ereignishäufigkeit auch entsprechende Pausen einlegt, so dass die Speicher auch wieder abgearbeitet/geleert werden können. Ansonsten erfolgt auch bei Anwendung von Eingangsereignisspeichern irgendwann ein Überlauf und es gehen Informationen verloren...Hier hilft nur eine Analyse der Eingangssignalbedingungen... Ich habe nun versucht mit den Möglichkeiten der LOGO! Schaltungskonzepte zu erstellen, mit denen deine Aufgabenstellung angegangen werden kann. Dabei sind insbesondere zwei Konzepte realisiert, wobei du die Schaltungen sinngemäß auf alle 8 Eingangskanäle noch erweitern musst. Bezüglich der Zeitparameter der Ausgangssignale habe ich nicht die minimal Zulässigen angesetzt (200 ms Impuls- und 100 ms Pausendauer), weil dann ggf. diese nicht sicher vom externen Sender verarbeitet werden. Dabei habe ich insbesondere angenommen, dass du ggf. noch einen Pegelkonverter zwischen die 24 VDC-Transistorausgänge der LOGO! und deinen Sender zwischenschalten musst? In denSchaltungsversionen ..._V1 bis ..._V3 werden die Logik-Pegel der 8 Eingänge (in unterschiedlichen Varianten) periodisch abgefragt und gespeichert. Wenn diese sich zur vorhergehenden Abfrage geändert haben, dann wird ein entsprechender Ausgangsimpuls abgesetzt. In den Schaltungsversionen ..._V4 und ..._V5 werden ständig die 8 Eingänge auf Pegeländerungen (= Signalflanken) überwacht und diese Flanken als Ereignis abgespeichert. Jedem Ereignis (auch bei gleichzeitigem Eingang an mehreren Kanälen) wird eine "Wartenummer" zugeordnet/gespeichert. Dazu habe ich eine spezielle Zähleranordnung aufgebaut, die eine Zählung mit JEDEM LOGO!-Zyklus ermöglicht. Aus dem "Zählerstand" wird dann eine "Wartenummer" berechnet, mit der auch gewisse Anpassungen an die Signalbedingungen erfolgen kann. Mittels eines davon unabhängig arbeitenden Schaltungsteils werden dann die gespeicherten Ereignisse in der Reihenfolge der "Wartenummern" in Ausgangsimpulse "gewandelt". Weitere Infos kannst du den Schaltungen und der Textdatei im Dateianhang entnehmen. Ich hoffe dass du damit deine Aufgabenstellung lösen kannst und wäre für eine Rückmeldung und ggf. eine Veröffentlichung deiner letztendlich verwendeten Lösung hier dankbar. MfG
DateianhangDEMO_8-Bit_Input_für_externen_Sender.zip (321 Downloads) |
==> Meine TAG-Listen: "deut." |
|
Folgen Sie uns auf