ntpd, EAoffset, Taskzeiten

mtresp
2007-08-10
2007-08-11
  • mtresp - 2007-08-10

    Guten Abend!

    Ich bin völlig neu mit Codesys in Kontakt getreten und habe in meinem Betrieb niemanden

    der sich sonst damit auskennt. An folgenden Punkten habe ich das Gefühl zuviel Zeit

    versenken zu können:

    sntpd oder ntpd

    Kann ich in einem Netz -ausschließlich mit 750-841 Kontrollern- auf einem einen Timeserver laufen lassen?

    Den Clienten und das Protokoll kann man ja in den Config-Masken aktivieren. Das würde ich gerne nutzen.

    Wenn es geht möchte ich den Umweg über die ethernet.lib und weiterem Handwerk vermeiden. Da werkelt bereits genug Code.

    Von der RTC Karte habe ich gehört. Wenn nicht bereits jetzt, ist da eine solcher ntp.daemon/*.lib eventl. daran gebunden integriert?

    EAoffset

    Ich schiebe die dig_In und dig_Out in einen anderen Adressbereich. Zu meinem Entsetzen

    gibt es offenbar analoge_Out Karten, welche den Eingangsbereich (2x-1)Byte verschieben.

    Ich muss die die dig_In und dig_Out jedoch wortweise verschieben? Kennt jemand das Problem?

    PS eigentlich wollte ich mit PI_xxx (hab vergessen wie die Funktion sich nennt) die Länge

    der analogen EA's auslesen und das alles automatisieren:

    d.h. um die Länge der analogen_EA_OFFSET den Adressbereich vorverlegen.

    Der digitale erste Eingang bleibt. - Leider noch nicht!

    ... ein ganzer Tag ist nun futsch...

    Ich befürchte man muss da noch tiefer einsteigen und Karten identifizieren, etc... Muss das sein?


    Meine Netzwerktopologie ist einfach

    Switch - Master

        -   Slave01
    
        -   Slave02
    
        ... Slave15
    

    Hardware immer 750-841 (aus logistischen Gründen... hier ist der Controller immer

    verfügbar). Jeder Slave muss völlig autonom und ohne Netzwerk agieren können.

    Ich verwende keine Globalen_Netz_VAR , kein Modbus nur Ethernet/IP.

    1.) Der Master verwaltet eine Liste an welche die Slaves ihren Status - und einen fifo mit

    Prioritäten zum Bedarf mitteilen:

    Master(Client_UDP) - Slave(Server) / je mind 1 x DWORD In und Out.

    2.) und gemeinsame Peripherie (Reaktionszeit : 30 sek)

    Slave(Client_TCP) - Master(Server) / je mind 1 x DWORD In und Out.

    nutzen. Hier sollte bei Kommunikationsfehlern der Prozess gesperrt (Reaktionszeit : 0,5 sek) werden.

    3.) Z.Z. keine Kommunikation zwischen den Slaves.

    Ist das Resourcenverschwendung, da ja ein Switch verwendet wird? Wenn ja, wie legt man

    das an? Slave01/Slave02 an Slave02/Slave03 -> zuletzt an den Master? Wenn ein Slave

    ausfällt, deswegen 01/02 -> 02/03 -> 03/xx # 03/05 -> 05/06?

    Interessiert mich, bei meinen Reaktionszeiten noch kein Problem.


    Taskzeiten

    Gibt es grobe Empfehlungen für die Taskzeit (vor allem den Ethernet/IP-Server, -Client) in

    Abhängigkeiten von Codelänge Anzahl der Tasks etc? Ich bin hier für eine 'man' dankbar.

    Eine Visualisierung ist später, scheinbar mit einem vermutlich leider nicht html-fähigem Panel

    geplant. Jedenfalls liegt hier so eins herum.

    Absolutes Neuland für mich. Wenn ich darf, kommen da eventuell noch Fragen im Herbst nach.

    Wenn mir der ein oder andere eine Frage beantworten kann oder Hinweise zu einem guten

    Manual liefert bin ich sehr dankbar.

    Grüße

    MTresp

     
  • mtresp - 2007-08-11

    mtresp hat geschrieben:
    EAoffset
    Ich schiebe die dig_In und dig_Out in einen anderen Adressbereich. Zu meinem Entsetzen
    gibt es offenbar analoge_Out Karten, welche den Eingangsbereich (2x-1)Byte verschieben.
    Ich muss die die dig_In und dig_Out jedoch wortweise verschieben? Kennt jemand das Problem?
    PS eigentlich wollte ich mit PI_xxx (hab vergessen wie die Funktion sich nennt) die Länge
    der analogen EA's auslesen und das alles automatisieren:
    d.h. um die Länge der analogen_EA_OFFSET den Adressbereich vorverlegen.
    Der digitale erste Eingang bleibt. - Leider noch nicht!
    ... ein ganzer Tag ist nun futsch...
    Ich befürchte man muss da noch tiefer einsteigen und Karten identifizieren, etc... Muss das sein?

    Ich habe mir das heute morgen nochmal genauer angesehen.

    Eine Instanz von PI_INFORMATION - damit lese ich die Infos aus.

    Der IO Offset wird Byteweise mit SET_..._OFFSET verschoben.

    Wie erhalte ich die Anzahl der Bytes welche die Analogen Karten die digital-AE verschieben?

    Bitte entschuldigt obere Fehl-Info,

    MTresp

     

Log in to post a comment.