Wago 750-8202 serielle Onboardschnittstelle als Modbus Master

BadTaste

Level-2
Beiträge
180
Reaktionspunkte
12
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo liebes Forum,
ich würde gern den 750-881 Controller gegen den 750-8202 tauschen und die Modbus Kommunikation (Master) mit den herkömmlichen Bausteinen Version_Modb_l05.lib (Ver. 6.4) betreiben.
Hat jemand das schon mal gemacht oder via Com2 des 8202 mit RS485 eine Kommunikation hinbekommen, ich kann machen was ich will aber da kommt nichts raus, wo stellt man eigentlich von RS 232 auf 485 um ich hatte das immer hier gemacht:

Screenshot 2015-10-26 19.23.50.png
und hier der Aufruf:
Code:
(* ----------------------------------------- *)
    MB1(
        bCOM_PORT:=1 ,
        cbCOM_BAUDRATE:= 960,
        cpCOM_PARITY:=2 ,
        csCOM_STOPBITS:= 1,
        cbsCOM_BYTESIZE:=8 ,
        cfCOM_FLOW_CONTROL:=4 ,
        TimeOut:=t#120ms ,
        StartFunction:=START_ABFRAGE ,
        Query:=MB_QUERY ,
        Response:=MB_RESPONSE ,
        MB_Error=> MB_ERR);
(* ------------------------------------------- *)

schöne Grüße
Micha
 

Anhänge

  • Screenshot 2015-10-26 19.17.35.png
    Screenshot 2015-10-26 19.17.35.png
    35,7 KB · Aufrufe: 50
Hallo, versuchs mal mit COM0.
COM0 ... on board
COM1 ... Service-Schnittstelle (Achtung: keine galvanische Trennug, nur zu Testzwecken nehmen)
COM(1+n) ... n-te gesteckte serielle Klemme
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
stimmt der Port 0 ist richtig, aber auch die Einstellung
cfCOM_FLOW_CONTROL ist wichtig da hier von RS232 auf 485 umgestellt wird.
der Wago Support hat mir sehr gut geholfen, schon super das man da jemanden erreichen kann...

schöne Grüße
Micha
 
klar...
das geht auf die SerComm.lib zurück hier werden mit dem Parameter Com_Flow_Control folgende Einstellungen vorgenommen:
Code:
TYPE COM_FLOW_CONTROL :
(
    (*:::::: WITH CONTINOUS SEND ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*)
    NO_FLOW_CONTROL                 :=0,        (* RS 232 / fullduplex / without handshake       / with continous send *)
    XON_XOFF                        :=1,        (* RS 285 / halfduplex / with XON & XOFF         / with continous send *)
    RTS_CTS                         :=2,        (* RS 232 / fullduplex / with hardware handshake / with continous send *)
    FULLDUPLEX                      :=3,        (* RS 422 / fullduplex / without handshake       / with continous send *)
    HALFDUPLEX                      :=4,        (* RS 485 / halfduplex / without handshake       / with continous send *)

    (*------ NEW SINCE JULY 2009 --------------------------------------------------------------------------------------*)
    RS232_FULLDUPLEX_XON_XOFF       := 5,        (* RS 232 / fullduplex / with XON & XOFF         / with continous send *)
    RS422_FULLDUPLEX_XON_XOFF       := 6,        (* RS 422 / fullduplex / with XON & XOFF         / with continous send *)
    (*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*)

    (*:::::: WITHOUT CONTINOUS SEND ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*)
    NCS_NO_FLOW_CONTROL             :=20,        (* RS 232 / fullduplex / without handshake       / without continous send *)
    NCS_XON_XOFF                    :=21,        (* RS 285 / halfduplex / with XON & XOFF         / without continous send *)
    NCS_RTS_CTS                     :=22,        (* RS 232 / fullduplex / with hardware handshake / without continous send *)
    NCS_FULLDUPLEX                  :=23,        (* RS 422 / fullduplex / without handshake       / without continous send *)
    NCS_HALFDUPLEX                  :=24,        (* RS 485 / halfduplex / without handshake       / without continous send *)

    NCS_RS232_FULLDUPLEX_XON_XOFF   := 25,        (* RS 232 / fullduplex / with XON & XOFF         / without continous send *)
    NCS_RS422_FULLDUPLEX_XON_XOFF   := 26,        (* RS 422 / fullduplex / with XON & XOFF         / without continous send *)
    (*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*)

    FLOW_CONTROL_TERMINAL_DEFAULT     := 16#7FFF    (* take the settings inside module *)
);
END_TYPE

du siehst das man hier die RS232 und RS485/422 umschaltet.
du kannst das aber auch sehen wenn du in der Bibliothekenverwaltung schaust:
Screenshot 2015-10-27 17.04.27.jpg

leider habe ich aber jetzt das Problem das ich die Serviceschnittstelle nicht mehr zum laufen bekomme, welche ich als MBUS Master betrieben habe (ja ich weiß das soll man nicht)... irgendwas ist ja immer :-(

schöne Grüße
Micha
 
Zuviel Werbung?
-> Hier kostenlos registrieren
leider habe ich aber jetzt das Problem das ich die Serviceschnittstelle nicht mehr zum laufen bekomme, welche ich als MBUS Master betrieben habe (ja ich weiß das soll man nicht)

Versuch mal mit Ethernet Settings auf Werkseinstellung zurückzusetzen.
Sollte das nich klappen bliebe noch der Versuch den COM1 erneut mit der Serial_interface_01 oder sercom auf die ursprünglichen Parameter zurückzusetzen. Findest Du recht einfach, wenn Du in der CODESYS eine neue serielle Kommunikationsschnittstelle erstellst.

Wenn Du auf dem Service Port keine eigene Verdrahtung angeschlossen hattest, sollte die Schnittstelle hardwareseitig noch okay sein.
 
Hi,
also via Ethernet Settings komme ich seriell auf die Schnittstelle und kann alles machen, ich nutze hier das Servicekabel von Wago und gehe normalerweise mit dem Sub-D dann auf ein MBUS Pegelwandler um damit einen Zähler auszulesen... aber ich kann keine Telegramme auf der Serviceschnittstelle mit dem MBUS schicken, ich Probiere mal Morgen aus ob ich da überhaupt was rausbekomme mit der sercom.

Ach ich hab vergessen zu sagen das ich noch codesys 2.3 nutze das Codesys 3 ist mir zu groß und aufgebl.... und auch zu teuer:s5:.

schönen Abend
Micha
 
Zurück
Oben