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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: HEX erzeugen für FU Steuerwort (Profibus)

  1. #1
    Registriert seit
    09.06.2007
    Ort
    Coburg
    Beiträge
    72
    Danke
    34
    Erhielt 5 Danke für 5 Beiträge

    Frage


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich suche einen Ansatz um für einen Danfoss FC 302 das Steuerwort zu erzeugen. Dieses muss als WORD (HEX) erzeugt werden. Da ja jedes Bit
    eine FU Steuerfunktion . Habe bis jetzt jedes Steuerwort Ausgerechnet und in einen DB abgelegt. und lade mir dann denn gebrauchten wert heraus:

    zb:
    Start =W#16#047C
    Stop =W#16#0474
    Reviesierung=W#16#847C

    dies ist aber zu umständlich.ich würde lieber direkt die einzelnen Bits ein-bzw ausschalten und das da durch automatisch das Richtige HEX erzeugt wird.

    Bin S7 Einsteiger Arbeite mit einer VIPA CPU 313SC/DPM und MHJ-Software WinSPS-V4 und Danfoss FU FC302
    Kommunikation via Profibus

    Gruß Andy
    Geändert von BodyKra (31.07.2008 um 21:09 Uhr)
    MfG Andy

    Zitieren Zitieren HEX erzeugen für FU Steuerwort (Profibus)  

  2. Folgender Benutzer sagt Danke zu BodyKra für den nützlichen Beitrag:

    Jans1906 (21.11.2009)

  3. #2
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    einfachste möglichkeit: die bits eines merkerworts beeinflußen ... dazu muß man natürlich wissen wie der speicherbereich aufgebaut ist ... wort=2byte=16bit ..alle über ihre bitadresse ansprechbar
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  4. Folgender Benutzer sagt Danke zu vierlagig für den nützlichen Beitrag:

    BodyKra (31.07.2008)

  5. #3
    Registriert seit
    09.06.2007
    Ort
    Coburg
    Beiträge
    72
    Danke
    34
    Erhielt 5 Danke für 5 Beiträge

    Standard

    Das mit dem bit aufbau ist mir bewusst.

    aber ich suche eine elegantere variante den HEX zu erzeugen

    zb. im MW0 soll der bit M0.4 geändert werden kann ich den bit einfach mit zb. SR Setzen oder Rücksetzen und wie kann ich aus dem MW0 den HEX erzeugen

    Binär:
    Vorher 0000010001111100
    Nachher 0000010001110100
    (R nach L lesen)
    MfG Andy


  6. #4
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    du kannst das bit einfach setzen und rücksetzen. der wert des MW0 ändert sich dann, egal ob du es dir dual, dezimal oder hex-codiert anzeigen läßt, der FU wird es richtig interpretieren.


    das mit dem merker ist, wie gesagt, die einfache lösung ... wenn du an etwas eleganteren interessiert bist, schau mal in die FAQ pointer zeiger fifo lifo
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  7. Folgender Benutzer sagt Danke zu vierlagig für den nützlichen Beitrag:

    BodyKra (31.07.2008)

  8. #5
    Registriert seit
    07.07.2004
    Beiträge
    3.285
    Danke
    38
    Erhielt 584 Danke für 382 Beiträge

    Frage

    Hallo,

    Zitat Zitat von BodyKra
    Start =W#16#047C
    Stop =W#16#0474
    Reviesierung=W#16#847C

    dies ist aber zu umständlich.ich würde lieber direkt die einzelnen Bits ein-bzw ausschalten und das da durch automatisch das Richtige HEX erzeugt wird.
    Also ich kann dein Problem nicht wirklich nachvollziehen. Das Ein/ausschalten der Bits kannst du über logische Funktionen wie "AND" b.z.w. "OR", "XOR" u.s.w. natürlich steuern, aber das ist nun mal wesentlich umständlicher als die von Dir bemängelte Lösung über eine feste (und gut dokumentierte)Zuweisung z.B. "Stop =W#16#0474" ?
    Vielleicht ein selbstgemachtes Problem als Anfänger ?

    Gruß

    Question_mark
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Versteh ich nicht wirklich...  

  9. Folgender Benutzer sagt Danke zu Question_mark für den nützlichen Beitrag:

    BodyKra (31.07.2008)

  10. #6
    Registriert seit
    11.12.2007
    Beiträge
    189
    Danke
    54
    Erhielt 33 Danke für 32 Beiträge

    Standard

    Du musst erst mal verstehen das HEX nur ein Anzeigeformat ist.

    z.B.
    Code:
    .
    MW0  BIN 2#0000_0100_1000_1100 
    MW0  HEX W#16#048C W#16#048C
    MW0  DEZ 1164
    also wenn du Binär änders ändern sich automatisch auch HEX und DEZ oder welches Anzeigeformat auch immer gewählt wurde.

    Wie 4l schon geschrieben hat, der FU wird es interpretieren.

    Gruß
    Sven_HH

  11. Folgender Benutzer sagt Danke zu Sven_HH für den nützlichen Beitrag:

    BodyKra (31.07.2008)

  12. #7
    Registriert seit
    09.06.2007
    Ort
    Coburg
    Beiträge
    72
    Danke
    34
    Erhielt 5 Danke für 5 Beiträge

    Standard

    OK aber was ist mit dem Sollwert der ist ja von 0000-4000HEX (0-100%) der muss doch bestimmt noch in INT umgewandelt werden Damit ich ihn scalieren und verarbeiten kann.
    MfG Andy


  13. #8
    Registriert seit
    15.01.2005
    Ort
    In der Mitte zwischen Bayreuth/Weiden
    Beiträge
    6.735
    Danke
    321
    Erhielt 1.522 Danke für 1.283 Beiträge

    Standard

    @Bodykra
    Auch hier ist es wieder nur eine Darstellung und keine Wandlung!

    16#0 - 16#4000 = 0 - 16384

    Mfg
    Manuel
    Warum denn einfach, wenn man auch Siemens einsetzen kann!

    Wer die grundlegenden Freiheiten aufgibt, um vorübergehend ein wenig Sicherheit zu bekommen, verdient weder Freiheit noch Sicherheit (B. Franklin).

  14. Folgender Benutzer sagt Danke zu MSB für den nützlichen Beitrag:

    BodyKra (31.07.2008)

  15. #9
    Registriert seit
    09.06.2007
    Ort
    Coburg
    Beiträge
    72
    Danke
    34
    Erhielt 5 Danke für 5 Beiträge

    Standard

    OK ich Danke euch bin jetzt wieder ein bischen schlauer.
    MfG Andy


  16. #10
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Question_mark Beitrag anzeigen
    aber das ist nun mal wesentlich umständlicher als die von Dir bemängelte Lösung über eine feste (und gut dokumentierte)Zuweisung z.B. "Stop =W#16#0474" ?
    hmm, was sich der kollege qm da wieder bei gedacht hat

    start ist w#16#047C ist 10001111100
    stop ist w#16#0474 ist 10001110100

    so und nun sag mir warum ein

    Code:
    *
          U     E      0.0     //Start
          S     M      1.3
          UN    E      0.1     //Stop
          R     M      1.3
    komplizierter sein soll als ein

    Code:
    *
          U     E      0.0     //Start
          SPBN  _001
          L     W#16#47C
    _001: UN    E      0.1     //Stop
          SPBN  _002
          L     W#16#474
    _002: T     MW     0
    Geändert von vierlagig (01.08.2008 um 10:50 Uhr)
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

Ähnliche Themen

  1. Steuerwort für SEW Umrichter
    Von bonatus im Forum SEW-EURODRIVE
    Antworten: 43
    Letzter Beitrag: 25.01.2012, 22:57
  2. Steuerwort+ Frequenz in FUB programmieren ??
    Von Techniker1907 im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 14.04.2011, 06:02
  3. FU Danfoss Steuerwort je nach Betriebswahl
    Von SPS_olala im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 10.09.2010, 13:16
  4. Micromaster in CB / COM - welches Steuerwort?
    Von EAT_AZUBI_123 im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 25.05.2009, 08:18
  5. MM420 Steuerwort
    Von volker im Forum Feldbusse
    Antworten: 7
    Letzter Beitrag: 02.05.2005, 09:41

Lesezeichen

Berechtigungen

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