1. Arthur C. Volta
EXAMPLE PROJECTS
Ability Systems Product Line
The Proportional Keystroke Scanner
This device was the embodiment of my patent (US 4746913 A) and the initial
reason for forming Ability Systems Corporation. I designed this project
from start to finish, including digital and analog circuits, the software
device driver, PC Layout, mechanical design, packaging, and production
documentation. It was the first device of its kind to provide software
compatibility with commercially available IBM PC software, such as Word
Perfect, Dbase, Lotus 123 and others. Combined with (also the first of its
kind in a PC) hands free voice dialing, it completed the first
commercially available system with sufficient speed and versatility to
provide persons with C3 and C4 level spinal cord injuries with a viable
method of securing productive employment. The overall design provided for
future compatibility, and though this important feature was difficult to
market at the time, units that were placed in operation as early as 1984
were being used on progressively upgraded computers until the last user
regretfully passed away in 2011. This device was featured in the State of
the Art Reviews of the Physical Medicine and Rehabilitation Journal,
Volume 2/Number 3, August 1988. It aired on national TV, and was shown
locally by WPVI’s “Prime Time”. The need for a hardware based rapid key
entry device has since been supplanted by advances in voice recognition
technology.
Computer Numerical Control (CNC) and Robotic Controls
I developed the suite of Ability Systems motor control software from
conception to completion. Thousands of copies have been sold in over
thirty countries. The most complete description of this software,
including its unique advantages, can be found on the Ability Systems web
site at www.abilitysystems.com. “Indexer LPT” software was introduced as a
DOS device driver in 1989 as the first commercially available motion
control system to exploit the advantages of multi-process communication,
before multi-process communication became commonplace under Windows. From
its first release, Indexer LPT could be manipulated not only by means of
general purpose software development languages that were commonly known to
programmers not necessarily experienced in robotics, but it could also be
manipulated using familiar applications like spreadsheet and database
programs. Part of its inter-process capability included communication with
its own floating point process (Floating point processing is not typically
implemented in device drivers, then or today). Subsequent to its first
release, I have maintained Indexer LPT and its companion programs while
improving capabilities and exploiting the advantages of evolving operating
2. systems, now including Linux. The current version of Indexer LPT consists
of a cooperative multi-processing system, combining the power of PC
software with firmware that I had written into a microcontroller. I have
also written modifications to the open source WINE operating system layer
(www.winehq.org) to provide for forward compatibility of the Ability
Systems Windows based applications programs, which can now run under Linux
without modification. As far as I am concerned, courtesy should rule
engineering and design advancements. As such, while new features attract
additional customers, provisions for backward compatibility serves
existing customers’ need to maintain the equipment that they had invested
in and rely upon. I am proud to say that automation equipment using my
first commercial release of Indexer LPT can be upgraded to the latest
version under Linux without the need for changing a single wire.
Contract Engineering
Miscellaneous Specialized Software
From time to time I have fulfilled the need for specialized application
programs that are relatively small in scope, such as a recently satisfied
contract to generate controls for an online, automated order and
fulfillment system for cylindrical tap-ins. (In this context, a “tap-in”
is a pipe that is cut to adjoin the surface of another pipe). The shape of
the tap-in is determined, among other things, by the diameters of the two
pipes. Tap-ins are ordered online by specifying the size and material of
the components, and transmitted to the factory floor in the form of an
encoded part number. Software that I provided under this contract unpacks
the part number, and with the aid of Ability Systems stock software,
manipulates machinery to automatically cut the part to the required shape.
The engineering effort comprised deciphering the manufacturers existing
order entry system, formulating an algorithm that could be universally
used to define the required geometry, and safely integrating these methods
into a machine that efficiently performed the manufacturing operation in a
high production setting. This project was completed in about a month, from
the introductory specification to customer satisfaction.
In another example, the client manufactured inclination sensors consisting
of a closed, curved glass tube partially filled with liquid, similar to a
carpenter’s level. Unlike a carpenter’s level, however, the liquid in the
tube was an electrolyte, and electrodes were placed so that they pierced
the bubble and could thus be used to electronically sense the bubble’s
varying position as the tube was tilted. These electronic sensors were
capable of reading inclination to accuracies of arc seconds. This contract
consisted of developing an automatic method for physically rotating the
unit and calibrating its responses at different angles of inclination. The
test station consisted of a motion control and measurement system. The
software not only tilted the fixture and recorded results, but it also
anticipated the motion of the bubble in order to maximize throughput, as
well as accommodated a substantial variety of product types.
3. Computer Design
This client company manufactured high end production equipment and was
heavily invested in software that it had developed for a computer designed
especially for the purpose of controlling its machines. However, the VLSI
memory management chip that the computer needed to support the extended
memory requirements of the software was no longer available. I contracted
with this client in a move to preserve forward compatibility of its
software by reverse engineering the obsolete memory management unit and
designing a replacement computer that incorporated more universally
available programmable logic for memory management. The contract also
included operational improvements, such as SCSI communication capability.
Fulfillment of the contract consisted of detailed schematics and a working
prototype. I performed the circuit design, supervised physical
construction of the prototype, and managed the development of firmware
that was to be used in acceptance testing. Though the client company had
engineering capability, they were attracted to Ability Systems because of
schedule, expertise, cost and definitive obligation. In turn, we provided
the working unit on time, within budget, and with all the documentation
that they needed to maintain the design without further assistance.
In another example, the client company manufactured automotive engine
control computers that used a proprietary microprocessor designed
specifically for engine controls. Peripheral components, also proprietary,
contained special adaptations required for high speed interaction between
the resident software strategy and the automobile engine. Under contract I
reverse engineered the computing system and wrote a comprehensive manual
describing the memory access portion of the processor. As part of this
contract I also designed a dual ported memory circuit with processor
dependent adaptations that could be used to run diagnostic strategy
routines downloaded from production test equipment. This memory circuit
consisted of two multi-layer circuit cards that physically connected to
the client’s proprietary backplane. The design was functionally simulated
in CAD/CAM, including the internal working of the PLD’s, prior to
construction. A net list was extracted from the schematic capture
software, and sub-contracted for PC layout in PADS (now Mentor Graphics)
format. Cross assembly of strategy routines used for contract acceptance
testing was done by Ability Systems on an IBM PC, and the unit was
provided to the customer functioning and complete, on time and within
budget.
Test System Design
The client manufactured liquid crystal clock circuits in multiple
quantities on a substrate that could be broken into individual units when
assembled into the completed clock. Connections on the individual,
completed clock assembly were made from the surface of the circuit board
to the liquid crystal by means of compliant, conductive rubber. Thus
testing multiple clock circuits on the substrate together by means of
touch-probes, sometimes referred to as a “bed of nails”, was possible. I
designed the complete test system. The system included circuits that
would, under computer control, excite the clocks’ controls similar to the
way a user would manipulate an assembled clock. Circuits would then check
4. the expected response by sensing the phase of the pulsed signals that
controlled each liquid crystal segment. The project included the design of
the computer interface, multiplexer, and sensing circuits, as well as the
backplane, operator controls, fixture robotics and connections to the
devices under test. I completed the design, including schematic and wiring
diagrams to a level of detail that included pin numbers on every connector
and all components, in a little over a month. Contracting to a third party
for software was streamlined by clear and concise documentation, and
troubleshooting the completed system after assembly took no more than a
week.
In another example, the client manufactured automotive cruise controls and
desired that each unit should be functionally tested as if it were
operational within the automobile. I was provided with the transfer
function (in the “s” domain) that related the automobile’s velocity to the
position of the accelerator pedal. I converted this to a time domain
representation, and simulated it with correspondingly configured
operational amplifiers and a VCO, to realistically generate speedometer
feedback as a function of the cruise controller’s accelerator positioning.
I used this circuit as a component part of a computerized test station,
which I also designed, that automatically provided stimuli to each unit
and tested corresponding physical and electrical responses.