- New drivers for EL737 and EL734 high performance
- Changes to makefiles SKIPPED: psi/dornier2.c psi/el734hp.c psi/el737driv.c psi/el737hpdriv.c psi/make_gen psi/makefile_alpha psi/psi.c psi/velodorn.c psi/velodorn.h psi/velodorn.w psi/hardsup/el737_utility.c psi/hardsup/makefile_alpha psi/tecs/makefile_alpha
This commit is contained in:
15
alpha_def
Normal file
15
alpha_def
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
#------------------------------------------------------------------------
|
||||||
|
# Some defines used further up in the makefile hierarchy of the PSI SICS
|
||||||
|
# universe.
|
||||||
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#==========================================================================
|
||||||
|
# the following lines only for fortified version
|
||||||
|
#DFORTIFY=-DFORTIFY
|
||||||
|
#FORTIFYOBJ=strdup.o fortify.o
|
||||||
|
|
||||||
|
#----------------select proper Makefile
|
||||||
|
MFLAGS= -f makefile_alpha
|
||||||
|
|
||||||
|
#------------- path to HDF installation
|
||||||
|
HDFROOT=/data/lnslib
|
2
danu.dat
2
danu.dat
@ -1,3 +1,3 @@
|
|||||||
288
|
290
|
||||||
NEVER, EVER modify or delete this file
|
NEVER, EVER modify or delete this file
|
||||||
You'll risk eternal damnation and a reincarnation as a cockroach!|n
|
You'll risk eternal damnation and a reincarnation as a cockroach!|n
|
@ -5,10 +5,6 @@
|
|||||||
# Mark Koennecke 1996-2001
|
# Mark Koennecke 1996-2001
|
||||||
# Markus Zolliker, March 2003
|
# Markus Zolliker, March 2003
|
||||||
#==========================================================================
|
#==========================================================================
|
||||||
# the following lines only for fortified version
|
|
||||||
#DFORTIFY=-DFORTIFY
|
|
||||||
#FORTIFYOBJ=strdup.o fortify.o
|
|
||||||
#==========================================================================
|
|
||||||
# assign if the National Instrument GPIB driver is available
|
# assign if the National Instrument GPIB driver is available
|
||||||
#NI= -DHAVENI
|
#NI= -DHAVENI
|
||||||
#NIOBJ= nigpib.o
|
#NIOBJ= nigpib.o
|
||||||
@ -22,10 +18,7 @@
|
|||||||
#DIFIL= difrac.o
|
#DIFIL= difrac.o
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
#----------------select proper Makefile
|
include alpha_def
|
||||||
MFLAGS= -f makefile_alpha
|
|
||||||
|
|
||||||
HDFROOT=/data/lnslib
|
|
||||||
|
|
||||||
CC = cc
|
CC = cc
|
||||||
CFLAGS = -I$(HDFROOT)/include -I. $(DFORTIFY) -DHDF4 -DHDF5 -Ipsi/hardsup \
|
CFLAGS = -I$(HDFROOT)/include -I. $(DFORTIFY) -DHDF4 -DHDF5 -Ipsi/hardsup \
|
||||||
|
@ -5,9 +5,8 @@
|
|||||||
# Mark Koennecke, November 1996
|
# Mark Koennecke, November 1996
|
||||||
# Markus Zolliker, March 2003
|
# Markus Zolliker, March 2003
|
||||||
#--------------------------------------------------------------------------
|
#--------------------------------------------------------------------------
|
||||||
# the following line only for fortified version
|
|
||||||
#DFORTIFY=-DFORTIFY -I$(SRC)..
|
include ../alpha_def
|
||||||
#==========================================================================
|
|
||||||
|
|
||||||
CC = cc
|
CC = cc
|
||||||
CFLAGS = -std1 -g $(DFORTIFY)
|
CFLAGS = -std1 -g $(DFORTIFY)
|
||||||
|
142
motor.c
142
motor.c
@ -74,6 +74,7 @@
|
|||||||
#define SPEED 9
|
#define SPEED 9
|
||||||
#define SIGN 10
|
#define SIGN 10
|
||||||
#define ECOUNT 11
|
#define ECOUNT 11
|
||||||
|
#define POSCOUNT 12
|
||||||
/*------------------------------------------------------------------------
|
/*------------------------------------------------------------------------
|
||||||
a tiny structure used in CallBack work
|
a tiny structure used in CallBack work
|
||||||
*/
|
*/
|
||||||
@ -173,6 +174,9 @@
|
|||||||
fputs(pBueffel,fd);
|
fputs(pBueffel,fd);
|
||||||
sprintf(pBueffel,"%s AccessCode %f\n",name,ObVal(self->ParArray,USRIGHTS));
|
sprintf(pBueffel,"%s AccessCode %f\n",name,ObVal(self->ParArray,USRIGHTS));
|
||||||
fputs(pBueffel,fd);
|
fputs(pBueffel,fd);
|
||||||
|
sprintf(pBueffel,"%s poscount %f\n",name,
|
||||||
|
ObVal(self->ParArray,POSCOUNT));
|
||||||
|
fputs(pBueffel,fd);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
/*-------------------------------------------------------------------------*/
|
/*-------------------------------------------------------------------------*/
|
||||||
@ -195,18 +199,145 @@
|
|||||||
SCSetInterrupt(pCon,iVal);
|
SCSetInterrupt(pCon,iVal);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/*-----------------------------------------------------------------------*/
|
||||||
|
static int evaluateStatus(pMotor self, SConnection *pCon)
|
||||||
|
{
|
||||||
|
int iRet, iCode;
|
||||||
|
MotCallback sCall;
|
||||||
|
char pBueffel[256], pError[132];
|
||||||
|
float fHard;
|
||||||
|
|
||||||
|
iRet = self->pDriver->GetStatus(self->pDriver);
|
||||||
|
if( (iRet == OKOK) || (iRet == HWIdle))
|
||||||
|
{
|
||||||
|
MotorGetSoftPosition(self,pCon,&sCall.fVal);
|
||||||
|
sCall.pName = self->name;
|
||||||
|
InvokeCallBack(self->pCall, MOTEND, &sCall);
|
||||||
|
MotorGetHardPosition(self,pCon,&fHard);
|
||||||
|
self->fPosition = fHard;
|
||||||
|
if(absf(fHard - self->fTarget) > ObVal(self->ParArray,PREC))
|
||||||
|
{
|
||||||
|
snprintf(pBueffel,131,"WARNING: %s off position by %f",
|
||||||
|
self->name, absf(fHard - self->fTarget));
|
||||||
|
SCWrite(pCon,pBueffel, eWarning);
|
||||||
|
MotorInterrupt(pCon,ObVal(self->ParArray,INT));
|
||||||
|
self->retryCount = 0;
|
||||||
|
return HWPosFault;
|
||||||
|
}
|
||||||
|
self->retryCount = 0;
|
||||||
|
return HWIdle;
|
||||||
|
}
|
||||||
|
/* motor suggests a fault */
|
||||||
|
else if(iRet == HWFault)
|
||||||
|
{
|
||||||
|
self->pDriver->GetError(self->pDriver,&iCode, pError,131);
|
||||||
|
iRet = self->pDriver->TryAndFixIt(self->pDriver,iCode, self->fTarget);
|
||||||
|
if(iRet == MOTFAIL)
|
||||||
|
{
|
||||||
|
snprintf(pBueffel,255,"ERROR: %s on %s",pError,self->name);
|
||||||
|
SCWrite(pCon,pBueffel,eError);
|
||||||
|
MotorInterrupt(pCon,ObVal(self->ParArray,INT));
|
||||||
|
self->retryCount = 0;
|
||||||
|
return HWFault;
|
||||||
|
}
|
||||||
|
else if(iRet == MOTREDO)
|
||||||
|
{
|
||||||
|
self->pDriver->RunTo(self->pDriver,self->fTarget);
|
||||||
|
self->retryCount++;
|
||||||
|
if(self->retryCount >= 3)
|
||||||
|
{
|
||||||
|
self->retryCount = 0;
|
||||||
|
return HWFault;
|
||||||
|
}
|
||||||
|
return HWBusy;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
self->retryCount = 0;
|
||||||
|
return HWBusy;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/* a positioning fault */
|
||||||
|
else if(iRet == HWPosFault)
|
||||||
|
{
|
||||||
|
self->pDriver->GetError(self->pDriver,&iCode, pError,131);
|
||||||
|
iRet = self->pDriver->TryAndFixIt(self->pDriver,iCode, self->fTarget);
|
||||||
|
if(iRet == MOTFAIL)
|
||||||
|
{
|
||||||
|
snprintf(pBueffel,255,"ERROR: %s on %s",pError,self->name);
|
||||||
|
SCWrite(pCon,pBueffel,eError);
|
||||||
|
MotorInterrupt(pCon,ObVal(self->ParArray,INT));
|
||||||
|
self->retryCount = 0;
|
||||||
|
return HWFault;
|
||||||
|
}
|
||||||
|
else if(iRet == MOTREDO)
|
||||||
|
{
|
||||||
|
self->posFaultCount++;
|
||||||
|
if(self->posFaultCount >= 4)
|
||||||
|
{
|
||||||
|
self->posFaultCount = 0;
|
||||||
|
self->retryCount = 0;
|
||||||
|
return HWPosFault;
|
||||||
|
}
|
||||||
|
self->pDriver->RunTo(self->pDriver,self->fTarget);
|
||||||
|
return HWBusy;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return HWBusy;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if(iRet == HWWarn)
|
||||||
|
{
|
||||||
|
self->pDriver->GetError(self->pDriver,&iCode,pError,131);
|
||||||
|
snprintf(pBueffel,255,"WARNING: %s on %s",pError,self->name);
|
||||||
|
SCWrite(pCon,pBueffel,eStatus);
|
||||||
|
return HWIdle;
|
||||||
|
}
|
||||||
|
self->retryCount = 0;
|
||||||
|
return iRet;
|
||||||
|
}
|
||||||
|
/*---------------------------------------------------------------------*/
|
||||||
|
static void handleMoveCallback(pMotor self, SConnection *pCon)
|
||||||
|
{
|
||||||
|
MotCallback sCall;
|
||||||
|
|
||||||
|
self->posCount++;
|
||||||
|
if(self->posCount >= ObVal(self->ParArray,POSCOUNT))
|
||||||
|
{
|
||||||
|
MotorGetSoftPosition(self,pCon,&sCall.fVal);
|
||||||
|
sCall.pName = self->name;
|
||||||
|
InvokeCallBack(self->pCall, MOTDRIVE, &sCall);
|
||||||
|
self->posCount = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/*-----------------------------------------------------------------------*/
|
||||||
|
static int MotorStatus(void *sulf, SConnection *pCon)
|
||||||
|
{
|
||||||
|
pMotor self = NULL;
|
||||||
|
int status;
|
||||||
|
|
||||||
|
assert(sulf);
|
||||||
|
self = (pMotor)sulf;
|
||||||
|
|
||||||
|
status = evaluateStatus(self,pCon);
|
||||||
|
if(status == HWBusy)
|
||||||
|
{
|
||||||
|
handleMoveCallback(self,pCon);
|
||||||
|
}
|
||||||
|
return status;
|
||||||
|
}
|
||||||
/*--------------------------------------------------------------------------
|
/*--------------------------------------------------------------------------
|
||||||
Refactor
|
Refactor
|
||||||
--------------------------------------------------------------------------*/
|
--------------------------------------------------------------------------*/
|
||||||
static int MotorStatus(void *sulf, SConnection *pCon)
|
static int MotorStatus2(void *sulf, SConnection *pCon)
|
||||||
{
|
{
|
||||||
float fHard;
|
float fHard;
|
||||||
pMotor self;
|
pMotor self;
|
||||||
int iRet,i, iCode;
|
int iRet,i, iCode;
|
||||||
static int iRetry = 0;
|
|
||||||
char pError[132];
|
char pError[132];
|
||||||
char pBueffel[256];
|
char pBueffel[256];
|
||||||
static int iPosFault = 0;
|
static int iPosFault = 0, iRetry = 0;
|
||||||
MotCallback sCall;
|
MotCallback sCall;
|
||||||
|
|
||||||
|
|
||||||
@ -354,7 +485,7 @@
|
|||||||
|
|
||||||
|
|
||||||
/* create and initialize parameters */
|
/* create and initialize parameters */
|
||||||
pM->ParArray = ObParCreate(12);
|
pM->ParArray = ObParCreate(13);
|
||||||
if(!pM->ParArray)
|
if(!pM->ParArray)
|
||||||
{
|
{
|
||||||
free(pM);
|
free(pM);
|
||||||
@ -372,6 +503,7 @@
|
|||||||
ObParInit(pM->ParArray,SPEED,"speed",0.02,usInternal);
|
ObParInit(pM->ParArray,SPEED,"speed",0.02,usInternal);
|
||||||
ObParInit(pM->ParArray,SIGN,"sign",1.0,usMugger);
|
ObParInit(pM->ParArray,SIGN,"sign",1.0,usMugger);
|
||||||
ObParInit(pM->ParArray,ECOUNT,"failafter",3.0,usMugger);
|
ObParInit(pM->ParArray,ECOUNT,"failafter",3.0,usMugger);
|
||||||
|
ObParInit(pM->ParArray,POSCOUNT,"poscount",20.0,usMugger);
|
||||||
pDriv->GetPosition(pDriv,&(pM->fPosition));
|
pDriv->GetPosition(pDriv,&(pM->fPosition));
|
||||||
pM->fTarget = pM->fPosition;
|
pM->fTarget = pM->fPosition;
|
||||||
pM->endScriptID = 0;
|
pM->endScriptID = 0;
|
||||||
@ -696,6 +828,8 @@ extern void KillPiPiezo(void *pData);
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Boundaries OK, send command */
|
/* Boundaries OK, send command */
|
||||||
|
self->posFaultCount = 0;
|
||||||
|
self->retryCount = 0;
|
||||||
self->fTarget = fHard;
|
self->fTarget = fHard;
|
||||||
iRet = self->pDriver->RunTo(self->pDriver,fHard);
|
iRet = self->pDriver->RunTo(self->pDriver,fHard);
|
||||||
if(iRet != OKOK)
|
if(iRet != OKOK)
|
||||||
|
4
motor.h
4
motor.h
@ -25,6 +25,10 @@
|
|||||||
float fTarget;
|
float fTarget;
|
||||||
float fPosition;
|
float fPosition;
|
||||||
long endScriptID;
|
long endScriptID;
|
||||||
|
int posCount; /* counter for calling the
|
||||||
|
motor callback */
|
||||||
|
int retryCount; /* for retries in status */
|
||||||
|
int posFaultCount;
|
||||||
} Motor;
|
} Motor;
|
||||||
typedef Motor *pMotor;
|
typedef Motor *pMotor;
|
||||||
/*-------------------------------------------------------------------------*/
|
/*-------------------------------------------------------------------------*/
|
||||||
|
11
network.c
11
network.c
@ -472,7 +472,7 @@ CreateSocketAdress(
|
|||||||
/*
|
/*
|
||||||
how may cycles to read in order to have a timeout
|
how may cycles to read in order to have a timeout
|
||||||
*/
|
*/
|
||||||
nLoop = timeout/10;
|
nLoop = timeout/5;
|
||||||
if(nLoop <= 0)
|
if(nLoop <= 0)
|
||||||
{
|
{
|
||||||
nLoop = 1;
|
nLoop = 1;
|
||||||
@ -480,7 +480,7 @@ CreateSocketAdress(
|
|||||||
|
|
||||||
for(i = 0; i < nLoop; i++)
|
for(i = 0; i < nLoop; i++)
|
||||||
{
|
{
|
||||||
iRet = NETAvailable(self,10);
|
iRet = NETAvailable(self,5);
|
||||||
if(iRet < 0)
|
if(iRet < 0)
|
||||||
{
|
{
|
||||||
return iRet;
|
return iRet;
|
||||||
@ -521,6 +521,13 @@ CreateSocketAdress(
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(read >= iBufLen)
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
we have filled the buffer but not found a terminator
|
||||||
|
*/
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return 0; /* timeout! */
|
return 0; /* timeout! */
|
||||||
|
4
nread.c
4
nread.c
@ -957,7 +957,7 @@ extern VerifyChannel(mkChannel *self); /* defined in network.c */
|
|||||||
|
|
||||||
assert(self);
|
assert(self);
|
||||||
|
|
||||||
/* find the entry to remove */
|
/* find the entry to read */
|
||||||
iRet = LLDnodePtr2First(self->iList);
|
iRet = LLDnodePtr2First(self->iList);
|
||||||
while(iRet != 0)
|
while(iRet != 0)
|
||||||
{
|
{
|
||||||
@ -1006,3 +1006,5 @@ extern VerifyChannel(mkChannel *self); /* defined in network.c */
|
|||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -301,6 +301,8 @@
|
|||||||
|
|
||||||
/* shut tasker down */
|
/* shut tasker down */
|
||||||
TaskerDelete(&self->pTasker);
|
TaskerDelete(&self->pTasker);
|
||||||
|
self->pTasker = NULL;
|
||||||
|
self->pReader = NULL;
|
||||||
|
|
||||||
/* save status */
|
/* save status */
|
||||||
if(!self->simMode)
|
if(!self->simMode)
|
||||||
|
@ -16,15 +16,9 @@
|
|||||||
#include "fortify.h"
|
#include "fortify.h"
|
||||||
#include "sics.h"
|
#include "sics.h"
|
||||||
#include "splitter.h"
|
#include "splitter.h"
|
||||||
|
#include "nread.h"
|
||||||
#include "rs232controller.h"
|
#include "rs232controller.h"
|
||||||
|
|
||||||
/*
|
|
||||||
own error codes
|
|
||||||
*/
|
|
||||||
#define NOTCONNECTED -2700
|
|
||||||
#define BADMEMORY -2701
|
|
||||||
#define TIMEOUT -2702
|
|
||||||
#define FAILEDCONNECT -2703
|
|
||||||
|
|
||||||
/*--------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------*/
|
||||||
void setRS232SendTerminator(prs232 self, char *term)
|
void setRS232SendTerminator(prs232 self, char *term)
|
||||||
@ -70,6 +64,12 @@ void setRS232Timeout(prs232 self, int timeout)
|
|||||||
assert(self);
|
assert(self);
|
||||||
self->timeout = timeout;
|
self->timeout = timeout;
|
||||||
}
|
}
|
||||||
|
/*---------------------------------------------------------------------*/
|
||||||
|
void setRS232Debug(prs232 self, int deb)
|
||||||
|
{
|
||||||
|
assert(self);
|
||||||
|
self->debug = deb;
|
||||||
|
}
|
||||||
/*--------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------*/
|
||||||
int writeRS232(prs232 self, void *data, int dataLen)
|
int writeRS232(prs232 self, void *data, int dataLen)
|
||||||
{
|
{
|
||||||
@ -121,6 +121,11 @@ int writeRS232(prs232 self, void *data, int dataLen)
|
|||||||
send
|
send
|
||||||
*/
|
*/
|
||||||
iRet = NETWrite(self->pSock,data,dataLen);
|
iRet = NETWrite(self->pSock,data,dataLen);
|
||||||
|
if(self->debug > 0)
|
||||||
|
{
|
||||||
|
printf("RS232 OUT: %s",(char *)data);
|
||||||
|
fflush(stdout);
|
||||||
|
}
|
||||||
|
|
||||||
if(pPtr != NULL)
|
if(pPtr != NULL)
|
||||||
free(pPtr);
|
free(pPtr);
|
||||||
@ -164,6 +169,11 @@ int readRS232(prs232 self, void *data, int *dataLen)
|
|||||||
lRead = recv(self->pSock->sockid, data,rLength,0);
|
lRead = recv(self->pSock->sockid, data,rLength,0);
|
||||||
if(lRead >= 0)
|
if(lRead >= 0)
|
||||||
{
|
{
|
||||||
|
if(self->debug > 0)
|
||||||
|
{
|
||||||
|
printf("RS232 IN: %s",(char *)data);
|
||||||
|
fflush(stdout);
|
||||||
|
}
|
||||||
*dataLen = lRead;
|
*dataLen = lRead;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
@ -172,11 +182,45 @@ int readRS232(prs232 self, void *data, int *dataLen)
|
|||||||
return (int)lRead;
|
return (int)lRead;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
not reached
|
not reached
|
||||||
*/
|
*/
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
/*--------------------------------------------------------------------*/
|
||||||
|
int readRS232TillTerm(prs232 self, void *data, int *datalen){
|
||||||
|
int iRet, replylen;
|
||||||
|
assert(self);
|
||||||
|
|
||||||
|
/*
|
||||||
|
catch an unconnected socket
|
||||||
|
*/
|
||||||
|
if(!self->pSock)
|
||||||
|
{
|
||||||
|
return NOTCONNECTED;
|
||||||
|
}
|
||||||
|
|
||||||
|
memset(data,0,*datalen);
|
||||||
|
replylen = *datalen;
|
||||||
|
iRet = NETReadTillTerm(self->pSock,self->timeout,self->replyTerminator,
|
||||||
|
(char *)data, replylen);
|
||||||
|
if(self->debug > 0)
|
||||||
|
{
|
||||||
|
printf("RS232 IN/TERM: %s",(char *)data);
|
||||||
|
fflush(stdout);
|
||||||
|
}
|
||||||
|
if(iRet == 0)
|
||||||
|
{
|
||||||
|
return TIMEOUT;
|
||||||
|
}
|
||||||
|
else if(iRet == -1)
|
||||||
|
{
|
||||||
|
return INCOMPLETE;
|
||||||
|
}
|
||||||
|
*datalen = strlen((char *)data);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
/*-----------------------------------------------------------------------*/
|
/*-----------------------------------------------------------------------*/
|
||||||
int availableRS232(prs232 self)
|
int availableRS232(prs232 self)
|
||||||
{
|
{
|
||||||
@ -190,7 +234,32 @@ int availableRS232(prs232 self)
|
|||||||
return NOTCONNECTED;
|
return NOTCONNECTED;
|
||||||
}
|
}
|
||||||
|
|
||||||
return NETAvailable(self->pSock,self->timeout);
|
return NETAvailable(self->pSock,3);
|
||||||
|
}
|
||||||
|
/*-----------------------------------------------------------------------*/
|
||||||
|
int availableNetRS232(prs232 self)
|
||||||
|
{
|
||||||
|
int status;
|
||||||
|
assert(self);
|
||||||
|
|
||||||
|
/*
|
||||||
|
catch an unconnected socket
|
||||||
|
*/
|
||||||
|
if(!self->pSock)
|
||||||
|
{
|
||||||
|
return NOTCONNECTED;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!self->registered){
|
||||||
|
if(pServ->pReader != NULL){
|
||||||
|
NetReadRegisterUserSocket(pServ->pReader,self->pSock->sockid);
|
||||||
|
self->registered = 1;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
status = NetReadReadable(pServ->pReader,self->pSock->sockid);
|
||||||
|
NetReadResetUser(pServ->pReader, self->pSock->sockid);
|
||||||
|
return status;
|
||||||
}
|
}
|
||||||
/*------------------------------------------------------------------------*/
|
/*------------------------------------------------------------------------*/
|
||||||
int transactRS232(prs232 self, void *send, int sendLen,
|
int transactRS232(prs232 self, void *send, int sendLen,
|
||||||
@ -223,10 +292,19 @@ int transactRS232(prs232 self, void *send, int sendLen,
|
|||||||
memset(reply,0,replyLen);
|
memset(reply,0,replyLen);
|
||||||
iRet = NETReadTillTerm(self->pSock,self->timeout,self->replyTerminator,
|
iRet = NETReadTillTerm(self->pSock,self->timeout,self->replyTerminator,
|
||||||
reply, replyLen);
|
reply, replyLen);
|
||||||
|
if(self->debug > 0)
|
||||||
|
{
|
||||||
|
printf("RS232 IN/TRANS: %s",(char *)reply);
|
||||||
|
fflush(stdout);
|
||||||
|
}
|
||||||
if(iRet == 0)
|
if(iRet == 0)
|
||||||
{
|
{
|
||||||
return TIMEOUT;
|
return TIMEOUT;
|
||||||
}
|
}
|
||||||
|
else if(iRet == -1)
|
||||||
|
{
|
||||||
|
return INCOMPLETE;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return iRet;
|
return iRet;
|
||||||
@ -262,6 +340,10 @@ void getRS232Error(int iCode, char *errorBuffer,
|
|||||||
"Failed to connect to terminal server",
|
"Failed to connect to terminal server",
|
||||||
errorBufferLen);
|
errorBufferLen);
|
||||||
break;
|
break;
|
||||||
|
case INCOMPLETE:
|
||||||
|
strncpy(errorBuffer,"Did not find terminator in read buffer",
|
||||||
|
errorBufferLen);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
strncpy(errorBuffer,strerror(errno),
|
strncpy(errorBuffer,strerror(errno),
|
||||||
errorBufferLen);
|
errorBufferLen);
|
||||||
@ -277,17 +359,53 @@ int initRS232(prs232 self)
|
|||||||
|
|
||||||
if(self->pSock != NULL)
|
if(self->pSock != NULL)
|
||||||
{
|
{
|
||||||
|
if(pServ->pReader != NULL){
|
||||||
|
NetReadRemoveUserSocket(pServ->pReader,self->pSock->sockid);
|
||||||
|
}
|
||||||
NETClosePort(self->pSock);
|
NETClosePort(self->pSock);
|
||||||
self->pSock = NULL;
|
self->pSock = NULL;
|
||||||
}
|
}
|
||||||
self->pSock = NETConnect(self->pHost, self->iPort);
|
self->pSock = NETConnect(self->pHost, self->iPort);
|
||||||
if(!self->pSock)
|
if(!self->pSock){
|
||||||
return FAILEDCONNECT;
|
return FAILEDCONNECT;
|
||||||
else
|
} else{
|
||||||
|
if(pServ->pReader != NULL){
|
||||||
|
NetReadRegisterUserSocket(pServ->pReader,self->pSock->sockid);
|
||||||
|
self->registered = 1;
|
||||||
|
}
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
/*------------------------------------------------------------------*/
|
||||||
|
prs232 createRS232(char *host, int iPort)
|
||||||
|
{
|
||||||
|
prs232 pNew = NULL;
|
||||||
|
|
||||||
|
/*
|
||||||
|
create data structure
|
||||||
|
*/
|
||||||
|
pNew = (prs232)malloc(sizeof(rs232));
|
||||||
|
if(!pNew)
|
||||||
|
{
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
memset(pNew, 0, sizeof(rs232));
|
||||||
|
|
||||||
|
pNew->pHost = strdup(host);
|
||||||
|
pNew->iPort = iPort;
|
||||||
|
pNew->sendTerminator = strdup("\r");
|
||||||
|
pNew->replyTerminator = strdup("\n");
|
||||||
|
pNew->timeout = 1000;
|
||||||
|
pNew->pDes = CreateDescriptor("RS232 Controller");
|
||||||
|
if(!pNew->pDes || !pNew->pHost ||
|
||||||
|
!pNew->replyTerminator || !pNew->sendTerminator)
|
||||||
|
{
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
return pNew;
|
||||||
|
}
|
||||||
/*-------------------------------------------------------------------*/
|
/*-------------------------------------------------------------------*/
|
||||||
static void KillRS232(void *pData)
|
void KillRS232(void *pData)
|
||||||
{
|
{
|
||||||
prs232 self = (prs232)pData;
|
prs232 self = (prs232)pData;
|
||||||
if(!self)
|
if(!self)
|
||||||
@ -309,6 +427,9 @@ static void KillRS232(void *pData)
|
|||||||
}
|
}
|
||||||
if(self->pSock)
|
if(self->pSock)
|
||||||
{
|
{
|
||||||
|
if(pServ->pReader != NULL){
|
||||||
|
NetReadRemoveUserSocket(pServ->pReader,self->pSock->sockid);
|
||||||
|
}
|
||||||
NETClosePort(self->pSock);
|
NETClosePort(self->pSock);
|
||||||
}
|
}
|
||||||
if(self->pHost)
|
if(self->pHost)
|
||||||
@ -590,7 +711,7 @@ int RS232Factory(SConnection *pCon, SicsInterp *pSics,
|
|||||||
void *pData, int argc, char *argv[])
|
void *pData, int argc, char *argv[])
|
||||||
{
|
{
|
||||||
prs232 pNew = NULL;
|
prs232 pNew = NULL;
|
||||||
int iRet;
|
int iRet, status;
|
||||||
char pError[256];
|
char pError[256];
|
||||||
|
|
||||||
if(argc < 4)
|
if(argc < 4)
|
||||||
@ -623,8 +744,8 @@ int RS232Factory(SConnection *pCon, SicsInterp *pSics,
|
|||||||
SCWrite(pCon,"ERROR: out of memory in RS232Factory",eError);
|
SCWrite(pCon,"ERROR: out of memory in RS232Factory",eError);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
pNew->pSock = NETConnect(pNew->pHost, pNew->iPort);
|
status = initRS232(pNew);
|
||||||
if(!pNew->pSock)
|
if(status != 1)
|
||||||
{
|
{
|
||||||
sprintf(pError,"ERROR: failed to connect to %s at port %d",
|
sprintf(pError,"ERROR: failed to connect to %s at port %d",
|
||||||
pNew->pHost, pNew->iPort);
|
pNew->pHost, pNew->iPort);
|
||||||
|
@ -14,6 +14,14 @@
|
|||||||
#ifndef RS232CONTROLLER
|
#ifndef RS232CONTROLLER
|
||||||
#define RS232CONTROLLER
|
#define RS232CONTROLLER
|
||||||
#include "network.h"
|
#include "network.h"
|
||||||
|
/*
|
||||||
|
own error codes
|
||||||
|
*/
|
||||||
|
#define NOTCONNECTED -2700
|
||||||
|
#define BADMEMORY -2701
|
||||||
|
#define TIMEOUT -2702
|
||||||
|
#define FAILEDCONNECT -2703
|
||||||
|
#define INCOMPLETE -2704
|
||||||
|
|
||||||
/*----------------------- a data structure ----------------------------*/
|
/*----------------------- a data structure ----------------------------*/
|
||||||
|
|
||||||
@ -25,6 +33,8 @@
|
|||||||
mkChannel *pSock;
|
mkChannel *pSock;
|
||||||
char *pHost;
|
char *pHost;
|
||||||
int iPort;
|
int iPort;
|
||||||
|
int debug;
|
||||||
|
int registered;
|
||||||
} rs232, *prs232;
|
} rs232, *prs232;
|
||||||
|
|
||||||
|
|
||||||
@ -39,14 +49,22 @@
|
|||||||
void setRS232SendTerminator(prs232 self, char *term);
|
void setRS232SendTerminator(prs232 self, char *term);
|
||||||
void setRS232ReplyTerminator(prs232 self, char *term);
|
void setRS232ReplyTerminator(prs232 self, char *term);
|
||||||
void setRS232Timeout(prs232 self, int timeout);
|
void setRS232Timeout(prs232 self, int timeout);
|
||||||
|
void setRS232Debug(prs232 self, int deb);
|
||||||
|
|
||||||
int writeRS232(prs232 self, void *data, int dataLen);
|
int writeRS232(prs232 self, void *data, int dataLen);
|
||||||
int readRS232(prs232 self, void *data, int *dataLen);
|
int readRS232(prs232 self, void *data, int *dataLen);
|
||||||
|
int readRS232TillTerm(prs232 self, void *data, int *datalen);
|
||||||
int availableRS232(prs232 self);
|
int availableRS232(prs232 self);
|
||||||
|
int availableNetRS232(prs232 self);
|
||||||
int transactRS232(prs232 self, void *send, int sendLen,
|
int transactRS232(prs232 self, void *send, int sendLen,
|
||||||
void *reply, int replylen);
|
void *reply, int replylen);
|
||||||
|
|
||||||
void getRS232Error(int iCode, char *errorBuffer,
|
void getRS232Error(int iCode, char *errorBuffer,
|
||||||
int errorBufferLen);
|
int errorBufferLen);
|
||||||
|
|
||||||
int initRS232(prs232 self);
|
int initRS232(prs232 self);
|
||||||
|
prs232 createRS232(char *host, int iPort);
|
||||||
|
void KillRS232(void *pData);
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -23,6 +23,8 @@ This class provides the basic communication facilities for an arbitrary
|
|||||||
mkChannel *pSock;
|
mkChannel *pSock;
|
||||||
char *pHost;
|
char *pHost;
|
||||||
int iPort;
|
int iPort;
|
||||||
|
int debug;
|
||||||
|
int registered;
|
||||||
} rs232, *prs232;
|
} rs232, *prs232;
|
||||||
|
|
||||||
@}
|
@}
|
||||||
@ -36,6 +38,10 @@ The fields are:
|
|||||||
\item[mkChannel] Our very own structure for a network connection.
|
\item[mkChannel] Our very own structure for a network connection.
|
||||||
\item[pHost]The host (mostly the terminal server) to connect to.
|
\item[pHost]The host (mostly the terminal server) to connect to.
|
||||||
\item[iPort] The port at host to which to connect.
|
\item[iPort] The port at host to which to connect.
|
||||||
|
\item[debug] a flag which switches logging of the communication to
|
||||||
|
stdout on.
|
||||||
|
\item[registered] a flag which is set if the registration of the rs232
|
||||||
|
controllers network port has succeeded.
|
||||||
\end{description}
|
\end{description}
|
||||||
|
|
||||||
The following interface functions are provided:
|
The following interface functions are provided:
|
||||||
@ -49,14 +55,22 @@ The following interface functions are provided:
|
|||||||
void setRS232SendTerminator(prs232 self, char *term);
|
void setRS232SendTerminator(prs232 self, char *term);
|
||||||
void setRS232ReplyTerminator(prs232 self, char *term);
|
void setRS232ReplyTerminator(prs232 self, char *term);
|
||||||
void setRS232Timeout(prs232 self, int timeout);
|
void setRS232Timeout(prs232 self, int timeout);
|
||||||
|
void setRS232Debug(prs232 self, int deb);
|
||||||
|
|
||||||
int writeRS232(prs232 self, void *data, int dataLen);
|
int writeRS232(prs232 self, void *data, int dataLen);
|
||||||
int readRS232(prs232 self, void *data, int *dataLen);
|
int readRS232(prs232 self, void *data, int *dataLen);
|
||||||
|
int readRS232TillTerm(prs232 self, void *data, int *datalen);
|
||||||
int availableRS232(prs232 self);
|
int availableRS232(prs232 self);
|
||||||
|
int availableNetRS232(prs232 self);
|
||||||
int transactRS232(prs232 self, void *send, int sendLen,
|
int transactRS232(prs232 self, void *send, int sendLen,
|
||||||
void *reply, int replylen);
|
void *reply, int replylen);
|
||||||
|
|
||||||
void getRS232Error(int iCode, char *errorBuffer,
|
void getRS232Error(int iCode, char *errorBuffer,
|
||||||
int errorBufferLen);
|
int errorBufferLen);
|
||||||
|
|
||||||
int initRS232(prs232 self);
|
int initRS232(prs232 self);
|
||||||
|
prs232 createRS232(char *host, int iPort);
|
||||||
|
void KillRS232(void *pData);
|
||||||
@}
|
@}
|
||||||
|
|
||||||
All functions take a pointer to their daat structure as a parameter.
|
All functions take a pointer to their daat structure as a parameter.
|
||||||
@ -80,10 +94,16 @@ The functions have the following meanings:
|
|||||||
replyLen bytes of reply are copied to reply.
|
replyLen bytes of reply are copied to reply.
|
||||||
\item[availableRS232] returns 1 if data is available, o if none is available
|
\item[availableRS232] returns 1 if data is available, o if none is available
|
||||||
and a negative value if an error occurs.
|
and a negative value if an error occurs.
|
||||||
|
\item[availableNetRS232] returns 1 when data is pending at the network
|
||||||
|
reader for this port, else 0. This function also resets the network reader for
|
||||||
|
further use. This could lead to trouble if pending data is not
|
||||||
|
directly followed by a read.
|
||||||
\item[getRS232Error] gets a string representation for the error code
|
\item[getRS232Error] gets a string representation for the error code
|
||||||
iCode.
|
iCode.
|
||||||
\item[initRS232] tries to close and reopen the RS232 connection. This is
|
\item[initRS232] tries to close and reopen the RS232 connection. This is
|
||||||
useful for the automatic fixing of communication problems encountered.
|
useful for the automatic fixing of communication problems encountered.
|
||||||
|
\item[createRS232] creates a new rs232 data structure with all
|
||||||
|
parameters at default values. The connection is NOT opened.
|
||||||
\end{description}
|
\end{description}
|
||||||
|
|
||||||
@o rs232controller.h @{
|
@o rs232controller.h @{
|
||||||
@ -102,6 +122,14 @@ The functions have the following meanings:
|
|||||||
#ifndef RS232CONTROLLER
|
#ifndef RS232CONTROLLER
|
||||||
#define RS232CONTROLLER
|
#define RS232CONTROLLER
|
||||||
#include "network.h"
|
#include "network.h"
|
||||||
|
/*
|
||||||
|
own error codes
|
||||||
|
*/
|
||||||
|
#define NOTCONNECTED -2700
|
||||||
|
#define BADMEMORY -2701
|
||||||
|
#define TIMEOUT -2702
|
||||||
|
#define FAILEDCONNECT -2703
|
||||||
|
#define INCOMPLETE -2704
|
||||||
|
|
||||||
/*----------------------- a data structure ----------------------------*/
|
/*----------------------- a data structure ----------------------------*/
|
||||||
@<rs232dat@>
|
@<rs232dat@>
|
||||||
|
205
sicsstatus.tcl
205
sicsstatus.tcl
@ -1,80 +1,50 @@
|
|||||||
# naff was here , best wishes
|
a5l.length 80.000000
|
||||||
# naff was here , best wishes
|
flightpathlength 0.000000
|
||||||
# naff was here , best wishes
|
flightpathlength setAccess 1
|
||||||
yfactor 1.420000
|
flightpath 0.000000
|
||||||
yfactor setAccess 1
|
flightpath setAccess 1
|
||||||
xfactor 0.715000
|
delay 2500.000000
|
||||||
xfactor setAccess 1
|
delay setAccess 1
|
||||||
ps.listfile peaksearch.dat
|
hm CountMode timer
|
||||||
ps.listfile setAccess 2
|
hm preset 100.000000
|
||||||
ps.scansteps 24
|
hm genbin 120.000000 35.000000 512
|
||||||
ps.scansteps setAccess 2
|
hm init
|
||||||
ps.scanpreset 1000000.000000
|
datafile focus-1001848.hdf
|
||||||
ps.scanpreset setAccess 2
|
datafile setAccess 3
|
||||||
ps.preset 1000.000000
|
|
||||||
ps.preset setAccess 2
|
|
||||||
ps.countmode monitor
|
|
||||||
ps.countmode setAccess 2
|
|
||||||
ps.cogcontour 0.200000
|
|
||||||
ps.cogcontour setAccess 2
|
|
||||||
ps.cogwindow 60
|
|
||||||
ps.cogwindow setAccess 2
|
|
||||||
ps.window 7
|
|
||||||
ps.window setAccess 2
|
|
||||||
ps.steepness 3
|
|
||||||
ps.steepness setAccess 2
|
|
||||||
ps.threshold 30
|
|
||||||
ps.threshold setAccess 2
|
|
||||||
ps.sttstep 3.000000
|
|
||||||
ps.sttstep setAccess 2
|
|
||||||
ps.sttend 70.000000
|
|
||||||
ps.sttend setAccess 2
|
|
||||||
ps.sttstart 5.000000
|
|
||||||
ps.sttstart setAccess 2
|
|
||||||
ps.omstep 3.000000
|
|
||||||
ps.omstep setAccess 2
|
|
||||||
ps.omend 30.000000
|
|
||||||
ps.omend setAccess 2
|
|
||||||
ps.omstart 0.000000
|
|
||||||
ps.omstart setAccess 2
|
|
||||||
ps.chistep 12.000000
|
|
||||||
ps.chistep setAccess 2
|
|
||||||
ps.chiend 180.000000
|
|
||||||
ps.chiend setAccess 2
|
|
||||||
ps.chistart 0.000000
|
|
||||||
ps.chistart setAccess 2
|
|
||||||
ps.phistep 3.000000
|
|
||||||
ps.phistep setAccess 2
|
|
||||||
ps.phiend 180.000000
|
|
||||||
ps.phiend setAccess 2
|
|
||||||
ps.phistart 0.000000
|
|
||||||
ps.phistart setAccess 2
|
|
||||||
hm3 CountMode timer
|
|
||||||
hm3 preset 10.000000
|
|
||||||
hm2 CountMode timer
|
hm2 CountMode timer
|
||||||
hm2 preset 10.000000
|
hm2 preset 10.000000
|
||||||
banana CountMode timer
|
|
||||||
banana preset 2.000000
|
|
||||||
hm1 CountMode timer
|
hm1 CountMode timer
|
||||||
hm1 preset 2.000000
|
hm1 preset 100.000000
|
||||||
|
dbfile UNKNOWN
|
||||||
|
dbfile setAccess 2
|
||||||
|
# Motor th
|
||||||
|
th sign 1.000000
|
||||||
|
th SoftZero 0.000000
|
||||||
|
th SoftLowerLim -120.000000
|
||||||
|
th SoftUpperLim 120.000000
|
||||||
|
th Fixed -1.000000
|
||||||
|
th InterruptMode 0.000000
|
||||||
|
th precision 0.010000
|
||||||
|
th AccessCode 2.000000
|
||||||
|
th poscount 20.000000
|
||||||
#Crystallographic Settings
|
#Crystallographic Settings
|
||||||
hkl lambda 1.179000
|
hkl lambda 0.703790
|
||||||
hkl setub -0.017880 -0.074923 0.028280 -0.007008 -0.036800 -0.057747 0.160912 -0.009928 0.000627
|
hkl setub -0.124702 0.001618 -0.041357 -0.104448 -0.001326 0.049388 0.000751 0.084094 0.001574
|
||||||
hkl hm 0
|
hkl hm 0
|
||||||
detdist3 0.000000
|
det3dist 300.000000
|
||||||
detdist3 setAccess 1
|
det3dist setAccess 1
|
||||||
det3zeroy 128.000000
|
det3zeroy 128.000000
|
||||||
det3zeroy setAccess 1
|
det3zeroy setAccess 1
|
||||||
det3zerox 128.000000
|
det3zerox 128.000000
|
||||||
det3zerox setAccess 1
|
det3zerox setAccess 1
|
||||||
detdist2 0.000000
|
det2dist 300.000000
|
||||||
detdist2 setAccess 1
|
det2dist setAccess 1
|
||||||
det2zeroy 128.000000
|
det2zeroy 128.000000
|
||||||
det2zeroy setAccess 1
|
det2zeroy setAccess 1
|
||||||
det2zerox 128.000000
|
det2zerox 128.000000
|
||||||
det2zerox setAccess 1
|
det2zerox setAccess 1
|
||||||
detdist1 0.000000
|
det1dist 300.000000
|
||||||
detdist1 setAccess 1
|
det1dist setAccess 1
|
||||||
det1zeroy 128.000000
|
det1zeroy 128.000000
|
||||||
det1zeroy setAccess 1
|
det1zeroy setAccess 1
|
||||||
det1zerox 128.000000
|
det1zerox 128.000000
|
||||||
@ -92,24 +62,27 @@ om Fixed -1.000000
|
|||||||
om InterruptMode 0.000000
|
om InterruptMode 0.000000
|
||||||
om precision 0.010000
|
om precision 0.010000
|
||||||
om AccessCode 2.000000
|
om AccessCode 2.000000
|
||||||
|
om poscount 20.000000
|
||||||
# Motor stt
|
# Motor stt
|
||||||
stt sign 1.000000
|
stt sign 1.000000
|
||||||
stt SoftZero 0.000000
|
stt SoftZero 0.000000
|
||||||
stt SoftLowerLim 4.000000
|
stt SoftLowerLim -120.000000
|
||||||
stt SoftUpperLim 113.000000
|
stt SoftUpperLim 120.000000
|
||||||
stt Fixed -1.000000
|
stt Fixed -1.000000
|
||||||
stt InterruptMode 0.000000
|
stt InterruptMode 0.000000
|
||||||
stt precision 0.010000
|
stt precision 0.010000
|
||||||
stt AccessCode 2.000000
|
stt AccessCode 2.000000
|
||||||
|
stt poscount 20.000000
|
||||||
# Motor ch
|
# Motor ch
|
||||||
ch sign 1.000000
|
ch sign 1.000000
|
||||||
ch SoftZero 0.000000
|
ch SoftZero 0.000000
|
||||||
ch SoftLowerLim 0.000000
|
ch SoftLowerLim 0.000000
|
||||||
ch SoftUpperLim 190.000000
|
ch SoftUpperLim 360.000000
|
||||||
ch Fixed -1.000000
|
ch Fixed -1.000000
|
||||||
ch InterruptMode 0.000000
|
ch InterruptMode 0.000000
|
||||||
ch precision 0.010000
|
ch precision 0.010000
|
||||||
ch AccessCode 1.000000
|
ch AccessCode 2.000000
|
||||||
|
ch poscount 20.000000
|
||||||
# Motor ph
|
# Motor ph
|
||||||
ph sign 1.000000
|
ph sign 1.000000
|
||||||
ph SoftZero 0.000000
|
ph SoftZero 0.000000
|
||||||
@ -119,6 +92,7 @@ ph Fixed -1.000000
|
|||||||
ph InterruptMode 0.000000
|
ph InterruptMode 0.000000
|
||||||
ph precision 0.010000
|
ph precision 0.010000
|
||||||
ph AccessCode 2.000000
|
ph AccessCode 2.000000
|
||||||
|
ph poscount 20.000000
|
||||||
# Motor dg3
|
# Motor dg3
|
||||||
dg3 sign 1.000000
|
dg3 sign 1.000000
|
||||||
dg3 SoftZero 0.000000
|
dg3 SoftZero 0.000000
|
||||||
@ -128,6 +102,7 @@ dg3 Fixed -1.000000
|
|||||||
dg3 InterruptMode 0.000000
|
dg3 InterruptMode 0.000000
|
||||||
dg3 precision 0.010000
|
dg3 precision 0.010000
|
||||||
dg3 AccessCode 2.000000
|
dg3 AccessCode 2.000000
|
||||||
|
dg3 poscount 20.000000
|
||||||
# Motor dg2
|
# Motor dg2
|
||||||
dg2 sign 1.000000
|
dg2 sign 1.000000
|
||||||
dg2 SoftZero 0.000000
|
dg2 SoftZero 0.000000
|
||||||
@ -137,6 +112,7 @@ dg2 Fixed -1.000000
|
|||||||
dg2 InterruptMode 0.000000
|
dg2 InterruptMode 0.000000
|
||||||
dg2 precision 0.010000
|
dg2 precision 0.010000
|
||||||
dg2 AccessCode 2.000000
|
dg2 AccessCode 2.000000
|
||||||
|
dg2 poscount 20.000000
|
||||||
# Motor dg1
|
# Motor dg1
|
||||||
dg1 sign 1.000000
|
dg1 sign 1.000000
|
||||||
dg1 SoftZero 0.000000
|
dg1 SoftZero 0.000000
|
||||||
@ -146,6 +122,7 @@ dg1 Fixed -1.000000
|
|||||||
dg1 InterruptMode 0.000000
|
dg1 InterruptMode 0.000000
|
||||||
dg1 precision 0.010000
|
dg1 precision 0.010000
|
||||||
dg1 AccessCode 2.000000
|
dg1 AccessCode 2.000000
|
||||||
|
dg1 poscount 20.000000
|
||||||
# Motor muca
|
# Motor muca
|
||||||
muca sign 1.000000
|
muca sign 1.000000
|
||||||
muca SoftZero 0.000000
|
muca SoftZero 0.000000
|
||||||
@ -155,6 +132,7 @@ muca Fixed -1.000000
|
|||||||
muca InterruptMode 0.000000
|
muca InterruptMode 0.000000
|
||||||
muca precision 0.010000
|
muca precision 0.010000
|
||||||
muca AccessCode 2.000000
|
muca AccessCode 2.000000
|
||||||
|
muca poscount 20.000000
|
||||||
# Motor phi
|
# Motor phi
|
||||||
phi sign 1.000000
|
phi sign 1.000000
|
||||||
phi SoftZero 0.000000
|
phi SoftZero 0.000000
|
||||||
@ -164,15 +142,17 @@ phi Fixed -1.000000
|
|||||||
phi InterruptMode 0.000000
|
phi InterruptMode 0.000000
|
||||||
phi precision 0.010000
|
phi precision 0.010000
|
||||||
phi AccessCode 2.000000
|
phi AccessCode 2.000000
|
||||||
|
phi poscount 20.000000
|
||||||
# Motor chi
|
# Motor chi
|
||||||
chi sign 1.000000
|
chi sign 1.000000
|
||||||
chi SoftZero 0.000000
|
chi SoftZero 0.000000
|
||||||
chi SoftLowerLim 0.000000
|
chi SoftLowerLim 0.000000
|
||||||
chi SoftUpperLim 190.000000
|
chi SoftUpperLim 360.000000
|
||||||
chi Fixed -1.000000
|
chi Fixed -1.000000
|
||||||
chi InterruptMode 0.000000
|
chi InterruptMode 0.000000
|
||||||
chi precision 0.010000
|
chi precision 0.010000
|
||||||
chi AccessCode 1.000000
|
chi AccessCode 2.000000
|
||||||
|
chi poscount 20.000000
|
||||||
# Motor omega
|
# Motor omega
|
||||||
omega sign 1.000000
|
omega sign 1.000000
|
||||||
omega SoftZero 0.000000
|
omega SoftZero 0.000000
|
||||||
@ -182,17 +162,21 @@ omega Fixed -1.000000
|
|||||||
omega InterruptMode 0.000000
|
omega InterruptMode 0.000000
|
||||||
omega precision 0.010000
|
omega precision 0.010000
|
||||||
omega AccessCode 2.000000
|
omega AccessCode 2.000000
|
||||||
|
omega poscount 20.000000
|
||||||
# Motor twotheta
|
# Motor twotheta
|
||||||
twotheta sign 1.000000
|
twotheta sign 1.000000
|
||||||
twotheta SoftZero 0.000000
|
twotheta SoftZero 0.000000
|
||||||
twotheta SoftLowerLim 4.000000
|
twotheta SoftLowerLim -120.000000
|
||||||
twotheta SoftUpperLim 113.000000
|
twotheta SoftUpperLim 120.000000
|
||||||
twotheta Fixed -1.000000
|
twotheta Fixed -1.000000
|
||||||
twotheta InterruptMode 0.000000
|
twotheta InterruptMode 0.000000
|
||||||
twotheta precision 0.010000
|
twotheta precision 0.010000
|
||||||
twotheta AccessCode 2.000000
|
twotheta AccessCode 2.000000
|
||||||
lastscancommand sscan a3 100 110 10 1
|
twotheta poscount 20.000000
|
||||||
|
lastscancommand cscan a4 0. .2 10 2
|
||||||
lastscancommand setAccess 2
|
lastscancommand setAccess 2
|
||||||
|
banana CountMode timer
|
||||||
|
banana preset 100.000000
|
||||||
sample_mur 0.000000
|
sample_mur 0.000000
|
||||||
sample_mur setAccess 2
|
sample_mur setAccess 2
|
||||||
email UNKNOWN
|
email UNKNOWN
|
||||||
@ -204,17 +188,18 @@ phone setAccess 2
|
|||||||
adress UNKNOWN
|
adress UNKNOWN
|
||||||
adress setAccess 2
|
adress setAccess 2
|
||||||
# Counter counter
|
# Counter counter
|
||||||
counter SetPreset 1.000000
|
counter SetPreset 2.000000
|
||||||
counter SetMode Monitor
|
counter SetMode Monitor
|
||||||
# Motor som
|
# Motor som
|
||||||
som sign 1.000000
|
som sign 1.000000
|
||||||
som SoftZero -20.000000
|
som SoftZero 0.000000
|
||||||
som SoftLowerLim -340.000000
|
som SoftLowerLim -360.000000
|
||||||
som SoftUpperLim 380.000000
|
som SoftUpperLim 360.000000
|
||||||
som Fixed -1.000000
|
som Fixed -1.000000
|
||||||
som InterruptMode 0.000000
|
som InterruptMode 0.000000
|
||||||
som precision 0.010000
|
som precision 0.010000
|
||||||
som AccessCode 2.000000
|
som AccessCode 2.000000
|
||||||
|
som poscount 20.000000
|
||||||
# Motor sax
|
# Motor sax
|
||||||
sax sign 1.000000
|
sax sign 1.000000
|
||||||
sax SoftZero 0.000000
|
sax SoftZero 0.000000
|
||||||
@ -224,6 +209,7 @@ sax Fixed -1.000000
|
|||||||
sax InterruptMode 0.000000
|
sax InterruptMode 0.000000
|
||||||
sax precision 0.010000
|
sax precision 0.010000
|
||||||
sax AccessCode 2.000000
|
sax AccessCode 2.000000
|
||||||
|
sax poscount 20.000000
|
||||||
# Motor tilt
|
# Motor tilt
|
||||||
tilt sign 1.000000
|
tilt sign 1.000000
|
||||||
tilt SoftZero 0.000000
|
tilt SoftZero 0.000000
|
||||||
@ -233,28 +219,11 @@ tilt Fixed -1.000000
|
|||||||
tilt InterruptMode 0.000000
|
tilt InterruptMode 0.000000
|
||||||
tilt precision 0.010000
|
tilt precision 0.010000
|
||||||
tilt AccessCode 0.000000
|
tilt AccessCode 0.000000
|
||||||
|
tilt poscount 20.000000
|
||||||
#----- MultiMotor st
|
#----- MultiMotor st
|
||||||
st recovernampos henry d1r 5. d1l -5. d1t 0.
|
st recovernampos henry d1r 5. d1l -5. d1t 0.
|
||||||
#----- MultiMotor sampletable
|
#----- MultiMotor sampletable
|
||||||
sampletable recovernampos henry d1r 5. d1l -5. d1t 0.
|
sampletable recovernampos henry d1r 5. d1l -5. d1t 0.
|
||||||
# Motor cex2
|
|
||||||
cex2 sign 1.000000
|
|
||||||
cex2 SoftZero 0.000000
|
|
||||||
cex2 SoftLowerLim -360.000000
|
|
||||||
cex2 SoftUpperLim 360.000000
|
|
||||||
cex2 Fixed -1.000000
|
|
||||||
cex2 InterruptMode 0.000000
|
|
||||||
cex2 precision 0.010000
|
|
||||||
cex2 AccessCode 2.000000
|
|
||||||
# Motor cex1
|
|
||||||
cex1 sign 1.000000
|
|
||||||
cex1 SoftZero 0.000000
|
|
||||||
cex1 SoftLowerLim -360.000000
|
|
||||||
cex1 SoftUpperLim 360.000000
|
|
||||||
cex1 Fixed -1.000000
|
|
||||||
cex1 InterruptMode 0.000000
|
|
||||||
cex1 precision 0.010000
|
|
||||||
cex1 AccessCode 2.000000
|
|
||||||
# Motor detectorrotation
|
# Motor detectorrotation
|
||||||
detectorrotation sign 1.000000
|
detectorrotation sign 1.000000
|
||||||
detectorrotation SoftZero 0.000000
|
detectorrotation SoftZero 0.000000
|
||||||
@ -264,6 +233,7 @@ detectorrotation Fixed -1.000000
|
|||||||
detectorrotation InterruptMode 0.000000
|
detectorrotation InterruptMode 0.000000
|
||||||
detectorrotation precision 0.010000
|
detectorrotation precision 0.010000
|
||||||
detectorrotation AccessCode 2.000000
|
detectorrotation AccessCode 2.000000
|
||||||
|
detectorrotation poscount 20.000000
|
||||||
# Motor detectory
|
# Motor detectory
|
||||||
detectory sign 1.000000
|
detectory sign 1.000000
|
||||||
detectory SoftZero 0.000000
|
detectory SoftZero 0.000000
|
||||||
@ -273,6 +243,7 @@ detectory Fixed -1.000000
|
|||||||
detectory InterruptMode 0.000000
|
detectory InterruptMode 0.000000
|
||||||
detectory precision 0.010000
|
detectory precision 0.010000
|
||||||
detectory AccessCode 2.000000
|
detectory AccessCode 2.000000
|
||||||
|
detectory poscount 20.000000
|
||||||
# Motor detectorx
|
# Motor detectorx
|
||||||
detectorx sign 1.000000
|
detectorx sign 1.000000
|
||||||
detectorx SoftZero 0.000000
|
detectorx SoftZero 0.000000
|
||||||
@ -282,6 +253,7 @@ detectorx Fixed -1.000000
|
|||||||
detectorx InterruptMode 0.000000
|
detectorx InterruptMode 0.000000
|
||||||
detectorx precision 0.010000
|
detectorx precision 0.010000
|
||||||
detectorx AccessCode 2.000000
|
detectorx AccessCode 2.000000
|
||||||
|
detectorx poscount 20.000000
|
||||||
# Motor beamstopy
|
# Motor beamstopy
|
||||||
beamstopy sign 1.000000
|
beamstopy sign 1.000000
|
||||||
beamstopy SoftZero 0.000000
|
beamstopy SoftZero 0.000000
|
||||||
@ -291,6 +263,7 @@ beamstopy Fixed -1.000000
|
|||||||
beamstopy InterruptMode 0.000000
|
beamstopy InterruptMode 0.000000
|
||||||
beamstopy precision 0.010000
|
beamstopy precision 0.010000
|
||||||
beamstopy AccessCode 2.000000
|
beamstopy AccessCode 2.000000
|
||||||
|
beamstopy poscount 20.000000
|
||||||
# Motor beamstopx
|
# Motor beamstopx
|
||||||
beamstopx sign 1.000000
|
beamstopx sign 1.000000
|
||||||
beamstopx SoftZero 0.000000
|
beamstopx SoftZero 0.000000
|
||||||
@ -300,6 +273,7 @@ beamstopx Fixed -1.000000
|
|||||||
beamstopx InterruptMode 0.000000
|
beamstopx InterruptMode 0.000000
|
||||||
beamstopx precision 0.010000
|
beamstopx precision 0.010000
|
||||||
beamstopx AccessCode 2.000000
|
beamstopx AccessCode 2.000000
|
||||||
|
beamstopx poscount 20.000000
|
||||||
# Motor d2t
|
# Motor d2t
|
||||||
d2t sign 1.000000
|
d2t sign 1.000000
|
||||||
d2t SoftZero 0.000000
|
d2t SoftZero 0.000000
|
||||||
@ -309,6 +283,7 @@ d2t Fixed -1.000000
|
|||||||
d2t InterruptMode 0.000000
|
d2t InterruptMode 0.000000
|
||||||
d2t precision 0.010000
|
d2t precision 0.010000
|
||||||
d2t AccessCode 2.000000
|
d2t AccessCode 2.000000
|
||||||
|
d2t poscount 20.000000
|
||||||
# Motor d2l
|
# Motor d2l
|
||||||
d2l sign 1.000000
|
d2l sign 1.000000
|
||||||
d2l SoftZero 0.000000
|
d2l SoftZero 0.000000
|
||||||
@ -318,6 +293,7 @@ d2l Fixed -1.000000
|
|||||||
d2l InterruptMode 0.000000
|
d2l InterruptMode 0.000000
|
||||||
d2l precision 0.010000
|
d2l precision 0.010000
|
||||||
d2l AccessCode 2.000000
|
d2l AccessCode 2.000000
|
||||||
|
d2l poscount 20.000000
|
||||||
# Motor d2r
|
# Motor d2r
|
||||||
d2r sign 1.000000
|
d2r sign 1.000000
|
||||||
d2r SoftZero 0.000000
|
d2r SoftZero 0.000000
|
||||||
@ -327,6 +303,7 @@ d2r Fixed -1.000000
|
|||||||
d2r InterruptMode 0.000000
|
d2r InterruptMode 0.000000
|
||||||
d2r precision 0.010000
|
d2r precision 0.010000
|
||||||
d2r AccessCode 2.000000
|
d2r AccessCode 2.000000
|
||||||
|
d2r poscount 20.000000
|
||||||
# Motor d1t
|
# Motor d1t
|
||||||
d1t sign 1.000000
|
d1t sign 1.000000
|
||||||
d1t SoftZero 0.000000
|
d1t SoftZero 0.000000
|
||||||
@ -336,6 +313,7 @@ d1t Fixed -1.000000
|
|||||||
d1t InterruptMode 0.000000
|
d1t InterruptMode 0.000000
|
||||||
d1t precision 0.010000
|
d1t precision 0.010000
|
||||||
d1t AccessCode 2.000000
|
d1t AccessCode 2.000000
|
||||||
|
d1t poscount 20.000000
|
||||||
# Motor d1l
|
# Motor d1l
|
||||||
d1l sign 1.000000
|
d1l sign 1.000000
|
||||||
d1l SoftZero 0.000000
|
d1l SoftZero 0.000000
|
||||||
@ -345,6 +323,7 @@ d1l Fixed -1.000000
|
|||||||
d1l InterruptMode 0.000000
|
d1l InterruptMode 0.000000
|
||||||
d1l precision 0.010000
|
d1l precision 0.010000
|
||||||
d1l AccessCode 2.000000
|
d1l AccessCode 2.000000
|
||||||
|
d1l poscount 20.000000
|
||||||
# Motor d1r
|
# Motor d1r
|
||||||
d1r sign 1.000000
|
d1r sign 1.000000
|
||||||
d1r SoftZero 0.000000
|
d1r SoftZero 0.000000
|
||||||
@ -354,6 +333,7 @@ d1r Fixed -1.000000
|
|||||||
d1r InterruptMode 0.000000
|
d1r InterruptMode 0.000000
|
||||||
d1r precision 0.010000
|
d1r precision 0.010000
|
||||||
d1r AccessCode 2.000000
|
d1r AccessCode 2.000000
|
||||||
|
d1r poscount 20.000000
|
||||||
# Motor monochi
|
# Motor monochi
|
||||||
monochi sign 1.000000
|
monochi sign 1.000000
|
||||||
monochi SoftZero 0.000000
|
monochi SoftZero 0.000000
|
||||||
@ -363,6 +343,7 @@ monochi Fixed -1.000000
|
|||||||
monochi InterruptMode 0.000000
|
monochi InterruptMode 0.000000
|
||||||
monochi precision 0.010000
|
monochi precision 0.010000
|
||||||
monochi AccessCode 2.000000
|
monochi AccessCode 2.000000
|
||||||
|
monochi poscount 20.000000
|
||||||
# Motor monophi
|
# Motor monophi
|
||||||
monophi sign 1.000000
|
monophi sign 1.000000
|
||||||
monophi SoftZero 0.000000
|
monophi SoftZero 0.000000
|
||||||
@ -372,6 +353,7 @@ monophi Fixed -1.000000
|
|||||||
monophi InterruptMode 0.000000
|
monophi InterruptMode 0.000000
|
||||||
monophi precision 0.010000
|
monophi precision 0.010000
|
||||||
monophi AccessCode 2.000000
|
monophi AccessCode 2.000000
|
||||||
|
monophi poscount 20.000000
|
||||||
# Motor monoy
|
# Motor monoy
|
||||||
monoy sign 1.000000
|
monoy sign 1.000000
|
||||||
monoy SoftZero 0.000000
|
monoy SoftZero 0.000000
|
||||||
@ -381,6 +363,7 @@ monoy Fixed -1.000000
|
|||||||
monoy InterruptMode 0.000000
|
monoy InterruptMode 0.000000
|
||||||
monoy precision 0.010000
|
monoy precision 0.010000
|
||||||
monoy AccessCode 2.000000
|
monoy AccessCode 2.000000
|
||||||
|
monoy poscount 20.000000
|
||||||
# Motor monox
|
# Motor monox
|
||||||
monox sign 1.000000
|
monox sign 1.000000
|
||||||
monox SoftZero 0.000000
|
monox SoftZero 0.000000
|
||||||
@ -390,6 +373,7 @@ monox Fixed -1.000000
|
|||||||
monox InterruptMode 0.000000
|
monox InterruptMode 0.000000
|
||||||
monox precision 0.010000
|
monox precision 0.010000
|
||||||
monox AccessCode 2.000000
|
monox AccessCode 2.000000
|
||||||
|
monox poscount 20.000000
|
||||||
# Motor tasse
|
# Motor tasse
|
||||||
tasse sign 1.000000
|
tasse sign 1.000000
|
||||||
tasse SoftZero 0.000000
|
tasse SoftZero 0.000000
|
||||||
@ -399,6 +383,7 @@ tasse Fixed -1.000000
|
|||||||
tasse InterruptMode 0.000000
|
tasse InterruptMode 0.000000
|
||||||
tasse precision 0.010000
|
tasse precision 0.010000
|
||||||
tasse AccessCode 2.000000
|
tasse AccessCode 2.000000
|
||||||
|
tasse poscount 20.000000
|
||||||
# Motor sdm
|
# Motor sdm
|
||||||
sdm sign 1.000000
|
sdm sign 1.000000
|
||||||
sdm SoftZero 0.000000
|
sdm SoftZero 0.000000
|
||||||
@ -408,6 +393,7 @@ sdm Fixed -1.000000
|
|||||||
sdm InterruptMode 0.000000
|
sdm InterruptMode 0.000000
|
||||||
sdm precision 0.010000
|
sdm precision 0.010000
|
||||||
sdm AccessCode 2.000000
|
sdm AccessCode 2.000000
|
||||||
|
sdm poscount 20.000000
|
||||||
# Motor sgu
|
# Motor sgu
|
||||||
sgu sign 1.000000
|
sgu sign 1.000000
|
||||||
sgu SoftZero 0.000000
|
sgu SoftZero 0.000000
|
||||||
@ -417,6 +403,7 @@ sgu Fixed -1.000000
|
|||||||
sgu InterruptMode 0.000000
|
sgu InterruptMode 0.000000
|
||||||
sgu precision 0.010000
|
sgu precision 0.010000
|
||||||
sgu AccessCode 2.000000
|
sgu AccessCode 2.000000
|
||||||
|
sgu poscount 20.000000
|
||||||
# Motor sgl
|
# Motor sgl
|
||||||
sgl sign 1.000000
|
sgl sign 1.000000
|
||||||
sgl SoftZero 0.000000
|
sgl SoftZero 0.000000
|
||||||
@ -426,6 +413,7 @@ sgl Fixed -1.000000
|
|||||||
sgl InterruptMode 0.000000
|
sgl InterruptMode 0.000000
|
||||||
sgl precision 0.010000
|
sgl precision 0.010000
|
||||||
sgl AccessCode 2.000000
|
sgl AccessCode 2.000000
|
||||||
|
sgl poscount 20.000000
|
||||||
# Motor mgu
|
# Motor mgu
|
||||||
mgu sign 1.000000
|
mgu sign 1.000000
|
||||||
mgu SoftZero 0.000000
|
mgu SoftZero 0.000000
|
||||||
@ -435,6 +423,7 @@ mgu Fixed -1.000000
|
|||||||
mgu InterruptMode 0.000000
|
mgu InterruptMode 0.000000
|
||||||
mgu precision 0.010000
|
mgu precision 0.010000
|
||||||
mgu AccessCode 2.000000
|
mgu AccessCode 2.000000
|
||||||
|
mgu poscount 20.000000
|
||||||
# Motor stu
|
# Motor stu
|
||||||
stu sign 1.000000
|
stu sign 1.000000
|
||||||
stu SoftZero 0.000000
|
stu SoftZero 0.000000
|
||||||
@ -444,6 +433,7 @@ stu Fixed -1.000000
|
|||||||
stu InterruptMode 0.000000
|
stu InterruptMode 0.000000
|
||||||
stu precision 0.010000
|
stu precision 0.010000
|
||||||
stu AccessCode 2.000000
|
stu AccessCode 2.000000
|
||||||
|
stu poscount 20.000000
|
||||||
# Motor stl
|
# Motor stl
|
||||||
stl sign 1.000000
|
stl sign 1.000000
|
||||||
stl SoftZero 0.000000
|
stl SoftZero 0.000000
|
||||||
@ -453,6 +443,7 @@ stl Fixed -1.000000
|
|||||||
stl InterruptMode 0.000000
|
stl InterruptMode 0.000000
|
||||||
stl precision 0.010000
|
stl precision 0.010000
|
||||||
stl AccessCode 2.000000
|
stl AccessCode 2.000000
|
||||||
|
stl poscount 20.000000
|
||||||
# Motor mtu
|
# Motor mtu
|
||||||
mtu sign 1.000000
|
mtu sign 1.000000
|
||||||
mtu SoftZero 0.000000
|
mtu SoftZero 0.000000
|
||||||
@ -462,6 +453,7 @@ mtu Fixed -1.000000
|
|||||||
mtu InterruptMode 0.000000
|
mtu InterruptMode 0.000000
|
||||||
mtu precision 0.010000
|
mtu precision 0.010000
|
||||||
mtu AccessCode 2.000000
|
mtu AccessCode 2.000000
|
||||||
|
mtu poscount 20.000000
|
||||||
# Motor mtl
|
# Motor mtl
|
||||||
mtl sign 1.000000
|
mtl sign 1.000000
|
||||||
mtl SoftZero 0.000000
|
mtl SoftZero 0.000000
|
||||||
@ -471,6 +463,7 @@ mtl Fixed -1.000000
|
|||||||
mtl InterruptMode 0.000000
|
mtl InterruptMode 0.000000
|
||||||
mtl precision 0.010000
|
mtl precision 0.010000
|
||||||
mtl AccessCode 2.000000
|
mtl AccessCode 2.000000
|
||||||
|
mtl poscount 20.000000
|
||||||
# Motor a6
|
# Motor a6
|
||||||
a6 sign 1.000000
|
a6 sign 1.000000
|
||||||
a6 SoftZero 0.000000
|
a6 SoftZero 0.000000
|
||||||
@ -480,6 +473,7 @@ a6 Fixed -1.000000
|
|||||||
a6 InterruptMode 0.000000
|
a6 InterruptMode 0.000000
|
||||||
a6 precision 0.010000
|
a6 precision 0.010000
|
||||||
a6 AccessCode 2.000000
|
a6 AccessCode 2.000000
|
||||||
|
a6 poscount 20.000000
|
||||||
# Motor a5
|
# Motor a5
|
||||||
a5 sign 1.000000
|
a5 sign 1.000000
|
||||||
a5 SoftZero 0.000000
|
a5 SoftZero 0.000000
|
||||||
@ -489,6 +483,7 @@ a5 Fixed -1.000000
|
|||||||
a5 InterruptMode 0.000000
|
a5 InterruptMode 0.000000
|
||||||
a5 precision 0.010000
|
a5 precision 0.010000
|
||||||
a5 AccessCode 2.000000
|
a5 AccessCode 2.000000
|
||||||
|
a5 poscount 20.000000
|
||||||
# Motor a4
|
# Motor a4
|
||||||
a4 sign 1.000000
|
a4 sign 1.000000
|
||||||
a4 SoftZero 0.000000
|
a4 SoftZero 0.000000
|
||||||
@ -498,15 +493,17 @@ a4 Fixed -1.000000
|
|||||||
a4 InterruptMode 0.000000
|
a4 InterruptMode 0.000000
|
||||||
a4 precision 0.010000
|
a4 precision 0.010000
|
||||||
a4 AccessCode 2.000000
|
a4 AccessCode 2.000000
|
||||||
|
a4 poscount 20.000000
|
||||||
# Motor a3
|
# Motor a3
|
||||||
a3 sign 1.000000
|
a3 sign 1.000000
|
||||||
a3 SoftZero -20.000000
|
a3 SoftZero 0.000000
|
||||||
a3 SoftLowerLim -340.000000
|
a3 SoftLowerLim -360.000000
|
||||||
a3 SoftUpperLim 380.000000
|
a3 SoftUpperLim 360.000000
|
||||||
a3 Fixed -1.000000
|
a3 Fixed -1.000000
|
||||||
a3 InterruptMode 0.000000
|
a3 InterruptMode 0.000000
|
||||||
a3 precision 0.010000
|
a3 precision 0.010000
|
||||||
a3 AccessCode 2.000000
|
a3 AccessCode 2.000000
|
||||||
|
a3 poscount 20.000000
|
||||||
# Motor a2
|
# Motor a2
|
||||||
a2 sign 1.000000
|
a2 sign 1.000000
|
||||||
a2 SoftZero 0.000000
|
a2 SoftZero 0.000000
|
||||||
@ -516,6 +513,7 @@ a2 Fixed -1.000000
|
|||||||
a2 InterruptMode 0.000000
|
a2 InterruptMode 0.000000
|
||||||
a2 precision 0.010000
|
a2 precision 0.010000
|
||||||
a2 AccessCode 2.000000
|
a2 AccessCode 2.000000
|
||||||
|
a2 poscount 20.000000
|
||||||
# Motor a1
|
# Motor a1
|
||||||
a1 sign 1.000000
|
a1 sign 1.000000
|
||||||
a1 SoftZero 0.000000
|
a1 SoftZero 0.000000
|
||||||
@ -525,11 +523,14 @@ a1 Fixed -1.000000
|
|||||||
a1 InterruptMode 0.000000
|
a1 InterruptMode 0.000000
|
||||||
a1 precision 0.010000
|
a1 precision 0.010000
|
||||||
a1 AccessCode 2.000000
|
a1 AccessCode 2.000000
|
||||||
user Uwe Filges
|
a1 poscount 20.000000
|
||||||
|
batchroot /data/koenneck/src/sics
|
||||||
|
batchroot setAccess 2
|
||||||
|
user Daniel_the_Clementine
|
||||||
user setAccess 2
|
user setAccess 2
|
||||||
sample D20 30K SNP Okt 2001 GS
|
sample DanielOxid
|
||||||
sample setAccess 2
|
sample setAccess 2
|
||||||
title endtest called with 23.000000 :Driving:
|
title TopsiTupsiTapsi
|
||||||
title setAccess 2
|
title setAccess 2
|
||||||
starttime 2002-08-07 08:09:45
|
starttime UNKNOWN
|
||||||
starttime setAccess 2
|
starttime setAccess 2
|
||||||
|
7
test.tcl
7
test.tcl
@ -169,7 +169,12 @@ set dornen(Port) 4000
|
|||||||
set dornen(Channel) 6
|
set dornen(Channel) 6
|
||||||
set dornen(Timeout) 5000
|
set dornen(Timeout) 5000
|
||||||
#VelocitySelector nvs tilt DORNIER dornen
|
#VelocitySelector nvs tilt DORNIER dornen
|
||||||
VelocitySelector nvs tilt SIM
|
set d2003(Host) psts233
|
||||||
|
set d2003(Port) 3004
|
||||||
|
set d2003(Timeout) 20000
|
||||||
|
VelocitySelector nvs tilt dornier2003 d2003
|
||||||
|
|
||||||
|
#VelocitySelector nvs tilt SIM
|
||||||
nvs add -20 28800
|
nvs add -20 28800
|
||||||
nvs add 3800 4500
|
nvs add 3800 4500
|
||||||
nvs add 5900 6700
|
nvs add 5900 6700
|
||||||
|
3
velo.c
3
velo.c
@ -173,7 +173,8 @@
|
|||||||
/* if we are here we tried three times and failed to get it
|
/* if we are here we tried three times and failed to get it
|
||||||
work
|
work
|
||||||
*/
|
*/
|
||||||
sprintf(pBueffel,"ERRROR: Failed 3 times to vary rotation speed. Failing.");
|
sprintf(pBueffel,
|
||||||
|
"ERRROR: Failed 3 times to vary rotation speed. Failing.");
|
||||||
SCWrite(pCon,pBueffel,eError);
|
SCWrite(pCon,pBueffel,eError);
|
||||||
SCSetInterrupt(pCon,(int)ObVal(self->pPar,INT));
|
SCSetInterrupt(pCon,(int)ObVal(self->pPar,INT));
|
||||||
EVCSetMode(self->pMonitor,EVIdle);
|
EVCSetMode(self->pMonitor,EVIdle);
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
#!/data/koenneck/bin/wish
|
#!/usr/bin/wish
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# A semi visual command line client for SICS
|
# A semi visual command line client for SICS
|
||||||
#
|
#
|
||||||
@ -11,7 +11,7 @@ lappend auto_path /data/koenneck/bin/tcl
|
|||||||
|
|
||||||
set INI(DefUser) Spy
|
set INI(DefUser) Spy
|
||||||
set INI(DefPasswd) 007
|
set INI(DefPasswd) 007
|
||||||
set INI(ServerPort) 2910
|
set INI(ServerPort) 3006
|
||||||
set INI(InterruptPort) 2913
|
set INI(InterruptPort) 2913
|
||||||
set INI(box) localhost
|
set INI(box) localhost
|
||||||
set INI(usPasswd) Rosy
|
set INI(usPasswd) Rosy
|
||||||
|
Reference in New Issue
Block a user