Glättungsfunktion für Analogbaustein

Anonymous
2007-08-22
2007-09-08
  • Anonymous - 2007-08-22

    Originally created by: FrankH.

    Hallo,

    ich habe folgendes Problem !

    Für eine Glättungsfunktion von Analogwerten suche ich im Codesys eine Funktion bzw. ein Operand der dem TAK Operand aus Step 7 gleichwertig ist. Das heißt also die Inhalte von Akku 1 in Akku 2 tauscht.

    Des weiteren benötige ich eine Information darüber ob ich im Codesys nach einer Multiplikation diese auf validität prüfen kann. Das Ergebniss der Prüfung sollte als Boolscher Wert ausgegeben werden.

    Mfg Frank

     
  • Benjamin - 2007-08-22

    zu Frage 1:

    Was soll den ein vertauschen der Register beweirken? Wenn du Signale glätten willst, dann stehen dir viele Ansätze zur Verfügung. Eine Mittelwertbildung über die letzten x Signale oder ein Tiefpass zum Beispiel.

    Wenn du Hilfe brauchst, können wir dir gerne helfen.

    zu Frage 2:

    Was soll den bei einer Multiplikation schief laufen? Über die zu erwartenden Wertebereiche muss man ja vorher nachdenken. Eine Division durch 0 kannst du aber über CheckDivReal abfangen

     
  • Anonymous - 2007-08-22

    Originally created by: FrankH.

    Also eine Mittelwertbildung über die letzen x Signale wäre für die Glättung denke ich mal das beste wie realisiere ich das am einfachsten ???

    mfg Frank

     
  • Benjamin - 2007-08-22

    z.B.

    • Funktionbaustein anlegen

    • in ein Array kommen dann nacheinander die neuen Werte

    • Aufaddieren der Werte im Array

    • Division durch Arraygröße

    • fertig

    Auch wenn IMHO ein Tiefpass besser ist

     
  • gravieren - 2007-08-22

    Hi

    Bei w www.oscat.de w vorbeischauen, die hat Filter und etliche andere sachen bereits fertig.

    Natürlich mit Quellcode

     
  • gnassel - 2007-09-04

    Zum Glätten:

    ausgang:=((ausgang*9)+aktualwert)/10;

    so glätte ich immer meine Analogwerte

     
  • hugo - 2007-09-08

    die echte glättungsfunktion ist ein pt1 glied eine gute beschreibung hierzu ist in wickipedia unter pt1 zu finden. einen baustein findest du in der oscat lib unter ft_pt1

    das ganze entspricht einem RC glied wie es in der elektronik zur glättung von signalen verwendet wird.

     

Log in to post a comment.