CN112034754B - A servo drive that supports multiple encoder protocols - Google Patents
A servo drive that supports multiple encoder protocols Download PDFInfo
- Publication number
- CN112034754B CN112034754B CN202010846912.6A CN202010846912A CN112034754B CN 112034754 B CN112034754 B CN 112034754B CN 202010846912 A CN202010846912 A CN 202010846912A CN 112034754 B CN112034754 B CN 112034754B
- Authority
- CN
- China
- Prior art keywords
- encoder
- solid
- fpga
- state memory
- dsp
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004891 communication Methods 0.000 claims abstract description 27
- 230000006870 function Effects 0.000 claims description 13
- 230000003993 interaction Effects 0.000 claims description 11
- 230000005540 biological transmission Effects 0.000 claims description 4
- 238000007405 data analysis Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 3
- 238000000034 method Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 206010004966 Bite Diseases 0.000 description 1
- 235000003332 Ilex aquifolium Nutrition 0.000 description 1
- 241000209027 Ilex aquifolium Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0423—Input/output
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Transmission And Conversion Of Sensor Element Output (AREA)
Abstract
The present invention relates to a servo drive supporting multiple encoder protocols. The servo driver supporting multiple encoder protocols is based on a servo driver control architecture of DSP+FPGA, uses a low-cost solid-state memory, can realize the support of the multiple encoder communication protocols without adding additional hardware and interfaces, and has the characteristics of simple structure, low cost and the like.
Description
Technical Field
The present invention relates to the field of encoded drives, and more particularly, to a servo drive supporting multiple encoder protocols.
Background
In the servo control system, an encoder is often employed as a position detecting element. Different application systems will choose different encoders, which often support different communication protocols, depending on design requirements. When the servo drive is used in a multi-encoder system, it is necessary to replace the external encoder, and to replace the drive or to re-download Field-Programmable gate array (GATE ARRAY, FPGA) firmware.
In the prior art, patent CN206563893U mentions a data transmission system using a plurality of encoder interface circuits, which can support a plurality of encoders at the same time. The encoder modules may extend more encoder channels in a cascaded manner. The patent supports a plurality of encoders and simultaneously needs to be externally connected with a plurality of encoder interfaces, so that the hardware structure is complex, and the system cost is increased.
The servo controller in CN206848742U needs to re-download FPGA firmware when supporting multiple communication protocol encoders, without replacing the servo control circuit board. This patent requires that different encoders be supported by re-downloading FPGA firmware supporting different communication protocols. Downloading programs in some customer application sites is cumbersome, and when the number of drivers is large, the debugging efficiency is affected.
Patent CN202710997U mentions that when the servo controller supports multiple communication protocol encoders, the servo control circuit board does not need to be replaced, but the FPGA firmware needs to be downloaded again. For a complex customer site where the servo driver is installed, when encoders with different communication protocols need to be replaced, the FPGA firmware needs to be downloaded again by disassembling equipment, so that the maintenance workload of products is greatly increased, and the generation efficiency is reduced.
Disclosure of Invention
The invention aims to provide a servo driver supporting multiple encoder protocols, which has the characteristics of simple structure, low cost and the like on the basis of supporting the use functions of multiple encoders.
In order to achieve the above object, the present invention provides the following solutions:
A servo driver supporting multiple encoder protocols comprises an encoder interface, an FPGA, a DSP (digital signal processor, english holly: DIGITAL SIGNAL Process) and a solid state memory (Flash);
the FPGA is respectively connected with the DSP and the solid-state memory, and the DSP is connected with the solid-state memory;
The solid-state memory is used for storing FPGA program data of various encoder communication protocols, the encoder communication protocols corresponding to the program data stored in the solid-state memory are different, the encoder interface is used for connecting an encoder to be driven, the DSP is used for generating a chip selection signal according to the servo parameters so as to open or close the solid-state memory, the FPGA is used for reading the program data stored in the solid-state memory, determining the connected encoder communication protocol according to the servo parameters of a driver, analyzing transmission data of the encoder to be driven through the encoder data analysis function module and uploading the transmission data to the DSP through the DSP data interaction function module, and the DSP is used for carrying out data interaction through the FPGA interaction function module and the FPGA and updating servo driving data in real time according to the position data uploaded by the FPGA so as to drive the motor to stably run.
Preferably, the encoder interface is connected with an encoder data analysis module of the FPGA, the FPGA is connected with the DSP through an SPI interface, a nCFG interface and an Init interface, the SEL interface of the DSP is connected with the/CE signal of the solid-state memory through a switch selection device, and the nCSC interface of the FPGA is connected with the/CE signal of the solid-state memory through a switch selection device.
Preferably, the solid-state memory comprises a first solid-state memory and a second solid-state memory;
The data output interface of the first solid-state memory and the data output interface of the second solid-state memory are connected with the nCSC interface of the FPGA through switch selection devices.
Preferably, the first solid-state memory is turned on when the SEL interface output value is 0, and the second solid-state memory is turned on when the SEL interface output value is 1.
Preferably, the system also comprises an upper computer;
The upper computer is used for sending a command for updating the communication program data of the encoder stored in the solid-state memory to the DSP, so that the FPGA is updated on line.
Preferably, the number of the FPGAs is 1.
Preferably, the number of the encoder interfaces is 1.
According to the specific embodiment provided by the invention, the servo driver supporting multiple encoder protocols has the following technical effects that the servo driver control architecture based on the DSP+FPGA uses a low-cost solid-state memory, and the support of multiple encoder communication protocols can be realized without adding additional hardware and interfaces, so that the whole system has the characteristics of simple structure, low cost and the like.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions of the prior art, the drawings that are needed in the embodiments will be briefly described below, it being obvious that the drawings in the following description are only some embodiments of the present invention, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a schematic diagram of a servo drive supporting multiple encoder protocols in accordance with the present invention;
FIG. 2 is a control block diagram of a servo drive supporting multiple encoder protocols provided by the present invention;
FIG. 3 is a control block diagram of a default support for a first solid-state memory in an embodiment of the invention;
FIG. 4 is a schematic diagram of a structure of a DSP after replacing a solid-state memory according to an embodiment of the present invention;
FIG. 5 is a functional block diagram of encoder data processing in an embodiment of the present invention.
Detailed Description
The following description of the embodiments of the present invention will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments of the present invention, but not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
The invention aims to provide a servo driver supporting multiple encoder protocols, which has the characteristics of simple structure, low cost and the like on the basis of supporting the use functions of multiple encoders.
In order that the above-recited objects, features and advantages of the present invention will become more readily apparent, a more particular description of the invention will be rendered by reference to the appended drawings and appended detailed description.
FIG. 1 is a schematic structural diagram of a servo driver supporting multiple encoder protocols, which is provided by the invention, and comprises an encoder interface, an FPGA, a DSP and a solid-state memory, wherein the number of the FPGA and the encoder interface is preferably 1.
The FPGA is respectively connected with the DSP and the solid-state memory, and the DSP is connected with the solid-state memory;
The solid-state memory is used for storing a plurality of program data supporting the communication protocols of the encoders, the communication protocols of the encoders supported by the program data stored in the solid-state memory are different, the encoder interface is used for reading position data acquired by the encoder to be driven, the DSP is used for controlling input values of the Flash chip select signals according to the servo parameters so as to open or close the solid-state memory, the FPGA is used for reading the program data stored in the solid-state memory, the encoder data connected with the current servo driver are analyzed through the encoder data analysis module, the position data obtained after analysis are uploaded to the DSP through the DSP data interaction module, the DSP performs data interaction through the FPGA interaction function module and the FPGA, and servo drive data are updated in real time according to the position data uploaded by the FPGA so as to drive the motor to stably run.
In the above technical solution provided in the present invention, the driver may support, but is not limited to, encoders of synchronous and asynchronous protocols such as nikon, polymoton, biss, SSI, endat2.2, etc.
Preferably, the encoder interface is connected with an encoder data analysis module of the FPGA, the FPGA is connected with the DSP through an SPI interface, a nCFG interface and an Init interface, the SEL interface of the DSP is connected with the/CE interface of the solid-state memory through a switch selector, and the nCSC interface of the FPGA is connected with the/CE interface of the solid-state memory. The SPI communication between the DSP and the FPGA can use any other communication mode.
On a servo driver control architecture based on a DSP+FPGA, the solid-state memory can use two low-cost program memory chips Flash1 and Flash2 (a first solid-state memory and a second solid-state memory);
The data output interface of the first solid-state memory and the data output interface of the second solid-state memory are connected with the nCSC interface of the FPGA through the switch selection device.
Preferably, the first solid-state memory is turned on when the SEL interface output value is 0, and the second solid-state memory is turned on when the SEL interface output value is 1.
In order to update the communication protocol of the encoder in the solid-state memory conveniently, the servo driver supporting various encoder protocols provided by the invention further comprises an upper computer;
The upper computer is used for updating the encoder communication protocol stored in the solid-state memory.
The invention not only supports the encoder of the asynchronous communication protocol, but also supports the encoder of the synchronous communication protocol, and expands the adaptability of the driver.
Meanwhile, the invention can also realize the online upgrade of the FPGA. Through switching of Flash, the reliability of FPGA online upgrade can be improved.
The advantages of the present invention will be further described based on the operating principle of the servo driver supporting various encoder protocols provided by the present invention.
As shown in fig. 2, based on the technical scheme provided by the invention, the DSP has the functions of servo driving, upper communication, fault detection, interaction with the FPGA, AD sampling and the like. After the FPGA analyzes the encoder data, the encoder data is uploaded to the DSP for servo control.
The internal functional modules of the FPGA are shown in fig. 5, and comprise an encoder data analysis module, a DSP data interaction module and other auxiliary functional modules.
Flash1 and Flash2 respectively store programs supporting different encoders, and it is assumed that the encoder types supported by Flash1 include A, B, C and D, and the encoder types supported by Flash2 include E, F and G. When sel=0 in the system default DSP, flash1 is selected as the default boot Flash for the FPGA, and the driver default supports encoder types A, B, C and D, as shown in fig. 3.
When the system is powered on, if the driver adopts default servo parameters, the DSP outputs SEL=0 according to the servo parameters of the driver, namely, the Flash1 chip selection signal/CE is valid at the moment. And simultaneously outputting nCFG low-level pulse signals, and reading program data from the Flash connected by the FPGA at the same time, and completing self-starting. After the FPGA has completed initialization, the Init signal goes high. After the DSP receives the Init high level, the FPGA is considered to enter a normal working mode, and the external encoder data can be analyzed. The types of encoders supported by the driver at this time are encoder a, encoder B, encoder C, and encoder D.
When the encoders of different communication protocols need to be replaced, the type of encoder of the servo parameters is modified only by the upper computer. And the DSP judges whether the FPGA is switched from the Flash1 to the program in the Flash2 according to the currently set servo parameters. Therefore, sel=0 is maintained if only one of A, B, C and D encoder types needs to be replaced, and the SEL signal in DSP is changed to sel=1 if the program in Flash2 needs to be replaced. After the FPGA has completed restarting, then the encoder types are encoder E, encoder F, and encoder G can be supported. The system functions when Flash2 is selected are seen in fig. 4.
When the Flash is determined to be started, the FPGA works normally, the data analysis module analyzes the data of the supported encoder, and the real-time position value is uploaded to the DSP through SPI communication.
When the FPGA program needs to be upgraded online, the DSP selects Flash chip select signals/CEs according to the encoder type set value.
Assuming that the current encoder type is set to a and the customer site needs to replace the encoder to type B, the DSP output keeps sel=0 to select Flash1 (① in fig. 1), and the FPGA receives the upgrade data via the SPI bus and writes to the corresponding Flash1. The DSP monitors the FPGA upgrade status and outputs nCFG control signals (② in fig. 1) to initiate reconfiguration of the FPGA. After the FPGA completes reconfiguration, the FPGA enters an initialization stage, and all interfaces are high-resistance. After the initialization of the FPGA is finished, an initialization completion signal init_done (③ in fig. 1) is output and is self-started, and the user mode can be entered to complete the design function.
In the upgrading process, only one piece of Flash data is operated, so that the other piece of Flash data is ensured to be unchanged. Therefore, the driver can be ensured to be capable of ensuring that the FPGA can be started correctly from Flash at any time. The method for upgrading the FPGA in the technical solution provided in the present invention is the prior art, and specifically refer to the patent document CN110737452a, which is not described herein.
Compared with the prior art, the technical scheme provided by the invention has the following advantages:
1. Multiple encoder protocols can be supported without increasing servo driver hardware and structural complexity.
2. The hardware design is simple, and synchronous communication protocol and asynchronous communication protocol encoders can be supported simultaneously by only adopting one FPGA and one encoder interface. Meanwhile, the online upgrading function can be completed, and the adaptability and the reliability of the driver are improved.
3. The FPGA firmware is simple to develop, and has the characteristics of low system cost and short development period.
In the present specification, each embodiment is described in a progressive manner, and each embodiment is mainly described in a different point from other embodiments, and identical and similar parts between the embodiments are all enough to refer to each other.
The principles and embodiments of the present invention have been described herein with reference to specific examples, which are intended to facilitate an understanding of the principles and concepts of the invention and are to be varied in scope and detail by persons of ordinary skill in the art based on the teachings herein. In view of the foregoing, this description should not be construed as limiting the invention.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010846912.6A CN112034754B (en) | 2020-08-21 | 2020-08-21 | A servo drive that supports multiple encoder protocols |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010846912.6A CN112034754B (en) | 2020-08-21 | 2020-08-21 | A servo drive that supports multiple encoder protocols |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112034754A CN112034754A (en) | 2020-12-04 |
CN112034754B true CN112034754B (en) | 2025-03-28 |
Family
ID=73580283
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010846912.6A Active CN112034754B (en) | 2020-08-21 | 2020-08-21 | A servo drive that supports multiple encoder protocols |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112034754B (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201869158U (en) * | 2010-10-25 | 2011-06-15 | 广州数控设备有限公司 | Alternating current servo drive being compatible with multiple position feedbacks and supporting multiple bus protocols |
JP2013110904A (en) * | 2011-11-24 | 2013-06-06 | Fuji Electric Co Ltd | Electric motor drive device |
CN212484137U (en) * | 2020-08-21 | 2021-02-05 | 清能德创电气技术(北京)有限公司 | Servo driver supporting multiple encoder protocols |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8141784B2 (en) * | 2009-09-25 | 2012-03-27 | Hand Held Products, Inc. | Encoded information reading terminal with user-configurable multi-protocol wireless communication interface |
CN203054557U (en) * | 2012-12-28 | 2013-07-10 | 广州数控设备有限公司 | A position sensor interface servo control device supporting multiple sensor communication protocols |
CN106200561B (en) * | 2016-07-31 | 2019-03-29 | 上海新时达电气股份有限公司 | Coder controller and configuration method |
CN106850374B (en) * | 2017-02-24 | 2019-02-22 | 成都信息工程大学 | Encoder data acquisition module and method for multi-protocol compatible multi-industrial Ethernet bus |
CN110908942B (en) * | 2019-11-28 | 2021-09-07 | 武汉华之洋科技有限公司 | FPGA-based IP core and method for freely converting multiple encoder protocols |
-
2020
- 2020-08-21 CN CN202010846912.6A patent/CN112034754B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201869158U (en) * | 2010-10-25 | 2011-06-15 | 广州数控设备有限公司 | Alternating current servo drive being compatible with multiple position feedbacks and supporting multiple bus protocols |
JP2013110904A (en) * | 2011-11-24 | 2013-06-06 | Fuji Electric Co Ltd | Electric motor drive device |
CN212484137U (en) * | 2020-08-21 | 2021-02-05 | 清能德创电气技术(北京)有限公司 | Servo driver supporting multiple encoder protocols |
Also Published As
Publication number | Publication date |
---|---|
CN112034754A (en) | 2020-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102012120B1 (en) | Soft processor based image signal source and image signal processing method | |
CN108345254B (en) | Triple redundancy control method and system | |
CN106909425B (en) | A kind of online upgrade method of DSP and FPGA system | |
CN110737452A (en) | FPGA firmware online upgrading method and system | |
US20250238386A1 (en) | Electronic device and pcie topology configuration method and apparatus thereof | |
CN102200933A (en) | System BIOS (Basic Input/Output System) automatic restoring method based on dual SPI (Serial Peripheral interface) Flashes | |
CN117311768A (en) | System and method for dynamically reconfiguring FPGA firmware | |
EP2079003A1 (en) | Computer system and power-saving method thereof | |
CN111103827A (en) | Server working mode switching device | |
CN112034754B (en) | A servo drive that supports multiple encoder protocols | |
CN212484137U (en) | Servo driver supporting multiple encoder protocols | |
JP2016042283A (en) | Information processing apparatus, power control method for information processing apparatus, and program | |
CN102081526A (en) | Basic input/output system architecture | |
CN100388255C (en) | An interface conversion module and method for configuring FPGA | |
CN211015473U (en) | Upgrade configuration logic circuit, programmable logic device and upgrade configuration system | |
US20180143928A1 (en) | Switch system and operation method thereof | |
CN110162499B (en) | PECI bus switching device, method and system | |
CN109408151B (en) | A field programmable gate array configuration mode automatic switching device and switching method | |
CN113608935B (en) | Method, system, equipment and medium for testing network card | |
CN113886308A (en) | A method and apparatus for managing PHY devices through PCIE | |
CN102455955A (en) | Dual-processor boot-up system | |
US10191875B2 (en) | Techniques of providing serial port in non-legacy system via embedded-system device | |
TWI591483B (en) | Switch system | |
CN119806563B (en) | Image file migration system and image file migration method | |
CN101833308A (en) | Control system with distributed processing architecture and operation method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |