# Analogen Wert mit einem liniaren Wert verbinden.



## IGORus (30 Oktober 2014)

Hallo, 

Ich bin ein super Neuling in SPS aber muss gleich mittendrin anfangen. 

Ich versuche gerade eine Steuerung in FUP zu erstellen. Ich hab zwar ein Buch über SPS für Siemens Logo bekommen. In dem Buch konnte ich aber von mir benötigten Schritte nicht finden. Ich habe viele Schwierigkeiten aber ich gehe mal eins nach dem anderen ab.

Mein grösster Problem im Moment ist einen analogen Drehschalter mit einem Taster über ein UND-Befehl oder auch irgentwie anderes zu verbinden so, dass am Ausgang ein umgerechnete Wert in mA rausgeht.

Ich muss einen Taster betätigen und je nach dem welche Position der Drehschalter (von 1 bis 10 hat) soll dem entsprechend ein Wert in mA rauskommen.
z.b. Wert 1 entspricht 2mA und Wert 2 entspricht 5mA. Es soll aber nur ein Sygnal rauskommen wenn der Taster betätigt wurde.

Ich hoffe ich konnte das einige Massen verständlich erklären. 
Also entstehen daraus zwei Fragen:
Wie verbinde ich einen analogen Wert mit einem liniaren Wert?
Wie kann ich einem Eingangswert einen Ausgangswert in mA zuweisen?

Ich ebtschuldige mich, dass meine Fragen villeicht dumm klingen aber ohne eure Hilfe werde ich die erste Schritte nie Schaffen.
ICh bedanke mich schon mal für die Antworten.


----------



## SoftMachine (30 Oktober 2014)

.
Wenn dein Logo!-Buch nichts hergibt, dann schau mal HIER.
Vielleicht kannst du dort was entsprechendes finden.


----------



## PN/DP (30 Oktober 2014)

IGORus schrieb:


> Es soll aber nur ein Sygnal rauskommen wenn der Taster betätigt wurde.


Wie lange soll das Signal rauskommen?
Was soll passieren, wenn nach dem Taster der Drehschalter verstellt wird?

Wie sieht Dein Drehschalter genau aus? Ist das ein analoges Potie, wo an einem Anschlag "1" dransteht und am anderen "10"? Können auch Positionen zwischen den Zahlen eingestellt werden? Was soll dann passieren?

Welche LOGO hast Du? (Bestellnummer)
Vermutlich brauchst Du Analog-Multiplexer (vielleicht geht auch Analoge Arithmetik) und Selbsthalterelais und Timer.

Harald


----------



## hucki (31 Oktober 2014)

Da sind ein paar Unklarheiten, die sicher Deiner fehlenden Erfahrung geschuldet sind, und die Du erst mal klären müßtest:


IGORus schrieb:


> Ich muss einen Taster betätigen und je nach dem welche Position der Drehschalter (von 1 bis 10 hat) soll dem entsprechend ein Wert in mA rauskommen.
> z.b. Wert 1 entspricht 2mA und Wert 2 entspricht 5mA. Es soll aber nur ein Sygnal rauskommen wenn der Taster betätigt wurde.
> ...
> Wie verbinde ich einen analogen Wert mit einem liniaren Wert?


Ein Dreh*schalter*, der 10 Positionen hat, ist deshalb noch lange kein Analogsignal!
Meist hat so ein Schalter entweder 10 einzelne Ausgänge, die der Reihe nach angesteuert werden, oder die Position wird als 4-bit-Wert ausgegeben. Ersterer hätte also 11 Anschlußpins, letzterer nur 5. In beiden Fällen handelt es sich aber trotzdem um digitale Werte.
Ist es kein Schalter, sondern ein Poti, an dem nur die Zahlen bis 10 dranstehen, Du aber trotzdem auch Positionen dazwischen anwählen kannst, gibt bereits ein Analogsignal aus, das dann bei Tastendruck nur noch an den Ausgang weitergegeben werden muss. Dann brauchst Du aber keine Zuordnung, wie z.B. 1=2mA, mehr im Programm vorzunehmen.

Weiterhin stellt der Taster keinen linearen sondern einen digitalen Wert dar. In diesem Fall ist er einfach die Freigabe für den neuen analogen Ausgangswert.
Dafür kannst Du bei der LOGO! ab der Version 0BA6 die arithmetische Anweisung verwenden und setzt in den Blockeigenschaften den Haken bei "letzten Wert" speichern.

Um aus den verschiedenen digitalen Eingängen des Dreh*schalters* einen analogen Wert für die Ausgabe zu machen, kann man z.B. den Analog-Mux verwenden.
Der Analog-Ausgang kann Werte von 0 bis 1000 verarbeiten. Bei einem 0 bis 20mA Ausgang entspricht damit z.B. 100 einem Ausgabewert von 2mA. Du mußt also im Analog-Mux einen entsprechenden Analogwert angeben, der mit der Position des Drehschalters dann ausgewählt wird.
Über Verweise in der Arithmetischen Anweisung wird dieser Wert dann bei jedem Tasterdruck ausgelesen und bis zum nächsten gespeichert.
Dort kannst Du ggf. auch mehrere Analog-Muxe zusammen addieren.

In Summe für einen 4-Bit-Drehschalter könnte das als Basis z.B. so aussehen:


----------



## IGORus (31 Oktober 2014)

PN/DP schrieb:


> Wie lange soll das Signal rauskommen?
> Was soll passieren, wenn nach dem Taster der Drehschalter verstellt wird?
> 
> Wie sieht Dein Drehschalter genau aus? Ist das ein analoges Potie, wo an einem Anschlag "1" dransteht und am anderen "10"? Können auch Positionen zwischen den Zahlen eingestellt werden? Was soll dann passieren?
> ...



Ich bin noch in der Konzepierungsfase von einem Prüfstand. Ich hab noch keinen einzigsten Bauteil vorliegen. Ich wollte alles erst zu ende bringen damit ic dann entscheiden kann welche Bauteile ich genau brauche.

Mein gedanke war einen Drehschalter zu verwenden der nicht für jeder Position einen einzelnen Eingang braucht, weil ich vermute mir die Eingänge an einem Logo nicht ausreichen. Dann habe ich nachgelesen, dass es solche Schalter auch analog gibt. Dadurch würde ich nur einen analogen Eingang verwenden. Das soll jedenfalls kein stufenlose Schalter sein.Gibt es andere, bessere Möglichkeiten? 

Der Sygnal soll nach dem loslassen vom Taster abgebrochen werden. In eine andere Ausführung soll der Sygnal weiterhin laufen. (es ist aber wiederum weitere Geschichte)

Beim verstellen der Position soll der Sygnal weiter mit geänderte Einstellung weiter laufen oder mit der Ersteinstellung laufen oder abgebrochen  werden. (ist für diese Ausführug nicht relevant, es würde mich aber trotzdem interessieren wie man das umsetzt)

Danke für deine Rückmeldung.


----------



## IGORus (31 Oktober 2014)

hucki schrieb:


> Da sind ein paar Unklarheiten, die sicher Deiner fehlenden Erfahrung geschuldet sind, und die Du erst mal klären müßtest:
> Ein Dreh*schalter*, der 10 Positionen hat, ist deshalb noch lange kein Analogsignal!
> Meist hat so ein Schalter entweder 10 einzelne Ausgänge, die der Reihe nach angesteuert werden, oder die Position wird als 4-bit-Wert ausgegeben. Ersterer hätte also 11 Anschlußpins, letzterer nur 5. In beiden Fällen handelt es sich aber trotzdem um digitale Werte.
> Ist es kein Schalter, sondern ein Poti, an dem nur die Zahlen bis 10 dranstehen, Du aber trotzdem auch Positionen dazwischen anwählen kannst, gibt bereits ein Analogsignal aus, das dann bei Tastendruck nur noch an den Ausgang weitergegeben werden muss. Dann brauchst Du aber keine Zuordnung, wie z.B. 1=2mA, mehr im Programm vorzunehmen.
> ...



Ich bedanke mich schon mal für so eine ausführliche Antwort. Der Drehschalter soll möglichst analog sein, weil mir villeicht die Eingänge nicht ausreichen. Oder eine Alternative dafür. Zwischenpositionen soll es nicht geben. (ich hoffe so ein Drehschalter exestiert auf deisem Planeten  ) Zumindestens so habe ich mir das vorgestellt und ich hoffe, dass es in diese Art umsetzbar ist.

Ich bedanke mich vielmals für die Mühe. Dein Programm werde ich mir morgen noch ein mal genaue angucken. 

Habe ich das richtig verstanden, dass ein vierbit Schalter jeden von 10 Werten mit eine Kombination aus 4 Bit darstellt und somit auch nur 4 Eingänge benötigt?


----------



## hucki (31 Oktober 2014)

IGORus schrieb:


> Ich bedanke mich schon mal für so eine ausführliche Antwort.


Dafür gibt's den danke Button links unter den hilfreichen Posts.






IGORus schrieb:


> Der Drehschalter soll möglichst analog sein, weil mir villeicht die Eingänge nicht ausreichen. Oder eine Alternative dafür. Zwischenpositionen soll es nicht geben. (ich hoffe so ein Drehschalter exestiert auf deisem Planeten  )


Glaub' ich eher nicht, das es sowas gibt. Das dürften dann, wie bereits gesagt, Potentiometer sein, die halt an 10 Stellen eventuell noch zusätzlich rasten. Über'n Weg gelaufen ist mir dergleichen aber noch nicht. Das muss aber nichts heißen.

Das LOGO!-Programm würde in diesem Fall jedenfalls einfacher werden, weil Du ja den Analog-Wert direkt vom Analog-Eingang bekommst:








IGORus schrieb:


> Habe ich das richtig verstanden, dass ein vierbit Schalter jeden von 10 Werten mit eine Kombination aus 4 Bit darstellt und somit auch nur 4 Eingänge benötigt?


Ja, hast Du richtig verstanden. Sowas hier z.B.: Kodierschalter SMC-D-131-AK-2 BCD
Das gleiche gibt's auch mit 10 Ausgängen: Kodierschalter SMC-D-111-AK-2 Dezimal




PS: Zitiere mal bitte nicht den ganzen Post, wenn es nicht unbedingt nötig ist. Insbesondere die großen Bilder im Zitat machen den Thread dann doch sehr unübersichtlich.


----------



## hucki (31 Oktober 2014)

IGORus schrieb:


> Der Sygnal soll nach dem loslassen vom Taster abgebrochen werden. In eine andere Ausführung soll der Sygnal weiterhin laufen. (es ist aber wiederum weitere Geschichte)


Ist eine Einstellungssache in den Blockeigenschaften der Arithmetischen Anweisung:









IGORus schrieb:


> Beim verstellen der Position soll der Sygnal weiter mit geänderte Einstellung weiter laufen oder mit der Ersteinstellung laufen oder abgebrochen  werden. (ist für diese Ausführug nicht relevant, es würde mich aber trotzdem interessieren wie man das umsetzt)


Hängt dann davon ab, was Du mit dem Steuereingang der arithmetischen Anweisung veranstaltest.

Wenn Du diese Anweisung nutzen möchtest, brauchst Du aber mindestens die Version 0BA6 der LOGO!.


----------



## Thruser (31 Oktober 2014)

Hallo,  





hucki schrieb:


> Glaub' ich eher nicht, das es sowas gibt. Das dürften dann, wie bereits gesagt, Potentiometer sein, die halt an 10 Stellen eventuell noch zusätzlich rasten. Über'n Weg gelaufen ist mir dergleichen aber noch nicht. Das muss aber nichts heißen.


  kann man ganz leicht erreichen in dem man eine Widerstandskette nimmt, z.B. 10x 1kOhm, und die in Reihe an 10V legt. Dann mit dem Wahlschalter immer dazwischen abgreifen -> Spannungsteiler  Müßte auch mit dem 4bit Kodierer und unterschiedliche Widerständen gehen, nur muß man dann die Eingangspannungen einmal einmessen/berechnen und dann der Wertigkeit zuweisen.  Gruß


----------

