fig1 shows a cycle test setup 100 , having a sensing and control system 110 connected to a power supply 120 , a cycle test station 130 , and a processor 150 connected to the sensing and control system 110 . the cycle test station 130 is typically used for testing the functionality and durability of a part 140 by continuously moving the part 140 back and forth . for example , the part 140 may be a door of an automobile , wherein the hinges of the door are being tested by moving the part 140 back and forth for a predetermined number of cycles . the cycle test station 130 moves a part 140 from a first position 142 to a second position 144 and from the second position 144 back to the first position 142 . if the part 140 is a door , the first position 142 could be a closed position . the second position 144 could be an open position . the part 140 being cycle tested completes one motion cycle 146 each time it moves from the first position 142 ( closed door ) to the second position 144 ( open door ), passing by a sensing position , which may be located anywhere between the first position 142 and the second position 144 . the sensing and control system 110 includes a controller 111 and a sensor 112 . the sensor 112 senses movement of the part 140 and generates a sensing signal each time the part 140 moves past the sensor 112 . each sensing signal indicates that the part 140 has completed one motion cycle . the sensor 112 receives power from a power supply 120 through the controller 111 . the sensor 112 may be any sensor capable of sensing motion of a moving part 140 . for example , the sensor 112 may be a motion sensor , an optical sensor , a proximity sensor , a pressure sensor , or a contact sensor . in order to fine tune the sensing process , multiple sensors 112 may be used for sensing increments of a motion cycle 146 . for example , the sensing and control system 110 may include first and second sensors . the first sensor would be placed to sense a first half of the motion cycle 146 . the second sensor would be placed to sense a second half of the motion cycle 146 . the controller 111 receives power from the power supply 120 by a first power cable 122 . the controller 111 provides power to the cycle test station 130 by a second power cable 132 . the sensor 112 provides its sensing signals in real time to the controller 111 by a connection 113 . the connection 113 may be a hard wire or wireless connection . the controller 111 analyzes each sensing signal received from the sensor 112 . depending on the objective of the cycle test , a test failure may be declared when the part 140 fails to complete one motion cycle 146 within a predetermined time period . or , a test failure may be declared when the part 140 takes longer than a predetermined duration to complete one motion cycle 146 , or a plurality of motion cycles 146 . the absence of a sensing signal during a motion cycle may signify that the part 146 has stopped moving or is stuck at a particular position and thus unable to complete the motion cycle 146 . the controller 111 generally determines a test failure has occurred when it does not receive a sensing signal within a predetermined time period after the previous sensing signal . the predetermined time period may be based on an average duration of a typical motion cycle for a particular part 140 . a tolerance margin to accommodate inter - cycle variation may be added . for example , the average duration of a typical motion cycle may be about 30 seconds with an inter - cycle variation of about 5 seconds . the predetermined time period may be set to about 35 seconds . the controller 111 will determine a test failure a sensing signal is not received within 35 seconds after the last received sensing signal . upon determining a test failure , the controller 111 will stop the cycle test by cutting the power being supplied to the cycle test station 130 . alternatively , the controller 111 may generate a termination signal . the cycle test station 130 will stop moving the part 140 upon receiving the termination signal . the controller 111 preferably has several user interfaces , including a control dial 116 , a motion cycle duration display screen 114 , a motion cycle counter display screen 118 , and a set of cycle test indicators 115 . the control dial 116 allows a user to start , stop , preset and reset the controller 111 . the motion cycle duration display screen 114 displays the time elapsed during one motion cycle . the motion cycle counter display screen 118 displays the number of sensing signals generated , which is representative of the number of motion cycles 146 the part 140 has completed . the set of cycle test indicators 115 can be a plurality of light emitting diodes ( leds ). particularly , each of the indicators 115 is used for indicating one of the events related to the cycle test . the events may include cycle test preset , cycle test reset , cycle test in progress , and test failure detected . during a cycle test , the controller 111 sends test results to a processor 150 by a communication link 152 . the controller 111 may notify the processor 150 once a test failure occurs . the processor 150 will respond accordingly . depending on the system architecture , the communication link 152 may be hardwired or wireless . the processor 150 may be any computing device capable of receiving data , processing the received data , and storing and outputting the processed data . the processor 150 typically has a display 154 and a memory 160 . the processor 150 may be coupled to a printer 170 . the test results sent to the processor 150 may include a pass indicator , indicating that the part 140 has completed the cycle test , or a fail indicator , indicating that the part 140 has failed the cycle test . besides a pass / fail indicator , the test results may include the total number of motion cycles the part 140 has completed and the average duration of the completed motion cycles . the processor 150 is enabled to process and analyze the test results and generate a printed test report 172 , documenting the analyzed test result . moreover , the processor 150 can store the current test result to the memory 160 and / or retrieve past test results from the memory 160 . accordingly , the processor 150 can perform statistical analysis for a particular type of part . fig2 shows the controller 111 . the controller 111 includes a timer 310 and a power switch 320 connected to and controlled by the timer 310 . the power switch 320 controls the connection between the power supply 120 and the cycle test station 130 . during test setup , a user may input a predefined cycle duration value to the timer 310 via line 312 by using the control dial 116 . the predefined cycle duration value may be obtained by averaging the duration of several motion cycles of the part 140 to be tested . the predefined cycle duration value preferably incorporates a tolerance margin for inter - motion - cycle variation . for example , the tolerance margin may range from about 0 . 1 second to about 10 seconds . or , the tolerance margin may range from about 0 . 5 second to about 5 seconds . or , the tolerance margin may be about 3 seconds . after the timer 310 is preset with a predefined cycle duration value , the cycle test may begin . the timer 310 is configured to respond to the sensing signals on line 217 from the sensor 112 . the timer 310 includes a counter or an accumulator , which will count to determine the duration of a sensed motion cycle . the timer 310 will reset each time it receives a sensing signal . after being reset by the sensing signal 214 , the timer 310 will begin counting the duration of the sensed motion cycle . the timer 310 compares the predefined motion cycle duration value with the duration of each sensed motion cycle being sensed . if the part 140 does not complete a motion cycle during the predefined duration , the sensing signal will not be generated , and the timer 310 will not be reset within the predefined motion cycle duration . consequently , the duration of the sensed motion cycle will be greater than the predefined motion cycle duration value . when the duration of the sensed motion cycle exceeds the predefined motion cycle duration value by the tolerance margin , a test failure is indicated . in response , the timer 310 then generates a termination signal sent via the line 314 to the power switch 320 . the power switch 320 receives input power over the cable 122 and delivers the power over the cable 132 to the cycle test station 130 . delivery of power to the cycle test station 130 is controlled by the termination signal 314 from the timer 310 . the cycle test station 130 stops cycling the part 140 when the power switch 320 terminates power to the cycle test station 130 . fig3 is a schematic of preferred circuitry 400 for the sensing and control system 110 . the preferred circuitry 400 includes a power regulator 420 , configured to convert ac power received from the power supply 120 to an internal dc voltage . for example , the power regulator 420 may deliver a 12 v internal dc voltage . the positive potential of the internal dc voltage is carried by the positive supply node 422 , which delivers the dc voltage to a sensor 460 and a timer 440 . the sensor 460 may be a motion sensor , an optical sensor , a proximity sensor , a pressure sensor , or a contact sensor . preferably , the sensor 460 is a mini - beam sensor . the sensor 460 generates a sensing signal each time it senses a part completing a motion cycle . the sensing signal is carried by the sense node 462 to an amplifying stage 470 . the amplifying stage 470 will generate a reset signal in response to receiving a sensing signal . the reset signal is delivered to the timer 440 by a reset node 476 . the amplifying stage 470 may be implemented by a variety of circuits . for example , the amplifying stage 470 may include a transistor 473 for amplifying the sensing signal , a bias resistor 471 for biasing the input voltage of the transistor 475 , a high pass capacitor 472 and a resistor 473 for filtering low frequency input voltage , and a pull up resistor 474 for biasing the output of the transistor 475 . upon receiving a reset signal , the timer 440 will be reset so that the sensed motion cycle has zero duration . after being reset , the timer 440 will again begin counting the duration of the sensed motion cycle , until the timer 440 receives the next reset signal . in between successive reset signals , the timer 440 compares the duration of the sensed motion cycle with the predetermined motion cycle value . when the duration of the sensed motion cycle exceeds the predetermined motion cycle value by a tolerance margin , the timer 440 will indicate a test failure by toggling a termination signal at an output node 444 . the termination signal has a low voltage value before a test failure is indicated . the termination signal has a high voltage after a test failure is indicated . a relay device 430 is preferably used as the power switch 320 ( fig3 ). the relay device 430 will be turned on when the voltage of the termination signal is substantially lower than the internal dc voltage of the sensing and control system 400 . the relay device 430 will be turned off when the termination signal has a voltage that substantially equals the internal dc voltage . when the relay device 430 is turned on , it closes a switch between the cycle test station 130 and the power supply 120 . however , when the relay device 430 is turned off , it opens the switch between the cycle test station 130 and the power supply 120 . depending on the design needs , the relay device 430 may be a solid state relay , a solid state contactor relay , a reed relay , a polarized relay , a contactor relay , or a dry contact switch relay . the preferred circuitry 400 includes a set of switches . a power switch 412 is coupled between the power source 120 and the power regulator 420 , and it is used for turning the sensing and control system 400 on and off . a pair of bypass switches 414 and 415 is used for bypassing the termination signal , such that the relay device 430 can stay powered on during the initial setup process . a pause switch 416 is selectively connected to a run node 441 or a stop node 442 of the timer 440 . the pause switch 416 is used for pausing and resuming the timer 440 . a reset switch 418 is coupled to the reset node 476 for manually resetting the timer 440 . the control dial 116 ( fig1 ) is used for toggling the set of switches . alternatively , each of the switches may be accessed and controlled individually . the sensing and control system 400 may include a counter 480 and a set of led indicators . the counter 480 is coupled to a reset node 476 . the counter 480 counts the number of reset signals being generated . the counter 480 can be used for counting the number of motion cycles completed by the part under test . a power indicator led 451 indicates that the sensing and control system 400 is turned on . a bypass indicator led 452 indicates that the sensing and control system 400 is in setup . an output power indicator led 454 indicates that the relay device 430 is delivering power from the power source 120 to the cycle test station 130 . a motion cycle pending indicator led 456 indicates that the part 140 under test is in the middle of a motion cycle . a motion cycle completion indicator led 458 indicates that the part 140 under test has just completed one motion cycle . as shown in fig4 , the sensing and control system 400 generates a sensing signal 510 , a sensed motion cycle duration signal 520 , and a termination signal 530 during the cycle test . the sensing signal 510 is preferably a pulse signal 514 , which is generated shortly after the sensor senses the part under test completing one motion cycle . the duration between successive pulse signals 514 in a normal test cycle is used for calculating the predetermined motion cycle duration 512 . the sensed motion cycle duration signal 520 is reset at the rising edge of each pulse signal 514 . the sensed motion cycle duration signal 520 is the time elapsed value since reception of the last pulse signal 514 . when the sensed motion cycle duration signal 520 has a value that is less than the predefined motion cycle duration value 512 , the termination signal 530 will not be toggled . the cycle test continues , and the sensed motion cycle duration signal 520 is reset when the part under test completes the first 541 , second 542 , third 543 , fourth 544 , and fifth 545 motion cycles , each of which may take about 9 seconds . when the part is stuck , for example , and thus fails to finish the sixth motion cycle , no pulse signal 514 will be generated . as a result , the sensed motion cycle duration signal 520 will not be reset for at least an extended period 518 . thus , the value of the sensed motion cycle duration signal 520 reaches a maximum threshold level 528 , which signifies that the sensed motion cycle has exceeded the predefined motion cycle duration 512 by a tolerance margin 529 . at that point , a test failure 546 is indicated , and a termination signal 534 is toggled from a low state 532 to a high state 534 . in response , the power transmission to the cycle test station is terminated by the relay device . fig5 illustrates another scenario for toggling the termination signal 530 . the part under test may be stuck at the sensing position right after the completion of the fourth motion cycle 544 . the pulse signal 516 will stay high and the next pulse signal will not be generated for at least an extended period 518 . the sensed motion cycle duration signal 520 will not be reset again for at least the extended period 518 . as a result , the sensed motion cycle duration signal 520 will reach the maximum threshold level 528 . indication of a test failure 546 will then follow , toggling the termination signal 530 . fig6 is a flow chart of a method 700 practiced by a preferred embodiment of the present invention . in step 702 , a part is cycle tested by a cycle test station . in step 704 , a pulse signal is generated each time the part under test completes a motion cycle . in step 706 , the duration of each motion cycle is determined based on the pulse signal generated . the duration of the motion cycle is reset at the rising edge of each pulse signal , and it is increased according to the time elapsed since the last pulse signal . in step 708 , a test failure is detected if the duration of the sensed motion cycle duration signal 520 exceeds a predetermined motion cycle duration by a tolerance margin . that is , due to the absence of the pulse signal , the motion cycle duration is not reset for an extended period of time . when the extended period of time is greater than the sum of the predefined motion cycle duration and the tolerance margin , a test failure is determined . the predefined cycle duration is calculated by averaging the duration of several motion cycles . in step 710 , power transmission to the cycle test station is terminated upon a test failure being determined . obviously many modifications and variations of the present invention are possible in light of the above teachings . it is therefore to be understood that within the scope of the appended claims the invention may be practiced otherwise than as specifically described .