Abstract:
Systems and methods are provided for verifying a magnetic positioning system. One embodiment includes a mounting unit, a drive unit, and a controller. The mounting unit is able to mechanically couple with a device that includes a magnetic sensor. The mounting unit includes a nonconductive mount to attach to the device, and a nonconductive swivel bearing with arms that are rotatably attached to the mount. The drive unit includes a platform, a nonconductive rigid post extending outward from the platform and attached to a center portion of the swivel bearing, linear actuators attached to the platform, and nonconductive shafts attached to the arms of the swivel bearing. Each shaft is attached to a linear actuator for displacement by the actuator. The controller directs the linear actuators to adjust the nonconductive shafts in order to move the swivel bearing, thereby adjusting an orientation and position of the device.

Description:
FIELD 
       [0001]    The disclosure relates to the field of position tracking systems, and in particular, to systems for verifying the output of a magnetic position tracking system. 
       BACKGROUND 
       [0002]    Position tracking systems are used for a variety of purposes. For example, helmet tracking systems may be used in an aircraft in order to determine the position and/or orientation (i.e., rotation) of a pilot&#39;s head. This data may then be utilized to update a Heads-Up Display (HUD) in order to properly display information within in the pilot&#39;s current field of view. 
         [0003]    Position tracking systems may be implemented within an aircraft, within a simulator for an aircraft, or in any suitable environment where careful tracking of position is desirable (e.g., in a surgical environment, for a video game system, etc.). One type of position tracking system monitors the orientation of a user&#39;s head by attaching magnetic sensors to a helmet for the user, and attaching magnetic transmitters close to the user in the surrounding environment. Communications between these magnetic sensors and transmitters may then be used to determine an orientation and position of the head. 
       SUMMARY 
       [0004]    Embodiments described herein utilize equipment for calibrating a magnetic position tracking system, such as a helmet tracking system for an aircraft. The equipment includes nonconductive components in locations that are close to magnetic sensors of the tracking system. This limits the amount of signal distortion caused by the equipment that is used to calibrate the magnetic position tracking system. 
         [0005]    One embodiment is a system that verifies the output of a magnetic positioning system. The system includes a mounting unit, a drive unit, and a controller. The mounting unit is able to mechanically couple with a device that includes a magnetic sensor. The mounting unit includes a nonconductive mount to attach to the device, and a nonconductive swivel bearing with arms that are rotatably attached to the mount. The drive unit includes a platform, a nonconductive rigid post extending outward from the platform and attached to a center portion of the swivel bearing, linear actuators attached to the platform, and nonconductive shafts attached to the arms of the swivel bearing. Each shaft is attached to a linear actuator for displacement by the actuator. The controller directs the linear actuators to adjust the nonconductive shafts in order to move the swivel bearing, thereby adjusting an orientation and position of the device. 
         [0006]    Another embodiment is a method. The method includes a) directing linear actuators to move nonconductive shafts that are each attached via a mounting unit to a device that includes a magnetic sensor, thereby moving the device into a default orientation and position, and b) analyzing input from a camera attached to the device in order to confirm that the device is at the default orientation and position. The method also includes c) recording input from the magnetic sensor in the memory and correlating the input with the orientation and position of the device, and d) determining whether input for positions and orientations in an expected range of motion of the device have been recorded in the memory. If input for positions and orientations in the expected range of motion have not yet been measured, the method further includes e) directing the linear actuators to move the nonconductive shafts again, thereby moving the device into a new orientation and position, and f) returning to step c). 
         [0007]    Another embodiment is an apparatus. The apparatus includes a nonconductive mounting unit, adapted to mechanically couple with a device that includes a magnetic sensor. The apparatus also includes a drive unit. The drive unit includes nonconductive shafts attached to the mounting unit, and linear actuators adapted to drive the nonconductive shafts. The apparatus also includes a controller operable to direct the linear actuators to controllably adjust the nonconductive shafts, thereby adjusting an orientation and position of the device. 
         [0008]    Other exemplary embodiments (e.g., methods and computer-readable media relating to the foregoing embodiments) may be described below. The features, functions, and advantages that have been discussed may be achieved independently in various embodiments or may be combined in yet other embodiments further details of which may be seen with reference to the following description and drawings. 
     
    
     
       DESCRIPTION OF THE DRAWINGS 
         [0009]    Some embodiments of the present disclosure are now described, by way of example only, and with reference to the accompanying drawings. The same reference number represents the same element or the same type of element on all drawings. 
           [0010]      FIG. 1  is a diagram of a position verification system in an exemplary embodiment. 
           [0011]      FIGS. 2-6  are diagrams of a base unit of a position verification system in an exemplary embodiment. 
           [0012]      FIGS. 7-10  are diagrams of a drive unit of a position verification system in an exemplary embodiment. 
           [0013]      FIGS. 11-13  are diagrams of a rigid center post in an exemplary embodiment. 
           [0014]      FIGS. 14-15  are diagrams of a swivel bearing in an exemplary embodiment. 
           [0015]      FIGS. 16-18  are diagrams of a mount for a position verification system in an exemplary embodiment. 
           [0016]      FIGS. 19-20  are diagrams of a receiver of a mounting unit for a position verification system in an exemplary embodiment. 
           [0017]      FIG. 21  is a diagram of a mounting unit positioned atop shafts of a position verification system in an exemplary embodiment. 
           [0018]      FIG. 22-25  are diagrams of a device attached to a position verification system in an exemplary embodiment. 
           [0019]      FIG. 26  is a block diagram of controllable components of a position verification system in an exemplary embodiment. 
           [0020]      FIG. 27  is a flowchart illustrating a method for controlling a position verification system in an exemplary embodiment. 
           [0021]      FIG. 28  illustrates a processing system operable to execute a computer readable medium embodying programmed instructions to perform desired functions in an exemplary embodiment. 
       
    
    
     DESCRIPTION 
       [0022]    The figures and the following description illustrate specific exemplary embodiments of the disclosure. It will thus be appreciated that those skilled in the art will be able to devise various arrangements that, although not explicitly described or shown herein, embody the principles of the disclosure and are included within the scope of the disclosure. Furthermore, any examples described herein are intended to aid in understanding the principles of the disclosure, and are to be construed as being without limitation to such specifically recited examples and conditions. As a result, the disclosure is not limited to the specific embodiments or examples described below, but by the claims and their equivalents. 
         [0023]    The systems described herein help to verify/calibrate magnetic position tracking systems that may be vulnerable to magnetic field interference from the surrounding environment. For example, an aircraft cockpit utilizing a magnetic position tracking system (hereinafter, “magnetic positioning system”) may be substantially metallic. These metallic cockpit components, which change depending on the given aircraft, vary the magnetic environment in which the positioning system is to be used. Even across aircraft of the exact same model, each cockpit presents a unique magnetic environment (e.g., depending on what happens to be mounted in that specific cockpit). To address this issue, the equipment described herein is capable of reliably and precisely moving a device (e.g., a helmet, armband, etc.) into a variety of known orientations and positions (e.g., within a cockpit), allowing for the known positions to be correlated with magnetic sensor input for the positioning system. 
         [0024]      FIG. 1  is a block diagram of a Position Verification System (PVS)  10  in an exemplary embodiment. The PVS comprises any system, device, or component operable to controllably adjust the orientation and/or position of any device having one or more magnetic sensors. Specifically, PVS  100  allows for calibration of the device (e.g., helmet) to the environment in which it is to be deployed (e.g., a cockpit) while not affecting the unique magnetic environment where the device will be used. 
         [0025]    The device calibrated by PVS  100  may use magnetic sensors in order to track its orientation/position in a room or other environment. For example, an aircraft cockpit may include multiple magnetic transmitters. An aircraft helmet may utilize its sensors to detect magnetic fields sourced by the transmitters and thereby determine its position/orientation within the cockpit. Similar techniques may be used to track the orientation/position of devices in aircraft simulators, in ground vehicles, or even in a room. However, because the magnetic environment of such locations varies (e.g., as new equipment is added to or removed), it is desirable to calibrate the magnetic sensors of the device by positioning the device into known locations and recording the input from the magnetic sensors of the device. 
         [0026]    PVS  101  controllably adjusts both the position and orientation of helmet  400  in order to correlate known positions/orientations of helmet  400  with input from magnetic sensors  402 . In this embodiment, PVS  101  is functionally divided into three portions. A mounting unit  300  mounts/attaches to helmet  400 , such that when mounting unit  300  is elevated or rotated, it moves helmet  400 . Meanwhile, drive unit  100 , which is located beneath mounting unit  300 , includes linkages with arms that are driven by linear actuators in order to change the position and/or rotation of mounting unit  300 . In this embodiment, drive unit  100  is protected by a cover  102  that prevents the moving parts of drive unit  100  from harming or injuring an operator of PVS  101 . PVS  101  further includes base unit  200 , which uses motorized elements to adjust a horizontal location of PVS  101 . 
         [0027]    PVS  101  controllably adjusts a three dimensional position and orientation of helmet  400  in order to precisely calibrate a magnetic positioning system. Furthermore, motorized elements of PVS  101  are proximate to base unit  200  of PVS  101 . Since the motorized elements are distal from sensors  402 , the amount of electrical interference caused by these components when measurements are acquired via magnetic sensors  402  is reduced. To further reduce the number of artifacts generated during the calibration process, mounting unit  300  and parts of drive unit  100  include nonconductive components that further reduce the magnetic interference caused by PVS  101 . 
         [0028]    Nonconductive components are used in PVS  101  because conductive materials (including, for example, even carbon fiber) generate loop currents when magnetic transmitters are active. This means that even if the conductive components are not magnetic, the loop currents will generate magnetic interference in a testing environment. Reducing the magnetic footprint from a PVS is substantially beneficial, because otherwise the calibration performed by the PVS would include artifacts stemming from magnetic interference caused by the PVS itself. 
         [0029]      FIGS. 2-6  are diagrams of a base unit  200  of PVS  101  in an exemplary embodiment. In this embodiment, base unit  200  is designed for mounting in a lower portion of a cockpit (e.g., in or near a seat location for a pilot), a simulator, etc. Base unit  200  includes mobile components that controllably adjust their horizontal position within PVS  101 . Since drive unit  100  and mounting unit  300  are attached to these mobile components, base unit  200  may be used to move helmet  400  through an entire expected range of horizontal positions/locations (e.g., based on different expected seat positions for different pilots, based on different biometric properties of pilots, etc.). 
         [0030]    Specifically,  FIGS. 2-6  illustrate a perspective view, front view, side view, top view, and bottom view, respectively, of base unit  200 . As shown in these FIGS., base unit  200  comprises a base  210 , which includes a variety of spacers  212  intended to hold PVS  101  in position (e.g., in a cockpit of a simulator or an aircraft). Base  210  further includes one or more spring-loaded spacers that are retractable via a spring-loaded handle  214 . This feature helps to facilitate the insertion and removal of base  210 . A stage  220  (in this case, a track) is mounted within base  210 . The length of stage  220  is parallel with a longitudinal axis of the cockpit, and is driven by a motor  223  forward and backward within the cockpit. In order to enable lateral motion of helmet  400 , a lateral track  230  is mounted on a top portion of stage  220 . Lateral track  230  is parallel with a lateral axis of the cockpit. Platform  240  is movably attached to lateral track  230 , and is driven back and forth across lateral track  230  by a motor  232 . Platform  240  may also be rotated in order to adjust a yaw of helmet  400  as desired by motor  221 . 
         [0031]    In this embodiment, an electronic interface  222  is mounted onto base unit  200 , enabling an operator/technician to control helmet  400  during calibration by sending input to any combination of motors/actuators within PVS  101 . 
         [0032]      FIGS. 7-10  are diagrams of drive unit  100  of PVS  101  in an exemplary embodiment. Specifically,  FIGS. 7-10  are perspective, front, side, and top views, respectively, of drive unit  100 . In this embodiment, connector  104  of drive unit  100  is mounted onto platform  240  of  FIGS. 2-6 , meaning that the horizontal position of drive unit  100  (e.g., left/right, and forward/backward) is controllably adjustable by directing the motors of base unit  200 . 
         [0033]    In this embodiment, drive unit  100  includes three linkages that each include a nonconductive arm  116  coupled with a linear actuator  112  for driving a piston  114 . Each linkage further includes an end portion  118  dimensioned for attachment to a component of mounting unit  300 . The two linkages on the sides of drive unit  100  are each attached to arms of a swivel bearing  330  (shown for context), while the center linkage includes an end portion  118  dimensioned for attachment to a separate mounting point of mounting unit  300 . Swivel bearing  330  includes a hollow center portion that is slidably attached to nonconductive, rigid center post  120 . As shown in  FIGS. 11-13 , which are perspective, front, and top views of center post  120 , center post  120  includes a rigid base portion  122 , a beveled neck  124 , and a top portion  126  along which swivel bearing  330  is able to slide. 
         [0034]    Swivel bearing  330  is further illustrated in  FIGS. 14-15 , which are top and front views, respectively, of swivel bearing  330 . These FIGS. illustrate that swivel bearing  330  includes a center portion  332  for insertion onto center post  120 , arms  334 , and end portions  336 , which protrude through end portions  118  of the linkages on the sides of PVS  101  when attached. In this embodiment swivel bearing  330  further comprises a beveled portion  338 , to enhance the structural integrity of the connection between arms  334  and center portion  332 . 
         [0035]      FIGS. 16-18  are perspective, side, and bottom diagrams, respectively, of a mount  310  for PVS  101  in an exemplary embodiment. Mount  310  is dimensioned/adapted to attach to helmet  400 , such that rotation or translation applied to mount  310  is directly applied to helmet  400 . In this embodiment, mount  310  includes multiple contoured features  312 , which are formed to snugly fit an interior of helmet  400 . Mount  310  also includes a substantially open portion  314 , to enable swivel bearing  330  to freely rotate when mounted. In a further embodiment, mount  310  includes features (bolts, screws, adhesive pads, receptacles, etc.) that firmly attach it to helmet  400  during testing. For example, in one embodiment screws are driven through contoured features/pads  312  of mount  310  to secure helmet  400  onto mount  310 . In this embodiment, as shown in  FIG. 18  mount  310  also includes multiple receptacles  316  along its bottom portion for holding receivers  320  (described below), which capture and hold arms of swivel bearing  130  in position. Mount  310  is nonconductive, ensuring that it will not induce current loops when magnetic transmitters are activated during testing. 
         [0036]      FIGS. 19-20  are diagrams of a receiver  320  for mount  310  of PVS  101  in an exemplary embodiment. As shown, receptacles  322  on each receiver  320  correspond with a pair of receptacles  316  on mount  310 , allowing the fixation of each receiver  320  to mount  310 , where each receiver may then receive an arm of swivel bearing  330 . 
         [0037]      FIG. 21  is a diagram of mounting unit  300  positioned atop shafts  116  of PVS  101  in an exemplary embodiment. As depicted in  FIG. 21 , mounting unit  300  comprises mount  310 , receivers  320 , swivel arm  330 , and mounting point  340 . Mounting point  340  is dimensioned/adapted for attachment to an end portion  118  of the center linkage. The various components and linkages shown herein for mounting unit  300  and drive unit  100  ensure that vertical adjustments made by linear actuators  112  will adjust an orientation (e.g., pitch and roll) and/or vertical position of helmet  400 , without imparting unexpected translation of helmet  400  in a horizontal direction. 
         [0038]      FIG. 22-25  are diagrams of helmet  400  attached to PVS  101  in an exemplary embodiment. Specifically,  FIGS. 22-25  are perspective, bottom, front, and side views, respectively. In  FIG. 25 , an additional component has been added to PVS  101  in the form of camera  500 . Camera  500  is capable of generating images from the viewpoint of helmet  400 . These images may be analyzed to determine a position and/or orientation of helmet  400 , in essence allowing for a PVS to itself be verified, before it is used to calibrate a magnetic positioning system. For example, the components of PVS  101  may be brought to a default position, and an image generated by camera  500  at the default position may be analyzed for an indication of tilt/rotation (e.g., based on the position/size/orientation of a known cockpit component in the image). This input and analysis is desirable to ensure that PVS  101  will precisely and accurate calibrate the magnetic positioning system used by helmet  400 . 
         [0039]      FIG. 26  is a block diagram  2600  of controllable components of a PVS in an exemplary embodiment. According to  FIG. 26 , a controller  2620  operates PVS  101  to drive helmet  400  through an entire range of known positions and/or orientations, and for each position/orientation, populates an entry in memory  2630 . In this manner, the information in memory  2630  allows input from magnetic sensors  402  to be accurately interpreted when helmet  400  is being used as intended (e.g., when helmet  400  is being used by a pilot to operate a simulator or aircraft). For example, the information in memory  2630  may be used to coordinate/direct the position of components of a Heads-Up Display (HUD). 
         [0040]    Controller  2620  sends positioning instructions to linear actuators  112 , motor  2640 , and motor  2650  in order to adjust the positions of components of PVS  101  and therefore adjust a position/orientation of helmet  400 . In one embodiment, controller  2620  initiates by moving all motors and/or linear actuators to a default starting position/orientation, and then internally tracking each new position change to monitor the current position/orientation of helmet  400 . In a further embodiment, a series of discrete position sensors  2610  are placed along the PVS, and report positional data back to controller  2620 . 
         [0041]    Controller  2620  is further operable to receive a measured input from magnetic sensors  402  of helmet  400 , and to correlate the input in memory  2630  with known positions/orientations of helmet  400 . Controller  2620  may be implemented as custom circuitry, as a processor executing programmed instructions stored in memory, or some combination thereof. 
         [0042]      FIG. 27  is a flowchart illustrating a method  2700  for controlling a PVS in an exemplary embodiment. Assume, for this embodiment, that PVS  101  has been mounted into a cockpit location of an aircraft or simulator, and attached to helmet  400  for initial testing procedures. Further, assume that helmet  400  comprises three 3-axis magnetic sensors, and that three 3-axis magnetic transmitters are mounted within the cockpit and have been activated by controller  2620  to transmit magnetic pulses at thousands of kilohertz. 
         [0043]    Controller  2620  initiates the process in step  2702 , by instructing linear actuators  112 , as well as motors  2640  and  2650 , to move helmet  400  to a default orientation/position. Once PVS  101  has adjusted helmet  400  to the default orientation/position, controller  2620  acquires an image from camera  500 . This image is reviewed by controller  2620  to identify cockpit features (e.g., a vertical calibration strip/line placed within the cockpit), which are analyzed to determine an actual orientation/position of helmet  400 . If the actual position and/or orientation of helmet  400  as indicated by the image is consistent with the expected default position (e.g., based on a size and/or tilt of the cockpit features) in step  2704 , processing continues to step  2706 . However, if the image from camera  500  is not consistent with the expected default position/orientation, controller  2620  reports an error to an operator of PVS  101 , allowing PVS  101  to be diagnosed, re-mounted, and/or adjusted properly. In one embodiment, the error report indicates the current position/orientation of helmet  400  as indicated by the image, as well as a difference between the current position/orientation and the default position/orientation. In a further embodiment, controller  2620  utilizes feedback from camera  500  in order to automatically adjust the position and rotation of helmet  400  from its actual position/orientation to the expected default position/orientation (e.g., by analyzing an image from camera  500  to determine a positional and rotational offset, and then performing displacement/rotation of helmet  400  to compensate for the detected offset). 
         [0044]    In step  2705 , since helmet  400  is now properly arranged in the expected default position, position/rotation sensors  2610  used by the actuators and motors of PVS  101  are initialized and zeroed, so that the input from these sensors  2610  will indicate the amount of deviation of helmet  400  from the default position when testing is in progress. 
         [0045]    At this point in time, controller  2620  may cut power to camera  500 , in order to ensure that camera  500  does not induce any loop currents during testing as helmet  400  is moved to various locations. In step  2706 , controller  2620  records the 3-axis input from each of magnetic sensors  402  on helmet  400  into memory  2630 , correlating the input with the known position and orientation of helmet  400 . 
         [0046]    The recorded magnetic sensor input stored in memory  2630  can be used to validate how the aircraft/simulator interprets input from magnetic sensors  402  (e.g., in order to ensure that the aircraft/simulator is properly interpreting the magnetic environment of the cockpit). To this end, if memory  2630  is a component of the aircraft/simulator, updating memory  2630  directly updates how the aircraft/simulator correlates input from sensors  402  with known positions/orientations of helmet  400 . Alternatively, if memory  2630  is an independent component of PVS  101 , then controller  2620  may provide data stored in memory  2630  to a computer of the aircraft/simulator (e.g., after input for each position has been recorded, after input for all positions has been recorded, etc.). The aircraft/simulator computer may then update its own correlations between orientation/position and sensor input, based on the information kept in memory  2630 . 
         [0047]    At this point in time, it may be desirable to move helmet  400  into new positions/orientations (known as “survey points”), or to instead stop the method. Thus, if the already-measured orientations/positions for helmet  400  fall within an entire expected range of motion of helmet  400  within the cockpit, then processing finishes at step  2710 . For example, the range of motion may be discretized into a series of representative positions and/or orientations within a “motion box” for helmet  400 , and magnetic sensor input may be recorded at each of these representative positions/orientations. 
         [0048]    If further orientations/positions of helmet  400  remain, then controller  2620  directs the motors and linear actuators to move helmet  400  to a new position/orientation in step  2712 , and proceeds to step  2706  to record the magnetic sensor input for the new position/orientation. 
         [0049]    In one particular embodiment, software is used to direct controller  2620  of PVS  101  to perform the various operations disclosed herein.  FIG. 28  illustrates a processing system  2800  operable to execute a computer readable medium embodying programmed instructions to perform desired functions in an exemplary embodiment. Processing system  2800  is operable to perform the above operations by executing programmed instructions tangibly embodied on computer readable storage medium  2812 . In this regard, embodiments of the invention can utilize a computer program accessible via computer-readable medium  2812  providing program code for use by a computer or any other instruction execution system. For the purposes of this description, computer readable storage medium  2812  is anything that stores the program for use by the computer. 
         [0050]    Computer readable storage medium  2812  can be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor device. Examples of computer readable storage medium  2812  include a solid state memory, a magnetic tape, a removable computer diskette, a random access memory (RAM), a read-only memory (ROM), a rigid magnetic disk, and an optical disk. Current examples of optical disks include compact disk-read only memory (CD-ROM), compact disk-read/write (CD-R/W), and DVD. 
         [0051]    Processing system  2800 , being suitable for storing and/or executing the program code, includes at least one processor  2802  coupled to program and data memory  2804  through a system bus  2850 . Program and data memory  2804  can include local memory employed during actual execution of the program code, bulk storage, and cache memories that provide temporary storage of at least some program code and/or data in order to reduce the number of times the code and/or data are retrieved from bulk storage during execution. 
         [0052]    Input/output or I/O devices  2806  (including but not limited to keyboards, displays, pointing devices, etc.) can be coupled either directly or through intervening I/O controllers. Network adapter interfaces  2808  may also be integrated with the system to enable processing system  2800  to become coupled to other data processing systems or storage devices through intervening private or public networks. Modems, cable modems, IBM Channel attachments, SCSI, Fibre Channel, and Ethernet cards are just a few of the currently available types of network or host interface adapters. Display device interface  2810  may be integrated with the system to interface to one or more display devices, such as printing systems and screens for presentation of data generated by processor  2802 . 
         [0053]    Although specific embodiments are described herein, the scope of the disclosure is not limited to those specific embodiments. The scope of the disclosure is defined by the following claims and any equivalents thereof.