Kurzbeschreibung
Parameter Funktionsweise Ein/Ausgänge Limitierungen Querverweise Beispiele Profibus-Funktionen
Syntax... Interpret-Funktionen...
Bitte benutzen Sie das neue Modul SoftnetDP !
 | Kurzbeschreibung
Modul Interpret +
Profibus-Funktionen |
 | Parameter
siehe Modul Interpret |
 | Funktionsweise
siehe Modul Interpret |
 | Ein-/Ausgänge
siehe Modul Interpret |
 | Limitierungen
Hardware: Profibus DP, Fa. Hilscher
Software: Device Driver WINT-PB/E bzw. WI95-PB/E, Protocol PROFIBUS, Fa.
Hilscher |
 | Querverweise
CAN IEEE488
RS232 |
 | Beispiele
 | char a[2]; char e[200];
init
{ DevInit(); }
execute
{
a[0] = itoc(0);
a[1] = itoc(1);
DevCommunicate( 2, 0, a, 2, 0, e);
}
done
{ DevExit(); } |
 | input trigger I0( "TYPEINFO",
"TypeInfo", "SWORD[]", "TIME_DOMAIN" );
output
O1("TYPEINFO","TypeInfo","SWORD[]","TIME_DOMAIN");
output
O2("TYPEINFO","TypeInfo","SWORD[]","TIME_DOMAIN");
int iOut; int i; int z;
char a[200]; // Out to SPS
char e[200]; // In from SPS
init
{ DevInit(); } //Initialisierung der Profibuskarte
// 16-Bit-Word to SPS, 16-Bin-Word from SPS (PEW 16, PAW 0)
execute
{
z = 0;
for ( i=0; i<8; i++ )
{
a[z++] = itoc( iSHR(I0[i],8) ); //high Byte
a[z++] = itoc( I0[i]&0x00ff ); //low Byte
}
// DevCommunicate( Txlen, TxOffset, TxBuffer, Rxlen, RxOffset, RxBuffer )
// TxLen = Anzahl zu sendender Bytes
// TxOffset = Startadresse der Datenübertragung
// TxBuffer = Sendepuffer
// RxLen = Anzahl zu empfangener Bytes
// RxOffset = Startadresse der zu empfangenden Bytes
// RxBuffer = Empfangspuffer
DevCommunicate( 16, 16, a, 4, 0, e );
iOut = ctoi(e[0]);
iOut = iSHL( iOut, 8 );
iOut = iOut + ctoi( e[1] );
O1 << iOut;
iOut = ctoi( e[2] );
iOut = iSHL( iOut, 8 );
iOut = iOut + ctoi( e[3] );
O2 << iOut;
}
done
{ DevExit(); } |
|
 | Profibus-Funktionen
int DevOpenDriver();
int Init();
int DevCloseDriver();
int DevGetBoardInfo( int NumberOfBoards, char *abDriverVersion, int *tBoard);
int DevInitBoard();
int DevExitBoard();
int DevReset( int usMode, int ulTimeout);
int DevSetHostState( int usMode, int ulTimeout);
int DevPutMessage( char *Header, char *Message, int ulTimeout);
int DevGetMessage( int usSize, char *Header, char *Message, int ulTimeout);
int DevPutTaskParameter( int usNumber, char *UserData);
int DevGetTaskParameter( int usNumber, char *UserData);
int DevGetTaskState( int usNumber, void *UserData);
int DevGetInfo( int usInfoArea, int usSize, char *pvData);
int DevTriggerWatchDog( int usFunction, int *usDevWatchDog);
int DevExchangeIO( int usSendOffset, int usSendSize, char
*pvSendData,
int usReceivOffset, int usReceiveSize, char *pvReceiveData,
int ulTimeout);
int DevExchangeIOEx( int usSendOffset, int usSendSize, char *pvSendData,
int usReceivOffset, int usReceiveSize, char *pvReceiveData,
int ulTimeout);
int DevExchangeIOErr( int usSendOffset, int usSendSize, char *pvSendData,
int usReceivOffset, int usReceiveSize, char *pvReceiveData,
int ulTimeout);
int DevReadSendData( int usOffset, int usSize, void *pvSendData);
int DevReadWriteRAWData( int usMode, int usOffset, int usSize, void *pvSendData);
int DevInit();
int DevExit();
int DevCommunicate( void *SendSize, void *SendOffset, void *SendBuffer,
void *RecvSize, void *RecvOffset, void *ReceiveBuffer);
|
|