Commit Graph

90 Commits

Author SHA1 Message Date
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
7a81e2c5a0 Reduced output from MasterMacsDriver 2023-07-13 10:57:07 +02:00
f1a17bc295 Added AMOR detector tower special pmac motors: working now 2023-07-07 13:54:21 +02:00
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
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
f333a27482 Added missing file after merging MasterMACS 2023-03-21 15:05:25 +01:00
9055a86b57 Added two missing files 2023-03-21 14:56:38 +01:00
ccd73babd5 First working version of the MasterMACS EPICS driver
Also added some test code
2023-03-21 14:55:07 +01:00
b8896b7a85 Implemented speed for the PMAC controller 2023-02-22 11:54:54 +01:00
acf1751081 Merge branch 'master' into speed 2023-02-17 10:46:06 +01:00
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
d706915a46 Implemented changing speed on EL734
Added a test IOCs for EL734
2023-02-17 10:43:51 +01:00
3c9932dc18 - Reduced poll rate of EL737
- Removed unneeded hardware limit reading code from EL734
2023-02-16 14:29:05 +01:00
9b9072b83b Improved error handling in the EL737 scalerRecord driver 2023-01-31 11:42:04 +01:00
3b2a21094c Fixed pmacV3 axis codes 2023-01-12 15:16:49 +01:00
a899a28182 sMore debugging output in devScalerEL737 2023-01-11 15:09:43 +01:00
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
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
brambilla_m
929f9f600d Add PMAC V3
- limit switches: use PXX37, PXX38 insteam of MXX21, MXX22
- if the motor is running query for axis position (QXX10) and status (PXX00)
- else query also error status (PXX01) and limit switches (PXX37-8)
- make the requests in 1+1 transactions
2022-05-20 08:35:42 +00:00
brambilla_m
8c3e68394f Changes to Scaler, add build for version 7 in Makefile 2022-05-20 10:25:41 +02:00
Michele Brambilla
646607e476 EuroMove fix "addrCommand" bug in controller 2022-03-02 06:41:39 +01:00
Michele Brambilla
68a265b199 EL734 positioning failure + improve logging 2022-03-02 06:39:18 +01:00
Michele Brambilla
542abcbaad pmac improve handling of the error message 2022-03-02 06:37:33 +01:00
efbd0e19cf Updated EuromoveDriver to work with Prologix GPIB-Ethernet
Improved threshold handling on EL737
Minor changes
2021-06-17 09:30:28 +02:00
6de4a878ef Merge branch 'amor-selene'
Conflicts:
	.gitignore
	sinqEPICSApp/src/pmacAxis.cpp
	sinqEPICSApp/src/pmacAxis.h
	sinqEPICSApp/src/pmacController.cpp
	sinqEPICSApp/src/pmacController.h
2020-10-01 09:31:23 +02:00
d86da602d2 Added .gitignore 2020-07-09 14:19:13 +02:00
c9e7830274 - Fixed reference run for Phytron
- Added brake handling to phytron
- Added code to set speed for phytron
- Removed scaling on Selene pmac limits
- Removed enabling on Selene pmac axis
2020-07-09 14:15:26 +02:00
d1d74f4db3 Merge branch 'master' of ssh://git.psi.ch/sinqdev/sinqepicsapp 2020-06-23 09:20:17 +02:00
d1beb9b0d8 Merge branch 'master' of ssh://git.psi.ch/sinqdev/sinqepicsapp into amor-selene 2020-06-23 09:19:25 +02:00
3ae13875cf Added fucking brake support to Phytron 2020-06-23 09:18:12 +02:00
f56ef2c74c Committing the last status of selene work in the corona lockdown.
The problem is in the MCU, probably
2020-03-18 15:53:44 +01:00
michele-brambilla
a25f8cabb9 Selene positions do not need factor *1000 2020-02-19 15:39:23 +01:00
michele-brambilla
c4fe45c0cb Add a set PV for the SeleneMotor
- make the number of extra parameters in SINQController configurable
    - add database entry for the motor set field
    - add the new function "setMotorPosition_" to the Selene controller
    - execute Qx59=<pos> to set the new position
2020-02-18 12:32:24 +01:00
michele-brambilla
3b7133ecfe Make sure that the SINQ library version stays the same 2020-02-18 12:31:25 +01:00
michele-brambilla
e9a615d0fa Changes in pmac controller 2020-02-17 11:10:02 +01:00
12249d5471 Implemented Homing on the EuroMove driver 2020-02-10 10:00:56 +01:00
6d823e2265 Removed a debug statement from EuroMoveDriver.cpp 2020-01-24 13:04:40 +01:00