cd3bbe64e3
SICS-594 Check and update motor configuration for the monochromator motors.
Ferdi Franceschini
2013-05-21 12:26:32 +10:00
55d3c34a24
restore RemoveCallback3 as RemoveCallbackUsr to get (un)interest working again
Douglas Clowes
2013-05-17 15:23:49 +10:00
041735a969
Some cosmetic changes to runsics.py
Ferdi Franceschini
2013-05-20 09:07:49 +10:00
36445471bf
Execute netstat and kill as the right user in runsics.py. Also reduced feedback whent start, stopping and checking SICS status.
Ferdi Franceschini
2013-05-19 16:33:34 +10:00
d5b90fddbc
The runsics.py --dev option should launch SICS under the current user.
Ferdi Franceschini
2013-05-19 15:17:25 +10:00
df5eec7d0e
Slave hdb paths which are chained to a master path were being updated twice. The slaves were being updated with the master's reading as well as their reading.
Ferdi Franceschini
2013-05-17 10:50:53 +10:00
f0c008c714
Use the right host address for counters on Taipan.
Ferdi Franceschini
2013-05-17 07:36:30 +10:00
17d72343e7
Removed old error message
Jing Chen
2013-05-17 07:34:29 +10:00
58caa19668
Bugfix, The value None was being set instead of an empty string when no environment variables are defined.
Ferdi Franceschini
2013-05-17 04:36:51 +10:00
650ac39f35
Added --dev option for developers to runsics.py Also eliminated problems with inheriting environment when running on test and instrument hosts.
Ferdi Franceschini
2013-05-17 03:43:16 +10:00
caa10de20e
SICS-606 Allow defining multiple motors and ranges to forbid moves. Added to support the anticollision requirements for the monochrommator axes on Pelican.
Ferdi Franceschini
2013-05-17 03:22:49 +10:00
4873263714
SICS-607 Fix hipadaba chain callbacks. Reverted code commented out by PSI.
Ferdi Franceschini
2013-05-17 03:16:55 +10:00
576f598e76
Saliya's fixes to the 'kill' commands for runsics.py
Ferdi Franceschini
2013-05-16 14:12:41 +10:00
5baf09913c
Remove dependency on named ports for SICSserver ports.
Ferdi Franceschini
2013-05-16 06:41:52 +10:00
fc9f6f6152
Modified runsics.py so that status checking works with Python 2.6.6 on SL6 This was done by replacing subprocess.check_output() with subprocess.Popen().communicate().
Ferdi Franceschini
2013-05-16 06:30:37 +10:00
3f75de6357
Added Dan's changes to motor acceleration. Axes now drive more smoothly. Also set creep control on focussing motors. This has improved precision of the monochromator focussing from 0.5 to 0.1 degrees.
Ferdi Franceschini
2013-05-15 20:40:41 +10:00
bf3bd5342e
Use hostport_config for quokka detector addresses and ports.
Ferdi Franceschini
2013-05-13 23:31:12 +10:00
babc5fe17e
A new runsics script has been implemented in python (runsics.py). It supports the new "fakedev" simulation mode which runs SICS with real drivers for devices which have simulated controllers. There are advance options which allow multiple instances of SICS to be launched on development and test environments. Also we no longer depend on having serverport numbers in /etc/services.
Ferdi Franceschini
2013-05-13 23:11:15 +10:00
ea3c8b7821
BUGFIX Set 50ns veto window parameter correctly on the Fermi chopper. Also disable the idle setting in the 'run' command. And check that the 'run' command actually succeeded.
Ferdi Franceschini
2013-05-13 22:15:43 +10:00
b8d059c266
BUGFIX Forgot to actually send coil value when set. Also cleared stale error messages.
Ferdi Franceschini
2013-05-13 22:14:22 +10:00
b1597c96f3
Handle the idle_toggle command properly on the fake fermi chopper.
Ferdi Franceschini
2013-05-13 22:00:37 +10:00
0f2df4a8fe
SICS-593: Return 0 from the AsconReading state to ensure that SICS progresses through tasks.
Ferdi Franceschini
2013-05-13 08:40:30 +10:00
a192276023
Don't send a start when driving the phase-control fermi-motors. We don't want to start a chopper before the speed is set if the following command is issued, drive mchp 1.3e6 mchs 4000
Ferdi Franceschini
2013-05-08 10:54:02 +10:00
59eb6d2b0d
Catch the fermi chopper setspeed error and pass it up to motor.c
Ferdi Franceschini
2013-05-08 08:00:40 +10:00
3a18a61479
Fixed fake fermi chopper direction and initialised speed to zero.
Ferdi Franceschini
2013-05-08 07:59:34 +10:00
50dbadc811
Set both fermi choppers to phase mode. You can set both speed and phase delay in phase mode.
Ferdi Franceschini
2013-05-08 07:15:55 +10:00
c50d73740b
Added phase motors for fermi master and slave choppers.
Ferdi Franceschini
2013-05-07 18:51:03 +10:00
da0b00c938
Load environment configuration file taipan_setup.txt if it exists.
Ferdi Franceschini
2013-05-06 21:23:41 +10:00
5c76f7a243
SICS-587 (in progress) Put IP and PORT configurations in a single file. TODO environment
Ferdi Franceschini
2013-05-06 20:41:37 +10:00
33059d6493
ID of velocity selector currently used on Quokka TODO This should be at the /usr/local/sics level.
Ferdi Franceschini
2013-05-05 23:03:17 +10:00
f11612bc5b
SICS-601: Provide a command to get the textstatus list from the histogram server.
Ferdi Franceschini
2013-05-05 23:00:05 +10:00
c09968b72e
Attempt a reconnect for astvels protocol if a command times out. This lets us re-use the astvel protovol to support SICS-601 so that HTTP connections will reconnect after the connection times out.
Ferdi Franceschini
2013-05-05 18:59:46 +10:00
7e1e4e2d45
Don't allow change of direction if the fermimotor speed != 0. Added an "idle" subcommand so the speed can be set to zero without delevitating. Also added alarm reset command.
Ferdi Franceschini
2013-05-03 00:36:53 +10:00
ce78ec9b87
Add idle toggle to Fermi chopper sim and control verbosity.
Ferdi Franceschini
2013-05-02 14:07:05 +10:00
7be5d2f326
Set correct IP address for Pelican beam monitors.
Ferdi Franceschini
2013-05-01 07:40:43 +10:00
ecd9707eb2
Set fermi chopper direction when setting speed.
Ferdi Franceschini
2013-05-01 07:32:31 +10:00
82afa86fa0
Cosmetic changes to the simulated fermi chopper controller.
Ferdi Franceschini
2013-04-29 20:45:50 +10:00
c452e8982b
Fermi chopper motors should ignore INT1712 interrupts. Don't halt choppers just because someone tried to interrupt a scan. Also make slave chopper optional in mkFermiMotors.
Ferdi Franceschini
2013-04-29 20:42:06 +10:00
961f581bf2
Fixed parsing of intlck_status. It's 16 bits not 8 bits!
Ferdi Franceschini
2013-04-29 20:41:06 +10:00
b3a2c5c976
Merge in changes from taipan branch.
Ferdi Franceschini
2013-04-28 17:15:45 +10:00
50a2545f97
tasdrive now only monitors motors which are driving. Fixes SICS-568 Because tasdrive now stops calling status checking on a motor which has terminated for any reason. SICS-570: The correct motor names are now reported by tasdrive. SICS-575: Use ANSTO motor names when reporting limit violations.
Ferdi Franceschini
2013-04-28 16:28:02 +10:00
a6cfbe8b7f
SICS-597: Don't drive a motor if it is within precision of the target.
Ferdi Franceschini
2013-04-27 18:16:30 +10:00
44579ee8aa
SICS-595: Added "busy" checks to the callbacks used by asynnet.c:anetRead()
Ferdi Franceschini
2013-04-27 18:00:36 +10:00
c6f1dd6591
Load test IP and PORT numbers when SICS_SIMULATION is set.
Ferdi Franceschini
2013-04-25 11:16:25 +10:00
d8b48728b4
SICS-587 (in progress) IP and PORT configurations DONE for Quokka. TODO Environment controllers etc.
Ferdi Franceschini
2013-04-24 16:54:22 +10:00
20a3dff71e
New Neutron Velocity Selector simulatin for Quokka.
Ferdi Franceschini
2013-04-24 16:49:06 +10:00
e28b1f77da
SICS-593 (in progress) Protocol handlers should return 0 from the AsconReading state.
Ferdi Franceschini
2013-04-24 16:44:53 +10:00
bdf1c24c57
SICS-587 (in progress) Get host and port from the HISTMEM_HOSTPORT dictionary.
Ferdi Franceschini
2013-04-23 16:54:09 +10:00
2ea0e042ee
Implements run and drive wrappers which set allowed target values when driving the fermi motors.
Ferdi Franceschini
2013-04-23 10:29:41 +10:00
b15014bfd5
The mchs and schs motors can now be driven via run and drive command wrappers. Running mchs and schs sets the motor gain parameters. Uses new ANSTO tclmotor implementation.
Ferdi Franceschini
2013-04-23 10:26:28 +10:00
bda409da04
Fix host names and port numbers.
Ferdi Franceschini
2013-04-23 10:25:09 +10:00
34f22ea669
Use real chopper drivers when env var SICS_SIMULATION=fakedev
Ferdi Franceschini
2013-04-23 10:23:27 +10:00
99a4ccc2ee
Deploy the fake controllers with SICS.
Ferdi Franceschini
2013-04-23 10:05:17 +10:00
579ad59ebf
Simple simulation of Fermi chopper control. Currently it lets you set coils and registers for three controllers. It will also set the up_to_speed, lev_complete, and run flags for the system status. TODO Phase control and locking.
Ferdi Franceschini
2013-04-23 09:56:44 +10:00
013398d0da
Use a port number which normal users have permission to access.
Ferdi Franceschini
2013-04-21 17:51:48 +10:00
a9bd5cc5da
SICS-587 (in progress) Put IP and PORT configurations in a single file. Pelican DONE motor, counter, chopper. TODO hmm, environment.
Ferdi Franceschini
2013-04-21 14:57:57 +10:00
49e6a584c0
SICS-587 (in progress) Put IP and PORT configuration in one file. Platypus TODO hmm, environment, and devices like multimeters and the sylvac.
Ferdi Franceschini
2013-04-21 10:54:51 +10:00
73ba1b0dba
Merge branch 'merge-replace' of /home/ferdi/workspace/GIT/sicsdev_git into merge-replace
Ferdi Franceschini
2013-04-20 18:57:53 +10:00
a22d403c87
Added sicsdebug flag to control verbosity of log files. If sicsdebug == 0 log output from commands executed in macros is suppressed.
Ferdi Franceschini
2013-04-20 18:55:38 +10:00
cdafe4d650
Set default "movecount" to 500 ms.
Ferdi Franceschini
2013-04-20 18:43:41 +10:00
91d6e52a41
SICS-580 Pom precision was too high. The encoder resolution is 0.044 degrees so made precisoin = 0.05
Ferdi Franceschini
2013-04-20 18:37:55 +10:00
a5c097cedc
Treat Tcl procs prefixed with imot_, hdb_ and get_ specially. hdb_, Parameter will be added to hdb tree. imot_, Motor interface function, eg run, status. get_, Tcl code will be evaluated when "mot list" is called. Add debug info.
Ferdi Franceschini
2013-04-20 18:28:28 +10:00
98cf4d5dc4
SICS-572: Reverted fix. This was actually a job for GumTree and has been fixed by Norman.
Ferdi Franceschini
2013-04-19 08:31:32 +10:00
1edad9fa2f
SICS-586: Set sicspoll interval to one second on max_binrate and total_maprate hdb nodes.
Ferdi Franceschini
2013-04-19 07:55:09 +10:00
afd7b3879d
Generic fake Galil derived from Taipan version. Added instrument name as a command line argument.
Ferdi Franceschini
2013-04-18 12:40:56 +10:00
1d7681e326
Reduce verbosity of log files when using JSON protocol.
Ferdi Franceschini
2013-04-10 19:49:19 +10:00
c466d85bba
pSock is obsolete, see conman.h SConnection struct.
Ferdi Franceschini
2013-04-10 18:45:51 +10:00
278c64b377
Set scan=1ms and scans per sample=10 on the counters when SICS starts up.
Ferdi Franceschini
2013-04-09 14:38:39 +10:00
2dc1657d66
Reversed configuration tables for the autosample changers. Because the load side was changed to the opposite side.
Ferdi Franceschini
2013-04-09 14:38:39 +10:00
16e744be12
Moved MakeDrive to instrument specific configuration. This lets us make run and drive wrappers for the fermi motors on pelican by renaming the SICS run and drive.
Ferdi Franceschini
2013-04-09 14:15:55 +10:00
1afe142812
- Removed old code - Extended tasker to support task groups - Added task functions for motors and counters - Modifed devexec to use the new task functions - Modified TAS to treat the monochromator separatly - Coded a EIGER monochromator module to reflect even more new requirements - Added EPICS counters and motors - Modified multicounter to be better performing
koennecke
2013-04-02 15:13:35 +00:00
191e3719b7
Use ns instead of micro-seconds for veto-windows.
Ferdi Franceschini
2013-03-14 15:29:31 +11:00
1079f6e702
Always return 0 from the AsconReading state to make sure we exit the AsconTask(). Since the PSI update the AsconTask() function will loop forever unless you return 0.
Ferdi Franceschini
2013-03-13 19:06:57 +11:00
94f21f832e
SICS-561: Wait for the hmm COUNTEND event in blocking mode. Also allow veto when scanning.
Ferdi Franceschini
2013-03-02 17:02:30 +11:00
ed95f3aaaf
SICS-555: ANSTO hmcontrol now releases locks on the counters after pausing.
Ferdi Franceschini
2013-03-02 16:31:38 +11:00
86379e8038
Added functions to create the camera driver and init the camera protocol to site_ansto.c
Ferdi Franceschini
2013-02-28 12:57:41 +11:00
ad27488d3d
Initial implementation of Dingo Camera driver. Takes a single shot or a multishot. If the user changes the camera configuration in SICS the new config will be uploaded when the next take shot/multishot command is sent. This driver allows the scan object in SICS to drive the scan variable to the next target while the camera is processing and saving data after acquiring an image. TODO Implement "set file,..." command.
Ferdi Franceschini
2013-02-26 01:02:25 +11:00
87559bf411
Upload camera configuration if it has changed before sending a "take shot" or "take multi on" command. Incorporate Vijay's changes to the "set camera," parameters.
Ferdi Franceschini
2013-02-26 01:02:25 +11:00
a00ca3872f
Addpython motor simulation for taipan
Douglas Clowes
2013-02-21 14:26:26 +11:00
743c52d905
Remove duplicate camera code
Ferdi Franceschini
2013-02-21 14:00:57 +11:00