Device and method for stepper motor control and 3D printer

DE102022121582B4Active Publication Date: 2025-03-27ISEPOS
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
DE102022121582
Authority / Receiving Office
DE · DE
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-08-25
Publication Date
2025-03-27
Estimated Expiration
2042-08-25

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

Device for controlling at least one stepper motor, comprising a unit for inputting target coordinates (P1, P2, P3), a unit for converting the target coordinates into a primary velocity profile (Vx, Vy, VL) to achieve the target coordinates, a unit for FIR filtering of the primary velocity profile (Vx, Vy, VL) and a control output for connection to the stepper motor to be controlled.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL AREA

[0001] The invention relates to a method and a device for controlling a stepper motor, in particular for stepper motors in 3D printers and 3D printers with such stepper motors. STATE OF THE ART

[0002] Stepper motors, due to their control via countable increments, are particularly suitable for use in devices where precise and repeatable positioning is crucial, such as scanners, medical imaging devices (tomography), robot joints, or printers. Especially in modern 3D printers with multiple coordinated axes, a whole series of stepper motor groups work together functionally, placing increased demands on the synchronized movement sequences and the positioning accuracy of all stepper motors.

[0003] The typically desired maximum operating speed necessitates covering larger distances at high speed. Typically, each stepper motor is driven from a first target coordinate (e.g., starting position) with constant acceleration up to its maximum speed. Then, after traversing a portion of the distance at maximum speed, it is decelerated again at a constant rate before reaching the second target coordinate (target position). This process is repeated accordingly to approach further target coordinates.

[0004] Depending on the size of the device and the masses of the moving components, significant inertial forces act on it during any change in velocity (direction and / or magnitude), which in turn are accompanied by corresponding mechanical stresses. Particularly when starting from a standstill and during significant changes in direction, a jerk (derivative of acceleration) occurs, the theoretically infinite value of which is only reduced by elastic effects of the mechanical structure, the inertia of the rotor, and the generation of a trailing angle.

[0005] If certain limits are exceeded during speed changes, an overloaded stepper motor can momentarily lose its cadence. The load torque acting on the stepper motor exceeds the maximum torque the motor can deliver: the rotor can no longer follow the stator's predefined magnetic field, and steps are skipped (slippage). Simply increasing the torque by using more powerful stepper motors is not possible in many applications. Especially in 3D printers, stepper motors are part of the moving components, and increasing their size leads to correspondingly larger moving masses and thus increased moments of inertia.

[0006] Furthermore, stepper motors exhibit significant wear and tear, especially at high speeds and accelerations. This wear is exacerbated by vibrations and can lead to substantial damage. Therefore, regular and thorough maintenance of these stepper motors is crucial to prevent malfunctions, particularly those caused by mechanical damage.

[0007] EP 3 142 244 B1 describes a method for detecting step losses in a stepper motor by measuring the temporal behavior of the active power dP / dt. This method assumes that there are no abrupt changes in load during normal operation, as these would otherwise be incorrectly interpreted as step losses. This limitation restricts the applicability of the method disclosed in this document to applications where stepper motors are only moderately loaded (small moving masses, low accelerations and speeds).

[0008] US patent application US 2021 / 0405614A1 discloses a command generation device for controlling a motor, in which control commands are generated iteratively, thereby smoothing the motor's path. This control using the command generation device proves to be very complex. DESCRIPTION OF THE INVENTION

[0009] The invention is based on the objective of developing an improved control system for stepper motors and corresponding 3D printers compared to the prior art, which is characterized in particular by reduced susceptibility to malfunctions, precision and ease of maintenance.

[0010] This problem is solved according to the invention with a device having the features specified in claim 1. This problem is solved according to the invention with a 3D printer having the features specified in claim 12. This problem is solved according to the invention with a control method having the features specified in claim 13. Advantageous embodiments of the invention are the subject of the dependent claims.

[0011] The device according to the invention for controlling at least one stepper motor comprises a unit for inputting target coordinates to be approached, a further unit for converting the target coordinates into a primary speed profile for achieving the target coordinates, a unit for FIR filtering of the primary speed profile, and a control output for connection to the stepper motor to be controlled.

[0012] In this context, FIR filtering has proven particularly advantageous, as this type of digital filtering allows for the implementation of various filter functions, which are then applied to the primary velocity profile at a corresponding sample rate. This results in modified motion sequences after the associated stepper motor is activated. These modified motion sequences are characterized by a smoother velocity profile, which reduces abrupt accelerations and the associated shocks and vibrations, thereby improving the stepper motors' susceptibility to interference.

[0013] For filtering the primary velocity profile, it has proven effective to further develop the control device by implementing a filter function in the FIR filtering unit. This filter function is continuous, differentiable, and asymptotically approaching zero in the initial and final regions of its curve. This results in particularly smooth and damped acceleration from a standstill, as well as deceleration and changes of direction, which has a particularly beneficial effect on the robustness of the stepper motor controlled in this way.

[0014] In a further preferred embodiment of the device for controlling a stepper motor, a filter function is implemented in the FIR filtering unit, which is designed as a symmetrical filter function. This advantageously ensures that, for example, acceleration and deceleration processes of the same magnitude are modified in the same way. Furthermore, it succeeds in preventing undesirable and abrupt changes during both acceleration and deceleration processes, and this can also be used efficiently in the programming of the FIR filter and thus in the dimensioning of the FIR filtering unit. It also makes the control process not only more efficient but also faster.

[0015] It has proven particularly effective to further develop the control device in such a way that a filter function is implemented in the FIR filtering unit, which is defined as cos 2The filter function is configured as a Gaussian or Tukey filter. These symmetrical filter functions have a limited number of parameters (e.g., window width) to define their shape, making them easy to define and implement. These particularly favored filter functions enable efficient programming and utilization of the FIR filtering unit, resulting in especially effective and fast control of a stepper motor.

[0016] In a preferred embodiment of the device according to the invention, the FIR filtering unit is implemented in an FPGA. The preferred filter function is then implemented in this FPGA. This choice of processor ensures efficient and very fast FIR filtering, which makes control very reliable and fast. This also offers, among other things, the simple possibility of subsequently changing the parameters of the filter function by overwriting them and also of changing the type of filter function, e.g., from a Tukey filter to a Gaussian filter.

[0017] In a further embodiment of an improved device according to the invention for control, the FIR filtering unit has a selectable window width for the filter function. This allows the filtering effect to be varied even with one and the same filter function (e.g., Gaussian). A larger window width results in greater smoothing and thus damping, leading to reduced acceleration values, particularly reduced acceleration peaks. Conversely, a smaller window width reduces the computational load on the FIR filtering and thus enables faster control. These advantageous effects are particularly easy to achieve with the aforementioned implementation of the filter function in an FPGA.

[0018] The device according to the invention for controlling at least one stepper motor is preferably further developed and designed such that target coordinates include a start value and an end value, and in particular one or more intermediate values. By providing intermediate values, it becomes possible to make the motion sequence defined by the control of the stepper motor even more reliable and less prone to vibration, which results in a reduction of abrupt changes in direction and thus of disruptive high accelerations. The intermediate values ​​can be implemented as intermediate values ​​of the target coordinates or as intermediate values ​​of the primary velocity profile and can therefore be selected differently depending on the situation.

[0019] In a preferred embodiment, the FIR filtering unit is designed such that FIR filtering occurs either only between adjacent target coordinates and / or can also be performed across intermediate target coordinates. This offers, among other advantages, the ability to traverse entire vector paths via various, and in particular multiple, intermediate positions in a single continuous process without stopping at the intermediate positions. Since the FIR filtering of the primary velocity profile and the selection of the various intermediate positions prevent excessive acceleration values, the entire mechanical arrangement involved in the traversing process is subjected to significantly less stress, the motors run more smoothly, and the excitation of unwanted vibrations or resonances is largely avoided.This is particularly advantageous in 3D printers, as they typically require traversing a very large number of vector paths, which can be traversed virtually in one continuous operation using the device according to the invention. This significantly reduces the time required to create a 3D print. Furthermore, it considerably improves ease of maintenance.

[0020] A preferred embodiment of the control device according to the invention is advantageously designed such that the control system synchronously comprises several stepper motors. This offers a particular advantage of the invention's use of an FIR filtering unit, since FIR filtering exhibits the property of a constant group delay, especially at identical sample rates. This ensures that when several filters are used simultaneously in the parallel operation of different stepper motors, all individual acceleration curves have the same rise times and are therefore synchronized. This also has the advantage that synergies in the device or in the implementation of the control method can be utilized.

[0021] This embodiment of the device according to the invention is therefore particularly suitable for controlling several stepper motors in parallel in such a way that, even with changing motion vectors across multiple axes, e.g., in a 3D printer, the acceleration values ​​do not change abruptly and the movement sequences are largely jerk-free, even across multiple intermediate positions. This damping effect allows the stepper motors to be controlled at higher average speeds without any step loss.

[0022] In a further development of the inventive device for controlling stepper motors, it has also been shown that it is suitable for optimizing not only motion sequences in the classic spatial domain but also other processes controlled by stepper motors. In addition to the classic target coordinates from spatial domain, other different control parameters or setting values ​​can now also form the basis for the target coordinates as generalized target coordinates to be controlled by stepper motors and can be provided for use or control. With these additional generalized target coordinates, there are also comparable problems with undesirable acceleration values, vibrations, or damage due to unfavorable control of the associated stepper motors.This offers the possibility of an advantageous embodiment of the invention in which, in addition to spatial coordinates, target coordinates also include at least one further control value, which in particular represents material quantities, rotation angles, orientation, dimensions for a nozzle opening, pressing pressures, temperatures, or a mixing ratio. This makes it possible to extend the advantages of the inventive control of stepper motors not only to arrangements with stepper motors for defining the spatial path but also to other arrangements with differentiated tasks and functions, thereby transferring the advantages. This applies in particular to 3D printers and, more specifically, to the control of stepper motors for component deposition.

[0023] In a preferred embodiment of the device for controlling at least one stepper motor, additional speed values ​​are added or set to zero in the target coordinates of the primary speed profile. These additional zero values, in particular, ensure that a sufficient number of speed values ​​are always available in the primary speed profile during FIR filtering, enabling interference-free FIR filtering and particularly smooth control of the stepper motors.These zero values ​​are preferably used at the start and end points of the entire movement path, particularly of the 3D print head, thus enabling a particularly smooth, low-interference, and vibration-free start-up from the starting position and a correspondingly smooth, low-interference, and vibration-free stop-motion at the end position, for example, of the print head of a 3D printer. These zero values ​​are not necessarily used at the start and end positions but can also be used at various other target coordinates between these positions.

[0024] The invention relates not only to a device for controlling a stepper motor in any device, but also to a 3D printer with at least one stepper motor equipped with at least one control device according to the invention. 3D printers, in particular, have a number of stepper motors for different tasks, which, especially due to the objective of a short and efficient printing process, are subject to particularly high stress and are especially susceptible to vibration and malfunctions. Failure of these components of a 3D printer must be avoided, which is why the use of the device or method according to the invention for controlling at least one stepper motor is particularly advantageous.

[0025] The invention relates, in addition to the device for controlling at least one stepper motor, to a method for controlling at least one stepper motor, in particular a 3D printer, in which target coordinates are entered, these are converted into a primary speed profile to achieve the target coordinates, and this primary speed profile is subsequently subjected to FIR filtering and the filtered speed profile is supplied to the stepper motor via a control output.

[0026] The control method according to the invention is carried out in several steps. In a first step, the target coordinates are entered, e.g., points in space that are to be approached as precisely as possible in succession using one or more stepper motors. From this, a vector path in spatial coordinate space is then typically created.

[0027] In a second step, the transition from spatial coordinate space to velocity space takes place. Trajectory segments between the target coordinates are converted into velocity vectors, each representing a velocity component for each stepper motor involved and also including a time component. Preferably, this time component is implemented as the number of sampling intervals and represents the time required for movement from the starting point of a trajectory segment to its endpoint for predefined velocity components. These velocity components together form the primary velocity profile. The primary velocity profile obtained in this way typically exhibits a piecewise linear progression between the target coordinates.

[0028] In a third step, the primary speed profile is filtered using FIR filtering, which smooths the speed profiles of the respective speed components of the individual stepper motors. The choice of the FIR filter characteristic, e.g., cos φ, is crucial. 2 -Function with a specific window width, has an influence on the shape or degree of smoothing of the speed profiles.

[0029] In a fourth step, the smoothed speed profiles of the individual stepper motors are fed to the respective stepper motors as step pulses via the control output.

[0030] This advantageous method for controlling at least one stepper motor makes it possible to modify the motion sequences and thereby ensure a smoother speed profile, which reduces unwanted abrupt accelerations and associated shocks and vibrations, and thus improves the susceptibility of the stepper motors to malfunctions.

[0031] In a preferred further development of the method for controlling at least one stepper motor, it was found to be advantageous not only to adjust the primary speed profile with an FIR filtering sequence, but also to repeatedly apply the FIR filtering process and thereby generate the final filtered speed profile from the primary speed profile through repeated FIR filtering. Two or more FIR filter cycles can be performed for this purpose. This allows the generated speed profile to be selectively smoothed or damped to a greater or lesser degree, particularly at high frequencies. This enables a particularly efficient reduction of disruptive acceleration peaks, thereby improving the safety, maintainability, and longevity of the method or device for controlling stepper motors, and consequently, the stepper motors themselves.

[0032] According to a preferred embodiment of the invention, the control output downstream of the FIR filter unit is designed to convert the smoothed velocity values ​​generated at the FIR filter output into displacement information. This is achieved by integrating the filtered velocity profile over time. As soon as the currently determined integral displacement corresponds to the step size of a step of the controlled stepper motor, the unit outputs a step pulse to the stepper motor. This results in a very efficient and reliable control of a stepper motor.

[0033] It has proven particularly advantageous to generate the step pulses at a multiple of the filter sample rate. The resulting interpolation provides a higher temporal resolution of the step sequence of the controlled stepper motor.

[0034] The individual process steps can be implemented as software on a powerful computer, but the available computing power can reach its limits when controlling many stepper motors in parallel. To ensure synchronous control of many stepper motors and a large number of target coordinates across multiple axes, as is particularly common in 3D printers, it can be advantageous to perform steps 3 (FIR filtering) and 4 (integration and step output) using hardware components (FPGA), thus significantly increasing the processing speed.

[0035] The method according to the invention smooths out the abrupt speed changes that typically occur in the primary speed profile. The subsequent step control, achieved through integration, is designed to ensure largely jerk-free acceleration and deceleration, while also significantly reducing moments of inertia during changes in direction. This results in particularly low wear on the stepper motors controlled according to the invention.

[0036] The device or method according to the invention for controlling at least one stepper motor is therefore particularly suitable for use in a 3D printer.

[0037] The invention is explained below by way of example with reference to preferred embodiments and the illustrations. The invention is not limited to these preferred embodiments. Fig. Figure 1 shows a schematic representation and an enlarged section of a travel path WL over three spatial coordinates P1...P3 in the XY plane with linear acceleration. Fig. 2 shows an example of a travel path according to Fig. 1 calculated primary velocity profile Fig. Figure 3 shows an example speed profile of the Fig. 2 after FIR filtering with cos 2 -Filter function Fig. Figure 4 shows an exemplary, modified travel path via positions P1...P3 of the Fig. 1 after controlling the stepper motors with the speed profile according to Fig. 3 Fig. Figure 5 shows another example speed profile of the Fig. 2. After FIR filtering with Tukey filter function Fig. Figure 6 shows an example of a travel path via positions P1...P3 of the Fig. 1 after controlling the stepper motors with the speed profile according to Fig. 5 Fig. Figure 7 shows exemplary relationships of speed, acceleration and jerk behavior for a starting process of a travel path, for example between two target coordinates, without FIR filtering according to the invention. Fig. Figure 8 shows the corresponding approach process of a travel path. Fig. 7 exemplary relationships of occurring velocity, acceleration and jerk behavior after FIR filtering with cos 2 -Filter function Fig. 9 shows the corresponding approach process of a travel path. Fig. 7 exemplary ratios of occurring velocity, acceleration and jerk behavior after FIR filtering with Tukey filter function Fig. Figure 10 shows in a schematic representation the different stages of the inventive control of a stepper motor

[0038] In Fig. Figure 1 schematically depicts an exemplary travel path, also called a target path, across three target coordinates P1, P2, and P3 in the XY plane, with the travel direction changing at P2. The predefined theoretical travel path WZ passes exactly over the target coordinate P2. To achieve such a precise travel path over P2 in the actual process, both stepper motors for the X and Y directions must be slowed down and thus decelerated before reaching the target coordinate P2, and must be brought to a complete stop upon reaching P2 – the same applies upon reaching the target coordinate P3, and so on. Such a process with intermediate stops at each target coordinate results in a very high time expenditure.

[0039] According to another example control method, the travel speed on a connecting path, e.g., P1 → P2, is changed to new speed values ​​before reaching the target coordinate, but is not reduced back to zero. This results in a significantly higher working speed in a process with numerous target coordinates to be approached sequentially. However, this is associated with a certain degree of positioning inaccuracy, as shown in the enlarged section below. Fig. 1 around the target coordinate P2 represented as path WR.

[0040] With larger changes in velocity (magnitude and / or direction), the resulting deviation WR from the ideal path WZ becomes increasingly pronounced. This is also related to the inertia of the moving masses and the associated inertial forces that occur during linear velocity changes in the region of the target coordinate P2 and the corresponding acceleration values. If the loads are too high, slippage can lead to lost steps, and the positioning accuracy decreases further and unpredictably.

[0041] Fig. Figure 2 shows, as an exemplary, schematic case study, a temporal velocity profile of such a process. The primary velocity profiles Vx and Vy are depicted over time, starting from a start position, passing through an intermediate position, and ending at a final position, with the intermediate position being traversed without a stop.

[0042] From the starting position at T=0ms, the travel speeds Vx and Vy of both stepper motors initially increase linearly (constant acceleration), although the magnitudes of the acceleration differ. From approximately 100ms, both stepper motors travel at a constant speed of different magnitudes (acceleration in this range is therefore zero). At approximately T = 1000ms, a change in speed occurs again for a time interval of about 100ms. During this time, Vx increases linearly and Vy decreases linearly.

[0043] As in Fig. Figure 2 in the lower section, enlarged over this middle time window of the upper section, shows that the accelerations for both axes in this time interval have the same magnitudes - but opposite signs.

[0044] Subsequently, both stepper motors run at different constant speeds for approximately 900 ms (accelerations are again zero). About 100 ms before reaching the end position (T = 1900 ms), both stepper motors are decelerated linearly with different acceleration values, so that both speed components Vx and Vy simultaneously reach zero at approximately T = 2000 ms, thus coming to a standstill at the endpoint.

[0045] The in Fig. The graphs of the primary velocity profiles of each movement component, Vx and Vy, shown in Figure 2, exhibit several inflection points as they progress towards the stop in the end position. These non-differentiable points correspond, mathematically, to abrupt changes in acceleration, which in turn (purely mathematically) correspond to an infinite mechanical jerk (derivative of acceleration). This leads to increased following angles between the rotor and stator of the stepper motors and ultimately to step losses. This inevitably also results in undesirable shocks and vibrations, even leading to highly stressful resonances. Consequently, this leads to significantly increased wear on all components.

[0046] Within the framework of the inventive control of stepper motors, the primary speed profile, which is, for example, in Fig. Figure 2, which is shown with inflection points, is modified using FIR filtering, and the filtered velocity profile is used via the control output to control one or more stepper motors, for example, in a 3D printer. Due to the reduced harmonic content, the abrupt changes in velocity are significantly reduced or no longer occur in the filtered velocity profile. This is reflected in a smoothed (i.e., universally differentiable) curve over time with correspondingly derived acceleration curves, as shown, for example, in the lower sections of the Fig. 3, Fig. 4, Fig. 5 and Fig. Figure 6 is shown. As a result, all movements, especially in the transition from accelerated to uniform motion, are damped across multiple target coordinates in such a way that even at high speeds the load on all mechanical components is significantly reduced and wear effects are considerably minimized.

[0047] A preferred example of a primary velocity profile and an associated velocity profile after FIR filtering is shown in Fig. Figure 3 shows the following. Here again, a target path in the XY plane is specified with start position, intermediate position, and end position, similar to the... Fig. 2. After passing the primary velocity profiles Vx and Vy through the FIR filtering, the smoothed velocity profiles VCx and VCy no longer show any inflection points. This is particularly evident in the lower section of the Fig. Figure 3 shows a close-up of the velocity profiles in the area of ​​the middle intermediate position. These smooth velocity changes eliminate noticeable acceleration jumps – and therefore also eliminate sudden loads.

[0048] In this example, the FIR filter function of the FIR filter unit is a cos φ. 2 The -function was used. As an alternative FIR filter function, a Gaussian function can also be used for FIR filtering, which produces comparable smoothing effects.

[0049] The effect of controlling the stepper motors using cos φ 2 -FIR filtering of smoothed velocity profiles VCx and VCy onto the motion sequence in the XY plane over the same target coordinates P1, P2, P3 is in Fig. 4 shown.

[0050] The deviations from the theoretically exact tool path specified via the target coordinates are so small that they are practically invisible in the upper part of the representation. They only become apparent in the enlarged section in the lower part of the image. Fig. 4 shows that the one according to cos 2 -Filtering with the FIR filter unit results in a travel path Wcos in the area of ​​the mean target coordinate P2 that is somewhat closer to the theoretical travel path WZ, i.e., closer to the mean target coordinate P2 than the travel path WL of the Fig. 1.

[0051] That the two local curves WR ( Fig. 1) and Wcos ( Fig. 4) The fact that the curves in the XY plane are very similar obscures the actual effect of FIR filtering on acceleration and inertial effects: the high mechanical loads occurring during the travel path WR without FIR filtering, corresponding to the primary velocity profile, caused by the abrupt change in velocities Vx and Vy in the area of ​​the target coordinate, are not or hardly visible in the locus curve WR.

[0052] An alternative embodiment of the control system according to the invention, incorporating a Tukey filter function of the FIR filter unit, is shown in Fig. 5. Here, a corresponding target path in the XY plane is again specified, with start position-intermediate position-end position, as in the previous example. Fig. 1 or Fig. 4, the primary speed profile therefore corresponds to the representation from the Fig. 2.

[0053] The Fig. Figure 5 shows the velocity profiles VTx and VTy smoothed after applying Tukey filtering using the FIR filter unit. A comparison with the filtered and thus smoothed velocity profiles VCx and VCy of the cos 2 -FIR filtering ( Fig. 3) shows that the two FIR filter functions produce a comparable smoothing of the primary velocity profiles Vx and Vx. Accordingly, the in Fig. The locus curve Wtuk shown in section 6, after Tukey filtering, is very similar to the locus curve Wcos ( Fig. 4) a cos 2 -Filtering.

[0054] To illustrate the actual differences, the Fig. 7, Fig. 8 and Fig. 9. In each case, during a starting operation of a travel path, which can represent the beginning of a stage, for example between P1 and P2, the curves of speed, acceleration and jerk load for the case without filtering ( Fig. 7), in the case of FIR filtering with a cos 2 -Filtering ( Fig. 8) and in the case of FIR filtering with Tukey filtering ( Fig. 9).

[0055] The Fig. Figure 7 shows the velocity profile VL in the upper part as a section of a primary velocity profile without FIR filtering. After starting from a rest position, the velocity increases linearly to a final value at 100 ms and then remains constant at this value. The primary velocity profile VL shows inflection points (not differentiable) at T=0 ms and T=100 ms. The middle part of the Fig. Figure 7 shows the acceleration conditions BL that occur: Starting from a standstill corresponds to a jump from zero to a constant acceleration value. This constant acceleration value is maintained until the acceleration is switched off at T=100ms, resulting in a return to zero. The stress on the mechanics associated with these abrupt acceleration jumps (derivative of the acceleration) is shown in the lower part of the Fig. 7 schematically represented: The jumps in acceleration are accompanied by load peaks RA, RB - comparable to a Dirac shock - which each correspond to a strong jerk with different signs.

[0056] Fig. 8 is in a corresponding manner as Fig. Figure 7 is broken down and represents the same stage of a travel path, where the primary velocity profile VL is replaced by the smoothed velocity profile VC after FIR filtering with cos 2-Filter function. This profile VC has no inflection points and shows asymptotic curves at the start and end values. The result of this differentiable curve is the acceleration curve BC shown in the middle section, which no longer exhibits any jumps or kinks. Starting at T=0 ms, the acceleration curve BC gradually increases, reaching a maximum acceleration value at T=50 ms, and then decreases continuously until it asymptotically reaches zero at T=100 ms.

[0057] This smooth acceleration curve BC significantly reduces inertial loads RC. This is particularly noticeable in the lower part of the Fig. Figure 8 shows that the RC curve changes continuously over the entire time period. The load changes sign at an inflection point at T=50ms. A load peak (jerk) no longer occurs.

[0058] Fig. Figure 9 shows a comparative representation of the corresponding relationships after FIR filtering with a Tukey filter function. Here too, the smoothed velocity profile VT is free of inflection points and shows a similarly asymptotic course to the profile VC. Fig. 8. The acceleration curve BT shown in the middle section is also smooth with asymptotic extensions, but shows a different cosine compared to the acceleration curve BC. 2 -Filtering in the middle range shows a linear region of constant acceleration. This linear region of BT corresponds to a zero value for the load curve RT, as in the lower part of the Fig. Figure 9 shows that peak loads do not occur here either.

[0059] The Fig. Figure 10 shows a schematic representation of the individual steps of the inventive method for controlling at least one stepper motor.

[0060] In a first step, the target coordinates are entered, e.g., points in space (P1, P2, P3...) which are to be approached sequentially by one or more stepper motors and which form the initial travel path. These coordinates then define a travel path, for example, in spatial coordinate space.

[0061] In a second step, the path segments from the initial travel path are converted into velocity vectors, which together form a primary velocity profile for the travel path to be traversed. This primary velocity profile is subdivided into individual stages with varying velocity values ​​and thus linear velocity changes. As a result, the primary velocity profile exhibits numerous inflection points in the velocity change region. These correspond to more or less pronounced acceleration jumps along the travel path corresponding to the primary velocity profile. These jumps are perceived as jerks in the movement and can lead to significant damage to the stepper motors or the devices in which these stepper motors are integrated—such as 3D printers.

[0062] In a third step, the primary velocity profile is filtered and thus smoothed using FIR filtering. Various FIR filter functions, such as the cos φ function, have proven effective in this process. 2 The Gaussian or Tukey filter function has proven particularly effective and excellent. This allows the generated velocity profile to be damped more or less, especially in the high frequencies.

[0063] In a fourth step, the smoothed speed profiles are fed to the respective stepper motors as step pulses via a control output. This typically involves a time-based integration of the filtered speed profile to generate the control pulses for the stepper motors.

[0064] Through the exemplary in Fig.The 10 described methods for controlling stepper motors successfully reduce abrupt acceleration and the associated shocks and vibrations, thereby improving the stepper motors' susceptibility to malfunctions. This also has a particularly beneficial effect on the robustness of the stepper motor controlled in this way. Reference symbol list P1, P2, P3 Target coordinates WZ theoretical travel path WR travel distance according to the primary speed profile Wcos travel distance with filtered speed profile and cos 2 -Filter function Wtuk travel path with filtered speed profile and Tukey filter function Vx velocity profile x-direction (primary velocity profile) Vy velocity profile y-direction (primary velocity profile) VL Velocity profile for a travel section between two target coordinates without FIR filtering of the velocity profile BL Acceleration profile for a travel section between two target coordinates without FIR filtering of the velocity profile RA jerking behavior when starting RB jerking behavior during braking VCx velocity profile x-direction with filtered velocity profile (cos 2 (Filter function) VCy velocity profile y-direction with filtered velocity profile (cos 2 (Filter function) VTx velocity profile x-direction with filtered velocity profile (Tukey filter function) VTy velocity profile y-direction with filtered velocity profile (Tukey filter function) VC velocity profile for a travel section between two target coordinates with cos 2 -Speed ​​profile filtering BC Acceleration profile for a travel section between two target coordinates with cos 2 -Speed ​​profile filtering RC: Sudden jerk load occurring during a travel section between two target coordinates with cos 2 -Speed ​​profile filtering VT velocity profile for a traverse section between two target coordinates with Tukey filtering of the velocity profile BT acceleration profile for a traverse section between two target coordinates with Tukey filtering of the velocity profile RT: Specified jerk loads for a travel section between two target coordinates with Tukey filtering of the velocity profile

Claims

[1] Device for controlling at least one stepper motor, with a unit for inputting target coordinates (P1, P2, P3), with a unit for converting the target coordinates into a primary speed profile (Vx, Vy, VL) to achieve the target coordinates, as well as a unit for FIR filtering the primary speed profile (Vx, Vy, VL) and a control output for connection to the stepper motor to be controlled. [2] Device for controlling at least one stepper motor according to claim 1, wherein a filter function is implemented in the FIR filtering unit, which filter function is designed to be continuous, differentiable and asymptotically approaching zero in the initial and final range of the course of the filter function. [3] Device for controlling at least one stepper motor according to claim 2, wherein a filter function is implemented in the FIR filtering unit, which is designed as a symmetrical filter function. [4] Device for controlling at least one stepper motor according to claim 2 or 3, wherein a filter function is implemented in the FIR filtering unit, which is defined as cos 2 -, as a Gaussian or as a Tukey filter function. [5] Device for controlling at least one stepper motor according to one of the preceding claims 1 to 4, wherein the FIR filtering unit is implemented in an FPGA. [6] Device for controlling at least one stepper motor according to one of the preceding claims 1 to 5, wherein the FIR filtering unit has a selectable window width of the filter function. [7] Device for controlling at least one stepper motor according to one of the preceding claims 1 to 6, wherein target coordinates (P1, P2, P3) comprise a start value (P1) and an end value (P3) and in particular one or more intermediate values ​​(P2). [8] Device for controlling at least one stepper motor according to one of the preceding claims 1 to 7, wherein the unit for FIR filtering is designed such that the FIR filtering takes place either only between adjacent target coordinates (P1-P2; P2-P3) and / or also across intermediate target coordinates (P2). [9] Device for controlling at least one stepper motor according to one of the preceding claims 1 to 8, wherein the control comprises several stepper motors synchronously. [10] Device for controlling at least one stepper motor according to one of the preceding claims 1 to 9, wherein target coordinates, in addition to spatial coordinates (P1, P2, P3), also relate to at least one further control value, which in particular represents material quantities, angles of rotation, orientation, dimensions for a nozzle opening, pressing pressures, temperatures or a mixing ratio. [11] Device for controlling at least one stepper motor according to one of the preceding claims 1 to 10, wherein in the area of ​​the target coordinates (P1, P2, P3) of the primary speed profile (Vx, Vy, VL) additional speed values ​​are set equal to zero. [12] 3D printer with at least one stepper motor with a control according to one of the preceding claims 1 to 11. [13] Method for controlling at least one stepper motor, in particular of a 3D printer, in which target coordinates (P1, P2, P3) are input, these are converted into a primary speed profile (Vx, Vy, VL) to achieve the target coordinates and this primary speed profile (Vx, Vy, VL) is then subjected to FIR filtering and the filtered speed profile is fed to the stepper motor via a control output. [14] The method of claim 13, wherein the filtered velocity profile is generated by repeated FIR filtering from a primary velocity profile. [15] Method according to claim 13 or 14, wherein the control output is designed to convert the speed values ​​obtained at the output of the FIR filtering unit into path information by temporal integration of the filtered speed profile.

Citation Information

Patent Citations

  • Method for detecting a step loss for a stepper motor and related electronic control of a stepping motor

    EP3142244B1

  • Command generation device and command generation method to control motor

    US20210405614A1