Commit Graph

2212 Commits

Author SHA1 Message Date
timmmooney 33c4ea599c some typos 2013-12-02 19:47:53 +00:00
timmmooney d3255670fb Improve comparison between programmed trajectory and recorded trajectory: TRy several index-offset values, fit chisquare to parabola, use minumum. 2013-12-02 19:32:41 +00:00
timmmooney 21756a0b28 make PSO pulse spacing positive definite 2013-11-27 17:12:15 +00:00
timmmooney f97c65de4b Gather parameter numbers. Use ReverseMotionDirection in conversion from raw encoder to user units. 2013-11-26 16:46:31 +00:00
timmmooney bdefb9329a must use pVar in escaped code 2013-11-25 20:40:05 +00:00
timmmooney 3ff2e11b00 position-offset read was in wrong place in code 2013-11-25 20:38:13 +00:00
timmmooney f6943e2ee1 While trajectory is executing, check at 10 Hz. (Previously checked as fast as processor would go.)
Record difference between pfbkprog and pfbkcal (position feedback commands), and correct scope data for the difference.
Make sure first command sent to sendReceive() causes it to check that the AeroBasic program is running.
Condition all scope commands on the macro variable, USE_SCOPE.
2013-11-25 19:26:37 +00:00
timmmooney 9783e9fad8 Check for abort while reading scope data; default is PSO_DISTANCE_ARRAY==0; when PSO_DISTANCE_ARRAY==0, use a fixed grid of (motorlastpos-motorfirstpos)/npulses 2013-11-20 19:40:06 +00:00
timmmooney 36b73d317e read position, velocity error at user specified rate 2013-11-18 16:17:23 +00:00
timmmooney 385f4abfe0 read position and velocity errors at user specified rate 2013-11-18 16:09:52 +00:00
timmmooney 104a140694 note that controller must use the same units as the motor record 2013-11-18 16:08:06 +00:00
timmmooney 24ae9139a9 cleanup, no change in function 2013-11-18 16:07:32 +00:00
Ron Sluiter 8a99070ad6 Added bus flushing read on exit from ISR to fix "out of order transactions"; symptom "Spurious interrupts". 2013-11-15 19:44:42 +00:00
timmmooney 2097ad3ef7 for one motor 2013-11-15 17:10:25 +00:00
timmmooney f609d4bff8 added some docs on Ensemble trajectory 2013-11-14 18:36:46 +00:00
timmmooney 9b342b09bf check num global doubles; restrict nelements accordingly 2013-11-14 18:36:01 +00:00
kmpeters 0bf0cbd212 Modified motorUtil to also provide name of motor every time .DMOV field changes. This will allow smart clients to maintain a list of moving motors. 2013-11-13 21:43:36 +00:00
kmpeters d6c90868c7 Register listMovingMotors function so non-vxWorks iocs can use it. 2013-11-13 19:36:23 +00:00
timmmooney 2c3036c197 Check everything sent to controller; use SCOPE commands to compare trajectory as executed with desired trajectory; fix velocity-limit bug; retry trajectory if it fails to start; make PSO generation conditional on outBitNum in range (0,15) inclusive; controller claims motors are done when they aren't, so allow for retries; was checking only bit lsbit of moving indicator, now check for nonzero; mind max velocity as configured on controller, as well as in motor record; move parameters to communicatewith AeroBasci to header file; change acknowledge from AeroBasic from "IGLOBAL(cmdVar)=0" to "IGLOBAL(cmdVar)=-(IGLOBAL(cmdVar))"; do trajectory entirely on controller, in absolute time and position; add decel points to trajectory. 2013-11-12 23:07:56 +00:00
timmmooney e450e27669 Added defines to communicate with AeroBasic program on controller. 2013-11-12 22:53:22 +00:00
timmmooney 0eb9e5c5b8 Added LINEAR, DRIVEINFO, and data-acquisition commands; make dwell time programmable from client; use absolute position and time; added DOTRAJECTORY pseudo command, to perform trajectory entirely on controller; acknowledge by setting IGLOBAL(cmdVAR) to -(IGLOBAL(cmdVAR)), instead of zero, so client has a better idea of what happened. 2013-11-12 22:52:21 +00:00
kmpeters 18253335e2 Added Micronix to Makefile. 2013-11-08 16:47:36 +00:00
MarkRivers e2dc2ac947 Move busy before aysn, would not build on Cygwin in other order; add PI_GCS2Support 2013-11-05 20:50:57 +00:00
MarkRivers 7a6545120d Added .VELO, needed in some applications 2013-11-01 18:32:39 +00:00
kmpeters 96035c7e6e Modified MMC-200 driver to also support the MMC-100 2013-10-31 21:44:37 +00:00
kmpeters 9493eed8d4 Modified MMC200Driver.cpp to clear errors if present while polling. 2013-10-29 15:46:51 +00:00
kmpeters f1d6a3ced5 Fixed caByte display of MSTA field. 2013-10-22 21:20:35 +00:00
Ron Sluiter 38dde6adc1 Updated MAXv limit switch true commands (LL & LH are legacy commands). 2013-10-10 18:20:17 +00:00
kmpeters a1e1d298fc Added Micronix MMC-200 examples. 2013-10-08 21:00:45 +00:00
kmpeters dba34ec14c Added ignoreLimit argument to MMC200Controller() 2013-10-08 18:25:07 +00:00
MarkRivers e410d7ba5c Removed asyn.dbd and motorRecord.dbd; not needed and does not work on 3.15 2013-10-02 18:17:57 +00:00
timmmooney aa6434eebf Added scope commands 2013-09-23 17:15:52 +00:00
MarkRivers dbde547693 Added seq, pv to LIBS, needed to build dynamically on Windows 2013-09-20 23:19:55 +00:00
timmmooney 1ffbd7b481 Added notes about EnsembleTrajectoryScan 2013-09-19 22:19:32 +00:00
timmmooney 2d9f71dff6 AeroBasic program that must be compiled and loaded into the controller for EnsembleTrajectoryScan to work. 2013-09-19 22:18:55 +00:00
timmmooney b28691a460 some cleanup, removing stuff from MAX_trajectoryScan.st (from which this was developed). Trajectory must run while it's being loaded, so user updates and abort handling have moved into loadTrajectory(). If timeMode!=TIME_MODE_TOTAL, calculate total time. Warn if time between trajectory points is less than .03 s, because we won't be able to keep up. Note this code is not ready for more than one motor. Abort handling is still under development, though pretty thorough. sendReceiveCommand() now checks that the "doCommand" program is running, and starts it if it isn't. This should only be needed for aborts. 2013-09-19 22:17:44 +00:00
timmmooney 7a80234f51 Add STATUS_WARNING 2013-09-19 22:08:45 +00:00
kmpeters eeadbad5bf Added limit polarity argument to MVP2001Axis 2013-09-13 15:43:19 +00:00
timmmooney c7afb8d37d Ensemble trajectory support 2013-09-12 20:51:50 +00:00
kmpeters d7e6e839c4 Removed the commented-out C300Axis::report method declaration to avoid confusion. 2013-08-28 16:52:21 +00:00
MarkRivers 1b6c89c98a Comment out axis report() function, not defined in source which leads to error on Windows 2013-08-28 16:25:24 +00:00
MarkRivers 01e5d2924d Removed redefinition of asynPrint, produces compiler error on Windows 2013-08-28 16:16:45 +00:00
MarkRivers f088b3319d Moved epicsExport.h to compile on Windows dynamically 2013-08-28 16:16:03 +00:00
MarkRivers f97d06ab0f Removed motorVersion.h, does not exist; fixed names of 2 parameters; moved epicsExport.h to compile on Windows dynamically 2013-08-28 16:15:21 +00:00
MarkRivers 1af1b84179 Changed abs to fabs to avoid compiler error on Windows; other changes to avoid compiler warnings on Linux 2013-08-28 16:14:12 +00:00
kmpeters 7c5e1b5e94 Added new MVP2001 support to motor release documentation. 2013-08-14 22:24:11 +00:00
kmpeters 9b2e2b346a Added asyn, model-3 driver for the MVP2001. 2013-08-14 22:14:00 +00:00
kmpeters 9b3af6ab55 Updated to PI_GCS2_2013_07_12.tgz 2013-08-02 22:02:31 +00:00
kmpeters 99922e7d6b Added support for rotary stages to smarAct MCS driver. 2013-07-26 21:24:53 +00:00
mp49 1409d6323f XPSController and XPSAxis: moved some defines from the source file to the header file in XPSController. Added support for reading the XPS positioner status string in XPSAxis, and adding it to the parameter library. 2013-07-18 19:59:06 +00:00