AUT Seite 1 20 SchnittStellenCenter Fürth Intelligente Slave- lösungen mit dem SPC3
AUT Seite 2 20 SchnittStellenCenter Fürth Intelligente DP -Slavelösungen mit dem SPC 3 Übertragungsraten von 9,6 kBd bis 12 MBd 1,5 kByte RAM im Chip integriert Das Slave DP-Protokoll ist komplett integriert Prozessorunterstützung für : Intel: 8032, 80X86 Siemens: 80166/167 Motorola: HC11-,HC16-,HC916-Typen und andere Prozessoren mit vergleochbarem Timing
AUT Seite 3 20 SchnittStellenCenter Fürth Intelligente Slavelösungen mit dem SPC 3 SPC 3 1,5 kByte RAM Anwender Gehäuse : 44 PIN PQFP Layer 1 Layer 2 DP Steuerwerk Org. Zeiger Datenpuffer 11 Bit Adressbus 8 Bit Datenbus DPS2- Soft- ware
AUT Seite 4 20 SchnittStellenCenter Fürth Intelligente DP - Slavelösungen mit dem SPC 3 (Speicheraufteilung des internen RAM´s) AdresseFunktion 000HSteuerwerkparameter interne Arbeitszellen Latches/Register (21 Byte) 016HOrganisatorische Parameter (42 Byte) 040HDP- Puffer:Data In (3) Data Out (3) Diagnose (2) Parametrierdaten (1) 5FFH Konfigurierdaten(2) Hilfspuffer (1 oder 2) SSA Puffer (1) interne Arbeitszellen
AUT Seite 5 20 SchnittStellenCenter Fürth Intelligente DP - Slavelösungen mit dem SPC 3 Segment 0 Segment Bit Segmentadr. enthält Anfangsadr. eines 8 Byte Segments Bit nach links
AUT Seite 6 20 SchnittStellenCenter Fürth SPC3 Speicherstruktur
AUT Seite 7 20 SchnittStellenCenter Fürth SPC3 Speicherstruktur
AUT Seite 8 20 SchnittStellenCenter Fürth Organisatorische Parameter im SPC3 Adresse Intel /Motorola Name Bit Nr.Bedeutung 16HR_TS_Adr 7..0Stationsadresse des jeweiligen SPC3 17H reserviertPointer auf eine Speicherzelle, in der 0FFH steht 18H19HR_User_Wd_Value H18HR_User_Wd_Value AHR_Len_Dout_PufLänge der 3 Dout-Puffer 1BHR_Dout_buf_Ptr1Segmentbasisadresse des Dout-Puffers 1 1CHR_Dout_buf_Ptr2Segmentbasisadresse des Dout-Puffers 2 1DHR_Dout_buf_Ptr3Segmentbasisadresse des Dout-Puffers 3 1EHR_Len_Din_bufLänge der 3 Din-Puffer 1FHR_Din_buf_Ptr1Segmentbasisadresse des Din-Puffers 1 20HR_Din_buf_Ptr2Segmentbasisadresse des Din-Puffers 2 21HR_Din_buf_Ptr3Segmentbasisadresse des Din-Puffers 3 22Hmit 00H vorbelegen 23Hmit 00H vorbelegen 24HR_Len_Diag_buf1Länge des Diag-Puffers 1 25HR_Len_Diag_buf2Länge des Diag-Puffers 2 26HR_Diag_Puf_Ptr1Segmentbasisadresse des Diag-Puffers 1
AUT Seite 9 20 SchnittStellenCenter Fürth Organisatorische Parameter im SPC3
AUT Seite SchnittStellenCenter Fürth Pufferaufteilung im Datenbereich des SPC 3 Moderegister 0 AdresseBitpositionBezeichnung Steuer- register H (Intel) Freeze_ Suppor ted Sync_ Suppor ted EARLY _RDY INT_ POL MinTS DR DIS_ STOP_ CON TROL DIS_ START _ CON TROL Mode-Reg AdresseBitpositionBezeichnung Steuer- register H (Intel) Spec_Cl ear_Mo de *) Spec_Prm _Puf_Mod e **) WD_ Test User_ Time base EOI_ Time base DP_ Mode Mode-Reg
AUT Seite SchnittStellenCenter Fürth Moderegister 1 Pufferaufteilung im Datenbereich des SPC 3
AUT Seite SchnittStellenCenter Fürth Statusregister Pufferaufteilung im Datenbereich des SPC 3
AUT Seite SchnittStellenCenter Fürth Die Einträge 'New_Prm_Data', 'New_Cfg_Data' dürfen nicht über das Interrupt-Acknowledge-Register gelöscht werden. Diese Einträge werden von den entsprechenden State-Machines durch die User-Quittierungen gelöscht (z.B. 'User_Prm_Data_Okay' etc.). Interruptregister Pufferaufteilung im Datenbereich des SPC 3
AUT Seite SchnittStellenCenter Fürth Zuordnung der Hilfspuffer im SPC 3
AUT Seite SchnittStellenCenter Fürth Die Nettodaten sind folgendermaßen im SSA-Puffer abgelegt: Datenformat des Set_Slave_Address-Telegramms
AUT Seite SchnittStellenCenter Fürth Anwenderparameter das SPC 3 ByteBitpositionBezeichnung Lock Req Unlo. Req Sync Req Free Req WD on Res Stationsstatus 1WD_Fact_1 2WD_Fact_2 3MinTSDR 4Ident_Number_High 5Ident_Number_Low 6Group_Ident WD_ Base Dis Stop Dis Start Spec_User_Prm_Byte 8-243User_Prm_Data
AUT Seite SchnittStellenCenter Fürth Anwenderparameter
AUT Seite SchnittStellenCenter Fürth Codierung von User_Prm_Data_Not/_Okay_Cmd
AUT Seite SchnittStellenCenter Fürth 11Not_Allowed Codierung von User_Cfg_Data_Not/_Okay_Cmd
AUT Seite SchnittStellenCenter Fürth Diag_Puffer-Zuordnung Codierung von Diag_Puffer_SM, New_Diag_Cmd
AUT Seite SchnittStellenCenter Fürth Aufbau des Diagnose-Puffers bei Übergabe an den SPC3
AUT Seite SchnittStellenCenter Fürth Dout_Puffer-Verwaltung
AUT Seite SchnittStellenCenter Fürth Next_Dout_Puffer_Cmd
AUT Seite SchnittStellenCenter Fürth Das erste Byte eines gültigen Global_Control Commands wird in der RAMzelle R_GC_Command abgelegt. Das zweite Byte des Telegramms (Group_Select) wird intern verarbeitet. Datenformat des Global_Control-Telegramms
AUT Seite SchnittStellenCenter Fürth CS- Logik im SPC3 ALE AD 0..7 Processor SPC 3 A A CS 1,5 kByte RAM in the SPC 3 A alle 0 Addreß- latch AD 0..7
AUT Seite SchnittStellenCenter Fürth Intelligente Slave Lösungen mit dem SPC 3 (Drei Puffer Prinzip) D-Puffer: SPC 3 schreibt Daten des Default SAP ein N-Puffer: SPC 3 tauscht D und N Puffer U-Puffer: User kann Daten verarbeiten Puffer Austausch durch SPC 3 durch AW SW N U D USER Puffer Austausch durch SPC 3 durch AW SW N U D PROFI- BUS
AUT Seite SchnittStellenCenter Fürth SPC 3 Software (Initialisierung) Hardware Modus einstellen SPC3_SET_HW_MODE ( INT_POL_LOW | EARLY_READY | SYNC_SUPPORTED |FREEZE_SUPPORTED| EOI_TIMEBASE_1u |USER_TIMEBASE_1m... ) Aktivieren der Benachrichtigungsgründe SPC3_SET_IND( GO_LEAVE_DATA_EX | BAUDRATE_DETECT | WD_DP_MODE_TIMEOUT | USER_TIMER_CLOCK | NEW_SSA_DATA | DX_OUT | NEW_CFG_DATA | DIAG_BUFFER_CHANGED ) Stationsadresse übergeben SPC3_SET_STATION_ADDRESS (x) Stationsadresse ändern erlaubt ? DPS2_SET_ADD_CHG_ENABLE() _DISABLE()
AUT Seite SchnittStellenCenter Fürth SPC 3 Software (Initialisierung) Identnummer übergeben DPS2_SET_IDENT_NUMMER_HIGH (x) _ LOW (x) Antwortzeit festlegen SPC3_SET_MINTSDR(x) Puffer Initialisierung SPC3_INIT(*dps2_bptr) /*vordefinierte Struktur ändern */ typedef struct { UBYTE din_dout_buf_len; /*Gesamtlaenge des Ein-/Ausgangspuffers, 0-488*/ UBYTE diag_buf_len; /*Laenge des Diagnosedatenpuffers, 6-244*/ UBYTE prm_buf_len; /*Laenge des Parameterpuffers, 7-244*/ UBYTE cfg_buf_len; /*Laenge des Konfig-Datenpuffers, 1-244*/ UBYTE ssa_buf_len; /*Laenge des Set-Slave-Add-Puffers, 0 bzw */ } DPS2_BUFINIT;
AUT Seite SchnittStellenCenter Fürth SPC 3 Software (Initialisierung) Holen des Datenbereichs für Sollkonfiguration DPS2_SET_IO_DATA_LEN() DPS2_GET_READ_CFG_BUF_PTR() DPS2_SET_READ_CFG_LEN() Holen der Pufferzeiger für ersten Eintrag DPS2_GET_DIN_BUF_PTR() DPS2_INPUT_UPDATE() Übergeben der Eingangsdaten DPS2_INPUT_UPDATE() Diagnosepuffer holen DPS2_GET_DIAG_BUF_PTR() DPS2_GET_DIAG_BUF_LEN() PS2_DIAG_UPDATE() /*frei ab Byte 6 */
AUT Seite SchnittStellenCenter Fürth SPC 3 Software (Interruptfunktion) SPC3_START() Hauptprogramm dps2_ind() Neue Parameter ? If(DPS2_GET_IND_NEW_PRM_DATA()) check_parameters() DPS2_SETR_PRM_DATA_OK() /*Benachrichtig. quittieren */ Neue Adresse ? if (DPS2_GET_IND_NEW_SSA_DATA()) /* Neue Adresse */ go_check_address() DPS2_CON_IND_NEW_SSA_DATA() /* Benachrichtigung quittieren*/
AUT Seite SchnittStellenCenter Fürth Ausgabedaten prüfen if(DPS2_DET_IND_DX_OUT()) /* Neue Ausgangsdaten */ DPS2_OUTPUT_UPDATE() go_check_dx_data() DPS2_CON_IND_DX_OUT() /* Benachrichtigung quittieren*/ SPC3_SET_EOI /* Benachrichtigung beenden */ ... oder mehrere quittieren mit SPC3_IND_CONFIRM(); Pollen der Benachrichtigungen DPS2_POLL_IND_DX_OUT() DPS2_GET_DIAG_BUF_PTR() SPC 3 Software (Interruptfunktion)
AUT Seite SchnittStellenCenter Fürth Beschreibung der DP- Dienste (SPC3) Set_Slave_Address (SAP 55) Dienst kann gesperrt werden ( R_SSA_PUF_PTR= 0H), wenn Adresse anders eingestellt werden kann. SPC 3 trägt alle angekommenen Telegramme in die AUX_Puffer 1/2 ein, tauscht den AUX_Puffer 1/2 gegen den SSA-Puffer aus, aktualisiert die Datenlänge R_LEN_SSA_Data, generiert den IR New_SSA_Data, speichert die neue Stationsadresse und den neuen Parameter REAL_NO_ADD_CHANGE ab. Der Anwender entsorgt den Puffer und gibt SPC 3 wieder frei durch SSA_Puffer_Free_Cmd (Adr. 14 H).
AUT Seite SchnittStellenCenter Fürth Beschreibung der DP- Dienste (SPC3) Set_Parameter (SAP 61) Der SPC 3 wertet die Bytes 0.. 6/7 Telegrammbytes aus Byte 7: WD_Base, DIS_ Start, DIS_Stop alle weiteren Parametrierdaten sind anwenderspezifisch auszuwerten. (Adressierung über R_Prm_puf_Ptr )
AUT Seite SchnittStellenCenter Fürth Beschreibung der DP-Dienste (SPC3) Check_Config (SAP 62) SPC 3 trägt alle angekommenen Telegramme in die AUX_Puffer 1/2 ein, tauscht den AUX_Puffer 1/2 gegen den Config-Puffer aus, hinterlegt die eingetragene Datenlänge in R_Len_Cfg_Data generiert den IR New_Cfg_Data. Der Anwender überprüft die "User_Config_Daten" und quittiert dies mit User_Cfg_Data_Okay_Cmd oder...._Not_Okay_Cmd. Bei richtiger Konfigurierung wird in Data_Exchg Mode verzweigt.
AUT Seite SchnittStellenCenter Fürth Beschreibung der DP- Dienste (SPC3) Slave Diagnose (SAP 60) Es stehen 2 Puffer zur Verfügung( Sendepuffer des SPC3 und Puffer für den Anwender) Das Senden von Diagnosedaten wird mit NEW_DIAG_CMD eingeleitet. Bestätigung erfolgt mit " Diag_buffer_changed" Interrupt. Zusätzlich wird das Diag_Flag gesetzt, d.h. beim nächsten Read/Write Zyklus wird mit hochprioren Daten geantwortet.
AUT Seite SchnittStellenCenter Fürth Beschreibung der DP- Dienste (SPC3) Data_Exchange (Default_SAP) Der SPC3 schreibt die Output Daten in den D-Puffer und wechselt den D und N- Puffer aus. Der DX-Out Interrupt wird generiert. Der Anwender holt sich die Daten aus dem U-Puffer ab indem er den N und U-Puffer auswechdelt. (Wegen Read- Output) Global_Control (SAP 58) Dieser Dienst wird vom SPC 3 selbständig bearbeitet Diese Informationen stehen der Anwendung ebenfalls zur Verfügung.
AUT Seite SchnittStellenCenter Fürth PROFIBUS Schnittstelle 75ALS176D U+ EN1 GND EN2 100K 2P5 2M 68n 2P5 2M 680R 1K2 IN U- HCPL7101 U+ U- U+ 68n EN 2M P5 680R 1K2 OUT EN 680R300R 680R HCPL0601 2P5 & HC R U+ IN U- 300R 68n 680R OUT EN U- U+ 20K M M HCPL7101 2P5 2M 300R M CTS RTS TXD RXD Important: electrical isolation to bus P5 and 2P5 Shield Driver select : Differential voltage > 2V Layout :lines must be kept as short as possible. M A-line B-line RTS 2M 2P M nF EN
AUT Seite SchnittStellenCenter Fürth Integration des SPC 3 AB Takt -Generator 48MHz 80C32/ C501 Port 0 ALE Port 2 CLK XWR XRD X/INT AB8 AB9 AB10 Lowcost - System mit 80C32 1K 3K3 Mode GNDVDD RTS TxD RxD XCTS 1K GND SPC3 Reset SPC3 CS-Dekoder DB 7..0 Daten DB 7..0 Adreß-Latch A / D (0000 0XXXBIN WR RD INT0 1K Teiler:2/4 DIVIDER 12/24 MHz
AUT Seite SchnittStellenCenter Fürth Integration des SPC 3 A / D (0000 0XXXBIN WR RD INT0 Takt -Generator 48 MHz 80C32 20/16MHz Port 0 Port 2 CLK XWR XRD X/INT AB8 AB9 AB10 80C32-System mit ext. Speicher (C32-Mode) 1K 3K3 Mode GNDVDD SPC3 Reset RTS TxD RxD XCTS 1K GND ALE Adreß- Latch EPROM 64kB RAM 32kB Adreß- Dekoder AB Reset PSEN SPC3 RD WR DB 7..0 Daten DB 7..0 Adreß-Latch AB /24 MHz Teiler :2/4 DIVIDER 1K
AUT Seite SchnittStellenCenter Fürth Übergang vom SPC 3 zum SPC 4 SPC 3SPC 4 PIN 10: AB 10 InputXINTCI Output (Interrupt, not used ) PIN 13: XDATAEXCH OutputXHOLDTOKEN (not used, controlled by programcontrolled by software) Synchronisation RD / CLK CLK RD 4 5 SET CLK DATA RESET CLK RD 5V SPC4 CLK 74XX74
AUT Seite SchnittStellenCenter Fürth Intelligente Slavelösungen mit dem SPC 4 SPC 4 SW für FMS SW für PASW für DP Server Software Hardware FDL-Zugang durch den Anwender SPC4: 44 PIN-EIAJ QFP-Gehäuse
AUT Seite SchnittStellenCenter Fürth Intelligente Slavelösungen mit dem SPC 4 freier FDL- Zugang wird unterstützt durch: 5 Systemmanagement Service Access Points (SAP´s) Default- SAP 64 SAP´s (Struktur vorgegeben) Unterstützte PROFIBUS DP-Dienste in HW realisiert: Data-Exchange Read-Input-Data Read-Output- Data Global-Control (Sync,Freeze, Clear-Data) Diagnose, Parametrierung, Konfigurierung wird durch die FLC -Software( Server Software) realisiert.
AUT Seite SchnittStellenCenter Fürth PROFIBUS PA mit dem SPC4 und SIM 1 SIM 1 Master Controller SIM 1 Slave Controller Applic. Controller Sensor SIM 1 Sensor V CC 0VV CC 0V Steuerung/ Leitsystem/ PC SPC BusmasterSlave Bus- Speisegerät Power V Bus+ V Bus- V V V V Bus+ V V
AUT Seite SchnittStellenCenter Fürth Intelligente Slavelösungen mit dem SPC 4 ( FMS / PA Dienste) DienstRequester Responder Initiatex Abortxx Rejectx Statusx Identifyx Get-OV (Kurzform/Langform)x Readx Writex Phys Readx Phys Writex Information Reportx Event Notification(niederprior)x Acknowledge-Event-Notificationx Alter-Event-Condition-Monitoringx
AUT Seite SchnittStellenCenter Fürth Intelligente Slavelösungen mit dem SPC 4 (Speicheraufteilung 1) 0H 1FFH 200H 2FFH 300H 3FFH 0H 5FFH 1,5 kB RAM Latches 512 Byte allgemeine Parameter, SAP-Liste 256 Byte Steuerwerk Parameter 256 Byte Speicherfenster Mikro- Prozessor SPC4 B a s e p o i n t e r