| 1 | /**
|
|---|
| 2 | ******************************************************************************
|
|---|
| 3 | * @file balancer.h
|
|---|
| 4 | * @author ECS - Falko Jahn
|
|---|
| 5 | * @version V1.0.0
|
|---|
| 6 | * @date 03-Feb-2021
|
|---|
| 7 | * @brief Balancer Modul Treiber
|
|---|
| 8 | *
|
|---|
| 9 | * Beschreibung
|
|---|
| 10 | * Dieses Modul enthält die notwendigen Funktionen zur Stuerung des
|
|---|
| 11 | * DC/DC Converters (Flybackconverter)
|
|---|
| 12 | *
|
|---|
| 13 | * Starte timer zur Messung der Charge Time und der Charge Transfer Time
|
|---|
| 14 | * Charge Time bedeutet die Zeit zum Aufbau des Magnedfeldes. Also vom Einschalten
|
|---|
| 15 | * des Mosfets bis zum erreichen der Maximal Stroms.
|
|---|
| 16 | * Charge Transfer Time bedeutet die Zeit bis das Magnetfeld über den Trafo auf
|
|---|
| 17 | * auf der Sek. Seite entladen wurde.
|
|---|
| 18 | * Wir können das dedektieren indem wir auf der Prim. Seite die zurück refklektierte Spannung messen.
|
|---|
| 19 | * Die zurück reflektierte spannung am Mosfet Drain Ud ist nach dem ausschalten des MOSFETS zunächst:
|
|---|
| 20 | * Ud = Uin + Uout / Wicklungsverhältniss
|
|---|
| 21 | * Nach dem abmagentieseren ist die Spannung nur noch U= Uin.
|
|---|
| 22 | * Das bedeutet der Comparator sollte im Idealfall genau zwischen diesen beiden Punkten detektieren
|
|---|
| 23 | * Zu diesem Zweg wird die Eingangsspannung leicht erhöht auf den Komperator gegeben
|
|---|
| 24 | * In der aktuellen Konfig mit Spannungsteiler 18k / 3k und Offset 2,5V über 18k
|
|---|
| 25 | * müssen am ausgang mindestens ca. 7 anliegen um über die Triggerschwelle zu kommen
|
|---|
| 26 | * Falls die minimale Ausgangsspannung kleiner werden soll, muss der Offset verringert werde
|
|---|
| 27 |
|
|---|
| 28 | ******************************************************************************
|
|---|
| 29 | */
|
|---|
| 30 | #ifndef __BALANCER_H
|
|---|
| 31 | #define __BALANCER_H
|
|---|
| 32 |
|
|---|
| 33 |
|
|---|
| 34 | //--- INCLUDEs -----------------------------------------------------------------
|
|---|
| 35 |
|
|---|
| 36 | //--- GLOBALE TYPE DEFS --------------------------------------------------------
|
|---|
| 37 |
|
|---|
| 38 | //--- GLOBALE DEFINES ----------------------------------------------------------
|
|---|
| 39 |
|
|---|
| 40 |
|
|---|
| 41 | //--- GLOBALE VARIABLEN PROTOTYPEN ---------------------------------------------
|
|---|
| 42 |
|
|---|
| 43 | //--- GLOBALE FUNKTIONS PROTOTYPEN ---------------------------------------------
|
|---|
| 44 | /**
|
|---|
| 45 | * @brief Init Funktion
|
|---|
| 46 |
|
|---|
| 47 | *
|
|---|
| 48 | * Initialisiert die Komparatoren, damit der Flyback Konverter automatisch arbeitet
|
|---|
| 49 | * Initialisiert den DAC. Über den DAC wierd der maximale Strom vorgegeben.
|
|---|
| 50 | * Die beiden Flyback Trafos haben einen Sätigungsstrom von 10,2 A
|
|---|
| 51 | * Daher darf der MAX Strom nicht mehr als ca. 20A betragen
|
|---|
| 52 | *
|
|---|
| 53 | *
|
|---|
| 54 | * @param Keine
|
|---|
| 55 | *
|
|---|
| 56 | * @retval Kein
|
|---|
| 57 | */
|
|---|
| 58 | void BALANCER_Init(void);
|
|---|
| 59 |
|
|---|
| 60 |
|
|---|
| 61 | /**
|
|---|
| 62 | * @brief Execute Funktion
|
|---|
| 63 | *
|
|---|
| 64 | * Muss periodisch aufgerufen werden.
|
|---|
| 65 | * Prüft die Zellspannung. Ist die Zellspannung größer der aktuellen
|
|---|
| 66 | * ausgleichsspannung, dann wird der Balancer Strom schrittweise erhöht.
|
|---|
| 67 | *
|
|---|
| 68 | *
|
|---|
| 69 | * @param Keine
|
|---|
| 70 | *
|
|---|
| 71 | * @retval Kein
|
|---|
| 72 | */
|
|---|
| 73 | void BALANCER_Exec(void);
|
|---|
| 74 |
|
|---|
| 75 |
|
|---|
| 76 |
|
|---|
| 77 | #endif
|
|---|