This specification relates generally to a system, which may employ automated components configured to operate in parallel.
Manufacturers typically test devices, such as storage devices, for compliance with a collection of requirements. Test equipment and techniques exist for testing large numbers of devices serially or in parallel. Manufacturers tend to test large numbers of devices simultaneously. Device testing systems typically include one or more test racks having multiple test slots that receive devices for testing. In some systems, the devices are placed in carriers which are used for loading and unloading the storage devices to and from the test racks.
An example system may comprise the following features: slots configured to receive devices to be tested; a device transport mechanism to move devices between a shuttle mechanism and slots; a feeder to provide devices untested devices and to receive tested devices; and a shuttle mechanism to receive an untested device from the feeder and to provide the untested device to the device transport mechanism, and to receive a tested device from the device transport mechanism and to provide the tested device to the feeder. The example system may comprise one or more of the following features, either alone or in combination.
The device transport mechanism may comprise a mast and a rail. The mast may be configured to move along the rail. The shuttle mechanism may comprise a shuttle that is moveable along the rail. The shuttle mechanism may comprise a conveyor. An elevator may receive the untested device from the shuttle and provide the untested to the automation arm, and receive the tested device from the automation arm and present the tested device to the shuttle.
An example system may comprise the following features: slots configured to receive devices to be tested; a servicing device that is, where the servicing device comprises movable parts to move devices into, and out of, the slots; a supplying device to provide devices to be tested and to receive devices that have been tested; and a transportation device that is movable between the supplying device and the servicing device, where the transportation device is configured to receive an untested device from the supplying device and to provide the untested device to the servicing device, and to receive a tested device from the servicing device and to provide the tested device to the supplying device. The example system may comprise one or more of the following features, either alone or in combination.
The movable parts of the servicing device may comprise: an automation arm for moving devices into, and out of, the slots; and an elevator to receive the untested device from the transportation device and to provide the untested device to the automation arm, and to receive the tested device from the automation arm and to present the tested device to the transportation device.
At least two of the following may be movable concurrently: the supplying device, the elevator, the servicing device, and the transportation device. All of the following may be movable concurrently: the supplying device, the elevator, the servicing device, and the transportation device.
The servicing device may comprise two automation arms, one arm on each of two opposite sides of the servicing device. The elevator may be rotatable to reach each of the two automation arms. The servicing device may comprise a linear motor and a non-contact drive mechanism for moving the servicing device along a rail.
An automation arm may be configured to remain docked with a slot while the tested device is moved out of the slot, and the untested device moves into the slot. The elevator may comprise a first holder and a second holder, where the first holder and the second holder are movable relative to the automation in order to receive the tested device and to present the untested device to the slot.
The movable parts of the servicing device may comprise: an automation arm for moving devices into, and out of, the slots, where the automation arm may comprise a pushing element that is operable to contact a device in a slot prior to ejection of the device from the slot. The movable parts of the servicing device may comprise: an elevator to receive the untested device from the transportation device and to present the tested device to the transportation device. The elevator may be offset vertically from, and movable towards, the transportation device to enable transfer of devices between the elevator and the transportation device when the elevator and the transportation device approach contact.
Each slot may comprise an ejection element, where the ejection element is for forcing a tested device out of the slot and into the automation arm.
Another example system may comprise the following features: slots configured to receive devices to be tested; a rail that runs parallel to the slots; a supplying device to provide devices to be tested and to receive devices that have been tested; and a servicing device that is movable along the rail up to the supplying device, where the servicing device comprises movable parts to move devices into, and out of, the slots and to move devices into, and out of, the supplying device. The example system may comprise a magazine configured to contain multiple tested or untested devices, where the servicing device is configured to a move the magazine between the supplying device and the slots.
Another example system may comprise: a first rack of first slots configured to receive devices, where each of at least some of the first slots is for holding a device during testing, where the first rack comprises a front for loading and unloading devices, where the front faces a first area containing cold air, where each of at least some of the first slots comprises an air mover for forcing cold air from the first area over a device and out a first back of the first rack to a second area containing warm air, and where the warm air has a higher temperature than the cold air. The example system may also include: a second rack of second slots configured to receive devices, where each of at least some of the second slots is for holding a device during testing, where the second rack comprises a front for loading and unloading devices, where the front of the second rack faces a third area containing cold air, and where each of at least some of the second slots comprises an air mover for forcing cold air from the third area over a device and out a second back of the second rack to the second area. The example system may also include: a heat exchanger for cooling warm air from the second area to produce cold air; and an air mover for directing the warm air from the second area to the heat exchanger. The example system may comprise one or more of the following features, either alone or in combination.
The heat exchanger is a first heat exchanger and the air mover is a first air mover; the first heat exchanger and the first air mover are associated with the first rack; and the system may comprise a second heat exchanger and a second air mover associated with the second rack. The first heat exchanger and the first air mover may be located at a top of the first rack or at a bottom of the first rack. The second heat exchanger and the second air mover may be located at a top of the second rack or at a bottom of the second rack. Each slot may comprise an internal air mover to force cold air over a device in a corresponding slot.
The third area and the first area may contain automated mechanisms for servicing slots, and the second area may be devoid of at least some of the automated mechanisms contained in the first area and the third area. At least some of the first slots and the second slots may be double-sided. A double-sided slot may be configured for receiving a first device for test from a front of the double-sided slot and for receiving a second device for test from a back of the double-sided slot. Each of the first area, the second area, and the third area may contain automated mechanism for servicing slots. From the first area and the third area, slots are serviced from fronts of the slots, where servicing comprises moving a device into, or out of, a front of a slot; and, from the second area, slots are serviced from backs of the slots, where servicing comprises moving a device into, or out of, a back of a slot. A double-sided slot and a back of a double-sided slot may be serviceable asynchronously, where servicing comprises moving a device into, or out of, the front of the double-sided slot or the back of the double-sided slot.
The air mover and the heat exchanger may be arranged serially in a column of the first rack or a column of the second rack. In the column, the air mover may be closer to the warm air than is the heat exchanger, and the heat exchanger may be closer to cold air than is the air mover. The heat exchanger is a first heat exchanger and the air mover is a first air mover; and the example system may comprise additional heat exchangers and air movers arranged together serially and in columns in both the first rack and the second rack.
Another example system may comprise: a slot to hold a device during testing; a rack to hold the slot; and a negative stiffness isolator that is disposed between the slot to the rack, where the negative stiffness isolator is configured to reduce a natural frequency of vibration of the slot. The example system may comprise one or more of the following features, either alone or in combination.
The negative stiffness isolator may comprise an elastomer having a stiffness and a length that is proportional to the stiffness. The negative stiffness isolator may comprise an element that is in a state of buckling, where the element comprises members that are interconnected at a point such that the element is in the state of buckling at the point. The elastomer may support a weight corresponding to a weight of the slot and the device combined; and the negative stiffness isolator may comprise a spring, where the spring applies a force at the point of buckling that is opposite to a force applied at the point by the weight. The spring may be tunable to vary an amount of force that the spring applies at the point. The spring may be tunable manually or automatically. The spring may be tunable automatically by controlling a motor that affects a stiffness of the spring. The force applied by the spring may be about equal to the force applied by the weight.
The negative stiffness isolator may be configured to drive a natural frequency of vibration of the slot towards zero. The connection to the rack may comprise additional isolators that fit into grooves in the rack, where the additional isolators are connected to a same arm of the rack as the negative stiffness isolators.
The slot may comprise an air mover to blow air over the device, where the air proceeds along an air flow path through the slot, where the slot comprises at least one mostly closed chamber adjacent to the air flow path, and where the at least one chamber is connected to the air flow path via one or more holes to cause a standing pressure wave to resonate in the chamber.
Another example system may comprise: a slot configured to hold a device during testing, where the slot comprises an air mover to blow air over the device, where the air proceeds along an air flow path through the slot, where the slot comprises at least one chamber adjacent to the air flow path, and where the at least one chamber is connected to the air flow path via one or more holes to cause a standing pressure wave to resonate in the chamber. The example system may comprise one or more of the following features, either alone or in combination.
The at least one chamber may comprise multiple chambers with corresponding holes adjacent to the air flow path. The at least one chamber may comprise a single chamber with one or more holes adjacent to the air flow path. The at least one chamber may form a resonator, where the resonator is tunable by varying at least one of: a size of the chambers, a number of chambers, locations of the chambers, a size of the holes, a number of holes, location(s) of the holes, a volume of air in the air flow, a height of the air column in the air flow, and a thickness of the material comprising the chambers.
Another example system may comprise: a slot to hold a device during testing, the slot having a first engagement member; a rack to hold the slot; isolators disposed between the slot and the rack, where the isolators are configured to allow at least some movement of the slot in multiple directions; and an automation arm comprising a second engagement member to interact with the first engagement member. The automation arm may be configured so that interaction of the first engagement member and second engagement causes movement of the slot into alignment with the automation arm such that the alignment permits transfer of the device between the slot and the automation arm.
Another example system may comprise: a slot to hold a device during testing, where the slot has hooks; a rack to hold the slot, which has channels therein; isolators interfacing the slot to the rack, where the isolators are in the channels and allow at least some movement of the slot in multiple directions; and an automation arm comprising structure to coarsely align to the slot and comprising a gripper to interact with the hooks following coarse alignment, where the gripper comprises fingers for interacting with the hooks causing movement of the slot into alignment with the automation arm, and where the alignment permits transfer of the device between the slot and the automation arm. The example system may comprise one or more of the following features, either alone or in combination.
The isolators may comprise elastic members that are flexible and mounted in the channels. The fingers may be movable by the automation arm to draw the slot into alignment with the automation arm. The structure to coarsely align to the slot may comprise one or more pins for aligning to one or more corresponding holes on the slot. There may be a sensor to detect coarse alignment and to initiate interaction of the fingers and hooks. A finger may be movably mounted within a space that is curved towards the finger at a top of the space and at a bottom of the space. The finger may be movably mounted such that movement of the finger within the space causes movement of the finger in two directions to pull the slot towards the automation arm. The multiple directions may be three directions.
The automation arm may be a two-sided automation arm, which comprises a gripper. The automation may comprise areas for accommodating devices that are horizontally adjacent, where each such area comprises a gripper. The automation may comprise areas for accommodating devices that are horizontally adjacent, where each such area comprises a common gripper. The automation may comprise areas for accommodating devices that are vertically adjacent, where each such area comprises a gripper.
Another example system may comprise: a slot configured to hold a device during testing, where the device has a front that faces out of the slot and sides, and where the slot comprises: cam locks, clamps, and gates. The clamps may be controllable to apply force to the sides of the device. The gates may be controllable to block or to unblock the front of the device. Each of the cam locks may be configured to control, with a single rotational motion, a corresponding clamp and gate. The example system may comprise one or more of the following features, either alone or in combination.
The clamps may be operable to provide clamping force in a direction that is at an angle to a clamping force provided by the gates. The angle may be about 90°.
The example system may comprise an automation arm comprising keys that mate to corresponding cam locks, where each key, when mated to a corresponding cam lock, is rotatable effect the single rotational motion. Each cam lock may be configured to rotate a first angular distance to control a corresponding gate and a second angular distance to control a corresponding clamp. The first angular distance may be less than the second angular distance in a case where the corresponding gate and corresponding clamp are to be closed, and the first angular distance may be greater than the second angular distance in a case where the corresponding gate and corresponding clamp are to be open.
The example system may comprise a conductive thermal heating device. The cam lock may be configured to control, with the single rotational motion, contact between the device under test in the slot and the conductive thermal heating device. The example system may comprise an automation arm comprising a pushing element to contact the device in the slot during insertion and removal of the device. A slot may comprise hooks to interact with corresponding fingers on an automation arm when the slot is docked with the automation arm.
Another example system may comprise: slots configured to receive devices, where each of at least some of the slots is for holding a device during testing, and where each of the at least some slots comprises a processing device to exchange information using a wireless protocol; and a control center to exchange the information wirelessly with processing devices in the slots. The example system may comprise one or more of the following features, either alone or in combination.
The control center may comprise one or more computing devices configured to communicate wirelessly with at least some of the processing devices in the slots. The processing device may comprise at least one of a microprocessor, a microcontroller, an ASIC and an FPGA. The wireless protocol may comprise at least one of Bluetooth (over IEEE 802.15.1), ultra-wideband (UWB, over IEEE 802.15.3), ZigBee (over IEEE 802.15.4), and Wi-Fi (over IEEE 802.11). The wireless protocol may be only ZigBee (over IEEE 802.15.4).
The information may comprise one or more of test status, test yield, and test parametrics. The information may comprise firmware for the device held in the slot for test. The information may comprise a test script containing operations for testing for the device held in the slot for test.
The example system may comprise: a rail that runs parallel to the slots; a mast that is movable along the rail, where the mast comprises movable parts to move devices into, and out of, the slots; a feeder to provide devices to be tested and to receive devices that have been tested; and a shuttle that is movable along the rail between the feeder and the mast, where the shuttle is configured to receive an untested device from the feeder and to provide the untested device to the mast, and to receive a tested device from the mast and to provide the tested device to the feeder. The control center may be configured to communicate wirelessly with at least one of the mast, the feeder, and the shuttle.
The movable parts of the mast may comprise: an automation arm for moving devices into, and out of, the slots; and an elevator to receive the untested device from the shuttle and to provide the untested device to the automation arm, and to receive the tested device from the automation arm and to present the tested device to the shuttle. The control center may be configured to communicate wirelessly with at least one of the automation arm and the elevator.
Any two or more of the features described in this specification, including in this summary section, can be combined to form implementations not specifically described herein.
The systems and techniques described herein, or portions thereof, can be implemented as/controlled by a computer program product that includes instructions that are stored on one or more non-transitory machine-readable storage media, and that are executable on one or more processing devices to control (e.g., coordinate) the operations described herein. The systems and techniques described herein, or portions thereof, can be implemented as an apparatus, method, or electronic system that can include one or more processing devices and memory to store executable instructions to implement various operations.
The details of one or more implementations are set forth in the accompanying drawings and the description below. Other features, objects, and advantages will be apparent from the description and drawings, and from the claims.
Described herein are example systems for testing devices, including, but not limited to, storage devices. A storage device includes, but is not limited to, hard disk drives, solid state drives, memory devices, and any storage device that benefits from asynchronous testing. A hard disk drive is generally a non-volatile storage device that stores digitally encoded data on rapidly rotating platters with magnetic surfaces. A solid-state drive (SSD) is generally a data storage device that uses solid-state memory to store persistent data. An SSD using SRAM or DRAM (instead of flash memory) is often called a RAM-drive. The term solid-state generally distinguishes solid-state electronics from electromechanical devices.
Although the example systems described herein focus on testing storage devices, the systems may be used in testing any type of device. For examples, in this context, a device may include, but is not limited to, biological samples, semiconductor devices, mechanical assemblies, and so forth.
Referring
In an example implementation, a rack 101 is served by a mast. In this example, “servicing” includes moving untested storage devices into test slots in the rack, and moving tested storage devices out of test slots in the rack. An example of a mast 105 used to service test rack 101 is shown in
In the example of
In some implementations, track 106 may run substantially parallel to the front (see, e.g.,
In some implementations, mast 105 includes an automation arm 107 for removing storage device from, and inserting storage devices into, corresponding test slots in the rack. In an example implementation, automation arm 107 is a structure that supports a storage device, and that projects from the mast to a slot during docking (engaging) with a slot, and that retracts towards the mast when disengaging from the slot. Automation arm 107 is movable vertically along mast 105 to align to a slot to be serviced. In this regard, as noted above, mast 105 moves horizontally along track 106. The combination of the mast's horizontal motion and the automation arm's vertical motion enables servicing of any slot in a test rack. At least part of the horizontal and vertical motions may be concurrent.
The automation arm is configured to dock with a corresponding slot during loading of an untested device and unloading of a tested device. As explained in more detail below, when docked, a tested device in a slot may be moved, from the slot, to automation arm 107, to an elevator 109. In some implementations, the elevator may be considered part of the mast. An untested device may be moved from elevator 109, to automation arm 107, to the slot for testing. In some implementations, the automation arm remains docked with the slot for a whole time during transfer of a tested device out of a slot, and of an untested device into that same slot for testing. This, however, need not be the case in all system implementations.
Referring to
Referring to
In this regard, in some implementations storage devices in system 100 are tested asynchronously. That is, in such implementations, there is no synchronization among testing of storage devices in the system. As a result of this asynchronicity, there is no correlation between testing in corresponding slots on different racks facing the automation arms. Accordingly, in these example implementations, there is no disadvantage to allowing one elevator to service a single side of the mast at a time, e.g., to service a single automation arm.
Shuttle 110 is an automated device that is movable horizontally along a track between a feeder and mast 105. Shuttle 110 is configured to move untested storage devices from the feeder to elevator 109, and to move tested storage devices from elevator 109 to the feeder. Advantageously, shuttle 110 is operable so that an untested device is carried from the feeder to the elevator, and then a tested device is carried from the elevator on the shuttle's return trip back to the feeder. This can increase testing throughput, since no shuttle trip is wasted.
Shuttle 110 includes an automation arm 112 for holding tested and untested storage devices, and for interacting with elevator 109. As described below, automation arm 112 is controllable to retrieve an untested storage device from the feeder, to transfer the untested storage device to elevator 109, to receive a tested storage device from elevator 109, and to transfer the tested storage device to the feeder. In the implementation of
Referring to
In
Referring to
In
Referring to
In
In some implementations, all or part of the following operations (a), (b), (c), (d) may occur in parallel: (a) shuttle operation—transfer a tested device from the mast towards the feeder, (b) elevator operation—transfer an untested device from the shuttle towards the automation arm, (c) automation arm operation—remove tested device from a slot, and (d) feeder operation—advance a device to be tested in its input queue.
In some implementations, all or part of the following operations (e), (f), (g), (h) may occur in parallel: (e) shuttle operation—transfer an untested device from the feeder towards the mast, (f) elevator operation—transfer a tested device from the automation arm towards the shuttle, (g) automation arm operation—insert untested device in a slot, and (h) feeder operation—sort tested devices for output.
In some implementations, different combinations of operations (a) through (h) may be performed in parallel or sequentially.
By employing parallel (e.g., concurrent) operation of various automated parts, as described above, it may be possible to increase the number of storage devices serviced by the test system (system throughput). Similarly, the time it takes to unload a tested device and load an untested device (cycle time) may be decreased. In some implementations, average cycle time can be about 10 seconds. However, the cycle time is dependent upon many different factors, including the geometry of the system and the speed at which the various components operate.
Referring to
Referring to
Referring to
Referring to
Referring to
More specifically, in some implementations, each test slot includes an ejection mechanism (referred to as an “ejector”). In some implementations, the ejector is a spring-loaded device that pushes against the storage device in the slot. In some implementations, the ejector is an electronically controllable member, whose force may be set in response to one or more commands. In any case, absent structure holding the storage device in the slot, the ejector may push against the storage device, thereby causing it to be ejected from the slot.
In some implementations, side clamps and a front gate (also referred to as “ejector clamps”—not shown) hold the storage device in the slot during testing. That is, the side clamps provide inward pressure holding the storage device in the slot, and the front gate, which is located in front of the storage device, prevents movement of the storage device out of the slot. When the side clamps and front gate are disengaged, the result is that the ejector forces the storage device out of the slot. The pusher therefore engages the storage device prior to the side clamps and front gate disengaging. The pusher may provide force that is opposite to, but typically less than, that provided by the ejector. Accordingly, when the side clamps and front gate are disengaged, the result is that ejector pushes the storage device out of the slot, but the pusher provides enough opposite force to ensure a controlled ejection. Operation of the pusher may be controlled electronically so that the pusher retracts while still providing appropriate force to prevent abrupt ejection of the storage device. As a result, the possibility of harm to the storage device resulting from abrupt ejection is reduced.
Referring to
Following disengaging of the side clamps, as shown in
In
In
Referring to
Referring to
In the example implementations described above, a single shuttle is used and a single mast is used. However, in some implementations, multiple shuttles and/or masts may be used. For example, referring to
In some implementations, there may be more than one mast and/or shuttle of per track. For example, such masts and shuttles may operate from opposite ends of a rack of slots, thereby servicing different portions of the rack. In some implementations, there may be a single shuttle on a track, which can service multiple masts operating on a single, adjacent track.
In other example implementations, the test system need not include a shuttle. For example, the mast may move along a track to the point of the feeder. There, the mast may pick-up a magazine or cartridge containing multiple untested storage devices. The mast may then operate to load each storage device from the magazine into a test slot, and to load tested storage devices into the magazine. When the magazine is devoid of untested devices, and loaded with tested devices, the mast may drop-off the magazine at the feeder, pick-up a new magazine containing untested storage devices, and repeat the process.
In another example implementation, the shuttle is replaced by a conveyor, which is configured to transport one or more devices between the feeder and the mast. For example, the conveyor may move the devices between the feeder and the mast. At the feeder, the conveyor may pick-up a magazine containing multiple untested storage devices. The conveyor may then transport the magazine to the mast. The mast may then operate to load each storage device from the magazine into a test slot, and to load tested storage devices into the magazine. When the magazine is devoid of untested devices, and loaded with tested devices, the conveyor may drop-off the magazine with the feeder, pick-up a new magazine containing untested storage devices from the feeder, and repeat the process.
In some implementations, the conveyor may move a single device. In some implementations, there may be multiple conveyers of the type described herein operating on the same or adjacent tracks between feeder(s) and mast(s).
In general, the example test system described herein may have the following advantages concerning cycle time: (1) separation of transportation from manipulation: device transportation may occur in parallel with device manipulation; (2) the transportation device (e.g., shuttle) and the manipulation device (e.g., mast) may share the same moving tracks; (3) the transportation device (shuttle) may be light and fast, and thus does not contribute significantly to system cycle time. Furthermore, as the shuttle moves in parallel with the mast, the shuttle does not add considerable extra time to the overall system cycle time.
In some implementations, the elevator may not be used on the mast. Instead, the automation arm may contain structure, similar to that described herein, to interact with the shuttle to move tested devices from the automation arm to the shuttle, and to move untested devices from the shuttle to the automation arm.
Area 508 between racks 501 and 502 is referred to as a cold atrium. Area 509 outside of rack 501 and area 510 outside of rack 502 are referred to as warm atriums. In implementations like that shown in
Generally, air in a cold atrium is maintained at a lower temperature than air in a warm atrium. For example, in some implementations, air in each cold atrium is at about 15° C. and air in each warm atrium is at about 40° C. In some implementations, the air temperature in the warm and cold atriums is within prescribed ranges of 40° C. and 15° C., respectively. In some implementations, the air temperatures in the warm and cold atriums may be different than 40° C. and/or 15° C., respectively. The relative air temperatures may vary, e.g., in accordance with system usage and requirements.
During testing, cold air from a cold atrium 508 is drawn through the test slots, and over the devices under test. This is done in order to control the temperature of devices during test. Due at least in part to device operation in the slots, the temperature of the cold air passing over the devices rises. The resulting warm air is then expelled into a warm atrium 510. Air from each warm atrium is then drawn through a corresponding cooling mechanism, and expelled to the cold atrium. From there, the resulting cold air is re-cycled. In the example implementation of
Air flow between the cold and warm atriums is depicted by the arrows shown in
In some implementations, slots in a rack are organized as packs. Each pack may hold multiple slots and is mounted in a rack. An example pack 520 is shown in
In this regard,
Referring to
In some implementations, each air plenum outputs cold air, which moves towards the center of a rack. For example, air may move from the top of a rack towards the center or from the bottom of a rack towards the center. In this regard, air movers create a high pressure area at the plenum exhaust, and the movement of the air through the slots causes a relatively lower air pressure towards the middle of the racks, so the air appropriately diffuses. Air movers in the slots draw this cold air from the cold atrium over devices in the slots.
In some implementations, the warm atrium may include one or more air mover boxes 513a, 513b at the top and/or bottom of the racks. An example interior of a warm atrium is shown in
In some implementations, a grating may be installed over and above air mover boxes at the bottom of the rack, thereby forming a walkway for a technician to access the back of each slot via the warm atrium. Accordingly, the technician may service a slot through the back of a slot, without requiring an interruption in movement of the automated mechanisms (mast, shuttle, etc.) at the front of the rack.
In the examples described above, each test slot holds a single device. For example, as shown in
Implementations that use a two-sided slot will typically employ a mast, shuttle, and other automated mechanisms of the type described herein (e.g.,
In some implementations, the plenums and air movers may be located in a column of each rack instead of at the rack top and bottom. An example implementation in which this is the case is shown in
Slots may be mounted on racks using isolators that are configured to reduce the amount and/or frequencies of vibrations transmitted between the slots and the rack. This can be beneficial when testing devices that have moving parts, and whose movement can result in vibrations that can be transmitted to the rack and thus to other slots in the rack and/or parts that are sensitive to externally-induced vibration. For example, a disk drive includes a spinning magnetic disk. Movement of the disk causes vibrations that can be transmitted to the slot which, in turn, can be transmitted to the rack and to other slots. Vibrations, such as these, can adversely affect testing performed in other slots.
Different types of isolators may be used to reduce transmission of vibrations among slots in a rack. In example implementations, the isolators include, but are not limited to, low stiffness gel, rubber grommets, and a negative stiffness isolator. For example, the low stiffness gel may be incorporated between the device and the slot to reduce vibrations in a low frequency range. Rubber grommets, as described below, may be used to reduce vibration in a mid-frequency range. A negative stiffness isolator, as described below may be used to reduce vibrations in a high-frequency range. Generally speaking, frequencies in the low frequency range, the mid-frequency range, and the high frequency range may vary in accordance with various system parameters. In an example, implementation the low frequency range is lower than the mid-frequency range and the mid-frequency range is lower than the high frequency range. The system may also include a dampening system, as described below, to reduce acoustic vibrations (noise).
The slot may also be mounted to frame 606 using negative stiffness isolators 612.
Negative stiffness isolator 612a includes an elastomer 614 mounted in series with a negative stiffness element 615. The elastomer 614 is suspended from arm 609a on the slot, and is mechanically connected to apply downward force (weight) to the negative stiffness element. The weight supported by the elastomer, and thus applied to the negative stiffness element, is equal to the weight of the slot plus the weight of any device in the slot. The weight is applied at about the point 616 where the negative stiffness element is in a state of buckling, as described below.
In this regard, negative stiffness element 615 leverages an unstable linkage member 617 in a stage of buckling. Springs 618, at either end of the member apply inward force that is translated, through elements 620, to member 617. This force places member 617 in a state of buckling. Member 617 is in buckling at pin joint 616, e.g., the point where its two components 617a, 617b link together. The linkage may be implemented via a pin or other connection mechanism.
With the compressive force (e.g., weight) applied to member 617 by elastomer 614, linkage member 617 becomes unstable. Member 617 is made stable via a spring 624 that applies upward force at point 616 to produces a negligible dynamic stiffness. That is, an upward force is applied by spring 624, which counteracts the weight supported by elastomer 614. With the correct calibration of spring 624, member 617 reaches its critical buckling load. By tuning the stiffness of spring 624 against the buckling load (in this case, the weight), the result is a vibration system with a dynamic stiffness that approaches (although does not necessarily reach) zero. This near-zero dynamic stiffness drives the natural frequency of system vibration towards zero.
As noted above, in a real system, it may be difficult to achieve a zero natural frequency. To further reduce the natural frequency, the length (L) of elastomer 614 may be increased which, in turn, results in lower dynamic stiffness. In some implementations, elastomer is about 20 mm long; however, the length of an elastomer may vary from system-to-system depending on numerous factors, such as the weight, required buckling force, desired natural frequency, and so forth.
In some implementations, spring 624 is tuned manually to provide a force that is about equal to, and opposite of, the force applied by the combined weight of the slot and the device in the slot. In some implementations, spring 624 may be tuned automatically. For example, spring 624 may be tuned using a computer-controlled motor, which can vary the stiffness in accordance with commands input to a test computer. In other implementations, a tunable element other than a spring (e.g., a piston) may be used to provide the opposite force for the negative stiffness element.
In addition to the negative stiffness element, the system may use dampening to reduce acoustic noise (vibrations) at high frequencies. In an example implementation, a resonator may be formed at a front end of an air mover assembly in a slot. The resonator may be formed by creating chambers with the slot, and exposing those chambers to the air flow via holes that are adjacent to the air flow.
More specifically, as explained above, air from the cold atrium moves through the slot, over a device in the slot, and out to a warm atrium. An air mover may draw the air from the cold atrium into the slot by creating a region of lower air pressure caused by its air flow. The air flow through the slot may flow over holes to chambers of air. This causes formation of a standing pressure waive at a particular frequency. In some implementations, the chambers 635 of air are below the slot and the holes 636 are underneath the air flow, as shown in
The standing pressure wave created by the resonator acts to counter acoustic vibrations in the air flow. For example, in some implementations, the standing pressure wave may cancel-out, or substantially cancel-out, acoustic vibrations in the air flow. In some implementations, the frequency of the standing pressure wave is centered around about 2500 Hertz (Hz) with attenuation around 1000 Hz. In other implementations, the frequency of the standing pressure wave may be different, and the attenuation frequency may also be different.
In this regard, the example resonator described herein may be tuned by varying one or more of the following: the size of the chambers, the number of chambers, the location of the chambers, the size of the holes, the number of holes, the location of the holes, the volume of air in the air flow, the height of the air column in the air flow, the thickness of the material comprising the chambers, and so forth.
In some implementations, like that shown in
In some implementations, acoustic vibrations in the air flow may also be reduced by using larger air movers in the slots than are required to achieve an appropriate air flow volume, rate, etc., and running the air movers slower than their full speed, e.g., at half-speed. This can reduce the overall acoustic noise in the system and reduce high-frequency vibrations picked-up by a device in a slot.
Devices under test, such as storage devices, may be susceptible to shock and vibration during operation and testing. Shock and vibration events can also occur, for example, when a storage device is inserted or removed from a test slot. In this regard, during testing, devices are frequently swapped-out for different devices while the surrounding devices are operating or being tested. In some cases, it can be difficult to insert or remove a device from a test slot without causing the test slot to move a chassis of the test rack. An impact produced in this way can create a shock or vibration event that is transmitted to adjacent devices in other test slots, which degrades the isolation scheme of the test rack. This problem can be amplified by the high density of the test rack, as the test slots can be located in close proximity to one another to conserve space.
In some examples, additional shock or vibration events can be created while a device to be tested is pushed against or pulled away from one or more electrical connecting elements located in the test slot. In order for the device to mate or un-mate with the electrical connecting elements, some degree of force is exerted on the device. This force can be greater than the force require to insert the device into the test slot, and can have vibrational consequences.
One way to reduce the likelihood of causing shock or vibration events is to use precision automation when aligning a device to a test slot. In some cases, however, the location of the test slot may change with loading and with temperature, as the isolators associated with the test slot change shape under stress or with temperature. Precision automation to counteract these effects can unduly increase the cost of the test system.
The example test system described herein can reduce the need for precision automation, as described above. More specifically, in some implementations, each test slot is mounted to a rack (or pack in the rack) using elastic isolators. For example, as shown in
Accordingly, in some implementations, if the test slot is out of alignment with the automation arm of a mast during a docking process, the automation arm may grab the test slot and force the test slot into an alignment sufficient to allow the test slot and the automation arm to dock, and thereby load/unload devices in the test slot. The force applied by the automation arm may move the test slot within the rack, and into an alignment, without removing the test slot from the rack. This can be done without transmitting significant vibrations to the test rack.
In an example implementation, the test slot includes hooks and the automation arm includes a gripper.
More specifically, as shown in
Control mechanisms in the automation arm may be used to control movement of the gripper. In some implementations, the gripper may be controlled so that both fingers are pulled in concert. In other implementations, the fingers may be independently controllable. Chamfered pins 710 may be included on automation arm 704 (
As a result of the pulling motion performed by the gripper, the slot moves into alignment with the automation arm. Because the slot is movably mounted on flexible isolators, the amount of vibrations resulting from alignment can be reduced. For example, the slot may be gathered to the automation arm, thereby maintaining benefits of the slot's vibration isolation system during loading and docking.
In the example implementations described above, the automation arm is a two-sided arm of the type shown in
The docking process initiated by the hooks and gripper results in alignment and mating of keys on the automation arm to corresponding locks on the slot. The keys and locks may be used to actuate mechanisms to hold a device under test in the slot, and to allow the device to be removed from the slot. These features are described in more detail below.
Docking operations are performed prior to inserting a device into a test slot or removing a device from a test slot. Prior to device insertion/removal, as described above, a gripper grabs a slot and aligns the slot to an automation arm. The slot may include mechanisms to hold, or clamp, a device under test in the slot. In some implementations, those mechanisms may include a slot clamp, which is referred to simply as a “clamp” or “side clamp”, and a slot ejector clamp, which is referred to as a “gate”. As described in more detail below, the side clamps hold the device in the slot by applying pressure at an angle (e.g., about a right angle) to the direction at which the device is loaded/unloaded to/from the slot. The gate is movable in front of a device in the slot, thereby preventing movement of the device out of the slot. To move a device out of the slot, the gate is opened (e.g., moved away from the front of the slot) and pressure on the clamps is relieved. The side clamps and the gate may be operated using a single mechanical control and in response to a single motion, as described below.
Cam locks 805 control operation of the side clamps and gates 802 in response to a single turning motion. In some implementations, as described below, cam locks 805 may be turned part-way to activate the gates, and then further to activate the clamps, or vice versa. For example, to close the clamps and the gates, the cam locks may be turned inwardly towards the center of device 801, and to open the clamps and the gates, the cam locks may be turned outwardly away from the center of device 801, or vice versa. Regardless, the same cam lock and the same turning motion may control both opening and a single corresponding side clamp and gate. As described below, the amount of angular rotation of the cam locks (relative to a reference) dictates whether the side clamps and/or the gate are closed or opened.
Cam locks 805 physically connect to corresponding keys on the automation arm that docks with the slot.
In some implementations, to insert a device 801 from automation arm 808 into slot 800, a pusher 824 on automation arm 808 moves from position Y1 (
In some implementations, θ1 is 0°±10°, θ2 is 100°±10°, and θ3 is 220°±60°. In other implementations, θ1, θ2 and θ3 may have different values and/or may be rotated 180° relative to the graph of
In some implementations, to remove a device 801 from slot 800 and accept it into automation arm 808, pusher 824 moves from position Y1 to position Y2. Cam lock 805b is then rotated from position 83 to position 82. Pusher 824 is then moved to position Y3. Cam lock 805b is then moved from position 82 to position θ1, and pusher 824 is moved to position Y1. At each time, cam lock 805a is rotated an angular distance that is equal, but opposite, to the angular distance rotated by cam lock 805b. The values of θ1, θ2 and θ3, and the states of the clamps and gates at those angular rotations may the same as described above.
Thus, to summarize, a single rotatable motion may cause two sequential clamping motions, one in the X dimension and one in the Y dimension. That is, the cam lock is rotated resulting in clamping the device in the slot in the X dimension (e.g., lowering of the gate), and then the cam lock is further rotated resulting in clamping the device in the Y dimension (e.g., actuation of the side clamps). Opposite rotation of the cam lock causes, in turn, release of the side clamps followed by lifting of the gate, as described above.
The operations described above, including movement of the pusher and rotation of the keys/cam locks may be controlled by electronics in the test system. The electronics may include one or more computing devices, and may be local to the automation arm, remote from the automation arm, or a combination of local to and remote from the automation arm. For example, the operations may be directed by a computing device used to coordinate test operations.
In some implementations, the single action of the rotary cam locks, which clamps the device in X and Y dimension, causes conductive thermal heating devices to be applied the sides of the devices for test process thermal conditioning. For example, the conductive thermal heating devices may be moved by the same axle that moves the side clamps, and may contact the sides of the device, e.g., at the same time as the side clamps contact the device or at a different time. For example, the conductive thermal heating devices may contact the sides of the device at an angular position θ4, which may be before or after θ1, θ2 and θ3, between θ1 and θ2, or between θ2 and θ3.
The test systems described herein are not limited to use with clamps and gates as described above, nor to the numbers of clamps and gates shown. Any appropriate number of claims and/or gates may be used. Likewise, the order of operations described above may vary in other implementations and/or one or more operations may be omitted in other implementations.
In some implementations, a test system may include a control center, from which one or more test engineers may direct testing of devices in the slots.
Each slot 903 of test system 901 may include one or more processing devices 905. In some implementations, a processing device may include, but is not limited to, a microcontroller, a microprocessor, an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a network processor, and/or any other type of logic and/or circuitry capable of receiving commands, processing data, and providing an output. In some implementations, a processing device in each slot is also capable of providing and/or routing power to the slot, including to a device under test in the slot and to other circuit elements in the slot.
Each processing device may be configured (e.g., programmed) to communicate with a device under test in the slot and with other elements of the slot, such as the slot air mover, clamps in the slot, and so forth. For example, each processing device may monitor operations of a device in the slot during testing (including test responses), and report test results or other information back to the control center. In some implementations, each processing device may be configured to communicate wirelessly with the control center.
Examples of wireless protocols that may be used by the processing devices and control center for communication include, but are not limited to, Bluetooth (over IEEE 802.15.1), ultra-wideband (UWB, over IEEE 802.15.3), ZigBee (over IEEE 802.15.4), and Wi-Fi (over IEEE 802.11). Cellular wireless protocols may also be used for wireless communication between the processing devices and the control center. Examples of cellular wireless protocols that may be used by the processing devices and control center for communication include, but are not limited to, 3G, 4G, LTE, CDMA, CDMA2000, EV-DO, FDMA, GAN, GPRS, GSM, HCSD, HSDPA, iDEN, Mobitex, NMT, PCS, PDC, PHS, TAGS, TDMA, TD-SCDMA, UMTS, WCDMA, WiDEN, and WiMAX. Combinations of two or more of the protocols listed herein, or others not listed herein, may also be used to implement wireless connections between the control center and processing devices in the slots.
Use of wireless communication between the control center and processing devices in the slots can reduce the number of wired connections used in the test system. This can reduce system cost and system complexity. For example, wireless communication reduces the number of cables used in the system, thereby reducing the need for vibration isolation of such cables.
Within each slot, there may be wired and/or wired connections between a processing device, a device under test, and various elements of the slot that are controlled by, or communicate with, the processing device. In some implementations, as noted, there may be intra-slot wireless communications, e.g., communications between a processing device and elements in the slot. For example, a device under test may communicate wirelessly to a processing device also in the slot. The intra-slot wireless protocol may be the same wireless protocol used for communication between the processing device and control center, or a different wireless protocol may be used for intra-slot communication and for communication between the processing device and control center.
In some implementations, wireless communications between processing devices in the slots and the control center may be direct. That is, such communications may originate with the control center and be addressed directly to a processing device, or such communications may originate with a processing device and be addressed to the control center. In some implementations, the wireless communications may go through a router or hub in a communication path between the processing devices and the control center. The router or hub may include one or more wired or wireless communication paths. For example, in some implementations, there may be a communications hub for each test rack, through which communications to/from processing devices in the rack are routed.
In some implementations, as described above, there may be a single (one) processing device per slot. In other implementations, a single processing device may serve multiple slots. For example, in some implementations, a single processing device may service a pack, a rack, or other grouping of slots.
The communications to/from each processing device may include, but are not limited to, data representing/for testing status, yield, parametrics, test scripts, and device firmware. For example, testing status may indicate whether testing is ongoing or completed, whether the device under test has passed or failed one or more tests and which tests were passed or failed, whether the device under test meets the requirements of particular users (as defined, e.g., by those users), and so forth. Testing yield may indicate a percentage of times a device under test passed a test or failed a test, a percentage of devices under test that passed or failed a test, a bin into which a device under test should be placed following testing (e.g., a highest quality device, an average quality device, a lowest quality device), and so forth. Testing parametrics may identify particular test performance and related data. For example, for a disk drive under test, parametrics may identify a non-repeatable run-out track pitch, a position error signal, and so forth.
In some implementations, test scripts may include instructions and/or machine-executable code for performing one or more test operations on a device held in a slot for test. The test scripts may be executable by a processing device, and may include, among other things, test protocols and information specifying how test data is to be handled or passed to the control center.
In some implementations, a device under test in a slot may be programmed wirelessly from the control center (via a processing device in the slot), either in response to a test condition or not. For example, as noted, device firmware may be communicated wirelessly from the control center to a processing device in the slot. The processing device may then program the device under test in the slot using that firmware. In some implementations, the processing devices themselves may be programmed wirelessly by the control center.
Referring to
Computing device 909 includes appropriate features, such as one or more wireless cards, that enable computing device 909 to communicate wirelessly with the processing devices in the test system slots in the manner described herein. Computing device 909 (or other devices directed by computing device 909) may also control various other features of the example test system described herein, such as the feeder(s), the mast(s), the shuttle(s), and so forth.
Not all communications between computing device 909 and various other features of the test system need be wireless. For example, test system 901 may include wireless communications between computing device 909 and processing devices in the slots, and wired communications to other features of the system (e.g., the feeder(s), the mast(s), the shuttle(s), and so forth. In some implementations, communications between computing device 909 and all features of the system may be wireless or at least partly wireless. In some implementations, communications to/from the slots may be a combination of wired and wireless communications.
While this specification describes example implementations related to “testing” and a “test system,” the systems described herein are equally applicable to implementations directed towards burn-in, manufacturing, incubation, or storage, or any implementation which would benefit from asynchronous processing, temperature control, and/or vibration management.
Testing performed by the example test system described herein, which includes controlling (e.g., coordinating movement of) various automated elements to operate in the manner described herein or otherwise, may be implemented using hardware or a combination of hardware and software. For example, a test system like the ones described herein may include various controllers and/or processing devices located at various points in the system to control operation of the automated elements. A central computer (not shown) may coordinate operation among the various controllers or processing devices. The central computer, controllers, and processing devices may execute various software routines to effect control and coordination of the various automated elements.
In this regard, testing of storage devices in a system of the type described herein may be controlled by a computer, e.g., by sending signals to and from one or more wired and/or wireless connections to each test slot. The testing can be controlled, at least in part, using one or more computer program products, e.g., one or more computer program tangibly embodied in one or more information carriers, such as one or more non-transitory machine-readable media, for execution by, or to control the operation of, one or more data processing apparatus, e.g., a programmable processor, a computer, multiple computers, and/or programmable logic components.
A computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program can be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a network.
Actions associated with implementing all or part of the testing can be performed by one or more programmable processors executing one or more computer programs to perform the functions described herein. All or part of the testing can be implemented using special purpose logic circuitry, e.g., an FPGA (field programmable gate array) and/or an ASIC (application-specific integrated circuit).
Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Generally, a processor will receive instructions and data from a read-only storage area or a random access storage area or both. Elements of a computer (including a server) include one or more processors for executing instructions and one or more storage area devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from, or transfer data to, or both, one or more machine-readable storage media, such as mass storage devices for storing data, e.g., magnetic, magneto-optical disks, or optical disks. Machine-readable storage media suitable for embodying computer program instructions and data include all forms of non-volatile storage area, including by way of example, semiconductor storage area devices, e.g., EPROM, EEPROM, and flash storage area devices; magnetic disks, e.g., internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks.
Although the example test systems described herein are used to test storage devices, the example test systems may be used to test any type of device.
Any “electrical connection” as used herein may imply a direct physical connection or a connection that includes intervening components but that nevertheless allows electrical signals to flow between connected components. Any “connection” involving electrical circuitry mentioned herein, unless stated otherwise, is an electrical connection and not necessarily a direct physical connection regardless of whether the word “electrical” is used to modify “connection”.
Elements of different implementations described herein may be combined to form other embodiments not specifically set forth above. Elements may be left out of the structures described herein without adversely affecting their operation. Furthermore, various separate elements may be combined into one or more individual elements to perform the functions described herein.