MMD > Archives > March 1996 > 1996.03.07 > 10Prev  Next


Roll Scanning Methodology
By John Grant

Hello Wayne,

        Thanks for the description of your roll scanning methodology (and
philosophy!) A careful reading raises a few additional questions which I
hope will not intrude upon your good graces to address.

        First of all, let me say that I endorse your method of initially
sensing the holes pneumatically.  Call it a "gut feeling" but I have
always been somewhat leary of optical based methods to do this.  Granted
they may be capable of finer absolute resolution than a pneumatically
based sensor, but such resolution can sometimes get you in trouble and
has to be reverse-compensated for in order not to skew the data.  I
maintain the most important aspect in sensing when and whether a hole is
open (and for how long) is how the PIANO mechanism REACTS to the hole and
therefore you need to read the hole the same way the piano does,
pneumatically.

        Having said that, I'm a little curious about your pneumatic
switch.  Do you literally have discrete pouches operating discrete
microswitches or do you use a commercial, integrated differential
pressure switch?  The distinction may be important.  With discrete
components I imagine you could allow for some method of calibration so
that the reaction time of individual switches can be adjusted to be the
same (within some tolerance level.) which would be absolute necessary to
achieve a 0.1mm sensing accuracy as you stated previously.

        Next, I note you use a take-up spool as the basic motive force
for the paper, but as this could introduce timing (or positional) errors,
you use a "paper follower" (roller/shaft encoder) to provide your
ordinate axis data. (I use a similar device in my reader and view it as
ESSENTIAL if your goal is to replicate rolls.)  However, in looking at
the data in 68283B.MID I see no data that appears as if it would be a
measure of this, a "sync" pulse if you will.  I would expect to see one
MIDI note, outside the range of the nominal 100 MIDI notes which define
the compass of the tracker bar, and that this "note" would repeat
continuously throughout the length of the roll.  (I'm looking at the data
with the "Note View" option of Cakewalk.  Is this data not visible (or
has it been removed) for some reason?

        If your reader does indeed capture the chain bridging, how does
it do this since normal pneumatic reading of the holes, by design,
ignores the bridges?  Does this happen "naturally" at this (relatively
slow) reading speed (10mm/sec. = approx. 2'/min.) or have you adjusted
the "height" dimension of the holes in the tracker bar, so that they can
"resolve" the bridge?  (This in itself would introduce note duration
errors.)

        One minor point you did not address was the polling of the
microswitches.  Intuitively, if you are scanning the switches
sequentially at a high enough rate, and the paper is moving slowly
enough, any errors introduced by this method would be negligible, but I
don't have a good feel for what this ratio should be.  If I recall
correctly, your design in the Bosendorfer systems is (about) 800 full
keyboard scans per second.  (Is MIDI better or worse?)  One eight
hundredth of 10mm is 1/80th of a mm paper movement between adjacent
switches.  Which, when said another way, means only eight switches can be
polled before your claimed accuracy of 0.1mm is exceeded.  What then does
this imply about the relative positional accuracy of two notes struck
"simultaneously" at opposite ends of the keyboard?  Does your algorithm
anticipate this and automatically "de-skew" the data?  I would think this
necessary since rolls are read (and perforators punch) in a parallel
domain, not serial.

        Finally, Jim Heyworth (in Digest 96.03.06) basically questioned
how we can judge the intrinsic accuracy of the data in the 68283B.MID
file given the normal tools at our disposal (even if we happen to have a
copy of the production roll.)  The resolution of such display/editing/
sequencing programs as Cakewalk appear unsuited for this.  It seems to me
to only way to do this would be to do a side-by-side physical comparison
of a master roll produced by your method with the original master roll
artifact.  Does Keystone have this particular master?  Has this been done
(or considered?)  Please understand that I am not expressing doubt in
your methods, only trying to better understand (and have confidence in)
them.  And please let me know if any of the necessary (but unstated)
assumptions I have made in the foregoing are faulty.  BTW, I too, would
be interested in knowing more technical detail about your data format.

Sincerely,

John Grant



(Message sent Fri, 8 Mar 96 01:31:03 PST , from time zone -0800.)

Key Words in Subject:  Methodology, Roll, Scanning