Commit Graph

70 Commits

Author SHA1 Message Date
Douglas Clowes
a0c6945bb6 implement settle timer on creep positioning
detect position overrun error and stop runaway motor
implement deferred fault reporting until after motor stopped
save and report timer period in debug output (DMC_SetTimer)
handle leading '-' on numeric galil response
more comment documentation
remove unused variables

r2423 | dcl | 2008-04-14 09:38:41 +1000 (Mon, 14 Apr 2008) | 8 lines
2012-11-15 13:34:44 +11:00
Douglas Clowes
04568a34f2 Bugfixes from commissioning. Use _SCx, send STx and HLTx=1. Fix missing TRACE output. Change 'has_airpads' to 'protocol'.
r2389 | dcl | 2008-03-10 08:19:23 +1100 (Mon, 10 Mar 2008) | 2 lines
2012-11-15 13:33:51 +11:00
Douglas Clowes
c97b23fbcb Fix some typos and add deferred state/event trace reporting
r2365 | dcl | 2008-02-21 14:59:25 +1100 (Thu, 21 Feb 2008) | 2 lines
2012-11-15 13:33:28 +11:00
Douglas Clowes
a095e0d6da Add 'encoderAxis' parameter so encoder can be on a different axis from the motor.
r2360 | dcl | 2008-02-18 08:22:02 +1100 (Mon, 18 Feb 2008) | 2 lines
2012-11-15 13:33:09 +11:00
Douglas Clowes
e3a9c18322 Accumulated changes including RUN and HALT command everywhere
r2298 | dcl | 2008-01-30 13:38:29 +1100 (Wed, 30 Jan 2008) | 2 lines
2012-11-15 13:32:46 +11:00
Douglas Clowes
c6ce627760 Make SEND managers only
r2288 | dcl | 2008-01-21 09:56:27 +1100 (Mon, 21 Jan 2008) | 2 lines
2012-11-15 13:32:38 +11:00
Douglas Clowes
c75e16d4bd Handle change to asyncqueue to handle binary protocols
r2271 | dcl | 2008-01-15 12:25:16 +1100 (Tue, 15 Jan 2008) | 2 lines
2012-11-15 13:31:34 +11:00
Douglas Clowes
3926e47ab5 Change floats to doubles, controller virtual motor variables, a little refactoring
r2264 | dcl | 2007-12-07 10:38:34 +1100 (Fri, 07 Dec 2007) | 2 lines
2012-11-15 13:31:08 +11:00
Douglas Clowes
2cb9e55f63 change counts and steps to integer for 31bit encoder handling
r2255 | dcl | 2007-11-09 14:08:46 +1100 (Fri, 09 Nov 2007) | 2 lines
2012-11-15 13:30:34 +11:00
Douglas Clowes
52a5be7c0d A bit of refactoring and a bug fix
r2253 | dcl | 2007-11-09 09:49:19 +1100 (Fri, 09 Nov 2007) | 2 lines
2012-11-15 13:30:26 +11:00
Ferdi Franceschini
1c181fb68f Handle INT1712 1 interrupts in MotorOn state. This can happen if you abort an operation during a posfault retry or immediately after a run/drive command.
Handle TimeOut events during Idle state.  These have been observed to occur when a scan skips a point because of a drive failure.

r2237 | ffr | 2007-11-07 15:41:21 +1100 (Wed, 07 Nov 2007) | 4 lines
2012-11-15 13:29:25 +11:00
Douglas Clowes
ebf70bfe5c Bug fixes and improved error handling, more on controller variables
r2232 | dcl | 2007-11-06 08:50:18 +1100 (Tue, 06 Nov 2007) | 2 lines
2012-11-15 13:29:07 +11:00
Douglas Clowes
9c307402cc Fix a couple of typos, reimplement thread zero checks and amplifier error checks. (Disable amplifier error checks pending controllers returning good status for all OK motors.)
r2187 | dcl | 2007-10-22 13:26:54 +1000 (Mon, 22 Oct 2007) | 2 lines
2012-11-15 13:26:20 +11:00
Douglas Clowes
a4d7cb12cc Begin migration of motor positions from encoder counts to motor units (mm/degree)
r2185 | dcl | 2007-10-17 08:36:19 +1000 (Wed, 17 Oct 2007) | 2 lines
2012-11-15 13:26:13 +11:00
Douglas Clowes
5d311bf61f A bit more rationalisation
r2183 | dcl | 2007-10-11 18:00:02 +1000 (Thu, 11 Oct 2007) | 2 lines
2012-11-15 13:26:05 +11:00
Douglas Clowes
dc266a1c92 convert 'send' arguments to upper case and substitute '%' and '`' with axis_label
r2169 | dcl | 2007-10-02 12:41:34 +1000 (Tue, 02 Oct 2007) | 2 lines
2012-11-15 13:25:14 +11:00
Douglas Clowes
efb0b117f6 POSIT handling code for position-mode motors and a little refactoring
r2155 | dcl | 2007-09-26 09:50:53 +1000 (Wed, 26 Sep 2007) | 2 lines
2012-11-15 13:24:24 +11:00
Douglas Clowes
77657615e6 MAJOR changes: remove deprecated pre state machine code, revise state transitions, add state entry events, part of the RUNx implementation, comments, ....
r2106 | dcl | 2007-08-10 10:32:40 +1000 (Fri, 10 Aug 2007) | 2 lines
2012-11-15 13:21:28 +11:00
Douglas Clowes
18ab7a86b8 Before removal of deprecated code
r2102 | dcl | 2007-08-02 08:06:01 +1000 (Thu, 02 Aug 2007) | 2 lines
2012-11-15 13:21:14 +11:00
Douglas Clowes
d27a9cb9b6 periodically poll and update the motor position, specifically for hipadaba, to capture motion that is not commanded (e.g. homing slit motors and turning motors by hand)
r2029 | dcl | 2007-06-27 10:58:42 +1000 (Wed, 27 Jun 2007) | 2 lines
2012-11-15 13:19:52 +11:00
Douglas Clowes
d785f48aa7 Change Flight Tube to use REQx/RSPx instead of FTUBE/APDONE variables. Now workks for RSD Sample raise dual motor as well.
Move DMC_Notify and reset state machine on reconnect.

r1996 | dcl | 2007-06-01 16:50:24 +1000 (Fri, 01 Jun 2007) | 3 lines
2012-11-15 13:19:10 +11:00
Douglas Clowes
9438dc0973 Add some logging, comments, report unhandled events in the state machine.
Limit the state and trace commands to motors with finite state machines.

r1988 | dcl | 2007-05-25 16:19:37 +1000 (Fri, 25 May 2007) | 3 lines
2012-11-15 13:18:43 +11:00
Douglas Clowes
785fe7bb96 Memory cleanup
r1980 | dcl | 2007-05-24 14:49:02 +1000 (Thu, 24 May 2007) | 2 lines
2012-11-15 13:18:16 +11:00
Douglas Clowes
c47e4ad45c Make finite state machine the default. Make blocked motors fail the default. Add "data" to display computed data for motor. Improve blocked motor test message.
r1962 | dcl | 2007-05-15 12:35:24 +1000 (Tue, 15 May 2007) | 2 lines
2012-11-15 13:17:14 +11:00
Douglas Clowes
a18500cbf0 multichan becomes AsyncQueue and AsyncProtocol
r1957 | dcl | 2007-05-11 17:28:31 +1000 (Fri, 11 May 2007) | 2 lines
2012-11-15 13:16:58 +11:00
Douglas Clowes
84f883f5d7 Implement finite state machine model. Improved backlash (unidirectional motor driving). Precision motor creeping. Ensure thread zero is operating. Floating point steps and counts per unit. "send", "reset", "state" and "trace" commands.
r1939 | dcl | 2007-05-04 14:01:19 +1000 (Fri, 04 May 2007) | 2 lines
2012-11-15 13:15:59 +11:00
Douglas Clowes
bbdc2f820d minor, trivial and cosmetic changes not related to state machine implementation
r1938 | dcl | 2007-05-04 13:47:21 +1000 (Fri, 04 May 2007) | 2 lines
2012-11-15 13:15:56 +11:00
Douglas Clowes
56cdbec451 remove trailing spaces on numerous lines
r1898 | dcl | 2007-04-20 11:56:22 +1000 (Fri, 20 Apr 2007) | 2 lines
2012-11-15 13:15:36 +11:00
Douglas Clowes
d0957b18d5 Move things around, fix typo
r1896 | dcl | 2007-04-20 09:11:03 +1000 (Fri, 20 Apr 2007) | 2 lines
2012-11-15 13:15:29 +11:00
Douglas Clowes
8b27116358 backlash preseek made internal
r1891 | dcl | 2007-04-19 15:56:56 +1000 (Thu, 19 Apr 2007) | 2 lines
2012-11-15 13:15:22 +11:00
Douglas Clowes
4b33abe79c change comment and reposition stepsPerX in list command
r1871 | dcl | 2007-04-18 09:59:04 +1000 (Wed, 18 Apr 2007) | 2 lines
2012-11-15 13:15:15 +11:00
Douglas Clowes
4693ad1686 move string parameters from "list" to "slist" because non-numerics in "list" upset hipadaba stuff. Also implement motor "setpos" command with two arguments.
r1869 | dcl | 2007-04-18 09:35:32 +1000 (Wed, 18 Apr 2007) | 2 lines
2012-11-15 13:15:09 +11:00
Douglas Clowes
40e1042cda reverse comparison operators
r1856 | dcl | 2007-04-16 10:46:55 +1000 (Mon, 16 Apr 2007) | 2 lines
2012-11-15 13:14:52 +11:00
Douglas Clowes
57a2cff61c typo
r1850 | dcl | 2007-04-12 17:08:41 +1000 (Thu, 12 Apr 2007) | 2 lines
2012-11-15 13:14:32 +11:00
Douglas Clowes
a3ec8b98a0 First pass at Universal Unidirectional Motor Driving (UUMD)
r1849 | dcl | 2007-04-12 16:59:32 +1000 (Thu, 12 Apr 2007) | 2 lines
2012-11-15 13:14:29 +11:00
Douglas Clowes
7363a846e1 motion is OK if motor has no absolute encoder
r1844 | dcl | 2007-04-10 10:17:01 +1000 (Tue, 10 Apr 2007) | 2 lines
2012-11-15 13:14:15 +11:00
Douglas Clowes
a7a480c5d1 Change stepsPerX and CountsPerX to float and revise PA calculation to avoid floting point limitation in GALIL
r1841 | dcl | 2007-04-10 09:50:47 +1000 (Tue, 10 Apr 2007) | 2 lines
2012-11-15 13:14:05 +11:00
Ferdi Franceschini
f0a3d8f18c Added "part" identifier for motors. It names the assembly which a motor belongs to, eg sample, crystal, filter.
r1756 | ffr | 2007-03-31 13:33:54 +1000 (Sat, 31 Mar 2007) | 2 lines
2012-11-15 13:12:06 +11:00
Douglas Clowes
495e84ef51 Change strcmp to strcasecmp to fix case sensitivity issue in hipadaba hget
r1748 | dcl | 2007-03-30 18:40:48 +1000 (Fri, 30 Mar 2007) | 2 lines
2012-11-15 13:11:39 +11:00
Ferdi Franceschini
d80bf8306e Disable GetDriverTextPar
r1729 | ffr | 2007-03-27 13:32:46 +1000 (Tue, 27 Mar 2007) | 2 lines
2012-11-15 13:10:38 +11:00
Douglas Clowes
3a5e8ed7e1 Add ActionRoutine hook to motor object
r1728 | dcl | 2007-03-27 13:16:08 +1000 (Tue, 27 Mar 2007) | 2 lines
2012-11-15 13:10:34 +11:00
Douglas Clowes
f283ec6968 Change from RS232Controller to MultiChan
r1711 | dcl | 2007-03-23 18:51:15 +1100 (Fri, 23 Mar 2007) | 2 lines
2012-11-15 13:09:48 +11:00
Douglas Clowes
96b8a1aee6 Fixing blocked motor detection
r1710 | dcl | 2007-03-23 18:43:43 +1100 (Fri, 23 Mar 2007) | 2 lines
2012-11-15 13:09:45 +11:00
Douglas Clowes
082355318f Refactoring, reduce duplicate code, eliminate obsolete code.
Fix a few bugs.
Improve blocked motor detection code.
Align with MultiChan version

r1708 | dcl | 2007-03-23 18:06:20 +1100 (Fri, 23 Mar 2007) | 5 lines
2012-11-15 13:09:39 +11:00
Douglas Clowes
181dc85f14 Differentiate between motion control off and unknown
r1693 | dcl | 2007-03-21 17:36:30 +1100 (Wed, 21 Mar 2007) | 2 lines
2012-11-15 13:08:53 +11:00
Ferdi Franceschini
ad7d24aea2 Added "DMC2280GetTextPar" implementation of the new motor driver GetDriverTextPar function.
This refactoring is moving towards the goal in SICS-10 on Jira.

r1678 | ffr | 2007-03-20 11:24:36 +1100 (Tue, 20 Mar 2007) | 3 lines
2012-11-15 13:08:05 +11:00
Douglas Clowes
7527e7f6f3 Allow thread status to be queried and homerun for motors without absolute ebcoder
r1619 | dcl | 2007-03-09 12:34:37 +1100 (Fri, 09 Mar 2007) | 2 lines
2012-11-15 13:05:20 +11:00
Douglas Clowes
74e8db377d Make the motion control test tighter, remove some obsolete code, and resolve some compilation warnings
r1565 | dcl | 2007-03-02 08:27:14 +1100 (Fri, 02 Mar 2007) | 2 lines
2012-11-15 13:02:38 +11:00
Douglas Clowes
992c9c4902 Handle the case where motion control is not enabled on the panel. This is regarded as a hardware fault for all DMC2280 motors.
r1563 | dcl | 2007-03-01 09:09:32 +1100 (Thu, 01 Mar 2007) | 2 lines
2012-11-15 13:02:32 +11:00
Douglas Clowes
b043246eac Parameterise the motion checks for detecting blocked motors
r1544 | dcl | 2007-02-22 16:42:12 +1100 (Thu, 22 Feb 2007) | 2 lines
2012-11-15 13:01:38 +11:00