Commit Graph

109 Commits

Author SHA1 Message Date
wall_e d88e5877a7 Bugfix: A disabled PMac is no longer consider moving 2024-v2 2024-09-18 10:57:57 +02:00
wall_e 118e177e04 Bugfix: A disabled PMac is no longer consider moving 2024-09-18 10:48:59 +02:00
wall_e f61daf0b49 just adds some warnings for potentially incorrect code 2024-09-11 15:07:25 +02:00
mathis_s 6dbd0fc0d7 Merge branch 'SINQSW-86-read-after-motor-reconnection' into 'master'
SINQSW-86 fix build error

See merge request sinqdev/sinqepicsapp!2
2024-09-10 09:21:15 +02:00
wall_e e657ea675c SINQSW-86 fix build error 2024-09-10 09:21:15 +02:00
mathis_s 5c0c917be9 Merge branch 'initializer_for_EL734Axis' into 'master'
Girder axis and initializer EL734Axis

See merge request sinqdev/sinqepicsapp!3
2024-09-10 09:19:24 +02:00
mathis_s 35c12274b0 Merge branch 'master' into 'initializer_for_EL734Axis'
# Conflicts:
#   sinqEPICSApp/src/EL734Driver.cpp
2024-09-10 09:19:06 +02:00
mathis_s a6a8f14b26 The member variable oredMSR of EL734Axis contains the axis status from the previous poll.
Therefore, it needs to initialized with a sensible value (i.e. 1 which
means that the axis is standing still and has no errors.
2024-09-10 08:58:59 +02:00
koennecke 33f118ce1e Fixed type in pmacController.cpp 2024-08-20 11:14:18 +02:00
koennecke adf8b30692 Minor changes to SINQ drivers:
- Fixed enable/disable at MasterMACS
2024-08-20 11:12:18 +02:00
Mathis Stefan c972cce072 Added girder translation axis drivers 2024-07-18 13:43:12 +02:00
koennecke 64c8b08ce4 Fixed an initialisation bug in EL734Driver which prevented motors from
being polled. The value in question was next_poll which is now set to -1
in the constructor.
2024-06-07 13:36:34 +02:00
koennecke 30228adf50 - Fixed a enable PV initialisation bug in MasterMACS
- Made the HRPT axis base itself on V3 of the pmacAxis
- Improved and added utils programs
2024-06-07 08:58:53 +02:00
koennecke d9d6dae19f Updated the sync utilities 2024-05-23 16:00:32 +02:00
koennecke 32a8c27dbf Merge branch 'speed' 2024-02-23 11:34:26 +01:00
koennecke 235e403fb3 - Added Makefile.RHEL8 for RHEL8
- Added a interMessagePeriod to SINQController, pmacController and MasterMACSController. Also a iocsh command to modify this at runtime
2024-02-23 11:30:46 +01:00
koennecke b4e201ae86 Final version of the SINQ EPICS module for RHEL7 in 2023
- Fixes to MasterMACS, mostly.
- Minor changes
2024-01-11 14:05:49 +01:00
soederqvist_a 9422353107 Alex: Committing Mark's fixes to el737 devsup 2023-09-12 16:43:24 +02:00
koennecke e3ac2962f5 - Many improvements to the MasterMACS driver
- Slowing down the pmac driver
- Fixing a bug in the Nanotec driver which caused an IOC crash when the
  motor sends bad data
2023-08-28 15:01:48 +02:00
koennecke 7a81e2c5a0 Reduced output from MasterMacsDriver 2023-07-13 10:57:07 +02:00
koennecke f1a17bc295 Added AMOR detector tower special pmac motors: working now 2023-07-07 13:54:21 +02:00
koennecke 8a6441927a Implemented that enable commands are only sent when a status chnage is required
Stop commands are only sent by EL734 and pmac when actually moving. The
motor record logic calls stop() in an excessive way.
2023-05-31 09:37:22 +02:00
koennecke 72afd02b4e Many improvements to the MasterMACS motor driver. It is working but the hardware is shaky.
Added support for dose rate controlled Phytron motors. Not tested!
Small bug fixes
2023-05-31 09:13:41 +02:00
koennecke f333a27482 Added missing file after merging MasterMACS 2023-03-21 15:05:25 +01:00
koennecke 4a2731b054 Added yet another missing file 2023-03-21 14:58:21 +01:00
koennecke 9055a86b57 Added two missing files 2023-03-21 14:56:38 +01:00
koennecke ccd73babd5 First working version of the MasterMACS EPICS driver
Also added some test code
2023-03-21 14:55:07 +01:00
koennecke b8896b7a85 Implemented speed for the PMAC controller 2023-02-22 11:54:54 +01:00
koennecke acf1751081 Merge branch 'master' into speed 2023-02-17 10:46:06 +01:00
koennecke 61290b5e2c Added utility programs which update motor subsitutions files from
the values read rom the actual controller
2023-02-17 10:45:15 +01:00
koennecke d706915a46 Implemented changing speed on EL734
Added a test IOCs for EL734
2023-02-17 10:43:51 +01:00
koennecke 3c9932dc18 - Reduced poll rate of EL737
- Removed unneeded hardware limit reading code from EL734
2023-02-16 14:29:05 +01:00
koennecke 9b9072b83b Improved error handling in the EL737 scalerRecord driver 2023-01-31 11:42:04 +01:00
koennecke 3b2a21094c Fixed pmacV3 axis codes 2023-01-12 15:16:49 +01:00
koennecke a899a28182 sMore debugging output in devScalerEL737 2023-01-11 15:09:43 +01:00
koennecke 0cbfe45893 Fixed ErormoveDriver to stop only on end switches when the target
exceeds the limits. Otherwise motors would get stuck on the switches
when trying to move off them.
2022-08-16 10:54:10 +02:00
brambilla_m bb1c10c7cd EL737 Increase timeout
The EL737 module micht give rise to a failure if the counterbox
does not reply withing 1s. This is the case at FOCUS.
With this commit the timeout is increased to 2s.
2022-07-21 13:42:31 +02:00
brambilla_m 339da2e9ff PMAC V3: axis status 5,6 not a failure
The old implementation assumes that the axis staying in state 5,6
for too much time a implies a failure. This is no longer the case.
2022-07-21 13:37:32 +02:00
brambilla_m 80877aa6ab pmacV3 read speed and evaluate ETA 2022-05-27 15:21:46 +02:00
koennecke afc92bde3f Improved status reporting 2022-05-20 10:38:32 +02:00
brambilla_m 8e2c1af10e Some cleanup, force reload encoder before enable 2022-05-20 08:35:42 +00:00
brambilla_m f5da0d54bd Reduce polling, se MsgTxt if move when disabled 2022-05-20 08:35:42 +00:00
Michele Brambilla ad05433602 Bugfix + cleanup 2022-05-20 08:35:42 +00:00
Michele Brambilla 92364a1de8 Can set and read enable, something broken with movements and status 2022-05-20 08:35:42 +00:00
Michele Brambilla 403eecafae pmac Enable PV successfully tested 2022-05-20 08:35:42 +00:00
brambilla_m fbf2331a05 pmacV3 read axis state 2022-05-20 08:35:42 +00:00
Michele Brambilla 14bbda3364 Add pmacV3 poll 2022-05-20 08:35:42 +00:00
Michele Brambilla c7fea08718 pmacV3 enable/disable axis
The default behaviour of the pmac controller is to enable the motor at startup. With the controller V3 we want that at IOC startup the axis to be off.
A database entry like

record(longout, "$(P)$(M):Enable") {
    field(DTYP, "asynInt32")
    field(OUT, "@asyn($(PORT),$(N),1) ENABLE_AXIS")
    field(PINI, "YES")
}

can be used to give access to enable/disable the axis.
2022-05-20 08:35:42 +00:00
Michele Brambilla edc71af235 Bugfix pmacV3 2022-05-20 08:35:42 +00:00
brambilla_m c805385ad1 Allow enable/disable (tentative) 2022-05-20 08:35:42 +00:00