Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 14 von 14

Thema: Normierungsproblem

  1. #11
    Registriert seit
    09.11.2007
    Ort
    Rhein Main (Darmstadt)
    Beiträge
    663
    Danke
    61
    Erhielt 112 Danke für 80 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Helmut_von_der_Reparatur Beitrag anzeigen
    ich würde mit Zähler / Nenner verhältnis rechnen, dann kannst du mit Dint werten arbeiten

    in deinen Beispiel wäre das z.b.

    dein Verfahrbereich
    822 - 95 = 727

    Faktor
    727 / 680 = 1,0691

    dann die Rechnung über Zähler / Nenner

    727 x ( 10000 / 10691 ) = 680,01

    gruß helmut
    Ich denke mal, das mit dem Dreisatz ist klar gewesen, aber wenn man mit 16 Bit Integer rechnet, muss man auf den Überlauf achten:

    (_32 um Vorschlag unten soll bedeuten 32 Bit, also DINT verwenden.
    Eigentlich würde ich ST verwenden, aber mir ist nicht bekannt, welche Sprache und SPS der Poster verwendet, deshalb pseudo AWL).

    OFFSET_32 = 95;
    HUB_32 = 680;
    DYNAMIK_32 = 727;

    POS_32 = Messwert_32 -OFFSET_32;
    POS_32 = POS_32 * HUB_32;
    POS_32 = POS_32 / DYNAMIK_32;

    POS_16 = (WORD) POS_32;
    Als Freelancer immer auf der Suche nach interessanten Projekten.
    Zitieren Zitieren Überlauf Problem  

  2. #12
    Registriert seit
    30.03.2005
    Beiträge
    2.096
    Danke
    0
    Erhielt 673 Danke für 541 Beiträge

    Standard

    Hier ist einmal ein Programmbeispiel für die Berechnung des Verfahrweges mit Hilfe der Geradengleichung.

    http://www.sps-forum.de/showpost.php...52&postcount=7

    Code:
    FUNCTION FC 100 : VOID
    TITLE =Verfahrweg
     
    //
    //Geradengleichung
    //----------------
    // 
    //   Y
    //   |                 *
    //Y2 |---------------* 
    //   |             * |
    //   |           *   |
    //Y  |---------*     |
    //   |       * |     |
    //   |     *   |     |
    //Y1 |---*     |     |
    //   | * |     |     | 
    //   *------------------- X
    //       X1    X     X2
    // 
    // 
    //Geber      Öffnung
    // 
    //X1 =  95   Y1 =   0 mm
    // 
    //X2 = 822   Y2 = 680 mm
    // 
    // 
    //DY   (Y - Y1)   (Y2 - Y1)
    //-- = -------- = ---------
    //DX   (X - X1)   (X2 - X1)
    // 
    //     (Y2 - Y1)
    // Y = --------- * (X - X1) + Y1
    //     (X2 - X1)
    // 
    //     (Y2 - Y1)       (Y2 - Y1)
    // Y = --------- * X - --------- * X1 + Y1
    //     (X2 - X1)       (X2 - X1)
    // 
    //     (680 mm - 0 mm)       (680 mm - 0 mm)
    // Y = --------------- * X - --------------- * 95 + 0 mm
    //       (822 - 95)            (822 - 95)
    // 
    //     680 mm       680 mm
    // Y = ------ * X - ------ * 95
    //      727          727
    // ============================ 
    //   
     
    AUTHOR : KAI
    FAMILY : SPSFORUM
    NAME : VERFAHRW
    VERSION : 1.0
     
    VAR_INPUT
      IN_Geber : INT ; 
    END_VAR
    VAR_OUTPUT
      OUT_Oeffnung : INT ; 
    END_VAR
    VAR_TEMP
      TEMP_Geber : INT ; 
      TEMP_Zwischenwert : REAL ; 
    END_VAR
    BEGIN
    NETWORK
    TITLE =Verfahrweg
     
          L     #IN_Geber; // Geber
          T     #TEMP_Geber; 
     
          L     #TEMP_Geber; // Geber
          L     95; // Geber = 95
          <I    ; 
          SPBN  M10; 
          L     95; 
          T     #TEMP_Geber; 
     
    M10:  L     #TEMP_Geber; // Geber
          L     822; // Geber = 822
          >I    ; 
          SPBN  M11; 
          L     822; 
          T     #TEMP_Geber; 
     
    M11:  L     6.800000e+002; // Geradengleichung
          L     7.270000e+002; 
          /R    ; 
          L     9.500000e+001; 
          *R    ; 
          T     #TEMP_Zwischenwert; 
     
          L     6.800000e+002; 
          L     7.270000e+002; 
          /R    ; 
          L     #TEMP_Geber; 
          ITD   ; 
          DTR   ; 
          *R    ; 
          L     #TEMP_Zwischenwert; 
          -R    ; 
          RND   ; 
          T     #OUT_Oeffnung; // Oeffnung [mm]
     
    END_FUNCTION
    Gruß Kai
    Angehängte Dateien Angehängte Dateien

  3. #13
    Registriert seit
    29.01.2007
    Ort
    Sandkrug
    Beiträge
    147
    Danke
    7
    Erhielt 36 Danke für 25 Beiträge

    Standard

    Leute, nun übertreibt mal nicht.
    Die Formel X[mm]=680/727*Geberwert-88,86 = 0,93535*Geberwert-88,86
    programmiert man einfach
    Code:
    L 0.93535
    L EWxxx // Gebereingandswort
    DTR
    *R
    L 88.86
    -R
    T Ergebnis // mm-Wert im Real-Format
    und wir haben fertig!
    MfG
    eNDe
    Zitieren Zitieren Normierung  

  4. #14
    Avatar von c.wehn
    c.wehn ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    06.10.2009
    Ort
    Hessen
    Beiträge
    560
    Danke
    24
    Erhielt 43 Danke für 40 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Also, erstmal vielen dank an alle.

    Die erste Antwort von helmut hatte mir schon genügt.
    Das, was man weiß, hat doppelten Wert, wenn man zugleich das, was man nicht weiß, nicht zu wissen eingesteht.

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •