FPGA-based linear motor moving element position detection platform

CN122844724APending Publication Date: 2026-09-29HEFEI UNIV OF TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510354357.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-25
Publication Date
2026-09-29

AI Technical Summary

Technical Problem

[0006]本发明的目的在于提供一种基于FPGA的直线电机动子位置检测平台,旨在解决背景技术提到的现有方法匹配时间过长导致实时性差,从而影响位置检测的效率的问题

Benefits of technology

[0020]本发明提供的一种基于FPGA的直线电机动子位置检测平台,采用FPGA硬件设计的方式实现直线电机的动子位置检测,相对于传统的直线电机动子位置检测方式,本发明通过FPGA硬件平台实现实时的图像采集,图像处理和动子位置信息的输出,摆脱上位机的控制,借助FPGA高速,并行处理的优势,将整个动子位置检测流程放在FPGA硬件平台当中连贯实现,在保证低成本和位置检测精度的同时,提高动子位置检测的实时性。解决了当前动子位置检测实时性不足且适用性较低的问题;从而提高整个动子检测的检测效率,显著提高了直线电机的位置测量效率。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure BDA0005326880420000091
    Figure BDA0005326880420000091
  • Figure BDA0005326880420000101
    Figure BDA0005326880420000101
  • Figure HDA0005326880430000011
    Figure HDA0005326880430000011
Patent Text Reader

Abstract

This invention relates to the field of position measurement technology and provides an FPGA-based linear motor mover position detection platform. The platform includes a camera driver module, an image processing module, a position information transmission module, and a clock divider module. This invention employs FPGA hardware design to realize linear motor mover position detection. Compared to traditional linear motor mover position detection methods, this invention uses an FPGA hardware platform to achieve real-time image acquisition, image processing, and mover position information output, eliminating the need for host computer control. Leveraging the high speed and parallel processing advantages of FPGA, the entire mover position detection process is implemented coherently within the FPGA hardware platform, improving the real-time performance of mover position detection while maintaining low cost and position detection accuracy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of position measurement technology, and in particular relates to an FPGA-based linear motor mover position detection platform. Background Technology

[0002] Permanent magnet synchronous linear motors (PMSLMs) are widely used in high-precision machining equipment such as CNC machine tools, laser processing equipment, and precision motion control systems due to their advantages of simple structure, fast response, high thrust density, high precision, and high efficiency. The control precision of linear motors affects the operating precision of machines, and the real-time performance and accuracy of linear motor position measurement directly affect the control precision of linear motors. Therefore, researching real-time high-precision measurement of linear motor position is of great significance for linear motor servo control systems.

[0003] Common methods for measuring the position of permanent magnet synchronous motors mainly rely on optical, electrical, and magnetic sensors to measure displacement. Currently, widely used sensors include gratings, laser interferometers, Hall effect sensors, and magnetic grating sensors. These sensors offer high measurement accuracy, meeting the precision requirements of most device manufacturing processes. Grating sensors offer high measurement accuracy and strong anti-interference performance, but their manufacturing difficulty and cost increase significantly with increasing measurement length. Laser interferometers offer high measurement accuracy, enabling nanometer-level measurements. However, they are expensive and susceptible to system vibrations, limiting their practical applications. Hall effect sensors are prone to interference from third-order harmonic components, requiring filtering of the magnetic field signal, increasing measurement complexity. Magnetic grating sensors have a long measurement stroke, but are susceptible to magnetic field interference in complex industrial environments.

[0004] Another method for linear motor mover position detection is based on digital images. Specifically, a linear scan camera fixed to the mover of the linear motor captures a non-periodic vertical stripe image parallel to the direction of motor movement. This image is then processed by an image processing algorithm within a Matlab program to obtain the mover's position information. This method optimizes mover position detection in two ways: firstly, by designing and optimizing the non-periodic stripe image captured by the camera; and secondly, by improving the image processing algorithm within the Matlab program.

[0005] However, existing digital image measurement technologies applied to the field of linear motor mover position detection rely on optical, electrical, and magnetic sensors to measure displacement. This approach has limited applicability, typically requiring different sensors for different linear motors. The inconsistency in sensors due to motor type and length leads to significant cost fluctuations. While methods using non-periodic fringe image capture for mover position detection offer improved applicability compared to sensor-based methods, they require manual control of camera drive and image processing on the host computer, thus lacking real-time performance. Further improvements are needed. Summary of the Invention

[0006] The purpose of this invention is to provide an FPGA-based linear motor mover position detection platform, which aims to solve the problem mentioned in the background art where the existing methods have excessively long matching times, resulting in poor real-time performance and thus affecting the efficiency of position detection.

[0007] The FPGA-based linear motor mover position detection platform of the present invention includes: a camera driving module, an image processing module, a position information transmission module, and a clock frequency division module;

[0008] The camera driver module is used to drive the target camera to acquire target source image information and to transmit the acquired target source image information to the image processing module in real time.

[0009] The image processing module is electrically connected to the camera driving module and is used to acquire the target source image information and perform image processing to output the mover position information represented by the target source image information;

[0010] The position information transmission module is electrically connected to the image processing module and is used to transmit the mover position information output by the image processing module to the servo controller; the servo controller feeds back the mover position information as the result of the position loop to the linear motor;

[0011] The clock divider module is electrically connected to the camera driver module, image processing module, and location information transmission module, and can generate clock cycles of different frequencies to meet the clock frequencies required by the camera driver module, image processing module, and location information transmission module, respectively.

[0012] Furthermore, the FPGA-based linear motor mover position detection platform also includes: an image buffer module;

[0013] The image caching module is connected between the camera driver module and the image processing module, and is used to cache the target source image information transmitted by the camera driver module.

[0014] Furthermore, the camera driver module includes an image acquisition module, a driver module, and a configuration module;

[0015] The image acquisition module is used to acquire image signals captured by the linear scan camera;

[0016] The driving module serves as the interface bus for driving the linear scan camera, controlling the working state and parameters of the linear scan camera, and configuring the registers of the linear scan camera.

[0017] The driving clock of the configuration module is provided by the clock output by the driving module to facilitate data interaction between the driving module and the configuration module; the configuration module stores the register addresses and data to be configured, as well as the start and end of control initialization.

[0018] Furthermore, the configuration module also outputs the register address and data of the linear scan camera, as well as the control signal for the driver module to start execution; and connects to the user interface of the driver module to complete the initialization of the linear scan camera.

[0019] Furthermore, the image processing module includes: a median filter kernel for removing image noise, a fast Fourier transform kernel for converting the image from the spatial domain to the frequency domain, a shift register for caching image data to construct an image filtering window, a complex multiplier for butterfly operations in FFT / IFFT, an inverse fast Fourier transform kernel for converting the frequency domain processed image back to the spatial domain, and an image extremum acquisition kernel for image enhancement.

[0020] This invention provides an FPGA-based linear motor mover position detection platform. It employs FPGA hardware design to realize the mover position detection of a linear motor. Compared to traditional linear motor mover position detection methods, this invention uses an FPGA hardware platform to achieve real-time image acquisition, image processing, and mover position information output, eliminating the need for host computer control. Leveraging the high speed and parallel processing advantages of FPGA, the entire mover position detection process is implemented coherently within the FPGA hardware platform. This improves the real-time performance of mover position detection while maintaining low cost and position detection accuracy. It solves the problems of insufficient real-time performance and limited applicability in current mover position detection methods, thereby improving the overall mover detection efficiency and significantly enhancing the position measurement efficiency of linear motors. Attached Figure Description

[0021] Figure 1 A structural block diagram of a linear motor mover position detection platform based on FPGA provided in an embodiment of the present invention;

[0022] Figure 2 This is a circuit structure diagram of the linear motor mover position detection platform in an embodiment of the present invention;

[0023] Figure 3 This is a circuit structure diagram of the camera driver module in an embodiment of the present invention;

[0024] Figure 4 This is a circuit diagram of the image processing module in an embodiment of the present invention;

[0025] Figure 5 This is a circuit structure diagram of the location information transmission module in an embodiment of the present invention;

[0026] Figure 6 This is a circuit diagram of the clock divider module in an embodiment of the present invention;

[0027] Figure 7 An application environment block diagram of an FPGA-based linear motor mover position detection platform provided in an embodiment of the present invention;

[0028] Figure 8 This is an example of a linear motor model in an embodiment of the present invention.

[0029] In the diagram: 100-Camera driver module; 200-Image processing module; 300-Location information transmission module; 400-Clock divider module; 110-Image acquisition module; 120-Driver module; 130-Configuration module; 210-Median filter core; 220-Fast Fourier transform core; 230-Shift register; 240-Complex multiplier; 250-Inverse Fast Fourier Transform core; 260-Image extremum acquisition core; 101-FPGA motherboard; 102-Adapter board; 103-Servo control board; 104-Linear scan camera; 105-Motor substrate; 106-Stator and guide rail; 107-Motor; 108-Target source image. Detailed Implementation

[0030] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.

[0031] Common methods for measuring the position of permanent magnet synchronous motors (PMSMs) primarily rely on optical, electrical, and magnetic sensors. However, this approach has limited applicability, often requiring different sensors for different linear motors. The type and length of the motor influence the choice of sensors, leading to inconsistencies and cost fluctuations. Another method, using non-periodic fringe images for mover position detection, requires adjusting image parameters on a host computer before capturing the image and processing it in Matlab. While this method is applicable to various linear motors and offers improved applicability compared to sensor-based methods, it lacks real-time performance due to the need for manual camera control and image processing on the host computer. To address this, this invention presents an FPGA-based linear motor mover position detection platform. This hardware-based platform eliminates the need for host computer-based camera driving and image processing, resulting in high real-time performance.

[0032] like Figures 1-7 As shown, the FPGA-based linear motor actuator position detection platform in this embodiment includes: a camera driving module 100, an image processing module 200, a position information transmission module 300, and a clock divider module 400. The camera driving module 100 is used to drive the target camera (i.e., the linear scan camera 104) to acquire target source image information and to transmit the acquired target source image information to the image processing module 200 in real time. The image processing module 200 is electrically connected to the camera driving module 100 and is used to acquire the target source image information and perform image processing to output the target source image information. The system represents the position information of the moving part; the position information transmission module 300 is electrically connected to the image processing module 200, and is used to transmit the moving part position information output by the image processing module 200 to the servo controller; the servo controller feeds back the moving part position information as the result of the position loop to the linear motor; the clock frequency divider module 400 is electrically connected to the camera drive module 100, the image processing module 200 and the position information transmission module 300, and can generate clock cycles of different frequencies to meet the clock frequencies required by the camera drive module 100, the image processing module 200 and the position information transmission module 300 respectively. This embodiment realizes real-time image acquisition, image processing and moving part position information output through an FPGA hardware platform, freeing it from the control of the host computer. Leveraging the high speed and parallel processing advantages of the FPGA, the entire moving part position detection process is implemented coherently within the FPGA hardware platform, improving the real-time performance of moving part position detection while ensuring low cost and position detection accuracy. This solves the problems of insufficient real-time performance and low applicability of current moving part position detection methods.

[0033] The FPGA-based linear motor mover position detection platform in this embodiment can be applied to... Figure 8In the linear motor model shown; Figure 8 In the linear motor model, there are motor base plate 105, mover 107, stator and guide rail 106. The stator and guide rail 106 are mounted on the motor base plate 105, and the mover 107 is slidably mounted on the stator and guide rail 106. The mover 107 can move along the guide rail under the mutual magnetic force with the stator. Based on this linear motor model, a linear scan camera 104 is fixedly mounted on the mover 107. A target source image 108 is set on the motor base plate 105 along the movement direction of the mover 107. The linear scan camera 104 can focus on the target source image 108 to build an application environment for the mover position detection platform.

[0034] In this embodiment, the target source image 108 can be configured as follows:

[0035] Construct an xyz coordinate system, where the motion axis parallel to the mover 107 is the x-axis, the motion axis perpendicular to the mover 107 is the y-axis, and the axis perpendicular to both the x-axis and y-axis is the z-axis;

[0036] Construct a non-periodic image with a certain stripe density as the target image source. The gray values ​​of the image on the x-axis change gradually according to a function signal, while the gray values ​​of the pixels on the y-axis are the same.

[0037] The image size is M×N, and the gray-level gradient along the x-axis is G. x The grayscale gradient is W x ,satisfy: M0 and N0 are the zeros of M and N, respectively, or can be regarded as the starting point of the motion of the mover.

[0038] In this embodiment, after fixing a linear scan camera 104 on the mover 107, calibration can be performed first. The aperture and focal length of the linear scan camera 104 are adjusted to ensure clear images. The calibration coefficient ε of the linear scan camera 104 is calculated through a calibration experiment. The calibration coefficient ε represents the actual distance corresponding to one pixel in the image captured by the linear scan camera 104 at a set magnification. The formula for calculating the calibration coefficient ε is: ε = Δy / Δp; where it is assumed that the displacement between images obtained from image measurement is Δp, and the actual displacement is Δy.

[0039] The linear motor actuator is made to move at a constant speed from the starting point. A linear scan camera 104 scans the target source image 108 at a constant frequency to acquire a one-dimensional signal sequence, thus constructing a uniform speed sample sequence. This operation is repeated multiple times, starting from the same motion starting point, to make the linear motor actuator move at different speeds at a constant speed. The sample sequences of different speeds constitute a multi-speed sample library.

[0040] like Figure 2 , Figure 3As shown, in the FPGA-based linear motor mover position detection platform of this embodiment, the camera driver module 100 is mainly responsible for driving the linear scan camera 104 (hereinafter referred to as the camera) to complete the acquisition of non-periodic stripe images, i.e., target source image information. The camera shooting parameters can be set by writing the camera control command code provided in the user manual of the linear scan camera 104 into the FPGA. Then, the FPGA issues a camera shooting command to start shooting, and transmits the captured grayscale pixel information in real time to the image processing module 200 inside the FPGA for further processing. The image processing module 200 is mainly responsible for processing the position information of the pixel information in the captured image; specifically, as... Figure 4 As shown, the image processing module 200, utilizing its several IP cores, receives the pixel information of the current row transmitted from the camera driving module 100. First, it performs mean filtering on the pixels of the current row to remove noise affecting image processing. Then, it performs a Fast Fourier Transform on the row to obtain its frequency domain information. This frequency domain information is then processed together with the frequency domain information buffered from the previous row to obtain a result sequence. This result is then subjected to an Inverse Fast Fourier Transform to obtain a time domain result sequence. Finally, the coordinates of the maximum value in the result sequence are calculated; these coordinates represent the mover position information at the current moment (i.e., how many pixel blocks the mover has moved between the current row and the buffered previous row). This mover position information is output to the position information transmission module 300. The position information transmission module 300 is mainly responsible for transmitting the mover position information output by the image processing module 200 to the servo controller, which serves as the result of the position loop feedback to the linear motor. The position information transmission module 300 multiplies the input mover position information by a calibration coefficient (i.e., the width of each pixel) to obtain the actual movement distance. It then converts the result into a differential signal and outputs it to the servo control board via the RS485 interface on the FPGA motherboard. Figure 5 As shown. The clock divider module 400 is mainly responsible for dividing the system clock frequency, such as... Figure 6 As shown, three clock cycles with different frequencies are generated to meet the clock frequencies required by the camera driving module, image processing module, and location information transmission module, respectively, ensuring that the entire location information detection process can proceed continuously and avoiding errors in information transmission between modules due to inconsistent clock frequencies.

[0041] In this embodiment, the FPGA-based linear motor mover position detection platform further includes an image cache module; the image cache module is connected between the camera driver module and the image processing module, and is used to cache the target source image information transmitted by the camera driver module.

[0042] The image caching module can be a DD3 image caching module, used to cache image data transmitted from the camera, waiting for the image processing module 200 to acquire it.

[0043] In this embodiment, as Figure 3 As shown, the camera driver module 100 includes an image acquisition module 110, a driver module 120, and a configuration module 130;

[0044] The image acquisition module 110 is used to acquire image signals captured by the linear scan camera;

[0045] The driving module 120 serves as the interface bus for driving the linear scan camera, controlling the working state and parameters of the linear scan camera, and configuring the registers of the linear scan camera.

[0046] The driving clock of the configuration module 130 is provided by the clock output by the driving module to facilitate data interaction between the driving module and the configuration module; the configuration module stores the register address and data to be configured, as well as the start and end of the control initialization; the configuration module also outputs the register address and data of the line scan camera and the control signal to control the driving module to start execution; and connects to the user interface of the driving module to complete the initialization of the line scan camera.

[0047] exist Figure 3 The markings of the connection pins of each component are shown in the table below;

[0048]

[0049] like Figure 4 As shown, the image processing module 200 of this embodiment includes: a median filter core 210 for removing image noise, a fast Fourier transform core 220 for converting the image from the spatial domain to the frequency domain, a shift register 230 for caching image data to construct an image filtering window, a complex multiplier 240 for butterfly operations in FFT / IFFT (i.e., fast Fourier transform / inverse fast Fourier transform), an inverse fast Fourier transform core 250 for converting the frequency domain processed image back to the spatial domain, and an image extremum acquisition core 260 for image enhancement.

[0050] Figure 4 The markings of the connection pins of each component are shown in the table below;

[0051]

[0052] In one embodiment, such as Figure 7As shown, the FPGA-based linear motor mover position detection platform mainly includes an FPGA motherboard 101, a Camera Link interface adapter board 102, a servo control board 103, and a linear scan camera 104.

[0053] Since the linear scan camera 104 uses a Camera Link interface, a Camera Link adapter board 102 is needed to connect the linear scan camera 104 and the FPGA motherboard 101 to achieve information transmission and camera drive control. Then, the RS485 interface on the FPGA motherboard 101 is connected to the RS485 interface of the servo control board 103 to transmit position information. Finally, the linear scan camera 104 is fixed to the mover of the linear motor, and a non-periodic fringe image is placed on the same horizontal line as the camera to ensure that the camera can capture the fringe image in real time as it follows the mover, thus completing the position detection of the linear motor's mover. Furthermore, this platform can achieve real-time motor mover position detection for different types of linear motors, obtaining the mover's position information for more accurate position control optimization. Based on the FPGA, the high speed and parallelism inherent in the FPGA can be used to achieve mover position detection, significantly shortening the detection processing time and obtaining mover position information faster, thereby meeting the real-time requirements of mover position detection. When applied to a linear motor model, the mover position detection obtained through the FPGA motherboard can be directly transmitted to the servo controller to realize the feedback of the servo control position loop. This allows the motor to directly obtain real-time mover position information to adjust the motor's subsequent operating state. The servo control process of the linear motor is more integrated and has high real-time performance.

[0054] The embodiments described above are merely illustrative of several implementations of the present invention, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of the present invention. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of the present invention, and these modifications and improvements all fall within the scope of protection of the present invention. Therefore, the scope of protection of this patent should be determined by the appended claims.

[0055] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the protection scope of the present invention.

Claims

1. A linear motor mover position detection platform based on FPGA, characterized in that, The FPGA-based linear motor mover position detection platform includes: a camera driving module, an image processing module, a position information transmission module, and a clock frequency division module; The camera driver module is used to drive the target camera to acquire target source image information and to transmit the acquired target source image information to the image processing module in real time. The image processing module is electrically connected to the camera driving module and is used to acquire the target source image information and perform image processing to output the mover position information represented by the target source image information; The position information transmission module is electrically connected to the image processing module and is used to transmit the mover position information output by the image processing module to the servo controller; the servo controller feeds back the mover position information as the result of the position loop to the linear motor; The clock divider module is electrically connected to the camera driver module, image processing module, and location information transmission module, and can generate clock cycles of different frequencies to meet the clock frequencies required by the camera driver module, image processing module, and location information transmission module, respectively.

2. The FPGA-based linear motor mover position detection platform according to claim 1, characterized in that, The FPGA-based linear motor mover position detection platform also includes: an image buffer module; The image caching module is connected between the camera driver module and the image processing module, and is used to cache the target source image information transmitted by the camera driver module.

3. The FPGA-based linear motor mover position detection platform according to claim 1, characterized in that, The camera driver module includes an image acquisition module, a driver module, and a configuration module; The image acquisition module is used to acquire image signals captured by the linear scan camera; The driving module serves as the interface bus for driving the linear scan camera, controlling the working state and parameters of the linear scan camera, and configuring the registers of the linear scan camera. The driving clock of the configuration module is provided by the clock output by the driving module to facilitate data interaction between the driving module and the configuration module; the configuration module stores the register addresses and data to be configured, as well as the start and end of control initialization.

4. The FPGA-based linear motor mover position detection platform according to claim 3, characterized in that, The configuration module also outputs the register address and data of the line scan camera, as well as the control signal for the driver module to start execution; and connects to the user interface of the driver module to complete the initialization of the line scan camera.

5. The FPGA-based linear motor mover position detection platform according to claim 1, characterized in that, The image processing module includes: a median filter kernel for removing image noise, a fast Fourier transform kernel for converting the image from the spatial domain to the frequency domain, a shift register for caching image data to construct an image filtering window, a complex multiplier for butterfly operations in FFT / IFFT, an inverse fast Fourier transform kernel for converting the frequency domain processed image back to the spatial domain, and an image extremum acquisition kernel for image enhancement.