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

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

Thema: TCP/IP "NUL" senden

  1. #1
    Registriert seit
    21.10.2010
    Beiträge
    546
    Danke
    60
    Erhielt 42 Danke für 40 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi

    Ich muss per TCP/IP (T_SEND_C) das ASCII Zeichen "00" (NUL) senden. Wie geben ich das ein????
    Hintergrund: ich muss ein Schrauber ansprechen und dieser will ein "NUL" am Schluss der Message.

    "00200001003 NUL"

    S7-1516, TIA V13.1 Upd4

    Gruss blimaa
    Zitieren Zitieren TCP/IP "NUL" senden  

  2. #2
    Registriert seit
    23.03.2013
    Beiträge
    66
    Danke
    11
    Erhielt 17 Danke für 11 Beiträge

    Standard

    Im Step7 Classic konnte man mit $ gefolgt vom einem Code das Char erzeugen.
    Also in einem Feld vom Datentyp String z.B. 'Hallo $00'

    Ich weiß leider nicht, ob das im TIA noch funktioniert, da ich es bis jetzt noch nicht benötigt habe.

    Edit: Such in der Hilfe nach Steuerzeichen.
    Geändert von inspectorgadjet (31.08.2015 um 21:17 Uhr)

  3. Folgender Benutzer sagt Danke zu inspectorgadjet für den nützlichen Beitrag:

    blimaa (01.09.2015)

  4. #3
    Registriert seit
    29.08.2007
    Beiträge
    213
    Danke
    42
    Erhielt 34 Danke für 23 Beiträge

    Standard

    Geht in TIA noch genau so

    'hallo$00'

  5. #4
    blimaa ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    21.10.2010
    Beiträge
    546
    Danke
    60
    Erhielt 42 Danke für 40 Beiträge

    Standard

    supi
    werde es morgen gleich ausprobieren!

  6. #5
    blimaa ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    21.10.2010
    Beiträge
    546
    Danke
    60
    Erhielt 42 Danke für 40 Beiträge

    Standard

    Hi

    Jup geht
    jetzt muss ich nur noch schauen, warum die Kommunikation noch nicht läuft

  7. #6
    blimaa ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    21.10.2010
    Beiträge
    546
    Danke
    60
    Erhielt 42 Danke für 40 Beiträge

    Standard

    Hi
    Da die Kommunikation nicht läuft, melde ich mich nochmals.

    Ich steuere ebenfalls ein Zebra Drucker via TCP/IP an. Dieser druckt mir allerdings nur die Vorlage aus. Also druckte ich den Sendebefehlstring direckt am Drucker aus. Jetzt kam heraus, dass die SPS nach jedem Ascii Zeichen ein Ascii Zeichen "00" (NUL) reinschreibt. Dies geht ja gar nicht!

    Wiso macht die SPS das und wie kamm man den scheiss abschalten?????

  8. #7
    Registriert seit
    29.10.2010
    Beiträge
    553
    Danke
    58
    Erhielt 39 Danke für 37 Beiträge

    Standard

    Hi,

    schau mal in die HW-Config, ich meine da konnte man einstellen, was am Ende gesendet wird.
    Geändert von dentech (03.09.2015 um 15:36 Uhr)
    Alles geht, außer nem Känguru das hüpft.

    Tschö dentech

  9. #8
    blimaa ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    21.10.2010
    Beiträge
    546
    Danke
    60
    Erhielt 42 Danke für 40 Beiträge

    Standard

    Hi

    Hmm konnte nichts finden in der Gerätekonfiguration. Geschaut habe ich bei der SPS.
    Wo müsste ich den nachschauen?

  10. #9
    blimaa ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    21.10.2010
    Beiträge
    546
    Danke
    60
    Erhielt 42 Danke für 40 Beiträge

    Standard

    Hi
    Also ich konnte jetzt mein Leerzeichen Problem lösen.
    Für Intressierte die Antwort vom Support:

    Code:
    Ich vermute, dass Sie bei dem Datenbaustein, den Sie an den Drucker senden, den optimierten Bausteinzugriff aktiv haben. Wenn Sie den rausmachen, sollte es richtig funktionieren. Machen Sie dazu einen Rechtsklick auf den entsprechenden DB, öffnen die Eigenschaften und entfernen bei den Attributen den optimierten Bausteinzugriff.
     
    Bei dem optimierten Bausteinzugriff wird jedes Char auf ein komplettes Wort im Speicher abgelegt, damit die CPU schneller darauf zugreifen kann. Am LAN wird dann aber auch das komplette Wort gesendet, also immer ein Füllbyte plus der Char. Wenn der nicht-optimierte Bausteinzugriff gemacht wird, belegt jeder Char nur ein Byte, die CPU greift dann zwar langsamer zu, dafür wird es am LAN korrekt gesendet und das Telegramm ist kürzer und schneller am LAN.
    Finde ich noch recht intressant!!
    Allerdings das Problem konnte ich erst lösen, als ich mein Sendestring änderte auf das Format "String". Vorher war er das Format "WSTRING"!


    Gruss blimaa

  11. #10
    Registriert seit
    29.08.2007
    Beiträge
    213
    Danke
    42
    Erhielt 34 Danke für 23 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    WSTRING ist ein Unicode String. Bei Unicode belegt jedes Zeichen 2 Byte. Daher das Null-Byte zwischen jedem Zeichen.

  12. Folgender Benutzer sagt Danke zu van für den nützlichen Beitrag:

    blimaa (04.09.2015)

Ähnliche Themen

  1. Step 7 FB64 "TRCV" - Problem beim TCP Empfang
    Von rocKay im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 28.08.2015, 14:21
  2. WinCC Flex 2008 "Email senden"
    Von Sickone4 im Forum HMI
    Antworten: 0
    Letzter Beitrag: 22.10.2014, 14:52
  3. Antworten: 6
    Letzter Beitrag: 19.12.2011, 15:53
  4. 25 Verbindungen mit 317 über "iso on tcp"
    Von Johannes F im Forum Simatic
    Antworten: 14
    Letzter Beitrag: 27.05.2010, 08:13
  5. Antworten: 13
    Letzter Beitrag: 11.05.2007, 15:09

Lesezeichen

Berechtigungen

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