Share this

A Discussion on Reliable Zero-Return Architecture for Ensuring Positioning Accuracy of Mechanical Equipment

2026-04-06 05:11:56 · · #1

summary:

This paper reveals the hardware and software structure and common problems of motion mechanism homing. Based on the characteristics of motion positioning system, and considering the mechanical structure, electrical components and software requirements, it proposes basic methods to solve these problems.

Keywords:

Mechanical zero point, zero return with Z-pulse, feedback, precise positioning.

1. Introduction

In providing technical support to customers using control cards, our company often encounters confusion regarding the system's zero-return accuracy. This is usually due to a misunderstanding of the zero-return hardware components and structure, leading to software design problems, which in turn cause instability in the system's zero-return, thus affecting the positioning accuracy of the mechanical system.

From the zero-return functions of major control cards both domestically and internationally, it can be seen that different motion control manufacturers allow zero-return methods ranging from 1 to more than 10, but their basic mechanical and electrical system structures are the same. A simplified diagram of a single-axis linear motion control system is shown in Figure 1. This article, based on this fundamental characteristic and in conjunction with the DMC2410 motion control card from Shenzhen Leisai Intelligent, discusses the factors affecting the accuracy and efficiency of single-axis linear motion systems, and provides a zero-return procedure and VB software example based on this basic structure.

2. The purpose of returning to zero.

Automated machinery was developed to replace manual labor in tasks requiring high speed and precision, and to ensure consistent product quality. To guarantee product consistency, the accuracy of the machinery's original zero point must first be ensured. This guarantees consistency in products produced over extended periods. The zero point serves as the mechanical system's reference benchmark, so its accuracy and uniqueness must be guaranteed. Zeroing ensures that the repeatability of the mechanical system's zero point is within the design range, or in other words, that the positional deviation of the zero point of the XYZ coordinate system (composed of a single or multiple axes) within the entire automated machinery system is within the design tolerances.

3. Basic structure of the zero-point return point of the electromechanical system

The main components of a typical single-axis linear system include: a motor (stepper motor or servo motor), a ball screw (or belt, gear), a sliding guide rail, a motion platform, left and right limit sensors, sensor plates, and a zero-point sensor. Based on these main components, the basic structure of a single axis is shown in Figure 1 below:

Figure 1. Basic structure diagram of a single-axis linear system with a zero-point sensor.

Figure 2 shows the basic configuration of a single-axis linear control system after the addition of motion control devices. The main factors affecting homing accuracy and homing effect are as follows:

l Mechanical factors: clearances in mechanical mechanisms; positioning accuracy of the motor.

l Electrical factors: response frequency (or time) of the zero-point sensor; signal transmission delay of the wires; coordination method of sensor zero return.

l Control factors: The motor's zero-return speed; the response time of the control card from receiving the zero-point sensor input level signal to the shutdown output pulse. This response time is also affected by the stop mode. There are two common stop modes: deceleration stop and immediate stop.

l Software factor: Whether an appropriate zero-return software process was adopted.

The mechanical factors and the signal transmission delay factor of the conductors are assumed to be in an ideal state and have no effect on the zero return, so they will not be discussed. This paper only discusses other influencing factors.

Figure 2. Basic Structure Diagram of a Single-Axis Linear Control System with Zero-Point Sensor

The response frequency (or time) factor of a zero-point sensor: Typically, the response frequency of a magnetic sensor is around 1kHz, while that of a photoelectric sensor can reach 10kHz. Faster response sensors allow for higher zero-point traverse speeds. The following example, combined with the zero-point traverse speed of a motor, illustrates its impact; refer to Figure 2 for the structure:

Assume: the lead of the ball screw is L mm, the motor speed is V rpm, the zero-point sensor response time is t1 seconds, the response time of the control card from receiving the zero-point sensor input signal to cutting off the output pulse is t2 seconds, and the time from the mechanical sensor moving to the effective sensing area until the control card cuts off the output pulse is (t1 + t2). Then the zero-point position deviation is:

△L=V*L*(t1+t2)/60

It is evident that, given a fixed t1, t2, and L, to improve the zero-point accuracy, the motor's zero-point retrieval speed should be as small as possible; the response time of the zero-point sensor should be as short as possible (i.e., the response frequency should be as high as possible); the smaller L is, the higher the zero-point accuracy; and the control card's zero-point response speed must also be fast enough.

The impact of the stopping method is reflected in the fact that when using deceleration to stop, assuming the return speed is the same, the deceleration displacement is related to the magnitude of the deceleration. When the deceleration is large, the deceleration displacement is small, and vice versa.

Once these factors are determined, the sensor coordination method also needs to be considered. There are generally two sensor coordination methods for basic single-axis linear motion systems. One, as shown in Figure 1, includes left (or negative limit) and right limit sensors (or positive limit) and a zero-point sensor. The other, as shown in Figure 4, includes left and right limit sensors (without using a zero-point sensor), plus a servo motor encoder Z-pulse to construct single-axis homing. The former is more commonly used in general industrial automation equipment, while the latter also has distinct characteristics. The two homing methods will be compared and discussed below.

4. Zero-return structure analysis

Which homing method should be used in a single-axis linear motion system to ensure the positioning accuracy of the mechanical equipment system in an economical and effective manner? The following will analyze the two typical homing methods mentioned above and then give the corresponding system solutions.

4.1 Method 1: Zeroing method using zero point plus limit switch

This method is common in linear motion systems of various mechanical equipment and is suitable for linear systems using stepper or servo motors. A zero-point sensor must be used, which is usually a non-contact sensor, such as a magnetic proximity sensor, photoelectric sensor, or fiber optic sensor. Mechanical contact switches are not recommended. The limit sensor also uses a sensor with the same properties as the zero-point sensor to simplify the mechanical triggering mechanism (as shown in Figure 1).

The relevant influencing factors have been discussed previously. In this approach, the following two points should be noted:

Mechanical design requirements: Ensure sufficient clearance between the limit sensor and the zero-point sensor. When the limit sensor is triggered, ensure that the moving platform does not collide with other mechanical mechanisms. When the moving platform is at its limit position, the limit sensor should remain triggered to ensure the safety of the mechanical equipment.

The software flow for zero-point homing is as follows: As shown in Figure 3, for the three sensors, the motion platform's sensing plate has two areas (areas 1 and 2) and three special positions (the sensing plate is exactly on the sensor at positions 3, 4, and 5), for a total of five position states. Therefore, these five states should be fully considered during the software flow design to ensure that the motion platform can complete the zero-point homing task from any position. We can imagine that when the mechanical equipment is powered off, maintenance personnel need to add lubricating oil to the ball screw. For convenience, they will push the motion platform to different positions to add lubricating oil. This will directly lead to uncertainty in the position of the motion platform, but this uncertainty is included in these five zero-point homing scenarios and will not cause a zero-point homing failure.

Figure 3 shows the position of the induction plate in a linear motion system.

This method of relying on zero-point sensors for homing is affected by both assembly precision (it is difficult to ensure sensor mechanical position accuracy below 0.1 mm, and it usually exceeds 0.5 mm, which is not acceptable in the precision manufacturing industry) and sensor component precision. This will lead to zero-point position deviations between corresponding linear motion mechanisms of the same type of equipment, which will usually directly result in the corresponding linear motion mechanisms not being interchangeable (high precision cannot be guaranteed). This is a major taboo for mechanical equipment manufacturers who want to produce a series of products with high consistency.

4.2 Method Two: Zero-return method using limit switch and Z-pulse

This method is primarily designed for applications using incremental servo motors (with encoders featuring Z-pulse output), and is extremely effective in systems requiring high mechanical positioning accuracy. The limit sensors can be mechanical contact switches, non-contact sensors such as magnetic proximity sensors, and photoelectric or fiber optic sensors. Simultaneously, the Z-pulse output interface of the servo motor encoder needs to be connected to a dedicated input interface on the motion control card or controller, as shown in Figure 5.

Figure 4. Basic structure of a single-axis linear system with servo encoder Z-pulse.

Figure 5. Basic structure of a single-axis linear control system with servo encoder Z-pulse.

Two points should be noted in this method of returning to zero:

Mechanical design requirements: Ensure that the moving platform does not collide with other mechanical mechanisms when the limit sensor is triggered, and that the limit sensor remains triggered when the moving platform is at its extreme position to ensure the safety of the mechanical equipment.

The software process for returning to zero: As shown in Figure 6 below, for these two limit sensors, the motion platform sensor plate has area 1 and two special positions (positions 2 and 3 where the sensor plate is exactly on the limit sensor), for a total of 3 positions. This is simpler than the first zero-return configuration method. In the process of formulating the software process, only these 3 states need to be considered to ensure that the motion platform can complete the zero-return task in any position.

Figure 6. Position of the inductor in the linear motion system of Method 2

Assuming a servo motor shaft is connected to a ball screw via a coupling (which then drives the motion platform), as shown in Figure 5. From a mechanical perspective, the reduction ratio here is 1:1, meaning that for every revolution of the motor shaft, the ball screw rotates one revolution, and the motion platform moves forward by one lead of the ball screw (e.g., 5 mm, 10 mm, or 20 mm). From an electrical perspective, for every revolution of the motor, its encoder disk rotates 360°, simultaneously generating one Z-pulse at a fixed angle (as shown in Figure 4). The pulse frequency depends on the motor shaft's rotation speed. Assuming the motor speed is 3000 rpm, one Z-pulse is generated every 0.02 seconds, resulting in a very small pulse width. The pulse width depends on the motor speed and the number of A/B phase lines of the encoder. Assuming the encoder has 1000 lines, at a motor speed of 3000 rpm, the Z-pulse width is 10 microseconds, far less than the fastest response time of the photoelectric sensor. Furthermore, under these conditions, assuming the ball screw lead is 10 mm, if Z-pulse is used to locate the zero point, the theoretical positional accuracy of the linear zero point can reach 10 mm/1000 = 10 micrometers, which is far higher than the first zeroing method.

In addition, the basic process of returning to zero is as follows: during the process of returning to zero in the negative direction, the negative limit sensor is first triggered, the motor stops abruptly, and then it moves in the opposite direction (towards the positive direction) until the first servo motor encoder Z pulse is found, and then it stops abruptly. In this way, the zero point of the single-axis linear mechanism can be determined.

Meanwhile, this method requires mechanical design engineers to develop corresponding debugging fixtures and related procedures to ensure zero-point accuracy and interchangeability.

advantage:

In systems using servo motors, since zero-point sensors are not required, limit sensors can be replaced by mechanical contact switches, which reduces the cost per axis by approximately 100 to 200 yuan. This saves on hardware costs compared to method 1. At the same time, it eliminates the deviation of mechanical zero points between precision mechanical equipment of the same model caused by sensor assembly position deviations, ensuring the consistency and good interchangeability of the series of products, and expanding the actual usable space of the motion platform under the same conditions.

5. Solution

Based on the analysis of the two zero-return methods mentioned above, and assuming the correct selection and configuration of mechanical and electrical hardware, this paper takes the typical four-axis control card DMC2410 from Shenzhen Leadshine Intelligent as an example. Following the first zero-return method (using the servo Z-pulse zero-return mode), a flowchart of the single-axis zero-return point and VB-based zero-return source code were written, as follows:

Notice:

Since the zero-point sensor is located in the middle of the positive and negative limit sensors of the axis, the zero-point sensor plate may fall in 5 areas. At the same time, it should be ensured that the mechanical motion platform will trigger the positive (negative) limit sensor first during movement, so as not to cause mechanical collision.

Flowchart of returning to zero: As shown in Figure 7

Figure 7. Flowchart of Return to Zero

The source code for returning to zero is as follows:

Select the first axis of the DMC2410 card, and set the axis number in the function to 0.

Public Function Home_AxisProcess()

Dim AxisStatus_XO As Integer

d2410_set_profile 0, (ORGspeed_X * pluse_mm_X) / 2, (ORGspeed_X * pluse_mm_X), _AccDec_T_X, AccDec_T_X

AxisStatus_XO = d2410_axis_io_status(0)

'To determine the position of the sensor, 1. Is it exactly above zero?'

If (AxisStatus_XO And 2 ^ 14) = 1 Then

Home_From_Zero 'Invokes the procedure to return to zero from the zero-point sensor

my_O_X = 1 'Set the flag

Else '2, determine whether it is on the positive or negative limit sensor.

AxisStatus_XO = d2410_axis_io_status(0)

If ((AxisStatus_XO And 2 ^ 12) = 1) or ((AxisStatus_XO And 2 ^ 13) = 1) Then

If (AxisStatus_XO And 2 ^ 12) = 1 Then

On the positive limit sensor, call the normal d2410_home_move() function -- with Z-pulse.

d2410_home_move 0, 2, 1 'Negative direction home move to zero'

While (d2410_check_done(0) = 1)

It can display a text message to indicate the current progress of the reset to zero.

Wend

my_O_X = 1 'Set the flag

Else

Home_From_Lim 'Calls the zeroing procedure from the negative limit sensor

my_O_X = 1

End If

Else '3, is neither on the zero-point sensor nor on the limit sensor.

Start the motor and move it in the negative direction. Check the status of the zero point or negative limit sensor. If the sensor is detected, stop immediately.

d2410_t_vmove 0, 1

choose_X = 2

While (choose_X = 2)

It can display a text message to indicate the current progress of the reset to zero.

AxisStatus_XO = d2410_axis_io_status(0)

If ((AxisStatus_XO And 2 ^ 14) = 1) Then

choose_X = 1

End If

If ((AxisStatus_XO And 2 ^ 13) = 1) Then

choose_X = 0

End If

Wend

D2410_imd_stop 0 'Stop immediately

Select Case choose_X

'3.1 Between zero point and positive limit switch

Case 0

Home_From_Zero 'Calls the procedure to return to zero from the zero-point sensor

my_O_X = 1 'Set the flag

'3.2 Between zero point and negative limit

Case 1

Home_From_Lim 'Calls the zeroing procedure from the negative limit sensor

my_O_X = 1

End Select

End If

End If

'Reset the position counter to zero and determine the current position as the zero point.'

d2410_set_position 0, 0

'End the zero-point return function call

End Function

'************************************************************************

'Return to Zero Subroutine'

Public Function Home_From_Zero()

The motor starts moving in the positive direction until it exits the zero-point sensor area, then decelerates and stops. Finally, the zero-return function 'd2410_home_move()' with a Z-pulse is called; this is a function specific to the control card.

Dim AxisStatus_XO As Integer

d2410_t_vmove 0, 1

AxisStatus_XO = d2410_axis_io_status(0)

While ((AxisStatus_XO And 2 ^ 14) = 0)

It can display a text message to indicate the current progress of the reset to zero.

AxisStatus_XO = d2410_axis_io_status(0)

Wend

d2410_decel_stop 0, 0.05

While (d2410_check_done(0) = 1)

It can display a text message to indicate the current progress of the reset to zero.

Wend

'Normal call to d2410_home_move() -- with Z-pulse'

d2410_home_move 0, 2, 1

While (d2410_check_done(0) = 1)

It can display a text message to indicate the current progress of the reset to zero.

Wend

End Function

'************************************************************************

'Return to zero from negative limit subroutine'

Public Function Home_From_Lim()

Dim AxisStatus_XO As Integer

Start the motor in the positive direction at the negative limit until it detects the zero-point sensor, then stop abruptly and call the zero-point return subroutine.

d2410_t_vmove 0, 1

AxisStatus_XO = d2410_axis_io_status(0)

While ((AxisStatus_XO And 2 ^ 14) = 1)

AxisStatus_XO = d2410_axis_io_status(0)

It can display a text message to indicate the current progress of the reset to zero.

Wend

D2410_imd_stop 0 'Stop immediately

Home_From_Zero 'Calls the procedure to return to zero from the zero-point sensor

End Function

'************************************************************************

6. Conclusion

Based on the above analysis of the two basic zero-return structures, in practical applications, targeted modifications can be made according to the characteristics of the equipment itself. This ensures the accuracy and stability of the equipment while saving hardware costs, thus achieving a win-win outcome.

Reliable zeroing requires not only a clear understanding of the working principles of the relevant control and actuator components and the precision requirements of the mechanical equipment project itself, but also careful testing of the specific equipment based on actual conditions in order to provide targeted and accurate hardware and software solutions. Only in this way can the accuracy of the equipment be ensured.

Read next

CATDOLL 146CM B-CUP Tami (TPE Body with Hard Silicone Head) Customer Photos

Height: 146cm A-cup Weight: 26kg Shoulder Width: 32cm Bust/Waist/Hip: 64/54/74cm Oral Depth: 3-5cm Vaginal Depth: 3-15c...

Articles 2026-02-22