| |
ChristopherJam
Registered: Aug 2004 Posts: 1409 |
Release id #160665 : Stepper Test 1.0
Copying the production notes below, but I'd really like to see some results from other people's drives for this one. |
|
... 25 posts hidden. Click here to view all posts.... |
| |
Dr.Science
Registered: Oct 2011 Posts: 40 |
1541-II (cold)
|
| |
ChristopherJam
Registered: Aug 2004 Posts: 1409 |
Thanks everyone, those are all really useful.
Spending too long on the half track is looking pretty costly on a lot of drives, especially if you catch that spike somewhere around 20-24 bycles. Entertaining given that 25 bycles is the default stepping time before acceleration kicks in..
I suspect what's happening there is the head is oscillating a bit, and that far in it's swung almost back to its starting point. I've tried running a simple physics sim with acceleration proportional to sin((phase-desiredphase)), and friction proportional to velocity. My friction model clearly needs work, as it keeps ringing for far too long, but even with the model as it stands I can already see shapes that loosely approximate some of the readings.
Some sets of parameters indeed result in a spike if the head has almost returned to the starting track at the end of T1, supporting my hypothesis above:
def iter(x0,x1):
a=np.sin((target-x1)*np.pi)
v0=(x1-x0)/dt
dv=v0*dt/Td
v0=v0+a*dt*Ta**-2
v0=v0-dv
return x1+v0*dt
(iter calculates the new head position as a function of the previous two, assuming a constant timestep of dt. Head position in tracks.) |
| |
ChristopherJam
Registered: Aug 2004 Posts: 1409 |
and some more measurements, these from j0x (thanks again!)
Two from an old 1541 push-down mech drive:
and two from an (almost as) old 1541-II:
|
| |
soci
Registered: Sep 2003 Posts: 479 |
A bit late, but anyway.
1541-II with refurbished mechanic:
1571:
Another 1571:
Old 1541:
1571CR:
Unfortunately I couldn't do my oceanic this time as it's not here. That'll be interesting as it has an unusual stepper motor and mechanic. |
| |
ChristopherJam
Registered: Aug 2004 Posts: 1409 |
Thanks Soci.
Those 1571s are particularly slow; well worth knowing about. |
| |
Frantic
Registered: Mar 2003 Posts: 1647 |
The drive in my SX64
I haven't really read this thread very carefully, so a brief comment on what this graph tells about my SX64 drive would be much appreciated. |
| |
ChristopherJam
Registered: Aug 2004 Posts: 1409 |
Frantic, the large black area at upper left means the optimal stepping time for your drive is a little higher than some of the others (you're looking at around 40 bycles/10ms), but it's well within the margins that current loaders rely on (12ms per track). More importantly the lack of a large black spike in the middle says your drive is much less likely than many other to stall for a bit when the normal stepping routine is being used.
So your drive's a little more consistently behaved than many, and is probably saving you a full disk rotation about one seek in twenty.
These results are mostly useful in the aggregate; they'll help tune the timing for improved stepper motor control in the next generation of loaders. |
| |
Frantic
Registered: Mar 2003 Posts: 1647 |
Excellent commentary there, sir! :D |
| |
Krill
Registered: Apr 2002 Posts: 2971 |
Quoting ChristopherJamThese results are mostly useful in the aggregate; they'll help tune the timing for improved stepper motor control in the next generation of loaders. "Next generation of loaders" \:D/
I've just added Shrydar Stepping® to the massively overhauled next version of my loader, which is now seriously scratching on the 7 KB/s mark for uncompressed files.
I'm now looking at all these graphs, trying to find the optimal T1 value with a given T2 ≥ 72 bycles (the block transfer takes 72 cycles per byte plus random IRQ/DMA delays).
What would be a good value that's also guaranteed to work across all drives? Want to avoid that Chasm of Death many of them exhibit. :) |
| |
ChristopherJam
Registered: Aug 2004 Posts: 1409 |
Quoting KrillI've just added Shrydar Stepping® to the massively overhauled next version of my loader, which is now seriously scratching on the 7 KB/s mark for uncompressed files.
\O/
Quote:What would be a good (T1) value that's also guaranteed to work across all drives? Want to avoid that Chasm of Death many of them exhibit. :)
Given the significant spike at 20-24 bycles exhibited by hedning's Oceanic, and the even heaver one further to the right on THCM's SX-64, I'd probably lean towards going as low as 12-16. For almost all of the drives, that's going to intersect the upper left diagonal edge (minimal total step time) too; most of them will be good to go another dozen bycles later, ages before the block transmission time is over :) |
Previous - 1 | 2 | 3 | 4 - Next |