AUT Seite 1SchnittStellenCenter Fürth
Intelligente Slave-
lösungen
mit dem SPC3
AUT Seite 2SchnittStellenCenter 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 3SchnittStellenCenter 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 4SchnittStellenCenter Fürth
Intelligente DP - Slavelösungen mit dem SPC 3(Speicheraufteilung des internen RAM´s)
Adresse Funktion
000H Steuerwerkparameter
interne ArbeitszellenLatches/Register
(21 Byte)
016H Organisatorische
Parameter
(42 Byte)
040H DP- 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 5SchnittStellenCenter Fürth
Intelligente DP - Slavelösungen mit dem SPC 3
Segment 0
Segment 191
8 Bit Segmentadr. enthält Anfangsadr. eines 8 Byte Segments
10 0
3 Bit nach links
AUT Seite 6SchnittStellenCenter Fürth
AdresseIntel / Motorla
Name Bit Nr. Bedeutung (Read-Zugriff !)
00H 01H Int-Req-Reg 7..0 Interrupt- Controller - Register01H 00H Int-Req-Reg 5..802H 03H Int--Reg 7..003H 02H Int--Reg 15..804H 05H Status-Reg 7..0 Status - Register05H 04H Status-Reg 15..806H 07H reserved07H 06H
08H DIN_Puffer_SM 7..0 Puffer-Zuordnung der DP_Din_Puffer_State_Machine09H New_DIN_Puffer_Cmd 1..0 Der Anwender stellt einen neuen DP-Din-Puffer im N-
Zustand bereit0AH DOUT_Puffer_SM 7..0 Puffer-Zuordnung der DP_Dout_Puffer_State_Machine0BH Next_DOUT_Puffer_Cmd 1..0 Der Anwender holt den letzten DP-Dout-Puffer aus dem
N-Zustand ab0CH DIAG_Puffer_SM 3..0 Puffer-Zuordnung der DP_Diag_Puffer_State_Machine0DH New_DIAG_Puffer_Cmd 1..0 Der Anwender stellt einen neuen DP-Diag-Puffer dem
SPC3 bereit0EH User_Prm_Data_OK 1..0 Der Anwender quittiert die User-Parametrierdaten eines
Set_Param-Telegramms positiv0FH User_Prm_Data_NOK 1..0 Der Anwender quittiert die User-Parametrierdaten eines
Set_Param-Telegramms negativ10H User_Cfg_Data_OK 1..0 Der Anwender quittiert die Konfigurierdaten eines
Check_Config-Telegramms positiv11H User_Cfg_Data_NOK 1..0 Der Anwender quittiert die Konfigurierdaten eines
Check_Config-Telegramms negativ12H reserved user_ddb_prm_data_ok (siehe DPS2 Beschreibung)13H user_ddb_prm_data_nok14H SSA_buffer_free_cmd Der Anwender hat die Daten aus dem SSA-Puffer geholt
und gibt ihn wieder frei15H reserved
SPC3 Speicherstruktur
AUT Seite 7SchnittStellenCenter Fürth
AdresseIntel /Motorola
Name Bit Nr. Bedeutung (Write-Zugriff !)
00H 01H Int-Req-Reg 7..0 Interrupt- Controller - Register
01H 00H Int-Req_Reg 15..8
02H 03H Int-Ack-Reg 7..0
03H 02H Int-Ack-Reg 15..8
04H 05H Int--Mask-Reg 7..0
05H 04H Int--Mask-Reg 15..8
06H 07H Mode-Reg0 7..0 Parametrierung von Einzelbits
07H 06H Mode-Reg0 15..8
08H Mode-Reg1-S 7..0
09H Mode-Reg1-R 7..0
0AH WD_Baud_Ctrl_Val 7..0 Wurzelwert für Baudratenüberwachung
0BH MinTsdr_Val 7..0 MinTsdr Zeit
0CH
0DH reserved
0EH
0FH
10H
11H
12H
13H
14H
15H
SPC3 Speicherstruktur
AUT Seite 8SchnittStellenCenter Fürth
Organisatorische Parameter im SPC3
Adresse
Intel /Motorola
Name Bit Nr. Bedeutung
16H R_TS_Adr 7..0 Stationsadresse des jeweiligen SPC3
17H reserviert Pointer auf eine Speicherzelle, in der 0FFH steht
18H 19H R_User_Wd_Value 7..0
19H 18H R_User_Wd_Value 15 ..8
1AH R_Len_Dout_Puf Länge der 3 Dout-Puffer
1BH R_Dout_buf_Ptr1 Segmentbasisadresse des Dout-Puffers 1
1CH R_Dout_buf_Ptr2 Segmentbasisadresse des Dout-Puffers 2
1DH R_Dout_buf_Ptr3 Segmentbasisadresse des Dout-Puffers 3
1EH R_Len_Din_buf Länge der 3 Din-Puffer
1FH R_Din_buf_Ptr1 Segmentbasisadresse des Din-Puffers 1
20H R_Din_buf_Ptr2 Segmentbasisadresse des Din-Puffers 2
21H R_Din_buf_Ptr3 Segmentbasisadresse des Din-Puffers 3
22H mit 00H vorbelegen
23H mit 00H vorbelegen
24H R_Len_Diag_buf1 Länge des Diag-Puffers 1
25H R_Len_Diag_buf2 Länge des Diag-Puffers 2
26H R_Diag_Puf_Ptr1 Segmentbasisadresse des Diag-Puffers 1
AUT Seite 9SchnittStellenCenter Fürth
Organisatorische Parameter im SPC327H R_Diag_Puf_Ptr2 Segmentbasisadresse des Diag-Puffers 228H R_Len_Cntrl_buf1 Länge des Aux-Puffers1 und den ihm zugehörenden Control-Puffer,
z.B. SSA-Puf, Prm-Puf, Cfg-Puf, Read-Cfg-Puf29H R_Len_Cntrl_buf2 Länge des Aux-Puffers2 und den ihm zugehörenden Control-Puffer,
z.B. SSA-Puf, Prm-Puf, Cfg-Puf, Read-Cfg-Puf2AH R_Aux_buf_Sel Bitarray, indem die Zuordnungen der Aux-Puffer1/2 zu den
Control-Puffern SSA-Puf, Prm-Puf, Cfg-Puf definiert sind2BH R_Aux_buf_Ptr1 Segmentbasisadresse des Auxilary-Puffers12CH R_Aux_buf_Ptr2 Segmentbasisadresse des Auxilary-Puffers22DH R_Len_SSA_Data Länge der eingetragenen Daten im Set_Slave_Address-Puffer2EH R_SSA_buf_Ptr Segmentbasisadresse des Set_Slave_Address-Puffers2FH R_Len_Prm_Data Länge der eingetragenen Daten im Set_Param-Puffer30H R_Prm_buf_Ptr Segmentbasisadresse des Set_Param-Puffers31H R_Len_Cfg_Data Länge der eingetragenen Daten im Check_Config-Puffer32H R_Cfg_buf_Ptr Segmentbasisadresse des Check_Config-Puffers33H R_Len_Read_Cfg_Data Länge der eingetragenen Daten im Get_Config-Puffer34H R_Read_Cfg_buf_Ptr Segmentbasisadresse des Get_Config-Puffers35H mit 00H vorbelegen36H R_DDB_Prm_buf_Ptr Segmentbasisadresse des DDBout-Puffers37H mit 00H vorbelegen38H mit 00H vorbelegen39H R_Real_No_Add_Change Dieser Parameter gibt an, ob die DP-Slave-Adresse zu einem
späteren Zeitpunkt nochmals geändert werden darf.3AH R_Ident_Low Der Ident_Low-Wert wird vom Anwender parametriert3BH R_Ident_High Der Ident_High-Wert wird vom Anwender parametriert3CH R_GC_Command Das zuletzt empfangene Global_Control_Command-3DH R_Len_Spec_Prm_buf Ist der Spec_Prm_Puffer_Mode parametriert (siehe Mode-Register
0), so definiert diese Zelle die Länge des Param-Puffers
AUT Seite 10SchnittStellenCenter Fürth
Pufferaufteilung im Datenbereich des SPC 3
Moderegister 0
Adresse Bitposition Bezeichnung
Steuer-
register
7 6 5 4 3 2 1 0
06H
(Intel)
Freeze_
Suppor
ted
Sync_
Suppor
ted
EARLY
_RDY
INT_
POLMinTSDR
DIS_
STOP_
CON
TROL
DIS_
START
_
CON
TROL
Mode-Reg0
7..0
Adresse Bitposition Bezeichnung
Steuer-
register
15 14 13 12 11 10 9 8
07H
(Intel)
Spec_Cl
ear_Mo
de
*)
Spec_Prm
_Puf_Mod
e
**)
WD_
Test
User_
Time
base
EOI_
Time
base
DP_
Mode
Mode-Reg0
13 .. 8
AUT Seite 11SchnittStellenCenter Fürth
Moderegister 1
Pufferaufteilung im Datenbereich des SPC 3
Adresse Bitposition Bezeichnung
Steuer-
register
7 6 5 4 3 2 1 0
08H Res_
User_W
D
EN_
Change
_Cfg_
Puffer
User_
Leave_
Master
Go_
Offline
EOI START
_
SPC3
Mode-Reg_S
7..0
09H Res_
User_W
D
EN_
Change
_Cfg_
Puffer
User_
Leave_
Master
Go_
Offline
EOI START
_
SPC3
Mode-Reg_R
7..0
AUT Seite 12SchnittStellenCenter Fürth
Statusregister
Pufferaufteilung im Datenbereich des SPC 3
Adresse Bitposition BezeichnungSteuer-register
7 6 5 4 3 2 1 0
04H(Intel)
WD_State DP_State RAM_Access-Violatio
n
Diag_Flag
Offline/Passive-
Idle
Status-Reg7..0
1 0 1 0
Adresse Bitposition BezeichnungSteuer-register
15 14 13 12 11 10 9 8
05H(Intel)
SPC3 Release Baudrate Status-Reg15 .. 8
3 2 1 0 3 2 1 0
AUT Seite 13SchnittStellenCenter 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.).
Adresse Bitposition Bezeichnung
Steuer-
register
7 6 5 4 3 2 1 0
00H
(Intel)
Res Res Res User_Timer_Clock
WD_DP_Mode_Timeout
Baud_rate_Detect
Go/LeaveData_EX
MAC_Reset
Int-Req-Reg
7..0
Adresse Bitposition Bezeichnung
Steuer-
register
15 14 13 12 11 10 9 8
01H
(Intel)
Res Res DX_OUT Diag_Puffer_Changed
New_Prm_Data
New_Cfg_Data
New_SSA_Data
New_GCCom
mand
Int-Req-Reg 7
15..8
Interruptregister
Pufferaufteilung im Datenbereich des SPC 3
AUT Seite 14SchnittStellenCenter Fürth
Zuordnung der Hilfspuffer im SPC 3
Adresse Bitposition Bezeichnung
RAM-
register
7 6 5 4 3 2 0
2AH 0 0 0 0 0 Set_
Slave
_Adr
Check
_
Cfg
Set_
Prm
R_Aux_Puf_Sel
X1 X1 X1 Codierung siehe unten
X1 Codierung
0 Aux_Puffer1
1 Aux_Puffer2
AUT Seite 15SchnittStellenCenter Fürth
Die Nettodaten sind folgendermaßen im SSA-Puffer abgelegt:
Byte Bitposition Bezeichnung7 6 5 4 3 2 1 0
0 New_Slave_Address1 Ident_Number_High2 Ident_Number_Low3 No_Add_Chg
4-243 Rem_Slave_Data weitereanwendungsspezifischen Daten
Datenformat des Set_Slave_Address-Telegramms
AUT Seite 16SchnittStellenCenter Fürth
Anwenderparameter das SPC 3
Byte Bitposition Bezeichnung7 6 5 4 3 2 1 0
0 LockReq
Unlo.Req
SyncReq
FreeReq
WDon
Res Res Res Stationsstatus
1 WD_Fact_12 WD_Fact_23 MinTSDR4 Ident_Number_High5 Ident_Number_Low6 Group_Ident7 0 0 0 0 0 WD_
BaseDisStop
DisStart
Spec_User_Prm_Byte
8-243 User_Prm_Data
AUT Seite 17SchnittStellenCenter Fürth
Anwenderparameter
Byte 7 Spec_User_Prm_Byte
Bit Name Bedeutung Default-Zustand
0 Dis_Startbit Mit diesem Bit wird die Startbit-
Überwachung im Receiver abgeschaltet
Dis_Startbit= 1 ,
d.h. die Startbit-Überwachung ist
abgeschaltet
1 Dis_Stopbit Mit diesem Bit wird die Stopbit-
Überwachung im Receiver abgeschaltet
Dis_Stopbit= 0,
d.h. die Stopbit-Überwachung ist nicht
abgeschaltet
2 WD_Base Dieses Bit legt fest, mit welcher
Zeitbasis der Watchdog getaktet wird
WD_Base = 0: Zeitbasis 10 ms
WD_Base = 1: Zeitbasis 1 ms
WD_Base= 0,
d.h. Zeitbasis ist 10 ms
3-7 res mit 0 zu parametrieren 0
AUT Seite 18SchnittStellenCenter Fürth
Adresse Bitposition BezeichnungSteuer-register
7 6 5 4 3 2 1 0
0EH 0 0 0 0 0 0 User_Prm_Data_Okay0 0 User_Prm_Finished0 1 PRM_Conflict1 1 Not_Allowed
Adresse Bitposition BezeichnungSteuer-register
7 6 5 4 3 2 1 0
0FH 0 0 0 0 0 0 User_Prm_Data_Not_Okay0 0 User_Prm_Finished0 1 PRM_Conflict1 1 Not_Allowed
Codierung von User_Prm_Data_Not/_Okay_Cmd
AUT Seite 19SchnittStellenCenter Fürth
Adresse Bitposition BezeichnungSteuer-register
7 6 5 4 3 2 1 0
10H 0 0 0 0 0 0 User_Cfg_Data_Okay0 0 User_Cfg_Finished0 1 Cfg_Conflict1 1 Not_Allowed
Adresse Bitposition BezeichnungSteuer-register
7 6 5 4 3 2 1 0
11H 0 0 0 0 0 0 User_Cfg_Data_Not_Okay0 0 User_Cfg_Finished0 1 Cfg_Conflict1 1 Not_Allowed
Codierung von User_Cfg_Data_Not/_Okay_Cmd
AUT Seite 20SchnittStellenCenter Fürth
Adresse Bitposition Bezeichnung
Steuer-register
7 6 5 4 3 2 0
0CH 0 0 0 0 D_Puf2 D_Puf1 Diag_Puffer_SM
X1 X2 X1 X2 Codierung siehe unten
X1 X2 Codierung
0 0 jeweils für D_Puf2 bzw. D_Puf1
0 1 User
1 0 SPC3
1 1 SPC3_Send_Mode
Diag_Puffer-Zuordnung
Adresse Bitposition Bezeichnung
Steuer-
register
7 6 5 4 3 2 1 0
0DH 0 0 0 0 0 0 New_Diag_Cmd
0 0 no Buffer
0 1 Diag_Puf1
1 0 Diag_Puf2
Codierung von Diag_Puffer_SM, New_Diag_Cmd
AUT Seite 21SchnittStellenCenter Fürth
Byte Bitposition Bezeichnung
7 6 5 4 3 2 1 0
0 Ext_DiagOverf
StatDiag
Ext_Diag
Platzhalter
1 Platzhalter
2 Platzhalter
3 Platzhalter
4 Platzhalter
5 Platzhalter
6-n vom Anwender einzutragen Ext_Diag_Data (n = max 243)
Aufbau des Diagnose-Puffers bei Übergabe an den SPC3
AUT Seite 22SchnittStellenCenter Fürth
Adresse Bitposition Bezeichnung
Steuer-
register
7 6 5 4 3 2 0
0AH F U N D Dout_Puffer_SM
X1 X2 X1 X2 X1 X2 X1 X2 Codierung siehe unten
X1 X2 Codierung
0 0 Nil
0 1 Dout_Puf_Ptr1
1 0 Dout_Puf_Ptr2
1 1 Dout_Puf_Ptr3
Dout_Puffer-Verwaltung
AUT Seite 23SchnittStellenCenter Fürth
Adresse Bitposition Bezeichnung
Steuer-
register
7 6 5 4 3 2 1 0
0BH 0 0 0 0 U_Puffer
Cleared
State_U_
Puffer
Ind_U_Puffer
Next_Dout_Puf_Cmd
0 1 Dout_Puf_Ptr1
1 0 Dout_Puf_Ptr2
1 1 Dout_Puf_Ptr3
0 kein neuer U-Puffer
1 neuer U-Puffer
0 U-Puffer enthält Daten
1 U-Puffer wurde gelöscht
Next_Dout_Puffer_Cmd
AUT Seite 24SchnittStellenCenter 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.
Adresse Bitposition Bezeichnung
RAM-
zelle
7 6 5 4 3 2 1 0
3CH Res Res Sync Unsync
Freeze Unfreeze
Clear_Data
Res R_GC_Command
Bit Bezeichnung Bedeutung
0 Reserved
1 Clear_Data Mit diesem Kommando werden die Output-Daten in 'D' gelöscht und nach
'N' gewechselt
2 Unfreeze Mit "Unfreeze" wird das Einfrieren der Input-Daten aufgehoben
3 Freeze Die Input-Daten werden von 'N' nach 'D' geholt und "eingefroren". Neue
Input-Daten werden erst wieder geholt wenn der Master das nächste
'Freeze'-Kommando sendet
4 Unsync Das Kommando "Unsync" hebt das "Sync"-Kommando auf
5 Sync Die mit einem WRITE_READ_DATA-Telegramm übergebenen Output-
Daten werden von 'D' nach 'N' gewechselt. Die nachfolgend übertragenen
Output-Daten werden solange in 'D' gehalten, bis das nächste 'Sync'-
Kommando gegeben wird
6,7 Reserved Die Bezeichnung "Reserved" gibt an, daß diese Bits für zukünftige
Funktionserweiterungen reserviert sind
Datenformat des Global_Control-Telegramms
AUT Seite 25SchnittStellenCenter Fürth
CS- Logik im SPC3
ALE
AD 0 ..7
Processor
SPC 3
A8 .. 10
A 0..10
CS
1,5 kByte RAM
in the SPC 3
A 11..15 alle 0
Addreß-
latch AD 0 ..7
AUT Seite 26SchnittStellenCenter 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 PufferU-Puffer: User kann Daten verarbeiten
Puffer Puffer Puffer
Austausch Austauschdurch SPC 3 durch AW SW
N UD
USER
Puffer Puffer Puffer
Austausch Austauschdurch SPC 3 durch AW SW
N UD
PROFI-BUS
AUT Seite 27SchnittStellenCenter 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 28SchnittStellenCenter 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. 4-244*/ } DPS2_BUFINIT;
AUT Seite 29SchnittStellenCenter 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 30SchnittStellenCenter 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 31SchnittStellenCenter 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 32SchnittStellenCenter 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 33SchnittStellenCenter 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 34SchnittStellenCenter 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 35SchnittStellenCenter 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 36SchnittStellenCenter 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 37SchnittStellenCenter Fürth
PROFIBUS Schnittstelle
75ALS176D
1
1
2
U+EN1GNDEN2
100K
100K
2P5
2M
68n2P5
2M
680R
1K2
IN
U-
HCPL7101
U+
U-
U+68n
68n
EN
2M
P5
P5
680R
1K2
OUT
EN
680R
300R
680R
HCPL0601
2P5
&2
3
74HC132300R
U+
IN
U-
300R
68n
68n
680R OUT
EN
U-
U+
20K
M
M
HCPL71012P5
2M
300RMCTS
RTS
TXD
RXD
Important: electrical isolation to busP5 and 2P5
Shield
1
4
2
Driver select :Differential voltage > 2V
Layout :lines must be kept as short as possible.
M
A-line
B-line
RTS
2M
2P5
6
7
1
2
5
3
8
1M2.2 .. 22nF
835
EN
9
8
1
2
34
567
AUT Seite 38SchnittStellenCenter Fürth
Integration des SPC 3
AB 15...8
Takt -Generator48MHz
80C32/C501
Port 0
ALE
Port 2
CLKXWRXRDX/INT
AB8AB9AB10
Lowcost - System mit 80C32
1K 1K3K3
Mode
GND VDD
RTS
TxD
RxD
XCTS
1K
GND
SPC3Reset
Reset
SPC3
CS-Dekoder
DB 7..0Daten
DB 7..0Adreß-Latch
A / D 7...0
(0000 0XXXBIN
WRRD
INT0
1K
Teiler :2/4
DIVIDER12/24 MHz
AUT Seite 39SchnittStellenCenter Fürth
Integration des SPC 3
A / D 7...0
(0000 0XXXBIN
WRRD
INT0
Takt -Generator48 MHz
80C3220/16MHz
Port 0
Port 2
CLKXWRXRDX/INT
AB8AB9AB10
80C32-System mit ext. Speicher (C32-Mode)
1K 1K 3K3
Mode
GND VDD
SPC3Reset
RTS
TxD
RxD
XCTS
1K
GND
ALE
Adreß-Latch
EPROM64kB
RAM32kB
Adreß-Dekoder
AB 15...0
Reset
PSEN
SPC3
RD WR
DB 7..0Daten
DB 7..0Adreß-Latch
AB 15...8
12/24 MHz
Teiler:2/4
DIVIDER
1K
AUT Seite 40SchnittStellenCenter Fürth
Übergang vom SPC 3 zum SPC 4
SPC 3 SPC 4
PIN 10: AB 10 Input XINTCI Output (Interrupt, not used )
PIN 13: XDATAEXCH Output XHOLDTOKEN (not used, controlled by program controlled by software)
Synchronisation RD / CLKCLK
RD4
5
SET
CLK
DATA
RESET
CLK
RD
5V
SPC4
CLK
74XX74
AUT Seite 41SchnittStellenCenter Fürth
Intelligente Slavelösungen mit dem SPC 4
SPC 4
SW fürFMS SW für PASW für DP
Server Software
Hardware
FDL-Zugang durch den Anwender
SPC4: 44 PIN-EIAJ QFP-Gehäuse
AUT Seite 42SchnittStellenCenter 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 43SchnittStellenCenter Fürth
PROFIBUS PA mit dem SPC4 und SIM 1
SIM 1
Master
Controller
SIM 1
Slave
Controller
Applic.
Controller
Sensor
SIM 1
Sensor
VCC
0V VCC
0V
Steuerung/Leitsystem/PC
SPC 4
8051
Busmaster Slave Slave
Bus-
Speisegerät
Power
Power
VBus+
VBus-VBus-
VBus-
VBus-VBus+ VBus+ VBus+
AUT Seite 44SchnittStellenCenter Fürth
Intelligente Slavelösungen mit dem SPC 4(FMS / PA Dienste)
Dienst Requester Responder
Initiate xAbort x xReject xStatus xIdentify xGet-OV (Kurzform/Langform) xRead xWrite xPhys Read xPhys Write xInformation Report xEvent Notification(niederprior) xAcknowledge-Event-Notification xAlter-Event-Condition-Monitoring x
AUT Seite 45SchnittStellenCenter Fürth
Intelligente Slavelösungen mit dem SPC 4 (Speicheraufteilung 1)
0 H
1 F F H2 0 0 H
2 F F H3 0 0 H
3 F F H
0 H
5 F F H
1 , 5 k B R A M
L a t c h e s
5 1 2 B y t ea l lg e m e i n eP a ra m e t e r ,S A P - L is t e
2 5 6 B y t eS t e u e r w e rkP a ra m e t e r
2 5 6 B y t eS p e i c h e r f e n s t e r
M i k r o -P r o z e s s o r
S P C 4
Bas
epoi
nter
Top Related