Patent Description:
The present disclosure relates to power tools, and more particularly the invention relates to a powered fastener driver according to the preamble of claim <NUM>. Such a powered fastener driver is known from document <CIT>.

There are various fastener drivers used to drive fasteners (e.g., nails, tacks, staples, etc.) into a workpiece known in the art. These fastener drivers operate utilizing various energy sources (e.g., compressed air generated by an air compressor, electrical energy, flywheel mechanisms) known in the art, but often these designs are met with power, size, and cost constraints.

The invention provides a powered fastener driver according to claim <NUM>. The powered fastener driver includes a first cylinder, a first piston positioned within the first cylinder, the first piston being moveable between a top-dead-center position and at or near a bottom-dead-center position, a second cylinder in fluid communication with the first cylinder, a second piston positioned within the second cylinder, the second piston being moveable between a top-dead-center position and a bottom-dead-center position to initiate a fastener driving cycle, a drive blade coupled to the second piston for movement therewith, and a drive mechanism configured to drive the first piston between the top-dead-center position and at or near the bottom-dead-center position. The drive mechanism including a crank arm configured to rotate less than <NUM> degrees (°) for moving the first piston from at or near the bottom-dead-center position and the top-dead-center position and then back to at or near the bottom-dead-center position to complete the fastener driving cycle.

The invention provides, in another aspect, a powered fastener driver according to claim <NUM>. The powered fastener driver includes a powered fastener driver including a first cylinder, a first piston positioned within the first cylinder, the first piston being moveable between a top-dead-center position and at or near a bottom-dead-center position, a second cylinder in fluid communication with the first cylinder, a second piston positioned within the second cylinder, the second piston being moveable between a top-dead-center position and a bottom-dead-center position to initiate a fastener driving cycle, a drive blade coupled to the second piston for movement therewith, and a drive mechanism configured to drive the first piston between the top-dead-center position and at or near the bottom-dead-center position. The drive mechanism including a crank arm having a stop surface configured to engage a fixed stop on a housing of the powered fastener driver both prior to and following completion of the fastener driving cycle.

The disclosure provides, in another aspect, a powered fastener driver including a first cylinder, a first piston positioned within the first cylinder, the first piston being moveable between a top-dead-center position and at or near a bottom-dead-center position, a second cylinder in fluid communication with the first cylinder, a second piston positioned within the second cylinder, the second piston being moveable between a top-dead-center position and a bottom-dead-center position to initiate a fastener driving cycle, a drive blade coupled to the second piston for movement therewith, a drive mechanism configured to drive the first piston between the top-dead-center position and at or near the bottom-dead-center position to complete the fastener driving cycle, and a back-pressure adjustment mechanism in communication with the second cylinder, the back-pressure adjustment mechanism configured to adjust a volumetric flow rate of air exhausted from the second cylinder by the second piston during the fastener driving cycle.

The disclosure provides, in another aspect, a method for controlling a motor of a power tool. The method comprising electrically braking, by a controller, the motor at a first time, and applying a pulse-width modulated (PWM) signal to the motor, by the controller, at a second time. The second time is determined by determining, by the controller, a type of a battery pack electrically coupled to the power tool, and determining, by the controller, the second time based on the type of the battery pack.

The disclosure provides, in another aspect, a method for controlling a motor of a powered fastener driver. The method comprising load testing a battery pack of the powered fastener driver by driving a crank arm against a fixed stop coupled to a housing of the powered fastener driver, determining, by a controller, an internal resistance of the battery pack by measuring one or both of a voltage and a current of the battery pack while driving the crank arm against the fixed stop, and determining, by the controller, a type of battery pack based on the determined internal resistance.

Before any embodiments of the disclosure are explained in detail, it is to be understood that the present subject matter is not limited in its application to the details of construction and the arrangement of components set forth in the following description or illustrated in the following drawings. The present subject matter is capable of other embodiments and of being practiced or of being carried out in various ways.

With reference to <FIG>, a powered fastener driver <NUM> is operable to drive fasteners (e.g., nails, tacks, staples, etc.) held within a magazine <NUM> into a workpiece. The powered fastener driver <NUM> includes an outer housing with a handle portion <NUM>, a structural housing <NUM>, and a user-actuated trigger <NUM> mounted on the handle portion <NUM>. Notably, the powered fastener driver <NUM> does not require an external source of air pressure, but rather the powered fastener driver <NUM> includes an on-board air compressor <NUM>. In this way, the weight and/or size of tool may be reduced. The on-board air compressor <NUM> is powered by a power source (e.g., a battery pack <NUM>), coupled to a battery attachment portion <NUM> of the outer housing.

With reference to <FIG>, the powered fastener driver <NUM> includes a drive blade <NUM> actuated by the on-board air compressor <NUM> to drive the fasteners into a workpiece. The compressor <NUM> includes a compressor cylinder <NUM>, a compressor piston <NUM> in the compressor cylinder <NUM>, and a drive mechanism <NUM> that imparts reciprocating motion to the compressor piston <NUM> to execute one or more consecutive fastener driving cycles. The drive mechanism <NUM> includes a motor <NUM> (e.g., a brushed or brushless DC motor), a transmission <NUM> (e.g., a multistage planetary transmission), and a crank arm assembly <NUM> that converts a rotational output of the transmission <NUM> to a reciprocating input to the compressor piston <NUM>. The fastener driver <NUM> also includes a drive cylinder <NUM> and a drive piston <NUM> slidably disposed in the drive cylinder <NUM>.

The drive piston <NUM> is movable between a top-dead-center (TDC) position (<FIG>) and a bottom-dead-center (BDC) position (e.g., when the drive piston <NUM> is adjacent a stop member <NUM>). Similarly, the compressor piston <NUM> is moveable between a TDC position (e.g., when the compressor piston <NUM> is adjacent a cylinder head <NUM>) and a BDC position (e.g., when the compressor piston <NUM> is adjacent the crank arm assembly <NUM>), or close to a BDC position. The phrase "close to a BDC position" and/or "near BDC" as described herein, refers to a position within about <NUM> % to <NUM> % of reaching an absolute BDC, as the crank arm assembly <NUM> may rotate less than <NUM>° in some cases. In this way, the compressor position <NUM> may not fully reach BDC. In the illustrated embodiment, the drive cylinder <NUM> further includes a stop member <NUM> (e.g., a resilient bumper) positioned to engage and absorb energy from the drive piston <NUM> when the drive piston <NUM> reaches the BDC position.

As shown in <FIG> and <FIG>, the smaller drive cylinder <NUM> may extend into and/or within the larger compressor cylinder <NUM> such that the compressor piston <NUM> may surround the entire drive cylinder <NUM>. By nesting the drive cylinder <NUM> (e.g., at least partially nested, fully nested, and/or the like) within the compression cylinder <NUM>, the size and/or weight of the fastener driver <NUM> may be advantageously reduced for improved handling, manufacturability, and/or the like. In this way, the fastener driver <NUM> may be easier for users to operate, and result in reduced user fatigue. The drive cylinder <NUM> and the compression cylinder <NUM> are in fluid communication by way of a passage <NUM> (see e.g., <FIG> and <FIG>). The passage <NUM> allows for the transmission of air and, therefore, air pressure between the two cylinders <NUM>, <NUM>. In the illustrated embodiment, a cylinder head <NUM> is coupled to a distal end (e.g., an upper end) of the compression cylinder <NUM>. The cylinder head <NUM> may include a plurality of apertures that define the passage <NUM>, which allows for continuous fluid communication between the two cylinders <NUM>, <NUM>. In other words, the passage <NUM> may be devoid of a valve, in some cases. In some embodiments, the compression cylinder <NUM> may be in continuous fluid communication such there is no selection or adjustment possible (e.g., the drive cylinder <NUM> and the compression cylinder <NUM> are always connected in an unchanging way).

As shown in <FIG> and <FIG>, the powered fastener driver <NUM> may additionally include a latch <NUM> supported within the structural housing <NUM>, which extends between the drive mechanism <NUM> and the drive blade <NUM>. The latch <NUM> is movable between a locked position, in which the latch <NUM> engages the drive blade <NUM> to secure the drive piston <NUM> in the TDC position, and an unlocked position, in which the latch <NUM> disengages the drive blade <NUM> so the drive piston <NUM> is able to move from the TDC position to the BDC position to perform a fastener driving operation. In the illustrated embodiment, the drive blade <NUM> includes a slot <NUM>, and a biasing member <NUM> configured to bias the latch <NUM> towards the locked position.

The latch <NUM> may further include a recess <NUM>. When the latch <NUM> is in the unlocked position, the recess <NUM> is aligned with the drive blade <NUM>. When the latch <NUM> is in the locked position, the slot <NUM> formed in the drive blade <NUM> is configured to receive a portion of the latch <NUM> to restrict movement of the drive blade <NUM>. When the crank arm assembly <NUM> moves the compressor piston <NUM> towards the TDC position, the crank arm assembly <NUM> moves the latch <NUM> from the locked position to the unlocked position, which releases the drive blade <NUM> and initiates a fastener driving operation.

As shown in <FIG>, <FIG>, and <FIG>, the crank arm assembly <NUM> includes a crank arm <NUM> with an eccentric pin <NUM> and a connecting rod <NUM> pivotably coupled to the pin <NUM> at one end and a piston pin <NUM> (<FIG>) at an opposite end. With reference to <FIG>, the crank arm <NUM> includes a hub <NUM> coupled for co-rotation with an output shaft of the transmission <NUM> (e.g., by a key and keyway arrangement). With reference to <FIG>, the crank arm assembly <NUM> also includes a cam <NUM> coupled for co-rotation with the crank arm <NUM>. The cam <NUM> includes a first side <NUM>, a second side <NUM> opposite the first side <NUM>, and a cam lobe <NUM> formed on the first side <NUM>. In the illustrated embodiment, the cam lobe <NUM> is formed as a protrusion on the first side <NUM> of the cam <NUM> that extends in an axial direction and parallel with a rotational axis of the crank arm <NUM> and cam <NUM>. As explained in further detail below, one end of the latch <NUM> is biased against the first side <NUM> of the cam <NUM>, resulting in sliding movement between the latch <NUM> and the cam <NUM> as the cam <NUM> rotates. As the latch <NUM> slides up the cam lobe <NUM>, the latch <NUM> is moved towards the unlocked position. In this regard, the latch <NUM> behaves as a follower in response to rotation of the cam <NUM>.

The crank arm assembly <NUM> is configured such that the crank arm <NUM> and the cam <NUM> may be configured to rotate less than <NUM>° to execute a complete fastener driving cycle. It should be appreciated that a complete fastener driving cycle may be defined as the compressor piston <NUM> starting at a position near the BDC position, moving to the TDC position, and finishing at a position near the BDC position, while the drive piston <NUM> starts at TDC position, moves to the BDC position when the compressor piston <NUM> reaches the TDC position, and finishes in the TDC position. For the compressor piston <NUM> to execute the complete fastener driving cycle, the crank arm assembly <NUM> rotates less than <NUM>°.

To initiate a subsequent compete fastener driving cycle, the rotation of the crank arm assembly <NUM> is reversed by the motor <NUM>. In the illustrated embodiment, the crank arm <NUM> and cam <NUM> rotate approximately <NUM>° during a complete fastener driving cycle. In other embodiments, the crank arm <NUM> and cam <NUM> may rotate in a range from <NUM>° to <NUM>°. To accomplish this, the motor <NUM> rotates the crank arm <NUM> and cam <NUM> alternately in a clockwise and a counterclockwise manner (e.g., clockwise then counterclockwise) to complete consecutive fastener driving cycles.

Now with reference to <FIG>, the structural housing <NUM> includes a pair of fixed stops or stop structures (stop pins 102a, 102b) extending from an interior wall of the structural housing <NUM> adjacent the crank arm <NUM>. And, as shown in <FIG>, the crank arm <NUM> includes a finger <NUM> extending radially outward from the hub <NUM> on the second side <NUM> of the cam <NUM>. The stop pins 102a, 102b are positioned such that opposite sides of the finger <NUM>, respectively, can engage the stop pins 102a, 102b at the start and the end of each fastener driving cycle to form a hard stop. In the illustrated embodiment, the stop pins 102a, 102b are formed of rigid material (e.g., steel, aluminum, rigid plastic, and/or the like). In other embodiments, the stop pins 102a, 102b may be formed of a resilient material (e.g., rubber, elastomer, and/or the like). In the illustrated embodiment, the stop pins 102a, 102b and the width of the finger <NUM> define the angular range through which the crank arm <NUM> is able to rotate, as described above.

As shown in <FIG>, the fastener driver <NUM> includes a back-pressure adjustment mechanism <NUM> supported within the structural housing <NUM>. The back-pressure adjustment mechanism <NUM> is configured to vary the amount of air exhausted from the drive cylinder <NUM> beneath the drive piston <NUM> (i.e., on a side of the drive piston <NUM> opposite the cylinder head <NUM>) during a fastener driving cycle. Because the fastener driver <NUM> may not include any pressure valves, the pressure of compressed air developed within the compressor cylinder <NUM> is the same and at a maximum value for each fastener driving cycle.

As such, the back-pressure adjustment mechanism <NUM> can selectively increase or decrease the amount of air exhausted from the drive cylinder <NUM> beneath the drive piston <NUM> as the drive piston <NUM> moves from the TDC position to the BDC position, thus either reducing or increasing, respectively, the back pressure acting on the drive piston <NUM> during a fastener driving cycle. In this way, the force acting on the drive piston <NUM> may be increased or decreased for driving different sizes of fasteners (e.g., <NUM> gauge nails, <NUM> gauge nails, <NUM> inch, <NUM> inch, and/or the like) to appropriate distances within a workpiece to make the fastener driver <NUM> suitable for use in a variety of different fastening applications.

The back-pressure adjustment mechanism <NUM> may include a basket <NUM> rotatably supported within the structural housing <NUM>, an adjustment member <NUM> extending from the basket <NUM> through the structural housing <NUM>, and an opening <NUM> formed in the basket <NUM> to expose a central bore within the basket <NUM>. The opening <NUM> in the basket <NUM> selectively aligns with a window <NUM> formed in the structural housing <NUM> which, in turn, is in fluid communication with the external atmosphere. Rotation of the basket <NUM> (e.g., via the adjustment member <NUM>), adjusts the positioning of the opening <NUM> relative to the window <NUM>, and thus the effective cross-sectional area of the opening <NUM> that is exposed to the atmosphere.

Adjusting the size of the exposed opening <NUM>, therefore, adjusts the volumetric flow rate of air that is exhausted from the drive cylinder <NUM> beneath the drive piston <NUM>, through the exposed opening <NUM> and window <NUM>. For example, reducing the size of the exposed opening <NUM> reduces the flow rate of air that can be exhausted through the opening <NUM>, which creates a larger back-pressure acting against the drive piston <NUM> and thus reduces the net force acting on the drive piston <NUM> during a fastener driving cycle. Increasing the size of the exposed opening <NUM> increases the amount of air that can be exhausted through the opening <NUM>, which creates a smaller back-pressure acting against the drive piston <NUM> and thus increases the net force acting on the drive piston <NUM> during a fastener driving cycle.

With continued reference to <FIG>, <FIG>, fastener driver <NUM> also includes a check door <NUM> and a biasing member <NUM> (e.g., a torsion spring) that biases the check door <NUM> towards a closed position (<FIG>), which blocks the flow rate of air through a second window <NUM> (<FIG>) of the basket <NUM>. In the closed position, the second window <NUM> is closed and atmospheric air is prevented from exiting the drive cylinder <NUM> via the basket <NUM> in response to the drive piston <NUM> moving from the TDC position toward the BDC position. The check door <NUM> is positioned adjacent the back-pressure adjustment mechanism <NUM> and is movable to an open position where the second window <NUM> in the basket <NUM> is opened to permit atmospheric air to enter the drive cylinder <NUM> via the basket <NUM> in response to the drive piston <NUM> moving from the BDC position toward the TDC position. More specifically, during the movement of the drive piston <NUM> from the BDC position toward the TDC position, a vacuum is created within the drive cylinder <NUM> beneath the drive piston <NUM> that pulls the check door <NUM> to the open position.

When the check door <NUM> is in the open position, the entire opening <NUM> of the basket <NUM> may be exposed to the atmosphere (via the first and second windows <NUM>, <NUM> in the structural housing <NUM>) so replacement air may enter the drive cylinder <NUM> beneath the drive piston <NUM>. Once the drive piston <NUM> is returned the TDC position, the vacuum acting on the check door <NUM> to hold the check door <NUM> in the open position dissipates, permitting the spring <NUM> to rebound and return the check door <NUM> to its closed position, thereby closing the second window <NUM>, and resetting the driver <NUM> for a subsequent fastener driving cycle. As the drive piston <NUM> and the drive blade <NUM> return to the TDC position, the biasing member <NUM> also urges the latch <NUM> into engagement with the slot <NUM> of the drive blade <NUM>, which locks the drive blade <NUM> in a position for the subsequent fastener driving cycle.

At the beginning of a fastener driving cycle, the latch <NUM> maintains the drive piston <NUM> in the TDC position, while the compressor piston <NUM> is in the BDC position. One side of the finger <NUM> on the crank arm <NUM> is engaged with, for example, the stop pin 102a. When the operator actuates the trigger <NUM>, the motor <NUM> is activated to rotate the crank arm <NUM> in a first rotational direction toward the stop pin 102a to confirm that the finger <NUM> is engaged with the stop pin 102a. This ensures the crank arm <NUM> is in a starting position at the beginning of a fastener driving cycle. The motor <NUM> is then rotated in an opposite direction to drive the compressor piston <NUM> upward toward its TDC position by the crank arm assembly <NUM>. As the compressor piston <NUM> travels upward, the air in the compressor cylinder <NUM> and above the compressor piston <NUM> is compressed, while the latch <NUM> maintains the drive piston <NUM> in the TDC position.

Once the crank arm <NUM> and cam <NUM> reach a predetermined angular position coinciding with the TDC position of the compressor piston <NUM>, the latch <NUM> is moved into its unlocked position by the cam <NUM>, which releases the drive blade <NUM> as described above. After the drive blade <NUM> is released by the latch <NUM>, the drive piston <NUM> is accelerated downward within the drive cylinder <NUM> by the compressed air within the compressor cylinder <NUM>, which causes the drive blade <NUM> to impact a fastener held in the magazine <NUM> and drive the fastener into a workpiece until the drive piston <NUM> reaches the stop member <NUM> located at the BDC position within the drive cylinder <NUM>.

Upon the drive piston <NUM> reaching its BDC position, one-half of the fastener driving cycle is complete, and the compressor piston <NUM> is driven downwards towards the BDC position by the motor <NUM> and crank arm assembly <NUM> to complete the fastener driving cycle and ready the fastener driver <NUM> for a subsequent fastener driving cycle. As the compressor piston <NUM> is driven through a retraction stroke (i.e., from the TDC position toward the BDC position), a vacuum is created within the compressor cylinder <NUM> and the drive cylinder <NUM>, creating a pressure imbalance on the drive piston <NUM> and a resultant upward force, causing the drive piston <NUM> to return to its TDC position. During the movement of the drive piston <NUM> to the TDC position, the check door <NUM> opens, which allows replacement air to enter the drive cylinder <NUM> beneath the drive piston <NUM> to facilitate return of the drive piston <NUM> to the TDC position as described above. When the drive piston <NUM> and the drive blade <NUM> return to the TDC position, the biasing member <NUM> urges the latch <NUM> into the slot <NUM> of the drive blade <NUM>, which locks the drive blade <NUM> in position for the subsequent fastener driving cycle.

In the illustrated embodiment, the rotational speed of the motor <NUM> is decreased after the fastener driving operation occurs such that the opposite side of the finger <NUM> engages the stop pin 102a, 102b at a low enough speed to prevent shearing of the stop pin 102a, 102b. The construction of the crank arm assembly <NUM> allows a control system <NUM>, described in more detail below, to initiate a timer-based control of the motor <NUM>, which permits the fastener driver <NUM> to be sensorless. In other words, the fastener driver <NUM> does not use any position sensors to detect the position of the compressor piston <NUM> or the drive piston <NUM>. Rather, for the compressor piston <NUM> to execute the complete fastener driving cycle, the crank arm assembly <NUM> rotates less than <NUM>° (e.g., <NUM>° in the illustrated embodiment).

To complete consecutive fastener driving cycles, the motor <NUM> rotates the crank arm <NUM> and cam <NUM> alternately in a clockwise and a counterclockwise manner (e.g., clockwise then counterclockwise). For example, a timer may be used to set a timer duration for the complete fastener driving operation. The control system <NUM> brakes the motor <NUM> at a first time (e.g., to prevent shearing of the stop pin 102a, 102b), the finger <NUM> of the crank arm <NUM> engages the stop pin 102a, 102b at a second time, and after the crank arm <NUM> is stopped by the stop pin 102a, 102b, the motor <NUM> is stalled (e.g., still receives power but does not rotate) until a remainder of the timer duration is reached (e.g., a third time is reached). As such, this ensures the crank arm assembly <NUM> is positioned adjacent the stop pin 102a, 102b.

<FIG> is a block diagram of a control system <NUM> of the powered fastener driver <NUM>. In other embodiments, the control system <NUM> may be used with other power tools. The control system <NUM> may include a controller <NUM>, as well as other components not pictured in <FIG>, for example a motor <NUM>, a solenoid, or other mechanical and/or electrical components described above. The controller <NUM> may include a processing unit <NUM> comprising a control unit <NUM>, an arithmetic logic unit <NUM>, and one or more registers <NUM>. The controller <NUM> may further include a memory <NUM> consisting of program storage <NUM> and/or data storage <NUM>. The memory <NUM> may be flash memory, random access memory, solid state memory, another type of memory, or a combination of these types. The controller <NUM> may further include one or more input units <NUM> and/or output units <NUM>
The battery pack <NUM> may include a stack <NUM> consisting of one or more battery cells <NUM>. In some embodiments, the one or more battery cells <NUM> are electrically connected to each other in a series-type manner. In other embodiments, the one or more battery cells <NUM> are electrically connected to each other in a parallel-type manner. In still other embodiments, the one or more battery cells <NUM> are electrically connected to each other in a combination of a series-type and a parallel-type manner. The battery pack <NUM> may further include a battery controller <NUM> consisting of a battery processor <NUM> and a battery memory <NUM>. The battery pack <NUM> may further include a positive battery terminal <NUM> and a negative battery terminal <NUM>. The positive battery terminal <NUM> and the negative battery terminal <NUM> may be configured to electrically and/or mechanically couple to corresponding terminals of the powered fastener driver <NUM>. In some embodiments, the battery pack <NUM> includes a communication terminal <NUM>, which may be configured to electrically, mechanically, and/or communicatively couple to one or more communication terminals of the powered fastener driver <NUM>.

In some embodiments, such as the block diagram of <FIG>, the one or more battery cells <NUM> are connected to the battery controller <NUM>. The battery controller <NUM> controls the power delivered to the positive battery terminal <NUM> and the negative battery terminal <NUM> (for example, via control of a discharge field-effect transistor (FET), a charge FET, and/or other FETs located within the battery pack). In some embodiments, the battery pack controller <NUM> controls the power by allowing or prohibiting power. Additionally, in some embodiments, the battery pack controller <NUM> controls the power by allowing a percentage of power generated by the one or more battery cells <NUM> to be output. In some embodiments, the amount of power delivered between the battery terminals <NUM>, <NUM> is approximately <NUM>% of power possibly generated by the one or more battery cells <NUM>.

<FIG> is a flowchart illustrating a method <NUM> for controlling a motor (e.g., the motor <NUM>) of a power tool (e.g., the powered fastener driver <NUM>), according to some embodiments. It should be understood that the order of the steps disclosed in the method <NUM> could vary. For example, additional steps may be added to the process and not all of the steps may be required, or steps shown in one order may occur in a second order. Upon receiving a signal to begin an operation of the power tool, the method <NUM> begins. The method <NUM> includes electrically controlling, by the controller <NUM>, the motor <NUM> to drive the crank arm assembly <NUM> (BLOCK <NUM>). In some embodiments, the motor <NUM> drives the crank arm assembly <NUM> in a first direction. In some embodiments, the controller <NUM> may execute BLOCK <NUM> following BLOCK <NUM>.

The method <NUM> further includes determining, by the controller <NUM>, whether a battery pack electrically, mechanically, and/or communicatively coupled to the power tool includes a communication terminal (BLOCK <NUM>). If the controller <NUM> determines that the battery pack does not include a communication terminal, the controller <NUM> additionally includes load testing the battery pack by driving the crank arm assembly <NUM> against a stop pin 102a, 102b (BLOCK <NUM>). The method <NUM> further includes determining, by the controller <NUM> an internal resistance of the battery pack (BLOCK <NUM>). The controller <NUM> may determine the internal resistance by measuring a voltage and/or a current of the battery pack while driving the crank arm assembly <NUM> against the stop pin 102a, 102b. The method <NUM> then includes determining, by the controller <NUM>, a type of battery pack based on the determined internal resistance (BLOCK <NUM>). If the controller <NUM> determines that the battery pack does include a communication terminal (in BLOCK <NUM>, the method <NUM> includes determining, by the controller <NUM>, a type of battery pack by receiving a signal from the battery pack communication terminal (BLOCK <NUM>).

Once the type of the battery pack has been determined by either method (e.g., a first method (BLOCKS <NUM>, <NUM>, and <NUM>) or a second method (BLOCK <NUM>)) presented above, the method <NUM> includes determining, by the controller <NUM>, a timing of one electrical cycle of the motor <NUM> (coinciding with one fastener driving cycle of the fastener driver <NUM>) based on the determined type of the battery pack (BLOCK <NUM>). The one electrical cycle may be the time between when the motor <NUM> begins driving the crank arm assembly <NUM> from a starting position to when the crank arm assembly <NUM> hits one of the stop pins 102a, 102b. Based on the timing of the electrical cycle, the method <NUM> determines a first time and a second time.

The method <NUM> further includes electrically braking, by the controller <NUM>, the motor <NUM> at the determined first time and a first duration (BLOCK <NUM>). Electrically braking the motor <NUM> may include electrically shorting the lead wires of the motor <NUM> together for the determined duration. The method <NUM> further includes applying a series of voltage pulses, by the controller <NUM>, to the motor <NUM> for a second duration starting at the determined second time (BLOCK <NUM>).

For example, the voltage pulses may correspond to a duty cycle of a pulse-width modulated (PWM) signal. The braking of the motor <NUM> (at the first time and for the first duration) and the applying of the PWM signal (at the second time and for a portion of the second duration) may occur before the crank arm assembly <NUM> reaches one of the stop pins 102a, 102b. In the illustrated embodiment, the PWM signal is continuously applied to the motor <NUM> after the crank arm assembly <NUM> engages the stop pin 102a, 102b, which causes the motor <NUM> to stall. For example, the second duration where the PWM signal is applied to the motor <NUM> includes a time both prior to and after the crank arm assembly <NUM> engages the stop pin 102a, 102b. As a result, the crank arm assembly <NUM> is positioned adjacent the stop pin 102a, 102b for each fastener driving cycle.

In some embodiments, the controller <NUM> causes the motor <NUM> to drive the crank arm assembly <NUM> in a first direction in a first electrical cycle of the motor <NUM>, wherein one electrical cycle is the time between when the motor <NUM> begins driving the crank arm assembly <NUM> from a starting position to when the crank arm assembly <NUM> hits one of the stop pins 102a, 102b. The controller <NUM> may then cause the motor <NUM> to drive the crank arm assembly <NUM> in a second direction, opposite the first direction, in a second electrical cycle of the motor <NUM>. The motor <NUM> may alternatively drive the crank arm assembly <NUM> in this fashion in alternative cycles. For example, in the first, third, fifth, and so-on cycles, the motor <NUM> may drive the crank arm assembly <NUM> in a clockwise direction, while in the second, fourth, sixth, and so-on cycles, the motor <NUM> may drive the crank arm assembly <NUM> in a counterclockwise direction, or vice versa.

In some embodiments, the signal to begin the first electrical cycle of the motor <NUM> may be based on an actuation of a trigger <NUM> or another switch of the power tool. The controller <NUM> may wait to begin the second electrical cycle until a second actuation of the trigger <NUM> or other switch occurs. In other embodiments, the controller <NUM> may begin the first electrical cycle in response to an actuation of a trigger <NUM> or another switch of the power tool. The controller <NUM> may begin the second electrical cycle once the first cycle has completed and while the trigger <NUM> or other switch remains actuated.

<FIG> is a graph <NUM> of the speed of the motor <NUM> versus the time of motor operation according to some embodiments. The X-axis represents the time of motor operation in seconds, while the Y-axis represents speed of the motor <NUM> in RPM. The graph <NUM> shows the speed of the motor <NUM> for three different battery types (denoted in the key of the graph <NUM> as data <NUM>, data <NUM>, and data <NUM>). The graph <NUM> includes a horizontal line <NUM> representing a target speed of the motor <NUM> before the crank arm assembly <NUM> hits one of the stop pins 102a, 102b. The time at which the crank arm assembly <NUM> will hit one of the stop pins 102a, 102b is represented on the graph <NUM> by a first vertical line <NUM> (for data <NUM>) or a second vertical line <NUM> (for data <NUM> and data <NUM>).

<FIG> is a graph <NUM> of the position of the crank arm <NUM> versus the time of motor operation according to some embodiments. The X-axis represents the time of motor operation in seconds, while the Y-axis represents the crank arm <NUM> position in degrees (°). The graph <NUM> shows the crank arm <NUM> position for three different battery types (denoted in the key of the graph <NUM> as data <NUM>, data <NUM>, and data <NUM>). The graph <NUM> includes a horizontal line <NUM> representing a target angle of the crank arm assembly <NUM> before the crank arm assembly <NUM> hits one of the stop pins 102a, 102b. The time at which the crank arm assembly <NUM> will hit one of the stop pins 102a, 102b is represented on the graph <NUM> by a first vertical line <NUM> (for data <NUM>) or a second vertical line <NUM> (for data <NUM> and data <NUM>).

<FIG> is a graph <NUM> of the speed of the motor <NUM> versus the position of the crank arm <NUM> according to some embodiments. The X-axis represents the crank arm <NUM> position in °, while the Y-axis represents speed of the motor <NUM> in RPM. The graph <NUM> shows the speed of the motor <NUM> for three different battery types (denoted in the key of the graph <NUM> as data <NUM>, data <NUM>, and data <NUM>). The graph <NUM> includes a horizontal line <NUM> representing a target speed of the motor <NUM> before the crank arm assembly <NUM> hits one of the stop pins 102a, 102b. The crank arm <NUM> position at which the crank arm assembly <NUM> will hit one of the stop pins 102a, 102b is represented on the graph <NUM> by a vertical line <NUM>.

<FIG> is a graph <NUM> of the current of the motor <NUM> versus the position of a crank arm <NUM> according to some embodiments. The X-axis represents the crank arm <NUM> position in °, while the Y-axis represents the current of the motor <NUM> in amps. The graph <NUM> shows the current of the motor <NUM> for three different battery types (denoted in the key of the graph <NUM> as data <NUM>, data <NUM>, and data <NUM>). The crank arm <NUM> position at which the crank arm assembly <NUM> will hit one of the stop pins 102a, 102b is represented on the graph <NUM> by a vertical line <NUM>. A power tool according to embodiments described herein may use these graphs to determine a type of a battery pack electrically, mechanically, and/or communicatively coupled to the power tool, and therefore, the timing of one electrical cycle of the motor <NUM>.

Claim 1:
A powered fastener driver (<NUM>) comprising:
a first cylinder (<NUM>);
a first piston (<NUM>) positioned within the first cylinder, the first piston being moveable between a top-dead-center position and at or near a bottom-dead-center position;
a second cylinder (<NUM>) in fluid communication with the first cylinder;
a second piston (<NUM>) positioned within the second cylinder, the second piston being moveable between a top-dead-center position and a bottom-dead-center position to initiate a fastener driving cycle;
a drive blade (<NUM>) coupled to the second piston for movement therewith; and
a drive mechanism (<NUM>) configured to drive the first piston between the top-dead-center position and at or near the bottom-dead-center position,
characterized in that the drive mechanism includes a crank arm (<NUM>) configured to rotate less than <NUM> degrees, °, for moving the first piston from at or near the bottom-dead-center position and the top-dead-center position and then back to at or near the bottom-dead-center position to complete the fastener driving cycle.