forked from epics_driver_modules/motorBase
@@ -6,4 +6,8 @@ For more information, see:
|
||||
* [motor wiki](https://github.com/epics-modules/motor/wiki)
|
||||
* http://www.aps.anl.gov/bcda/synApps
|
||||
|
||||
[Report an issue with Motor](https://github.com/epics-modules/motor/issues/new?title=%20ISSUE%20NAME%20HERE&body=**Describe%20the%20issue**%0A%0A**Steps%20to%20reproduce**%0A1.%20Step%20one%0A2.%20Step%20two%0A3.%20Step%20three%0A%0A**Expected%20behaivour**%0A%0A**Actual%20behaviour**%0A%0A**Build%20Environment**%0AArchitecture:%0AEpics%20Base%20Version:%0ADependent%20Module%20Versions:&labels=bug)
|
||||
[Request a feature](https://github.com/epics-modules/motor/issues/new?title=%20FEATURE%20SHORT%20DESCRIPTION&body=**Feature Long Description**%0A%0A**Why%20should%20this%20be%20added?**%0A&labels=enhancement)
|
||||
|
||||
|
||||
converted from APS SVN repository: Fri Oct 16 12:31:41 CDT 2015
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
# ### ACS_MCB4B.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- INSTANCE - Name of asyn port to create
|
||||
#-
|
||||
#- NUM_AXES - Optional: Number of axes to create for this controller
|
||||
#- Default: 1
|
||||
#-
|
||||
#- MOVING_POLL - Optional: Moving poll rate (ms)
|
||||
#- Default: POLL_RATE
|
||||
#-
|
||||
#- IDLE_POLL - Optional: Idle poll rate (ms)
|
||||
#- Default: POLL_RATE
|
||||
#-
|
||||
#- POLL_RATE - Optional: Poll rate (ms)
|
||||
#- Default: 100
|
||||
#- ###################################################
|
||||
|
||||
# ACS MCB-4B serial connection settings
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=19200, BITS=8, STOP=1, PARITY=none")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "\r")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "\r")
|
||||
|
||||
MCB4BCreateController("$(INSTANCE)", "$(PORT)", $(NUM_AXES=1), $(MOVING_POLL=$(POLL_RATE=100)), $(IDLE_POLL=$(POLL_RATE=100)))
|
||||
@@ -0,0 +1,7 @@
|
||||
file "$(MOTOR)/db/asyn_motor.db"
|
||||
{
|
||||
pattern
|
||||
{N, M, ADDR, DESC, EGU, DIR, VELO, VBAS, ACCL, BDST, BVEL, BACC, MRES, PREC}
|
||||
{1, "m$(N)", 0, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 0.01, 5}
|
||||
#{2, "m$(N)", 1, "motor $(N)", degrees, Pos, 1, .1, .2, 0, 1, .2, 0.01, 5}
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
# ### McClennan_PM304.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- NUM_AXES - Optional: Number of axes on this controller
|
||||
#- Default: 1
|
||||
#-
|
||||
#- MAX_CONTROLLERS - Optional: Max number of controllers that will be configured
|
||||
#- Default: 1
|
||||
#-
|
||||
#- POLL_RATE - Optional: Controller poll rate in hertz
|
||||
#- Default: 10
|
||||
#- ###################################################
|
||||
|
||||
#- McClennan PM304 driver setup parameters:
|
||||
#- (1) maximum number of controllers in system
|
||||
#- (2) motor task polling rate (min=1Hz, max=60Hz)
|
||||
$(PM304_INIT_COMPLETE="") PM304Setup($(MAX_CONTROLLERS=1), $(POLL_RATE=10))
|
||||
|
||||
#- Insert serial port configuration settings here
|
||||
|
||||
#- McClennan PM304 driver configuration parameters:
|
||||
#- (1) controller being configured
|
||||
#- (2) MPF serial server name (string)
|
||||
#- (3) Number of axes on this controller
|
||||
PM304Config($(CONTROLLER=0), "$(PORT)", $(NUM_AXES=1))
|
||||
|
||||
epicsEnvSet("PM304_INIT_COMPLETE", "#")
|
||||
@@ -0,0 +1,37 @@
|
||||
# ### Newfocus_PMNC87xx.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- NUM_AXES - Optional: Number of axes on this controller
|
||||
#- Default: 1
|
||||
#-
|
||||
#- MAX_CONTROLLERS - Optional: Max number of controllers that will be configured
|
||||
#- Default: 1
|
||||
#-
|
||||
#- MAX_DRIVES - Optional: Max number of drives per controller
|
||||
#- Default: 1
|
||||
#-
|
||||
#- POLL_RATE - Optional: Controller poll rate in hertz
|
||||
#- Default: 10
|
||||
#- ###################################################
|
||||
|
||||
#- NewFocus Picomotor driver setup parameters:
|
||||
#- (1) maximum number of controllers in system
|
||||
#- (2) maximum drives per controller
|
||||
#- (3) motor task polling rate (min=1Hz, max=60Hz)
|
||||
$(PMNC87XX_INIT_COMPLETE="") PMNC87xxSetup($(MAX_CONTROLLERS=1), $(MAX_DRIVES=1), $(POLL_RATE=10))
|
||||
|
||||
#- Serial port configuration
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=19200, BITS=8, STOP=1, PARITY=none")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "\r")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "\r")
|
||||
|
||||
#- NewFocus Picomotor driver configuration parameters:
|
||||
#- (1) controller being configured
|
||||
#- (2) asyn port name (string)
|
||||
PMNC87xxConfig($(CONTROLLER=0), "$(PORT)")
|
||||
|
||||
epicsEnvSet("PMNC87XX_INIT_COMPLETE", "#")
|
||||
@@ -0,0 +1,30 @@
|
||||
# ### Newport_ESP300.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- MAX_CONTROLLERS - Optional: Max number of controllers that will be configured
|
||||
#- Default: 1
|
||||
#-
|
||||
#- POLL_RATE - Optional: Polling increment in 1/60 sec
|
||||
#- Default: 6
|
||||
#- ###################################################
|
||||
|
||||
#- Newport ESP300 driver setup parameters:
|
||||
#- (1) maximum number of controllers in system
|
||||
#- (2) motor task polling rate (min=1Hz,max=60Hz)
|
||||
$(ESP300_INIT_COMPLETE="") ESP300Setup($(MAX_CONTROLLERS=1), $(POLL_RATE=10))
|
||||
|
||||
# Newport ESP300 serial connection settings
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=9600, BITS=8, STOP=1, PARITY=none")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "")
|
||||
|
||||
#- Newport ESP300 driver configuration parameters:
|
||||
#- (1) controller# being configured
|
||||
#- (2) ASYN port name
|
||||
ESP300Config($(CONTROLLER=0), "$(PORT)")
|
||||
|
||||
epicsEnvSet("ESP300_INIT_COMPLETE", "#")
|
||||
@@ -0,0 +1,32 @@
|
||||
# ### Newport_NM4000.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- MAX_CONTROLLERS - Optional: Max number of controllers that will be configured
|
||||
#- Default: 1
|
||||
#-
|
||||
#- POLL_RATE - Optional: Controller poll rate in hertz
|
||||
#- Default: 10
|
||||
#- ###################################################
|
||||
|
||||
|
||||
#- Newport MM4000 driver setup parameters:
|
||||
#- (1) maximum # of controllers,
|
||||
#- (2) motor task polling rate (min=1Hz, max=60Hz)
|
||||
$(MM4000_INIT_COMPLETE="") MM4000Setup($(MAX_CONTROLLERS=1), $(POLL_RATE=10))
|
||||
|
||||
# Newport MM4000 serial connection settings
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=38400, BITS=8, STOP=1, PARITY=none")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "\r")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "\r")
|
||||
|
||||
# Newport MM4000 driver configuration parameters:
|
||||
# (1) controller
|
||||
# (2) asyn port name (e.g. serial0 or gpib1)
|
||||
# (3) GPIB address (0 for serial)
|
||||
MM4000Config($(CONTROLLER=0), "$(PORT)", 0)
|
||||
|
||||
epicsEnvSet("MM4000_INIT_COMPLETE", "#")
|
||||
@@ -0,0 +1,30 @@
|
||||
# ### Newport_PM500.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- MAX_CONTROLLERS - Optional: Max number of controllers that will be configured
|
||||
#- Default: 1
|
||||
#-
|
||||
#- POLL_RATE - Optional: Controller poll rate in hertz
|
||||
#- Default: 10
|
||||
#- ###################################################
|
||||
|
||||
#- Newport PM500 driver setup parameters:
|
||||
#- (1) maximum number of controllers in system
|
||||
#- (2) motor task polling rate (min=1Hz,max=60Hz)
|
||||
$(PM500_INIT_COMPLETE="") PM500Setup($(MAX_CONTROLLERS=1), $(POLL_RATE=10))
|
||||
|
||||
#- Newport PM500 serial connection settings
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=9600, BITS=7, STOP=2, PARITY=even, HANDSHAKE=hardware")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "\r")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "\r")
|
||||
|
||||
#- Newport PM500 configuration parameters:
|
||||
#- (1) controller
|
||||
#- (2) asyn port name (e.g. serial0 or gpib1)
|
||||
PM500Config($(CONTROLLER=0), "$(PORT)")
|
||||
|
||||
epicsEnvSet("PM500_INIT_COMPLETE", "#")
|
||||
@@ -0,0 +1,49 @@
|
||||
# ### PI_C630.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- MAX_CONTROLLERS - Optional: Max number of controllers that will be configured
|
||||
#- Default: 1
|
||||
#-
|
||||
#- NUM_AXES - Optional: Max number of axes per controller
|
||||
#- Default: 1
|
||||
#-
|
||||
#- POLL_RATE - Optional: Controller poll rate in hertz
|
||||
#- Default: 10
|
||||
#-
|
||||
#- CURR[1-9] - Optional: Current settings for axes 1 through 9
|
||||
#- Current equals 100mA * setting, maximum 800mA.
|
||||
#- Default: 0 (off)
|
||||
#- ###################################################
|
||||
|
||||
|
||||
#-################################################
|
||||
#- PI C-630 driver setup parameters:
|
||||
#- Load PIC630Setup once.
|
||||
#- (1) max # of controller groups. Controller groups are per serial port.
|
||||
#- (2) max # axes per controller group. Maximum 9. (addr 1-9)
|
||||
#- (3) motor task polling rate (min=1Hz, max=60Hz, 10Hz works well)
|
||||
#- Example:
|
||||
#- PIC630Setup(1, 2, 10) 1 group. 2 axes (controllers) in the group. 10Hz poll.
|
||||
$(PI_C630_INIT_COMPLETE="") PIC630Setup($(MAX_CONTROLLERS=1), $(NUM_AXES=1), $(POLL_RATE=10))
|
||||
|
||||
# PI C630 serial connection settings
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=19200, BITS=8, STOP=1, PARITY=none")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "\r")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "\r")
|
||||
|
||||
#- PIC630 driver configuration parameters:
|
||||
#- Load one PIC630Config for each group of PI C-630 drivers.
|
||||
#- (1) "Controller group" number
|
||||
#- (2) MPF card
|
||||
#- (3)-(11) Current setting per axis (1-9). Leave at 0 if unused.
|
||||
#- Choices: 0=OFF, 1=100mA, 2=200mA, ... 8=800mA.
|
||||
#- Example:
|
||||
#- PIC630Config(0, "serial1, 5, 3, 0, 0, 0, 0, 0, 0, 0")
|
||||
#- Group 0, asyn serial port 1, Axis1=.5A, Axis2=.3A, others OFF
|
||||
PIC630Config($(CONTROLLER=0), "$(PORT)", $(CURR1=0), $(CURR2=0), $(CURR3=0), $(CURR4=0), $(CURR5=0), $(CURR6=0), $(CURR7=0), $(CURR8=0), $(CURR9=0))
|
||||
|
||||
epicsEnvSet("PI_C630_INIT_COMPLETE", "#")
|
||||
@@ -0,0 +1,28 @@
|
||||
# ### PI_C867.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Controller port name will be PIC867$(CONTROLLER)
|
||||
#- Default: 0
|
||||
#-
|
||||
#- NUM_AXES - Optional: Max number of axes per controller
|
||||
#- Default: 1
|
||||
#-
|
||||
#- MOVING_POLL - Optional: Moving poll rate (in msec)
|
||||
#- Default: POLL_RATE
|
||||
#-
|
||||
#- IDLE_POLL - Optional: Idle poll rate (in msec)
|
||||
#- Default: POLL_RATE
|
||||
#-
|
||||
#- POLL_RATE - Optional: Poll rate in msec
|
||||
#- Default: 100
|
||||
#- ###################################################
|
||||
|
||||
|
||||
# PI C867 serial connection settings
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=38400, BITS=8, STOP=1, PARITY=none")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "\n\r")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "\n")
|
||||
|
||||
PI_GCS2_CreateController("PIC867$(CONTROLLER)", "$(PORT)", $(NUM_AXES=0), 0, 0, $(MOVING_POLL=$(POLL_RATE=100)), $(IDLE_POLL=$(POLL_RATE=100)))
|
||||
@@ -0,0 +1,31 @@
|
||||
# ### PI_E710.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- MAX_CONTROLLERS - Optional: Max number of controllers that will be configured
|
||||
#- Default: 1
|
||||
#-
|
||||
#- POLL_RATE - Optional: Controller poll rate in hertz
|
||||
#- Default: 10
|
||||
#- ###################################################
|
||||
|
||||
#- PI E-710 driver setup parameters:
|
||||
#- (1) maximum # of controllers,
|
||||
#- (2) motor task polling rate (min=1Hz, max=60Hz)
|
||||
$(E710_INIT_COMPLETE="") PIE710Setup($(MAX_CONTROLLERS=1), $(POLL_RATE=10))
|
||||
|
||||
# PI E710 serial connection settings
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=9600, BITS=8, STOP=1, PARITY=none")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "\n")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "\n")
|
||||
|
||||
#- PI E-710 driver configuration parameters:
|
||||
#- (1) controller
|
||||
#- (2) asyn port name (e.g. serial1 or gpib1)
|
||||
#- (3) GPIB address (0 for serial)
|
||||
PIE710Config($(CONTROLLER=0), "$(PORT)", 0)
|
||||
|
||||
epicsEnvSet("E710_INIT_COMPLETE", "#")
|
||||
@@ -0,0 +1,30 @@
|
||||
# ### PI_E816.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PORT - Serial port for communications
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- MAX_CONTROLLERS - Optional: Max number of controllers that will be configured
|
||||
#- Default: 1
|
||||
#-
|
||||
#- POLL_RATE - Optional: Controller poll rate in hertz
|
||||
#- Default: 10
|
||||
#- ###################################################
|
||||
|
||||
#- PI E-816 driver setup parameters:
|
||||
#- (1) maximum number of controllers in system
|
||||
#- (2) motor task polling rate (min=1Hz,max=60Hz)
|
||||
$(E816_INIT_COMPLETE="") PIE816Setup($(MAX_CONTROLLERS=1), $(POLL_RATE=10))
|
||||
|
||||
# PI E816 serial connection settings
|
||||
iocshLoad("$(IP)/iocsh/setSerialParams.iocsh", "PORT=$(PORT), BAUD=38400, BITS=8, STOP=1, PARITY=none, HANDSHAKE=hardware")
|
||||
asynOctetSetInputEos( "$(PORT)", -1, "\n")
|
||||
asynOctetSetOutputEos("$(PORT)", -1, "\n")
|
||||
|
||||
# PI E-816 driver configuration parameters:
|
||||
# (1) controller# being configured,
|
||||
# (2) ASYN port name
|
||||
PIE816Config($(CONTROLLER=0), "$(PORT)")
|
||||
|
||||
epicsEnvSet("E816_INIT_COMPLETE", "#")
|
||||
@@ -0,0 +1,10 @@
|
||||
# ### allstop.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PREFIX - IOC Prefix
|
||||
#- MOTOR - Location of motor module
|
||||
#- ###################################################
|
||||
|
||||
#- Allstop, alldone
|
||||
dbLoadRecords("$(MOTOR)/db/motorUtil.db", "P=$(PREFIX)")
|
||||
doAfterIocInit("motorUtilInit('$(PREFIX)')")
|
||||
@@ -0,0 +1,34 @@
|
||||
# ### motorSim.iocsh ###
|
||||
|
||||
#- ###################################################
|
||||
#- PREFIX - IOC Prefix
|
||||
#- INSTANCE - Instance name, used to create the low-level driver drvet name
|
||||
#- Combined with the controller number to create the asyn port name
|
||||
#-
|
||||
#- SUB - Optional: Subsitutions file (asyn_motor.db), Macros P, DTYP, PORT,
|
||||
#- DHLM, DLLM, and INIT will be predefined.
|
||||
#- Default: $(MOTOR)/iocsh/EXAMPLE_motorSim.substitutions
|
||||
#-
|
||||
#- CONTROLLER - Optional: Which controller is being configured
|
||||
#- Default: 0
|
||||
#-
|
||||
#- NUM_AXES - Optional: Number of axes on this controller
|
||||
#- Default: 1
|
||||
#-
|
||||
#- LOW_LIM - Optional: Low Limit
|
||||
#- Default: -32000
|
||||
#-
|
||||
#- HIGH_LIM - Optional: High Limit
|
||||
#- Default: 32000
|
||||
#-
|
||||
#- HOME - Optional: Home position
|
||||
#- Default: 0
|
||||
#- ###################################################
|
||||
|
||||
# Create simulated motors: ( start card , start axis , low limit, high limit, home posn, # cards, # axes to setup)
|
||||
motorSimCreate($(CONTROLLER=0), 0, $(LOW_LIM=-32000), $(HIGH_LIM=32000), $(HOME=0), 1, $(NUM_AXES=1))
|
||||
|
||||
# Setup the Asyn layer (portname, low-level driver drvet name, card, number of axes on card)
|
||||
drvAsynMotorConfigure("$(INSTANCE)$(CONTROLLER=0)", "$(INSTANCE)", $(CONTROLLER=0), $(NUM_AXES=1))
|
||||
|
||||
dbLoadTemplate("$(SUB=$(MOTOR)/iocsh/EXAMPLE_motorSim.substitutions", "P=$(PREFIX), DTYP='asynMotor', PORT=$(INSTANCE)$(CONTROLLER=0), DHLM=$(HIGH_LIM=32000), DLLM$(LOW_LIM=32000), INIT=\"\"")
|
||||
@@ -21,6 +21,8 @@
|
||||
#include <string.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "AcsRegister.h"
|
||||
#include "drvMCB4B.h"
|
||||
|
||||
@@ -37,6 +37,7 @@ USAGE... Motor record device level support for ACS Tech80 SPiiPlus
|
||||
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -47,6 +47,8 @@ USAGE... Motor record driver level support for ACS Tech80
|
||||
#include <epicsThread.h>
|
||||
#include <epicsString.h>
|
||||
#include <drvSup.h>
|
||||
#include <errlog.h>
|
||||
#include <stdlib.h>
|
||||
#include "motor.h"
|
||||
#include "ACSTech80Register.h"
|
||||
#include "drvSPiiPlus.h"
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -191,9 +191,6 @@ static int numA3200Controllers;
|
||||
/* Pointer to array of controller structures */
|
||||
static A3200Controller *pA3200Controller = NULL;
|
||||
|
||||
#define MAX(a, b) ((a)>(b) ? (a) : (b))
|
||||
#define MIN(a, b) ((a)<(b) ? (a) : (b))
|
||||
|
||||
static void motorAxisReportAxis(AXIS_HDL pAxis, int level)
|
||||
{
|
||||
if (level > 0)
|
||||
@@ -412,7 +409,6 @@ static int motorAxisSetInteger(AXIS_HDL pAxis, motorAxisParam_t function, int va
|
||||
if (ret_status != asynSuccess || inputBuff[0] != ASCII_ACK_CHAR)
|
||||
{
|
||||
motorParam->setInteger(pAxis->params, motorAxisCommError, 1);
|
||||
epicsMutexUnlock(pAxis->mutexId);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -448,6 +444,8 @@ static int motorAxisSetInteger(AXIS_HDL pAxis, motorAxisParam_t function, int va
|
||||
sprintf(outputBuff, "ENABLE %s", pAxis->axisName);
|
||||
}
|
||||
ret_status = sendAndReceive(pAxis->pController, outputBuff, inputBuff, sizeof(inputBuff));
|
||||
/* Set indicator to force status update when Enable does not work. */
|
||||
motorParam->setInteger(pAxis->params, motorAxisPowerOn, value);
|
||||
|
||||
/* Prevent Task #2 from blocking during LINEAR commands. */
|
||||
ret_status = sendAndReceive(pAxis->pController, (char *) "WAIT MODE AUTO", inputBuff, sizeof(inputBuff));
|
||||
@@ -881,18 +879,22 @@ int A3200AsynConfig(int card, /* Controller number */
|
||||
/* Get axes info */
|
||||
for (axis = 0; axis < numAxes; axis++)
|
||||
{
|
||||
sprintf(outputBuff, "$strtask0 = GETPARMSTRING %d, PARAMETERID_AxisName", axis);
|
||||
sendAndReceive(pController, outputBuff, inputBuff, sizeof(inputBuff));
|
||||
AXIS_HDL pAxis = &pController->pAxis[axis];
|
||||
pAxis->pController = pController;
|
||||
pAxis->card = card;
|
||||
pAxis->axis = axis;
|
||||
pAxis->mutexId = epicsMutexMustCreate();
|
||||
pAxis->params = motorParam->create(0, MOTOR_AXIS_NUM_PARAMS);
|
||||
|
||||
sendAndReceive(pController, "~GETVARIABLE $strtask0", inputBuff, sizeof(inputBuff));
|
||||
if (inputBuff[0] == ASCII_ACK_CHAR)
|
||||
if (inputBuff[0] != ASCII_ACK_CHAR)
|
||||
motorParam->setInteger(pAxis->params, motorAxisProblem, 1); /* Signal "Controller Error" to user. */
|
||||
else
|
||||
{
|
||||
AXIS_HDL pAxis = &pController->pAxis[axis];
|
||||
pAxis->pController = pController;
|
||||
pAxis->card = card;
|
||||
pAxis->axis = axis;
|
||||
pAxis->mutexId = epicsMutexMustCreate();
|
||||
pAxis->params = motorParam->create(0, MOTOR_AXIS_NUM_PARAMS);
|
||||
sprintf(outputBuff, "$strtask0 = GETPARMSTRING %d, PARAMETERID_AxisName", axis);
|
||||
sendAndReceive(pController, outputBuff, inputBuff, sizeof(inputBuff));
|
||||
|
||||
sendAndReceive(pController, "~GETVARIABLE $strtask0", inputBuff, sizeof(inputBuff));
|
||||
|
||||
strncpy(pAxis->axisName, &inputBuff[1], sizeof(pAxis->axisName) - 1);
|
||||
|
||||
sprintf(outputBuff, GET_PARAM_FORMAT_STRING, "PositionFeedbackType", pAxis->axisName);
|
||||
@@ -938,6 +940,9 @@ int A3200AsynConfig(int card, /* Controller number */
|
||||
}
|
||||
}
|
||||
|
||||
if (inputBuff[0] != ASCII_ACK_CHAR)
|
||||
return MOTOR_AXIS_ERROR;
|
||||
|
||||
sendAndReceive(pController, "~INITQUEUE", inputBuff, sizeof(inputBuff));
|
||||
|
||||
/* Prevent Task #2 and #3 from blocking during LINEAR commands. */
|
||||
|
||||
@@ -206,9 +206,6 @@ static int numEnsembleControllers;
|
||||
/* Pointer to array of controller structures */
|
||||
static EnsembleController *pEnsembleController=NULL;
|
||||
|
||||
#define MAX(a,b) ((a)>(b)? (a): (b))
|
||||
#define MIN(a,b) ((a)<(b)? (a): (b))
|
||||
|
||||
static void motorAxisReportAxis(AXIS_HDL pAxis, int level)
|
||||
{
|
||||
if (level > 0)
|
||||
@@ -436,6 +433,8 @@ static int motorAxisSetInteger(AXIS_HDL pAxis, motorAxisParam_t function, int va
|
||||
sprintf(outputBuff, "ENABLE @%d", pAxis->axis);
|
||||
}
|
||||
ret_status = sendAndReceive(pAxis->pController, outputBuff, inputBuff, sizeof(inputBuff));
|
||||
/* Set indicator to force status update when Enable does not work. */
|
||||
motorParam->setInteger(pAxis->params, motorAxisPowerOn, value);
|
||||
|
||||
/* Prevent ASCII interpreter from blocking during MOVEABS/INC commands. */
|
||||
ret_status = sendAndReceive(pAxis->pController, (char *) "WAIT MODE NOWAIT", inputBuff, sizeof(inputBuff));
|
||||
|
||||
@@ -43,6 +43,8 @@
|
||||
#include <epicsThread.h>
|
||||
#include <epicsString.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "drvSoloist.h"
|
||||
#include "asynOctetSyncIO.h"
|
||||
|
||||
@@ -36,6 +36,7 @@ USAGE... Motor record device level support for Intelligent Motion
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
#include <errlog.h>
|
||||
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
|
||||
@@ -47,6 +47,7 @@ DESIGN LIMITATIONS...
|
||||
#include <string.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "drvMCDC2805.h"
|
||||
#include "asynOctetSyncIO.h"
|
||||
|
||||
@@ -41,6 +41,7 @@ USAGE... Motor record device level support for Intelligent Motion
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -41,6 +41,7 @@ USAGE... Motor record device level support for Intelligent Motion
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -43,6 +43,7 @@ USAGE... Motor record device level support for Intelligent Motion
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
#include <errlog.h>
|
||||
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
|
||||
@@ -56,6 +56,8 @@ DESIGN LIMITATIONS...
|
||||
#include <string.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "drvIM483.h"
|
||||
#include "asynOctetSyncIO.h"
|
||||
|
||||
@@ -55,6 +55,8 @@ DESIGN LIMITATIONS...
|
||||
#include <ctype.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "drvIM483.h"
|
||||
#include "asynOctetSyncIO.h"
|
||||
|
||||
@@ -76,6 +76,8 @@ DESIGN LIMITATIONS...
|
||||
#include <string.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "drvIM483.h"
|
||||
#include "asynOctetSyncIO.h"
|
||||
|
||||
@@ -38,6 +38,8 @@ USAGE... Motor record device level support for Kohzu SC800 motor controll
|
||||
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -45,6 +45,8 @@ USAGE... Motor record driver level support for Kohzu SC800
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <iocsh.h>
|
||||
#include <errlog.h>
|
||||
#include <stdlib.h>
|
||||
#include "motor.h"
|
||||
#include "motorRecord.h"
|
||||
#include "drvSC800.h"
|
||||
|
||||
@@ -36,6 +36,8 @@
|
||||
#include <epicsThread.h>
|
||||
#include <epicsString.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "drvPM304.h"
|
||||
#include "asynOctetSyncIO.h"
|
||||
|
||||
@@ -23,6 +23,8 @@
|
||||
#include <string.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "drvMicos.h"
|
||||
#include "epicsExport.h"
|
||||
|
||||
@@ -89,6 +89,8 @@ USAGE... Motor record device level support for MicroMo
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include <ctype.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -125,6 +125,8 @@ MORE DESIGN LIMITATIONS
|
||||
#include <string.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "drvMVP2001.h"
|
||||
#include "epicsExport.h"
|
||||
|
||||
@@ -73,9 +73,10 @@ class epicsShareClass asynMotorAxis {
|
||||
double *profileFollowingErrors_; /**< Array of following errors for profile moves */
|
||||
int referencingMode_;
|
||||
|
||||
private:
|
||||
MotorStatus status_;
|
||||
int statusChanged_;
|
||||
|
||||
private:
|
||||
int referencingModeMove_;
|
||||
int wasMovingFlag_;
|
||||
int disableFlag_;
|
||||
|
||||
@@ -277,15 +277,14 @@ asynStatus asynMotorController::writeFloat64(asynUser *pasynUser, epicsFloat64 v
|
||||
/* Set the parameter and readback in the parameter library. */
|
||||
status = pAxis->setDoubleParam(function, value);
|
||||
|
||||
getDoubleParam(axis, motorVelBase_, &baseVelocity);
|
||||
getDoubleParam(axis, motorVelocity_, &velocity);
|
||||
getDoubleParam(axis, motorAccel_, &acceleration);
|
||||
|
||||
if (function == motorMoveRel_) {
|
||||
if (autoPower == 1) {
|
||||
status = pAxis->setClosedLoop(true);
|
||||
epicsThreadSleep(autoPowerOnDelay);
|
||||
}
|
||||
getDoubleParam(axis, motorVelBase_, &baseVelocity);
|
||||
getDoubleParam(axis, motorVelocity_, &velocity);
|
||||
getDoubleParam(axis, motorAccel_, &acceleration);
|
||||
status = pAxis->move(value, 1, baseVelocity, velocity, acceleration);
|
||||
pAxis->setIntegerParam(motorStatusDone_, 0);
|
||||
pAxis->callParamCallbacks();
|
||||
@@ -299,6 +298,9 @@ asynStatus asynMotorController::writeFloat64(asynUser *pasynUser, epicsFloat64 v
|
||||
status = pAxis->setClosedLoop(true);
|
||||
epicsThreadSleep(autoPowerOnDelay);
|
||||
}
|
||||
getDoubleParam(axis, motorVelBase_, &baseVelocity);
|
||||
getDoubleParam(axis, motorVelocity_, &velocity);
|
||||
getDoubleParam(axis, motorAccel_, &acceleration);
|
||||
status = pAxis->move(value, 0, baseVelocity, velocity, acceleration);
|
||||
pAxis->setIntegerParam(motorStatusDone_, 0);
|
||||
pAxis->callParamCallbacks();
|
||||
@@ -312,6 +314,8 @@ asynStatus asynMotorController::writeFloat64(asynUser *pasynUser, epicsFloat64 v
|
||||
status = pAxis->setClosedLoop(true);
|
||||
epicsThreadSleep(autoPowerOnDelay);
|
||||
}
|
||||
getDoubleParam(axis, motorVelBase_, &baseVelocity);
|
||||
getDoubleParam(axis, motorAccel_, &acceleration);
|
||||
status = pAxis->moveVelocity(baseVelocity, value, acceleration);
|
||||
pAxis->setIntegerParam(motorStatusDone_, 0);
|
||||
pAxis->callParamCallbacks();
|
||||
@@ -326,6 +330,9 @@ asynStatus asynMotorController::writeFloat64(asynUser *pasynUser, epicsFloat64 v
|
||||
status = pAxis->setClosedLoop(true);
|
||||
epicsThreadSleep(autoPowerOnDelay);
|
||||
}
|
||||
getDoubleParam(axis, motorVelBase_, &baseVelocity);
|
||||
getDoubleParam(axis, motorVelocity_, &velocity);
|
||||
getDoubleParam(axis, motorAccel_, &acceleration);
|
||||
forwards = (value == 0) ? 0 : 1;
|
||||
status = pAxis->home(baseVelocity, velocity, acceleration, forwards);
|
||||
pAxis->setIntegerParam(motorStatusDone_, 0);
|
||||
|
||||
@@ -183,6 +183,9 @@ USAGE... Motor Record Support.
|
||||
* .72 03-13-15 rls - Changed RDBL to set RRBV rather than DRBV.
|
||||
* .73 02-15-16 rls - JOGF/R soft limit error check was using the wrong coordinate sytem limits.
|
||||
* Changed error checks from dial to user limits.
|
||||
* .74 09-28-16 rls - Reverted .71 FLNK change. Except for the condition that DMOV == FALSE, FLNK
|
||||
* processing was standard. If processing is needed on a DMOV false to true
|
||||
* transition, a new motor record field should be added.
|
||||
*/
|
||||
|
||||
#define VERSION 6.10
|
||||
@@ -1163,10 +1166,10 @@ Exit:
|
||||
Update record timestamp, call recGblGetTimeStamp().
|
||||
Process alarms, call alarm_sub().
|
||||
Monitor changes to record fields, call monitor().
|
||||
IF Done Moving field (DMOV) is TRUE, AND, Last Done Moving (LDMV) was False.
|
||||
|
||||
IF Done Moving field (DMOV) is TRUE
|
||||
Process the forward-scan-link record, call recGblFwdLink().
|
||||
ENDIF
|
||||
Update Last Done Moving (LDMV).
|
||||
Set Processing Active indicator field (PACT) false.
|
||||
Exit.
|
||||
|
||||
@@ -1406,9 +1409,8 @@ process_exit:
|
||||
alarm_sub(pmr); /* If we've violated alarm limits, yell. */
|
||||
monitor(pmr); /* If values have changed, broadcast them. */
|
||||
|
||||
if (pmr->dmov != 0 && pmr->ldmv == 0) /* Test for False to True transition. */
|
||||
if (pmr->dmov != 0)
|
||||
recGblFwdLink(pmr); /* Process the forward-scan-link record. */
|
||||
pmr->ldmv = pmr->dmov;
|
||||
|
||||
pmr->pact = 0;
|
||||
Debug(4, "process:---------------------- end; motor \"%s\"\n", pmr->name);
|
||||
@@ -2450,7 +2452,6 @@ static long special(DBADDR *paddr, int after)
|
||||
if (pmr->dmov == TRUE)
|
||||
{
|
||||
pmr->dmov = FALSE;
|
||||
pmr->ldmv = pmr->dmov;
|
||||
db_post_events(pmr, &pmr->dmov, DBE_VAL_LOG);
|
||||
}
|
||||
return(OK);
|
||||
|
||||
@@ -586,11 +586,6 @@ recordtype(motor) {
|
||||
special(SPC_NOMOD)
|
||||
initial("1")
|
||||
}
|
||||
field(LDMV,DBF_SHORT) {
|
||||
prompt("Last Done moving value")
|
||||
special(SPC_NOMOD)
|
||||
initial("1")
|
||||
}
|
||||
field(MOVN,DBF_SHORT) {
|
||||
prompt("Motor is moving")
|
||||
special(SPC_NOMOD)
|
||||
|
||||
@@ -44,6 +44,8 @@ Last Modified: 2004/12/20 21:10:53
|
||||
|
||||
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -66,6 +66,8 @@ Last Modified: 2005/03/30 19:10:48
|
||||
#include <string.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "NewFocusRegister.h"
|
||||
#include "drvPMNCCom.h"
|
||||
#include "asynOctetSyncIO.h"
|
||||
|
||||
@@ -38,6 +38,7 @@ USAGE... Motor record device level support for Newport ESP300.
|
||||
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -40,6 +40,8 @@ USAGE... Motor record device level support for Newport MM3000.
|
||||
|
||||
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -44,6 +44,7 @@ USAGE... Motor record device level support for Newport MM4000.
|
||||
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -42,6 +42,7 @@ USAGE... Motor record device level support for the Newport PM500 motor
|
||||
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -56,6 +56,8 @@ USAGE... Motor record driver level support for Newport ESP300/100.
|
||||
#include <string.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <errlog.h>
|
||||
#include <stdlib.h>
|
||||
#include "motor.h"
|
||||
#include "NewportRegister.h"
|
||||
#include "drvMMCom.h"
|
||||
|
||||
@@ -68,6 +68,8 @@ USAGE... Motor record driver level support for Newport MM3000.
|
||||
#include <epicsThread.h>
|
||||
#include <epicsString.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "NewportRegister.h"
|
||||
#include "drvMMCom.h"
|
||||
|
||||
@@ -84,6 +84,8 @@ USAGE... Motor record driver level support for Newport MM4000.
|
||||
#include <epicsThread.h>
|
||||
#include <epicsString.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "NewportRegister.h"
|
||||
#include "drvMMCom.h"
|
||||
|
||||
@@ -55,6 +55,8 @@ USAGE... Motor record driver level support for Newport PM500.
|
||||
#include <math.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "NewportRegister.h"
|
||||
#include "drvMMCom.h"
|
||||
|
||||
@@ -35,6 +35,8 @@ USAGE... Device level support for OMS MAXv model.
|
||||
* .01 04-05-05 rls Copied from devOms58.cc
|
||||
*/
|
||||
|
||||
#include <errlog.h>
|
||||
|
||||
#include "motorRecord.h"
|
||||
#include "devOmsCom.h"
|
||||
#include "epicsExport.h"
|
||||
|
||||
@@ -78,6 +78,7 @@ USAGE... Data and functions common to all OMS device level support.
|
||||
#include <epicsThread.h>
|
||||
#include <epicsString.h>
|
||||
#include <dbAccess.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
|
||||
@@ -111,6 +111,7 @@ USAGE... Motor record driver level support for OMS model MAXv.
|
||||
#include <iocsh.h>
|
||||
#include <epicsExit.h>
|
||||
#include <cantProceed.h>
|
||||
#include <errlog.h>
|
||||
|
||||
#include "motorRecord.h" /* For Driver Power Monitor feature only. */
|
||||
#include "motor.h"
|
||||
|
||||
@@ -110,6 +110,8 @@ USAGE... Driver level support for OMS models VME8, VME44, VS4 and VX2.
|
||||
#include <epicsInterrupt.h>
|
||||
#include <epicsExit.h>
|
||||
#include <epicsEvent.h>
|
||||
#include <errlog.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "motor.h"
|
||||
#include "drvOms.h"
|
||||
|
||||
@@ -125,6 +125,8 @@ USAGE... Motor record driver level support for OMS model VME58.
|
||||
#include <epicsThread.h>
|
||||
#include <epicsExit.h>
|
||||
#include <epicsInterrupt.h>
|
||||
#include <errlog.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "motorRecord.h" /* For Driver Power Monitor feature only. */
|
||||
#include "motor.h"
|
||||
|
||||
@@ -72,6 +72,8 @@ USAGE... Motor record driver level support for OMS PC68 serial device.
|
||||
#include <dbAccess.h>
|
||||
#include <drvSup.h>
|
||||
#include <iocsh.h>
|
||||
#include <errlog.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "motor.h"
|
||||
#include "drvOmsPC68Com.h"
|
||||
|
||||
@@ -37,6 +37,7 @@ USAGE... Motor record device level support for Parker Compumotor drivers
|
||||
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -43,6 +43,8 @@ USAGE... Motor record driver level support for Spectra-Physics
|
||||
#include <stdio.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <errlog.h>
|
||||
#include <stdlib.h>
|
||||
#include "motor.h"
|
||||
#include "OrielRegister.h"
|
||||
#include "drvEMC18011.h"
|
||||
|
||||
@@ -37,6 +37,7 @@ USAGE... Motor record device level support for Parker Compumotor drivers
|
||||
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -43,6 +43,8 @@ USAGE... Motor record driver level support for Parker Computmotor
|
||||
#include <stdio.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "ParkerRegister.h"
|
||||
#include "drvPC6K.h"
|
||||
|
||||
@@ -37,6 +37,7 @@ USAGE... Motor record device level support for Physik Instrumente (PI)
|
||||
|
||||
|
||||
#include <string.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -44,6 +44,8 @@ DESIGN LIMITATIONS...
|
||||
#include <math.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "drvPIJEDS.h"
|
||||
|
||||
@@ -37,6 +37,7 @@ USAGE... Motor record device level support for Physik Instrumente (PI)
|
||||
|
||||
|
||||
#include <string.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -15,6 +15,8 @@ USAGE... Motor record device level support for Physik Instrumente (PI)
|
||||
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -38,6 +38,7 @@ USAGE... Motor record device level support for Physik Instrumente (PI)
|
||||
|
||||
|
||||
#include <string.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -41,6 +41,7 @@ USAGE... Motor record device level support for Physik Instrumente (PI)
|
||||
|
||||
|
||||
#include <string.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -19,6 +19,8 @@ USAGE... Motor record device level support for Physik Instrumente (PI)
|
||||
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -38,6 +38,7 @@ USAGE... Motor record device level support for Physik Instrumente (PI)
|
||||
|
||||
|
||||
#include <string.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -38,6 +38,7 @@ USAGE... Motor record device level support for Physik Instrumente (PI)
|
||||
|
||||
|
||||
#include <string.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -41,6 +41,7 @@ Last Modified: 2007/03/30 20:01:05
|
||||
|
||||
|
||||
#include <string.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -22,6 +22,8 @@
|
||||
#include <string.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "drvPIC630.h"
|
||||
#include "asynOctetSyncIO.h"
|
||||
|
||||
@@ -48,6 +48,8 @@ DESIGN LIMITATIONS...
|
||||
#include <math.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "drvPIC662.h"
|
||||
#include "epicsExport.h"
|
||||
|
||||
@@ -22,6 +22,8 @@ DESIGN LIMITATIONS...
|
||||
#include <string.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "drvPIC663.h"
|
||||
|
||||
@@ -58,6 +58,8 @@ DESIGN LIMITATIONS...
|
||||
#include <string.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "drvPI.h"
|
||||
#include "epicsExport.h"
|
||||
|
||||
@@ -46,6 +46,8 @@ DESIGN LIMITATIONS...
|
||||
#include <string.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "drvPIC848.h"
|
||||
|
||||
@@ -31,6 +31,8 @@ DESIGN LIMITATIONS...
|
||||
#include <string.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "drvPIC862.h"
|
||||
|
||||
@@ -45,6 +45,8 @@ DESIGN LIMITATIONS...
|
||||
#include <string.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "drvPIE516.h"
|
||||
|
||||
@@ -45,6 +45,8 @@ DESIGN LIMITATIONS...
|
||||
#include <string.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "drvPIE710.h"
|
||||
|
||||
@@ -53,6 +53,8 @@ DESIGN LIMITATIONS...
|
||||
#include <string.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "drvPIE816.h"
|
||||
|
||||
@@ -41,6 +41,7 @@ USAGE... Motor record driver level support for Animatics Corporation SmartMot
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
#include <errlog.h>
|
||||
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
|
||||
@@ -44,6 +44,8 @@ USAGE... Motor record driver level support for Animatics Corporation SmartMot
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <iocsh.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "motorRecord.h"
|
||||
#include "drvSmartMotor.h"
|
||||
|
||||
@@ -38,6 +38,7 @@ USAGE... Motor record device level support for ThorLabs Piezo Control
|
||||
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include <errlog.h>
|
||||
#include "motorRecord.h"
|
||||
#include "motor.h"
|
||||
#include "motordevCom.h"
|
||||
|
||||
@@ -44,6 +44,8 @@ USAGE... Motor record driver level support for ThorLabs
|
||||
#include <stdio.h>
|
||||
#include <epicsThread.h>
|
||||
#include <drvSup.h>
|
||||
#include <stdlib.h>
|
||||
#include <errlog.h>
|
||||
#include "motor.h"
|
||||
#include "ThorLabsRegister.h"
|
||||
#include "drvMDT695.h"
|
||||
|
||||
@@ -240,58 +240,6 @@ text {
|
||||
textix="(SECONDS)"
|
||||
align="horiz. centered"
|
||||
}
|
||||
"text entry" {
|
||||
object {
|
||||
x=1000
|
||||
y=113
|
||||
width=50
|
||||
height=16
|
||||
}
|
||||
control {
|
||||
chan="$(P)$(M5).BACC"
|
||||
clr=14
|
||||
bclr=2
|
||||
}
|
||||
}
|
||||
"text entry" {
|
||||
object {
|
||||
x=1000
|
||||
y=128
|
||||
width=50
|
||||
height=16
|
||||
}
|
||||
control {
|
||||
chan="$(P)$(M6).BACC"
|
||||
clr=14
|
||||
bclr=2
|
||||
}
|
||||
}
|
||||
"text entry" {
|
||||
object {
|
||||
x=1000
|
||||
y=143
|
||||
width=50
|
||||
height=16
|
||||
}
|
||||
control {
|
||||
chan="$(P)$(M7).BACC"
|
||||
clr=14
|
||||
bclr=2
|
||||
}
|
||||
}
|
||||
"text entry" {
|
||||
object {
|
||||
x=1000
|
||||
y=158
|
||||
width=50
|
||||
height=16
|
||||
}
|
||||
control {
|
||||
chan="$(P)$(M8).BACC"
|
||||
clr=14
|
||||
bclr=2
|
||||
}
|
||||
}
|
||||
"text entry" {
|
||||
object {
|
||||
x=1000
|
||||
|
||||
@@ -583,230 +583,6 @@ $(pv_value)</tooltip>
|
||||
<tooltip></tooltip>
|
||||
<x>950</x>
|
||||
</widget>
|
||||
<widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="1.0">
|
||||
<border_alarm_sensitive>false</border_alarm_sensitive>
|
||||
<visible>true</visible>
|
||||
<vertical_alignment>1</vertical_alignment>
|
||||
<multiline_input>false</multiline_input>
|
||||
<auto_size>false</auto_size>
|
||||
<scripts />
|
||||
<height>16</height>
|
||||
<forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
|
||||
<precision_from_pv>true</precision_from_pv>
|
||||
<background_color>
|
||||
<color name="Gray_2" red="218" green="218" blue="218" />
|
||||
</background_color>
|
||||
<widget_type>Text Input</widget_type>
|
||||
<enabled>true</enabled>
|
||||
<text></text>
|
||||
<font>
|
||||
<fontdata fontName="Sans" height="7" style="0" />
|
||||
</font>
|
||||
<width>50</width>
|
||||
<border_style>3</border_style>
|
||||
<pv_value />
|
||||
<border_width>1</border_width>
|
||||
<maximum>Infinity</maximum>
|
||||
<minimum>-Infinity</minimum>
|
||||
<show_units>false</show_units>
|
||||
<wuid>39872d87:13e14015f61:-38de</wuid>
|
||||
<rotation_angle>0.0</rotation_angle>
|
||||
<name>Text Input</name>
|
||||
<scale_options>
|
||||
<width_scalable>true</width_scalable>
|
||||
<height_scalable>true</height_scalable>
|
||||
<keep_wh_ratio>false</keep_wh_ratio>
|
||||
</scale_options>
|
||||
<format_type>1</format_type>
|
||||
<transparent>false</transparent>
|
||||
<selector_type>0</selector_type>
|
||||
<pv_name>$(P)$(M5).BACC</pv_name>
|
||||
<foreground_color>
|
||||
<color name="Gray_14" red="0" green="0" blue="0" />
|
||||
</foreground_color>
|
||||
<backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
|
||||
<precision>0</precision>
|
||||
<confirm_message></confirm_message>
|
||||
<rules />
|
||||
<limits_from_pv>false</limits_from_pv>
|
||||
<border_color>
|
||||
<color red="0" green="128" blue="255" />
|
||||
</border_color>
|
||||
<horizontal_alignment>0</horizontal_alignment>
|
||||
<actions hook="false" hook_all="false" />
|
||||
<y>113</y>
|
||||
<tooltip>$(pv_name)
|
||||
$(pv_value)</tooltip>
|
||||
<x>1000</x>
|
||||
</widget>
|
||||
<widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="1.0">
|
||||
<border_alarm_sensitive>false</border_alarm_sensitive>
|
||||
<visible>true</visible>
|
||||
<vertical_alignment>1</vertical_alignment>
|
||||
<multiline_input>false</multiline_input>
|
||||
<auto_size>false</auto_size>
|
||||
<scripts />
|
||||
<height>16</height>
|
||||
<forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
|
||||
<precision_from_pv>true</precision_from_pv>
|
||||
<background_color>
|
||||
<color name="Gray_2" red="218" green="218" blue="218" />
|
||||
</background_color>
|
||||
<widget_type>Text Input</widget_type>
|
||||
<enabled>true</enabled>
|
||||
<text></text>
|
||||
<font>
|
||||
<fontdata fontName="Sans" height="7" style="0" />
|
||||
</font>
|
||||
<width>50</width>
|
||||
<border_style>3</border_style>
|
||||
<pv_value />
|
||||
<border_width>1</border_width>
|
||||
<maximum>Infinity</maximum>
|
||||
<minimum>-Infinity</minimum>
|
||||
<show_units>false</show_units>
|
||||
<wuid>39872d87:13e14015f61:-38dd</wuid>
|
||||
<rotation_angle>0.0</rotation_angle>
|
||||
<name>Text Input</name>
|
||||
<scale_options>
|
||||
<width_scalable>true</width_scalable>
|
||||
<height_scalable>true</height_scalable>
|
||||
<keep_wh_ratio>false</keep_wh_ratio>
|
||||
</scale_options>
|
||||
<format_type>1</format_type>
|
||||
<transparent>false</transparent>
|
||||
<selector_type>0</selector_type>
|
||||
<pv_name>$(P)$(M6).BACC</pv_name>
|
||||
<foreground_color>
|
||||
<color name="Gray_14" red="0" green="0" blue="0" />
|
||||
</foreground_color>
|
||||
<backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
|
||||
<precision>0</precision>
|
||||
<confirm_message></confirm_message>
|
||||
<rules />
|
||||
<limits_from_pv>false</limits_from_pv>
|
||||
<border_color>
|
||||
<color red="0" green="128" blue="255" />
|
||||
</border_color>
|
||||
<horizontal_alignment>0</horizontal_alignment>
|
||||
<actions hook="false" hook_all="false" />
|
||||
<y>128</y>
|
||||
<tooltip>$(pv_name)
|
||||
$(pv_value)</tooltip>
|
||||
<x>1000</x>
|
||||
</widget>
|
||||
<widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="1.0">
|
||||
<border_alarm_sensitive>false</border_alarm_sensitive>
|
||||
<visible>true</visible>
|
||||
<vertical_alignment>1</vertical_alignment>
|
||||
<multiline_input>false</multiline_input>
|
||||
<auto_size>false</auto_size>
|
||||
<scripts />
|
||||
<height>16</height>
|
||||
<forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
|
||||
<precision_from_pv>true</precision_from_pv>
|
||||
<background_color>
|
||||
<color name="Gray_2" red="218" green="218" blue="218" />
|
||||
</background_color>
|
||||
<widget_type>Text Input</widget_type>
|
||||
<enabled>true</enabled>
|
||||
<text></text>
|
||||
<font>
|
||||
<fontdata fontName="Sans" height="7" style="0" />
|
||||
</font>
|
||||
<width>50</width>
|
||||
<border_style>3</border_style>
|
||||
<pv_value />
|
||||
<border_width>1</border_width>
|
||||
<maximum>Infinity</maximum>
|
||||
<minimum>-Infinity</minimum>
|
||||
<show_units>false</show_units>
|
||||
<wuid>39872d87:13e14015f61:-38dc</wuid>
|
||||
<rotation_angle>0.0</rotation_angle>
|
||||
<name>Text Input</name>
|
||||
<scale_options>
|
||||
<width_scalable>true</width_scalable>
|
||||
<height_scalable>true</height_scalable>
|
||||
<keep_wh_ratio>false</keep_wh_ratio>
|
||||
</scale_options>
|
||||
<format_type>1</format_type>
|
||||
<transparent>false</transparent>
|
||||
<selector_type>0</selector_type>
|
||||
<pv_name>$(P)$(M7).BACC</pv_name>
|
||||
<foreground_color>
|
||||
<color name="Gray_14" red="0" green="0" blue="0" />
|
||||
</foreground_color>
|
||||
<backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
|
||||
<precision>0</precision>
|
||||
<confirm_message></confirm_message>
|
||||
<rules />
|
||||
<limits_from_pv>false</limits_from_pv>
|
||||
<border_color>
|
||||
<color red="0" green="128" blue="255" />
|
||||
</border_color>
|
||||
<horizontal_alignment>0</horizontal_alignment>
|
||||
<actions hook="false" hook_all="false" />
|
||||
<y>143</y>
|
||||
<tooltip>$(pv_name)
|
||||
$(pv_value)</tooltip>
|
||||
<x>1000</x>
|
||||
</widget>
|
||||
<widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="1.0">
|
||||
<border_alarm_sensitive>false</border_alarm_sensitive>
|
||||
<visible>true</visible>
|
||||
<vertical_alignment>1</vertical_alignment>
|
||||
<multiline_input>false</multiline_input>
|
||||
<auto_size>false</auto_size>
|
||||
<scripts />
|
||||
<height>16</height>
|
||||
<forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
|
||||
<precision_from_pv>true</precision_from_pv>
|
||||
<background_color>
|
||||
<color name="Gray_2" red="218" green="218" blue="218" />
|
||||
</background_color>
|
||||
<widget_type>Text Input</widget_type>
|
||||
<enabled>true</enabled>
|
||||
<text></text>
|
||||
<font>
|
||||
<fontdata fontName="Sans" height="7" style="0" />
|
||||
</font>
|
||||
<width>50</width>
|
||||
<border_style>3</border_style>
|
||||
<pv_value />
|
||||
<border_width>1</border_width>
|
||||
<maximum>Infinity</maximum>
|
||||
<minimum>-Infinity</minimum>
|
||||
<show_units>false</show_units>
|
||||
<wuid>39872d87:13e14015f61:-38db</wuid>
|
||||
<rotation_angle>0.0</rotation_angle>
|
||||
<name>Text Input</name>
|
||||
<scale_options>
|
||||
<width_scalable>true</width_scalable>
|
||||
<height_scalable>true</height_scalable>
|
||||
<keep_wh_ratio>false</keep_wh_ratio>
|
||||
</scale_options>
|
||||
<format_type>1</format_type>
|
||||
<transparent>false</transparent>
|
||||
<selector_type>0</selector_type>
|
||||
<pv_name>$(P)$(M8).BACC</pv_name>
|
||||
<foreground_color>
|
||||
<color name="Gray_14" red="0" green="0" blue="0" />
|
||||
</foreground_color>
|
||||
<backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
|
||||
<precision>0</precision>
|
||||
<confirm_message></confirm_message>
|
||||
<rules />
|
||||
<limits_from_pv>false</limits_from_pv>
|
||||
<border_color>
|
||||
<color red="0" green="128" blue="255" />
|
||||
</border_color>
|
||||
<horizontal_alignment>0</horizontal_alignment>
|
||||
<actions hook="false" hook_all="false" />
|
||||
<y>158</y>
|
||||
<tooltip>$(pv_name)
|
||||
$(pv_value)</tooltip>
|
||||
<x>1000</x>
|
||||
</widget>
|
||||
<widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="1.0">
|
||||
<border_alarm_sensitive>false</border_alarm_sensitive>
|
||||
<visible>true</visible>
|
||||
@@ -5920,4 +5696,4 @@ $(pv_value)</tooltip>
|
||||
$(pv_value)</tooltip>
|
||||
<x>0</x>
|
||||
</widget>
|
||||
</display>
|
||||
</display>
|
||||
|
||||
@@ -451,150 +451,6 @@ QPushButton::menu-indicator {image: url(none.png); width: 0}
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="caTextEntry" name="caTextEntry_4">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>1000</x>
|
||||
<y>113</y>
|
||||
<width>50</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="fontScaleMode">
|
||||
<enum>caLineEdit::WidthAndHeight</enum>
|
||||
</property>
|
||||
<property name="channel">
|
||||
<string>$(P)$(M5).BACC</string>
|
||||
</property>
|
||||
<property name="foreground">
|
||||
<color alpha="255">
|
||||
<red>0</red>
|
||||
<green>0</green>
|
||||
<blue>0</blue>
|
||||
</color>
|
||||
</property>
|
||||
<property name="background">
|
||||
<color alpha="255">
|
||||
<red>218</red>
|
||||
<green>218</green>
|
||||
<blue>218</blue>
|
||||
</color>
|
||||
</property>
|
||||
<property name="colorMode">
|
||||
<enum>caLineEdit::Static</enum>
|
||||
</property>
|
||||
<property name="formatType">
|
||||
<enum>decimal</enum>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="caTextEntry" name="caTextEntry_5">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>1000</x>
|
||||
<y>128</y>
|
||||
<width>50</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="fontScaleMode">
|
||||
<enum>caLineEdit::WidthAndHeight</enum>
|
||||
</property>
|
||||
<property name="channel">
|
||||
<string>$(P)$(M6).BACC</string>
|
||||
</property>
|
||||
<property name="foreground">
|
||||
<color alpha="255">
|
||||
<red>0</red>
|
||||
<green>0</green>
|
||||
<blue>0</blue>
|
||||
</color>
|
||||
</property>
|
||||
<property name="background">
|
||||
<color alpha="255">
|
||||
<red>218</red>
|
||||
<green>218</green>
|
||||
<blue>218</blue>
|
||||
</color>
|
||||
</property>
|
||||
<property name="colorMode">
|
||||
<enum>caLineEdit::Static</enum>
|
||||
</property>
|
||||
<property name="formatType">
|
||||
<enum>decimal</enum>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="caTextEntry" name="caTextEntry_6">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>1000</x>
|
||||
<y>143</y>
|
||||
<width>50</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="fontScaleMode">
|
||||
<enum>caLineEdit::WidthAndHeight</enum>
|
||||
</property>
|
||||
<property name="channel">
|
||||
<string>$(P)$(M7).BACC</string>
|
||||
</property>
|
||||
<property name="foreground">
|
||||
<color alpha="255">
|
||||
<red>0</red>
|
||||
<green>0</green>
|
||||
<blue>0</blue>
|
||||
</color>
|
||||
</property>
|
||||
<property name="background">
|
||||
<color alpha="255">
|
||||
<red>218</red>
|
||||
<green>218</green>
|
||||
<blue>218</blue>
|
||||
</color>
|
||||
</property>
|
||||
<property name="colorMode">
|
||||
<enum>caLineEdit::Static</enum>
|
||||
</property>
|
||||
<property name="formatType">
|
||||
<enum>decimal</enum>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="caTextEntry" name="caTextEntry_7">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>1000</x>
|
||||
<y>158</y>
|
||||
<width>50</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="fontScaleMode">
|
||||
<enum>caLineEdit::WidthAndHeight</enum>
|
||||
</property>
|
||||
<property name="channel">
|
||||
<string>$(P)$(M8).BACC</string>
|
||||
</property>
|
||||
<property name="foreground">
|
||||
<color alpha="255">
|
||||
<red>0</red>
|
||||
<green>0</green>
|
||||
<blue>0</blue>
|
||||
</color>
|
||||
</property>
|
||||
<property name="background">
|
||||
<color alpha="255">
|
||||
<red>218</red>
|
||||
<green>218</green>
|
||||
<blue>218</blue>
|
||||
</color>
|
||||
</property>
|
||||
<property name="colorMode">
|
||||
<enum>caLineEdit::Static</enum>
|
||||
</property>
|
||||
<property name="formatType">
|
||||
<enum>decimal</enum>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="caTextEntry" name="caTextEntry_8">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
@@ -4401,4 +4257,4 @@ QPushButton::menu-indicator {image: url(none.png); width: 0}
|
||||
<zorder>caTextEntry_63</zorder>
|
||||
</widget>
|
||||
</widget>
|
||||
</ui>
|
||||
</ui>
|
||||
|
||||
Reference in New Issue
Block a user