Sistema Elektroniko Aurreratuak Unibertsitate Masterra;;Máster Universitario en Sistemas Electrónicos Avanzados
http://hdl.handle.net/10810/14789
2024-03-29T01:42:42ZRegDspLib: Development of a C++ DSP common control library for Cancun, HL-LHC18kA and RF3kA power converters at CERN
http://hdl.handle.net/10810/62810
RegDspLib: Development of a C++ DSP common control library for Cancun, HL-LHC18kA and RF3kA power converters at CERN
Pinillos Zamorano, Nagore
English: The European Organization for Nuclear Research (CERN, Conseil Européen pour la Recherche Nucléaire in French), located in Geneva, Switzerland, hosts the largest particle accelerator complex in the world, which aims to push the boundaries of human knowledge on particle physics. The main acceleration technologies at CERN rely on radio-frequency (RF) cavities and superconducting electromagnets. Usually, these systems need to be fed from the grid using high-efficiency and high-precision switch-mode power electronic converters. This Master’s Thesis has been conducted to complete the Master's studies in Advanced Electronic Systems at the Univesity of the Basque Country (EHU/UPV, Universidad del País Vasco in Spanish). It has been carried out during a short-term internship at CERN’s System Department-Electric Power Converters-Low Power Converters (SY-EPC-LPC) group. This group is in charge of designing and developing low-voltage and high-current modular and compact converters, ranging from some Watts up to several kW. The SY-EPC-LPC manages a variety of power converters within the particle accelerator complex. Most digitally controlled ones share the same control hardware architecture consisting of a proprietary crate, named RegFGC3, which includes several cards. Among these, a Digital Signal Processor (DSP) regulation board and a State Control card containing a Field Programmable Gate Array (FPGA) can be highlighted. This RegFGC3 crate is part of a larger control platform, named FGC3. Although the hardware is highly standardized, nowadays each power supply uses converter-specific software for control purposes, coded in C programming language. This makes all code redundant, difficult to test, debug and maintain. Considering the aforementioned drawbacks, this Master's Thesis aims to design, develop and test a common control library which supports the regulation software of several power converters, providing standardization, flexibility and time-saving. To do so, as a first step, three of the accelerators' power converters have been selected: CANCUN (Cern Acdc Narrow CoNverter), HL-LHC18kA (High Luminosity Large Hadron Collider 18 kA) and RF3kA (Radio-Frequency 3 kA). This selection is based on that these converters incorporate a variety of operating and control requirements, i.e., 1-quadrant, 2-quadrant and 4-quadrant architectures, module parallelization, various current and voltage regulation loops, and different Pulse Width Modulation (PWM) modes including, in some cases, interleaving. After analysing the three power converters and their control (hardware and software), synergies have been identified, which are still missing at the software level. To provide a unified control software library that takes into account such synergies, the refactorization of the code from C to C++ has been justified as the best option. This approach allows using a fast and efficient Object Oriented Programming (OOP) language, whose nature facilitates the expression of the existing relationship between converter-specific codes. The main idea behind the proposed and implemented library, named RegDspLib, is based on constructing a parent class that supports all the converters. It contains all the shared similarities between converters, which eases the development of additional and specialized code. This base class allows the inheritance of the configured common features with the possibility of using, modifying, or adding what is needed by each converter in their corresponding derived classes. C++ language mechanisms have been used to correlate different classes, modules, methods and attributes of the code, easing the development of the common library. This, would have been more laborious in the C language. A variety of modules have been configured to provide logic to the classes, in which a generic module for the configuration of a generic Finite State Machine (FSM) template, and a regulation module with configurable PWM inputs are included, among others. Besides this and to make this library design possible, multiple modifications have been proposed. These consist of the design of a standard FSM for all the converters, the modification of the FPGA which is controlling and monitoring the power converter’s status, the interrupt handling on the DSP, and the building of new generic functions that work with multiple converters. The latter includes the slew rate method that controls the increasing/decreasing rate of the control algorithm’s reference value and an automatic parameter calculation script for interleaving control mechanisms. Verification of the RegDspLib library has been carried out using the CANCUN power converter. First, the same regulation response has been proved when comparing the original and the proposed library-based codes. Regarding digital resources, experimental results show an increase of only 2.48 % in the execution time of the program for the worst-case scenario, and up to a 24.63 % time-saving for the best-case. This demonstrates that it has been possible to standardize, refactor the code to C++ and add more features to the software without generating overruns. All things considered, the C++ programming language is proven valid for real-time control in the DSP target of CERN’s power converters. Besides, building a control library that groups all the common features has also provided a better-structured program, making it easier to understand and to work with. This work could lead to further improvements in the library and it can be completed in order to generalize it to control other power converters besides the presented ones. Moreover, although the RegDspLib library was originally aimed at the FGC3 control platform, this work provides the first steps for developing libraries taking into mind the future control hardware upgrade FGC4 (already in development). In such novel architecture, dedicated cards in the FGC3 (control, monitoring, regulation, measurement, etc.) will be replaced by one single main Central Processing Unit (CPU).; Euskeraz: Ikerketa Nuklearrerako Europako Kontseilua (CERN, Conseil Européen pour la Recherche Nucléaire, frantsesez) Genevan (Suitza) dago kokatua. Partikula-fisikaren ezagutzaren mugak handitzea du helburu erakundeak. Horretarako, gaur egun munduko partikula azeleratzaile handiena dago bertan. CERNen erabiltzen diren azelerazio-teknologia nagusiak irrati-maiztasun (RF) kabitateak eta elektroiman supereroaleetan oinarritzen dira. Normalean, sistema horiek saretik hornitzen direnez, potentzia-bihurgailuak erabili behar dira. Oro har, bihurgailu horiek kommutatuak dira, eta eraginkortasun eta zehaztasun handiarekin operatzen dute. Euskal Herriko Unibertsitatearen (EHU/UPV) Sistema Elektroniko Aurreratuen masterra osatzeko helburuarekin burutu da master amaierako lan hau. CERNek unibertsitate-ikasleentzat duen praktika-programa baten testuinguruan garatu da lana, hain zuzen ere, Sistema Departamendua-Potentzia Bihurgailu Elektrikoak- Potentzia Baxuko Bihurgailu (SY-EPC-LPC) taldean. Bere izenak adierazten duen bezala, tentsio baxuko eta korronte altuko bihurgailu modularrak eta konpaktuak diseinatzeko eta garatzeko ardura du talde horrek. Bereziki, partikula-azeleradore konplexuaren parte diren bihurgailu ugari kudeatzen ditu SY-EPC-LPCek, Watt batzuetatik hasi eta zenbait kW-etaraino iristen direnak. Horien artean, hardware arkitektura berdina partekatzen dute digitalki kontrolaturiko bihurgailu gehienek, CERNen diseinatutako RegFGC3 modulua erabiltzen dutenak. Zenbait txartel elektronikok osatzen dute RegFGC3 modulua. Horien artean Seinale Digitalen Prozesadorea (DSP, Digital Signal Processor, ingelesez) duen erregulazio-txartela eta Ate-Matrize Programagarria (FPGA, Field Programmable Gate Array, ingelesez) daukan egoera-kontrol txartela nabarmentzen dira. Aldi berean, FGC3 izeneko bihurgailuen kontrolerako plataforma handiago baten parte da RegFGC3 moduloa. Hardwarea nahikoa estandarizatua dagoen arren, gaur egun bihurgailuetako bakoitzak bere kontrol-software espezifikoa erabiltzen du, C programazio-lengoaian idatzita. Horrek, erredundantzia eragiteaz gain, kodea frogatzeko, arazteko eta mantentzeko zailtasunak sortzen ditu. Aipatutako arazoak aztertu ondoren, master amaierako lanak bihurgailuen erregulazio-softwarea bateratzen duen kontrol-liburutegi amankomuna diseinatu, garatu eta frogatzea du helburu. Horrekin, estandarizazioa, malgutasuna eta denbora aurreztea bilatu da. Lehenengo urrats bezala, partikula-azeleradoreen parte diren hiru bihurgailu aukeratu dira: CANCUN (Cern Acdc Narrow CoNverter), HL-LHC18kA (High Luminosity Large Hadron Collider 18 kA) eta RF3kA (Radio-Frequency 3 kA). Bihurgailu ezberdinek duten aniztasuna hartzen da kontuan aukeraketa horretan. Hori da, 1, 2 eta 4-koadranteko arkitekturak aurki daitezke; horrez gain, korrontearen eta tentsioaren kontrolerako begizta eta Pultsu Zabalera bidezko Modulazio (PWM, Pulse Width Modulation ingelesez) algoritmo ezberdinak, zenbait kasutan, tartekatutako (interleaved, ingelesez) modulazio-eskemak barne. Behin hiru bihurgailuak eta horien kontrola aztertuta (hardware eta software mailan), sinergiak antzeman dira horien artean. Sinergiak kontuan hartzen dituen kontrol software-liburutegi amankomuna sortzeko, kodea C-tik C++-ra berreraikitzea justifikatu da aukerarik onena bezala. Horrek, Objektuetara Bideratutako Programazio-hizkuntza (OOP, Object Oriented Programming, ingelesez) azkar eta eraginkorra erabiltzea ahalbideratu du, programaren izaerak bihurgailuaren kode espezifikoen arteko erlazioen adierazpena sinplifikatuz. Proposatu eta inplementatutako RegDspLib izeneko liburutegian dagoen ideia nagusia da bihurgailu guztiei euskarria ematen dien funtsezko klase bat eraikitzean oinarritzen dela. Bihurgailuek partekatutako antzekotasun guztiak biltzen ditu klase horrek, eta kode gehigarria eta espezializatua garatzeko erraztasunak ematen ditu, konfiguratutako ezaugarri komunak heredatzea baimenduz. Liburutegi horrekin, bihurgailu bakoitzak behar duena erabiltzeko, aldatzeko edo gehitzeko aukera ematen da, klase deribatuen bidez. RegDspLib liburutegian C++ hizkuntzaren mekanismoak erabili dira klase, modulu, metodo eta atributu ezberdinak elkarrekin lotzeko. Garrantzitsua da aipatzea, nahiz eta helburu horiek lortzeko C programazio-hizkuntza erabiltzea posible izan, lana zailagoa izango litzatekeela. Elementu batzuk konfiguratzen dira klaseetan horiei logika emateko. Besteak beste, Egoera Finituko Makinak (FSM, Finite State Machine, ingelesez) konfiguratzeko modulu generiko bat eta PWM irteera konfiguragarriak dituen erregulazio-moduluak diseinatu dira. Horrez gain, aldaketa ugari burutu behar izan dira liburutegiaren diseinu egokia ahalbidetzeko. Horien artean hauexek nabarmen daitezke: FSM estandarra diseinatzea, potentzia-bihurgailuaren egoera kontrolatzen eta gainbegiratzen duen FPGAren programa-aldaketa, DSParen etenak kudeatzen eta, azkenik, bihurgailu anitzetan funtzionatzen duten funtzio generiko berriak sortzea. Funtzio berri horien artean kontrol algoritmoaren erreferentzia balioaren hazkunde/murrizketa abiadura kontrolatzen duen metodoa eta tartekatutako modulazio-mekanismoaren parametroak automatikoki kalkulatzen dituen funtzioa nabarmentzen dira, besteak beste. CANCUN potentzia-bihurgailuan gauzatu da RegDspLib liburutegiaren egiaztapena. Lehenik eta behin, korrontearen erreferentziari sistemak egindako jarraipenak frogatu du erregulazio-emaitza berdinak lortzen direla, bai proposatutako liburutegiarekin eta baita jatorrizko softwarearekin ere. Baliabide digitalei dagokienez, % 2,48ko exekuzio-denboraren gehikuntza erakutsi dute emaitza esperimentalek, kasurik okerrean, eta % 24,63ko murrizketa, kasurik onenean. Horrek guztiak frogatzen du posible dela, denbora-mugak gainditu gabe, kodea estandarizatzea, C++ lengoaiara berreraikiz, softwareari ezaugarriak gehituz. Laburbilduz, C++ programazio-lengoaia CERNen potentzia-bihurgailuak denbora errealean kontrolatzeko baliozkoa dela frogatu da. Gainera, ezaugarri amankomun guztiak biltzen dituen kontrol-liburutegi bat eraikitzeak, hobeto egituratutako programa bat sortu du, eta kodea hobeto ulertu eta honekin lan egitea erraztu du. Lan honetatik abiatuta, inplementatutako liburutegiaren hobekuntza gehigarriak garatu daitezke etorkizunean. Gainera, liburutegia beste bihurgailu batzuetan (aurkeztutakoez gain) erabiltzeko osatu daiteke. Azkenik, garrantzitsua da aipatzea, RegDspLib liburutegia FGC3 kontrol-plataformara bideratzeko asmoarekin sortu bada ere, proiektu honek FGC4 bertsiorako baliagarriak izango diren liburutegien garatze-ibilbidea hasi duela. Nabarmentzekoa da puntu hori, FGC3ko txartel espezifikoak (kontrola, ikuskapena, erregulazioa, neurketa, etab.) Prozesatzeko Unitate Zentral (CPU, Central Processing Unit, ingelesez) bakar batek ordezkatuko baititu FGC4n.; Español: La Organización Europea para la Investigación Nuclear (CERN, Conseil Européen pour la Recherche Nucléaire, en francés) esta situada en Ginebra, Suiza. Tiene como objetivo superar los límites del conocimiento humano en física de partículas. Para poder cumplirlo, el CERN alberga actualmente el complejo de aceleradores de partículas más grande del mundo. Dentro de este, las principales tecnologías de aceleración se basan en cavidades de radiofrecuencia (RF) y electroimanes superconductores. En general, estos sistemas necesitan alimentarse de la red utilizando convertidores electrónicos de potencia, conmutados de alta eficiencia y precisión.
Este Trabajo de Fin de Máster se ha llevado a cabo con el objetivo de completar los estudios del Máster en Sistemas Electrónicos Avanzados en la Universidad del País Vasco (EHU/UPV). Se ha realizado durante una estancia a través de un programa de prácticas del CERN, en el Departamento de Sistemas-Convertidores de Potencia Eléctricos-Baja Potencia (SY-EPC-LPC). Como su nombre indica, este grupo se encarga del diseño y desarrollo de convertidores modulares y compactos de baja tensión y alta corriente, que operan desde unos pocos Watt hasta varios kW. Este grupo gestiona una gran variedad de convertidores de potencia dentro del complejo de aceleradores de partículas. Entre estos, la mayoría de los controlados digitalmente comparten la misma arquitectura de hardware de control, que consiste en un módulo propietario, llamado RegFGC3. Este módulo incluye varias tarjetas, entre las que destacan una placa de regulación con un Procesador de Señal Digital (DSP, Digital Signal Processor, en inglés) y una tarjeta de control de estado que contiene una Matriz de Puertas Programable (FPGA, Field Programmable Gate Array, en inglés). A su vez, este módulo RegFGC3 forma parte de una plataforma de control mayor, llamada FGC3.
Aunque el hardware esté estandarizado, actualmente cada uno de los convertidores utiliza un software de control específico, escrito en el lenguaje de programación C. Esto hace que el código resulte redundante y difícil de testear, depurar y mantener. Teniendo en cuenta las desventajas mencionadas, el objetivo del Trabajo de Fin de Máster ha sido diseñar, desarrollar y probar una librería de control común que englobe el software de regulación de varios convertidores de potencia, proporcionando estandarización, flexibilidad y ahorro de tiempo en el desarrollo de este. Para ello, como primer paso, se han seleccionado tres de los convertidores de potencia que forman parte de los aceleradores, CANCUN (Cern Acdc Narrow CoNverter), HL-LHC18kA (High Luminosity Large Hadron Collider 18 kA) y RF3kA (Radio-Frequency 3 kA). Esta selección se basa en que los convertidores incorporan arquitecturas de 1-cuadrante, 2-cuadrantes y 4-cuadrantes, distintos lazos de regulación de corriente y tensión, y varios modos de Modulación por Anchura de Pulso (PWM, Pulse Width Modulation, en inglés), incluyendo, en algunos casos, técnicas de entrelazamiento.
Después de analizar los tres convertidores de potencia y su control (a nivel de hardware y software), se ha identificado una sinergia entre ellos, la cual falta a nivel de software. Para proporcionar una librería de software de control unificada que tenga en cuenta estas sinergias, se justifica la reescritura del código de C a C++ como la mejor opción. Esto permite utilizar un lenguaje de Programación Orientada a Objetos (OOP, Object Oriented Programming, en inglés) rápido y eficiente, cuya naturaleza facilita la expresión de la relación existente entre los códigos específicos del convertidor. La idea principal de la librería propuesta e implementada, llamada RegDspLib, se basa en la construcción de una clase padre que de soporte a todos los convertidores. Esta clase contiene todas las similitudes compartidas entre los convertidores, lo que facilita el desarrollo de código adicional y especializado al permitir la herencia de las características comunes configuradas. La librería posibilita utilizar, modificar o agregar lo que sea necesario para cada convertidor, a través de clases derivadas. Se han utilizado mecanismos del lenguaje C++ para correlacionar distintas clases, módulos, métodos y atributos del código, facilitando el desarrollo de una librería común. Esto hubiera sido más laborioso mediante el lenguaje de programación C.
Con el objetivo de dotar de lógica a estas clases, se configuran una variedad de módulos. Se incluyen, entre otros, un módulo genérico para la configuración de Máquinas de Estados Finitas (FSM, Finite State Machine, en inglés) y un módulo de regulación con entradas PWM configurables. Además de esto, para posibilitar el diseño de la librería se han tenido que realizar múltiples modificaciones. Estas incluyen el diseño de una FSM estándar, la modificación de la FPGA que controla y supervisa el estado del convertidor de potencia, el manejo de interrupciones en la DSP y la creación de nuevas funciones genéricas que sirvan para múltiples convertidores. Entre estas últimas destacan el método de tasa de variación que controla el ratio de aumento/disminución del valor de referencia del algoritmo de control y el cálculo automático de los parámetros del mecanismo de control de entrelazamiento.
La verificación de la librería RegDspLib se ha llevado a cabo en el convertidor de potencia CANCUN. Por un lado, se ha obtenido la misma respuesta al escalón de entrada de corriente, tanto con la librería propuesta como con el software original. Por otro, los resultados experimentales muestran un aumento del 2,48 %, en el tiempo de ejecución, para el peor de los casos, y una reducción de hasta el 24,63 %, en el mejor. Esto demuestra que ha sido posible estandarizar, reescribir el código a C++ y agregar características adicionales al software sin exceder los límites de tiempo. En resumen, el lenguaje de programación C++ se ha demostrado como válido para el control en tiempo real de los convertidores de potencia del CERN a través de la regulación en la DSP. Además, la construcción de una librería de control que engloba todas las características comunes ha proporcionado un programa mejor estructurado, lo que facilita su comprensión y trabajar con el mismo.
En un futuro, este proyecto podría llevar a mejoras adicionales de la librería y ser completado para su utilización con otros convertidores de potencia, además de con los tres presentados. Por último, aunque la librería RegDspLib estaba originalmente destinada a la plataforma de control FGC3, este proyecto marca los primeros pasos hacia el desarrollo de librerías para la futura actualización del FGC4, donde las tarjetas dedicadas del FGC3 (control, supervisión, regulación, medición, etc.) serán reemplazadas por una sola Unidad Central de Procesamiento (CPU, Central Processing Unit, en inglés) principal.; Français: Le Conseil Européen Pour la Recherche Nucléaire (CERN), situé à Genève, Suisse, abrite le plus grand complexe d'accélérateurs de particules au monde, qui vise à repousser les limites de la connaissance humaine en matière de physique des particules. Les principales technologies d'accélération du CERN reposent sur des cavités radiofréquences (RF) et les électro-aimants supraconducteurs. Ces systèmes doivent être alimentés par le réseau à l'aide de convertisseurs électroniques de puissance à découpage, à haut rendement et haute précision. Ce mémoire de maîtrise a été réalisé afin de compléter les études de maîtrise en systèmes électroniques avancés à L'Université du Pays Basque (EHU/UPV, Universidad del Pais Vasco en espagnol). Le projet a été réalisé à la suite d’un stage de courte durée dans le groupe System Department-Electric Power Converters-Low Power Converters (SY-EPC-LPC). Au sein du CERN, comme son nom l'indique, SY-EPC-LPC est chargé de concevoir et de développer des convertisseurs modulaires et compacts à basse tension et à courant élevé, d'une puissance allant de quelques Watts à plusieurs kW. Ce groupe gère une variété de convertisseurs de puissance au sein du complexe d'accélérateurs de particules. Ces convertisseurs partagent la même architecture matérielle de contrôle, qui consiste en un boîtier propriétaire, appelé RegFGC3, comprenant plusieurs cartes, dont une carte de régulation à processeur de signal numérique (DSP, Digital Signal Processor en anglais) et une carte de contrôle d'état contenant une réseau de portes programmables sur site (FPGA, Field Programmable Gate Array en anglais). Ce boîtier RegFGC3 fait partie d'une plateforme de contrôle plus large appelée FGC3, qui contrôle le convertisseur de puissance. Bien que le matériel soit fortement standardisé, aujourd’hui, chacun convertisseur utilise un logiciel spécifique au convertisseur à des fins de contrôle, écrite à l'origine dans le langage de programmation C. Cela rend tout le code redondant et difficile à tester, à déboguer et à entretenir. En tenant compte des inconvénients mentionnés, la thèse de maîtrise vise à concevoir, développer et tester une bibliothèque de contrôle commune qui prend en charge le logiciel de régulation de plusieurs convertisseurs de puissance, assurant ainsi la normalisation, la flexibilité et le gain de temps. Pour ce faire, dans un premier temps, trois des convertisseurs de puissance des accélérateurs ont été sélectionnés, à savoir CANCUN (Cern Acdc Narrow CoNverter), HL-LHC18kA (High Luminosity Large Hadron Collider 18~kA) et RF3kA (Radio-Frequency 3 kA), car ils intègrent des architectures à 1-quadrant, 2-quadrants et 4-quadrants, diverses boucles de régulation du courant et de la tension et différents modes de modulation de largeur d'impulsion (PWM, Pulse Width Modulation en anglais), incluant l'entrelacement. L'analyse des trois convertisseurs de puissance et de leur contrôle (matériel et logiciel) a permis d'identifier une synergie entre eux qui est absente au niveau du logiciel. Pour fournir une bibliothèque logicielle de contrôle unifiée qui prenne en compte ces synergies, la réécriture du code de C à C++ est justifiée comme étant la meilleure option. Cela permet d'utiliser un langage de programmation orienté objet (OOP, Object Oriented Programming en anglais) rapide et efficace, dont la nature facilite l'expression de la relation existante entre les codes spécifiques aux convertisseurs. L'idée principale de la bibliothèque proposée et mise en œuvre, nommée RegDspLib, est basée sur la construction d'une classe commune qui prend en charge tous les convertisseurs. Celle-ci contient toutes les similitudes partagées entre les convertisseurs, ce qui facilite le développement de codes supplémentaires et spécialisés en permettant l'héritage des caractéristiques communes configurées, avec la possibilité d'utiliser, de modifier ou d'ajouter ce qui est nécessaire à chaque convertisseur par le biais de classes dérivées. Les mécanismes du langage C++ ont été utilisés pour corréler les différentes classes, modules, méthodes et attributs du code, facilitant ainsi le développement d'une bibliothèque commune, ce qui aurait été plus laborieux en C. Tous les éléments configurés donnent une logique aux classes. Il s'agit, entre autres, un module générique pour la configuration de machines à états finis (FSM, Finite State Machine en anglais) et un module de régulation avec des entrées PWM configurables. En outre et afin de rendre possible la conception de cette bibliothèque, de multiples modifications ont été effectuées. Celles-ci comprennent la conception d'une FSM standard, la modification du FPGA qui contrôle et surveille l'état du convertisseur de puissance, la gestion des interruptions sur le DSP et la construction de nouvelles fonctions génériques qui fonctionnent avec plusieurs convertisseurs. Ces dernières comprennent la méthode de rampe qui contrôle l'augmentation/diminution de la valeur de référence de l'algorithme de contrôle et le calcul des paramètres du mécanisme de contrôle de l'entrelacement automatique. La vérification de la bibliothèque RegDspLib a été effectuée sur le convertisseur de puissance CANCUN. Tout d'abord, la même réponse de régulation à un échelon de courant a été obtenue en comparant les codes originaux et les codes proposés basés sur la bibliothèque. En ce qui concerne les ressources numériques, les résultats expérimentaux montrent une augmentation de 2,48 % du temps d'exécution dans le pire des cas et une diminution de 24,63 % dans le meilleur des cas. Cela démontre qu'il a été possible de normaliser, de réécrire le code en C++ et d'ajouter plus de fonctionnalités au logiciel sans dépassement. Tout bien considéré, le langage de programmation C++ s'est avéré valable pour le contrôle en temps réel dans la cible DSP des convertisseurs de puissance du CERN. La création d'une bibliothèque de contrôle regroupant toutes les fonctionnalités communes a également permis de mieux structurer le programme, ce qui le rend plus facile à comprendre et à utiliser. Ce travail pourrait conduire à d'autres améliorations de la bibliothèque ainsi qu’à son utilisation dans d'autres convertisseurs de puissance que ceux présentés. En outre, bien que la bibliothèque RegDspLib ait été initialement destinée à la plate-forme de contrôle FGC3, ce projet fournit les premières étapes du développement de bibliothèques pour la future mise à niveau du FGC4 (déjà en cours de développement ), où les cartes dédiées du FGC3 (contrôle, surveillance, régulation, mesure, etc.) seront remplacées par une seule unité centrale de traitement (CPU, Central Processing Unit en anglais).
2023-10-10T00:00:00ZDemostrador de control de motores basado en un microprocesador RISC-V
http://hdl.handle.net/10810/62809
Demostrador de control de motores basado en un microprocesador RISC-V
Zaballa Orduna,Jaime
RISC-V es una ISA nacida en el entorno académico que ha ido ganando relevancia con el tiempo hasta convertirse en la arquitectura de microcontroladores abierta más consolidada del mercado. Aunque se trata de una tecnología novel, su uso y desarrollo se han disparado en los últimos años debido a que no requiere el pago de licencias para su uso, una gran barrera de entrada para desarrolladores. En este trabajo se estudia el uso de RISC-V multi-core para el control de motores PMSM mediante FOC. Para estudiar esta aplicación, se adapta un demostrador de control de motores existente y se porta a una plataforma multi-core basada en RISC-V.
2023-10-10T00:00:00ZDiseño e implementación de nuevas funcionalidades en emulador de canal RF sobre dispositivo con multiprocesamiento asimétrico y lógica programable
http://hdl.handle.net/10810/61006
Diseño e implementación de nuevas funcionalidades en emulador de canal RF sobre dispositivo con multiprocesamiento asimétrico y lógica programable
Ros Marauri, Gorka
En la industria 4.0, se quiere fomentar el uso de tecnologías inalámbricas. Sin embargo, debido a la naturaleza de la propagación inalámbrica, aún es difícil cumplir con los requisitos de fiabilidad, latencia y determinismo que ofrecen las comunicaciones cableadas. Para evaluar el funcionamiento de las comunicaciones inalámbricas, es necesario realizar pruebas de campo, lo que supone un aumento del coste total. Otra opción es hacer uso de un emulador de canal, ahorrando el coste. Este Trabajo de Fin de Máster se centra en el diseño e implementación de nuevas funcionalidades en un emulador de canal RF sobre una tarjeta de desarrollo con multiprocesamiento asimétrico y lógica programable. Se utiliza una tarjeta de la familia Zynq Ultrascale+ con un procesador Cortex A53 con un Linux para tareas generales y un Cortex R5 para tareas con requisitos de tiempo, haciendo uso del framework openAMP e implementando el emulador de canal en la FPGA de la tarjeta. Se realiza un análisis de las tecnologías relacionadas al emulador, al igual que el estudio del propio emulador. Se detalla el desarrollo de las nuevas funcionalidades desde el diseño hasta la evaluación mediante diferentes pruebas.; 4.0 industrian, haririk gabeko teknologien erabilera sustatu nahi da. Hala ere, haririk gabeko hedapenaren izaera dela eta, oraindik zaila da komunikazio kableatuek eskaintzen dituzten fidagarritasun, latentzia eta determinismo baldintzak betetzea. Haririk gabeko komunikazioen funtzionamendua ebaluatzeko, kanpo-probak egin behar dira, eta horrek kostu osoa handitzea dakar. Beste aukera bat kanal-emuladore bat erabiltzea da, kostua aurreztuz. Master Amaierako Lan hau multiprozesamendu asimetriko eta logiko programagarria duen garapen-txartel baten gainean RF kanaleko emuladore batean funtzionalitate berriak diseinatzean eta inplementatzean oinarritzen da. Zynq Ultrascale+ familiako txartel bat erabiltzen da, Cortex A53 prozesadore batekin, Linux batekin, zeregin orokorretarako, eta Cortex R5 txartel batekin, denbora-eskakizunak dituzten zereginetarako, openAMP framework-a erabiliz eta txartelaren FPGAn kanal-emuladorea inplementatuz. Emuladorearekin lotutako teknologien azterketa egiten da, baita emuladorearen beraren analisia ere. Funtzionalitate berrien garapena zehazten da, diseinutik hasi eta proba desberdinen bidezko ebaluaziora arte.; In Industry 4.0, the use of wireless technologies is to be encouraged. However, due to the nature of wireless propagation, it is still difficult to meet the reliability, latency and determinism requirements offered by wired communications. To evaluate the performance of wireless communications, field testing is required, which increases the overall cost. Another option is to make use of a channel emulator, saving the cost. This Master's Thesis focuses on the design and implementation of new functionalities in an RF channel emulator on a development card with asymmetric multiprocessing and programmable logic. A Zynq Ultrascale+ family board with a Cortex A53 processor is used with a Linux for general tasks and a Cortex R5 for time-sensitive tasks, making use of the openAMP framework and implementing the channel emulator on the board's FPGA. An analysis of the technologies related to the emulator is carried out, as well as the study of the emulator itself. The development of the new functionalities is detailed from the design to the evaluation by means of different tests.
2023-05-02T00:00:00ZSistema embebido de detección de nubes para cámaras multiespectrales de alta resolución en microsatélites de observación terrestre
http://hdl.handle.net/10810/59753
Sistema embebido de detección de nubes para cámaras multiespectrales de alta resolución en microsatélites de observación terrestre
Díaz Rodríguez, Mikel
La próxima generación de cámaras binoculares iSIM que la empresa Satlantis desarrolla y comercializa para su instalación en microsatélites artificiales dispondrá de sensores multiespectrales de hasta 5 bandas (RGB + NIR + Pancromático) con una alta resolución de imagen. La gran resolución espacial que ofrecen las cámaras iSIM, combinadas con su compacto diseño y bajo peso, suponen un logro tecnológico que permite reducir notablemente los costes de las misiones destinadas a la observación terrestre. Sin embargo, son precisamente estas características las que hacen más necesario maximizar y optimizar el procesamiento de las imágenes en la propia cámara (procesamiento onboard). Siguiendo con este propósito, en este trabajo se propone la detección en tiempo real de la presencia de formaciones nubosas en las imágenes tomadas por las cámaras iSIM. Este sistema proporcionará la posibilidad de descartar automáticamente estas imágenes antes de ser procesadas, almacenadas o transmitidas, y ello redundará en la optimización de la utilización de los limitados recursos disponibles en los satélites. Para la detección de nubes, tan solo se dispone de las bandas del visible y del infrarrojo cercano (VNIR), siendo éste un reto en el desarrollo, ya que generalmente se utilizan las bandas del infrarrojo de onda corta (SWIR) para este tipo de segmentación debido a la similitud de las características espectrales del VNIR en terrenos de alto albedo (nieve, luminosidad de las ciudades, etc.). Recientemente, el aprendizaje automático ha ofrecido soluciones prometedoras al problema del enmascaramiento de nubes, permitiendo una mayor flexibilidad que las técnicas tradicionales de umbralización, que se limitan únicamente a utilizar las bandas espectrales. Sin embargo, son pocos los estudios que se centran en ofrecer un rendimiento robusto en los entornos de alto albedo y que además ofrezcan pruebas experimentales en dispositivos que se puedan utilizar a bordo del satélite para su procesamiento en tiempo real. El algoritmo de aprendizaje profundo propuesto denominado SatCloud tiene en cuenta estas limitaciones, pudiendo capturar y agregar características a varias escalas (multiescala), garantizando que las características semánticas de alto nivel extraídas de los terrenos de alto albedo, como la nieve y las nubes, sean más distintivas. Gracias a una serie de opciones de diseño y técnicas de entrenamiento que mejoran el rendimiento, muestra un rendimiento de vanguardia, comparable al de otros métodos, una gran velocidad y una gran solidez ante todo tipo de situaciones. La experimentación se lleva a cabo en un MPSoC (Multiprocessor System on Chip), demostrando su viabilidad para la implementación en tiempo real del algoritmo propuesto en órbita.
2023-02-09T00:00:00Z