Systems and methods for detecting anvil position using inductive sensor
By integrating a brushless DC motor with an inductive sensor to determine and control the anvil position, the power tool achieves precise anvil positioning, enhancing task efficiency and accuracy.
Patent Information
- Application Number
- JP2024177754
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2020-12-15
- Filing Date
- 2024-10-10
- Publication Date
- 2025-01-14
- Estimated Expiration
- 2041-06-04
AI Technical Summary
Existing power tools with impact mechanisms lack precise control over the anvil position, which affects the efficiency and accuracy of tasks such as driving fasteners into various materials.
Incorporation of a brushless DC motor with an inductive sensor to determine the anvil position and a controller to adjust the motor's drive angle based on the anvil's position, allowing for precise control of the impact mechanism.
Enhances the precision and efficiency of power tools by accurately controlling the anvil position, improving the performance of tasks like driving fasteners into materials.
Smart Images

Figure 2025004199000001_ABST
Abstract
Description
[Technical field]
[0001] (Reference to Related Application) This application claims the benefit of U.S. Provisional Patent Application No. 63 / 034,727, filed June 4, 2020, and U.S. Provisional Patent Application No. 63 / 125,705, filed December 15, 2020, the entire contents of both of which are incorporated by reference herein.
[0002] (Technical field) The embodiments described herein relate to a power tool with an impact mechanism. Summary of the Invention
[0003] A power tool described herein includes a housing, a brushless direct current (DC) motor, an impact mechanism, an output driver, a position sensor, and a controller. The brushless DC motor is within the housing. The brushless DC motor includes a rotor and a stator. The rotor is coupled to the motor shaft to generate a rotational output. The impact mechanism includes a hammer coupled to the motor shaft and an anvil configured to receive an impact from the hammer. The output driver is coupled to the anvil and configured to rotate to perform a task. The position sensor includes an inductive sensor, a first transmit circuit trace, and a first receive circuit trace. The inductive sensor is configured to inject a signal on the transmit circuit trace and detect a first output signal on the first receive circuit trace to determine a position of the anvil. The controller is coupled to the position sensor and configured to calculate an anvil drive angle caused by the impact based on the first output signal, and control the brushless DC motor based on the anvil drive angle.
[0004] A method described herein includes driving a brushless direct current (DC) motor. The brushless DC motor includes a rotor and a stator. The rotor is coupled to a motor shaft to generate a rotational output. The method also includes impacting an anvil of an impact mechanism with a hammer of the impact mechanism coupled to the motor shaft to rotate an output drive coupled to the anvil of the impact mechanism. The method also includes sensing a position of the anvil with a position sensor. The position sensor includes a first transmitter circuit trace and a first receiver circuit trace. The sensing includes injecting a signal on the transmitter circuit trace, detecting a first output signal on the first receiver circuit trace, and determining a position of the anvil based on the first output signal. The method also includes calculating a drive angle of the anvil based on the position of the anvil, and controlling the brushless DC motor based on the drive angle.
[0005] A power tool described herein includes a housing, a brushless direct current (DC) motor, an impact mechanism, an output driver, a target, a magnetic shield, a position sensor, and a controller. The brushless DC motor is within the housing. The brushless DC motor includes a rotor and a stator. The rotor is coupled to the motor shaft to generate a rotational output. The impact mechanism includes a hammer coupled to the motor shaft and an anvil configured to receive an impact from the hammer. The output driver includes a shaft coupled to the anvil and configured to rotate to perform a task. The target is disposed on the shaft. The magnetic shield is disposed on the shaft between the target and the anvil. The position sensor includes an inductive sensor disposed proximate to the target, a first transmitter circuit trace, and a first receiver circuit trace. The inductive sensor is configured to inject a signal on the first transmitter circuit trace and detect a first output signal on the first receiver circuit trace to determine a position of the anvil. A controller is coupled to the position sensor and configured to calculate an anvil drive angle caused by the impact based on the determined position of the anvil and control the brushless DC motor based on the anvil drive angle.
[0006] A method described herein includes driving a brushless direct current (DC) motor. The brushless DC motor includes a rotor and a stator. The rotor is coupled to a motor shaft to generate a rotational output. The method also includes impacting an anvil of an impact mechanism with a hammer of the impact mechanism coupled to the motor shaft to rotate an output drive including a shaft coupled to the anvil of the impact mechanism, and sensing a position of the anvil with a position sensor disposed proximate a target disposed on the shaft. A magnetic shield is disposed on the shaft between the target and the anvil. The position sensor includes a first transmitter circuit trace and a first receiver circuit trace. The sensing includes injecting a signal on the first transmitter circuit trace, detecting a first output signal on the first receiver circuit trace, and determining a position of the anvil based on the first output signal. The method also includes calculating an anvil drive angle based on the position of the anvil, and controlling the brushless DC motor based on the anvil drive angle.
[0007] An impact power tool described herein includes a housing, a brushless direct current (DC) motor, an impact mechanism, an output driver, a target, a position sensor, and a controller. The brushless DC motor is within the housing. The brushless DC motor includes a rotor and a stator. The rotor is coupled to the motor shaft to generate a rotational output. The impact mechanism includes a hammer connected to the motor shaft and an anvil configured to receive an impact from the hammer. The output driver includes a shaft coupled to the anvil and configured to rotate to perform a task. The target is disposed on the shaft. The position sensor includes an inductive sensor disposed proximate to the target, a first transmitter circuit trace, and a first receiver circuit trace. The inductive sensor is configured to inject a signal on the first transmitter circuit trace and detect a first output signal on the first receiver circuit trace. The controller is coupled to the position sensor and configured to receive from the position sensor a first position signal from the position sensor at a first time and a second position signal from the position sensor at a second time, calculate an anvil drive angle based on the first position signal and the second position signal, and control the brushless DC motor based on the anvil drive angle.
[0008] Before describing the embodiments of the invention in detail, it is to be understood that the invention 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 invention is capable of other embodiments and of being practiced or carried out in various ways. It is also to be understood that the phraseology and terminology used herein is for the purpose of description and should not be regarded as limiting. The use of "including," "comprising," or "having" and variations thereof herein is intended to encompass the items listed thereafter and equivalents thereof, as well as additional items. The terms "mounted," "connected," and "coupled" are used broadly and encompass both direct mounting, connection, coupling, and indirect mounting, connection, and coupling. Moreover, "connected" and "coupled" are not limited to physical or mechanical connections or couplings, but can include electrical connections or couplings, whether direct or indirect.
[0009] It should be noted that the present invention may be practiced using a number of hardware and software based devices and a number of different structural components. Moreover, as described below, the specific configurations shown in the drawings are intended to illustrate embodiments of the present invention, and it is intended that other alternative configurations are possible. The terms "processor", "central processing unit" and "CPU" are used interchangeably unless otherwise noted. When the terms "processor" or "central processing unit" or "CPU" are used to identify a unit that performs certain functions, it should be understood that, unless otherwise noted, these functions may be performed by a single processor or by multiple processors arranged in any configuration, including parallel processors, serial processors, tandem processors, or cloud processing / cloud computing configurations.
[0010] Other aspects of the various embodiments will become apparent by consideration of the detailed description and accompanying drawings. [Brief description of the drawings]
[0011] [Figure 1] 1 illustrates a communication system according to one embodiment of the present disclosure. [Diagram 2] 1 shows a communication system power tool. [Figure 3A-3B] 1 shows a schematic diagram of a power tool. [Figure 4] 1 shows a mode pad of a power tool. [Diagram 5] 1 shows a schematic diagram of a communication system including a power tool. [Figure 6-11] 4 shows exemplary screenshots of a user interface of an external device of a communication system; [Figure 12A-12B] 1 illustrates an impact mechanism of an impact driver according to one embodiment. [Fig. 13A-16B] 1 illustrates an example operation of a hammer and anvil of an impact driver according to one embodiment. [Figure 17] 1 shows a flowchart of a first exemplary implementation for controlling a power tool. [Figure 18] 4 shows a flowchart of a second exemplary implementation for controlling a power tool. [Figure 19A] 1 shows an anvil position sensor for a power tool. [Figure 19B] 1 shows an anvil position sensor for a power tool. [Figure 20] 19B illustrates the output of the anvil position sensor of FIG. 19A as a function of anvil position. [Figures 21A-21C] 19C shows a body portion of a power tool for supporting the anvil position sensor of FIG. 19A or FIG. 19B. [Fig. 22A-22B] 1 illustrates an embodiment of an anvil assembly including a target disposed on an anvil shaft and a magnetic shield disposed between the target and the anvil lug. [Figure 23A-23B] 1 illustrates an embodiment of an anvil assembly having an unshielded design. [Fig. 23C-23D] 1 illustrates an embodiment of an anvil assembly having a shielded design. [Figure 24A] 1 illustrates an embodiment of an anvil assembly with a longer tool length, extended anvil, and thicker shield. [Fig. 24B-24C] 13 illustrates an embodiment of an anvil assembly with a longer tool length, an extended anvil, and a reduced outer diameter of the shield and target structure. [Fig. 25A-25B] 1 illustrates an embodiment of an anvil assembly having grooves between the target and the anvil lugs. [Figures 26A-26C] 1 illustrates various embodiments of a target structure for the anvil assembly. [Figure 27A-27B] 1 illustrates one embodiment of an anvil assembly having an overmolded target and a pressed insert. [Fig. 28A-28B] 1 illustrates one embodiment of an anvil assembly having individual or integrated components for a target. [Figure 29] 1 illustrates an embodiment of an anvil assembly having a gap between the target and an anvil rotation sensor. [Figure 30A] 1 illustrates one embodiment of an anvil assembly having a press-fit design with a single detent to prevent sliding upon impact. [Fig. 30B-30C] Anvils with reduced target outer diameter and increased lug height are shown. [Diagram 31] 1 illustrates an embodiment of an anvil assembly with increased lug thickness to provide a gap size that minimizes hammer induced interference. [Fig. 32A-32B] 13 shows another embodiment of an anvil assembly with the shield removed and lug thickness increased to provide an air gap that minimizes the ability of the hammer to induce interference. [Fig. 33A-33C] 1 illustrates an embodiment of a different lug shape for the anvil assembly. [Fig. 34A-34B]1 illustrates one embodiment of an anvil assembly having a shield that shields the hammer from sensor detection. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0012] FIG. 1 illustrates a communication system 100. The communication system 100 includes a power tool device 102 and an external device 108. Each power tool device 102 (e.g., a battery-powered impact driver 102a and a power tool battery pack 102b) and the external device 108 can wirelessly communicate while within communication range of each other. Each power tool device 102 can communicate power tool status, power tool operational statistics, power tool identification information, stored power tool usage information, power tool maintenance data, and the like. Thus, using the external device 108, a user can access stored power tool usage data or power tool maintenance data. This tool data allows a user to identify how the power tool device 102 has been used, whether maintenance is recommended or has been performed in the past, and identify malfunctioning components or other reasons for a particular performance problem. The external device 108 can also send data to the power tool device 102 for power tool configuration, firmware updates, or commands (e.g., turn on the work lights). The external device 108 also allows a user to set operating parameters, safety parameters, select tool modes, and the like for the power tool device 102 .
[0013] The external device 108 may be, for example, a smart phone (as shown), a laptop computer, a tablet computer, a personal digital assistant (PDA), or another electronic device capable of wirelessly communicating with the power tool apparatus 102 and providing a user interface. The external device 108 provides the user interface and allows the user to access and interact with tool information. The external device 108 can accept user input, such as determining operating parameters and enabling or disabling features. The user interface of the external device 108 provides an easy-to-use interface for the user to control and customize the operation of the power tool.
[0014] The external device 108 includes a communication interface that corresponds to a wireless communication interface or module of the power tool apparatus 102. The communication interface of the external device 108 may include a wireless communication controller (e.g., a Bluetooth module) or a similar component. The external device 108 thus allows a user to access data related to the power tool apparatus 102 and provides a user interface through which the user can interact with the controller of the power tool apparatus 102.
[0015] In addition, as shown in FIG. 1 , the external device 108 can also share information obtained from the power tool device 102 with a remote server 112 connected by a network 114. The remote server 112 may be used to store data obtained from the external device 108, to provide additional functions and services to the user, or a combination thereof. In one embodiment, storing the information on the remote server 112 allows the user to access the information from multiple different locations. In another embodiment, the remote server 112 may collect information from various users about their power tool devices and provide statistics or statistical measures to the users based on the information obtained from the different power tools. For example, the remote server 112 may provide statistics regarding the efficiency of the power tool device 102, typical usage of the power tool device 102, and other related characteristics and / or measures of the power tool device 102 obtained from experience. The network 114 may include various networking elements (routers, hubs, switches, mobile towers, wired connections, wireless connections, etc.) for connecting to, for example, the Internet, a cellular data network, a local area network (LAN), a wide area network (WAN), or a combination thereof. In some embodiments, the power tool device 102 may be configured to communicate directly with the server 112 through an additional wireless communication interface or over the same wireless communication interface that the power tool device 102 uses to communicate with the external device 108.
[0016] The power tool device 102 is configured to perform one or more specific tasks (e.g., drilling, cutting, fastening, pressing, lubricating, sanding, heating, grinding, bending, shaping, impacting, polishing, lighting, etc.) For example, an impact wrench is associated with the task of generating a rotational output (e.g., to drive a bit).
[0017] FIG. 2 illustrates an impact driver 104, which is an example of the power tool device 102. The impact driver 104 is representative of various types of power tools that may operate within the system 100. Thus, the description of the impact driver 104 in the system 100 is equally applicable to other types of power tools, such as other power tools with impact mechanisms (e.g., impact wrenches and impacting angle drivers) and other suitable power tools. As shown in FIG. 2, the impact driver 104 includes an upper body 202, a handle 204, a battery pack receiving portion 206, a mode pad 208, an output driver 210, a trigger 212, a work light 217, and a forward / reverse selector 219. The housing of the impact driver 104 (e.g., the body 202 and the handle 204) is constructed of a durable, lightweight plastic material. The driver 210 is constructed of metal (e.g., steel). The driver 210 of the impact driver 104 is a socket. However, other power tools may have different drivers 210 specifically designed for tasks associated with other power tools. The battery pack receiver 206 is configured to receive and couple a battery pack (e.g., 102b in FIG. 1) that provides power to the impact driver 104. The battery pack receiver 206 includes a connection structure that engages a mechanism that secures the battery pack and a terminal block that electrically connects the battery pack to the impact driver 104. The mode pad 208 allows a user to select a mode for the impact driver 104 and displays to the user the currently selected mode for the impact driver 104, as will be described in more detail below.
[0018] As shown in FIG. 3A, the impact driver 104 also includes a motor 214. The motor 214 actuates the drive 210, enabling the drive 210 to perform a particular task. A primary power source (e.g., a battery pack) 215 is coupled to the impact driver 104 and provides power to energize the motor 214. The motor 214 is energized based on the position of the trigger 212. When the trigger 212 is depressed, the motor 214 is energized, and when the trigger 212 is released, the motor 214 is de-energized. In the illustrated embodiment, the trigger 212 extends partially downwardly relative to the length of the handle 204, but in other embodiments, the trigger 212 may extend downwardly the entire length of the handle 204 or may be located elsewhere on the impact driver 104. The trigger 212 is movably coupled to the handle 204 such that the trigger 212 moves relative to the tool housing. The trigger 212 is coupled to a push rod that is engageable with a trigger switch 213 (see FIG. 3A). When the trigger 212 is depressed by a user, the trigger 212 moves in a first direction toward the handle 204. When the trigger 212 is released by the user, the trigger 212 is biased (e.g., by a spring) to move in a second direction away from the handle 204. When the trigger 212 is depressed by a user, a push rod activates the trigger switch 213, and when the trigger 212 is released by the user, the trigger switch 213 is deactivated. In other embodiments, the trigger 212 is coupled to an electrical trigger switch 213. In such embodiments, the trigger switch 213 may include, for example, a transistor. Additionally, in such electrical trigger switch embodiments, the trigger 212 may not include a push rod that activates a mechanical switch. Rather, the electrical trigger switch 213 may be activated by a position sensor (e.g., a Hall effect sensor) that relays information regarding the relative position of the trigger 212 with respect to, for example, the tool housing or the electrical trigger switch 213. The trigger switch 213 outputs a signal indicative of the position of the trigger 212. In some examples, the signal is binary, indicating whether the trigger 212 is either pressed or released.In other examples, the signal may more precisely indicate the position of the trigger 212. For example, the trigger switch 213 may output an analog signal that varies from 0 to 5 volts depending on how much the trigger 212 is depressed. For example, a 0V output indicates that the trigger 212 is released, a 1V output indicates that the trigger 212 is 20% depressed, a 2V output indicates that the trigger 212 is 40% depressed, a 3V output indicates that the trigger 212 is 60% depressed, a 4V output indicates that the trigger 212 is 80% depressed, and a 5V output indicates that the trigger 212 is 100% depressed. However, these are merely examples and alternative thresholds (and numbers of alternative thresholds) may be used to provide various gradients of depression accuracy. The signal output by the trigger switch 213 may be analog or digital.
[0019] 3A, the impact driver 104 also includes a switching network 216, a sensor 218, an indicator 220, a battery pack interface 222, a power input unit 224, a controller 226, a wireless communication controller 250, and a backup power source 252. The backup power source 252, in some embodiments, includes a coin cell battery (FIG. 4) or other similar replaceable compact power source. The battery pack interface 222 is coupled to the controller 226 and coupled to the battery pack 215. The battery pack interface 222 is configured to interface (e.g., mechanically, electrically, and communicatively connect) the impact driver 104 with the battery pack 215 and includes a combination of operative mechanical components (e.g., the battery pack receptacle 206) and electrical components. The battery pack interface 222 is coupled to the power input unit 224. The battery pack interface 222 transmits power received from the battery pack 215 to the power input unit 224. The power input unit 224 includes active and / or passive components (e.g., voltage step-down controllers, voltage converters, rectifiers, filters, etc.) for regulating or controlling the power received via the battery pack interface 222 to the wireless communication controller 250 and the controller 226.
[0020] The switching network 216 allows the controller 226 to control the operation of the motor 214. Generally, when the trigger 212 is depressed, as indicated by the output of the trigger switch 213, current is provided from the battery pack interface 222 through the switching network 216 to the motor 214. When the trigger 212 is not depressed, no current is provided from the battery pack interface 222 to the motor 214.
[0021] In response to the controller 226 receiving an actuation signal from the trigger switch 213, the controller 226 activates the switching network 216 to provide power to the motor 214. The switching network 216 controls the amount of current available to the motor 214, thereby controlling the speed and torque output of the motor 214. The switching network 216 may include a number of field effect transistors ("FETs"), bipolar transistors, or other types of electrical switches. For example, the switching network 216 may include a 6-FET bridge that receives a pulse width modulated ("PWM") signal from the controller 226 to drive the motor 214.
[0022] The sensors 218 are coupled to the controller 226 and communicate various signals indicative of various parameters of the impact driver 104 or the motor 214 to the controller 226. The sensors 218 include one or more Hall sensors 218a, one or more current sensors 218b, and one or more anvil position sensors 218c, among other sensors, such as one or more voltage sensors, one or more temperature sensors, and one or more torque sensors. Each Hall sensor 218a outputs motor feedback information to the controller 226, such as an indication (e.g., a pulse) when a magnet in the motor's rotor rotates across the face of the Hall sensor. Based on the motor feedback information from the Hall sensors 218a, the controller 226 can determine the rotor's position, speed, and acceleration. In response to the motor feedback information and a signal from the trigger switch 213, the controller 226 sends a control signal to control the switching network 216 to drive the motor 214. For example, by selectively enabling and disabling FETs in the switching network 216, power received from the battery pack interface 222 is selectively applied to the stator coils of the motor 214 to rotate its rotor. Motor feedback information is used by the controller 226 to ensure proper timing of control signals to the switching network 216 and, in some cases, to provide closed-loop feedback to control the speed of the motor 214 at a desired level.
[0023] The indicator 220 is also coupled to the controller 226 and receives control signals from the controller 226 to turn power on or off or otherwise communicate information based on different states of the impact driver 104. The indicator 220 includes, for example, one or more light emitting diodes ("LEDs") or a display screen. The indicator 220 may be configured to display a state of the impact driver 104 or information associated with the impact driver 104. For example, the indicator 220 may be configured to display a measured electrical characteristic of the impact driver 104, a state of the impact driver 104, a mode of the power tool (e.g., as discussed below), and the like. The impact driver 220 may also include elements that communicate information to a user through an audible or tactile output.
[0024] As discussed above, the controller 226 is electrically and / or communicatively connected to various modules or components of the impact driver 104. In some embodiments, the controller 226 comprises multiple electrical and electronic components that provide power, operational control, and protection to the controller 226 and / or the components and modules within the impact driver 104. For example, the controller 226 comprises, among other things, a processing unit 230 (e.g., a microprocessor, a microcontroller, an electronic processor, an electronic controller, or another suitable programmable device), a memory 232, an input unit 234, and an output unit 236. The processing unit 230 (herein, electronic processor 230) comprises, among other things, a control unit 240, an arithmetic logic unit ("ALU") 242, and a number of registers 244 (illustrated in FIG. 3A as a group of registers). In some embodiments, the controller 226 is implemented partially or fully on a semiconductor (e.g., a field programmable gate array ["FPGA"] semiconductor) chip, such as a chip developed through a register transfer level ("RTL") design process.
[0025] The memory 232 includes, for example, a program storage area and a data storage area. The program storage area and the data storage area may include a combination of different types of memory, such as read-only memory ("ROM"), random access memory ("RAM") (e.g., dynamic RAM ["DRAM"], synchronous DRAM ["SDRAM"], etc.), electrically erasable programmable read-only memory ("EEPROM"), flash memory, a hard disk, a secure digital ("SD") card, or other suitable magnetic, optical, physical, or electronic memory devices. The electronic processor 230 is coupled to the memory 232 and executes software instructions stored in the memory 232 (e.g., RAM 232 during execution), in the ROM 232 (e.g., typically persistently), or in another memory or another non-transitory computer-readable medium such as a disk). Software included in an implementation of the impact driver 104 may be stored in the memory 232 of the controller 226 (e.g., in a program storage area). Software includes, for example, firmware, one or more applications, program data, filters, rules, one or more program modules, and other executable instructions. The controller 226 is configured to retrieve and execute instructions from memory, among others, relating to the control processes and methods described herein. The controller 226 is also configured to store power tool information in the memory 232, including operational data, information identifying the type of tool, a unique identifier for the particular tool, and other information related to the operation or maintenance of the impact driver 104. Tool usage information, such as current levels, motor speeds, motor acceleration, motor direction, number of impacts, etc., may be captured or inferred from data output by the sensor 218. Such power tool information may then be accessed by a user using the external device 108. In other constructions, the controller 226 includes additional, fewer, or different components.
[0026] The wireless communication controller 250 is coupled to the controller 226. In the illustrated embodiment, the wireless communication controller 250 is located near the bottom of the impact driver 104 (see FIG. 2) to conserve space and ensure that the magnetic activity of the motor 214 does not affect wireless communication between the impact driver 104 and the external device 108. As a specific example, in some embodiments, the wireless communication controller 250 is located below the mode pad 208.
[0027] 3B, the wireless communication controller 250 includes a wireless transceiver and antenna 254, a memory 256, an electronic processor 258, and a real-time clock ("RTC") 260. The wireless transceiver and antenna 254 cooperate to send and receive wireless messages to the external device 108 and the electronic processor 258. The memory 256 can store instructions to be performed by the electronic processor 258 and / or may store data related to communications between the impact driver 104 and the external device 108, etc. The electronic processor 258 of the wireless communication controller 250 controls wireless communications between the impact driver 104 and the external device 108. For example, the electronic processor 258 associated with the wireless communication controller 250 buffers incoming and / or outgoing data, communicates with the controller 226, and determines communication protocols and / or settings to use in the wireless communications.
[0028] In the illustrated embodiment, the wireless communication controller 250 is a Bluetooth controller. The Bluetooth controller communicates with the external device 108 employing the Bluetooth protocol. Thus, in the illustrated embodiment, the external device 108 and the impact driver 104 are within communication range (i.e., nearby) of each other when exchanging data. In other embodiments, the wireless communication controller 250 communicates using other protocols (e.g., Wi-Fi, cellular protocols, proprietary protocols, etc.) over different types of wireless networks. For example, the wireless communication controller 250 may be configured to communicate via Wi-Fi over a WAN or LAN such as the Internet, or through a piconet (e.g., using infrared communication or near field communication ("NFC")). Communications via the wireless communication controller 250 may be encrypted to protect data exchanged between the impact driver 104 and the external device / network 108 from third parties.
[0029] The wireless communication controller 250 is configured to receive data from the power tool controller 226 and relay that information to the external device 108 via the transceiver and antenna 254. Similarly, the wireless communication controller 250 is configured to receive information (e.g., configuration and programming information) from the external device 108 via the transceiver and antenna 254 and relay that information to the power tool controller 226.
[0030] The RTC 260 increments and maintains time independent of other power tool components. The RTC 260 receives power from the battery pack 215 when the battery pack 215 is connected to the impact driver 104 and from the backup power source 252 when the battery pack 215 is not connected to the impact driver 104. Having the RTC 260 as an independently powered clock allows for time stamping of operational data (stored in memory 232 for later export) and security features whereby a lockout time can be set by the user and the tool will be locked out if the time on the RTC 260 exceeds the set lockout time.
[0031] The memory 232 stores various identification information for the impact driver 104, including a Unique Binary Identifier (UBID), an American Standard Code for Information Interchange (ASCII) serial number, an ASCII nickname, and a decimal catalog number. The UBID uniquely identifies the type of tool and provides a unique serial number for each impact driver 104. In some embodiments, additional or alternative techniques for uniquely identifying the impact driver 104 are used.
[0032] 4 shows a more detailed view of the mode pad 208. The mode pad 208 is on the exterior surface of the impact driver 104 and is a user interface that allows the impact driver 104 to be switched between different operating modes. The mode pad 208 includes a mode selection switch 290 and a mode indicator LED block 292 having mode indicators 294a-e, each of which includes one of LEDs 296a-e (see FIG. 3A) and an associated one of display symbols 298a-e (e.g., "1", "2", "3", "4", and a radio wave symbol). When an LED 296 is enabled, the associated display symbol 298 is illuminated. For example, when LED 296a is enabled, the "1" (representing display symbol 298a) is illuminated.
[0033] The impact driver 104 has five selectable modes (mode 1, mode 2, mode 3, mode 4, and adaptive mode), with each mode associated with a different one of mode indicators 294a-e. The mode selection switch 290 is a push button that cycles through the five selectable modes with each depression (e.g., mode 1, mode 2, mode 3, mode 4, adaptive mode, mode 1, mode 2, etc.). The adaptive mode is represented by a display symbol 298e (a radio wave symbol). In the adaptive mode, a user can configure the impact driver 104 via the external device 108, as described in more detail below. In other embodiments, the impact driver 104 has more or fewer modes, and the mode selection switch 290 can be a different type of switch, such as, for example, a slide switch, a rotary switch, etc.
[0034] 5, modes 1, 2, 3, and 4 are each associated with a mode profile configuration data block ("mode profile") 300a-d, respectively, stored in a (mode) profile bank 302 of memory 232. Each mode profile 300 includes configuration data that defines the operation of the tool 104 when actuated by a user (e.g., after depressing the trigger 212). For example, a particular mode profile 300 may specify the speed of the motor, when to stop the motor, the duration and intensity of the work lights 217, among other operating characteristics. The adaptive mode is associated with a temporary mode profile 300e, which is stored in memory 232. Also stored in memory 232 is tool operation data 304, which may include, for example, information regarding use of the impact driver 104 (e.g., obtained via sensor 218), information regarding maintenance of the impact driver 104, and power tool trigger event information (e.g., whether and when the trigger is depressed, and the amount of depression).
[0035] The external device 108 includes a memory 310 that stores core application software 312, tool mode profiles 314, temporary configuration data 316, tool interfaces 318, and tool data 320 (e.g., tool operation data) including a received tool identifier ("ID") 322 and received tool usage data 324. The external device 108 further includes an electronic processor 330, a touch screen display 332, and an external wireless communication controller 334. The electronic processor 330 and memory 310 may be part of a controller having components similar to the controller 226 of the impact driver 104. The touch screen display 332 enables the external device 108 to output visual data to a user and accept user touch input. Although not shown, the external device 108 may include additional user input devices (e.g., buttons, dials, toggle switches, and a microphone for voice control) and additional user outputs (e.g., a speaker and haptic feedback elements). Additionally, in some cases, the external device 108 has a display without touch screen input capabilities and accepts user input via other input devices such as buttons, dials, and toggle switches. The external device 108 wirelessly communicates with the wireless communication controller 250 via the external wireless communication controller 334, for example using Bluetooth® or Wi-Fi® protocols. The external wireless communication controller 334 further communicates with the server 112 via the network 114. The external wireless communication controller 334 includes at least one transceiver that enables wireless communication between the external device 108 and the wireless communication controller 250 of the power tool 104 or the server 112 via the network 114.In some cases, the external wireless communication controller 334 includes two separate wireless communication controllers, one for communicating with the wireless communication controller 250 (e.g., using Bluetooth® or Wi-Fi® communications) and one for communicating over the network 114 (e.g., using Wi-Fi® or cellular communications).
[0036] The server 112 comprises an electronic processor 340 that communicates with the external device 108 over the network 114 using a network interface 342. The communication links between the network interface 342, the network 114, and the external wireless communication controller 334 may include a variety of wired and wireless communication paths, a variety of network components, and a variety of communication protocols. The server 112 further comprises a memory 344 that includes a tool profile bank 346 and tool data 348.
[0037] Returning to the external device 108, the core application software 312 is executed by the electronic processor 330 to generate a graphical user interface (GUI) on the touch screen display 332 to allow a user to interact with the impact driver 104 and the server 112. In some embodiments, a user can use the external device 108 to access a repository of software applications (e.g., an “app store” or “app marketplace”) to identify and download the core application software 312, which may be referred to as an “app”. In some embodiments, the tool mode profile 314, the tool interface 318, or both may be bundled with the core application software 312, such that, for example, downloading an “app” includes downloading the core application software 312, the tool mode profile 314, and the tool interface 318. In some embodiments, the app is obtained using other techniques, such as downloading from a website using a web browser on the external device 108. As will become apparent from the following description, in at least some embodiments, the app on the external device 108 provides a user with a single entry point to control, access, and / or interact with a number of different types of tools. This approach is in contrast to, for example, having a unique app for each type of tool, or for small groups of tools of related types.
[0038] FIG. 6 illustrates a GUI "Nearby Devices" screen 350 on the touchscreen display 332. The "Nearby Devices" screen 350 is used to identify and communicatively pair power tools 102 (e.g., power tools in a particular location) that are within wireless communication range of the external device 108. For example, in response to a user selecting a "scan" input 352, the external wireless communication controller 334 scans the wireless radio communication spectrum used by the power tools 102 to identify any power tools 102 that are within wireless communication range and that are advertising (e.g., broadcasting their UBID and other limited information). The identified advertising power tools 102 are then listed in the "Nearby Devices" screen 350. As shown in FIG. 6, in response to the scan, three advertising power tools 102 (advertising tools 354a-c) are listed in an identified tools list 356. In some embodiments, if the power tool 102 is already communicatively paired with a different external device, the power tool 102 is not advertising and therefore is not listed in the identified tool list 356 even if the power tool 102 is nearby (within wireless communication range) of the external device 108. The external device 108 is operable to pair with a tool 354 that is in a connectable state. The external device 108 provides a visual status indication 358 in the identified tool list 356 as to whether the advertising tool 354 is in a connectable or advertising state. For example, the tool visual status indication 358 may be displayed in one color when the tool is in a connectable state and another color when the tool is not in a connectable state. The UBID received from the tools 354 is used by the external device 108 to identify the tool type of each tool 354, and each visual status indication 358 may include an icon or thumbnail image associated with the type of tool (e.g., a thumbnail image of an impact driver overlaid with a Wi-Fi icon, as shown for advertising tool 354a).
[0039] From the "nearby devices" screen 350, the user can select one of the tools 354 from the identified tools list 356 and communicatively pair with the selected tool 354. Each type of power tool 354 with which the external device 108 can communicate includes an associated tool graphical user interface (tool interface) stored in the tool interface 318. Once communicatively paired, the core application software 312 accesses the tool interface 318 (e.g., using the UBID) to obtain the applicable tool interface for the type of tool being paired. The touchscreen display 332 then presents the applicable tool interface. The tool interface includes a series of screens that allow the user to obtain tool operation data, configure the tool, or both. Although some screens and options of the tool interface are common to multiple tool interfaces of different tool types, in general, each tool interface includes screens and options that are specific to the associated tool type. In the impact driver 104, there is limited space for user input buttons, triggers, switches, and dials. However, the external device 108 and touch screen display 332 provide the user with the ability to map additional functionality and configurations to the impact driver 104 to modify the operation of the impact driver 104. Thus, in effect, the external device 108 provides an enhanced user interface for the impact driver 104, providing for more advanced customization and configuration of the impact driver 104 than would otherwise be possible or desirable through a physical user interface component on the tool. Examples are provided below that further illustrate aspects and benefits of the enhanced user interface.
[0040] 7 illustrates a tool interface home screen 370 when the power tool 104 is an impact driver. The home screen 370 includes an icon 371 for the particular paired power tool (e.g., impact driver 104), which may be the same as the thumbnail or icon 358 shown in the list 356 without the Wi-Fi icon overlaying it. The home screen 370 also includes a disconnect input 372 that allows the user to break the communicative pairing between the external device 108 and the paired impact driver 104. The home screen 370 further includes four selectable options: tool control 374, manage profiles 376, identify tool 378, and factory reset 379. Selecting tool identification 378 sends a command to the paired impact driver 104 requesting the paired power tool 104 to provide a user perceptible indication, such as flashing the work light 217, flashing the indicator 220 light, LED 296, sounding an audible beep using the indicator 220 speaker, and / or vibrating the tool using the motor 214. This allows the user to identify the particular tool in communication with the external device 108.
[0041] Selection of the tool control 374 causes a control screen of the tool interface to be displayed, such as the control screen 380 of FIGS. 8A and 8B, including a top portion 380a and a bottom portion 380b. Generally, the control screen that is displayed depends on the particular type of profile. In other words, generally, each type of mode profile has a particular control screen. Each control screen has particular customizable parameters that, when viewed collectively, form the mode profile. The particular control screen that is displayed on the external device 108, after selection of the tool control 374, is the currently selected mode profile of the impact driver 104 (e.g., one of the mode profiles 300a-e). To this end, after selection of the tool control option 374, the external device 108 requests and receives from the impact driver 104 the currently selected mode profile of the mode profiles 300a-e. The external device 108 recognizes the mode profile type of the selected mode profile of the mode profiles 300a-e, generates the appropriate control screen for that mode profile type, and inputs various parameter settings according to the settings from the received mode profile 300.
[0042] When the impact driver 104 operates in adaptive mode, the currently selected mode profile displayed on the control screen 380 of the external device 108 is stored on the external device 108 as temporary mode profile 300e. In addition, when the impact driver 104 is in adaptive mode, the impact driver 104 operates according to the temporary mode profile 300e. The source of the profile data in the temporary mode profile 300e (and what is displayed on the control screen 380) changes. After initially entering adaptive mode via the mode selection switch 290, the mode profile 300a (associated with mode 1) is copied to the temporary mode profile 300e of the impact driver 104. Thus, after the user causes the impact driver 104 to enter adaptive mode using the mode selection switch 290, the impact driver 104 operates as if mode 1 (mode profile 300a) is currently selected the first time the trigger is pulled. In addition, when the control screen 380 displays a mode profile that has been saved as a temporary mode profile 300e, information related to the mode profile 300a that has just been copied to the temporary mode profile 300e (mode profile type and mode profile parameters) is shown on the control screen 380.
[0043] In some embodiments, when the adaptive mode is first entered and provided to the external device 108 (as temporary mode profile 300e) for input to the control screen 380, another mode profile 300 (e.g., 300b-d) is copied to the temporary mode profile 300e. In yet other embodiments, the control screen 380 displayed upon selection of the tool control 374 is a default control screen with default profile data for a particular type of tool, and the external device 108 does not initially obtain profile data from the impact driver 104. In these cases, the default mode profile is sent to the impact driver 104 and saved as the temporary mode profile 300e.
[0044] Further, assuming the impact driver 104 is in an adaptive mode, after the external device 108 initially loads a control screen (e.g., control screen 380) after selection of the tool control 374, the user may select a source of a new profile for the temporary file. For example, after selecting one of the mode profile buttons 400 (e.g., mode 1, mode 2, mode 3, or mode 4), the associated mode profile 300a-d is saved as a temporary mode profile 300e and sent to the external device 108 and entered into the control screen (according to the mode profile type and mode profile parameters). In addition, assuming the impact driver 104 is in an adaptive mode, the user may select a mode profile type using the setup selector 401. After selection of the setup selector 401, a list of available profiles (profile list) 402 for the particular type of paired impact driver 104 is presented (see, e.g., FIG. 9). The profile list 402 includes profiles 404 obtained from the tool profile 314 and / or from the tool profile bank 346 via the network 114. These enumerated profiles 404 may include default profiles (Custom Drive Control Profile 404a and Concrete Anchor Profile 404b) and custom profiles previously created and saved by the user (e.g., Drywall Screw Profile 404c and Deck Mode 404d), as described in more detail below. After selection of one of the tool profiles 404, the selected profile 404 and its default parameters are shown on the control screen 380 of the external device 108, and the profile 404 as currently set is sent to the impact driver 104 and saved as a temporary mode profile 300e. Thus, after another trigger pull, the impact driver 104 operates according to the selected one of the tool profiles 404.
[0045] When the adaptive mode is currently selected on the impact driver 104, as indicated by the indicator symbol 298e (FIG. 4) being illuminated, a user can configure the impact driver 104 (e.g., change some of the parameters of the temporary mode profile 300e) using the control screen 380. When the impact driver 104 is in one of the other four tool modes, as indicated by one of the indicator symbols 298a-d, the impact driver 104 is not currently configurable via the control screen 380. For example, FIG. 10 illustrates a control screen 381 when the power tool (e.g., the impact driver 104) is not currently in the adaptive mode. Here, the control screen 381 is similar to the control screen 380, but includes a message 382 indicating that the power tool (e.g., the impact driver 104) is not in the adaptive mode, and the radio symbol 384 is shown grayed out as a further indication that the power tool (e.g., the impact driver 104) is not in the adaptive mode. Thus, when the impact driver 104 is not in adaptive mode and the user selects one of the mode profile buttons 400, the impact driver 104 provides the mode profile 300 of the associated mode selected by the user, but does not overwrite the temporary mode profile 300e with the selected mode profile. Thus, the mode profile 300 of the impact driver 104 is not updated when the impact driver 104 is not in adaptive mode.
[0046] 8A and 8B, when the impact driver 104 is in adaptive mode and the user selects the tool control 374 on the home screen, the user can set the profile data for the impact driver 104 using the control screen of the tool interface. For example, via control screen 380, the user can set the current profile data for the temporary mode profile 300e of the impact driver 104. As shown, the user can adjust the starting speed via speed text box 390 or speed slider 391, adjust the finishing speed via speed text box 392 or speed slider 393, vary the rotation or impact required to slow down via slider 394, adjust the work light duration using slider 395a, work light text box 395b, and "always on" toggle 395c, and adjust the work light intensity via work light brightness option 396.
[0047] In some embodiments, the external device 108 and the impact driver 104 allow live updates of the temporary mode profile 300e. When performing a live update, the temporary mode profile 300e of the impact driver 104 is updated as changes to the parameters are made on the control screen 380 without requiring a subsequent save step or actuation by the user on the GUI of the external device 108 or on the power tool. In other words, when performing a live update, the external device 108 updates the temporary mode profile 300e on the impact driver 104 in response to receiving a user input that changes one of the parameters, rather than in response to a user input that saves the temporary mode profile 300e. For example, with reference to FIG. 8A, the start-up speed of the impact driver 104 is set to 2900 revolutions per minute (RPM). When performing a live update, if the user drags their finger across the speed slider 391 to slide it to the left and then releases their finger from the touch screen display 332 of the external device 108 after the new speed is reached, the external device 108 will send the newly selected starting speed to the impact driver 104 to update the temporary mode profile 300e when the user's finger is released from the screen without requiring any further button presses or other actuations by the user. Live updates are also applicable to other parameters on the control screen 380, such as the rotation or impact required to reduce speed, and task light parameters. Live updates allow for rapid customization of the power tool (e.g., the impact driver 104) so that the user can quickly test and adjust various profile parameters with fewer key presses. In contrast to live updates, in some embodiments, after sliding the speed slider 391 to a new speed, the user must press a save button (e.g., save button 408 in FIG. 10) for the updates to the starting speed parameters to take effect on the temporary mode profile 300e.
[0048] The user can also save the mode profile set via the control screen (e.g., control screen 380) to the impact driver 104. More specifically, the user can overwrite one of the mode profiles 300a-d in the profile bank 302 with the mode profile as specified on the control screen. To save a mode profile created by the user via the control screen 308, the user selects the save button 408. As shown in FIG. 11, pressing the save button causes the core application software to generate a save prompt 410 that requests the user to name the created mode profile and also requests the user to specify which of the mode profiles 300a-d to overwrite with the created mode profile by selecting one of the mode labels 414. In response to the user input (selecting one of the mode labels 414 and selecting the save button 412), the external device 108 transmits the created mode profile to the impact driver 104. The electronic processor 230 receives the created mode profile and overwrites the mode profile 300 in the profile bank 302 that was specified by the user to overwrite with the created mode profile. 11, the user names the generated mode profile “Deck Mode” and specifies that the electronic processor 230 overwrites mode profile 300a (associated with mode “1”) with the generated “Deck Mode” mode profile. In some embodiments, the user can choose to overwrite more than one mode profile 300a-d with the generated mode profile by selecting multiple mode labels 414 before selecting the Save button 412. In some embodiments, the user can choose not to overwrite any of mode profiles 300a-e with the generated mode profile by not selecting any of the mode labels 414 before selecting the Save button 412.In such an embodiment, the generated mode profile is stored in the profile bank 346 on the server 112 rather than on the impact driver 104. Overwriting one profile (the old profile) with another profile (the new profile) may include erasing the old profile and replacing the old profile in memory with the new profile, for example by storing the new profile in the location in memory where the old profile was stored, or may include storing the new profile in another location in memory and updating a profile pointer to point to the address in memory that has the new profile instead of the address in memory that has the old profile.
[0049] As mentioned above, in some embodiments, the external device 108 cannot overwrite data in the profile 300 unless the impact driver 104 is in the adaptive mode (see FIG. 10). This aspect prevents potentially malicious individuals other than the user currently operating the impact driver 104 from adjusting the tool parameters of the impact driver 104 unless the user places the impact driver 104 in the adaptive mode. Thus, the user of the impact driver 104 can prevent others from adjusting the parameters by operating the impact driver 104 in one of the other four modes. In some embodiments, to implement this aspect, a hardware or firmware-based interlock prevents the electronic processor 230 from writing to the profile bank 302 unless the impact driver 104 is in the adaptive mode. Additionally, when the impact driver 104 is operating, the hardware or firmware-based interlock prevents the electronic processor 230 from writing to the profile bank 302. The electronic processor 230 may detect that the impact driver 104 is operating based on the depression of the trigger 212 or an output from a Hall sensor indicating that the motor is rotating. Thus, even when the impact driver 104 is in adaptive mode, if the impact driver 104 is currently operating, the electronic processor 230 does not update or write to the profile bank 302, even when the impact driver 104 is in adaptive mode and the external device 108 communicates a generated profile to the impact driver 104 (e.g., in response to a user selecting the save button 408).
[0050] Additionally, in some embodiments, the electronic processor 230 outputs a signal to the external device 108 via the wireless communication controller 250 indicating whether the impact driver 104 is currently running. The external device 108 then provides an indication to the user via at least one of the wireless symbol 384 changing color (e.g., to red) or flashing and / or displaying a message when the impact driver 104 is currently running. Additionally, if the external device 108 receives an indication that the impact driver 104 is currently running, the ability to update parameters via the control screen is prevented, similar to the control screen 381 of FIG. 10.
[0051] Returning to FIG. 7, by selecting reset to factory settings 379 on the home screen 370, the external device 108 retrieves the default mode profile from the tool mode profile 314 or from the tool profile bank 346 on the server 112 and provides the default profile to the impact driver 104, which then overwrites the profile bank 302 with the default mode profile.
[0052] The home screen 370 may have a similar look and feel for all, many, or some of the tool interfaces 318, although the icons 371 may be customized for a particular tool interface based on the particular power tool with which the external device 108 is paired. Additionally, the options listed under the icons may add a "Get Data" option, which allows the user to select and retrieve operational data from the tool for display on the external device 108 and / or send to the server 112 for storage as part of the tool data 348. Additionally, if a particular tool is not intended to be configured by the external device 108, the tool controls 374 and manage profiles 376 options may not be included on the home screen 370.
[0053] In some embodiments, the impact driver 104 is provided with an adaptive mode switch that is separate from the mode selection switch 290. For example, the LED 296e (FIG. 3A) may be a combination LED-push button switch, whereby after a first press of the combination LED-push button switch, the impact driver 104 enters the adaptive mode, and after a second press of the combination LED-push button switch, the impact driver 104 returns to the mode (e.g., mode 1) the impact driver 104 was in before the first press. In this case, the mode selection switch 290 may cycle through modes 1-4, but not the adaptive mode. Additionally, a specific combination of pulling the trigger and / or placing the forward / reverse selector 219 in a specific position (e.g., neutral position) can cause the impact driver 104 to enter and exit the adaptive mode.
[0054] Returning to the concept of a mode profile (e.g., profile 300), the mode profile 300 includes one or more parameters. For example, returning to Figures 8A and 8B, the mode profile shown is a concrete anchor profile and has the following parameters: starting speed, finishing speed, rotation or impact required to slow down, and several task light parameters. The specific parameters available for customization on the control screen of the external device 108 vary based on the mode profile type.
[0055] The control screen of the tool interface 318 provides limits on the values that a user can enter for a particular parameter. For example, in FIG. 8A, the start-up speed cannot be set above a first predefined threshold or below a second predefined threshold (e.g., cannot be set below a maximum threshold of 2900 RPM or below a minimum threshold of 360 RPM). The impact driver 104 further includes a limit check module, for example, in firmware stored in the memory 232 and executed by the electronic processor 230. When receiving a new profile from the external device 108 for storage in the profile bank 302, the limit check module verifies that each parameter of each function is within the maximum and minimum limit (or threshold range) or is otherwise a valid value for the particular parameter. For example, the limit check module verifies that the start-up speed set for the concrete anchor profile is within the range between the first and second predefined thresholds (e.g., 360 RPM to 2900 RPM). In some cases, the limit checking module verifies that parameter values of features in the power tool's current profile are within acceptable limits for each trigger pull. To perform limit checking, the firmware may include a list of parameters and applicable maximum and minimum thresholds (or limits) for each feature, stored, for example, in a table, and the electronic processor 230 is operable to perform a comparison with the table data to determine whether the parameter values are within acceptable limits. The limit checking module provides an additional layer of security that protects against maliciously created or corrupted profiles, features, and parameter values.
[0056] After the limit check module determines that the parameter value is outside the acceptable range, the controller 226 is operable to output a warning message to the external device 108 indicating the error (which may be displayed in text on the touch screen display 332), drive the indicator 220, drive one or more of the LEDs 296a-e, vibrate the motor, or any combination thereof.
[0057] Some control screens of the tool interface 318 are provided with a parameter support block. The parameter support block includes work factor inputs that allow a user to specify details about the workpiece on which the power tool is to operate (e.g., material type, thickness, and / or hardness), details about the fastener driven by the power tool (e.g., material type, screw length, screw diameter, screw type, and / or screw head type), and / or details about the output unit of the power tool (e.g., saw blade type, number of saw blade teeth, drill bit type, and / or drill bit length). For example, the concrete anchor profile control screen 380 includes a parameter support block 805, as shown in Figures 8A and 8B. The parameter support block 805 includes work factor inputs that allow a user to specify the type of anchor (e.g., wedge or drop-in), the length of the anchor, the diameter of the anchor, and the strength of the concrete (e.g., pounds per square inch (PSI)). For example, by selecting the parameter assistance block 805, a parameter assistance screen is generated on which the user can specify each of the work factor inputs by cycling through the values using the touch screen display 332. After the work factor inputs are completed, the external device 108 adjusts the parameters of the profile. For example, in FIGS. 8A and 8B, the start speed parameter, the finish speed parameter, and the rotation (or impact, in various embodiments) values required to reduce the speed parameter are adjusted by the external device 108 based on the work factor inputs in the parameter assistance block 805. If desired, the user can further adjust some or all of the parameters (e.g., using sliders on the GUI shown in FIGS. 8A and 8B). Different parameter assistance blocks may be provided for different profile types, with each parameter assistance block including work factor inputs appropriate for the particular profile type. Additionally, one or more limit values (or thresholds) of the parameters on the control screen 380 may be adjusted by the external device 108 based on the work factor inputs in the parameter assistance block 805.For example, the maximum speed selectable by the user for the start speed parameter may be adjusted based on the concrete strength input in parameter assistance block 805.
[0058] As shown in FIG. 8A, the parameters of the concrete anchor profile include two user adjustable parameters of the same parameter type (motor speed) that are applicable at different stages (or zones) of a single tool operation (fastening). For example, in the concrete anchor profile, the control screen 380 is operable to accept a user selection specifying a starting motor speed during the start and drive stages of the fastening operation and a finishing speed during the final / finishing stage of the fastening operation. The controller 226 determines when the different stages of the fastening operation occur and when to transition between the different stages, as described in more detail below. In some embodiments, in the various stages of the concrete anchor profile, the controller 226 drives the motor 214 at a user selected speed, independent of the amount of depression of the trigger 212, as long as the trigger 212 is at least partially depressed. In other words, according to various embodiments, the speed of the motor 214 does not change based on the amount of depression of the trigger 212. In other embodiments, the user selected speed in the concrete anchor profile is treated as a maximum speed value. Thus, in these embodiments, the speed of the motor 214 varies based on how much the trigger 212 is depressed, but the controller 226 ensures that the motor 214 does not exceed the user selected speed for the various stages.
[0059] The concrete anchor profile may be implemented in the impact driver 104 for use in masonry applications, such as when using the impact driver 104 to drive anchors into concrete. Using the concrete anchor profile may improve repeatability between concrete anchors and reduce anchor failure due to over-torque or over-driving (e.g., by detecting when the anchor is in the pour joint). Unlike some other driving applications, when driving into concrete, the impact driver 104 may begin impacting almost immediately. Thus, whether the anchor is in the pour joint cannot be determined solely by detecting when the impact driver 104 begins impacting (i.e., because the impact driver 104 may impact throughout the entire operation). The concrete anchor profile allows the controller 226 to detect when the anchor is in the pour joint and, in response, reduce the motor speed to a finishing speed.
[0060] In particular, when operating with a concrete anchor profile, the controller 226 may initially control the motor 214 to operate at a start-up speed set by the user. The controller 226 then monitors the characteristics of the motor 214 rotation to determine whether an impact application is occurring with the impact driver 104, as described in more detail below. After the particular motor rotation characteristic is detected, the controller 226 controls the motor 214 to operate at a lower speed (i.e., a finishing speed). In some embodiments, the external device 108 limits the finishing speed to be less than the start-up speed. For example, if the start-up speed is set to 2000 RPM on the control screen 380a, the external device 108 may prevent the finishing speed from being set to a value equal to or greater than 2000 RPM.
[0061] The controller 226 adjusts the speed of the motor 214 based on an angle detection method that calculates an estimated position of the output driver 210. For example, the controller 226 detects that an impact has been applied to the impact driver 104 based on, for example, a change in acceleration, an instantaneous current flow or change in current, impact sound using a microphone, or impact vibration detection using an accelerometer. The controller 226 may use an impact counter (e.g., implemented by execution of software on the memory 232) that the controller 226 increments each time an impact is detected. In some embodiments, the controller 226 monitors the rotational position of the shaft of the motor 214 using one or more of the Hall sensors 218a, including the rotational position of the shaft when each impact occurs. In some embodiments, the controller 226 monitors the rotational position of the drive 210 using an anvil rotation sensor 218c.
[0062] 12A and 12B show an example of an impact mechanism of the impact driver 104, an impact mechanism 1200. Based on the design of the impact mechanism 1200 of the impact driver 104, the motor 214 rotates at least a predetermined number of degrees between impacts (i.e., 180 degrees for the impact mechanism 1200). The impact mechanism 1200 includes a hammer 1205 having an outwardly extending lug 1207 and an anvil 1210 having an outwardly extending lug 1215. The anvil 1210 is coupled to an output drive 210. In some embodiments, the output drive 210 includes a gearbox output for interfacing with a gearbox that drives another output shaft. Although FIGS. 12A and 12B show a helical bevel gearbox output, other types of gearbox outputs may be used, such as straight bevel, spiral bevel, etc. In some embodiments, the gearbox output is omitted and the output drive 210 interfaces directly with the workpiece. For example, the output driver 210 may be a socket, chuck, or other suitable type of workpiece interface as shown in FIG. 2. In operation, an impact occurs when the anvil 1210 encounters a certain amount of resistance, such as when driving a fastener into a workpiece. If this resistance occurs, the hammer 1205 continues to rotate. A spring coupled to the rear side of the hammer 1205 causes the hammer 1205 to retract axially and disengage from the anvil 1210. Once disengaged, the hammer 1205 advances both axially and rotationally to reengage (i.e., impact) the anvil 1210. When the impact mechanism 1200 is operated, the hammer lugs 1207 impact the anvil lugs 1215 every 180 degrees. Thus, when the impact driver 104 impacts, the hammer 1205 rotates 180 degrees without the anvil 1210, impacts the anvil 1210, and then rotates some amount with the anvil 1210 before repeating the process.For more information regarding the function of the impact mechanism 1200, see, for example, the impact mechanism discussed in U.S. Patent Application Serial No. 14 / 210,812, filed March 14, 2014, which is incorporated by reference in its entirety. Although two hammer lugs 1207 are shown impacting the anvil lugs 1215 every 180 degrees, according to various embodiments, more than two hammer lugs 1207 can be used, which will change the separation angle (e.g., three hammer lugs impacting the anvil lugs 1215 every 120 degrees).
[0063] The controller 226 can determine how much the hammer 1205 and anvil 1210 have rotated together by monitoring the angle of rotation of the shaft of the motor 214 between impacts using one or more of the Hall sensors 218a, or by monitoring the anvil position using the anvil position sensor 218c. For example, if the impact driver 104 is driving an anchor into a softer driving joint, the hammer 1205 may rotate 225 degrees between impacts. In this 225 degree example, a 45 degree rotation includes the hammer 1205 and anvil 1210 engaging each other, and a 180 degree rotation includes the hammer 1205 alone rotating before the hammer lug 1207 again impacts the anvil 1210. FIGS. 13-16 illustrate this exemplary rotation of the hammer 1205 and anvil 1210 at different stages of operation.
[0064] 13A and 13B respectively show the rotational positions of the anvil 1210 and the hammer 1205 at a first time (e.g., immediately after the hammer lugs 1207A, 1207B disengage from the lugs 1215 of the anvil 1210 (i.e., after impact application and engagement rotation by both the hammer 1205 and the anvil 1210 have occurred)). FIG. 13A shows a first rotational anvil position of the anvil 1210 at the first time. FIG. 13B shows a first rotational hammer position of the hammer 1205 at the first time (e.g., when the hammer lugs 1207A, 1207B begin to retract axially from the anvil 1210). After the hammer 1205 retracts axially and disengages from the anvil 1210, the hammer 1205 continues to rotate (as indicated by the arrow in FIG. 13B) while the anvil 1210 remains in the first rotational anvil position. 14A and 14B respectively show the rotational positions of the anvil 1210 and hammer 1205 at a second time (e.g., the moment of first impact). As shown in FIG. 14A, the anvil 1210 remains in the first rotational anvil position at the second time. As shown in FIG. 14B, the hammer 1205 has rotated 180 degrees to a second rotational hammer position (as indicated by the arrow in FIG. 14B and the change in position of the hammer lugs 1207A and 1207B from FIG. 13B to FIG. 14B).
[0065] Upon impact between the hammer lugs 1207A and 1207B and the anvil lug 1215, the hammer 1205 and anvil 1210 rotate together in the same rotational direction (as indicated by the arrows in FIGS. 15A and 15B), which generates a torque that is provided to the output driver 210 to drive the anchor into concrete, for example. FIGS. 15A and 15B respectively show the rotational positions of the anvil 1210 and hammer 1205 at a third time point (e.g., after the hammer 1205 has retracted axially and disengaged again from the anvil 1210). As an example, in FIGS. 15A and 15B, at the third time point, the hammer 1205 is in a third rotary hammer position and the anvil 1210 is in a second rotary anvil position, approximately 45 degrees away from the first rotary anvil position, as indicated by the drive angle 1505. Drive angle 1505 indicates the number of degrees that the anvil 1210 rotates between events (eg, between periods of no movement or between impacts), which corresponds to the number of degrees that the output driver 210 rotates between events.
[0066] As described above, after the hammer 1205 disengages from the anvil 1210, the hammer 1205 continues to rotate (as indicated by the arrow in FIG. 16B) while the anvil 1210 remains in the same rotational position. FIGS. 16A and 16B respectively show the rotational positions of the anvil 1210 and the hammer 1205 at a fourth time point (e.g., when the second impact moment occurs). As shown in FIG. 16A, the anvil 1210 remains in the second rotational anvil position at the fourth time point. As shown in FIG. 16B, the hammer 1205 has rotated 180 degrees from the third rotational hammer position to the fourth rotational hammer position. Relative to FIG. 14B (i.e., at the first time point (e.g., when the first impact moment occurs)), the hammer 1205 has rotated 225 degrees (i.e., 45 degrees engaged with the anvil 1210 and 180 degrees disengaged from the anvil 1210 after the previous impact). Although specific degrees of rotation are used for illustrative purposes above, it should be understood that the specific degrees of rotation may vary.
[0067] As discussed above, the controller 226 may monitor when impacts occur and may monitor the position of the shaft of the motor 214. Using this information, the controller 226 can determine the drive angle 1505 through which the output drive 210 has traveled (i.e., the number of degrees through which the output drive 210 has rotated). For example, the controller 226 may detect when each impact occurs and record the rotational position of the shaft. The controller 226 can then determine the number of degrees through which the shaft has traveled between impacts. The controller 226 can calculate the drive angle 1505 through which the output drive 210 has traveled by subtracting 180 degrees from the number of degrees through which the shaft has traveled.
[0068] The calculated drive angle 1505 thus indicates the characteristics of the joint into which the anchor is being driven and may be used to control the motor 214. For example, the smaller the drive angle 1505, the harder the joint (i.e., a harder joint will rotate the anchor less than a softer joint), and vice versa. Thus, a small drive angle (e.g., less than 10 degrees) may indicate that the anchor is seated and no longer needs to be driven into the concrete. Thus, if the drive angle 1505 is below a predetermined angle threshold (e.g., 10 degrees) for more than a predetermined number of impacts, the controller 226 may control the motor 214 to operate at a slower speed or may turn the motor 214 off.
[0069] As previously described and shown in FIGS. 8A and 8B, in the GUI control screen 380, the concrete anchor profile includes a parameter assistance block 805 for accepting one or more of the anchor type (e.g., wedge or drop-in), anchor length, anchor diameter, and concrete strength (e.g., pounds per square inch (PSI)) from the user. The external device 108 adjusts the parameters of the concrete anchor profile (e.g., start-up speed, finish speed, number of revolutions or impacts required to slow down) in response to accepting the user input in the parameter assistance block 805. The external device 108 may adjust the parameters using a look-up table that includes parameter values corresponding to the user input in the parameter assistance block 805. If necessary, the user can further adjust each parameter as previously described (e.g., using sliders on the GUI shown in FIGS. 8A and 8B). In addition, the user can adjust the parameters of the work lights in the control screen 380b as previously described.
[0070] In some embodiments, the maximum user-selectable starting speed on the control screen 380 of FIG. 8A (e.g., 2900 RPM) is determined based on the ability of the controller 226 to detect an impact. For example, at high speeds, the controller 226 may not be able to detect that an impact is occurring because the change in motor acceleration caused by the impact is not appreciably large. Thus, the maximum user-selectable starting speed may be set low enough that the controller 226 can still detect an impact when the user selects the maximum starting speed displayed on the control screen 380.
[0071] Further, in various embodiments, the finishing speed is not user adjustable. Rather, the finishing speed is set by the external device 108 based on the work factor input in the parameter assistance block 805. In addition, the external device 108 may determine a drive angle threshold parameter based on the user input in the parameter assistance block 805. If the drive angle is less than the drive angle threshold, the controller 226 may begin counting impacts, as described in more detail below. The impact driver 104 receives a concrete anchor profile including the specified parameters, for example, in response to a user save operation on the external device 108 as described above.
[0072] FIG. 17 illustrates a flow chart of a method 1700 of implementing a concrete anchor profile on an impact driver 104. In block 1702, the wireless communication controller 250 receives parameters of the concrete anchor profile from the external device 108. For example, the parameters are received as part of a concrete anchor profile configured and provided as previously described herein with respect to, for example, FIG. 8A and FIG. 8B. In block 1705, the controller 226 determines that the trigger 212 is depressed and starts the motor 214 as previously described herein. In block 1710, the controller 226 sets the motor speed to a starting speed (i.e., a first speed) (or sets the motor speed depending on how much the trigger 212 is depressed with the maximum speed set as the starting speed as previously described herein). In block 1715, the controller 226 monitors motor characteristics to determine whether the impact driver 104 is impacting, as previously described herein. If the impact driver 104 is not impacting, the method 1700 remains at block 1715 and the controller 226 continues to monitor the motor characteristics to determine if the impact driver 104 is impacting. That is, the method 1700 may loop at block 1715 until the impact tool is impacting. If the controller 226 determines that the impact driver 104 is impacting, then at block 1720, the controller 226 calculates the drive angle 1505 that the output drive 210 will undergo as described earlier herein (e.g., by monitoring the rotational position of the shaft each time an impact is detected). For example, the controller 226 may calculate the drive angle 1505 by determining a first rotational motor shaft position of the motor shaft at a first impact between the hammer 1205 and the anvil 1210 (e.g., see the second rotational hammer position of the hammer 1205 in FIG. 14B ) and determining a second rotational motor shaft position of the motor shaft at a second impact between the hammer 1205 and the anvil 1210 (e.g., see the fourth rotational hammer position of the hammer 1205 in FIG. 16B ).The controller 226 may then determine a drive angle that the output drive has undergone based on the first rotational motor shaft position and the second rotational motor shaft position of the motor shaft. For example, the controller 226 may determine the difference between the second rotational motor shaft position and the first rotational motor shaft position and subtract a predetermined angle. The predetermined angle may indicate an amount of rotation that the hammer 1205 undergoes during a period of time (e.g., between impacts or between disengaging from the anvil 1210 and impacting the anvil 1210). For example, with reference to the impact mechanism 1200 shown in FIGS. 12A and 12B and described with respect to FIGS. 13A-16B, the predetermined angle may be 180 degrees. However, the amount of rotation that is subtracted between disengaging from the anvil and impacting the anvil (and thus the predetermined angle) will vary depending on the configuration of the impact mechanism, such as the number and location of the hammer and anvil lugs of a given impact mechanism. For example, if the hammer has four lugs, each 90 degrees apart, instead of two lugs 180 degrees apart, and operates with the anvil 1210, the hammer will undergo a 90 degree rotation between disengaging from the anvil and impacting the anvil, rather than a 180 degree rotation. In this example, the predetermined angle is 90 degrees. Various numbers of lugs can be used on the hammer and anvil, with two and four lugs on the hammer and two lugs on the anvil being used merely as examples.
[0073] At block 1725, the controller 226 determines whether the drive angle 1505 is less than the drive angle threshold. If the drive angle 1505 is less than the drive angle threshold, then at block 1730, the controller 226 increments an impact counter (e.g., implemented by the controller 226 executing software stored in the memory 232). At block 1735, the controller 226 determines whether the impact counter is equal to a number of impacts (the "impact counter threshold") set to indicate when the motor 214 should slow down. If the impact counter is not equal to the impact counter threshold, the method 1700 returns to block 1720 to continue calculating the drive angle 1505 between impacts. If the impact counter is equal to the impact counter threshold, the controller 226 sets the motor speed to the finishing speed. Referring again to block 1725, if the drive angle 1505 is greater than or equal to the drive angle threshold, the method 1700 proceeds to block 1745. At block 1745, the controller 226 resets the impact counter and then proceeds back to block 1720 to continue calculating the drive angle 1505 between impacts. In an alternative embodiment, block 1745 may not be executed such that the impact counter is not reset if the controller 226 determines at block 1725 that the drive angle 1505 is not less than the drive angle threshold. In such an embodiment, the method 1700 remains at block 1725 until it is determined that the drive angle 1505 is less than the drive angle threshold.
[0074] Although the blocks of the method 1700 are shown in FIG. 17 in a sequential and specific order, in some embodiments, one or more of the blocks are performed in parallel, performed in a different order than shown, or bypassed. In some embodiments, the impact driver 104 receives and stores a concrete anchor profile including parameters at the time of manufacture of the tool (block 1702). In some embodiments, the parameters received at block 1702 at the time of manufacture of the tool are received via a wired connection. Additionally, blocks 1725, 1730, 1735, 1740, and 1745 are examples of the controller 226 controlling the motor 214 based on the drive angle determined at block 1720.
[0075] 18 illustrates a flow chart of a method 1800 for implementing control of the impact driver 104. At block 1802, the wireless communication controller 250 receives parameters for a control profile from the external device 108. For example, at block 1802, the parameters are received as part of a concrete anchor profile configured and provided as described previously herein, for example, in connection with FIGs. 8A and 8B. In some embodiments, the parameters include a total number of revolutions associated with a transition from a motor starting speed to a motor finishing speed.
[0076] At block 1805, the controller 226 determines that the trigger 212 is depressed and starts the motor 214 as described earlier herein. At block 1810, the controller 226 sets the motor speed to a first speed (e.g., a start-up speed) (or sets the motor speed depending on how much the trigger 212 is depressed with the maximum speed set as the start-up speed as described earlier herein). At block 1815, the controller 226 monitors motor characteristics to determine if the impact driver 104 is applying an impact, as described earlier herein. If the impact driver 104 is not applying an impact, the method 1800 remains at block 1815 and the controller 226 continues to monitor the motor characteristics to determine if the impact driver 104 is applying an impact.
[0077] If the controller 226 determines that the impact driver 104 is applying an impact, then in block 1820, the controller 226 calculates the drive angle 1505 experienced by the output driver 210 as described previously herein (e.g., by monitoring the rotational position of the anvil each time an impact is detected). For example, the controller 226 may calculate the drive angle 1505 by determining a first rotational anvil position of the anvil at the time of a first impact between the hammer 1205 and the anvil 1210 (e.g., see the rotational position of the hammer 1205 in FIG. 14B) and determining a second rotational anvil position of the anvil at the time of a second impact between the hammer 1205 and the anvil 1210 (e.g., see the rotational position of the hammer 1205 in FIG. 16B). The controller 226 may then determine the drive angle experienced by the output driver based on the first rotational anvil position and the second rotational anvil position. For example, the controller 226 may determine the difference between the second rotating anvil position and the first rotating anvil position and subtract a predetermined angle. Although a first rotating anvil position and a second rotating anvil position are used, a first hammer position and a second hammer position may be used instead according to various embodiments. The predetermined angle may indicate the amount of rotation the hammer 1205 undergoes between disengaging from the anvil 1210 and impacting the anvil 1210. For example, with reference to the impact mechanism 1200 shown in FIGS. 12A and 12B and described with respect to FIGS. 13A-16B, the predetermined angle may be 180 degrees. However, the amount of rotation (and thus the predetermined angle) that the hammer undergoes between disengaging from the anvil and impacting the anvil will vary depending on the configuration of the impact mechanism, such as the number and location of the hammer and anvil lugs of a given impact mechanism. For example, if the hammer includes four lugs, each 90 degrees apart, instead of two lugs 180 degrees apart, and operates with the anvil 1210, the hammer will undergo a 90 degree rotation between disengaging from the anvil and impacting the anvil, rather than a 180 degree rotation. In this example, the predetermined angle is 90 degrees. As previously explained, the number of lugs is not limiting and the specific values are used merely as examples.
[0078] In block 1825, the controller 226 accumulates the drive angle to determine a revolution count, for example, measured from when the trigger is depressed. In block 1830, the controller 226 determines whether the revolution count is greater than a revolution threshold. For example, if the accumulated revolution count plus the drive angle exceeds the revolution threshold, the condition of block 1830 is met. Either or both of the revolution count or the revolution threshold may include integer values or other values (e.g., decimal values). If the revolution count does not exceed the revolution threshold, the method 1800 loops back to block 1820 to continue calculating the drive angle 1505 between impacts. If the revolution count exceeds the revolution threshold, the controller 226 sets the motor speed to a second speed (e.g., a finishing speed) in block 1835. In some embodiments, the finishing speed may be set to zero in the profile to implement stopping of the motor 214 when a predetermined number of revolutions is met.
[0079] Although the blocks of the method 1800 are shown in FIG. 18 in a sequential and specific order, in some embodiments, one or more of the blocks are performed in parallel, performed in a different order than shown, or bypassed. In some embodiments, the impact driver 104 receives and stores a control profile including parameters at the time of manufacture of the tool (block 1802). In some embodiments, the parameters received at block 1802 at the time of manufacture of the tool are received via a wired connection. Additionally, blocks 1825, 1830, and 1835 are examples of the controller 226 controlling the motor 214 based on the drive angle determined at block 1820.
[0080] In the example of Figure 18, the controller 226 uses the accumulated revolution count to determine when to reduce the motor speed to the finishing speed. The use of the revolution count may be employed in place of or in combination with the number of impacts less than the drive angle threshold approach described in Figure 17. For example, in some embodiments, the controller 226 reduces the motor speed to the finishing speed in response to the revolution count or in response to the drive angle threshold.
[0081] The methods 1700, 1800 may also be implemented for other fastening applications, for example, the methods 1700, 1800 may be implemented in an impact driver or wrench used to drive screws or other fasteners into wood, drywall, or other substrates.
[0082] FIG. 19A illustrates an anvil position sensor 218c of the power tool 102. The anvil position sensor 218c includes a printed circuit board 1900 supporting or associated with an inductive sensor 1905, a transmitter circuit trace 1910, a first receiver circuit trace 1915, and a second receiver circuit trace 1920. The inductive sensor 1905 injects a current into the transmitter circuit trace 1910 to generate a magnetic field. As seen in FIG. 12, the anvil 1210 includes a lug 1215 that is engaged by a lug 1207 on the hammer 1205 to rotate the anvil 1210. As the anvil 1210 rotates, the lug 1215 passes through a magnetic field generated by the injection of a signal into the transmitter circuit trace 1910. Eddy currents are generated in the lug 1215 of the anvil 1210. The eddy currents generate a magnetic field, which passes through the receiver circuit traces 1915, 1920. The current induced in the receiving circuit traces 1915 , 1920 is used by the inductive sensor 1905 to determine the position of the anvil lug 1215 relative to the receiving circuit traces 1915 , 1920 .
[0083] In some embodiments, the receiver circuit traces 1915, 1920 are sinusoidal in shape but offset by 90 degrees, so that as the anvil 1210 rotates, the voltage on one of the receiver circuit traces 1915, 1920 is a sine wave and the voltage on the other receiver circuit trace 1915, 1920 is a cosine wave. The voltage outputs of the two receiver traces 1915, 1920 can then be used by the controller 226 to determine the position (e.g., angle of rotation) of the anvil 1210 relative to the receiver circuit traces. In some embodiments, the angle is calculated by the controller 226 using an arctangent function
number
[0084] FIG. 20 shows the output of the anvil sensor of FIG. 19A as a function of anvil rotation angle. In the embodiment shown in FIG. 19A, the printed circuit board 1900 includes approximately 180° of traces (e.g., about halfway around the circumference of the printed circuit board 1900). In other embodiments, the transmit and receive traces extend over substantially the entire surface of the printed circuit board 1900 (e.g., about 360° around the circumference of the printed circuit board 1900). In some embodiments, the length of the target (e.g., anvil lug 1215) is about 20-50% of the periodic length of the receiver circuit traces 1915, 1920.
[0085] In some embodiments, the anvil position sensor 218c includes a single receiver circuit trace 1915, as shown in FIG. 19B. Using a single receiver circuit trace 1915 reduces the footprint of the printed circuit board assembly (PCBA). In some embodiments, the controller 226 uses an inverse trigonometric function to determine the angle, but the output of the anvil position sensor 218c is non-linear. Using two receiver circuit traces 1915, 1920 increases robustness against air gaps and adjacent component interference.
[0086] 21A-21C show a body portion 2100 of the power tool 102 located near the anvil 1210 for supporting the anvil position sensor 218c. The body portion 2100 includes a ring portion 2105 and a tray portion 2110 extending from the ring portion 2105. The ring portion 2105 defines a first recess 2115 for receiving the printed circuit board 1900 shown in FIGS. 19A and 19B, a thrust bearing surface 2120 of the anvil thrust support 2122, and an opening 2125. The drive 210 extends through the opening 2125, and the thrust bearing surface engages the anvil 1210 during operation. The opening 2125 may provide clearance 2140. Wire routing 2150 may be provided on the outer diameter of the boat between the boat and the gear case inner diameter. The tray portion 2110 defines a second recess 2130 in which the hammer sensor 2160 may be mounted. As described above, the hammer sensor 2160 detects an impact between the hammer 1205 and the anvil 1210. For example, the hammer sensor 2160 may measure axial position, acceleration, sound, or vibration to detect the impact.
[0087] 17 and 18, the angle measured by the anvil position sensor 218c is used to calculate the drive angle resulting from the impact between the hammer 1205 and the anvil 1210. The radial span of the circuit traces 1910, 1915, 1920 on the printed circuit board 1900 may vary depending on the configuration of the anvil 1210. For an anvil 1210 having two lugs 1215, the span may be approximately 180 degrees since the second lug 1215 enters the span covered by the circuit traces 1910, 1915, 1920 when the first lug 1215 separates. Thus, the first lug 1215 interfaces with the anvil position sensor 218c during a first portion of the rotational path of the anvil 1210, and the second lug 1215 interfaces with the anvil position sensor 218c during a second portion of the rotational path of the anvil 1210. If there are more lugs 1215, a smaller span may be used for the anvil position sensor 218c.
[0088] 22A and 22B show an embodiment of an anvil assembly 2200 including a target 2210 disposed on a shaft 2220 of the output driver 210 and a magnetic shield 2230 disposed between the target 2210 and the anvil lug 1215. The magnetic shield 2230 may have a magnetic permeability greater than that of air (e.g., 1.26×10 -6 In some embodiments, the magnetic shield 2230 is made of a material having a magnetic field strength greater than 1×10 -4 The target 2210 is made of a material having a magnetic permeability greater than H / m. In some embodiments, the magnetic shield 2230 is made of carbon steel. In other embodiments, the magnetic shield 2230 is made of ferrite or other suitable magnetic material. In some embodiments, the target 2210 is a ring member that is attached to the shaft 2220, such as to a protrusion 2240 on the outside of the shaft 2220. In some embodiments, the target 2210 is secured via an interference fit or via an adhesive. The target 2210 includes a target lug 2250 having a radial surface 2260 for interfacing with the anvil position sensor 218C.
[0089] 22A, the radial surface 2260 of the target lug 2250 is located adjacent to the anvil position sensor 218C. The magnetic shield 2230 magnetically shields the target lug 2250 from the anvil lug 1215 and the hammer lug 1207A, 1207B to reduce magnetic interference caused by the hammer lug 1207A, 1207B being located close to the anvil lug 1215 during impact and rotation. The radial span of the circuit traces 1910, 1915, 1920 on the printed circuit board 1900 may vary depending on the configuration of the target 2210 and the target lug 2250. For a target 2210 having two target lugs 2250, the span may be approximately 180 degrees as the second target lug 2250 enters the span covered by the circuit traces 1910, 1915, 1920 as the first target lug 2250 moves away. Thus, a first target lug 2250 interfaces with the anvil position sensor 218c during a first portion of the rotational path of the anvil 1210, and a second target lug 2250 interfaces with the anvil position sensor 218c during a second portion of the rotational path of the anvil 1210. If there are more target lugs 2250, a smaller span can be used for the anvil position sensor 218c. In other embodiments, a sensor span between 180 degrees and 360 degrees is used.
[0090] The anvil may be unshielded (no shield) or shielded (e.g., using 2230 in Figs. 22A and 22B). The sensor output of an unshielded anvil may provide a less robust signal for determining position compared to a shielded anvil. For example, when the hammer is in a stationary position relative to the anvil, a shielded design provides a more robust signal (e.g., greater signal strength, greater signal-to-noise ratio, etc.) than an unshielded design. The output of the sensor is related to the position (in degrees) of the anvil. The output of a shielded sensor may be, for example, 99% accurate for ideal performance. As shown in Fig. 23A, in an unshielded design, the coil directly senses the lug 3102 or target on the anvil. The geometry of the coil 3104 is optimized for the involute shape of the lug, and the transmitter extends beyond the 180 degree measurement range to allow the anvil lug to exit / enter the coil 3106.
[0091] In the shielded design, as shown in Figures 23C and 23D, the coil senses an additional target 3108 added to the anvil. The sine-cosine geometry of the standard coil is selected based on the dimensions and geometry of the conventional coil 3110 and target 3112, and can allow for the target to enter / exit the coil without additional length.
[0092] There may be, for example, three or more different categories of anvils, associated with additional different embodiments of the anvil. For example, the first category may include two or more part designs with ideal targets. In such an embodiment, the target and shield are added to the anvil as additional components. The advantage of the first category is that a unique process can be used for each component, reducing the mass of the anvil. For example, insert molding processes or pressings of thin-walled targets and shields can be used, which maintains performance without inertia. However, a challenge is wear between the mating interfaces, especially when large vibration and inertial loads create repeated relative motion. In the first category, ideal geometries can be added to preserve lug performance, create ideal targets for sensors, and provide shields.
[0093] The second category may include a single-part design with an ideal target. A single-part design is advantageous because the part can be made with fewer manufacturing processes and / or pressed. The second category does not have wear issues between mating parts, but inertial loads and complex section thicknesses may make heat treatment difficult (e.g., cracking, over-carburization, warping, etc.). In addition, the anvil generally adds inertia, which may affect torque output. In addition, there may be inertial loads from centrifugal forces in impact events. In the second category, ideal geometries may be added to preserve lug performance, create an ideal target for the sensor, and provide shielding.
[0094] The third category may include a single-part design with direct lug measurement. A conventional anvil can be used without additional features (e.g., shielding, etc.). If the hammer creates unmanageable interference, inertia is added by increasing the thickness of the lug to move the hammer location away from the sensor at impact. In some embodiments, the hammer is 2-3 times farther away from the sensor than the lug itself. In the third category, nonlinear edges, such as in the case of involute lugs, will generate a nonlinear signal, which is addressed by firmware as described above. Straight lugs can also be used, and if orthogonal to the axis of rotation, a linear signal can be achieved.
[0095] Various embodiments of the three categories of anvils are described below. For example, as shown in FIG. 24A, anvil assembly 3200 includes an increased tool length resulting from an increased length of shaft 3201. The extended end 3202 of anvil assembly 3200 extends the tool length due to a thickened shield 3204 that shields the anvil position sensor from the hammer. The presence of shield 3204 minimizes the risk of over-carburization and the formation of a brittle core. Anvil assembly 3200 may include a larger radius in the transition region 3206 between target portions 3208 to reduce stress and provide a uniform thickness to avoid cracking during the quench process.
[0096] 24B and 24C, according to another embodiment, the anvil assembly 3300 may further increase the tool length (e.g., by increasing the length of one or more of the shaft 3301 and the anvil extension end 3302). In the illustrated embodiment, the outer diameter of the target structure 3304 is reduced. By reducing the size of the shield and target structure 3304, the effect of the inertia of the target structure 3304 which causes additional strain on the anvil is reduced.
[0097] As shown in Figures 25A and 25B, the anvil assembly 3400 includes a groove 3402 between the target 3410 and the lug 3450 for the shield 3460 in a one-piece anvil design. The groove allows a molded ring, such as a spiral retaining ring, to be assembled and function as a shield. The molded ring shield is axially retained but does not rotate, so that the thin wall of the molded ring is not subjected to sudden centrifugal loads during an impact event. Additionally, the outer diameter of the anvil assembly 3400 can be reduced.
[0098] 26A-C show three different designs 3500, 3600, and 3700 of shield / target structures 3502, 3602, and 3702, respectively. As shown in FIG. 26A, the target 3502 may have a recess 3504 bounded by a number of curved protrusions 3506 (e.g., curved squares). However, other shapes may be used for the boundaries, such as the boundary shape of the recess of the target 3602 in FIG. 26B (e.g., curved diamonds). FIG. 26C shows an embodiment where the shield structure 3702 may be insert molded or potted in place within the pressed shield feature 3702.
[0099] Figures 27A and 27B show an anvil assembly 3800 in which the target structure includes a plastic overmold 3802 with a pressed insert 3804 that slides over a shaft 3804 and is held in place with a snap ring 3812. Figure 27B shows variations in the snap ring 3812 for mating the target, shield, and anvil. For example, as shown in Figure 27B, the snap ring can be secured to the anvil using a D-shaped flat 3812A, a cycloid 3812B, a spline 3812C, a star 3812D, a hexagon 3812E, a decagon 3812F, or an involute.
[0100] 28A and 28B show that the target 3815 of the anvil assembly 3800 can be individual components 3820 (FIG. 28A) or a one-piece piece 3825 (FIG. 28B) with retention features, thereby providing greater strength in retaining the angle.
[0101] 29 shows an anvil assembly 3800 having a shield, a target holder, a target, an anvil rotation sensor, a gap formed between the target and the anvil rotation sensor, and a shield distance for the anvil rotation sensor, hi some embodiments, the shield distance is at least twice the gap.
[0102] FIG. 30A shows an anvil assembly 3900 with an anvil shield 3901. The anvil shield 3901 has a thickness of, for example, less than 2.5 mm. The anvil seed 3901 is press-fit against the anvil 3902. The anvil shield 3901 has a single outer diameter relative to the targets 3903 and a space between the targets 3903. The anvil 3902 is provided with flat detents 3904 to prevent sliding upon impact. The detents 3904 can be made of aluminum or other low mass but conductive material. As shown in FIG. 30B and FIG. 30C, the outer diameter 3903 (double arrow) of the target 3902 may be reduced, the shield 3901 may be removed, and the height of the lugs 3904 may be increased.
[0103] 30B and 30C show an alternative anvil assembly 3950 including a target 3902 and anvil lug 3904. The anvil assembly 3950 has a reduced outer diameter 3903 of the target 3902. The width of the anvil lug 3904 is increased to increase the distance between the hammer and the anvil rotation sensor. The embodiment of FIGS. 30B and 30C does not include a shield due to the increased width of the anvil lug 3904.
[0104] FIG. 31 shows an anvil assembly 4000 with an increased lug 4002 thickness to achieve a 2-3 times distance from the hammer to the anvil rotation sensor compared to the distance from the target to the anvil rotation sensor, thus minimizing the ability of the hammer to induce interference. This involute lug 4002 can be directly sensed by the anvil rotation sensor, but due to the edge of the target 4004 (which in this scenario is directly part of the lug 4002), the rate of change of coil coverage between the incoming lug A and the outgoing lug B is non-zero. This change in the percentage of lug coverage creates a non-linear signal output, but can be corrected in software as described above.
[0105] 32A and 32B show an unshielded anvil assembly 4100 that includes an increased lug thickness to achieve a 2-3 times distribution of the distance between the hammer and the anvil rotation sensor when compared to the distance from the target to the anvil position sensor, which minimizes the ability of the hammer to induce interference. However, the anvil assembly 4100 differs from the anvil assembly 4000 in that it uses a wedge shape for the target 4102, improving the linearity of the output sensor signal since the total coverage of the coil is constant. To generate a linear signal, it is intended that the amount of target covering the coil is constant. The coil spans, for example, 180 degrees, with two target features 4102A, 4102B facing each other at 180 degrees. The edges of the target 4102 are straight, so a 360 degree rotation from lug A to lug B results in zero percent change in coverage entering and exiting the lug. This can be contrasted with an involute lug. Involute lugs cause the sensor signal to be nonlinear because the lug edges entering and exiting the sensor are nonlinear, causing the coverage of the coil by the target to change slightly as the lug enters and leaves the sensing zone. The vector formed by the edges of the target 4102 is orthogonal to the axis of rotation. In contrast to traditional square lug shapes with lug faces that are perpendicular, the vector does not intersect the axis of rotation, causing the target coverage on the sensor to change as it rotates.
[0106] 33A-33C show the effect on the output sensor signal of different anvil shapes. FIG. 33A shows a square lug anvil 4202. Because the lug shape is square, the rate of change of target / coil coverage is non-zero, which causes non-linearity in the output sensor signal. FIG. 33B shows an involute lug 4204. An involute lug also has a non-zero rate of change of target / coil coverage, which causes non-linearity in the output sensor signal. However, an involute lug causes less non-linearity than a square lug. FIG. 33C shows a lug 4206 (e.g., lug 4100) that includes some constant coverage of at least a portion of the sensor by the target. As discussed above, there is always some coverage of the sensor by the target, which allows the change in sensor coverage with anvil rotation to remain zero.
[0107] 34A and 34B show another anvil 4000 with a target 4002 that provides a consistent geometry for the anvil rotation sensor to detect. Two targets 4002 provide 180 degree coverage. As one target exits, another should enter range at the same speed. A shield 4004 shields the hammer from the anvil rotation sensor to avoid interference. As shown in FIG. 34B, the gap distance between the target and the anvil rotation sensor is sized such that the distance from the shield 4004 to the anvil rotation sensor is at least twice the distance from the target to the anvil rotation sensor. In some embodiments, the distance between the anvil rotation sensor and the shield is constant.
[0108] Some embodiments provide a method for detecting fastener seating and calculating an output rotation angle of an output driver of a motor to modify drive parameters (i.e., speed) of the motor based on the calculated output rotation angle.
[0109] Some embodiments further provide a method for detecting the angular distance rotatably traveled by the shaft of the motor during an impact with an impact driver or wrench to detect fastener seating and infer an output rotation angle of the motor's output driver for varying drive parameters (i.e., speed) of the motor based on the calculated output rotation angle.
[0110] Some embodiments further provide a method for detecting an output rotation angle of an output driver of a motor, in order to modify drive parameters of the motor when a predetermined angle threshold is reached.
[0111] In some embodiments, the anvil is heat treated (e.g., carburized). If the anvil is carburized, its wear resistance and strength in harsh impact environments are improved. Depending on the target and shield structure, carburization may be performed. Geometry may be a useful solution, or thin-walled parts may be masked to avoid carbon absorption. Alternatively, thin-walled parts may be eliminated. This may also improve robustness against cracking. The desired hardness may be achieved by induction hardening, but is complicated by non-uniform cross-sections (e.g., single-component anvil / shield / target designs). Carburization may generate an anvil case from all sides, eliminating the softer ductile core, which may fracture under impact loads. To eliminate this risk, t>2c and w>c are ensured, and / or a mask (such as a plating or tack paste) is applied to the surface to prevent surface carburization during heat treatment, where t is the width of the entire core, c is the width of the case layer, and w is the remaining part of the entire core excluding the case layer.
[0112] Thus, the embodiments described herein provide, among other things, a system and method for controlling a power tool having an impact mechanism based on a drive angle by an impact application. Various features and advantages of the present invention are set forth in the following claims.
Claims
1. Housing and a brushless direct current (DC) motor within the housing, the DC motor including a rotor and a stator, the rotor coupled to a motor shaft to generate a rotational output; An impact mechanism comprising: a hammer coupled to the motor shaft; an anvil including an anvil lug and configured to receive an impact from the hammer; The impact mechanism; an output drive including a shaft coupled to the anvil and configured to rotate to perform a task; a target positioned on the shaft; a magnetic shield positioned on the shaft between the target and the anvil lug and configured to magnetically shield the anvil lug from the target; a position sensor including an inductive sensor positioned proximate to the target, the inductive sensor configured to detect a position of the anvil; and a controller coupled to the position sensor, calculating a drive angle of the anvil caused by the impact based on the determined position of the anvil; controlling the brushless DC motor based on the drive angle of the anvil; It is configured as follows: the controller; Power tools.
2. 2. The power tool of claim 1, wherein the inductive sensor includes a circuit board including a hemispherical portion having a circumference, and a first transmitter circuit trace having a span disposed along approximately 180 degrees of the circumference.
3. The power tool of claim 2 , wherein the target includes a first target lug configured to pass through the span of the first transmitter circuit trace of the inductive sensor during operation of the power tool.
4. 4. The power tool of claim 3, wherein the target includes a second target lug configured to begin passing through the span of the first transmitter circuit trace of the inductive sensor as the first target lug exits the span of the first transmitter circuit trace during operation of the power tool.
5. To calculate the drive angle, the controller determining a first rotational position of the anvil after a first impact between the hammer and the anvil; determining a second rotational position of the anvil after a second impact between the hammer and the anvil; determining a drive angle to be received by the output driver based on the first rotational position and the second rotational position; It is configured as follows: The power tool according to claim 1.
6. To control the brushless DC motor based on the drive angle of the anvil, the controller determining whether the drive angle of the anvil is less than a drive angle threshold; incrementing an impact counter for a detected impact in response to determining that the drive angle of the anvil is less than the drive angle threshold; determining whether the impact counter has reached an impact counter threshold; responsive to determining that the impact counter has reached the impact counter threshold, decreasing a speed of the brushless DC motor. It is configured as follows: The power tool according to claim 1.
7. To control the brushless DC motor based on the drive angle, the controller determining whether the drive angle of the anvil is less than a drive angle threshold; reducing a speed of the brushless DC motor in response to determining that the drive angle of the anvil is less than the drive angle threshold. It is configured as follows: The power tool according to claim 1.
8. 1. A method for controlling a power tool, comprising: driving a brushless direct current (DC) motor, the brushless DC motor including a rotor and a stator, the rotor coupled to a motor shaft to generate a rotational output; impacting an anvil of an impact mechanism with a hammer of the impact mechanism coupled to the motor shaft to rotate an output drive including a shaft coupled to the anvil; sensing a position of the anvil with a position sensor positioned proximate to a target positioned on the shaft, wherein a magnetic shield is positioned on the shaft between the target and the anvil, the magnetic shield configured to magnetically shield anvil lugs of the anvil from the target; calculating a drive angle of the anvil based on the position of the anvil; and controlling the brushless DC motor based on the drive angle of the anvil. method.
9. the position sensor includes an inductive sensor; the inductive sensor includes a circuit board including a hemispherical portion having a circumference, and a first transmitter circuit trace having a span disposed along approximately 180° of the circumference. The method according to claim 8.
10. 10. The method of claim 9, wherein sensing the position of the anvil includes sensing a first target lug of the target passing through a span of a first transmitter circuit trace of the inductive sensor during operation of the power tool.
11. 11. The method of claim 10, wherein sensing the position of the anvil includes sensing a second target lug when the second target lug begins to pass through the span of the first transmitter circuit trace of the inductive sensor as the first target lug exits the first transmitter circuit trace during operation of the power tool.
12. Calculating the drive angle comprises: determining a first rotational position of the anvil after a first impact between a hammer of the power tool and an anvil of the power tool; determining a second rotational position of the anvil after a second impact between the hammer and the anvil; determining a drive angle experienced by the output driver based on the first rotational position and the second rotational position. The method according to claim 8.
13. Controlling the brushless DC motor based on the drive angle of the anvil determining whether the drive angle of the anvil is less than a drive angle threshold; incrementing an impact counter for a detected impact in response to determining that the drive angle of the anvil is less than the drive angle threshold; determining whether the impact counter has reached an impact counter threshold; and in response to determining that the impact counter has reached the impact counter threshold, decreasing a speed of the brushless DC motor. The method according to claim 8.
14. Controlling the brushless DC motor based on the drive angle determining whether the drive angle of the anvil is less than a drive angle threshold; and in response to determining that the drive angle of the anvil is less than the drive angle threshold, reducing a speed of the brushless DC motor. The method according to claim 8.
15. Housing and a brushless direct current (DC) motor within the housing, the DC motor including a rotor and a stator, the rotor coupled to a motor shaft to generate a rotational output; An impact mechanism comprising: a hammer coupled to the motor shaft; an anvil including an anvil lug and configured to receive an impact from the hammer; The impact mechanism; an output drive including a shaft coupled to the anvil and configured to rotate to perform a task; a target positioned on the shaft; a magnetic shield positioned on the shaft between the target and the anvil lug and configured to magnetically shield the anvil lug from the target; 1. A position sensor comprising: a position sensor including an inductive sensor positioned proximate to the target, the inductive sensor configured to detect a position of the anvil; and a controller coupled to the position sensor, receiving a first position signal from the position sensor at a first time; receiving a second position signal from the position sensor at a second time; calculating a drive angle of the anvil based on the first position signal and the second position signal; controlling the brushless DC motor based on the drive angle of the anvil; It is configured as follows: the controller; Power tools.
16. 16. The power tool of claim 15, wherein the inductive sensor includes a circuit board including a hemispherical portion having a circumference, and a first transmitter circuit trace having a span disposed along approximately 180 degrees of the circumference.
17. The power tool of claim 16 , wherein the target includes a first target lug configured to pass through the span of the first transmitter circuit trace of the inductive sensor during operation of the power tool.
18. 18. The power tool of claim 17, wherein the target includes a second target lug configured to begin passing through the span of the first transmitter circuit trace of the inductive sensor as the first target lug exits the span of the first transmitter circuit trace during operation of the power tool.
19. To control the brushless DC motor based on the drive angle of the anvil, the controller determining whether the drive angle of the anvil is less than a drive angle threshold; incrementing an impact counter for a detected impact in response to determining that the drive angle of the anvil is less than the drive angle threshold; determining whether the impact counter has reached an impact counter threshold; responsive to determining that the impact counter has reached the impact counter threshold, decreasing a speed of the brushless DC motor. It is configured as follows: The power tool according to claim 15.
20. To control the brushless DC motor based on the drive angle, the controller determining whether the drive angle of the anvil is less than a drive angle threshold; reducing a speed of the brushless DC motor in response to determining that the drive angle of the anvil is less than the drive angle threshold. It is configured as follows: The power tool according to claim 15.
Citation Information
Patent Citations
Torque control type pulse tool
JP1996267369A
Power tools including output position sensors
JP2019509182A
System and method for configuring a power tool with an impact mechanism
US20170173768A1
Impact Tool Angular Velocity Measurement System
US20190030696A1