Codesys Neigungssensor Dämpfen

Zuviel Werbung?
-> Hier kostenlos registrieren
Na ... deinen Analogwert erst umrechnen - also aus den 9500 die gewünschten 15° machen - bzw. aus 500 die -15°.
Und dann Glätten (falls es dann noch wirklich notwendig ist) ...

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
das IN_MIN und Max liest man doch vom Sensor Datenblatt ab? hier kann man nur zwischen 4,5 und 9,5 auswählen oder hab ich da was falsch verstanden
Ich vermute, das was Du abliest (0500 und 9500) sind HexadezimalZahlen - entsprechend den DezimalZahlen 27392 und -27392.
Was die Auswählerei zwischen 4,5 und 9,5 betrifft ... keine Ahnung, was Du damit meinst. :confused:
 
@Heinrich:
Nicht unmöglich - aber doch nicht super wahrscheinlich.
Ich denke aber mal, dass der TE die Werte ansich schon auf Plausibilität geprüft hat (?)

@TE:
Falls Heinrich Recht haben sollte mit seiner Annahme dann könntest du doch einfach mal das Datenblatt oder den relevanten Teilö hier posten ...

Gruß
Larry
 
wenn ich den Wert auf (hab mit 10, 50 und 80 getestet) auf 80 setzte also die Glättung springt mein Sensor immernoch zwischen 0,52 und 0,55.
ich könnte allerdins jetzt diese Rechnung mit meinem Ansatz vorher kombinieren :)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das verstehe ICH nun nicht ...
Ich würde den Sensor manuel betätigen und sehen was dann dabei heraus kommt.
Deinen Ansatz mit dem Ausblenden zu verfolgen macht keinen Sinn - da wäre die Glättung auf jeden Fall besser ...

Hast du denn verstanden, was ich mit dem "erst Wandeln und dann Glätten" meinte ?

Gruß
Larry
 
rGeglaetteterWert := ((rGlaettung * rLetzterWert) + lintrafoNeigungssensor.OUT) / (rGlaettung +1 );
rLetzterWert := rGeglaetteterWert;
IF (rGeglaetteterWert > SensorLInput + 0.4) OR (rGeglaetteterWert < SensorLInput - 0.4) THEN
SensorLInput := rGeglaetteterWert;
END_IF

jap Der Input geht auf den Lintrafo die ausgabe ist ein REAL Wert.
Ich sitze hier vor einer fertigen Anlage und habe einen Vorgabewert von einem in dem bestehenden System vorfhandenen Neigungssensor.
Mein Sensor muss auf diesen abgestimmt werden. Deshalb habe ich auch ein Problem damit wenn dieser auch nur minimal schwankt.
 
Viuelleicht dazu noch einmal die Frage :
Leifert dir der Sensor das Signal direkt in die SPS (also über EtherCat) oder lkiefert der einen Analogwert den du dann über einen Analog-Input einliest ?
Wenn Letzteres : welchen Ausgang hat der Sensor (0 .. 10V ?) und welche Auflösung hat die AI-Karte ?

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
ja der Sensor ist direkt an meiner IFM Steuerung angeschlossen und liefert mir einen Analogwert. Den Input habe ich als Sensoreingang 0-10V definiert. Deshalb bekomme ich ja ein WORD als Eingang.
 
Von dem anderen Sensor hab ich leider nur die Interne Display anzeige auf 0,0 genau. Ich erklär vll mal etwas was ich hier mache.
Wenn von der externen Anlage ein Signal kommt. Soll mein Programm heben auf einen Bereich 0,2 - 0,4 und diesen halten um ein Produkt abzugeben.
Deshalb sind all zu große Schwankungen ein Problem, da ich Gefahr laufe in der Automatik immer nachzuregeln. Was ein Luft verlust bedeutet.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
erlich gesagt die Werte wurden etwas bessser aber schwanken noch deshalb hab ich das und das wird dir nicht gefallen :D
mit meinem Ansatz kombiniert, da es mir darum geht nicht immer rauf und runter zu regelen wie oben erwähnt.
der Code sieht wie folgt aus.
rGeglaetteterWert := ((rGlaettung * rLetzterWert) + lintrafoNeigungssensor.OUT) / (rGlaettung +1 );
rLetzterWert := rGeglaetteterWert;
IF (rGeglaetteterWert > SensorLInput + 0.03) OR (rGeglaetteterWert < SensorLInput - 0.03) THEN
SensorLInput := rGeglaetteterWert;
END_IF

Und das klappt sehr gut so :) . Manchmal wenn man an der Grenze liegt zb bei 0,18 geht das Fahrzeug schon auf 0,2 das ist aber in meinem Fall völlig in Ordnung. :)
mir geht es eher darum einen festen Wert zu haben.
 
Wie hoch ist denn dein Glättungswert aktuell ?
Hast du schon mal mit dem "gespielt" ? Also ein gutes Stück höher gesetzt ? Du kannst das mit der Glättung bis nahezu zum Stillstand des Wertes treiben. Falls du jetzt 10 hast und es immer noch schwankt dann mach doch mal 50 ...

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
wie gesagt normal ist das ok so: beispiel 1: der sensor fährt um 0,1 zu wenig hoch : durch Abgeben wird das Fahrzeug aber um Tonnen leichter also steigt es sowieso. Also alles in Ordnung.
das Fahrzeug ist um 0,1 höher als der Sensor vorne : trotzdem in Ordnung, da ich einen Regelbereich von 0,2 -0,45 habe :) Nochmal danke speziell an dich du hast mir Mega weitergeholfen :)
Wie gesagt hatte mit sowas noch nie zu tun.. Hab Mechatroniker gelernt mich dann besonders für SPS interessiert und mir das alles dann selbst beigebracht mehr oder weniger erfolgreich :D
 
@Heinrich:
Nicht unmöglich - aber doch nicht super wahrscheinlich.
Ich denke aber mal, dass der TE die Werte an sich schon auf Plausibilität geprüft hat (?)
Aber, aber, Ralf,
Du hast mich doch erst auf die Idee gebracht durch Deinen Beitrag #7:
Entsprechend deines Code-Schnipsels würde ich das aber anders interpretieren ...
Danach entspräche 500 dann dem Wert von 15° und 9500 dem Wert von -15°.
Und, was die Plausibilität betrifft ... :confused: ... davon kann ich in diesem Thread bisher nicht sooo wahnsinnig viel erkennen. :sad:


@TE:
Falls Heinrich Recht haben sollte mit seiner Annahme dann könntest du doch einfach mal das Datenblatt oder den relevanten Teil hier posten ...
Nein, bitte unabhängig davon, ob Heinrichs Glaskugel gesponnen hat oder nicht! ;)
 
Zuletzt bearbeitet:
Zurück
Oben