Herunterladen Inhalt Inhalt Diese Seite drucken

Mitsubishi Electric MELFA CR750 Bedienungs- Und Programmieranleitung Seite 784

Industrieroboter
Inhaltsverzeichnis

Werbung

Beispielprogramme
//Einstellung IP-Adresse, Schnittstelle usw.
memset(&destSockAddr, 0, sizeof(destSockAddr));
destAddr=inet_addr(dst_ip_address);
memcpy(&destSockAddr.sin_addr, &destAddr, sizeof(destAddr));
destSockAddr.sin_port=htons(port);
destSockAddr.sin_family=AF_INET;
// Erstellung Socket
destSocket=socket(AF_INET, SOCK_DGRAM, 0);
if (destSocket == INVALID_SOCKET) {
cerr << "ERROR: socket unsuccessful" << endl;
status=WSACleanup();
if (status == SOCKET_ERROR)
return(1);
}
MXTCMD MXTsend;
MXTCMD MXTrecv;
JOINT jnt_now;
POSE pos_now;
PULSE pls_now;
unsigned long counter = 0;
int loop = 1;
int disp = 0;
int disp_data = 0;
int ch;
float delta=(float)0.0;
long ratio=1;
int retry;
fd_set
timeval
memset(&MXTsend, 0, sizeof(MXTsend));
memset(&jnt_now, 0, sizeof(JOINT));
memset(&pos_now, 0, sizeof(POSE));
memset(&pls_now, 0, sizeof(PULSE));
while(loop) {
memset(&MXTsend, 0, sizeof(MXTsend));
memset(&MXTrecv, 0, sizeof(MXTrecv));
// Erstellung Übertragungsdaten
if(loop==1) {// Nur für das erste mal
}
else {// Für das zweite mal und folgende
11 - 18
cerr << "ERROR: WSACleanup unsuccessful" << endl;
SockSet;// Mit Select ausgewählte Socket-Gruppe
sTimeOut;// Einstellung Zeitüberschreitung (Timeout)
MXTsend.Command = MXT_CMD_NULL;
MXTsend.SendType = MXT_TYP_NULL;
MXTsend.RecvType = type;
MXTsend.SendIOType = MXT_IO_NULL;
MXTsend.RecvIOType = IOSendType;
MXTsend.CCount = counter = 0;
MXTsend.Command = MXT_CMD_MOVE;
MXTsend.SendType = type;
MXTsend.RecvType = type*_mon[0];
MXTsend.RecvType1= type_mon[1];
MXTsend.RecvType2= type_mon[2];
MXTsend.RecvType3= type_mon[3];
switch(type) {
case MXT_TYP_JOINT:
memcpy(&MXTsend.dat.jnt, &jnt_now, sizeof(JOINT));
MXTsend.dat.jnt.j1 += (float)(delta*ratio*3.141592/180.0);
Programmfunktionen und -beispiele

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis