-
Notifications
You must be signed in to change notification settings - Fork 1
/
mcontrol.conf
76 lines (66 loc) · 2.74 KB
/
mcontrol.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
motor:
{
// Minimum and maximum PWM duty cycles.
minDuty = 15
maxDuty = 30
// Change this if the motor spins in the wrong direction.
invertPolarity = false
// Report stall condition if the axis rotates less than stallThreshold
// degrees in stallCheckPeriod milliseconds.
stallCheckPeriod = 3000
stallThreshold = 1.0
// De-stall maneuver: if the motor fails to start, send a de-stall pulse:
// the PWM duty is increased to destallDuty for destallDuration before a
// regular slew attempt is repeated. Such a sequence is repeated until the
// motor unblocks, but not more than destallTries times. To disable this
// behaviour altogether, set destallTries to zero.
destallDuty = 20
destallDuration = 100
destallTries = 2
}
angles:
{
// Linearization is the first operation applied to the measured raw
// angles (i.e., the values obtained directly from the sensor). It is
// performed according to the formula
//
// linearized = raw - k(1,1)*cos(1*raw) - k(1,2)*sin(1*raw)
// - k(2,1)*cos(2*raw) - k(2,2)*sin(2*raw)
// - ...
//
// The setting below specifies the coefficients k(N,M):
//
// linearization = [ k(1,1) k(1,2) k(2,1) k(2,2) k(3,1) k(3,2) ... ]
//
// The array must contain an even number of coefficients. An empty array
// is allowed and no linearization is done in that case.
linearization = [ ]
// Minimum and maximum raw angles that can be reached. Enter here the raw
// sensor readouts at the points where the end switches engage. The final
// (user defind) angle scale will be oriented so that the angles will
// increase when slewing from rawAngleAtMinimum towards rawAngleAtMaximum
// along the longer of the two possible paths.
rawAngleAtMinimum = 230
rawAngleAtMaximum = 190
// How close to approach the end switch positions (in degrees). This
// ensures that the end switches never engage during normal operation.
endGuard = 5
// Set up the user angle scale so that when the sensor reads the raw
// value "userOriginPoint", the user scale shows "userOriginValue".
userOriginPoint = 250
userOriginValue = 0
}
movement:
{
// Which position to slew to when "--park"ing. Enter here the RAW sensor
// value at the park position (this ensures that the device parks
// correctly regardless of the user angle scale).
rawParkPosition = 280
// Angle over which the motor accelerates to maximum set speed.
accelAngle = 20.0
// Stop the motion when the absolute difference between the current and
// target angle drops below this value (in degrees). Results depend on
// the motor overshoot and on the amount of sensor noise. Experiment to
// see what works best.
tolerance = 0.1
}