Implementation of Motor Input Frequency Estimation Algorithm on FPGA

Loading...
Thumbnail Image

URL

Journal Title

Journal ISSN

Volume Title

Sähkötekniikan korkeakoulu | Master's thesis

Date

2024-01-22

Department

Major/Subject

Micro- and Nanoelectronic Circuit Design

Mcode

ELEC3036

Degree programme

Master’s Programme in Electronics and Nanotechnology (TS2013)

Language

en

Pages

59

Series

Abstract

For power system utilizing a Variable-Frequency Drive (VFD) the electric motor speed is used with multiple vital control and monitoring applications. With selected auxiliary control and safety systems it might be necessary to calculate the motor speed separately from the main VFD controller. These systems might have limited amount of computing resources available, limiting the speed estimation program complexity. This thesis evaluates different speed estimation approaches and develops an efficient Zero-Crossing detection based solution for use with FPGAs. A literature review is conducted for finding the optimal algorithm for the Register Transfer Level design implementation. The developed algorithm is allowed to utilize only the VFDs voltage information for calculating the motor speed. This limitation shifts the focus of the survey to stator voltage frequency estimation algorithms designed for estimating motor synchronous speed. The literature review compares various algorithms based on their performance and complexity. A strict resource limitation sets the Zero-Crossing algorithm as basis for development due to its inherent simplicity. To improve the dynamic performance a Modified Zero-Crossing algorithm is developed. The symmetrical three phase input signal is transformed into two signals with 90-degree phase difference. By combining the quadrature signal samples phase-shifted signal with same frequency can be produced. Correctly phase-shifting multiple signals and monitoring them for zero-crossings increases the rate at which the frequency information is obtained. This translates into considerably better dynamic performance. A previously implemented Vector Phase Change algorithm is used to compare the new algorithm performance and resource efficiency. The resource consumption is measured by synthesizing the design to empty FPGA. The performance of the algorithms is tested with various simulations using Matlab and ModelSim environments. The performance of the Modified Zero-Crossing algorithm implementation ranged from slightly inferior to significantly better when compared to Vector Phase Change implementation. The extent of the performance difference depends on the properties of the test signals. Overall, the performance of the new Modified Zero-Crossing algorithm was found to match the requirements while greatly reducing FPGA logic and register consumption.

Taajuusmuuttajakäytöissä sähkömoottorin nopeustietoa hyödynnetään laajasti eri ohjaus- ja seurantajärjestelmissä. Joidenkin ulkoisten apujärjestelmien kohdalla on nopeustieto laskettava taajuusmuuttajan ohjauslogiikasta riippumatta. Näissä apujärjestelmissä nopeuden määrittämiseen voi jäädä vain rajatusti resursseja. Tämä rajoittaa kuinka edistynyttä menetelmää nopeuden estimointiin voidaan hyödyntää. Tässä diplomityössä verrataan eri menetelmiä nopeuden estimointiin. Vertailun perusteella toteutetaan laskennallisesti tehokas, nollakohtien tunnistamiseen perustuva algoritmi FPGA alustalle. Työssä hyödynnetään kirjallisuuskatsausta estimointialgoritmien suorituskyvyn ja laskennallisen kuormituksen vertailuun. Kehitettävä algoritmi tulee toiminnassaan hyödyntämään ainoastaan taajuusmuuttajan jännitetietoja. Vertailu rajoittuu moottorin synkronista nopeutta mittaaviin syöttötaajuuden estimointialgoritmeihin. Signaalin nollakohtien havaitsemiseen perustuva algoritmi valikoitui työssä jatkokehityksen kohteeksi resurssitehokkuutensa vuoksi. Työssä kehitettiin uusi muokattu nollakohtien tunnistamiseen perustuva algoritmi parantamaan estimointitarkkuutta dynaamisesti muuttuvien signaalien yhteydessä. Menetelmä perustuu signaalimuunnoksen, jonka avulla saadaan kolmivaiheinen jännitesignaali muutettua kaksivaiheiseksi signaaliksi 90 asteen vaihe-erolla. Summaamalla kahden vaiheen näytteitä voidaan muodostaa uusi signaali halutulla vaiheella ja amplitudilla. Tuottamalla signaaleja sopivalla vaihe-erolla, voidaan syntyneiden uusien nollakohtien ylityksiä seuraamalla taajuustietoa päivittää aikaisempaa nopeammin. Aikaisemmin toteutettu signaalin vaihemuutoksen mittaukseen perustuva estimointialgoritmi toimii vertailukohtana uudelle algoritmille. Menetelmien resurssienkulutus arvioitiin syntetisoimalla ohjelmat tyhjälle FPGA-piirille. Algoritmien suorituskykyä vertailtiin erityyppisten simulaatioiden avulla. Simulaatiot toteutettiin käyttäen Matlab ja ModelSim ympäristöjä. Työssä toteutettu uusi algoritmi saavutti asetetut suorituskykytavoitteet vaatien huomattavasti vähemmän resursseja aikaisempaan toteutukseen verrattuna.

Description

Supervisor

Ryynänen, Jussi

Thesis advisor

Hämäläinen, Antti

Keywords

VFD, FPGA, zero-crossing detection, frequency estimation

Other note

Citation