EP4655136A1 - Verfahren zum steuern einer handwerkzeugmaschine und handwerkzeugmaschine - Google Patents

Verfahren zum steuern einer handwerkzeugmaschine und handwerkzeugmaschine

Info

Publication number
EP4655136A1
EP4655136A1 EP24700738.8A EP24700738A EP4655136A1 EP 4655136 A1 EP4655136 A1 EP 4655136A1 EP 24700738 A EP24700738 A EP 24700738A EP 4655136 A1 EP4655136 A1 EP 4655136A1
Authority
EP
European Patent Office
Prior art keywords
power tool
hand
target value
held power
operating state
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
EP24700738.8A
Other languages
English (en)
French (fr)
Inventor
Uwe Troeltzsch
Jan Linus Steuler
Andreas Frischen
Lars Beseke
Jan DOEPNER
Manuel Peter
Bernhard Hegemann
Dimetric Armand Tadah Teguetio
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of EP4655136A1 publication Critical patent/EP4655136A1/de
Pending legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25FCOMBINATION OR MULTI-PURPOSE TOOLS NOT OTHERWISE PROVIDED FOR; DETAILS OR COMPONENTS OF PORTABLE POWER-DRIVEN TOOLS NOT PARTICULARLY RELATED TO THE OPERATIONS PERFORMED AND NOT OTHERWISE PROVIDED FOR
    • B25F5/00Details or components of portable power-driven tools not particularly related to the operations performed and not otherwise provided for

Definitions

  • the invention relates to a method for controlling a hand-held power tool.
  • the invention further relates to a corresponding hand-held power tool which is configured to carry out the method.
  • a method for controlling a hand-held power tool comprising:
  • Receiving sensor data of at least one operating variable of the hand-held power tool Receiving an input value for a control parameter of the handheld power tool based on a user input from a user of the handheld power tool;
  • an improved method for controlling a handheld power tool in which, in addition to a user input from a user of the handheld power tool, an operating state determined during operation of the handheld power tool is also taken into account when controlling the handheld power tool.
  • an operating state of the handheld power tool is determined based on sensor data of at least one operating variable of the handheld power tool by executing a state determination module on the sensor data.
  • the control of the handheld power tool is now effected taking the determined operating state into account.
  • the control of the handheld power tool can be adapted exactly to the current operating state. In this case, the control can also take place independently of the user input of the user.
  • the user input can be adapted to the current operating state, so that a control of the handheld power tool that is adequate to the operating state is possible, even if the user input would result in a different control that does not match the operating state.
  • controlling the hand-held power tool comprises:
  • Determining a second target value of the control parameter based on the determined operating state of the hand-held power tool Determining an output target value of the control parameter based on the first target value and the second target value; and outputting the output target value to an actuator of the hand-held power tool for controlling the hand-held power tool.
  • the control of the handheld power tool is based on first and second target values of a control parameter.
  • the first target value is based on a user input from the user of the handheld power tool.
  • the second target value is determined taking into account the determined operating state of the handheld power tool.
  • an output target value of the control parameter is then determined, which is then output to the actuators of the handheld power tool to control the handheld power tool.
  • both the user input by the user and the respective operating state of the handheld power tool can be taken into account for the control of the handheld power tool when determining the output target value.
  • This has the advantage that, particularly in cases in which the user input by the user, which occurs for example by operating a trigger switch, does not allow optimal control of the handheld power tool for the respective operating state of the handheld power tool, by taking into account the second target value adapted to the respective operating state, the control can still be adapted to the respective operating state despite the unsuitable user input.
  • the control of the hand-held power tool remains primarily in the hands of the user. Only for certain operating states can the output target value, in which the second target value is taken into account, be used to User input can be overwritten or better adapted to the current operating state.
  • the method thus enables control of the hand-held power tool that is adapted to the current operating state of the hand-held power tool, which takes into account target values of a control parameter that are adapted to the current operating states of the hand-held power tool in addition to the user input.
  • a target value is a desired value of the control parameter.
  • determining the output target value comprises: defining the output target value as a minimum value or a maximum value of the first and second target values and/or
  • the output target value as a product of the first and second target values.
  • the output target value can be determined as simply as possible.
  • the selected minimum value or maximum value between the first and second target values of the control parameter can be used to determine an output target value of the control parameter that is optimally adapted to the respectively determined operating state. This enables the handheld power tool to be controlled in a way that is as precise as possible to the respective operating state.
  • the control parameter can be, for example, a speed or a torque of a motor of the hand-held power tool.
  • the operating state of the hand-held power tool can, for example, describe a work progress of the hand-held power tool. For example, if the hand-held power tool is designed as an electric screwdriver, a The operating state of the hand-held power tool is described as follows: the screw to be tightened is already screwed into the respective workpiece in a form-fitting manner.
  • the target speed or the target torque of the motor entered by the user input by pressing the trigger switch of the handheld power tool can be too high for such a positive connection of the screw to be screwed in, so that the output target value of the control parameter describes a reduced speed or a reduced torque of the motor of the handheld power tool compared to the user input, taking into account the respective operating state determined, in the form of a correspondingly lower motor speed or a correspondingly lower motor torque.
  • the output target value can thus be used to control the handheld power tool in a way that is optimally adapted to the respective operating state.
  • the target value that best fits the current operating state can be selected as the output target value.
  • the target value can be limited to a value range that is suitable for the current operating state compared to the input parameter.
  • the second target value By multiplying the first and second target values, the second target value can act as a sensitivity in relation to the first target value.
  • the second target value can thus be used to increase or decrease the first target value, which is based on the user input, in relation to the respective operating state by a factor in the form of the second target value.
  • the user input and the control of the handheld power tool by the user based on this can thus be efficiently adapted to the respective operating state.
  • determining the output target value comprises: Defining the output target value as the first target value if the second target value is less than a predefined threshold, and defining the output target value as a predefined target value if the second target value is greater than or equal to the predefined threshold.
  • the predefined threshold value into account enables the output target value to be easily and precisely adapted to the respective operating state.
  • the predefined target value as well as the predefined threshold value of the control parameter can be adapted in such a way that the resulting output target value enables optimal control of the hand-held power tool.
  • the second value of the control parameter determined based on the respective operating state can thus function as a switching value for the first target value of the user input.
  • a switch is made between the first target value of the user input and the predefined target value as the output target value.
  • determining the output target value comprises: defining the output target value as a product of the first target value with a first predefined target value if the second target value is less than a predefined threshold, and defining the output target value as a product of the first target value with a second predefined target value if the second target value is greater than or equal to the predefined threshold.
  • the output target value is defined as a product of the first target value based on the user input with a first predefined target value or a second predefined target value.
  • the first and second predefined target values can be designed as constant target values.
  • the predefined target values as well as the predefined threshold value can each be adapted to the current operating state.
  • the first and second predefined target values in turn serve as sensitivity values which, by multiplying with the first target value, increase or decrease the first target value and thereby adapt it to the current operating state.
  • the second target value determined in relation to the operating state serves as a switching value in that the second target value is connected between the product of the first target value with the first predefined target value and the product of the first target value with the second predefined target value in relation to the respective predefined threshold value. This enables the output target value to be adapted as precisely as possible to the respective operating state determined.
  • determining the operating state comprises: predicting an event time, wherein at the event time a transition of the hand-held power tool occurs from one operating state to another operating state.
  • the state determination module can additionally or alternatively predict an event time that defines a transition between different operating states of the hand-held power tool. By predicting the time of the event, the control of the handheld power tool can be adapted to an impending transition to another operating state. This enables the handheld power tool to be controlled as precisely as possible, as the control can be adapted to events that have not yet occurred or operating states that the handheld power tool will only enter in the future.
  • control parameter comprises one or more from the list: motor speed, motor current, motor power of a motor of the hand-held power tool.
  • the motor speed, the motor current or the motor power of the handheld power tool's motor represent reliable control parameters on the basis of which control of the handheld power tool is possible.
  • the operating variable comprises one or more from the list: motor current, motor position angle, motor rotational speed, voltage of a voltage source of the hand-held power tool, movements and/or vibrations of the hand-held power tool or in the hand-held power tool.
  • the operating variable provides a useful measurement variable for determining the operating state.
  • the motor current, the motor position angle, the motor rotation speed, an operating voltage of a voltage source of the hand-held power tool or movements and/or vibration of the hand-held power tool or in the hand-held power tool By measuring the motor current, the motor position angle, the motor rotation speed, an operating voltage of a voltage source of the hand-held power tool or movements and/or vibration of the hand-held power tool or in the hand-held power tool, meaningful information can be obtained on the basis of which an operating state of the hand-held power tool can be determined. For example, in the above example, it can be determined by measuring the motor current whether a screw to be screwed in is already screwed into the workpiece to be machined with a positive fit. When the positive fit is achieved, changes in the motor current as well as the motor rotation speed or the motor rpm can be detected, so that the operating state can be determined precisely.
  • the movement signals can also be used to determine whether the hand-held power tool, e.g. the screwdriver, has been moved to the next work location and the previous work phase, i.e. the previous screwing process, has been completed. This enables the operating state to be reset at the right time, corresponding to the new work phase, i.e. the new screwing process.
  • the hand-held power tool e.g. the screwdriver
  • the operating state comprises one or more from the list: a load range in which the hand-held power tool is operated, a strength of vibrations in the hand-held power tool and/or on a machined workpiece and/or in the user of the hand-held power tool, a temperature in the hand-held power tool and/or on the workpiece, operating mode in which the hand-held power tool is operated, a work progress of the hand-held power tool, material of the workpiece, existence of a positive connection between the hand-held power tool and the workpiece.
  • the state determination module comprises a trained artificial intelligence trained to determine, based on the Sensor data of the operating variable to determine the operating state of the hand-held power tool and/or to predict the time of the event.
  • a method for generating a training data set for training an artificial intelligence for determining an operating state and/or for predicting an event time of a hand-held power tool comprising:
  • an improved method for generating a training data set for training an artificial intelligence for determining an operating state and/or for predicting an event time of a handheld power tool can be provided. Accordingly, an improved training data set can be provided that is optimally tailored to the training of an artificial intelligence for determining an operating state or predicting event times in the sense of the method for controlling a hand-held power tool according to the preceding embodiments.
  • measured values of an operating variable of the hand-held power tool are first provided, with the measured values each being provided with a time stamp.
  • the measured values can be based on a plurality of measurements of the operating variable of the hand-held power tool or a plurality of comparable hand-held power tools.
  • the corresponding measured values can be recorded, for example, during operation of the hand-held power tool or during operation of the plurality of hand-held power tools and provided as a corresponding measurement of measured values for the method for generating the training data set.
  • the measured values of the operating variable recorded during operation of the hand-held power tools can, for example, be transferred to a server architecture provided for this purpose, which is set up to provide the corresponding measurement sets for the method for generating the training data set.
  • an event point in time is identified within the plurality of measured values as the point in time at which the handheld power tool changes from a first to a second operating state.
  • the measured values are provided with label values that identify the respective event point in time.
  • the plurality of labeled measured values are arranged in a time series and the time series of the labeled measured values is provided as a corresponding training data set.
  • an optimized training of an artificial intelligence can be carried out to determine an operating state or to predict an event time.
  • the respective labels The measured values of the operating variable allow an assessment of whether the hand-held power tool was in a first or a second operating state at the time of the respective measured value.
  • At least one label of the measured value allows the exact determination of an event time at which the transition between the two operating states occurs.
  • Providing the measured values with label values corresponds to the labeling of measured values known from the prior art, in which each measured value of the operating variable is assigned the corresponding label as an identification.
  • the method further comprises:
  • a rotation angle of the hand tool motor that existed at the time the measured value of the operating variable was recorded is determined. Furthermore, a rotation time is calculated for each measured value of the operating variable, whereby the rotation time describes a point in time at which a complete rotation has been made based on the respective rotation angle of the respective measured value of the operating variable.
  • all other sensor signals/variables can be related to either time or rotation angle. This improves the data set, as states and events are present and can be evaluated both over time and over the course of the rotation angle progress. Based on the angle of rotation or rotation time assigned to each measured value, a precise prediction of the time of the event can be made.
  • the time of the event can be precisely predicted for each measured value of the operating variable and the associated time stamp, taking into account the number of motor revolutions that must be carried out to achieve the transition to the second operating state. This enables optimal training of the artificial intelligence.
  • identifying the event time comprises: receiving sensor data representing the operating state of the handheld power tool;
  • sensor data from another sensor is taken into account to identify the operating states or to determine the time of the event.
  • the sensor data depicts the hand tool in the respective operating state and is suitable for identifying the time of the event.
  • the sensor data also includes time stamps that define the times at which the sensor data was recorded.
  • the sensor data are arranged in a corresponding time series according to their time stamps and within the time series the event time is determined based on the respective time stamps.
  • the time series of the measured values of the operating variable and the time series of the sensor data are then synchronized according to the respective time stamps. Based on the event time within the time series of the sensor data, the event time in the time series of the operating variable is then identified.
  • the additional information from the sensor data enables a more precise determination of the event time within the time series of the measured values of the operating variable. This allows a more precise training data set.
  • the sensor data are data from an external sensor, in particular a camera sensor.
  • the sensor data is based on data from an external sensor. This can be designed as a camera sensor, for example.
  • the camera data from the camera sensor can be used to map the operation of the handheld power tool during which the measured values of the operating variable were recorded. By mapping the operation of the handheld power tool, the different operating states can be clearly mapped in the sensor data.
  • the event time can, for example, describe the time at which, in the example described above, the positive connection between the screw and the workpiece is achieved when the screw is screwed into the workpiece.
  • This time can be clearly identified using the camera data from the camera sensor that depicts the screwing process of the handheld power tool. This enables the event time to be clearly identified by taking into account the time stamps of the camera data, which identify the time at which the camera data was recorded.
  • Operating size and camera data can be found in the time series of the measurement data of the The operating variable can thus precisely identify the point in time at which the form fit between the screw and the workpiece is achieved.
  • the artificial intelligence can be trained based on the measured data of the operating variable to determine the various operating states of the hand-held power tool or to predict the event time. This enables a precise training data set on which an optimized training of an artificial intelligence to determine operating states or to predict event times is possible.
  • a method for training an artificial intelligence to determine an operating state of a handheld power tool comprising:
  • the training of the artificial intelligence is adapted to the application of the artificial intelligence in the control of the handheld power tool in accordance with the method for controlling a handheld power tool, so that optimal training results can be achieved and optimally trained artificial intelligences can be achieved.
  • An artificial intelligence is provided for determining an operating state of a hand-held power tool and/or for predicting an event time according to the method according to one of the preceding embodiments, wherein the artificial intelligence is trained according to the inventive method for training an artificial intelligence.
  • the artificial intelligence is designed as an artificial neural network, in particular as a network with at least one recurrent layer with an internal state memory.
  • the artificial neural network can be designed in particular as a long-short-term memory (LSTM) network.
  • the LSTM network is particularly suitable for recognizing and operating states of the handheld power tool and predicting event times at which a transition between different operating states occurs.
  • LSTM networks are known from the state of the art for pattern recognition and predicting behavior or events based on historical data.
  • the implementation of the neural network as an LSTM network (Long Short Term Memory) is suitable as a network layer and can be combined with other network layers in a network.
  • a computing unit is provided which is configured to carry out the method for controlling a hand-held power tool according to one of the preceding embodiments and/or the method for generating a training data set according to one of the preceding embodiments and/or the method according to the invention for training an artificial intelligence and/or the artificial intelligence according to the invention.
  • a computer program product comprising instructions which, when the program is executed by a data processing unit, cause the data processing unit to execute the method for controlling a hand-held power tool according to one of the preceding embodiments and/or the method for generating a training data set according to one of the preceding embodiments and/or the method according to the invention for training an artificial intelligence and/or the artificial intelligence according to the invention.
  • a hand-held power tool is provided with a computing unit and at least one sensor for determining sensor data of at least one operating variable of the hand-held power tool, wherein the computing unit is designed to carry out a method for controlling the hand-held power tool, wherein the method comprises: receiving sensor data of at least one operating variable of the hand-held power tool;
  • Fig. 1 is a schematic representation of a hand-held power tool according to an embodiment
  • Fig. 2 shows a further schematic representation of a hand-held power tool, in which individual functional sequences of the hand-held power tool are illustrated;
  • Fig. 3 Time courses of an operating variable of a hand-held power tool and a rotation angle of a motor of the hand-held power tool;
  • Fig. 4 is a schematic representation of a hand-held power tool according to an embodiment, wherein the hand-held power tool is shown in different operating states;
  • Fig. 5 is a schematic representation of a drive control of the hand-held power tool according to an embodiment
  • Fig. 6 is a flow chart of a method for controlling a hand-held power tool according to an embodiment
  • Fig. 7 shows a further flow chart of the method for controlling a hand-held power tool according to a further embodiment
  • Fig. 8 shows a further flow chart of the method for controlling a hand-held power tool according to a further embodiment
  • Fig. 9 is a schematic representation of an artificial intelligence that is designed to be used in a control system of the hand-held power tool
  • Fig. 10 is a flowchart of a method for generating a training data set for training an artificial intelligence according to an embodiment
  • Fig. 11 shows another flow chart of a method for generating a training data set for training an artificial intelligence according to another embodiment
  • Fig. 12 is a flow chart of a method for training an artificial intelligence
  • Fig. 13 is a schematic representation of a computer program product.
  • Fig. 1 shows a schematic representation of a hand-held power tool 100 according to an embodiment.
  • the exemplary hand-held power tool 100 comprises a motor 101 with a motor control 103.
  • the hand-held power tool 100 further comprises a Computing unit 105 on which a state determination module 107 is installed and can be executed.
  • the computing unit 105 with the state determination module 107 are set up to carry out the inventive method for controlling a hand-held power tool 100.
  • the hand-held power tool 100 further comprises a voltage source 111 and a current measuring device 113.
  • the hand-held power tool 100 further comprises a trigger switch 109 by means of which the hand-held power tool 100 can be controlled by a user.
  • the hand-held power tool 100 comprises an adjustment device 115 with which various operating modes of the hand-held power tool 100 can be set.
  • the hand-held power tool 100 comprises a tool 117 by means of which corresponding work processes can be carried out by executing the hand-held power tool 100.
  • the handheld power tool 100 can be designed, for example, as a screwdriver or a battery-operated screwdriver.
  • the tool 117 can be designed in particular as a holder for replaceable screwdriver blades.
  • the engine control 103 shown can in particular comprise an associated power section of the engine control.
  • the engine 101 can further comprise a corresponding transmission, which is not explicitly shown in Fig. 1.
  • the motor 101 can be designed, for example, as a mechanical or electrically commutated DC motor.
  • the corresponding gear can be designed as a planetary gear.
  • the power section of the motor control 103 can convert a control signal, for example via PWM pulse width modulation, into the voltage or current curves required for the motor 101.
  • the control signals can first be converted into corresponding digital signals, after which the correspondingly converted signal can be transmitted via a suitable data bus, for example I2C or SPI.
  • a suitable data bus for example I2C or SPI.
  • I2C or SPI In the case of an electrically commutated direct current motor, a corresponding rotating field can be generated which is synchronous to the rotation of the Rotor can be tracked.
  • the motor control can implement voltage-controlled or speed-controlled control. With voltage-controlled control, the motor speed is reduced as the load (torque) increases and the operating current increases. Information about the motor speed or angle of rotation can be derived inherently from the system based on the phase changes.
  • a continuous angle of rotation sensor (not shown in Fig. 1) can be used to detect the rotor position.
  • a rotor position signal can be transmitted to the computing unit 105 for controlling the handheld power tool 100. This signal transmission can in turn take place via PWM, I2C, SPI or analog.
  • an algorithm is implemented in a control unit that uses the measured motor currents and voltages, which include signal components that arise from voltages induced back into the rotor, to determine the angle of rotation.
  • the angle of rotation sensor can be functionally replaced by the algorithm implementation.
  • the power supply via the voltage source 111 can be provided by a plurality of battery elements, for example lithium-ion cells. Overcharging, overcurrents and deep discharges can be prevented by an appropriate battery management system.
  • the trigger switch 109 can be designed as a potentiometer that provides the computing unit 103 for controlling the handheld power tool 100 with analog control signals that correspond to the linear actuation of the trigger switch 109. By actuating the trigger switch 109, corresponding user inputs for controlling the handheld power tool 100 can be provided.
  • the current measuring device 113 can determine the battery current of the voltage source 111, which is dominated by the motor current of the motor 101.
  • the control usually has a current consumption of less than 200 milliamperes.
  • a low-value resistor or a Hall sensor can be used as the measuring element. With the help of an amplifier circuit and a level adjustment, a current-proportional analog signal can be made available to the computing unit 103 as the controller of the hand-held power tool 100.
  • the setting device 115 can be designed as a rotary potentiometer, a rocker switch or a double switching element.
  • the threshold value required for the automatic function must be implemented in such a way that the user can influence it.
  • the computing unit 101 can comprise a microcontroller with conventional circuitry (voltage regulator, clock source, EMC measures) and communication device (BlueTooth, 4G, WLAN).
  • the microcontroller can comprise an analog-digital converter and digital interfaces to generate or detect the signals of the trigger switch 109, the setting device 115, the current measuring device 113, the supply voltage, the motor speed and the control signals of the motor 101.
  • the microcontroller (not explicitly shown in Fig. 1) can execute the state determination module 107 for carrying out the method according to the invention for controlling the hand-held power tool 100.
  • the hand-held power tool 100 can be designed as a screwdriver, an impact wrench or as a simple cordless screwdriver. Alternatively, the hand-held power tool 100 can be designed as an electric drill, an impact drill, a hammer drill or a drill bit.
  • Fig. 2 shows a further schematic representation of a hand-held power tool 100, in which individual functional sequences of the hand-held power tool 100 are illustrated.
  • Fig. 2 shows a further schematic representation of an embodiment of the hand-held power tool 100 according to the invention.
  • the hand-held power tool 100 comprises the motor 101, the computing unit 105, which is arranged on a circuit board 127, the energy source 109 and the tool 117.
  • the graphical representation shown illustrates some of the functions of the handheld power tool 100. Some of the components of the handheld power tool 100 from Fig. 1 are shown, while other components are not shown in order to keep the representation shown as simple as possible.
  • the handheld power tool 100 shown can, however, include all of the components shown in Fig. 1.
  • a speed sensor 129 by means of which a motor speed of the motor 101 can be measured
  • a vibration sensor 131 by means of which vibrations of the hand-held power tool 100 can be measured
  • an inverter 133 are also installed on the circuit board 127.
  • a user of the handheld power tool 100 can use the trigger switch 109 to transmit user inputs 139 to the computing unit 105 by means of an electrical signal transmission 147.
  • the power of the handheld power tool 100 can be regulated using the user inputs 139, which include, for example, a trigger level of the trigger switch 109.
  • the user inputs 139 can define directions of rotation of the motor 101, which define, for example, a screwing or drilling direction, or operating modes of the handheld power tool 100, which describe, for example, a screwing process with or without an impact function.
  • the computing unit 105 controls the control of the hand-held power tool 100 and outputs corresponding control signals to the inverter 133 via an electrical signal transmission 147.
  • the inverter 133 outputs a corresponding electrical energy transmission 141 to the motor 101.
  • the motor 101 effects a force transmission 135 to the tool 117 via a corresponding force-torque transmission 143, by means of which the workpiece 137 can be machined.
  • the method for controlling a hand-held power tool 100 which is carried out by the computing unit 105, uses measured values of an operating variable on the basis of which operating states of the hand-held power tool 100 are determined.
  • the operating variable can be, for example, the motor current, a motor power, and a speed or torque of the motor 101.
  • the motor speed of the motor 101 is taken into account as the operating variable on the basis of which operating states of the hand-held power tool 100 are determined by the method according to the invention. This is measured by the speed sensor 129 shown, which detects the movement 145 of the motor 101.
  • vibrations/movements 145 of the hand-held power tool 100 or of the tool 117 or of the workpiece 137 are taken into account as an operating variable.
  • the vibrations/movements are measured by the vibration sensor 131.
  • Corresponding measurement signals are forwarded from the speed sensor 129 and the vibration sensor 131 to the computing unit 105 for further processing.
  • the vibration sensor 131 can be designed, for example, as an acceleration sensor.
  • the measured rotational speed or the detected vibrations are analyzed by executing a state determination module 107 and a current operating state of the hand-held power tool 100 is determined. Based on the determined operating state, the control of the hand-held power tool 100 is adapted accordingly.
  • the power transmission 135 of the hand-held power tool 100 can be realized as a direct drive or via a gear.
  • the drive of the hand-held power tool 100 which is only indicated schematically in Figures 1 and 2, can comprise various drive options, such as a percussion mechanism, a hammer mechanism or a chisel mechanism.
  • the transmission of the power of the motor 101 to the drive of the hand-held power tool 100 can be effected via a gear box.
  • This can be designed, for example, as a manual transmission with two, three or more gears.
  • the gear box can be connected to a slip clutch, which in turn has a direct connection to the drive.
  • An alternative solution without a slip clutch, in which the gear box is directly connected to the drive, is also conceivable.
  • the vibrations or movements measured by the vibration sensor 131 can include, for example, movements of the hand-held power tool 100 triggered by the user of the hand-held power tool 100. Furthermore, the movements or vibrations can be caused by the motor or the gear or the drive. Alternatively, the movements or vibrations measured by the vibration sensor 131 can be caused by movements of a bit on a screw head or result from the force exerted by the screw on the workpiece 137 to be machined.
  • Fig. 3 shows temporal courses of an operating variable 119 of a hand-held power tool 100 and of a rotation angle a ro t of a motor 101 of the hand-held power tool 100.
  • a temporal progression of an operating variable 119 of a hand-held power tool 100 is shown.
  • the operating variable 119 describes a motor current of a motor 101 of a hand-held power tool 100.
  • the hand-held power tool 100 is designed as a screwdriver and the progression of the operating variable 119 shown shows the temporal progression of the motor current in a screwdriving case in which a self-tapping screw is screwed into a workpiece 137 made of wood or a comparable material.
  • the temporal progression of the operating variable 119 describes a time series 123, which consists of a plurality of chronologically ordered measured values 121 of the motor current.
  • the measured values 121 were recorded during operation of the hand-held power tool 100, i.e. when screwing the screw into the workpiece, by a corresponding current sensor within the hand-held power tool 100.
  • Graphic a describes a typical course of the motor current I when screwing a self-tapping screw into wood or similar materials.
  • the motor current I represents the torque delivered by the motor 101 through the torque constant with the unit Newton meter per ampere.
  • the torque resulting from the starting current is used to accelerate the rotor of the electric motor 101 at the beginning of the screwing process. This results in the peak of the motor current I that occurs at the beginning of the time series 123. After the rotor starts up, the speed is largely constant, which causes the almost horizontal course of the motor current I.
  • This area in which the start-up peak and then the almost horizontal course of the motor current I is detected, is characterized in graphic a) by the operating state A.
  • this operating state A a large part (over 90%) of the applied torque is converted into actual mechanical work on the screw or the workpiece and the screw is screwed into the workpiece accordingly.
  • two event times 125, 126 are also marked, in which a transition between the operating state A, first to an operating state B and subsequently to a further operating state C takes place.
  • the event time 125 describes the transition from operating state B, in which the screwing of the conical screw head into the workpiece is described, to operating state C, in which the screw head is completely screwed into the workpiece.
  • the event time 125 describes the point at which the screw head is flush with the surface of the workpiece. This point in time is also referred to as the flush point.
  • the point in time marked by the event time 126, at which the conical screw head comes into contact with the surface of the workpiece, is also referred to as the pre-flush point.
  • a flattening curve of the motor current I is shown in operating state C. This can be achieved by shearing off the head or by damage to the material of the workpiece when the screw is further tightened beyond the flush point.
  • Graphic b) shows a temporal progression of a rotation angle a ro t. The temporal progression shows an example of the signal from a rotary encoder.
  • the sensor has a uniqueness range of 360°. This is not necessary; smaller uniqueness ranges are also sufficient. As a rule, the uniqueness range of the sensor can be linked to the speed of the motor 101.
  • Absolute rotation angle information for the entire screwing process from the start (operation of the trigger switch 109 by the user) to the desired shutdown can be obtained from the rotation angle sensor signal using so-called phase unwrapping.
  • knowledge of the continuous rotation of the motor 101 can be used to recognize that the change from plus 180° to, for example, minus 179° actually corresponds to a rotation angle of plus 181 °.
  • rotation times t ro t are also marked. At rotation times t ro t, a complete rotation of the motor 101 has taken place. Knowledge of the rotation times t ro t or the angle of rotation a ro t of the motor 101 can then be used to predict event times 125, 126. When the event time 126 described above is reached, at which the conical screw head rests on the surface of the workpiece, the event time 125 at which the screw is flush with the surface of the workpiece can be predicted with knowledge of the angle of rotation. Graphic b) also shows a rotation angle difference A ro t as a difference between the rotation angles a ro t at the event times 125, 126.
  • Fig. 3 The situation shown in Fig. 3 is intended to illustrate only one possible application of the method according to the invention by way of example.
  • Other applications in which the hand-held power tool 100 is not designed as a screwdriver but, for example, as a drill or chisel or jigsaw are also intended to be covered by the present invention.
  • More or fewer and differently designed operating states (A, B, C) can also be taken into account than those described in this example.
  • the hand-held power tool 100 can be designed as a screwdriver.
  • Possible operating states A, B, C can describe a screw depth of a screw to be screwed in, screwing in a certain screwing mode (impact mode, screwing in/out), work efficiency, a defined torque, a choice of the screw used or a kickback at high torques.
  • the hand-held power tool 100 can be designed as a drill.
  • the operating states A, B, C can describe a drilling mode (impact drilling, etc.), an alignment of the hand-held power tool 100 to a surface of a workpiece to be machined, a type of insert tool (metal, wood, stone drill), a drilling depth, an alignment of the hand-held power tool 100 relative to a predetermined drilling location, drilling of cables or pipes, knocking out of a drill hole, the occurrence of drilling dust or a kickback when the hand-held power tool 100 suddenly tightens.
  • the handheld power tool 100 can be designed as an impact drill or a hammer drill.
  • the operating states A, B, C can describe an operating mode, a work progress, a risk of damage, vibrations and noise or a lack of contact pressure.
  • the hand-held power tool 100 can be designed as a chisel. Possible operating states A, B, C can describe an incorrect tool insert, an effective position of the hand-held power tool 100 or a work progress.
  • possible operating states A, B, C can include aspects of occupational safety/comfort such as vibration/noise development, vibration monitoring, torque control with regard to maximum torques, simple control of the hand-held power tool 100, correct clamping of a tool in the hand-held power tool 100 or recognition of situations such as falling from a ladder, drilling into cables or pipes.
  • the stated operating states A, B, C or similar operating states that can occur during operation of a hand-held power tool 100 can be determined based on measured values 121 of an operating variable 119 during operation of the hand-held power tool 100.
  • the operating variable 119 can include, for example, the motor current I or a motor position angle, a motor rotational speed, a voltage of a voltage source, movements and/or vibrations within the hand-held power tool (100) or similar measurable parameters of the hand-held power tool 100.
  • Fig. 4 shows a schematic representation of a hand-held power tool 100 according to an embodiment, wherein the hand-held power tool 100 is shown in different operating states A, B, C.
  • Fig. 4 graphically describes the operating states A, B, C of the hand-held power tool 100 described in Fig. 3.
  • the hand-held power tool 100 is again designed as a screwdriver and the operating states A, B, C describe the screwing process in which a screw 169 is screwed into a workpiece 137.
  • the screw 169 can be a self-tapping screw, for example, and the workpiece 137 can be made of wood.
  • the hand-held power tool 100 also has a screw bit 168 for this purpose.
  • Graphic a shows the operating state A, in which the screw 169 is screwed into the workpiece 137.
  • Graphic b) describes the operating state B, which is characterized in that the conical screw head 170 is adjacent to the surface 167 of the workpiece 137 and is subsequently screwed into the workpiece 137.
  • Graphic c) describes the operating state C, which is characterized by the screw 169 being flush with the surface 167 of the workpiece 137 and thus the flush point being reached.
  • graphic a) of Figure 3 shows the time course of the motor current of the motor 101 of the hand-held power tool 100 in the various operating states A, B, C during the screwing of the screw 169 into the workpiece 137.
  • the operating state C which is characterized by the closure of the screw head 170 with the surface 167, shows in graphic 3 a flattening course of the motor current I, which can be caused by the destruction of the screw or a destruction of the workpiece 137.
  • the handheld power tool 100 also has an external sensor 171.
  • the external sensor 171 is designed as a camera sensor and enables the recording of camera data by means of which the screwing process of screwing the screw 169 into the workpiece 137 can be mapped.
  • the corresponding camera data can be used for training the state determination module 107 or an artificial intelligence 149 of the state determination module 107, as will be described in more detail in the following figures.
  • Fig. 5 shows a schematic representation of a drive control 197 of the hand-held power tool 100 according to an embodiment.
  • Fig. 5 shows a control chain of the hand-held power tool 100.
  • control chain comprises an inner control loop 193 and an outer control loop 191.
  • the inner control loop 193 serves to control the drive of the hand-held power tool 100 based on the user inputs 173 of the user.
  • user inputs 173 are first made by the user. This can be done, for example, by actuating the trigger switch 109. This can be used to define initial target values of a control parameter of the handheld power tool 100 through the user input of the user.
  • the control parameter can include, for example, a motor speed, a motor power, a torque defined by the motor speed.
  • the control parameter can include a direction of rotation, such as when screwing in or unscrewing a screw, or an operating mode, such as the impact mode or the hammer mode.
  • the user inputs 173 describe values of the control parameter.
  • the sensor measurements 175 of the operating variable 119 can include measurements of the motor current, the motor speed, the motor power, vibrations of the motor or the hand-held power tool 100 or other meaningful operating variables by means of which a determination of an operating state A, B, C is possible.
  • the first target values of the user inputs 173 and the actual values of the sensor measurements 175 of the control parameter are transmitted to the inner control loop 193 by performing a digital signal preprocessing 177.
  • the inner control circuit 193 outputs corresponding control signals to the actuators 195 for controlling the hand-held power tool 100.
  • the outer control loop 191 is now used to take into account an operating state A, B, C in which the hand-held power tool 100 is during operation when controlling the hand-held power tool 100.
  • the first target values of the control parameter of the user input 173 and in particular the actual values of the sensor measurements 175 of the control parameter are subjected to a model inference 183 after digital signal preprocessing 197.
  • the model inference 183 the already described embodiment of the state determination module 107 takes effect.
  • the state determination module 107 is set up to recognize an operating state A, B, C in which the hand-held power tool 100 is located based on the sensor measurements 175 or the corresponding sensor data of the control parameter.
  • the state determination module 107 can be set up to predict an event time 125, 126 at which a transition between different operating states A, B, C of the hand-held power tool 100 takes place based on the sensor data of the sensor measurements 175 of the operating variable 119.
  • the state determination module 107 implemented in the model inference 183 can be designed as a correspondingly trained artificial intelligence that is trained to determine operating states A, B, C or to predict event times 125, 126 based on measured values of an operating variable 119.
  • the information determined by the state determination module 107 in the form of the model inference 183 regarding the present operating states A, B, C or predicted event times 125, 126 are provided to the outer control loop 191 after post-processing 187.
  • the outer control loop 191 is then set up to define corresponding second target values for the control parameter based on the information from the model inference 183 regarding the current operating states A, B, C or the predicted event times 125, 126.
  • the second target values for the control parameter defined by the outer control loop 191 are coordinated with the respective current operating state A, B, C or the corresponding predicted event times 125, 126.
  • the control of the hand-held power tool 100 can be optimally adapted to the respective current operating state A, B, C or the corresponding predicted event times 125, 126.
  • the second target value for the control parameter generated by the control loop 191 is subsequently provided to the inner control loop 193.
  • the inner control loop 193 is now configured to calculate an output target value taking into account the first target value for the control parameter provided by the user in the user input 173 and the further second target value for the control parameter provided by the outer control loop 191 taking into account the current operating state A, B, C or the predicted event time 125, 126, and to control the actuators 195 of the handheld power tool 100 based on the output target value.
  • the output target value can be determined by the inner control loop 193, for example, as a product of the first target value of the user input 173 and the second target value of the outer control loop 191.
  • the first target value of the useful input 173 can thus be sensitized by the second target value of the outer control loop 191, which was determined in relation to the current operating state A, B, C or the predicted event time 125, 126, i.e. adapted to the respective operating state A, B, C or expected event time 125, 126.
  • the output target value can be defined as a minimum value or maximum value of the first and second target values. In this way, the output target can be defined as the value of the first and second target values that best fits the respectively determined operating state A, B, C.
  • the output target value can be defined by the first target value of the user input 173 if the second target value of the outer control loop 191 is smaller than a predefined threshold value, and defined as a predefined target value if the second target value is greater than or equal to the predefined threshold value.
  • the predefined target value can be given as a constant value of the control parameter, which was adapted, for example, to the respective operating state A, B, C or previous event time 125, 126 when the hand-held power tool 100 was preset.
  • the predefined threshold value can, for example, be adapted empirically by appropriate measurements to the respective operating states A, B, C and possible second target values.
  • the output target value can be defined as a product of the first target value of the user input 173 with a first predefined target value if the second target value of the outer control loop 191 is less than a predefined threshold value, and as a product of the first target value of the user input 173 and a second predefined target value if the second target value of the outer control loop 191 is greater than or equal to the predefined threshold value.
  • the first target value of the user input 173 can thus be in the form of the first and second predefined target values, which are each defined as constant values of the control parameter and are based on the can be adapted to the respective existing operating states or expected event times, can be sensitized or adapted to the respective existing operating state A, B, C or expected event time 125, 126.
  • the first and second predefined target values and predefined threshold values can in turn be determined empirically for possible operating states A, B, C.
  • the hand-held power tool 100 can thus be controlled taking into account the user input 173 made by the user of the hand-held power tool 100 and the corresponding first target value of the control parameter and taking into account the second target value of the control parameter determined in relation to the current operating state A, B, C or the expected event time 125, 126.
  • the control parameter can be, for example, a rotational speed of the motor 101 of the hand-held power tool 100.
  • the user input 173 may, for example, include signals from the trigger switch 109 actuated by the user, by means of which the respective first target value of the engine speed is defined.
  • the operating variable 119 determined in the sensor measurements 175 can, for example, be given by the motor current I of the motor 101 of the hand-held power tool 100.
  • the state determination module 107 which is applied to the measured values of the motor current I according to the model inference 183, can be set up accordingly to determine the various operating states A, B, C based on the motor current I, according to the graph A of Figure 3. Furthermore, the state determination module 107 can be set up to predict the respective event times 125, 126 based on the measured values 121.
  • the hand-held power tool 100 is designed as a screwdriver and a screw 169 is screwed into a workpiece 137 by means of this.
  • the user input 173 based on the actuation of the trigger switch 109 can, for example, define a correspondingly high value for the motor speed as the first target value.
  • the state determination module 107 determines, however, that the hand-held power tool 100 is already in operating state C of graphic 3, in which the flush point has already been reached and the screw head 170 is in contact with the surface 167 of the workpiece 137. Based on this, the outer control loop 191 calculates a significantly lower value for the motor speed as the second target value in order to prevent damage to the screw or the workpiece 137, which would be feared at the high motor speed of the user input 173.
  • the obviously too high target value for the motor speed of the user input 173 can be reduced by the much lower second target value for the motor speed calculated by the outer control loop 191, in order to control the hand-held power tool 100 in accordance with the current operating state C and, if necessary, to switch it off.
  • the second target value as well as the first and second predefined
  • Target values take the numerical value 0.
  • the output target value can also be the numerical value 0, whereby the hand tool 100 can be brought to a standstill.
  • the model inference information 183 may further be displayed in a status display 189.
  • model inference can be subjected to a reset process in which the model executions are reset to an initial value. This can be done, for example, during separate screwing processes.
  • state determination module 107 can be reset for each new screwing process in which an individual screw is screwed into or unscrewed from a workpiece 137.
  • a reset can also be carried out when the hand-held power tool 100 is switched on or off.
  • a reset preprocessing 181 is first carried out based on the sensor measurements 175 and a reset decision 185 is made based on this.
  • the reset decision 185 can also be made taking into account the results of the model inference 183.
  • model inference 183 and post-processing 187 can be provided in digital or quasi-analog form.
  • Fig. 6 shows a flow chart of a method 200 for controlling a handheld power tool 100 according to an embodiment.
  • sensor data of at least one operating variable 119 of the handheld power tool 100 are first received in a first method step 201.
  • the operating variable 119 can include, for example, a motor current, a motor position angle, a motor rotational speed, a voltage of a voltage source, measured values of a movement or vibration of the handheld power tool 100, or similar parameters from which an operating state A, B, C of the handheld power tool 100 can be determined.
  • an input value for a control parameter of the handheld power tool 100 is received based on a user input 173 of a user of the handheld power tool 100.
  • the control parameter can include, for example, a motor speed, a motor current, a motor power, an actuation of the trigger switch 109, an input regarding an operating mode, for example switching on or turning on the impact mode or chisel mode, a direction of rotation of the motor 101, for example for screwing in or unscrewing a screw 169, or similar control parameters.
  • a first target value of the control parameter is determined based on the sensor data of the operating variable 119 and the input value of the user input 173 regarding the control parameter.
  • a state determination module 107 is executed and applied to the sensor data of the operating variable 119.
  • an operating state A, B, C of the hand-held power tool 100 is determined. Determining the operating state can include predicting an event time 125, 126 at which a transition between two operating states A, B, C takes place.
  • the operating states A, B, C can include load ranges in which the hand-held power tool 100 is operated, strengths of vibrations or movements of the hand-held power tool 100 and/or the workpiece 167 to be machined, temperatures within the hand-held power tool 100 and/or on the workpiece 167, various operating modes in which the hand-held power tool 100 is operated, work progress of the hand-held power tool 100, materials of the workpiece 137 to be machined or, for example, the already described presence of a positive connection between the hand-held power tool 100 and the machined workpiece 137, in which a flat end of a screw head 170 of a screw 169 to be screwed in with a surface 167 of the workpiece 137 is present.
  • other and additional operating states of the hand-held power tool 100 are conceivable, which can be detected by analyzing the measurable operating variables 119 of the hand-held power tool 100.
  • the hand-held power tool 100 is controlled based on the first target value of the user input 173 and taking into account the determined operating state A, B, C in which the hand-held power tool 100 is located.
  • the first target value of the control parameter of the user input 173 can be adapted to the current operating state A, B, C in order to achieve a control adapted to the respective current operating state A, B, C.
  • the control 209 may include, for example, adjusting an engine speed, an engine torque or another control parameter.
  • Fig. 7 shows a further flow chart of the method 200 for controlling a hand-held power tool 100 according to a further embodiment.
  • the embodiment in Fig. 7 is based on the embodiment in Fig. 6 and the method 100 includes all method steps shown there.
  • a method step 211 is first carried out to control 209 the hand-held power tool 100.
  • a second target value of the control parameter is determined based on the determined operating state A, B, C or predicted event time 125, 126 of the hand-held power tool 100.
  • the determination of the second target value can be carried out by the external control loop 191.
  • the determination of the second target value can include a calculation of the second target value in which a corresponding second target value is calculated during execution and upon recognition of the respective operating state A, B, C or upon prediction of the expected event time 125, 126.
  • the determination can involve reading out a corresponding second target value from a look- Up table in which suitable second target values are pre-stored for various possible operating states A, B, C or predicted event times 125, 126.
  • the state determination module 107 can also be set up to determine appropriately adjusted second target values of the control parameter based on the determined operating state A, B, C.
  • an output target value of the control parameter is determined based on the first target value and the second target value.
  • the determination of the output target value is effected by the inner control loop 193.
  • the determination can in turn comprise calculating a corresponding output target value based on the first and second target values.
  • a corresponding output target value can be read out from a look-up table pre-stored for this purpose.
  • the state determination module 107 can in turn be set up to determine the output target value of the control parameter based on the first and second target values.
  • the output target value is output to an actuator 195 of the drive control 197 of the hand-held power tool 100 for controlling the hand-held power tool 100.
  • Fig. 8 shows another flow chart of the method 200 for controlling a handheld power tool 100 according to another embodiment.
  • the embodiment shown is based on the embodiment in Fig. 7 and includes all method steps described there.
  • determining 207 the operating state A, B, C further comprises predicting 225 an event time 125, 126 at which a transition between different operating states A, B, C occurs. Furthermore, determining 213 the output target value comprises a method step 217. In method step 225, the output target value is defined as a minimum value or a maximum value of the first and second target values.
  • method step 213 includes a method step 219.
  • the output target value is defined as the first target value if the second target value is less than a predefined threshold value. If the second target value is greater than or equal to the predefined threshold value, the output target value is defined as a predefined target value.
  • the output target value is defined as a product between the first and second target values.
  • the output target value is defined as a product between the first target value and a first predefined target value if the second target value is less than a predefined threshold value. If the second target value is greater than or equal to the predefined threshold value, the output target value is defined as a product between the first target value and a second predefined target value.
  • the predefined target values can be designed as constant values of the control parameter and can be pre-stored.
  • the corresponding threshold values can also be pre-stored.
  • the defined target values as well as the predefined threshold values can be optimized for optimized operation of the hand-held power tool 100 for the respective operating states A, B, C or preceding event times 125, 126.
  • the determination 213 of the output target value in the embodiment shown is effected by the inner control loop 193.
  • the predefined target values as well as the second target value, which is determined by the outer control loop 191, can assume the numerical value 0. This can cause the hand-held power tool 100 to be switched off, depending on the choice of control parameter.
  • an adjustment of the first target value of the control parameter which is based on the user input 173 by the user, can be adapted to the respective existing operating state A, B, C or the expected event time 125, 126.
  • Fig. 9 shows a schematic representation of an artificial intelligence 149 that is configured to be used in a controller of the handheld power tool 100.
  • the state determination module 107 can comprise a correspondingly trained artificial intelligence 149, which is trained to determine existing operating states A, B, C or to predict event times 125, 126 based on measured values of the operating variable 119.
  • the state determination module 107 can also be designed to determine second target values or output target values.
  • Fig. 9 shows an embodiment of such an artificial intelligence 149, which can be used to determine operating states A, B, C or to predict event times 125, 126.
  • the artificial intelligence 149 is designed as an artificial neural network and in particular as a long-short-term memory LSTM network.
  • the artificial neural network comprises an input layer 153 for receiving input data 151.
  • the input data can comprise the sensor data of the operating variable 119 in a correspondingly preprocessed form.
  • the artificial neural network comprises two dense layers 155 and two pooling layers 157, which are arranged one after the other in alternating form.
  • the artificial neural network comprises two long-short-term Memory layer 159 between which a dropout layer 161 is arranged.
  • the artificial neural network further comprises two density layers and an output layer 163.
  • downsampling 164 is first performed by the input layer 153, the first two dense layers 155 and the two pooling layers 157.
  • the two following LSTM layers 159 and the intermediate dropout layer 161 effect feature extraction 165.
  • the last two dense layers 155 and the output layer 163 enable prediction 166.
  • the artificial intelligence 149 used can also be structured in a different model architecture that is able to carry out a regression or classification based on a time series 123 of measured values 121 of the operating variable 119.
  • a Tensorflow/Keras model with the architecture shown below can be used.
  • the model can first be converted into the Tensorflow-Lite format, which in turn can be translated into C code for the microcontroller using a TVM converter.
  • the three input channels can be, for example, the motor current I of the motor 101, the trigger voltage of the trigger switch 109 and the motor revolutions per second.
  • the architecture used can be structured as follows:
  • trainable parameters 7,801 non-trainable parameters: 0
  • the first dense layer 155 may be formed with a 6X8 kernel and an 8 bias.
  • the second dense layer 155 may be formed with an 8X16 kernel and a 16 bias.
  • the first LSTM layer 159 may be formed with a 16X128 kernel, a 32X128 recurrent kernel and a 128 bias.
  • the second LSTM layer 159 may be formed with a 32X32 kernel, an 8X32 recurrent kernel and a 32 bias.
  • the third dense layer 155 may be formed with an 8X4 kernel and a 4 bias.
  • the fourth dense layer 155 may be formed with a 4X1 kernel and a 1 bias.
  • the dense layer 155 and the LSTM layer 159 can be designed with a TanH activation function.
  • Fig. 10 shows a flowchart of a method 300 for generating a training data set for training an artificial intelligence 149 according to an embodiment.
  • a training data set is first generated according to the invention.
  • a plurality of measured values 121 of the operating variable 119 of the hand-held power tool 100 provided.
  • the measured values 121 each have time stamps that define the times at which the measured values 121 were recorded.
  • the measured values 121 can be recorded during operation of the hand-held power tool 100.
  • the measured values 121 can be recorded during operation of a plurality of different hand-held power tools 100 of the same type.
  • the measured values 121 of the operating variable 123 can be recorded by the plurality of different hand-held power tools 100 and transmitted, for example, to a server architecture provided for generating a training data set. This can carry out appropriate processing of the measured data and archiving of the measured data in order to generate a corresponding training data set based on this.
  • an event time 125 is identified within the plurality of measurement data 121 at which an operating state transition between two operating states A, B, C occurs.
  • the identification of the event time 125 is carried out based on the time stamps of the individual measured values 121.
  • the measured values 121 are provided with label values that are suitable for assigning the respective measured value to an operating state A, B, C or for identifying it with the respective event time 125, 126.
  • the label values can be provided, for example, by algorithms for labeling training data for artificial intelligence 149 that are provided for this purpose and are known from the state of the art.
  • the measured values 121 can be labeled manually by appropriately trained personnel.
  • the measured values automatically labeled by algorithm can be checked by appropriately trained personnel for correct and error-free labeling.
  • the labeled measured values 121 of the operating variable 119 are arranged in a time series 123. This is done based on on the time stamps.
  • the time series 123 describes a temporal arrangement of the labeled measured values 121 according to the time stamps.
  • a consolidation of the majority of existing labels can be carried out. This can be done in particular based on statistical criteria. For example, by calculating a median of the event time from several manual and automatic sources, a more robust label for the actual event time can be created, whereby a higher accuracy of the time label can be achieved.
  • the time series 123 of the labeled measured values 121 of the operating variable 119 is provided as a corresponding training data set.
  • Fig. 11 shows another flowchart of a method 300 for generating a training data set for training an artificial intelligence 149 according to another embodiment.
  • the embodiment shown is based on the embodiment in Fig. 10 and includes all method steps described there.
  • a rotation angle a ro t of the motor 101 of the handheld power tool 100 is first determined in a method step 211 for each measured value 121 of the operating variable 119.
  • the rotation angles a ro t of the motor 101 are measured by corresponding rotation angle sensors 129 and assigned to the measured values 121 based on the time stamps.
  • the rotation angles a ro t of the motor 101 describe the rotation angle that the motor 101 had at the time the respective measured value 121 of the operating variable 119 was recorded.
  • a rotation time t ro t is determined for each measured value 121 of the operating variable 119, taking into account a rotation time required to complete a complete revolution of the motor 101. Time period and taking into account the time stamp of the respective measured value 121.
  • the rotation time t ro t describes the time at which a complete rotation of the motor 101 has taken place, starting from the angle of rotation a ro t of the respective measured value 121.
  • the identification 303 of the event time 125, 126 further comprises the method step 315.
  • sensor data from an external sensor 171 is received.
  • the sensor data from the external sensor 171 maps the operating state A, B, C of the handheld power tool 100.
  • the external sensor 171 can be designed as a camera sensor, for example.
  • the camera data from the camera sensor can be used to map the operating state A, B, C in which the handheld power tool 100 was at the time the measured values 121 of the operating variable 119 were recorded.
  • the work progress of the process of screwing the screw 169 into the workpiece 137 can be mapped or tracked via the camera sensor 171, which is designed, for example, on the handheld power tool 100.
  • the event time 125, 126 is determined within a time series of the sensor data of the external sensor 171.
  • the sensor data of the external sensor 171 are arranged in a time series according to their time stamps.
  • the exact time can be identified at which, for example, the level connection of the screw head 170 with the surface 167 of the workpiece 137 occurred, as is indicated in Figure 4 in the operating state C.
  • the corresponding time stamps of the recorded image data of the camera sensor 171 can thus be used to determine the exact time of the event time 125 within the time series of the image data at which the transition between the operating states B and C shown in Figure 4 occurred and thus the level connection between the screw head 170 of the screw 169 and the surface 167 of the workpiece 137 was achieved.
  • the time series 123 of the measured values 121 of the operating variable 119 is synchronized with the time series 123 of the sensor data of the external sensor 171 via the respective time stamps of the measured values 121 or the sensor data of the external sensor 171.
  • the event time 125, 126 in the time range 123 of the measured values 121 of the operating variable 119 is identified based on the event time 125, 126 identified in the time series of the sensor data of the external sensor 171.
  • each measured value 121 of the operating variable 119 can be assigned a simultaneously recorded image date or sensor date of the external camera sensor 171.
  • the various operating states A, B, C or the various event times 125, 126 which are described, for example, in Fig. 4 by screwing the screw 169 into the workpiece 137, screwing the screw head 170 into the workpiece 137 and the conical screw head 170 coming into flush contact with the surface 167 of the workpiece 137, can be determined precisely.
  • each measured value 121 can be assigned to an operating state of the handheld power tool 100.
  • the measured values 121 of the operating variable 119 can be precisely assigned to the various operating states A, B, C.
  • measured values 121 of the operating variable 119 can be precisely labeled and assigned to clearly defined operating states via the corresponding labels. This can also be done in particular for operating variables 119 whose course does not clearly reveal the various operating states A, B, C or the present event times 125, 126.
  • the measured values 121 of the time range 123 of the course of the motor current I of the graph A of Figure 3 can be determined exactly, the respective course of the motor current I shown in graph A of Figure 3 does not explicitly show such different operating states A, B, C or event times 125, 126.
  • further steps can be taken to generate the training data set.
  • the recorded measured values 121 of the operating variable 119 or the sensor data of the external sensor 171 can be converted into standard units.
  • the measured values of the angle of rotation a ro t can be pre-cleaned.
  • the possibility of an overflow of the Hall sensor data can be taken into account with regard to the data type Unit 16 used.
  • recorded angles of rotation a ro t for which an overflow can occur due to continuous operation and data type, can be corrected to a continuous range of values.
  • This can advantageously be achieved by shifting the angle values to the initial value zero, whereby the angle of rotation at any time reflects the angular progress compared to the starting point (e.g. of the screwing process).
  • the time series 123 of the measured values 121 of the operating variable 119 as well as the time series of the sensor data of the external sensor 171 can be shortened to the time ranges in which the hand-held power tool 100 is actually operated. According to the embodiment shown in Fig. 4, the time series can be restricted to the actual screwing case in which the screw 169 is actually screwed into the workpiece 137.
  • Measured values that were recorded before the start of the screwing process and after the end of the screwing process can be removed from the time series.
  • all data before or after a specified time before or after the labeled event time 125, 126 can be removed in order to shorten the time series 123 and reduce the amount of data.
  • the acquisition rate of the measured values or sensor data can be scaled down.
  • the recorded measured values or sensor data can be filtered.
  • feature extraction can be performed to obtain derived sensor signals, such as acceleration vector lengths, angular rate vector lengths from a gyroscope, motor revolutions per second.
  • training data set can be divided into training data and validation data or test data, as is common in machine learning.
  • the division can be as follows, for example: 70% training data, 20% test data and 10% validation data.
  • stratified split When dividing the data into training, validation and test data, a so-called stratified split can be performed.
  • a different split can be used advantageously, in particular by using only certain operating ranges for training and others for validation or testing.
  • the achievement of the The desired generalization is indicated by the fact that the accuracy of the function on the test data set is only slightly worse than the accuracy of the function in the test data set with a stratified split.
  • Suitable operating parameters include screw lengths, speed, screw diameter, type and hardness of the wood, and other application parameters.
  • Normalization parameters can also be calculated. For example, a min-max scaling method (parameters per signal: minimum, maximum) or a standardization method (parameters per signal: mean and standard deviation) can be used. The parameters can be calculated exclusively using the training data set. It is important to ensure that the normalization parameters are not distorted depending on the selected padding.
  • the training data can be cut together to a uniform length. This is necessary because the input data of the artificial intelligence must have a uniform data format. In this case, it can also be taken into account whether the data padded in this way has a 0 in all signals, or whether they represent a copy of the first (start padding) or last (end padding) real data.
  • test data set on the other hand, can be used unpadded, although typically no result can be calculated for the last samples.
  • augmentation techniques can be used to generate new data that essentially correspond to real data. For example, new time series of data from company size 119 can be generated.
  • a normalization can be performed based on the previously calculated normalization parameters (standardization or mini-max scaling).
  • the external sensor 271 can also be designed as a microphone, for example. Several external sensors can also be used.
  • the data acquisition can be recorded on different devices, for example a microcontroller and a Raspberry Pi.
  • the data of both the operating variable 119 and the data of the external sensor on the handheld power tool 100 can be recorded and transferred to the external server architecture. Due to the different sampling rates between the various sensors 171 and the sensors for recording the operating variable 119, preprocessing of the recorded data may be necessary. In particular, metadata can be checked here.
  • the labeling of the measured values 121 can be carried out as an event label in which each measured value 121 is assigned a corresponding point in time. Alternatively or additionally, a state labeling can be carried out in which each measured value 121 is assigned a corresponding time range. Furthermore, the measured values 121 of the operating variable 119 and/or the sensor data of the external sensor 171 can be subjected to a sanity check in which the accuracy of the respective data is checked.
  • Fig. 12 shows a flowchart of a method 400 for training an artificial intelligence 149.
  • a training data set generated according to the method 300 according to one of the embodiments described above is first provided in a method step 401.
  • the training of the artificial intelligence 149 is carried out to determine an operating state A, B, C and/or to predict an event time 125, 126 of a handheld power tool 100 based on the training data set.
  • the training can be carried out in accordance with the training methods known from the prior art.
  • a batch size of 16 has proven to be advantageous for training the model architecture of the artificial intelligence of the embodiment described in Figure 9.
  • the Adam algorithm can lead to satisfactory results. Specifically for the application case discussed here, a relatively low learning rate of 0.0001 is sufficient. As a result, a comparatively high number of training epochs is required. Typically, no upper limit for the number of epochs needs to be defined in advance, and training can only be terminated when it is determined with the help of the validation data set that no further improvement of the model can be achieved over a longer period of time (so-called early stopping). In a batch size that is suitable for the application case discussed here, In the training setting advantageous for this use case, this “longer time” is defined as 300 epochs.
  • MSE mean squared error
  • the area around a critical point can be used to train the rough behavior of the model.
  • Only in a further step is the entire time series then used to train the model behavior in the more distant temporal areas.
  • This approach is particularly advantageous because it reduces the probability of obtaining a non-optimal training result.
  • a range of 0.1s to 10s before and after the event time can be used, with 0.5s proving to be particularly suitable for the application discussed here.
  • test data set has undergone the same preprocessing steps that are also carried out on the microcontroller at inference time. These include, as described above: conversion to SI units, calculation of revolutions per second on Based on the Hall sensor signal, normalization based on the normalization parameters determined on the training data set.
  • the trigger time is considered to be the time within the prediction time series at which a set threshold is exceeded for the first time. This can be 0, but also closer to -1 or 1 in order to adjust the trigger sensitivity.
  • the threshold value can either be set before delivery (advantage: uniform behavior) or can be kept adaptable in the application, e.g. using an adjustment controller. This has the advantage that a more suitable behavior can be selected for different situations.
  • a typical fixed threshold value is between 0 and -1, which means that an earlier triggering is achieved and delays that occur due to processing and the inertia of the machine can be compensated.
  • -0.85 has proven to be a particularly suitable value in order to achieve increased sensitivity with an acceptable probability of false triggering.
  • the MSE of the loss plays a minor role, since for real-world use it is less the precise prediction for the entire time series that is important, but rather the time of triggering. However, it has been shown that the MSE mostly correlates with the application-related metrics.
  • a plurality of combinations of a screw type of the screw 169 and a material type of the respective workpiece 137 can be taken into account for the training of the artificial intelligence 149 of the state determination module 107.
  • Various parameters can be taken into account which influence the quality of the training of the artificial intelligence 149 and its later performance in determining the operating conditions. These include in particular the material (e.g. type of wood), length/diameter/pitch/thread type of the screw, speed when screwing, and user influences such as tilting and pressure applied. Since it is practically impossible to record data for every conceivable combination, and in sufficient quantities at that, it is advantageous to use selected combinations of different common screw types with a selection of materials of different hardness.
  • the information about the screw-material combination used can be stored in the form of metadata and used in training. In general, it is important to ensure that a sufficient number of recordings are made for each combination (at least 25, preferably more). It is also advantageous if no combination uses significantly more screw connections than other combinations, in order to ultimately obtain a balanced data basis for the AI training.
  • the following provides an example of possible screw-wood combinations for the application case “screwing into wood”.
  • the state determination module 107 can also comprise a differently designed artificial intelligence 149 or a plurality of artificial intelligences 149.
  • the state determination module 107 can comprise a differently designed artificial neural network, for example a temporal convolutional network or a covolutional network.
  • the state determination module 107 can also comprise models such as decision tress or ensemble models.
  • the state determination module 107 can be designed and configured in particular as a classifier to carry out a classification of the individual measured values 121 of the operating variable 119 of the time series 123, to assign the individual measured values 121 of the operating variable 119 to corresponding operating states A, B, C and thereby to determine or predict the event times 125, 126.
  • the measured values 121 of the operating variable 119 can be processed by the state determination module 107 during operation of the hand-held power tool 100 according to a sliding window and assigned to corresponding operating states A, B, C according to the classification. According to a Sliding Window, the time series 123 of the recorded measured values 121 are thus analyzed by the state determination module 107 and thereby the operating states A, B, C are determined or the event times 125, 126 are predicted.
  • Fig. 13 shows a schematic representation of a computer program product 500, comprising instructions which, when the program is executed by a data processing unit, cause the data processing unit to execute the method 200 for controlling a hand-held power tool 100 according to one of the preceding embodiments and/or the method 300 for generating a training data set according to one of the preceding embodiments and/or the method 400 for training an artificial intelligence 149 and/or the artificial intelligence 149.
  • the computer program product 500 is stored on a storage medium 501.
  • the storage medium 501 can be any storage medium known from the prior art.

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Control Of Electric Motors In General (AREA)

Abstract

Die Erfindung betrifft ein Verfahren (200) zum Steuern einer Handwerkzeugmaschine (100), umfassend: Empfangen (201) von Sensordaten wenigstens einer Betriebsgröße (119) der Handwerkzeugmaschine (100); Empfangen (203) eines auf einer Nutzereingabe eines Nutzers der Handwerkzeugmaschine (100) basierenden Eingabewerts für einen Steuerungsparameter der Handwerkzeugmaschine (100); Ermitteln (205) eines ersten Zielwerts des Steuerungsparameters basierend auf den Sensordaten und dem Eingabewert; Ausführen (207) eines Zustandsbestimmungsmoduls (107) auf die Sensordaten und Ermitteln eines Betriebszustands (A, B, C) der Handwerkzeugmaschine (100); und Steuern (209) der Handwerkzeugmaschine (100) basierend auf dem ersten Zielwert des Steuerungsparameters und dem ermittelten Betriebszustand (A, B, C).

Description

Beschreibung
Titel
Verfahren zum Steuern einer Handwerkzeugmaschine und Handwerkzeugmaschine
Die Erfindung betrifft ein Verfahren zum Steuern einer Handwerkzeugmaschine. Die Erfindung betrifft ferner eine entsprechende Handwerkzeugmaschine, die eingerichtet ist, das Verfahren auszuführen.
Stand der Technik
Aus dem Stand der Technik sind Verfahren zum Steuern von Handwerkzeugmaschinen bekannt.
Es ist eine Aufgabe der Erfindung, ein verbessertes Verfahren zum Steuern einer Handwerkzeugmaschine und eine Handwerkzeugmaschine bereitzustellen.
Diese Aufgabe wird durch das Verfahren zum Steuern einer Handwerkzeugmaschine und die Handwerkzeugmaschine der unabhängigen Ansprüche gelöst. Vorteilhafte Ausgestaltungen sind Gegenstand der untergeordneten Ansprüche.
Nach einem Aspekt der Erfindung wird ein Verfahren zum Steuern einer Handwerkzeugmaschine bereitgestellt, umfassend:
Empfangen von Sensordaten wenigstens einer Betriebsgröße der Handwerkzeugmaschine; Empfangen eines auf einer Nutzereingabe eines Nutzers der Handwerkzeugmaschine basierenden Eingabewerts für einen Steuerungsparameter der Handwerkzeugmaschine;
Ermitteln eines ersten Zielwerts des Steuerungsparameters basierend auf den Sensordaten und dem Eingabewert;
Ausführen eines Zustandsbestimmungsmoduls und Anwenden des Zustandsbestimmungsmoduls auf die Sensordaten und Ermitteln eines Betriebszustands der Handwerkzeugmaschine; und
Steuern der Handwerkzeugmaschine basierend auf dem ersten Zielwert des Steuerungsparameters und dem ermittelten Betriebszustand.
Hierdurch kann der technische Vorteil erreicht werden, dass ein verbessertes Verfahren zum Steuern einer Handwerkzeugmaschine bereitgestellt werden kann, bei dem neben einer Nutzereingabe eines Nutzers der Handwerkzeugmaschine ferner ein während des Betriebs der Handwerkzeugmaschine ermittelter Betriebszustand bei der Steuerung der Handwerkzeugmaschine berücksichtigt wird. Hierzu wird basierend auf Sensordaten wenigstens einer Betriebsgröße der Handwerkzeugmaschine durch Ausführen eines Zustandsbestimmungsmoduls auf die Sensordaten ein Betriebszustand der Handwerkzeugmaschine ermittelt. Die Steuerung der Handwerkzeugmaschine wird nun unter Berücksichtigung des ermittelten Betriebszustands bewirkt. Gemäß verschiedenen Ausführungsformen kann die Steuerung der Handwerkzeugmaschine exakt auf den vorliegenden Betriebszustand angepasst werden. Hierbei kann die Steuerung auch unabhängig von der Nutzereingabe des Nutzers erfolgen. Beispielsweise kann die Nutzereingabe an den vorliegenden Betriebszustand angepasst werden, sodass eine dem Betriebszustand adäquate Steuerung der Handwerkzeugmaschine ermöglicht ist, selbst wenn die Eingabe des Nutzers eine andere nicht zum Betriebszustand passende Steuerung bewirken würde.
Nach einer Ausführungsform umfasst das Steuern der Handwerkzeugmaschine umfasst:
Ermitteln eines zweiten Zielwerts des Steuerungsparameters basierend auf dem ermittelten Betriebszustand der Handwerkzeugmaschine; Ermitteln eines Ausgabezielwerts des Steuerungsparameters basierend auf dem ersten Zielwert und dem zweiten Zielwert; und Ausgeben des Ausgabezielwerts an eine Aktorik der Handwerkzeugmaschine zum Steuern der Handwerkzeugmaschine.
Hierdurch kann der technische Vorteil erreicht werden, dass die Steuerung der Handwerkzeugmaschine exakt an den vorliegenden Betriebszustand angepasst wird. Hierzu wird die Steuerung der Handwerkzeugmaschine basierend auf ersten und zweiten Zielwerten eines Steuerungsparameters bewirkt. Der erste Zielwert basiert hierbei auf einer Nutzereingabe des Nutzers der Handwerkzeugmaschine. Der zweite Zielwert wird hingegen unter Berücksichtigung des ermittelten Betriebszustands der Handwerkzeugmaschine ermittelt. Unter Berücksichtigung der ersten und zweiten Zielwerte des Steuerungsparameters wird daraufhin ein Ausgabezielwert des Steuerungsparameters ermittelt, der abschließend zur Steuerung der Handwerkzeugmaschine an die Aktorik der Handwerkzeugmaschine ausgegeben wird.
Durch die Berücksichtigung der ersten und zweiten Zielwerte kann somit für die Ermittlung des Ausgabezielwerts sowohl die Nutzereingabe durch den Nutzer als auch der jeweils vorliegende Betriebszustand der Handwerkzeugmaschine für die Steuerung der Handwerkzeugmaschine berücksichtigt werden. Dies hat den Vorteil, dass insbesondere für Fälle, in denen die Nutzereingabe durch den Nutzer, die beispielsweise durch Betätigung eines Auslöseschalters erfolgt, für den jeweils vorliegenden Betriebszustand der Handwerkzeugmaschine keine optimale Steuerung der Handwerkzeugmaschine zulässt, durch Berücksichtigung des an den vorliegenden Betriebszustand angepassten zweiten Zielwert, die Steuerung trotz der unpassenden Nutzereingabe dennoch an den vorliegenden Betriebszustand angepasst werden kann.
Durch die Berücksichtigung des auf der Nutzereingabe basierenden ersten Zielwerts bleibt die Steuerung der Handwerkzeugmaschine trotzdem weiterhin primär in der Hand des Nutzers. Nur für bestimmte Betriebszustände kann in Gestalt des Ausgabezielwerts, in dem der zweite Zielwert berücksichtigt wird, die Nutzereingabe überschrieben beziehungsweise besser an den vorliegenden Betriebszustand angepasst werden. Das Verfahren ermöglicht somit eine an den jeweils vorliegenden Betriebszustand der Handwerkzeugmaschine angepasste Steuerung der Handwerkzeugmaschine, die neben den Nutzereingaben an die jeweils vorliegenden Betriebszustände der Handwerkzeugmaschine angepasste Zielwerte eines Steuerungsparameters berücksichtigt.
Ein Zielwert ist im Sinne der Anmeldung ein Soll-Wert des Steuerungsparameters.
Nach einer Ausführungsform umfasst das Ermitteln des Ausgabezielwerts: Definieren des Ausgabezielwerts als einen Minimalwert oder einen Maximalwert der ersten und zweiten Zielwerte und/oder
Definieren des Ausgabezielwerts als ein Produkt aus den ersten und zweiten Zielwerten.
Hierdurch kann der technische Vorteil erreicht werden, dass ein möglichst präziser Ausgabezielwert des Steuerungsparameters ermittelt wird durch die Definition des Ausgabezielwerts als Minimalwert oder Maximalwert zwischen den ersten und zweiten Zielwerten kann eine möglichst einfache Ermittlung des Ausgabezielwerts erreicht werden. Je nach ermitteltem Betriebszustand der Handwerkzeugmaschine und je nach Art des Steuerungsparameters kann durch den gewählten Minimalwert oder Maximalwert zwischen den ersten und zweiten Zielwerten des Steuerungsparameters ein auf den jeweils ermittelten Betriebszustand optimal angepasster Ausgabezielwert des Steuerungsparameters ermittelt werden. Dies ermöglicht eine möglichst präzise auf den jeweils vorliegenden Betriebszustand angepasste Steuerung der Handwerkzeugmaschine.
Der Steuerungsparameter kann beispielsweise eine Drehzahl bzw. ein Drehmoment eines Motors der Handwerkzeugmaschine sein. Der Betriebszustand der Handwerkzeugmaschine kann beispielsweise einen Arbeitsfortschritt der Handwerkzeugmaschine beschreiben. Ist beispielsweise die Handwerkzeugmaschine als ein Elektroschrauber ausgebildet, so kann ein Betriebszustand der Handwerkzeugmaschine beschreiben, dass die jeweils zu verschraubende Schraube bereits formschlüssig in das jeweilige Werkstück eingeschraubt ist.
Die durch die Nutzereingabe des Nutzers durch Betätigung des Auslöseschalters der Handwerkzeugmaschine eingegebene Solldrehzahl bzw. das eingegebene Solldrehmoment des Motors kann für einen derartigen vorliegenden Formschluss der einzuschraubenden Schraube zu hoch sein, so dass unter Berücksichtigung des jeweils ermittelten Betriebszustands berechneten zweiten Ausgabezielwerts in Form einer entsprechend geringeren Motordrehzahl bzw. eines entsprechend geringeren Motordrehmoments, der Ausgabezielwert des Steuerungsparameters eine gegenüber der Nutzereingabe reduzierte Drehzahl bzw. ein gegenüber der Nutzereingabe reduziertes Drehmoment des Motors der Handwerkzeugmaschine beschreibt. Über den Ausgabezielwert kann somit eine an den jeweils vorliegenden Betriebszustand optimal angepasste Steuerung der Handwerkzeugmaschine erreicht werden.
Durch Definition des Ausgabezielwerts als Maxmalwert oder Minimalwerte der ersten und zweiten Zielwerte kann der jeweils am besten zu dem vorliegenden Betriebszustand passende Zielwert als Ausgabezielwert ausgewählt werden. Insbesondere kann der Zielwert gegenüber dem Eingabeparameter auf einen für den aktuellen Betriebszustand passenden Wertebereich begrenzt werden.
Durch die Multiplikation der ersten und zweiten Zielwerte kann der zweite Zielwert als Sensitivität in Bezug auf den ersten Zielwert fungieren. Durch den zweiten Zielwert kann somit der erste Zielwert, der auf der Nutzereingabe des Nutzers basiert, in Bezug auf den jeweils vorliegenden Betriebszustand durch einen Faktor in Form des zweiten Zielwerts entsprechend erhöht oder erniedrigt werden. Die Nutzereingabe und die darauf basierende Steuerung der Handwerkzeugmaschine durch den Nutzer kann somit effizient an den jeweils vorliegenden Betriebszustand angepasst werden.
Nach einer Ausführungsform umfasst das Ermitteln des Ausgabezielwerts: Definieren des Ausgabezielwerts als den ersten Zielwert, falls der zweite Zielwert kleiner als ein vordefinierter Schwellenwert ist, und Definieren des Ausgabezielwerts als einen vordefinierten Zielwert, falls der zweite Zielwert größer oder gleich dem vordefinierten Schwellenwert ist.
Hierdurch kann der technische Vorteil erreicht werden, dass ein wiederum präzisierter Ausgabezielwert bereitgestellt werden kann, der optimal an den jeweils vorliegenden Betriebszustand der Handwerkzeugmaschine angepasst ist. Hierzu wird entweder der auf der Nutzereingabe des Nutzers basierende erste Zielwert oder ein vordefinierter Zielwert als Ausgabezielwert verwendet, in Abhängigkeit des zweiten Zielwerts in Bezug auf einen vordefinierten Schwellenwert.
Die Berücksichtigung des vordefinierten Schwellenwerts ermöglicht eine einfache und präzise Anpassung des Ausgabezielwerts an den jeweils vorliegenden Betriebszustand. Je nach Art des jeweils vorliegenden Betriebszustands kann der vordefinierte Zielwert wie auch der vordefinierte Schwellenwert des Steuerungsparameters derart angepasst sein, dass der jeweils resultierende Ausgabezielwert eine optimale Steuerung der Handwerkzeugmaschine ermöglicht.
Der basierend auf dem jeweils ermittelten Betriebszustand ermittelte zweite Wert des Steuerungsparameters kann somit als Schaltwert für den ersten Zielwert der Nutzereingabe fungieren. Je nach Beurteilung des zweiten Zielwerts in Bezug auf den vordefinierten Schwellenwert wird zwischen dem ersten Zielwert der Nutzereingabe und dem vordefinierten Zielwert als Ausgabezielwert verschaltet.
Nach einer Ausführungsform umfasst das Ermitteln des Ausgabezielwerts: Definieren des Ausgabezielwerts als ein Produkt aus dem ersten Zielwert mit einem ersten vordefinierten Zielwert, falls der zweite Zielwert kleiner als ein vordefinierter Schwellenwert ist, und Definieren des Ausgabezielwerts als ein Produkt aus dem ersten Zielwert mit einem zweiten vordefinierten Zielwert, falls der zweite Zielwert größer oder gleich dem vordefinierten Schwellenwert ist. Hierdurch kann der technische Vorteil erreicht werden, dass ein Wiederum präzisierter Ausgabezielwert bereitgestellt werden kann. In Abhängigkeit des in Bezug auf den ermittelten Betriebszustand ermittelten zweiten Zielwerts auf einen vordefinierten Schwellenwert wird der Ausgabezielwert als ein Produkt aus dem auf der Nutzereingabe basierenden ersten Zielwert mit einem ersten vordefinierten Zielwert oder einem zweiten vordefinierten Zielwert definiert. Die ersten und zweiten vordefinierten Zielwerte können hierbei als konstante Zielwerte ausgebildet sein.
Wie in der vorherigen Ausführungsform können die vordefinierten Zielwerte wie auch der vordefinierte Schwellenwert jeweils an den vorliegenden Betriebszustand angepasst sein. Die ersten und zweiten vordefinierten Zielwerte dienen hierbei wiederum als Sensitivitätswerte, die durch die Multiplikation mit dem ersten Zielwert, den ersten Zielwert jeweils erhöhen oder erniedrigen und hierüber an den jeweils vorliegenden Betriebszustand anpassen.
Der in Bezug auf den Betriebszustand ermittelte zweite Zielwert dient hierbei wiederum als Schaltwert, indem in Bezug auf den jeweils vordefinierten Schwellenwert durch den zweiten Zielwert zwischen dem Produkt des ersten Zielwerts mit dem ersten vordefinierten Zielwert und dem Produkt des ersten Zielwerts mit dem zweiten vordefinierten Zielwert verschaltet wird. Dies ermöglicht eine möglichst präzise Anpassung des Ausgabezielwerts an den jeweils ermittelten Betriebszustand.
Nach einer Ausführungsform umfasst das Ermitteln des Betriebszustands: Vorhersagen eines Ereigniszeitpunkts, wobei am Ereigniszeitpunkt ein Übergang der Handwerkzeugmaschine von einem Betriebszustand in einen weiteren Betriebszustand erfolgt.
Hierdurch kann der technische Vorteil erreicht werden, dass neben dem tatsächlichen Ermitteln eines bereits vorliegenden Betriebszustands zusätzlich oder alternativ durch das Zustandsbestimmungsmodul ein Ereigniszeitpunkt vorhergesagt werden kann, der einen Übergang zwischen verschiedenen Betriebszuständen der Handwerkzeugmaschine definiert. Durch das Vorhersagen des Ereigniszeitpunkts kann somit die Steuerung der Handwerkzeugmaschine auf einen bevorstehenden Übergang in einen weiteren Betriebszustand angepasst werden. Dies ermöglicht eine möglichst präzise Steuerung der Handwerkzeugmaschine, indem die Steuerung bereits auf noch nicht eingetretene Ereignisse bzw. Betriebszustände angepasst werden kann, in die die Handwerkzeugmaschine erst in Zukunft eintreten wird.
Nach einer Ausführungsform umfasst der Steuerungsparameter eines oder mehrere aus der Liste: Motordrehzahl, Motorstrom, Motorleistung eines Motors der Handwerkzeugmaschine.
Hierdurch kann der technische Vorteil erreicht werden, dass eine präzise Steuerung der Handwerkzeugmaschine unter Berücksichtigung der Ausgabezielwerte des Steuerungsparameters ermöglicht ist. Die Motordrehzahl, der Motorstrom bzw. die Motorleistung des Motors der Handwerkzeugmaschine stellen hierbei zuverlässige Steuerungsparameter dar, auf denen basierend eine Steuerung der Handwerkzeugmaschine ermöglicht ist.
Nach einer Ausführungsform umfasst die Betriebsgröße eines oder mehrere aus der Liste: Motorstrom, Motor-Positionswinkel, Motor-Drehgeschwindigkeit, Spannung einer Spannungsquelle der Handwerkzeugmaschine, Bewegungen und/oder Vibrationen der Handwerkzeugmaschine oder in der Handwerkzeugmaschine.
Hierdurch kann der technische Vorteil erreicht werden, dass die Betriebsgröße eine sinnvolle Messgröße zur Bestimmung des Betriebszustands bereitstellt. Durch Messungen des Motorstroms, der Motorpositionswinkel, der Motordrehgeschwindigkeit, einer Betriebsspannung einer Spannungsquelle der Handwerkzeugmaschine oder Bewegungen und/oder Vibration der Handwerkzeugmaschine oder in der Handwerkzeugmaschine können aussagekräftige Informationen erhalten werden, auf denen ein Betriebszustand der Handwerkzeugmaschine ermittelt werden kann. Beispielsweise kann in dem oberen Beispiel durch Messungen des Motorstroms erkannt werden, ob eine einzuschraubende Schraube bereits formschlüssig in das jeweils zu bearbeitende Werkstück eingeschraubt ist. Beim Erreichen des Formschlusses sind Änderungen des Motorstroms wie auch der Motordrehgeschwindigkeit bzw. der Motordrehzahl zu erkennen, so dass hierauf eine präzise Ermittlung des Betriebszustands ermöglicht ist. Beispielsweise kann auch anhand der Bewegungssignale erkannt werden, ob die Handwerkzeugmaschine, beispielsweise der Schrauber, zum nächsten Arbeitsort bewegt wurde, und somit die vorherige Arbeitsphase, sprich der vorherige Schraubvorgang, abgeschlossen wurde. Dies ermöglicht ein zeitlich passendes Zurücksetzen des Betriebszustands, entsprechend der dann neuen Arbeitsphase, sprich des dann neuen Schraubvorgangs.
Nach einer Ausführungsform umfasst der Betriebszustand eines oder mehrere aus der Liste: einen Lastbereich, in dem die Handwerkzeugmaschine betrieben wird, eine Stärke von Vibrationen in der Handwerkzeugmaschine und/oder an einem bearbeiteten Werkstück und/oder im Nutzer der Handwerkzeugmaschine, eine Temperatur in der Handwerkzeugmaschine und/oder am Werkstück, Betriebsmodus, in dem die Handwerkzeugmaschine betrieben wird, einen Arbeitsfortschritt der Handwerkzeugmaschine, Material des Werkstücks, eine Existenz eines Formschlusses zwischen der Handwerkzeugmaschine und dem Werkstück.
Hierdurch kann der technische Vorteil erreicht werden, dass verschiedene Betriebszustände, in denen sich die Handwerkzeugmaschine befinden kann bzw. in die die Handwerkzeugmaschine eintreten kann, bei der Steuerung der Handwerkzeugmaschine in Form des zweiten Zielwerts des Steuerungsparameters berücksichtigt werden können. Durch das erfindungsgemäße Verfahren können somit verschiedenste Betriebszustände berücksichtigt werden, wodurch ein breit einsetzbares Steuerungsverfahren bereitgestellt werden kann.
Nach einer Ausführungsform umfasst das Zustandsermittlungsmodul eine trainierte künstliche Intelligenz, die darauf trainiert ist, basierend auf den Sensordaten der Betriebsgröße den Betriebszustand der Handwerkzeugmaschine zu ermitteln und/oder den Ereigniszeitpunkt vorherzusagen.
Hierdurch kann der technische Vorteil erreicht werden, dass ein möglichst zuverlässiges und leistungsfähiges Zustandsermittlungsmodul bereitgestellt werden kann, das eingerichtet ist, vorliegende Betriebszustände zu erkennen bzw. zukünftige Ereigniszeitpunkte vorherzusagen.
Es wird ein Verfahren zum Erzeugen eines Trainingsdatensatzes für ein Training einer künstlichen Intelligenz zum Ermitteln eines Betriebszustands und/oder zum Vorhersagen eines Ereigniszeitpunkts einer Handwerkzeugmaschine bereitgestellt, wobei das Verfahren umfasst:
Bereitstellen einer Mehrzahl von Messwerten einer Betriebsgröße einer Handwerkzeugmaschine, wobei die Messwerte jeweils mit Zeitstempeln versehen sind;
Identifizieren eines Ereigniszeitpunkts innerhalb der Mehrzahl von Messwerten, wobei der Ereigniszeitpunkt einen Zeitpunkt definiert, an dem die Handwerkzeugmaschine von einem ersten Betriebszustand in einen zweiten Betriebszustand übergeht;
Versehen der Messwerte mit Labelwerten, die geeigneten sind, zu kennzeichnen, ob ein jeweiliger Messwert dem Ereigniszeitpunkt und/oder dem Ereigniszeitbereich zugeordnet ist;
Anordnen der Mehrzahl von gelabelten Messwerten in einer Zeitreihe basierend auf den Zeitstempeln der Messwerte; und
Bereitstellen eines die Zeitreihe von gelabelten Messwerten der Betriebsgröße umfassenden T rainingsdatensatzes.
Hierdurch kann der technische Vorteil erreicht werden, dass ein verbessertes Verfahren zum Erzeugen eines Trainingsdatensatzes für ein Training einer künstlichen Intelligenz zum Ermitteln eines Betriebszustands und/oder zum Vorhersagen eines Ereigniszeitpunkts einer Handwerkzeugmaschine bereitgestellt werden kann. Entsprechend kann ein verbesserter Trainingsdatensatz bereitgestellt werden, der optimal auf das Training einer künstlichen Intelligenz zum Ermitteln eines Betriebszustands bzw. Vorhersagen von Ereigniszeitpunkten im Sinne des Verfahrens zum Steuern einer Handwerkzeugmaschine gemäß den voranstehenden Ausführungsformen angepasst ist.
Hierzu werden zunächst Messwerte einer Betriebsgröße der Handwerkzeugmaschine bereitgestellt, wobei die Messwerte jeweils mit Zeitstempeln versehen sind. Die Messwerte können auf einer Mehrzahl von Messungen der Betriebsgröße der Handwerkzeugmaschine oder einer Mehrzahl von vergleichbaren Handwerkzeugmaschinen basieren. Die entsprechenden Messwerte können beispielsweise während des Betriebs der Handwerkzeugmaschine oder während des Betriebs der Mehrzahl von Handwerkzeugmaschinen aufgenommen werden und als entsprechende Messung von Messwerten für das Verfahren zum Erzeugen des Trainingsdatensatzes bereitgestellt werden. Die Messwerte der Betriebsgröße, die während des Betriebs der Handwerkzeugmaschinen aufgenommen wurden, können beispielsweise in eine dafür vorgesehene Serverarchitektur übertragen werden, die eingerichtet ist, die entsprechenden Messsätze für das Verfahren zum Erzeugen des Trainingsdatensatzes bereitzustellen.
Ferner wird basierend auf den Zeitstempeln, die einen Zeitpunkt definieren, zu dem die jeweiligen Messwerte aufgenommen wurden, innerhalb der Mehrzahl von Messwerten ein Ereigniszeitpunkt als Zeitpunkt identifiziert, an dem die Handwerkzeugmaschine von einem ersten in einen zweiten Betriebszustand übergeht. Ferner werden die Messwerte mit Labelwerten versehen, die den jeweiligen Ereigniszeitpunkt kennzeichnen. Darüber hinaus wird die Mehrzahl von gelabelten Messwerten in einer Zeitreihe angeordnet und die Zeitreihe der gelabelten Messwerte wird als entsprechender Trainingsdatensatz bereitgestellt.
Basierend auf einem derart generierten Trainingsdatensatz, in dem die gelabelten Messwerte der Betriebsgröße bzgl. ihrer Zeitstempel in eine entsprechende Zeitreihe angeordnet sind, kann ein optimiertes Training einer künstlichen Intelligenz zum Ermitteln eines Betriebszustands bzw. zum Vorhersagen eines Ereigniszeitpunkts durchgeführt werden. Die jeweiligen Label der Messwerte der Betriebsgröße erlauben hierbei eine Beurteilung, ob zum Zeitpunkt des jeweiligen Messwerts die Handwerkzeugmaschine in einem ersten oder in einem zweiten Betriebszustand vorgelegen hat.
Ferner erlaubt wenigstens ein Label des Messwerts die exakte Bestimmung eines Ereigniszeitpunkts, an dem der Übergang zwischen den zwei Betriebszuständen vorliegt. Das Versehen der Messwerte mit Labelwerten entspricht hierbei dem aus dem Stand der Technik bekannten Labeln von Messwerten, in dem einem jedem Messwert der Betriebsgröße das entsprechende Label als Kennzeichnung zugewiesen wird.
Nach einer Ausführungsform umfasst das Verfahren ferner:
Ermitteln eines Drehwinkels eines Motors der Handwerkzeugmaschine für jeden Messwert der Betriebsgröße; und
Berechnen eines Rotationszeitpunkts für jeden Messwert der Betriebsgröße unter Berücksichtigung einer zur Ausführung einer vollständigen Umdrehung des Motors benötigten Zeitspanne und der Zeitstempel, wobei der Rotationszeitpunkt einen Zeitpunkt definiert, an dem für einen Messwert ausgehend von dem jeweiligen Zeitstempel eine komplette Umdrehung des Motors abgeschlossen ist.
Hierdurch kann der technische Vorteil erreicht werden, dass eine weitere Verbesserung des Trainingsdatensatzes erreicht wird. Wird für jeden Messwert der Betriebsgröße ein Drehwinkel des Motors der Handwerkzeugmaschine, der zum Zeitpunkt der Aufnahme des Messwerts der Betriebsgröße vorlag, ermittelt. Ferner wird für jeden Messwert der Betriebsgröße ein Rotationszeitpunkt berechnet, wobei der Rotationszeitpunkt einen Zeitpunkt beschreibt, an dem ausgehend von dem jeweiligen Drehwinkel des jeweiligen Messwerts der Betriebsgröße eine vollständige Umdrehung ausgeführt hat. Durch das Vorliegen von sowohl Zeitstempeln als auch Drehwinkeln, können alle anderen SensorsignaleAgrößen wahlweise auf die Zeit oder den Drehwinkel bezogen werden. Dies verbessert den Datensatz, da Zustände und Ereignisse sowohl im zeitlichen Verlauf als auch im Verlauf des Drehwinkel-Fortschritts vorliegen und ausgewertet werden können. Basierend auf dem für den jeden Messwert zugeordneten Drehwinkel bzw. Rotationszeitpunkt kann eine präzise Vorhersage des Ereigniszeitpunkts getätigt werden. Indem für jeden Messwert der Betriebsgröße mit entsprechendem Zeitstempel der Rotationszeitpunkt bekannt ist, an dem der Motor der Handwerkzeugmaschine eine weitere vollständige Umdrehung ausgeführt hat, kann unter Berücksichtigung der Anzahl von Motordrehungen, die zum Erreichen des Übergangs in den zweiten Betriebszustand ausgeführt werden müssen, für jeden Messwert der Betriebsgröße und den jeweils dazugehörigen Zeitstempel der Ereigniszeitpunkt präzise vorhergesagt werden. Dies ermöglicht ein optimales Training der künstlichen Intelligenz.
Nach einer Ausführungsform umfasst das Identifizieren des Ereigniszeitpunkts: Empfangen von Sensordaten, die den Betriebszustand der Handwerkzeugmaschine abbilden;
Ermitteln des Ereigniszeitpunkts innerhalb einer Zeitreihe der Sensordaten; Synchronisieren der Zeitreihe der Betriebsgröße mit der Zeitreihe der Sensordaten; und
Identifizieren des Ereigniszeitpunkts in der Zeitreihe der Betriebsgröße basierend auf dem Ereigniszeitpunkt der Zeitreihe der Sensordaten.
Hierdurch kann der technische Vorteil erreicht werden, dass eine weitere Verbesserung des Verfahrens zum Erzeugen eines Trainingsdatensatzes und eine weitere Verbesserung des entsprechend erzeugten Trainingsdatensatzes erreicht werden können. Hierzu werden zum Identifizieren der Betriebszustände bzw. zum Ermitteln des Ereigniszeitpunkts Sensordaten eines weiteren Sensors berücksichtigt. Die Sensordaten bilden hierbei das Handwerkzeug im jeweiligen Betriebszustand ab und sind zur Identifizierung des Ereigniszeitpunkts geeignet. Hierzu umfassen die Sensordaten ebenfalls Zeitstempel, die Zeitpunkte definieren, zu denen die Sensordaten jeweils aufgenommen wurden.
Die Sensordaten werden gemäß ihrer Zeitstempel in einer entsprechenden Zeitreihe angeordnet und innerhalb der Zeitreihe wird basierend auf den jeweiligen Zeitstempeln der Ereigniszeitpunkt ermittelt. Darauffolgend werden die Zeitreihen der Messwerte der Betriebsgröße und die Zeitreihe der Sensordaten gemäß der jeweiligen Zeitstempel synchronisiert. Basierend auf dem Ereigniszeitpunkt innerhalb der Zeitreihe der Sensordaten wird darauffolgend der Ereigniszeitpunkt in der Zeitreihe der Betriebsgröße identifiziert. Durch die zusätzliche Information der Sensordaten kann eine präzisere Ermittlung des Ereigniszeitpunkts innerhalb der Zeitreihe der Messwerte der Betriebsgröße erreicht werden. Dies erlaubt einen präziseren Trainingsdatensatz.
Nach einer Ausführungsform sind die Sensordaten Daten eines externen Sensors, insbesondere eines Kamerasensors.
Hierdurch kann der technische Vorteil erreicht werden, dass eine weitere Verbesserung des Verfahrens zum Erzeugen eines Trainingsdatensatzes erzielt werden kann. Die Sensordaten basieren hierbei auf Daten eines externen Sensors. Dieser kann beispielsweise als ein Kamerasensor ausgebildet sein. Durch die Kameradaten des Kamerasensors kann der Betrieb der Handwerkzeugmaschine, während dem die Messwerte der Betriebsgröße aufgenommen wurden, abgebildet werden. Durch das Abbilden des Betriebs der Handwerkzeugmaschine können die unterschiedlichen Betriebszustände in den Sensordaten eindeutig abgebildet werden.
Hierüber lässt sich der Ereigniszeitpunkt, an dem die Handwerkzeugmaschine von dem ersten Betriebszustand in den zweiten Betriebszustand übergeht, eindeutig identifizieren. Der Ereigniszeitpunkt kann hierbei beispielsweise den Zeitpunkt beschreiben, an dem in dem oben beschriebenen Beispiel beim Einschrauben der Schraube in das Werkstück der Formschluss zwischen der Schraube und dem Werkstück erreicht ist. Dieser Zeitpunkt kann durch die Kameradaten des Kamerasensors, die den Schraubvorgang der Handwerkzeugmaschine abbilden, eindeutig identifiziert werden. Dies ermöglicht durch Berücksichtigung der Zeitstempel der Kameradaten, die jeweils den Aufnahmezeitpunkt der Kameradaten identifizieren, eine Eindeutige Identifizierung des Ereigniszeitpunkts.
Durch die Synchronisierung der beiden Zeitreihen, der Messdaten der
Betriebsgröße und der Kameradaten, kann in der Zeitreihe der Messdaten der Betriebsgröße somit präzise der Zeitpunkt identifiziert werden, an dem der Formschluss zwischen der Schraube und dem Werkstück erreicht ist. Durch das entsprechende Labeln der Messwerte der Betriebsgröße, in dem der jeweils identifizierte Ereigniszeitpunkt gekennzeichnet ist, kann die künstliche Intelligenz basierend auf den Messdaten der Betriebsgröße darauf trainiert werden, die verschiedenen Betriebszustände der Handwerkzeugmaschine zu ermitteln bzw. den Ereigniszeitpunkt vorherzusagen. Dies ermöglicht einen präzisen Trainingsdatensatz, auf dem ein optimiertes Training einer künstlichen Intelligenz zum Ermitteln von Betriebszuständen bzw. zum Vorhersagen von Ereigniszeitpunkten ermöglicht ist.
Es wird ein Verfahren zum Trainieren einer künstlichen Intelligenz zum Ermitteln eines Betriebszustands einer Handwerkzeugmaschine bereitgestellt, wobei das Verfahren umfasst:
Bereitstellen eines gemäß dem erfindungsgemäßen Verfahren zum Erzeugen eines Trainingsdatensatzes nach einer der voranstehenden Ausführungsformen erzeugten Trainingsdatensatzes; und
Ausführen eines Trainings der künstlichen Intelligenz zum Ermitteln eines Betriebszustands und/oder zum Vorhersagen eines Ereigniszeitpunkts einer Handwerkzeugmaschine basierend auf dem Trainingsdatensatz.
Hierdurch kann der technische Vorteil erreicht werden, dass ein verbessertes Verfahren zum Trainieren einer künstlichen Intelligenz bereitgestellt wird, das geeignet ist, die künstliche Intelligenz auf das Erkennen von Betriebszuständen einer Handwerkzeugmaschine und das Vorhersagen von Ereigniszeitpunkten, in denen ein Übergang zwischen Betriebszuständen der Handwerkzeugmaschine erfolgt, gemäß dem erfindungsgemäßen Verfahren zum Steuern einer Handwerkzeugmaschine zu trainieren. Durch die Verwendung des erfindungsgemäßen Trainingsdatensatzes ist das Training der künstlichen Intelligenz auf den Anwendungsfall der künstlichen Intelligenz in der Steuerung der Handwerkzeugmaschine gemäß dem Verfahren zum Steuern einer Handwerkzeugmaschine angepasst, sodass optimale Trainingsergebnis erreicht und optimal trainierte künstliche Intelligenzen erzielt werden können. Es wird eine künstliche Intelligenz zum Ermitteln eines Betriebszustands einer Handwerkzeugmaschine und/oder zum Vorhersagen eines Ereigniszeitpunkts gemäß dem Verfahren nach einer der voranstehenden Ausführungsformen bereitgestellt, wobei die künstliche Intelligenz nach dem erfindungsgemäßen Verfahren zum Trainieren einer künstlichen Intelligenz trainiert ist.
Hierdurch kann der technische Vorteil erreicht werden, dass ein möglichst zuverlässiges und leistungsfähiges Zustandsbestimmungsmodul für eine Steuerung der Handwerkzeugmaschine nach dem erfindungsgemäßen Verfahren zum Steuern einer Handwerkzeugmaschine bereitgestellt, das eingerichtet ist, die jeweiligen Betriebszustände der Handwerkzeugmaschine zu erkennen beziehungsweise Ereigniszeitpunkte, an denen eine Übergang zwischen Betriebszuständen erfolgt, vorherzusagen. Indem die künstliche Intelligenz gemäß dem erfindungsgemäßen Verfahren zum Trainieren einer künstlichen Intelligenz trainiert ist, ist die künstliche Intelligenz optimal auf den Einsatz in einer Steuerung eines Handwerkzeugmaschine gemäß dem Verfahren zum Steuern einer Handwerkzeugmaschine eingerichtet.
Nach einer Ausführungsform ist die künstliche Intelligenz als ein künstliches neuronales Netz, insbesondere als ein Netz mit wenigstens einer rekurrenten Schicht mit einem internen Zustandsspeicher, ausgebildet ist.
Hierdurch kann der technische Vorteil erreicht werden, dass eine besonders zuverlässige und leistungsfähige künstliche Intelligenz bereitgestellt werden kann. Das künstliche neuronale Netz kann insbesondere als ein Long-Short- Term-Memory (LSTM) Netz ausgebildet sein. Das LSTM Netz ist hierbei insbesondere für das Erkennen und von Betriebszuständen der Handwerkzeugmaschine und das Vorhersagen von Ereigniszeitpunkten, in denen ein Übergang zwischen verschiedenen Betriebszuständen erfolgt, geeignet. LSTM Netze sind aus dem Stand der Technik für die Mustererkennung und das Vorhersagen von Verhalten oder Ereignissen basierend auf historischen Daten bekannt. Die Ausführung des neuronalen Netzes als LSTM Netz (Long Short Term Memory) ist als Netzwerk- Layer geeignet und kann mit weiteren Netzwerk- Layern in einem Netzwerk kombiniert werden.
Nach einem weiteren Aspekt wird eine Recheneinheit bereitgestellt, die eingerichtet ist, das Verfahren zum Steuern einer Handwerkzeugmaschine nach einer der voranstehenden Ausführungsformen und/oder das Verfahren zum Erzeugen eines Trainingsdatensatzes nach einer der voranstehenden Ausführungsformen und/oder das erfindungsgemäße Verfahren zum Trainieren einer künstlichen Intelligenz und/oder die erfindungsgemäße künstliche Intelligenz auszuführen.
Nach einem weiteren Aspekt wird ein Computerprogrammprodukt umfassend Befehle bereitgestellt, die bei der Ausführung des Programms durch eine Datenverarbeitungseinheit diese veranlassen, das Verfahren zum Steuern einer Handwerkzeugmaschine nach einer der voranstehenden Ausführungsformen und/oder das Verfahren zum Erzeugen eines Trainingsdatensatzes nach einer der voranstehenden Ausführungsformen und/oder das erfindungsgemäße Verfahren zum Trainieren einer künstlichen Intelligenz und/oder die erfindungsgemäße künstliche Intelligenz auszuführen.
Nach einem weiteren Aspekt wird eine Handwerkzeugmaschine mit einer Recheneinheit und wenigstens einem Sensor zum Ermitteln von Sensordaten wenigstens einer Betriebsgröße der Handwerkzeugmaschine bereitgestellt, wobei die Recheneinheit ausgebildet ist, ein Verfahren zum Steuern der Handwerkzeugmaschine auszuführen, wobei das Verfahren umfasst: Empfangen von Sensordaten wenigstens einer Betriebsgröße der Handwerkzeugmaschine;
Empfangen eines auf einer Nutzereingabe eines Nutzers der Handwerkzeugmaschine basierenden Eingabewerts für einen Steuerungsparameter der Handwerkzeugmaschine;
Ermitteln eines ersten Zielwerts des Steuerungsparameters basierend auf den Sensordaten und dem Eingabewert; Ausführen eines Zustandsbestimmungsmoduls auf die Sensordaten und Ermitteln eines Betriebszustands der Handwerkzeugmaschine;
Ermitteln eines zweiten Zielwerts des Steuerungsparameters basierend auf dem ermittelten Betriebszustand der Handwerkzeugmaschine;
Ermitteln eines Ausgabezielwerts des Steuerungsparameters basierend auf dem ersten Zielwert und dem zweiten Zielwert; und
Ausgeben des Ausgabezielwerts an eine Aktorik der Handwerkzeugmaschine zum Steuern der Handwerkzeugmaschine.
Hierdurch kann der technische Vorteil erreicht werden, dass eine verbesserte Handwerkzeugmaschine bereitgestellt werden kann, die eingerichtet ist, dass Verfahren zum Steuern einer Handwerkzeugmaschine mit den oben genannten technischen Vorteilen auszuführen.
Ausführungsbeispiele der Erfindung werden anhand der folgenden Zeichnungen erläutert. In den Zeichnungen zeigen:
Fig. 1 eine schematische Darstellung einer Handwerkzeugmaschine gemäß einer Ausführungsform;
Fig. 2 eine weitere schematische Darstellung einer Handwerkzeugmaschine, in der einzelne Funktionsabläufe der Handwerkzeugmaschine illustriert sind;
Fig. 3 zeitliche Verläufe einer Betriebsgröße einer Handwerkzeugmaschine und eines Rotationswinkels eines Motors der Handwerkzeugmaschine;
Fig. 4 eine schematische Darstellung einer Handwerkzeugmaschine gemäß einer Ausführungsform, wobei die Handwerkzeugmaschine in verschiedenen Betriebszuständen gezeigt ist;
Fig. 5 eine schematische Darstellung einer Antriebsregelung der Handwerkzeugmaschine gemäß einer Ausführungsform; Fig. 6 ein Flussdiagramm eines Verfahrens zum Steuern einer Handwerkzeugmaschine gemäß einer Ausführungsform;
Fig. 7 ein weiteres Flussdiagramm des Verfahrens zum Steuern einer Handwerkzeugmaschine gemäß einer weiteren Ausführungsform;
Fig. 8 ein weiteres Flussdiagramm des Verfahrens zum Steuern einer Handwerkzeugmaschine gemäß einer weiteren Ausführungsform;
Fig. 9 eine schematische Darstellung einer künstlichen Intelligenz, die eingerichtet ist, in einer Steuerung der Handwerkzeugmaschine eingesetzt zu werden;
Fig. 10 ein Flussdiagramm eines Verfahrens zum Erzeugen eines Trainingsdatensatzes für ein Training einer künstlichen Intelligenz gemäß einer Ausführungsform;
Fig. 11 ein weiteres Flussdiagramm eines Verfahrens zum Erzeugen eines Trainingsdatensatzes für ein Training einer künstlichen Intelligenz gemäß einer weiteren Ausführungsform;
Fig. 12 ein Flussdiagramm eines Verfahrens zum Trainieren einer künstlichen Intelligenz; und
Fig. 13 eine schematische Darstellung eines Computerprogrammprodukts.
Fig. 1 zeigt eine schematische Darstellung einer Handwerkzeugmaschine 100 gemäß einer Ausführungsform.
Die beispielhafte Handwerkzeugmaschine 100 umfasst einen Motor 101 mit einer Motorsteuerung 103. Die Handwerkzeugmaschine 100 umfasst ferner eine Recheneinheit 105, auf der ein Zustandsbestimmungsmodul 107 installiert und ausführbar ist. Die Recheneinheit 105 mit dem Zustandsbestimmungsmodul 107 sind eingerichtet, das erfindungsgemäße Verfahren zum Steuern einer Handwerkzeugmaschine 100 auszuführen. Die Handwerkzeugmaschine 100 umfasst ferner eine Spannungsquelle 111 und eine Strommessvorrichtung 113. Die Handwerkzeugmaschine 100 umfasst ferner einen Auslöseschalter 109, mittels dem durch einen Nutzer die Handwerkzeugmaschine 100 steuerbar ist. Darüber hinaus umfasst die Handwerkzeugmaschine 100 eine Einstellvorrichtung 115 mit der verschiedene Betriebsmodi der Handwerkzeugmaschine 100 einstellbar sind. Abschließend umfasst die Handwerkzeugmaschine 100 ein Werkzeug 117, mittels dem durch Ausführung der Handwerkzeugmaschine 100 entsprechende Arbeitsvorgänge ausgeführt werde können.
Die Handwerkzeugmaschine 100 kann beispielsweise als ein Schrauber bzw. ein akkubetriebener Schrauber ausgebildet sein. Hierzu kann das Werkzeug 117 insbesondere als eine Aufnahme für auswechselbare Schraubendreherklingen ausgebildet sein.
Die gezeigte Motorsteuerung 103 kann insbesondere ein zugehöriges Leistungsteil der Motorsteuerung umfassen. Der Motor 101 kann ferner ein entsprechendes Getriebe umfassen, das in Fig. 1 nicht explizit dargestellt ist.
Der Motor 101 kann beispielsweise als ein mechanischer oder elektrisch kommutierter Gleichstrommotor ausgebildet sein. Das entsprechende Getriebe kann als Planetengetriebe ausgebildet sein.
Erfindungsgemäß kann der Leistungsteil der Motorsteuerung 103 ein Ansteuersignal beispielsweise über PWM Pulsweitenmodulation in die für den Motor 101 erforderlichen Spannungs- bzw. Stromverläufe umwandeln. Hierzu können zunächst die Ansteuersignale in entsprechende Digitalsignale umgewandelt werden, worauf das entsprechend umgewandelte Signal über eine n geeigneten Datenbus, beispielsweise I2C oder SPI, übertragen werden kann. Für den Fall eines elektrisch kommutierten Gleichstrommotors kann ein entsprechendes Drehfeld erzeugt werden, welches synchron zur Drehung des Rotors nachgeführt werden kann. Die Motorsteuerung kann eine spannungsgeführte oder drehzahlgeführte Regelung realisieren. Bei einer spannungsgeführten Regelung wird mit steigender Last (Drehmoment) unter Anstieg des Betriebsstroms die Motordrehzahl reduziert. Eine Information zur Motordrehzahl bzw. zum Drehwinkel kann systeminhärent anhand der Phasenwechsel abgeleitet werden. Zusätzlich oder alternativ kann ein kontinuierlicher Drehwinkelsensor (in Fig. 1 nicht dargestellt) zur Erkennung der Rotorposition eingesetzt werden. Ein derartiges Rotorpositionssignal kann an die Recheneinheit 105 zur Steuerung der Handwerkzeugmaschine 100 übertragen werden. Diese Signalübertragung kann wiederum über PWM, I2C, SPI oder analog erfolgen.
Gemäß einer Ausführungsform wird anstelle des Drehwinkelsensors ein Algorithmus in einer Steuereinheit realisiert, der anhand der gemessenen Motor- Ströme und -Spannungen, welche Signalanteile beinhalten, die aus dem Rotor zurückinduzierten Spannungen entstehen, auf den Drehwinkel zurückschließt. In dieser Ausführungsform kann durch die Algorithmusausführung der Drehwinkelsensor funktional ersetzt werden.
Die Stromversorgung über die Spannungsquelle 111 kann durch eine Mehrzahl von Batterieelementen, beispielsweise Lithium-Ion-Zellen, bereitgestellt werden. Durch ein entsprechendes Batteriemanagementsystem können Überladungen, Überströme und Tiefentladungen verhindert werden.
Der Auslöseschalter 109 kann gemäß einer Ausführungsform als ein Potenziometer ausgeführt werden, das der Recheneinheit 103 zur Steuerung der Handwerkzeugmaschine 100 analoge Steuersignale bereitstellt, die der linearen Betätigung des Auslöseschalters 109 entsprechen. Über die Betätigung des Auslöseschalters 109 können entsprechende Nutzereingaben zur Steuerung der Handwerkzeugmaschine 100 bereitgestellt werden.
Die Strommessvorrichtung 113 kann den Akkustrom der Spannungsquelle 111 , der vom Motorstrom des Motors 101 dominiert wird, bestimmen. Die Steuerung hat in der Regel eine Stromaufnahme von weniger als 200 Milliampere. Als Messelement kann ein niederohmiger Widerstand oder ein Hall-Sensor verwendet werden. Mithilfe einer Verstärkerschaltung und einer Pegelanpassung kann der Recheneinheit 103 als Steuerung der Handwerkzeugmaschine 100 ein ström proportionales analoges Signal zur Verfügung gestellt werden.
Die Einstellvorrichtung 115 kann als Drehpotenziometer, als Schaltwippe oder als Doppelschaltelement ausgeführt sein. Es gilt den für die Automatikfunktion benötigten Schwellwert durch den Nutzer beeinflussbar zu realisieren.
Die Recheneinheit 101 kann einen Microcontroller mit üblicher Beschaltung (Spannungsregler, Taktquelle, EMV-Maßnahmen) und Kommunikationsvorrichtung (BlueTooth, 4G, WLAN) umfassen. Der Microcontroller kann einen Analog-Digital-Wandler und digitale Schnittstellen umfassen, um die Signale des Auslöseschalters 109, der Einstellvorrichtung 115, der Strommessvorrichtung 113, der Versorgungsspannung, der Motordrehzahl und die Ansteuersignale des Motors 101 zu erzeugen bzw. zu erfassen. Der Microcontroller (in Fig. 1 nicht explizit dargestellt) kann das Zustandsbestimmungsmodul 107 zum Ausführen des erfindungsgemäßen Verfahrens zum Steuern der Handwerkzeugmaschine 100 ausführen.
Die Handwerkzeugmaschine 100 kann als ein Schrauber, ein Drehschlagschrauber oder als ein einfacher Akku-Schrauber ausgebildet sein. Alternativ kann die Handwerkzeugmaschine 100 als ein elektrischer Bohrer, ein Schlagbohrer, ein Bohrhammer oder ein Bohrmeißel ausgebildet sein.
Fig. 2 zeigt eine weitere schematische Darstellung einer Handwerkzeugmaschine 100, in der einzelne Funktionsabläufe der Handwerkzeugmaschine 100 illustriert sind.
Fig. 2 zeigt eine weitere schematische Darstellung einer Ausbildungsform der erfindungsgemäßen Handwerkzeugmaschine 100. Die Handwerkzeugmaschine 100 umfasst den Motor 101 , die Recheneinheit 105, die auf einer Platine 127 angeordnet ist, die Energiequelle 109 und das Werkzeug 117. Anhand der gezeigten graphischen Darstellung werden einige Funktionsweisen der Handwerkzeugmaschine 100 dargestellt. Es sind einige der Bauteile der Handwerkzeugmaschine 100 aus Fig. 1 dargestellt, während andere Bauteile bzw. Komponenten nicht dargestellt sind, um die gezeigte Darstellung möglichst einfach zu halten. Die gezeigte Handwerkzeugmaschine 100 kann jedoch alle in Fig. 1 dargestellten Komponenten umfassen.
Neben der Recheneinheit 105, die wie oben bereits beschrieben, als ein Microcontroller ausgebildet sein kann, bzw. einen derartigen Microcontroller umfassen kann, und auf der erfindungsgemäß das in Fig. 1 gezeigte Zustandsbestimmungsmodul 107 installiert ist, sind auf der Platine 127 ferner ein Drehzahlsensor 129, mittels dem eine Motordrehzahl des Motors 101 gemessen werden kann, und ein Vibrationssensor 131 , mittels dem Vibrationen der Handwerkzeugmaschine 100 gemessen werden können und ein Wechselrichter 133 installiert.
Über den Auslöseschalter 109 kann ein Nutzer der Handwerkzeugmaschine 100 Nutzereingaben 139 an die Recheneinheit 105 mittels einer elektrischen Signalübertragung 147 übertragen. Über die Nutzereingaben 139, die beispielsweise ein Triggerlevel des Auslöseschalters 109 umfassen, kann eine Leistung der Handwerkzeugmaschine 100 geregelt werden. Ferner können die Nutzereingaben 139 Drehrichtungen des Motors 101 , die beispielsweise eine Schraub- oder Borrichtung definieren, oder Betriebsmodi der Handwerkzeugmaschine 100, die beispielsweise einen Schraubvorgang mit oder ohne Schlagfunktion beschreiben, festlegen.
Basierend auf den Nutzereingaben 139 steuert die Recheneinheit 105 die Steuerung der Handwerkzeugmaschine 100 und gibt über eine elektrische Signalübertragung 147 entsprechende Steuersignale an den Wechselrichtung 133 aus. Der Wechselrichter 133 gibt eine entsprechende elektrische Energieübertragung 141 an den Motor 101 aus. Der Motor 101 bewirkt über eine entsprechende Kraft-Drehmoment-Übertragung 143 eine Kraftübertragung 135 an das Werkzeug 117, mittels dem das Werkstück 137 bearbeitet werden kann. Erfindungsgemäß nutzt das Verfahren zum Steuern einer Handwerkzeugmaschine 100, das durch die Recheneinheit 105 ausgeführt wird, Messwerte einer Betriebsgröße, auf der basierend Betriebszustände der Handwerkzeugmaschine 100 ermittelt werden. Die Betriebsgröße kann hierbei beispielsweise der Motorstrom, eine Motorleistung, sowie eine Drehzahl- bzw. ein Drehmoment des Motors 101 sein. In der gezeigten Ausführungsform wird als Betriebsgröße, auf der basierend durch das erfindungsgemäße Verfahren Betriebszustände der Handwerkzeugmaschine 100 bestimmt werden, die Motordrehzahl des Motors 101 berücksichtigt. Diese werden durch den dargestellten Drehzahlsensor 129 gemessen, der die Bewegung 145 des Motors 101 detektiert. Ferner werden in der gezeigten Ausführungsform Vibrationen/Bewegungen 145 der Handwerkzeugmaschine 100 bzw. des Werkzeugs 117 bzw. des Werkstücks 137 als Betriebsgröße berücksichtigt. Die Vibrationen/Bewegungen werden hierbei durch den Vibrationssensor 131 gemessen. Entsprechende Messsignale werden zur Weiterverarbeitung von dem Drehzahlsensor 129 und dem Vibrationssensor 131 an die Recheneinheit 105 weitergeleitet.
Der Vibrationssensor 131 kann beispielsweise als ein Beschleunigungssensor ausgebildet sein.
Erfindungsgemäß werden zum Steuern der Handwerkzeugmaschine 100 die gemessene Drehzahl bzw. die detektierten Vibrationen durch Ausführung eines Zustandsbestimmungsmoduls 107 analysiert und ein vorliegender Betriebszustand der Handwerkzeugmaschine 100 ermittelt. Basierend auf dem ermittelten Betriebszustand wird die Steuerung der Handwerkzeugmaschine 100 entsprechend angepasst.
Für eine nähere Beschreibung des erfindungsgemäßen Verfahrens zum Steuern der Handwerkzeugmaschine 100 wird auf die Beschreibung der folgenden Figuren verwiesen.
Die Kraftübertragung 135 der Handwerkzeugmaschine 100 kann als ein Direktantrieb oder über ein Getriebe realisiert werden. Ferner kann der in den Figuren 1 und 2 nur schematisch angedeutet Antrieb der Handwerkzeugmaschine 100 verschiedene Antriebsoptionen umfassen, wie beispielsweise ein Schlagwerk, ein Hammerwerk oder ein Meißelwerk.
Wie bereits erwähnt kann die Übertragung der Kraft des Motors 101 auf den Antrieb der Handwerkzeugmaschine 100 über ein Getriebe bewirkt werden. Dieses kann beispielsweise als ein Schaltgetriebe mit zwei, drei oder mehr Gängen ausgebildet sein. Das Getriebe kann mit einer Rutschkupplung verbunden sein, die wiederum eine Direktverbindung an den Antrieb aufweist. Eine alternative Lösung ohne Rutschkupplung, in der das Getriebe unmittelbar mit dem Antrieb verbunden ist, ist ebenfalls denkbar.
Die durch den Vibrationssensor 131 gemessenen Vibrationen bzw. Bewegungen können beispielsweise durch den Nutzer der Handwerkzeugmaschine 100 ausgelöste Bewegungen der Handwerkzeugmaschine 100 umfassen. Ferner können die Bewegungen bzw. Vibrationen durch den Motor bzw. das Getriebe bzw. den Antrieb hervorgerufen sein. Alternativ hierzu können die Bewegungen bzw. Vibrationen, die durch den Vibrationssensor 131 gemessen werden, durch Bewegungen eines Bits auf einem Schraubenkopf hervorgerufen werden bzw. auf Krafteinwirkungen der Schraube auf das zu bearbeitende Werkstück 137 resultieren.
Fig. 3 zeigt zeitliche Verläufe einer Betriebsgröße 119 einer Handwerkzeugmaschine 100 und eines Rotationswinkels arot eines Motors 101 der Handwerkzeugmaschine 100.
In der Graphik a) ist ein zeitlicher Verlauf einer Betriebsgröße 119 einer Handwerkzeugmaschine 100 dargestellt. In der gezeigten Ausführungsform beschreibt die Betriebsgröße 119 einen Motorstrom eines Motors 101 einer Handwerkzeugmaschine 100. Die Handwerkzeugmaschine 100 ist in der gezeigten Ausführungsform als ein Schrauber ausgebildet und der gezeigte Verlauf der Betriebsgröße 119 zeigt den zeitlichen Verlauf des Motorstroms in einem Schraubfall, in dem eine selbstschneidende Schraube in ein Werkstück 137 aus Holz oder einem vergleichbaren Material eingeschraubt wird.
Der zeitliche Verlauf der Betriebsgröße 119 beschreibt eine Zeitreihe 123, die aus einer Mehrzahl zeitlich geordneter Messwerte 121 des Motorstroms besteht. Die Messwerte 121 wurden während des Betriebs der Handwerkzeugmaschine 100, sprich beim Einschrauben der Schraube in das Werkstück, durch einen entsprechenden Stromsensor innerhalb der Handwerkzeugmaschine 100 aufgenommen.
Grafik a) beschreibt hierbei einen typischen Verlauf des Motorstroms I beim Einschrauben einer selbstschneidenden Schraube in Holz oder ähnliche Werkstoffe. Der Motorstrom I bildet durch die Drehmomentkonstante mit der Einheit Newtonmeter pro Ampere das vom Motor 101 abgegebene Drehmoment ab. Das aus dem Anlaufstrom resultierende Drehmoment wird zu Beginn des Schraubfalls für die Beschleunigung des Rotors des Elektromotors 101 aufgewendet. Hieraus resultiert der zu Beginn der Zeitreihe 123 auftretende Peak des Motorstroms I. Im Anschluss an den Anlauf des Rotors ist die Drehzahl weitestgehend konstant, wodurch der nahezu waagerechte Verlauf des Motorstroms I bewirkt wird.
Dieser Bereich, in dem zunächst der Anlaufpeak und darauffolgend der nahezu waagerechte Verlauf des Motorstroms I detektiert wird, wird in Grafik a) durch den Betriebszustand A charakterisiert. In diesem Betriebszustand A wird zu einem Großteil von über 90 % das aufgebrachte Drehmoment in tatsächliche mechanische Arbeit an der Schraube bzw. dem Werkstück umgewandelt und die Schraube entsprechend in das Werkstück eingeschraubt.
In Grafik a) sind ferner zwei Ereigniszeitpunkte 125, 126 markiert, in denen ein Übergang zwischen dem Betriebszustand A, zunächst in einen Betriebszustand B und darauffolgend in einen weiteren Betriebszustand C erfolgen.
Im Bereich des Ereigniszeitpunkts 126 zeigt der Motorstrom I im Betriebszustand
A einen gleichmäßigen Anstieg. Dies ist auf das weitere Einschrauben der Schraube in das Werkstück begründet, für das mit zunehmender Einschraubtiefe ein immer größeres Drehmoment benötigt wird, zu dessen Generierung ein ansteigender Motorstrom I benötigt wird.
Ausgehend von dem Ereigniszeitpunkt 126 erfolgt ein steilerer Anstieg des Motorstroms I im Vergleich zu dem im Betriebszustand A verhältnismäßig sanft ansteigenden Anstieg. Dieser vermehrt steilere Anstieg des Motorstroms I ist durch das Aufliegen des kegelförmigen Schraubenkopfes der selbstschneidenden Schraube auf der Oberfläche des zu bearbeitenden Werkstücks verursacht. Zum Zeitpunkt des Ereigniszeitpunkts 126 trifft der kegelförmige Schraubenkopf der selbstschneidenden Schraube auf die Oberfläche des Werkstücks auf. Der Betriebszustand B ist somit durch das Einschrauben des kegelförmigen Schraubenkopfes in das Werkstück gekennzeichnet. Aufgrund der Kegelform des Schraubenkopfes wird für das Einschrauben des Schraubenkopfes in das Werkstück ein erhöhtes Drehmoment benötigt, wodurch der steile Anstieg des Motorstroms I begründet ist.
Der Ereigniszeitpunkt 125 beschreibt hingegen den Übergang aus dem Betriebszustand B, in dem das Einschrauben des kegelförmigen Schraubenkopfes in das Werkstück beschrieben ist, in den Betriebszustand C, in dem der Schraubenkopf vollständig in das Werkstück eingeschraubt ist. Der Ereigniszeitpunkt 125 beschreibt hierbei den Punkt, an dem der Schraubenkopf eben mit der Oberfläche des Werkstücks abschließt. Dieser Zeitpunkt wird im Übrigen auch als Flush-Point bezeichnet. Der durch den Ereigniszeitpunkt 126 gekennzeichnete Zeitpunkt, an dem die Kontaktierung des kegelförmigen Schraubenkopfes mit der Oberfläche des Werkstücks auftritt, wird im Übrigen auch als Pre-Flush-Point bezeichnet.
In der gezeigten Ausführung ist im Betriebszustand C ein abflachender Verlauf des Motorstroms I dargestellt. Dies kann durch das Abscheren des Kopfes oder durch eine Beschädigung des Materials des Werkstücks bei weiterer Verschraubung der Schraube über den Flush-Point hinaus realisiert sein. Grafik b) zeigt einen zeitlichen Verlauf eines Rotationswinkels arot. Der zeitliche Verlauf zeigt exemplarisch das Signal eines Drehwinkelgebers. Im gezeigten Beispiel weist der Sensor einen Eindeutigkeitsbereich von 360° auf. Dies ist nicht erforderlich, kleinere Eindeutigkeitsbereiche sind ebenso ausreichend. In der Regel kann der Eindeutigkeitsbereich des Sensors an die Drehzahl des Motors 101 gekoppelt sein. Eine absolute Drehwinkelinformation über den gesamten Schraubvorgang von Beginn (Betätigen des Auslöseschalters 109 durch den Nutzer) bis zum gewünschten Abschalten kann anhand des Drehwinkelsensorsignals mithilfe des sogenannten Phase-Unwrapping erlangt werden. Dazu kann mithilfe des Wissens über die kontinuierliche Drehung des Motors 101 erkannt werden, dass der Wechsel von plus 180° zu beispielsweise minus 179° tatsächlich einem Drehwinkel von plus 181 ° entspricht.
In Grafik b) sind ferner Rotationszeitpunkte trot gekennzeichnet. In den Rotationszeitpunkten trot ist eine vollständige Rotation des Motors 101 erfolgt. Die Kenntnis bezgl. der Rotationszeitpunkte trot bzw. des Rotationswinkels arot des Motors 101 kann im Folgenden zur Vorhersage der Ereigniszeitpunkte 125, 126 genutzt werden. Bei Erreichen des oben beschriebenen Ereigniszeitpunkts 126, in dem ein Aufliegen des kegelförmigen Schraubenkopfes auf die Oberfläche des Werkstücks erfolgt, kann unter Kenntnis des Rotationswinkels der Ereigniszeitpunkt 125 vorhergesagt werden, an dem die Schraube eben mit der Oberfläche des Werkstücks abschließt. Grafik b) zeigt ferner eine Drehwinkeldifferenz Arot als eine Differenz zwischen den Drehwinkeln arot zu den Ereigniszeitpunkten 125, 126.
Der in Fig. 3 gezeigte Sachverhalt soll nur beispielhaft einen möglichen Anwendungsfall des erfindungsgemäßen Verfahrens illustrieren. Andere Anwendungsfälle, in denen die Handwerkzeugmaschine 100 nicht als Schrauber sondern beispielsweise als Bohrer oder Meißel oder Stichsäge ausgebildet ist, sollen durch die vorliegende Erfindung ebenfalls abgedeckt sein. Auch können mehr oder weniger und anders ausgestaltete Betriebszustände (A, B, C) berücksichtigt werden, als das in diesem Beispiel beschrieben ist. Beispielsweise kann die Handwerkzeugmaschine 100 als Schrauber ausgebildet sein. Mögliche Betriebszustände A, B, C könne hierbei eine Schraubtiefe einer einzuschraubenden Schraube, ein Schrauben in einem bestimmten Schraubmodus (Schlagmodus, Ein-/Ausschrauben), eine Arbeitseffizienz, ein definiertes Drehmoment, eine Wahl der verwendeten Schraube oder einen Kickback bei hohen Drehmomenten beschreiben.
Fener kann die Handwerkzeugmaschine 100 als ein Bohrer ausgebildet sein. Die Betriebszustände A, B, C können hierbei einen Bohrmodus (Schlagbohren etc.), eine Ausrichtung der Handwerkzeugmaschine 100 zu einer Oberfläche eines zu bearbeitenden Werkstücks, eine Art des Einsatzwerkzeugs (Metall-, Holz-, Steinbohrer), eine Bohrtiefe, eine Ausrichtung der Handwerkzeugmaschine 100 relativ zu einer vorbestimmten Bohrstelle, eine Anbohren von Kabeln oder Rohren, ein Ausschlagen eines Bohrlochs, ein Auftreten von Bohrstaub oder ein Kickback bei einem plötzlichen Festdrehen der Handwerkzeugmaschine 100 beschreiben.
Ferner kann die Handwerkzeugmaschine 100 als ein Schlagbohrer oder ein Bohrhammer ausgebildet sein. Die Betriebszustände A, B, C können einen Betriebsmodus, einen Arbeitsfortschritt, eine Gefahr von Beschädigungen, Vibrationen und Lärm oder einen fehlenden Anpressdruck beschreiben.
Ferner kann die Handwerkzeugmaschine 100 als ein Meißel ausgebildet sein. Mögliche Betriebszustände A, B, C können ein falsches Einsatzwerkzeug, eine effektive Haltung der Handwerkzeugmaschine 100 oder einen Arbeitsfortschritt beschreiben.
Ferner können unabhängig von der Ausbildung der Handwerkzeugmaschine 100 mögliche Betriebszustände A, B, C Aspekte einer Arbeitssicherheit/Komfort wie beispielsweise Vibrations-/Lärmentwicklung, Vibrationsmonitoring, Drehmomentkontrolle bezüglich maximaler Drehmomente, einfaches Steuern der Handwerkzeugmaschine 100, richtiges Einspannen eines Werkzeugs in die Handwerkzeugmaschine 100 oder ein Erkennen von Situationen, wie ein Fallen von einer Leiter, ein Bohren in Kabel oder Rohre, umfassen. Durch ein entsprechendes Training einer künstlichen Intelligenz des Zustandsbestimmungsmoduls 107 können die angeführten Betriebszustände A, B, C oder ähnliche Betriebszustände, die bei einem Betrieb einer Handwerkzeugmaschine 100 auftreten können, basierend auf Messwerten 121 einer Betriebsgröße 119 während des Betriebs der Handwerkzeugmaschine 100 ermittelt werden.
Die Betriebsgröße 119 kann hierbei beispielsweise der Motorstrom I oder ein Motor-Positionswinkel, eine Motor-Drehgeschwindigkeit, eine Spannung einer Spannungsquelle, Bewegungen und/oder Vibrationen innerhalb der Handwerkzeugmaschine (100) oder ähnliche messbare Parameter der Handwerkzeugmaschine 100 umfassen.
Fig. 4 zeigt eine schematische Darstellung einer Handwerkzeugmaschine 100 gemäß einer Ausführungsform, wobei die Handwerkzeugmaschine 100 in verschiedenen Betriebszuständen A, B, C gezeigt ist.
Fig. 4 beschreibt in grafischer Darstellung die zu Fig. 3 beschriebenen Betriebszustände A, B, C der Handwerkzeugmaschine 100. Die Handwerkzeugmaschine 100 ist wiederum als Schrauber ausgebildet und die Betriebszustände A, B, C beschreiben den Schraubverlauf, in dem eine Schraube 169 in ein Werkstück 137 eingeschraubt wird. Die Schraube 169 kann beispielsweise eine selbstschneidende Schraube sein und das Werkstück 137 aus Holz gefertigt sein. Die Handwerkzeugmaschine 100 weist hierzu ferner ein Schraubbit 168 auf.
In Grafik a) ist der Betriebszustand A dargestellt, in dem die Schraube 169 in das Werkstücks 137 eingeschraubt wird.
Grafik b) beschreibt den Betriebszustand B, der dadurch gekennzeichnet ist, dass der kegelförmige Schraubenkopf 170 an der Oberfläche 167 des Werkstück 137 angrenzt und im weiteren Verlauf in das Werkstück 137 eingeschraubt wird. Grafik c) beschreibt den Betriebszustand C, der dadurch gekennzeichnet ist, dass die Schraube 169 eben mit der Oberfläche 167 des Werkstück 137 abschließt und damit der Flush-Point erreicht ist.
Wie oben beschrieben, stellt Grafik a) der Figur 3 den zeitlichen Verlauf des Motorstroms des Motors 101 der Handwerkzeugmaschine 100 in den verschiedenen Betriebszuständen A, B, C während des Einschraubens der Schraube 169 in das Werkstück 137 dar.
Im Betriebszustand A, in dem die Schraube 169 gleichmäßig in das Werkstück 137 eingeschraubt wird, zeigt der Motorstrom I einen weitestgehend waagerechten Verlauf, der mit zunehmender Einschraubtiefe eine leichte Steigung aufweist.
Der Betriebszustand B, der durch das Angrenzen des kegelförmigen Schraubenkopfes 170 an die Oberfläche 167 des Werkstücks 137 und das Einschrauben des Schraubenkopfes 170 in das Werkstück 137 gekennzeichnet ist, zeigt der Motorstrom I einen steilen Anstieg an, der durch das erhöhte Drehmoment begründet ist, der zum Einschrauben des kegelförmigen Schraubenkopfes 170 in das Werkstück 137 benötigt wird.
Der Betriebszustand C, der durch das Abschließen des Schraubenkopfes 170 mit der Oberfläche 167 gekennzeichnet ist, zeigt in Grafik 3 hingegen einen abflachenden Verlauf des Motorstroms I, der durch die Zerstörung der Schraube bzw. eine Zerstörung des Werkstücks 137 begründet sein kann.
In Figur 4 weist die Handwerkzeugmaschine 100 ferner einen externen Sensor 171 auf. Der externe Sensor 171 ist in der gezeigten Ausführungsform als ein Kamerasensor ausgebildet und ermöglicht das Aufnehmen von Kameradaten, mittels denen der Schraubverlauf des Einschraubens der Schraube 169 in das Werkstück 137 abgebildet werden kann. Die entsprechenden Kameradaten können wie zu den folgenden Figuren näher beschrieben werden wird, für ein Training des Zustandsbestimmungsmoduls 107 bzw. einer künstlichen Intelligenz 149 des Zustandsbestimmungsmoduls 107 verwendet werden. Fig. 5 zeigt eine schematische Darstellung einer Antriebsregelung 197 der Handwerkzeugmaschine 100 gemäß einer Ausführungsform.
Fig. 5 zeigt eine Regelungskette der Handwerkzeugmaschine 100.
Erfindungsgemäß umfasst die Regelungskette einen inneren Regelkreis 193 und einen äußeren Regelkreis 191. Der innere Regelkreis 193 dient hierbei zur Regelung des Antriebs der Handwerkzeugmaschine 100 basierend auf den Nutzereingaben 173 des Nutzers.
Zum Regeln des Antriebs der Handwerkzeugmaschine 100 basierend auf den Nutzereingaben 173 des Nutzers durch ausschließlich den inneren Regelkreis 193 erfolgen zunächst Nutzereingaben 173 durch den Nutzer. Dies kann beispielsweise durch Betätigung des Auslöseschalters 109 erfolgen. Hierüber können erste Zielwerte eines Steuerungsparameters der Handwerkzeugmaschine 100 durch die Nutzereingabe des Nutzers definiert werden. Der Steuerungsparameter kann hierbei beispielsweise eine Motordrehzahl, eine Motorleistung, ein über die Motordrehzahl definiertes Drehmoment umfassen. Alternativ kann der Steuerungsparameter eine Drehrichtung, wie beispielsweise beim Ein- oder Ausschrauben einer Schraube, oder eine Betriebsmodus, wie beispielsweise den Schlagmodus oder den Hammermodus, umfassen. Die Nutzereingaben 173 beschreiben hierbei Werte des Steuerungsparameters.
Über Sensormessungen 175 einer Betriebsgröße 119 werden Ist-Werte des Steuerungsparameters aufgenommen, die einen Ist-Zustand der Aktorik 195 einer Antriebsregelung 197 der Handwerkzeugmaschine 100 beschreiben.
Die Sensormessungen 175 der Betriebsgröße 119 können hierbei Messungen des Motorstroms, der Motordrehzahl, der Motorleistung, von Vibrationen des Motors bzw. der Handwerkzeugmaschine 100 oder andere aussagekräftige Betriebsgrößen umfassen, mittels denen eine Bestimmung eines Betriebszustands A, B, C ermöglicht ist. Die ersten Zielwerte der Nutzereingaben 173 und die Ist-Werte der Sensormessungen 175 des Steuerungsparameters werden unter Ausführung einer digitalen Signalvorverarbeitung 177 an den inneren Regelkreis 193 übertragen.
Durch den inneren Regelkreis 193 werden entsprechende Steuerungssignale an die Aktorik 195 zum Ansteuern der Handwerkzeugmaschine 100 ausgegeben.
Der äußere Regelkreis 191 wird nun dazu verwendet, bei der Steuerung der Handwerkzeugmaschine 100 einen Betriebszustand A, B, C zu berücksichtigen, in dem sich die Handwerkzeugmaschine 100 während des Betriebs befindet.
Hierzu werden die ersten Zielwerte des Steuerungsparameters der Nutzereingabe 173 und insbesondere die Ist-Werte der Sensormessungen 175 des Steuerungsparameters nach einer digitalen Signalvorverarbeitung 197 einer Modellinferenz 183 unterzogen. In der Modellinferenz 183 greift die bereits beschriebene Ausführung des Zustandsbestimmungsmoduls 107. Da Zustandsbestimmungsmodul 107 ist hierbei eingerichtet, basierend auf den Sensormessungen 175 bzw. den entsprechenden Sensordaten des Steuerungsparameters einen Betriebszustand A, B, C, in dem sich die Handwerkzeugmaschine 100 befindet, zu erkennen. Alternativ oder zusätzlich hierzu kann das Zustandsbestimmungsmodul 107 eingerichtet sein, basierend auf den Sensordaten der Sensormessungen 175 der Betriebsgröße 119 einen Ereigniszeitpunkt 125, 126 vorherzusagen, an dem ein Übergang zwischen verschiedenen Betriebszuständen A, B, C der Handwerkzeugmaschine 100 erfolgt.
Das in der Modellinferenz 183 ausgeführte Zustandsbestimmungsmodul 107 kann hierbei als eine entsprechend trainierte künstliche Intelligenz ausgebildet sein, die auf das Ermitteln von Betriebszuständen A, B, C bzw. das Vorhersagen von Ereigniszeitpunkten 125, 126 basierend auf Messwerten einer Betriebsgröße 119 trainiert ist. Die durch das Zustandsbestimmungsmodul 107 in Gestalt der Modellinferenz 183 ermittelte Information bzgl. der vorliegenden Betriebszustände A, B, C bzw. vorhergesagten Ereigniszeitpunkten 125, 126 werden nach einer Nachverarbeitung 187 dem äußeren Regelkreis 191 bereitgestellt.
Der äußere Regelkreis 191 ist daraufhin eingerichtet, basierend auf den Informationen der Modellinferenz 183 bzgl. der vorliegenden Betriebszustände A, B, C bzw. der vorhergesagten Ereigniszeitpunkte 125, 126 entsprechende zweite Zielwerte für den Steuerungsparameter zu definieren. Die durch den äußeren Regelkreis 191 definierten zweiten Zielwerte für den Steuerungsparameter sind hierbei auf den jeweils vorliegenden Betriebszustand A, B, C bzw. den entsprechend vorhergesagten Ereigniszeitpunkten 125, 126 abgestimmt. Unter Berücksichtigung des durch den äußeren Regelkreis 191 generierten zweiten Zielwert des Steuerungsparameters kann die Steuerung der Handwerkzeugmaschine 100 optimal auf den jeweils vorliegenden Betriebszustand A, B, C bzw. den entsprechenden vorhergesagten Ereigniszeitpunkten 125, 126 angepasst werden.
Der durch den Regelkreis 191 generierte zweiten Zielwert für den Steuerungsparameter wird darauffolgend dem inneren Regelkreis 193 bereitgestellt.
Erfindungsgemäß ist der innere Regelkreis 193 nun eingerichtet, unter Berücksichtigung des in der Nutzereingabe 173 durch den Nutzer bereitgestellten ersten Zielwerts für den Steuerungsparameter und den weiteren durch den äußeren Regelkreis 191 unter Berücksichtigung des vorliegenden Betriebszustands A, B, C bzw. des vorhergesagten Ereigniszeitpunkts 125, 126 bereitgestellten zweiten Zielwerts für den Steuerungsparameter einen Ausgabezielwert zu berechnen und basierend auf dem Ausgabezielwert die Aktorik 195 der Handwerkzeugmaschine 100 anzusteuern.
Der Ausgabezielwert kann hierbei durch den inneren Regelkreis 193 beispielsweise als ein Produkt aus dem ersten Zielwert der Nutzereingabe 173 und dem zweiten Zielwert des äußeren Regelkreis 191 berechnet werden. Durch das Produkt aus den und ersten und zweiten Zielwerten kann der erste Zielwert der Nutzreingabe 173 somit durch den zweiten Zielwert des äußeren Regelkreises 191, der in Bezug auf den vorliegenden Betriebszustand A, B, C bzw. dem vorhergesagten Ereigniszeitpunkt 125, 126 ermittelt wurden, sensitiviert, sprich auf den jeweiligen Betriebszustand A, B, C bzw. zu erwartenden Ereigniszeitpunkt 125, 126 angepasst werden. Alternativ kann der Ausgabezielwert als ein Minimalwert bzw. Maximalwert der ersten und zweiten Zielwerte definiert werden. Hierdurch kann der Ausgabeziel als der Wert der ersten und zweiten Zielwerte definiert werden, der am besten zu dem jeweils ermittelten Betriebszustand A, B, C passt.
Alternativ kann der Ausgabezielwert durch den ersten Zielwert der Nutzreingabe 173 definiert sein, falls der zweite Zielwert des äußeren Regelkreises 191 kleiner als ein vordefinierter Schwellenwert ist, und als ein vordefinierter Zielwert definiert sein, falls der zweite Zielwert größer oder gleich dem vordefinierter Schwellenwert ist. Der vordefinierte Zielwert kann hierbei als ein konstanter Wert des Steuerungsparameters gegeben sein, der beispielsweise bei einer Voreinstellung der Handwerkzeugmaschine 100 auf den jeweils vorliegenden Betriebszustand A, B, C bzw. vorausliegendem Ereigniszeitpunkt 125, 126 angepasst wurde. Der vordefinierte Schwellenwert kann beispielsweise empirisch durch entsprechenden Messungen an die jeweils auftretenden Betriebszustände A, B, C und mögliche zweite Zielwerte angepasst sein.
Alternativ kann der Ausgabezielwert als ein Produkt des ersten Zielwerts der Nutzereingabe 173 mit einem ersten vordefinierten Zielwert definiert sein, falls der zweite Zielwert des äußeren Regelkreis 191 kleiner als ein vordefinierter Schwellenwert ist, und als ein Produkt aus dem ersten Zielwert der Nutzereingabe 173 und einem zweiten vordefinierten Zielwert definiert sein, falls der zweite Zielwert des äußeren Regelkreises 191 größer oder gleich dem vordefinierten Schwellenwert ist. In Abhängigkeit des durch den äußeren Regelkreises 191 ermittelten zweiten Zielwerts kann somit der erste Zielwert der Nutzereingabe 173 in Form der ersten und zweiten vordefinierten Zielwerte, die jeweils als konstante Werte des Steuerungsparameters definiert und auf die jeweils vorliegenden Betriebszustände bzw. zu erwartenden Ereigniszeitpunkte angepasst sein können, auf den jeweils vorliegenden Betriebszustand A, B, C bzw. zu erwartenden Ereigniszeitpunkt 125, 126 sensitiviert bzw. angepasst werden. Die ersten und zweiten vordefinierten Zielwerte und vordefinierten Schwellenwerte können wiederum empirisch für mögliche Betriebszustände A, B, C bestimmt sein.
In Form des durch den inneren Regelkreis 193 ermittelten Ausgabezielwerts kann die Handwerkzeugmaschine 100 somit unter Berücksichtigung der durch den Nutzer der Handwerkzeugmaschine 100 getätigten Nutzereingabe 173 und dem entsprechenden ersten Zielwert des Steuerungsparameters und unter Berücksichtigung des in Bezug auf den vorliegenden Betriebszustand A, B, C bzw. dem zu erwartenden Ereigniszeitpunkt 125, 126 ermittelten zweiten Zielwert des Steuerungsparameters angesteuert werden.
In der Ausführungsform der Figuren 3 und 4, in der die Handwerkzeugmaschine 100 als Schrauber ausgebildet ist, und in der ein Schraubfall beschrieben wird, bei dem eine selbstschneidende Schraube 169 in ein Holzwerkstück 137 eingeschraubt wird, und in der die verschiedenen Betriebszustände A, B, C das Einschrauben der Schraube 169 in das Werkstück 137 im Betriebszustand A, das Einschrauben des kegelförmigen Schraubenkopfes 170 in das Werkstück 137 im Betriebszustand B und das ebene Abschließen des Schraubenkopfes 170 mit der Oberfläche 167 des Werkstücks 137 im Betriebszustand C beschreiben, kann der Steuerungsparameter beispielsweise eine Drehzahl des Motors 101 der Handwerkzeugmaschine 100 sein.
Die Nutzereingabe 173 kann beispielsweise Signale des durch den Nutzer betätigten Auslöseschalters 109 umfassen, mittels denen der jeweilige erste Zielwert der Motordrehzahl definiert wird.
Die in den Sensormessungen 175 ermittelte Betriebsgröße 119 kann beispielsweise durch den Motorstrom I des Motors 101 der Handwerkzeugmaschine 100 gegeben sein. Das Zustandsbestimmungsmodul 107, das gemäß der Modellinferenz 183 auf die Messwerte des Motorstroms I angewendet wird, kann entsprechend eingerichtet sein, basierend auf dem Motorstrom I, gemäß der Grafik A der Figur 3, die verschiedenen Betriebszustände A, B, C zu ermitteln. Ferner kann das Zustandsbestimmungsmodul 107 eingerichtet sein, basierend auf den Messwerten 121 die jeweiligen Ereigniszeitpunkte 125, 126 vorherzusagen.
Im Folgenden werden die oben beschriebenen Vorgänge und insbesondere das Ermitteln des zweiten Zielwerts durch den äußeren Regelkreis 191 bzw. das Ermitteln des Ausgabezielwerts durch den inneren Regelkreis 193 an einem Anwendungsfall beschrieben, in dem gemäß den Ausführungsformen zu den Fig. 3 und 4 die Handwerkzeugmaschine 100 als Schrauber ausgebildet ist und durch diesen eine Schraube 169 in ein Werkstück 137 eingeschraubt wird.
Die auf der Betätigung des Auslöseschalters 109 basierende Nutzereingabe 173 kann als ersten Zielwert beispielsweise einen entsprechend hohen Wert der Motordrehzahl definieren. Basierend auf den Sensormessungen 175 des Motorstroms ermittelt das Zustandsbestimmungsmodul 107 hingegen, dass die Handwerkzeugmaschine 100 sich bereits im Betriebszustand C der Grafik 3 befindet, in der der Flush-Point bereits erreicht ist und ein Abschluss des Schraubenkopfes 170 mit der Oberfläche 167 des Werkstücks 137 erzielt ist. Hierauf basierend berechnet der äußere Regelkreis 191 als zweiten Zielwert einen wesentlichen geringeren Wert für die Motordrehzahl, um eine Beschädigung der Schraube bzw. des Werkstücks 137, die bei der hohen Motordrehzahl der Nutzereingabe 173 zu befürchten wären, zu verhindern. Durch die Ermittlung des Ausgabezielwerts durch den inneren Regelkreis 193 kann somit der offensichtlich zu hohe Zielwert für die Motordrehzahl der Nutzereingabe 173 durch den durch den äußeren Regelkreis 191 berechneten wesentlich geringeren zweiten Zielwert für den die Motordrehzahl herabgeregelt werden, um somit die Handwerkzeugmaschine 100 entsprechend dem vorliegenden Betriebszustand C anzusteuern und gegebenenfalls abzuschalten.
Hierzu kann der zweite Zielwert wie auch die ersten und zweiten vordefinierten
Zielwerte den Zahlenwert 0 nehmen. Es kann der Ausgabezielwert ebenfalls auf den Zahlenwert 0 herabgeregelt werden, wodurch die Handwerkzeugmaschine 100 zum Stillstand gebracht werden kann.
In der gezeigten Ausführungsform kann die Information der Modellinferenz 183 ferner in einer Statusanzeige 189 angezeigt werden.
Darüber hinaus kann die Modellinferenz einem Reset-Vorgang unterzogen werden, in dem die Modellausführungen auf einen Ausganswert zurückgesetzt werden. Dies kann beispielweise bei separaten Schraubvorgängen vorgenommen werden. Beispielsweise kann für jeden neuen Schraubvorgang, bei dem eine individuelle Schraube in ein Werkstück 137 eingeschraubt- bzw. aus diesem ausgeschraubt wird, das Zustandsbestimmungsmodul 107 resettet werden. Alternativ oder zusätzlich kann ein Resett auch beim Ein- oder Ausschalten der Handwerkzeugmaschine 100 ausgeführt werden.
Hierzu wird zunächst basierend auf den Sensormessungen 175 eine Reset- Vorverarbeitung 181 durchgeführt und hierauf basierend eine Resett- Entscheidung 185 bewirkt. Die Reset-Entscheidung 185 kann ferner unter Berücksichtigung der Ergebnisse der Modellinferenz 183 bewirkt werden.
Die Informationen der Modellinferenz 183 und Nachverarbeitung 187 können in digitaler oder quasi analoger Form bereitgestellt werden.
Fig. 6 zeigt ein Flussdiagramm eines Verfahrens 200 zum Steuern einer Handwerkzeugmaschine 100 gemäß einer Ausführungsform.
Zum Steuern der Handwerkzeugmaschine 100 werden in einem ersten Verfahrensschritt 201 zunächst Sensordaten wenigstens einer Betriebsgröße 119 der Handwerkzeugmaschine 100 empfangen. Die Betriebsgröße 119 kann hierbei beispielsweise ein Motorstrom, ein Motorpositionswinkel, eine Motordrehgeschwindigkeit, eine Spannung einer Spannungsquelle, Messwerte einer Bewegung bzw. Vibration der Handwerkzeugmaschine 100, oder ähnliche Parameter umfassen, an denen ein Betriebszustand A, B, C der Handwerkzeugmaschine 100 ermittelt werden kann. In einem weiteren Verfahrensschritt 203 wird darauf basierend ein auf einer Nutzereingabe 173 eines Nutzers der Handwerkzeugmaschine 100 basierender Eingabewert für einen Steuerungsparameter der Handwerkzeugmaschine 100 empfangen. Der Steuerungsparameter kann hierbei beispielsweise eine Motordrehzahl, ein Motorstrom, eine Motorleistung, eine Betätigung des Auslöseschalters 109, eine Eingabe bzgl. eines Betriebsmodus, beispielsweise Einschalten bzw. Einschalten des Schlagmodus oder Meißelmodus, eine Drehrichtung des Motors 101, beispielsweise zum Ein- oder Ausschrauben einer Schraube 169, oder ähnliche Steuerungsparameter umfassen.
In einem weiteren Verfahrensschritt 205 wird basierend auf den Sensordaten der Betriebsgröße 119 und dem Eingabewert der Nutzereingabe 173 bzgl. des Steuerungsparameters ein erster Zielwert des Steuerungsparameters ermittelt.
In einem weiteren Verfahrensschritt 207 wird ein Zustandsbestimmungsmodul 107 ausgeführt und auf die Sensordaten der Betriebsgröße 119 angewendet. Durch das Ausführen des Zustandsbestimmungsmoduls 107 wird ein Betriebszustand A, B, C der Handwerkzeugmaschine 100 ermittelt. Das Ermitteln des Betriebszustands kann hierbei ein Vorhersagen eines Ereigniszeitpunkts 125, 126 umfassen, in dem ein Übergang zwischen zwei Betriebszuständen A, B, C erfolgt. Die Betriebszustände A, B, C können hierbei Lastbereiche umfassen, in denen die Handwerkzeugmaschine 100 betrieben wird, Stärken von Vibrationen oder Bewegungen der Handwerkzeugmaschine 100 und/oder des zu bearbeitenden Werkstücks 167, Temperaturen innerhalb der Handwerkzeugmaschine 100 und/oder am Werkstück 167, verschiedene Betriebsmodi, in denen die Handwerkzeugmaschine 100 betrieben wird, Arbeitsfortschritte der Handwerkzeugmaschine 100, Materialien der zu bearbeitenden Werkstück 137 oder beispielsweise das bereits beschriebene Vorliegen eines Formschlusses zwischen der Handwerkzeugmaschine 100 und dem bearbeiteten Werkstück 137, bei dem ein ebener Abschluss eines Schraubenkopfs 170 einer einzuschraubenden Schraube 169 mit einer Oberfläche 167 des Werkstücks 137 vorliegt, umfassen. Alternativ sind andere und zusätzliche Betriebszustände der Handwerkzeugmaschine 100 denkbar, die über die Analyse der messbaren Betriebsgrößen 119 der Handwerkzeugmaschine 100 detektiert werden können.
In einem weiteren Verfahrensschritt 209 wird basierend auf dem ersten Zielwert der Nutzereingabe 173 und unter Berücksichtigung des ermittelten Betriebszustands A, B, C, in dem sich die Handwerkzeugmaschine 100 befindet, eine Steuerung der Handwerkzeugmaschine 100 bewirkt. Wie oben bereits beschrieben kann hierzu eine Anpassung des ersten Zielwerts des Steuerungsparameters der Nutzereingabe 173 an den vorliegenden Betriebszustand A, B, C erfolgen, um eine an den jeweils vorliegenden Betriebszustand A, B, C angepasst Steuerung zu erreichen.
Das Steuern 209 kann hierbei beispielsweise das Anpassen einer Motordrehzahl, eines Motordrehmoments oder eine anderen Steuerungsparameters umfassen.
Fig. 7 zeigt ein weiteres Flussdiagramm des Verfahrens 200 zum Steuern einer Handwerkzeugmaschine 100 gemäß einer weiteren Ausführungsform.
Die Ausführungsform in Fig. 7 basiert auf der Ausführungsform in Fig. 6 und das Verfahren 100 umfasst alle dort gezeigten Verfahrensschritte.
In der gezeigten Ausführungsform wird zum Steuern 209 der Handwerkzeugmaschine 100 zunächst ein Verfahrensschritt 211 ausgeführt.
Im Verfahrensschritt 211 wird basierend auf dem ermittelten Betriebszustand A, B, C bzw. vorhergesagten Ereigniszeitpunkt 125, 126 der Handwerkzeugmaschine 100 ein zweiter Zielwert des Steuerungsparameters ermittelt. Wie zu Fig. 5 beschrieben, kann die Ermittlung des zweiten Zielwerts durch den äußeren Regelkreis 191 erfolgen. Die Ermittlung des zweiten Zielwerts kann hierbei eine Berechnung des zweiten Zielwerts umfassen, in der während der Ausführung und bei Erkennen des jeweils vorliegenden Betriebszustands A, B, C bzw. bei Vorhersagen des zu erwartenden Ereigniszeitpunkts 125, 126 ein entsprechender zweiter Zielwert berechnet wird. Alternativ hierzu kann das Ermitteln das Auslesen eines entsprechenden zweiten Zielwerts aus einer Look- Up-Tabelle umfassen, in der für verschiedene mögliche Betriebszustände A, B, C bzw. vorhergesagte Ereigniszeitpunkte 125, 126 passende zweite Zielwerte vorgespeichert sind. Alternativ kann auch das Zustandsbestimmungsmodul 107 eingerichtet sein, basierend auf dem ermittelten Betriebszustand A, B, C entsprechend angepasste zweite Zielwerte des Steuerungsparameters zu ermitteln.
In einem weiteren Verfahrensschritt 213 wird ein Ausgabezielwert des Steuerungsparameters basierend auf dem ersten Zielwert und dem zweiten Zielwert ermittelt. Wie zu Fig. 5 bereits erläutert, wird die Ermittlung des Ausgabezielwerts durch den inneren Regelkreis 193 bewirkt. Das Ermitteln kann wiederum ein Berechnen eines entsprechenden Ausgabezielwerts basierend auf den ersten und zweiten Zielwerten umfassen. Alternativ kann ein entsprechender Ausgabezielwert aus einer dafür vorgespeicherten Look-Up-Tabelle ausgelesen werden. Alternativ kann auch das Zustandsbestimmungsmodul 107 wiederum eingerichtet sein, basierend auf den ersten und zweiten Zielwerten den Ausgabezielwerte des Steuerungsparameters zu ermitteln.
In einem weiteren Verfahrensschritt 213 wird der Ausgabezielwert an einer Aktorik 195 der Antriebssteuerung 197 der Handwerkzeugmaschine 100 zum Steuern der Handwerkzeugmaschine 100 ausgegeben.
Fig. 8 zeigt ein weiteres Flussdiagramm des Verfahrens 200 zum Steuern einer Handwerkzeugmaschine 100 gemäß einer weiteren Ausführungsform.
Die gezeigte Ausführungsform basiert auf der Ausführungsform in Fig. 7 und umfasst alle dort beschriebenen Verfahrensschritte.
In der gezeigten Ausführungsform umfasst das Ermitteln 207 des Betriebszustands A, B, C ferner ein Vorhersagen 225 eines Ereigniszeitpunkts 125, 126, an dem ein Übergang zwischen verschiedenen Betriebszuständen A, B, C erfolgt. Ferner umfasst das Ermitteln 213 des Ausgabezielwerts einen Verfahrensschritt 217. Im Verfahrensschritt 225 wird der Ausgabezielwert als ein Minimalwert oder ein Maximalwert der ersten und zweiten Zielwerte definiert.
Ferner umfasst der Verfahrensschritt 213 einen Verfahrensschritt 219. Im Verfahrensschritt 219 wird der Ausgabezielwert als der erste Zielwert definiert, falls der zweite Zielwert kleiner als ein vordefinierter Schwellenwert ist. Ist der zweite Zielwert größer oder gleich dem vordefinierten Schwellenwert, wird der Ausgabezielwert als ein vordefinierter Zielwert definiert.
In einem Verfahrensschritt 221 wird der Ausgabezielwert als ein Produkt zwischen den ersten und zweiten Zielwerten definiert.
In einem Verfahrensschritt 223 wird der Ausgabezielwert als ein Produkt zwischen dem ersten Zielwert und einem ersten vordefinierten Zielwert definiert, falls der zweite Zielwert kleiner als ein vordefinierter Schwellenwert ist. Ist der zweite Zielwert größer oder gleich dem vordefinierten Schwellenwert, wird der Ausgabezielwert als ein Produkt zwischen dem ersten Zielwert und einem zweiten vordefinierten Zielwert definiert.
Die vordefinierten Zielwerte können hierbei als konstante Werte des Steuerungsparameters ausgebildet und vorgespeichert sein. Die entsprechenden Schwellenwerte können ebenfalls vorgespeichert sein. Die definierten Zielwerte wie auch die vordefinierten Schwellenwerte können auf einen optimierten Betrieb der Handwerkzeugmaschine 100 für die jeweils vorliegenden Betriebszustände A, B, C bzw. vorausliegenden Ereigniszeitpunkte 125, 126 optimiert sein.
Wie bereits zu Fig. 5 erläutert, wird das Ermitteln 213 des Ausgabezielwerts in der gezeigten Ausführungsform durch den inneren Regelkreis 193 bewirkt. Die vordefinierten Zielwerte wie auch der zweite Zielwert, der durch den äußeren Regelkreis 191 ermittelt wird, können den Zahlenwert 0 annehmen. Hierdurch kann je nach Wahl des Steuerungsparameters ein Abschalten der Handwerkzeugmaschine 100 bewirkt werden. Durch die Berücksichtigung der vordefinierten Zielwerte bzw. des zweiten Zielwerts gemäß den beschriebenen Verfahrensschritten 215 bis 221 kann eine Anpassung des ersten Zielwerts des Steuerungsparameters, der auf der Nutzereingabe 173 durch den Nutzer basiert, an den jeweils vorliegenden Betriebszustand A, B, C bzw. den zu erwartenden Ereigniszeitpunkt 125, 126 angepasst werden.
Fig. 9 zeigt eine schematische Darstellung einer künstlichen Intelligenz 149, die eingerichtet ist, in einer Steuerung der Handwerkzeugmaschine 100 eingesetzt zu werden.
Das Zustandsbestimmungsmodul 107 kann eine entsprechend trainierte künstliche Intelligenz 149 umfassen, die darauf trainiert ist, basierend auf Messwerten der Betriebsgröße 119 vorliegende Betriebszustände A, B, C zu ermitteln bzw. Ereigniszeitpunkte 125, 126 vorherzusagen. Das Zustandsbestimmungsmodul 107 kann ferner dazu ausgebildet sein, zweite Zielwerte bzw. Ausgabezielwerte zu ermitteln.
Fig. 9 zeigt eine Ausführungsform einer solchen künstlichen Intelligenz 149, die zum Ermitteln von Betriebszuständen A, B, C bzw. Vorhersagen von Ereigniszeitpunkten 125, 126 verwendbar ist.
In der gezeigten Ausführungsform ist die künstliche Intelligenz 149 als ein künstliches neuronales Netz und insbesondere als ein Long-Short-Term-Memory LSTM-Netz ausgebildet.
In der gezeigten Ausführungsform umfasst das künstliche neuronale Netz ein Inputlayer 153 zur Aufnahme von Eingangsdaten 151. Die Eingangsdaten können die Sensordaten der Betriebsgröße 119 in einer entsprechend vorverarbeiteten Form umfassen.
Ferner umfasst das künstliche neuronale Netz zwei Dense-Layer 155 und zwei Pooling-Layer 157, die in abwechselnder Form nacheinander angeordnet sind. Darüber hinaus umfasst das künstliche neuronale Netz zwei Long-Short-Term- Memory- Layer 159 zwischen dem ein Dropout-Layer 161 angeordnet ist. Abschießend umfasst das künstliche neuronale Netz ferner wiederum zwei Denzlayer und ein Outputlayer 163.
In der Datenverarbeitung erfolgt zunächst durch das Inputlayer 153, die ersten zwei Dense-Layer 155 und die zwei Pooling- Layer 157 ein Downsampling 164. Die beiden folgenden LSTM-Layer 159 und das zwischengeordnete Dropout- Layer 161 bewirken eine Merkmalsextraktion 165. Die beiden letzten Dense- Layer 155 und das Output-Layer 163 ermöglichen eine Vorhersage 166.
Abweichend von der gezeigten Ausführungsform kann die verwendete künstliche Intelligenz 149 auch in einer anderen Modellarchitektur strukturiert werden, die in der Lage ist, auf Basis einer Zeitreihe 123 von Messwerten 121 der Betriebsgröße 119 eine Regression oder Klassifikation durchzuführen. Eine Voraussetzung für die verwendete Modellarchitektur der künstlichen Intelligenz 149 ist hingegen, dass das jeweilige Modell in einem Format bereitgestellt werden kann, das auf einem Microcontroller einer Handwerkzeugmaschine 100 ausgeführt werden kann.
Für die hier beschriebene Ausführungsform kann ein Tensorflow/Keras-Model mit der nachfolgend abgebildeten Architektur genutzt werden. Nach Abschluss des Trainings kann das Modell zuerst in das Tensorflow-Lite Format konvertiert werden, welches wiederum mit Hilfe eines TVM Converters in C-Code für den Microcontroller übersetzt werden kann.
Die drei Eingangskanäle können beispielsweise der Motorstrom I des Motors 101 , die Trigger-Spannung des Auslöseschalters 109 sowie die Motor- Umdrehungen pro Sekunde sein.
Die verwendete Architektur kann wie folgt aufgebaut sein:
Absolute Anzahl der verwendeten Parameter: 7,801
Davon trainierbare Parameter: 7,801 nicht-trainierbare Parameter: 0
Das erste Dense-Layer 155 kann mit einem 6X8 Kernel und einem 8 Bias ausgebildet sein. Das zweite Dense-Layer 155 kann mit einem 8X16 Kernel und einem 16 Bias ausgebildet sein. Das erste LSTM-Layer 159 kann mit einem 16X128 Kernel, einem 32X128 Recurrent Kernel und einem 128 Bias ausgebildet sein. Das zweite LSTM-Layer 159 kann mit einem 32X32 Kernel, einem 8X32 Recurrent Kernel und einem 32 Bias ausgebildet sein. Das dritte Dense-Layer 155 kann mit einem 8X4 Kernel und einem 4 Bias ausgebildet sein. Das vierte Dense Layer 155 kann mit einem 4X1 Kernel und einem 1 Bias ausgebildet sein.
Die Dense-Layer 155 und die LSTM Layer 159 können mit einer TanH Aktivierungsfunktion ausgebildet sein.
Fig. 10 zeigt ein Flussdiagramm eines Verfahrens 300 zum Erzeugen eines Trainingsdatensatzes für ein Training einer künstlichen Intelligenz 149 gemäß einer Ausführungsform.
Zum Trainieren der künstlichen Intelligenz 149 wird erfindungsgemäße zunächst ein Trainingsdatensatz generiert. Hierzu wird gemäß dem erfindungsgemäßen Verfahren 300 in einem Verfahrensschritt 301 zunächst eine Mehrzahl von Messwerten 121 der Betriebsgröße 119 der Handwerkzeugmaschine 100 bereitgestellt. Die Messwerte 121 weisen hier jeweils Zeitstempel auf, die Zeitpunkte definieren, an denen die Messwerte 121 aufgenommen wurden. Die Messwerte 121 können hierbei während des Betriebs der Handwerkzeugmaschine 100 aufgenommen sein. Alternativ hierzu können die Messwerte 121 während des Betriebs einer Mehrzahl verschiedener Handwerkzeugmaschine 100 des gleichen Typs aufgenommen worden sein. Die Messwerte 121 der Betriebsgröße 123 können durch die Mehrzahl verschiedener Handwerkzeugmaschine 100 aufgezeichnet und beispielsweise an eine für das Erzeugen eines Trainingsdatensatzes vorgesehene Serverarchitektur übermittelt werden. Diese kann eine entsprechende Aufbereitung der Messdaten und Archivierung der Messdaten vornehmen, um hierauf basierend einen entsprechenden Trainingsdatensatz zu erzeugen.
Hierzu wird in einem weiteren Verfahrensschritt 303 innerhalb der Mehrzahl von Messdaten 121 ein Ereigniszeitpunkt 125 identifiziert, an dem ein Betriebszustandsübergang zwischen zwei Betriebszuständen A, B, C erfolgt. Die Identifizierung des Ereigniszeitpunkts 125 wird hierbei basierend auf den Zeitstempeln der einzelnen Messwerte 121 durchgeführt.
In einem weiteren Verfahrensschritt 305 werden die Messwerte 121 mit Labelwerten versehen, die geeignet sind, den jeweiligen Messwert einem Betriebszustand A, B, C zuzuordnen oder diesen mit dem jeweiligen Ereigniszeitpunkt 125, 126 zu kennzeichnen. Das Versehen der Labelwerte kann beispielsweise durch entsprechend dafür vorgesehene und aus dem Stand der Technik bekannte Algorithmen zum Labeln von Trainingsdaten für künstliche Intelligenzen 149 ausgeführt werden. Alternativ kann ein Labeln der Messwerte 121 manuell durch entsprechend geschultes Personal ausgeführt werden. Alternativ können die automatisch per Algorithmus gelabelten Messwerte durch ein entsprechend geschultes Personal auf die richtige und fehlerfreie Labelung kontrolliert werden.
In einem weiteren Verfahrensschritt 307 werden die gelabelten Messwerte 121 der Betriebsgröße 119 in einer Zeitreihe 123 angeordnet. Dies erfolgt basierend auf den Zeitstempeln. Die Zeitreihe 123 beschreibt hierbei eine gemäß den Zeitstempeln zeitliche Anordnung der gelabelten Messwerte 121.
Nach dem Verfahrensschritt 307 und noch vor einem weiteren Verfahrensschritt 309 kann eine Konsolidierung der Mehrzahl von vorhandenen Labels ausgeführt werden. Dies kann insbesondere anhand von statistischen Kriterien erfolgen. Beispielsweise kann durch Berechnung eines Medians des Ereigniszeitpunkts aus mehreren manuellen und automatischen Quellen eine robusteres Label für den tatsächlichen Ereigniszeitpunkt erstellt werden, wodurch eine höhere Genauigkeit des Zeitpunkt-Labels erreicht werden kann.
In dem weiteren Verfahrensschritt 309 wird die Zeitreihe 123 der gelabelten Messwerte 121 der Betriebsgröße 119 als entsprechender Trainingsdatensatz bereitgestellt.
Fig. 11 zeigt ein weiteres Flussdiagramm eines Verfahrens 300 zum Erzeugen eines Trainingsdatensatzes für ein Training einer künstlichen Intelligenz 149 gemäß einer weiteren Ausführungsform.
Die gezeigte Ausführungsform basiert auf der Ausführungsform in Fig. 10 und umfasst alle dort beschriebenen Verfahrensschritte.
In der gezeigten Ausführungsform wird zunächst in einem Verfahrensschritt 211 für jeden Messwert 121 der Betriebsgröße 119 ein Drehwinkel arot des Motors 101 der Handwerkzeugmaschine 100 ermittelt. Hierzu werden durch entsprechende Drehwinkelsensoren 129 die Drehwinkel arot des Motors 101 gemessen und basierend auf den Zeitstempeln der Messwerte 121 diesen zugeordnet. Die Drehwinkel arot des Motors 101 beschreiben hierbei den Drehwinkel, den der Motor 101 zum Zeitpunkt der Aufnahme des jeweiligen Messwertes 121 der Betriebsgröße 119 aufwies.
In einem weiteren Verfahrensschritt 313 wird ein Rotationszeitpunkt trot für jeden Messwert 121 der Betriebsgröße 119 unter Berücksichtigung einer zur Ausführung einer vollständigen Umdrehung des Motors 101 benötigten Zeitspanne und unter Berücksichtigung des Zeitstempels des jeweiligen Messwerts 121 berechnet. Der Rotationszeitpunkt trot beschreibt hierbei den Zeitpunkt an dem ausgehend von dem Drehwinkel arot des jeweiligen Messwerts 121 eine vollständige Umdrehung des Motors 101 erfolgt ist.
In der gezeigten Ausführungsform umfasst das Identifizieren 303 des Ereigniszeitpunkts 125, 126 ferner den Verfahrensschritt 315. In diesem Verfahrensschritt werden Sensordaten eines externen Sensors 171 empfangen. Die Sensordaten des externen Sensors 171 bilden hierbei den Betriebszustand A, B, C der Handwerkzeugmaschine 100 ab. Der externe Sensor 171 kann beispielsweise als ein Kamerasensor ausgebildet sein. Mittels der Kameradaten des Kamerasensors kann der Betriebszustand A, B, C, in dem sich die Handwerkzeugmaschine 100 zum Zeitpunkt der Aufnahme der Messwerte 121 der Betriebsgröße 119 befand, abgebildet werden. Wie in der Fig. 4 dargestellt, kann über den beispielsweise an der Handwerkzeugmaschine 100 ausgebildeten Kamerasensor 171 der Arbeitsfortschritt des Vorgangs des Einschraubens der Schraube 169 in das Werkstück 137 abgebildet bzw. verfolgt werden.
In einem weiteren Verfahrensschritt 317 wird der Ereigniszeitpunkt 125, 126 innerhalb einer Zeitreihe der Sensordaten des externen Sensors 171 ermittelt. Die Sensordaten des externen Sensors 171 werden hierzu gemäß ihren Zeitstempeln in einer Zeitreihe angeordnet. Durch Analyse der Bilddaten des Kamerasensors kann der exakte Zeitpunkt identifiziert werden, an dem beispielsweise der ebene Abschluss des Schraubenkopfes 170 mit der Oberfläche 167 des Werkstücks 137 erfolgt ist, wie dies in Figur 4 in dem Betriebszustand C gekennzeichnet ist. Durch die entsprechenden Zeitstempel der aufgenommenen Bilddaten des Kamerasensors 171 kann somit innerhalb der Zeitreihe der Bilddaten der exakte Zeitpunkt des Ereigniszeitpunktes 125 ermittelt, in dem der Übergang zwischen den in Figur 4 dargestellten Betriebszuständen B und C erfolgt ist und somit der ebene Abschluss zwischen dem Schraubenkopf 170 der Schraube 169 und der Oberfläche 167 des Werkstücks 137 erreicht ist. In einem weiteren Verfahrensschritt 319 wird die Zeitreihe 123 der Messwerte 121 der Betriebsgröße 119 mit der Zeitreihe 123 der Sensordaten des externen Sensors 171 über die jeweiligen Zeitstempel der Messwerte 121 bzw. der Sensordaten des externen Sensors 171 synchronisiert.
In einem weiteren Verfahrensschritt 321 wird der Ereigniszeitpunkt 125, 126 in der Zeitreiche 123 der Messwerte 121 der Betriebsgröße 119 basierend auf den in der Zeitreihe der Sensordaten des externen Sensors 171 identifizierten Ereigniszeitpunkts 125, 126 identifiziert. Durch das Synchronisieren der Zeitreihe 123 der Messwerte 121 der Betriebsgröße 119, die beispielsweise durch den Motorstrom I des Motors 101 gegeben ist, und der Zeitreiche der Sensordaten des externen Sensors 171 kann jeder Messwert 121 der Betriebsgröße 119 ein zeitgleich aufgenommenes Bilddatum bzw. Sensordatum des externen Kamerasensors 171 zugeordnet werden.
In dem durch Inspektion bzw. Analyse der Bilddaten des externen Kamerasensors 171 , beispielsweise durch ein entsprechend geschultes Personal, exakt die verschiedenen Betriebszustände A, B, C bzw. die verschiedenen Ereigniszeitpunkte 125, 126, die beispielsweise in Fig. 4 durch das Eindrehen der Schraube 169 in das Werkstück 137, das Eindrehen des Schraubenkopfes 170 in das Werkstück 137 und das ebene Abschließen des kegelförmigen Schraubenkopfes 170 mit der Oberfläche 167 des Werkstücks 137 beschrieben sind, kann in Folge der Synchronisation der beiden Zeitreihen, nämlich der Zeitreihe 123 der Messwerte 121 der Betriebsgröße 119 und der Zeitreihe des Sensorwerte des externen Sensors 171 , jeder Messwert 121 einem Betriebszustand Handwerkzeugmaschine 100 zugeordnet werden.
Über den Vergleich der Bilddaten des externen Kamerasensors 171 , in denen durch ein entsprechend geschultes Personal problemlos die verschiedenen Betriebszustände der Handwerkzeugmaschine 100 identifiziert werden können, und durch die Synchronisation der beiden Zeitreihen können die Messwerte 121 der Betriebsgröße 119 exakt den verschiedenen Betriebszuständen A, B, C zugeordnet werden. Durch die Berücksichtigung der Sensordaten des externen Sensors 171 können somit Messwerte 121 der Betriebsgröße 119 exakt gelabelt werden und über die entsprechenden Label klar definierten Betriebszuständen zugeordnet werden. Dies kann insbesondere auch für Betriebsgrößen 119 vorgenommen werden, deren Verlauf die jeweils verschiedenen Betriebszustände A, B, C bzw. die vorliegenden Ereigniszeitpunkte 125, 126 nicht eindeutig offenbaren.
So kann durch die Berücksichtigung der Bilddaten des externen Kamerasensors 171 der Ausführungsform in Fig. 4 exakt den Messwerten 121 der Zeitreiche 123 des Verlaufs des Motorstroms I der Grafik A der Figur 3 die verschiedenen Betriebszustände A, B, C und die vorliegenden Ereigniszeitpunkte 125, 126 exakt bestimmt werden, der jeweilige in Grafik A der Figur 3 dargestellt Verlauf des Motorstroms I derart verschiedene Betriebszustände A, B, C bzw. Ereigniszeitpunkte 125, 126 nicht explizit darstellt.
Alternativ zu den beschriebenen Verfahrensschritten können zum Erzeugen des Trainingsdatensatzes weitere Schritte vorgenommen werden. Beispielsweise können die aufgenommenen Messwerte 121 der Betriebsgröße 119 bzw. die Sensordaten des externen Sensors 171 in Standardeinheiten konvertiert werden. Ferner können die Messwerte des Drehwinkels arot vorbereinigt werden. Insbesondere wenn die Messwerte der Drehwinkel arot über Hall-Sensoren aufgezeichnet wurden, kann die Möglichkeit eines Overflows der Hall- Sensordaten in Bezug auf den verwendeten Datentyp Unit 16 berücksichtigt werden.
Insbesondere können aufgenommene Drehwinkel arot, für welche durch den kontinuierlichen Betrieb und Datentyp-bedingt ein Overflow auftreten kann, auf einen kontinuierlichen Wertebereich korrigiert werden. Dies kann vorteilhafterweise durch Verschieben der Winkelwerte auf den Anfangswert Null erreicht werden, wodurch der Drehwinkel zu jedem Zeitpunkt den Winkelfortschritt gegenüber dem Startpunkt (bspw. des Einschraubvorgangs) widerspiegelt. Ferner können die Zeitreihen 123 der Messwerte 121 der Betriebsgröße 119 wie auch die Zeitreihe der Sensordaten des externen Sensors 171 auf die Zeitbereiche verkürzt werden, in denen der tatsächliche Betrieb der Handwerkzeugmaschine 100 erfolgt. Gemäß der in Fig. 4 dargestellten Ausführungsform können die Zeitreihen auf den tatsächlichen Verschraubungsfall beschränkt werden, in dem die Schraube 169 tatsächlich in das Werkstück 137 eingeschraubt wird. Messwerte, die vor Beginn des Schraubvorgangs und nach Beendigung des Schraubvorgangs aufgenommen wurden, können aus den Zeitreihen entfernt werden. Alternativ können auch alle Daten vor bzw. nach einem festgelegten Zeitpunkt vor bzw. nach dem gelabelten Ereigniszeitpunkt 125, 126 entfernt werden, um hierdurch die Zeitreihen 123 zu verkürzen und die Datenmengen zu verringern.
Ferner kann ein Runterskalieren einer Erfassungsrate der Aufnahme der Messwerte bzw. Sensordaten erfolgen. Darüber hinaus kann ein Filtern der aufgenommenen Messwerte bzw. Sensordaten bewirkt werden.
Ferner kann eine Merkmalsextraktion durchgeführt werden, um abgeleitete Sensorsignale zu erhalten, wie beispielsweise Vektorlängen der Beschleunigung, Vektorlängen der Drehrate aus einem Gyroskop, Motorumdrehungen pro Sekunde.
Darüber hinaus kann der Trainingsdatensatz wie im Maschinenlearning üblich in Trainingsdaten und Validierungsdaten bzw. Testdaten aufgeteilt werden. Die Aufteilung kann hierbei beispielsweise wie folgt erfolgen, 70 % Trainingsdaten, 20 % Testdaten und 10 % Validierungsdaten.
Im Zuge der Aufteilung der Daten in Trainings-, Validierungs- und Testdaten kann ein sogenannter Stratified Split durchgeführt werden.
Zum Nachweis der Generalisierung der Funktion über typische Betriebsbereiche hinweg kann jedoch vorteilhaft ein abweichender Split genutzt werden, insbesondere indem nur bestimmte Betriebsbereiche für das Training und andere für Validierung bzw. Test genutzt werden. In diesem Fall wird das Erreichen der gewünschten Generalisierung dadurch angezeigt, dass die Genauigkeit der Funktion auf dem Test-Datensatz nur unwesentlich schlechter ist als die Genauigkeit der Funktion im Test-Datensatz bei einem Stratified Split. Als geeignete Betriebsparameter können insbesondere Schraubenlängen, Drehzahl, Schraubenduchmesser, Art und Härte des Holzes sowie weitere Parameter der Anwendung genutzt werden.
Ferner können Normalisierungsparameter berechnet werden. Hierbei kann beispielsweise ein Min-Max-Scaling-Verfahren (Parameter pro Signal: Minimum, Maximum) oder ein Standardisierungsverfahren (Parameter pro Signal: Mittelwert und Standardabweichung) zum Einsatz kommen. Die Parameter können hierbei ausschließlich anhand des Trainingsdatensatzes berechnet werden. Hierbei bleibt zu berücksichtigen, dass die Normalisierungsparameter nicht in Abhängigkeit eines gewählten Paddings verfälscht werden.
Da in Abhängigkeit des ausgeführten Betriebs der Handwerkzeugmaschine 100, beispielsweise des in den Ausführungsformen der Figuren 3 und 4 beschriebenen Schraubfalls, die jeweiligen Zeitreihen 123 eine unterschiedliche Länge aufweisen können, da unterschiedlich lange Schraubfälle durchgeführt wurden, können die Trainingsdaten auf eine einheitliche Länge zusammengeschnitten werden. Dies ist erforderlich, da die Eingangsdaten der künstlichen Intelligenz ein einheitliches Datenformat aufweisen müssen. Hierbei kann weiter berücksichtigt werden, ob die derart gepaddeten Daten in allen Signalen eine 0 aufweisen, oder ob sie eine Kopie der ersten (Startpadding) bzw. letzten (Endpadding) realen Daten darstellen.
Bei der zu Figur 9 beschriebenen Architektur des neuronalen Netzes wird aufgrund der genutzten Netzarchitektur, bei welcher innerhalb des Netzes ein effektives Downsampling durch die Pooling-Layer erfolgt, zusätzlich mithilfe des Paddings sichergestellt, dass alle Zeitreihendaten durch den Gesamt-Pooling- Faktor Fp teilbar sind, der sich aus dem Produkt der einzelnen Pooling-Faktoren im Netzwerk ergibt. Hierdurch kann sichergestellt werden, dass zu jeder Gruppe von Fp Samples eine eindeutige Zuordnung eines Labels des Ausgangswerts existiert. In der gezeigten geeigneten Netzwerkarchitektur ergibt sich aus den Pooling-Layern Fp=16.
Das Testdatenset kann hingegen ungepaddet verwendet werden, wobei für die letzten Samples typischerweise kein Ergebnis mehr berechnet werden kann.
Alternativ können Augmentierungstechniken ausgeführt werden, um hierüber neue Daten zu erzeugen, die prinzipiell echten Daten entsprechen. Hierüber können beispielsweise neue Zeitreihen von Daten der Betriebsgröße 119 generiert werden.
Abschließend kann eine Normalisierung auf Basis der zuvor berechneten Normalisierungsparameter (Standardisierung oder Mini-Max-Scaling) ausgeführt werden.
Neben der Ausführung als Kamerasensor kann der externe Sensor 271 beispielsweise auch als ein Mikrofon ausgebildet werden. Auch können mehrere externe Sensoren verwendet werden.
Die Datenerfassung kann auf unterschiedlichen Geräten, beispielsweise einem Microcontroller und einem Raspberry-Pi aufgezeichnet werden. Die Daten sowohl der Betriebsgröße 119 als auch die Daten des externen Sensors auf der Handwerkzeugmaschine 100 können aufgenommen und an die externe Serverarchitektur übertragen werden. Aufgrund der unterschiedlichen Samplerate zwischen den verschiedenen Sensoren 171 und den Sensoren zum Erfassen der Betriebsgröße 119 kann eine Vorverarbeitung der erfassten Daten notwendig sein. Hierbei können insbesondere Metadaten überprüft werden.
Das Labelling der Messwerte 121 kann als ein Ereignislabel ausgeführt sein, in dem jeder Messwert 121 ein entsprechender Zeitpunkt zugeordnet wird. Alternativ oder zusätzlich kann ein Zustandslabelling ausgeführt werden, in dem jeder Messwert 121 einem entsprechenden Zeitbereich zugeordnet wird. Ferner können die Messwerte 121 der Betriebsgröße 119 und/oder die Sensordaten des externen Sensors 171 eines Sanity-Checks unterzogen werden, in dem die Fehlerfreiheit der jeweiligen Daten überprüft wird.
Fig. 12 zeigt ein Flussdiagramm eines Verfahrens 400 zum Trainieren einer künstlichen Intelligenz 149.
Zum Training der künstlichen Intelligenz 149 gemäß dem erfindungsgemäßen Verfahren 400 zum Trainieren einer künstlichen Intelligenz 149 zum Ermitteln eines Betriebszustands A, B, C eine Handwerkzeugmaschine 100 wird zunächst in einem Verfahrensschritt 401 ein gemäß dem Verfahren 300 nach einer der oben beschriebenen Ausführungsformen generierter Trainingsdatensatz bereitgestellt.
In einem Verfahrensschritt 403 wird eine Ausführung des Trainings der künstlichen Intelligenz 149 zum Ermitteln eines Betriebszustands A, B, C und/oder zum Vorhersagen eines Ereigniszeitpunkts 125, 126 einer Handwerkzeugmaschine 100 basierend auf dem Trainingsdatensatz ausgeführt. Das Training kann hierbei gemäß den aus dem Stand der Technik bekannten Trainingsmethoden erfolgten.
Experimentell hat sich für das Training der Modell-Architektur der künstlichen Intelligenz der zu Figur 9 beschriebenen Ausführungsform eine Batch Size von 16 als vorteilhaft erwiesen. Als Optimierungsalgorithmus kann der Adam- Algorithmus zu befriedigenden Ergebnissen führen. Spezifisch für den hier behandelten Anwendungsfall ist eine relativ geringe Learning Rate von 0.0001 ausreichend. Dadurch bedingt wird eine vergleichsweise hohe Anzahl an Trainingsepochen benötigt. Typischerweise muss im Vorfeld keine Obergrenze für die Anzahl der Epochen definiert werden, und das Training kann erst dann beendet werden, wenn mit Hilfe des Validierungsdatensatzes festgestellt wird, dass über längere Zeit keine Verbesserung des Modells mehr erzielt werden kann (sogenanntes Early Stopping). In einer für den hier behandelten Anwendungsfall vorteilhaften Trainingseinstellung wird diese „längere Zeit“ als 300 Epochen definiert.
Da im Zuge der Entwicklung jedoch immer wieder beobachtet wird, dass Trainings für die gewählte Learning Rate relativ früh (~ nach weniger als 2000 Epochen) abgebrochen werden, und entsprechende Modelle eindeutig schlechter abschneiden, als Modelle, die über mehr Epochen trainiert wurden, wird das Early Stopping insofern erweitert, als dass eine minimale Anzahl an Epochen definiert werden kann. In der Folge wird üblicherweise ein Minimum von 2000 oder 1500 Epochen konfiguriert. Als Loss-Funktion wird die mittlere quadratische Abweichung (Mean Squared Error, MSE) genutzt.
Typischerweise ist es vorteilhaft, das Training zunächst mit einem Teil der Zeitreihendaten zu beginnen, bevor die gesamte Zeitreihe genutzt wird. Insbesondere kann der Bereich um einen kritischen (z.B. zu detektierenden) Punkt herum genutzt werden, um das grobe Verhalten des Modells anzutrainieren. Erst in einem weiteren Schritt (nach beispielsweise 10%-50% der gesamten Trainings-Epochen) wird dann die gesamte Zeitreihe genutzt, um das Modellverhalten auch in den zeitlich entfernteren Bereichen anzutrainieren.
Diese Herangehensweise ist besonders vorteilhaft, da hiermit die Wahrscheinlichkeit reduziert wird zu einem nicht-optimalen Trainingsergebnis zu kommen. Für typische Anwendungen von Schraubern und Bohrern kann ein Bereich von 0,1s bis 10s vor und nach dem Ereigniszeitpunkt genutzt werden, wobei sich 0,5s als besonders geeignet für den hier behandelten Anwendungsfall herausgestellt hat.
Um die Modellqualität nach Abschluss des Trainings beurteilen zu können, erfolgt zunächst eine automatisierte theoretische Evaluierung auf Basis eines Test-Datensatzes. Der Testdatensatz hat hierbei dieselben Vorverarbeitungsschritte durchlaufen, die auch zur Inferenzzeit auf dem Microcontroller ausgeführt werden. Diese umfassen wie oben beschrieben: Konvertierung in SI-Einheiten, Berechnung der Umdrehungen pro Sekunde auf Basis des Hall Sensor Signals, Normalisierung auf Grundlage der Normalisierungsparameter, die auf dem Trainingsdatensatz bestimmt werden.
Im Zuge der Evaluierung werden diese Daten, die den Daten im Live-Einsatz entsprachen, in das Modell eingespeist, um so das Verhalten des Modells zu analysieren. Da die Aktivierungsfunktion des Ausgabeneurons als Tangens Hyperbolicus (tanh) definiert ist, liegen die Outputs innerhalb des Wertebereichs [-1 , 1], Als Auslösezeitpunkt wird der Zeitpunkt innerhalb der Vorhersage- Zeitreihe betrachtet, zu dem erstmalig ein gesetzter Schwellenwert überschritten wird. Dieser kann bei 0, aber auch näher an -1 bzw.1 liegen, um die Auslöse- Empfindlichkeit anzupassen.
Die Anpassung des Schwellwerts kann dabei entweder vor Auslieferung festgelegt werden (Vorteil: Einheitliches Verhalten) oder in der Anwendung adaptierbar gehalten werden, z.B. durch einen Einstellregler. Dies hat den Vorteil, dass ein passenderes Verhalten für unterschiedliche Situationen auswählbar ist. Ein typischer fester Schwellwert liegt zwischen 0 und -1, wodurch eine frühere Auslösung erreicht wird und auftretende Verzögerungen durch die Prozessierung sowie Trägheit der Maschine kompensiert werden können. Als besonders geeigneter Wert hat sich -0,85 herausgestellt, um eine erhöhte Empfindlichkeit bei noch akzeptabler Wahrscheinlichkeit von Fehlauslösungen zu erreichen.
Für die zu den Figuren 3 und 4 beschriebene Ausführungsform werden vorrangig zwei anwendungsbezogene Metriken herangezogen, in denen zudem für jede Material-Schraube-Kombination differenziert betrachtet werden. Dabei handelte es sich um:
Die durchschnittliche absolute Abweichung des Auslösezeitpunkts vom gewünschten (=gelabelten) Auslösezeitpunkt, gemessen in Motorumdrehungen. Ferner wird die relative Abweichung zum gewünschten Auslösezeitpunkt auch in Form einer Häufigkeitsverteilung betrachtet, da auf diese Weise ersichtlich ist, ob das Modell tendenziell zu früh oder zu spät auslöst, oder ob der Modalwert (wie erwünscht) bei 0 liegt. Die Anzahl bzw. der Anteil der Verschraubungen, bei denen das Modell zu keinem Zeitpunkt auslöste.
Der MSE des Losses spielt eine untergeordnete Rolle, da für den realen Einsatz weniger die genaue Vorhersage für die gesamte Zeitreihe entscheidend ist, sondern vielmehr der Zeitpunkt des Auslösens von Bedeutung ist. Es hat sich allerdings gezeigt, dass der MSE zumeist mit den anwendungsbezogene Metriken korreliert.
Für eine als Schrauber ausgebildete Handwerkzeugmaschine 100 kann für das Training der künstlichen Intelligenz 149 des Zustandsbestimmungsmoduls 107 kann eine Mehrzahl von Kombinationen eines Schraubentyps der Schraube 169 und eines Materialtyps des jeweiligen Werkstücks 137 berücksichtigt werden.
Es können verschiedene Parameter berücksichtigt werden, die einen Einfluss auf die Güte des Trainings der künstlichen Intelligenz 149 und deren spätere Performanz im Ermitteln der Betriebszustände haben. Dazu gehören insbesondere Material (z.B. Holzart), Länge/Durchmesser/Steigung/Gewindeart der Schraube, Geschwindigkeit bei der Verschraubung, sowie Nutzer-Einflüsse wie Verkippung und aufgewendeter Druck. Da es praktisch unmöglich ist, für jede denkbare Kombination Daten, noch dazu in ausreichender Menge, aufzuzeichnen, ist es vorteilhaft ausgewählte Kombinationen von unterschiedlichen gängigen Schraubtypen mit einer Auswahl von Materialien unterschiedlicher Härte zu nutzen. Die Information über die verwendete Schraube-Material-Kombination können in Form von Metadaten gespeichert und im Training verwendet werden. Generell ist dabei zu achten, dass für jede Kombination eine ausreichende Anzahl von Aufzeichnungen (mindestens 25, besser mehr) durchgeführt wird. Ebenso ist es vorteilhaft, wenn von keiner Kombination deutlich mehr Verschraubungen genutzt werden als bei anderen Kombinationen, um letztlich eine ausgewogene Datengrundlage für das Kl- Training zu erhalten. Im Folgenden wird ein Beispiel für mögliche Schraube-Holz-Kombinationen für den Anwendungsfall „Verschraubung in Holz“ bereitgestellt.
Verwendet wurden Kombinationen von verschiedenen anwendungsrelevanten Holzarten (z.B. OSB, Kiefer, Buche, Fichte) und Schraubenarten mit typischen Durchmessern von 2mm bis 6mm, Längen von 20mm bis 100mm, Kopfformen für Torx oder Pozidrive sowie mit oder ohne selbstschneidende Gewinde. Hierbei müssen nicht für jede Abstufung und Kombination von Materialeigenschaften Aufzeichnungen vorhanden sein, soll jedoch eine ausreichende Breite an Abdeckung vorhanden sein. Eine Anzahl von 100 oder mehr Kombinationen hat sich als geeignet herausgestellt. Hierbei ist insbesondere zu vermeiden, dass ungewollte Korrelationen (bspw. zwischen Holzart und Schraubenart) in den Aufzeichnungen existieren, die nicht der Wirklichkeit in der Anwendung entsprechen.
Alternativ zu den oben beschriebenen Ausführungsformen kann das Zustandsbestimmungsmodul 107 auch eine anders ausgestaltete künstliche Intelligenz 149 oder eine Mehrzahl von künstlichen Intelligenzen 149 umfassen. Beispielsweise kann das Zustandsbestimmungsmodul 107 ein anders ausgebildetes künstliches neuronales Netz umfassen, beispielsweise ein Temporal Convolutional Network oder ein Covolutional Network. Alternativ kann das Zustandsbestimmungsmodul 107 auch Modelle wie Decision Tress oder Ensemble Modelle umfassen.
Das Zustandsbestimmungsmodul 107 kann insbesondere als ein Klassifikator ausgebildet und eingerichtet sein, durch Ausführung einer Klassifikation der einzelnem Messwerte 121 der Betriebsgröße 119 der Zeitreihe 123 durchzuführen, die einzelnen Messwerte 121 der Betriebsgröße 119 entsprechenden Betriebszuständen A, B, C zuzuordnen und hierüber die Ereigniszeitpunkte 125, 126 zu ermitteln oder vorherzusagen. Die Messwerte 121 der Betriebsgröße 119 können hierbei während des Betriebs der Handwerkzeugmaschine 100 gemäß eines Sliding Window durch das Zustandsbestimmungsmoduls 107 verarbeitet und gemäß der Klassifikation entsprechenden Betriebszuständen A, B, C zugeordnet werden. Gemäß einem Sliding Window werden die Zeitreihen 123 der aufgenommenen Messwerte 121 somit durch das Zustandsbestimmungsmodul 107 analysiert und hierdurch die Betriebszustände A, B, C ermittelt beziehungsweise die Ereigniszeitpunkte 125, 126 vorhergesagt.
Fig. 13 zeigt eine schematische Darstellung eines Computerprogrammprodukts 500, umfassend Befehle, die bei der Ausführung des Programms durch eine Datenverarbeitungseinheit diese veranlassen, das Verfahren 200 zum Steuern einer Handwerkzeugmaschine 100 nach einer der voranstehenden Ausführungsformen und/oder das Verfahren 300 zum Erzeugen eines Trainingsdatensatzes nach einer der voranstehenden Ausführungsformen und/oder das Verfahren 400 zum Trainieren einer künstlichen Intelligenz 149 und/oder die künstliche Intelligenz 149 auszuführen. Das Computerprogrammprodukt 500 ist in der gezeigten Ausführungsform auf einem Speichermedium 501 gespeichert. Das Speichermedium 501 kann hierbei ein beliebiges aus dem Stand der Technik bekanntes Speichermedium sein.

Claims

Ansprüche
1. Verfahren (200) zum Steuern einer Handwerkzeugmaschine (100), umfassend:
Empfangen (201) von Sensordaten wenigstens einer Betriebsgröße (119) der Handwerkzeugmaschine (100);
Empfangen (203) eines auf einer Nutzereingabe eines Nutzers der Handwerkzeugmaschine (100) basierenden Eingabewerts für einen Steuerungsparameter der Handwerkzeugmaschine (100);
Ermitteln (205) eines ersten Zielwerts des Steuerungsparameters basierend auf den Sensordaten und dem Eingabewert;
Ausführen (207) eines Zustandsbestimmungsmoduls (107) auf die Sensordaten und Ermitteln eines Betriebszustands (A, B, C) der Handwerkzeugmaschine (100); und
Steuern (209) der Handwerkzeugmaschine (100) basierend auf dem ersten Zielwert des Steuerungsparameters und dem ermittelten Betriebszustand (A, B, C).
2. Verfahren (200) nach Anspruch 1 , wobei das Steuern (209) der Handwerkzeugmaschine (100) umfasst:
Ermitteln (211) eines zweiten Zielwerts des Steuerungsparameters basierend auf dem ermittelten Betriebszustand (A, B, C) der Handwerkzeugmaschine (100);
Ermitteln (213) eines Ausgabezielwerts des Steuerungsparameters basierend auf dem ersten Zielwert und dem zweiten Zielwert; und Ausgeben (215) des Ausgabezielwerts an eine Aktorik der Handwerkzeugmaschine (100) zum Steuern der Handwerkzeugmaschine (100).
3. Verfahren (200) nach Anspruch 2, wobei das Ermitteln (213) des Ausgabezielwerts umfasst:
Definieren (217) des Ausgabezielwerts als einen Minimalwert oder einen Maximalwert der ersten und zweiten Zielwerte; und/oder Definieren (219) des Ausgabezielwerts als ein Produkt aus den ersten und zweiten Zielwerten.
4. Verfahren (200) nach Anspruch 2 oder 3, wobei das Ermitteln (213) des Ausgabezielwerts umfasst:
Definieren (221) des Ausgabezielwerts als den ersten Zielwert, falls der zweite Zielwert kleiner als ein vordefinierter Schwellenwert ist, und Definieren des Ausgabezielwerts als einen vordefinierten Zielwert, falls der zweite Zielwert größer oder gleich dem vordefinierten Schwellenwert ist.
5. Verfahren (200) nach einem der voranstehenden Ansprüche 2 bis 4, wobei das Ermitteln (213) des Ausgabezielwerts umfasst:
Definieren (223) des Ausgabezielwerts als ein Produkt aus dem ersten Zielwert mit einem ersten vordefinierten Zielwert, falls der zweite Zielwert kleiner als ein vordefinierter Schwellenwert ist, und Definieren des Ausgabezielwerts als ein Produkt aus dem ersten Zielwert mit einem zweiten vordefinierten Zielwert, falls der zweite Zielwert größer oder gleich dem vordefinierten Schwellenwert ist.
6. Verfahren (200) nach einem der voranstehenden Ansprüche, wobei das Ermitteln (207) des Betriebszustands (A, B, C) umfasst: Vorhersagen (225) eines Ereigniszeitpunkts (125, 126), wobei am Ereigniszeitpunkt (125, 126) ein Übergang der Handwerkzeugmaschine (100) von einem Betriebszustand (A, B, C) in einen weiteren Betriebszustand (A, B, C) erfolgt.
7. Verfahren (200) nach einem der voranstehenden Ansprüche, wobei der Steuerungsparameter eines oder mehrere aus der Liste umfasst: Motordrehzahl, Motorstrom, Motorleistung eines Motors der Handwerkzeugmaschine (100).
8. Verfahren (200) nach einem der voranstehenden Ansprüche, wobei die Betriebsgröße (119) eines oder mehrere aus der Liste umfasst: Motorstrom, Motor-Positionswinkel, Motor-Drehgeschwindigkeit, Spannung einer Spannungsquelle der Handwerkzeugmaschine (100).
9. Verfahren (200) nach einem der voranstehenden Ansprüche, wobei der Betriebszustand (A, B, C) eines oder mehrere aus der Liste umfasst: einen Lastbereich, in dem die Handwerkzeugmaschine (100) betrieben wird, eine Stärke von Vibrationen in der Handwerkzeugmaschine (100) und/oder an einem bearbeiteten Werkstück (167) und/oder im Nutzer der Handwerkzeugmaschine (100), eine Temperatur in der Handwerkzeugmaschine (100) und/oder am Werkstück (167), Betriebsmodus, in dem die Handwerkzeugmaschine (100) betrieben wird, einen Arbeitsfortschritt der Handwerkzeugmaschine (100), Material des Werkstücks (167), eine Existenz eines Formschlusses zwischen der Handwerkzeugmaschine (100) und dem Werkstück (167).
10. Verfahren (200) nach einem der voranstehenden Ansprüche, wobei das Zustandsermittlungsmodul (107) eine trainierte künstliche Intelligenz (149) umfasst, die darauf trainiert ist, basierend auf den Sensordaten der Betriebsgröße den Betriebszustand (A, B, C) der Handwerkzeugmaschine (100) zu ermitteln und/oder den Ereigniszeitpunkt (125, 126) vorherzusagen.
11. Recheneinheit (105), die eingerichtet ist, das Verfahren (200) zum Steuern einer Handwerkzeugmaschine (100) nach einem der voranstehenden Ansprüche 1 bis 10 auszuführen.
12. Computerprogrammprodukt (500) umfassend Befehle, die bei der Ausführung des Programms durch eine Datenverarbeitungseinheit diese veranlassen, das Verfahren (200) zum Steuern einer Handwerkzeugmaschine (100) nach einem der voranstehenden Ansprüche 1 bis 10 auszuführen.
13. Handwerkzeugmaschine (100) mit einer Recheneinheit (107) nach Anspruch 11 und wenigstens einem Sensor zum Ermitteln von Sensordaten wenigstens einer Betriebsgröße der Handwerkzeugmaschine (100).
EP24700738.8A 2023-01-26 2024-01-11 Verfahren zum steuern einer handwerkzeugmaschine und handwerkzeugmaschine Pending EP4655136A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102023200627.8A DE102023200627A1 (de) 2023-01-26 2023-01-26 Verfahren zum Steuern einer Handwerkzeugmaschine und Handwerkzeugmaschine
PCT/EP2024/050526 WO2024156515A1 (de) 2023-01-26 2024-01-11 Verfahren zum steuern einer handwerkzeugmaschine und handwerkzeugmaschine

Publications (1)

Publication Number Publication Date
EP4655136A1 true EP4655136A1 (de) 2025-12-03

Family

ID=89620735

Family Applications (1)

Application Number Title Priority Date Filing Date
EP24700738.8A Pending EP4655136A1 (de) 2023-01-26 2024-01-11 Verfahren zum steuern einer handwerkzeugmaschine und handwerkzeugmaschine

Country Status (4)

Country Link
EP (1) EP4655136A1 (de)
CN (1) CN120641245A (de)
DE (1) DE102023200627A1 (de)
WO (1) WO2024156515A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12627107B2 (en) 2021-08-11 2026-05-12 Milwaukee Electric Tool Corporation System and methods for determining crimp applications and reporting power tool usage
US12489382B2 (en) 2021-12-15 2025-12-02 Milwaukee Electric Tool Corporation Adaptive trigger mapping

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017126186A1 (de) * 2017-11-09 2019-05-09 Metabowerke Gmbh Elektrowerkzeugmaschine und Verfahren zum Betrieb einer Elektrowerkzeugmaschine
DE102019200527A1 (de) * 2019-01-17 2020-07-23 Robert Bosch Gmbh Handwerkzeugmaschine
US11845173B2 (en) * 2020-10-16 2023-12-19 Milwaukee Electric Tool Corporation Anti bind-up control for power tools
SE544532C2 (en) * 2020-12-18 2022-07-05 Husqvarna Ab Improved fault detection methods for power tools

Also Published As

Publication number Publication date
CN120641245A (zh) 2025-09-12
WO2024156515A1 (de) 2024-08-02
DE102023200627A1 (de) 2024-08-01

Similar Documents

Publication Publication Date Title
DE102023200602A1 (de) Verfahren zum Erzeugen eines Trainingsdatensatzes, Verfahren zum Trainieren einer künstlichen Intelligenz, künstliche Intelligenz und Handwerkzeugmaschine
WO2024156515A1 (de) Verfahren zum steuern einer handwerkzeugmaschine und handwerkzeugmaschine
DE4339117C2 (de) Verfahren zur Überwachung des Setzvorgangs von Blindnieten und Blindnietmuttern und Setzgerät für Blindniete und Blindnietmuttern
DE102019006725B4 (de) Steuereinrichtung und Steuersystem
DE3331793A1 (de) Einrichtung zum feststellen von werkzeugabnutzung
DE102020100316A1 (de) Bestimmungsgerät
EP4041496B1 (de) Verfahren zum einlernen von anwendungsabschaltungen mit hilfe des auffindens von charakteristischen signalformen
DE102023200604A1 (de) Verfahren zum Steuern einer Handwerkzeugmaschine und Handwerkzeugmaschine
DE4316332C2 (de) Schraubvorrichtung mit Erfassung, Überwachung und Regelung meßbarer Schraubenparameter während des Schraubvorganges und Verfahren zum Herstellen qualitativ hochwertiger Schraubverbindungen
DE102023200623A1 (de) Verfahren zum Steuern einer Handwerkzeugmaschine und Handwerkzeugmaschine
EP4003654A1 (de) Verfahren zum betrieb einer handwerkzeugmaschine
DE102019211303A1 (de) Verfahren zur Erkennung eines Arbeitsfortschrittes einer Handwerkzeugmaschine
DE102022210619A1 (de) Verfahren zum Betrieb einer Handwerkzeugmaschine
DE102023200615A1 (de) Verfahren zum Auswählen von Daten für ein Training einer künstlichen Intelligenz, Verfahren zum Erzeugen eines Trainingsdatensatzes, Trainingsdatensatz
DE102023200607A1 (de) Verfahren zum Steuern einer Handwerkzeugmaschine und Handwerkzeugmaschine
DE102023200618A1 (de) Verfahren zum Auswählen von Daten für ein Training einer künstlichen Intelligenz, Verfahren zum Erzeugen eines Trainingsdatensatzes, Trainingsdatensatz
DE102023200619A1 (de) Verfahren zum Auswählen von Daten für ein Training einer künstlichen Intelligenz, Verfahren zum Erzeugen eines Trainingsdatensatzes, Trainingsdatensatz
DE102023200617A1 (de) Verfahren zum Steuern einer Handwerkzeugmaschine und Handwerkzeugmaschine
DE102023200610A1 (de) Verfahren zum Steuern einer Handwerkzeugmaschine und Handwerkzeugmaschine
DE102023200608A1 (de) Verfahren zum Steuern einer Handwerkzeugmaschine und Handwerkzeugmaschine
EP1887308B1 (de) Vorrichtung und Verfahren zur Gewindeprüfung
EP4263137A1 (de) Verfahren zum betrieb einer handwerkzeugmaschine
EP4232240A1 (de) Verfahren zum betrieb einer handwerkzeugmaschine
DE102017223713A1 (de) Verfahren und Vorrichtung zum Setzen von Blindnieten oder Blindnietmuttern
DE102021130576A1 (de) Verfahren zur Überprüfung der Funktionsfähigkeit eines Schraubwerkzeugs

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20250826

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC ME MK MT NL NO PL PT RO RS SE SI SK SM TR

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)