Menu

Présentation Menu précédent Accueil


  ALIMENTATION FCALLBOX 1-30V 3A USB V2.00  


Description


Software de contrôle sous Windows Software de contrôle sous Linux Software de contrôle à distance sous Android


L'alimentation FCALLBOX 2x30V 3A USB V2.00 décrite dans cet article remplace la première version (archive en fin d'article).

Elle est plus précise et possède un MCU plus puissant permettant un affichage plus fluide.

Les caractéristiques sont les suivantes :

- Deux sorties programmables 1 à 30V 3A max, isolées :

    Précision pour la tension : 1.4% max entre 1 et 30V et 0.4% entre 3 et 30V pour une charge de 0 à 3A.

    Précision de lecture de courant : +/-2% max de 300mA à 3A et +/-5% max de 0 à 3A

- Deux sorties fixe 5V 3A (0V couplé à chaque sortie 1 à 30V).

- Possibilité de mettre les sorties 30V en série (2 à 60V 3A) ou en montage symétrique (1 à +30V 3A et -1V à -30V 3A)

- Possibilité de mettre les sorties 5V en série (10V 3A) ou en montage symétrique (+5V et -5V 3A)

- Protection de courant programmable 0 à 3A, software et hardware.

- Affichage et commande via un écran TFT 2.8" à touches tactiles.

- programmable par USB, port isolé des sorties (le 0V n'est pas rélié au 0V du port USB de votre PC.)

Sommaire

Bloc diagramme

L'alimentation est composée de :

- Quatre blocs d'alimentation 230V vers 19V 30W.

- Deux cartes d'alimentations avec CPU intégré.

- Un afficheur TFT 2.8" avec touches tactiles.

- Deux sorties 1 à 30V isolées.

- Deux sorties 5V 3A isolées, mais avec leur 0V couplé respectivement au 0V de chaque sortie 1 à 30V.


Ci dessous le blox diagramme d'un des deux blocs :


Télécharger ici le bloc diagramme

Et le bloc diagramme de l'alimentation complète :


Télécharger ici le bloc diagramme

Schéma

Le schéma de la carte :


Télécharger le schéma ici

Quelques explications :

- La partie alimentation analogique est basée sur un régulateur à découpage LM2576 U27.

- Le contrôle de la tension de sortie s'effectue en introduisant un ampli opérationnel U2 dans la boucle d'asservissement, celui ci étant piloté par un DAC 14bits AD5667R U1 qui incorpore une référence de tension stable. Note : le feedback est pris sur la borne SENSE + qui doit être relié à la borne + de la face avant

- La mesure de courant de sortie, utilise un circuit "current sense 5A" ACS712 U23, sa sortie (185mV/A) est amplifiée par U8 et connectée à un ADC 18bits MPC3422 U6.

- L'ADC et le DAC sont pilotés en I2C par Le CPU de la carte module PIC24FJ256GB206. Le bus est isolé par un ADUM2251 U5 afin de séparer électriquement le port USB des sorties alimentations.

- La commande ON/OFF du régulateur LM2576 est pilotée par le CPU et isolée grâce un optocoupleur HMHA281 U6.

- Le circuit ICL7660 U4 sert à générer une tension négative pour les AOP afin qu'ils puissent sortir une tension négative pour que la sortie du LM2576 puisse descendre à 1V

- Afin d'assurer un protection de courant rapide, il a été ajouté un comparateur LM211 U13 sur la sortie du capteur de courant, la limite est fixée par la tension de sortie de la deuxième sortie du DAC U1.

- La partie 5V 3A est faite avec un MP2315 U10.

Nomenclature

La nomenclature ci dessous montre seulement les composants à monter.

Pour la deuxième carte (SECONDARY), les composants dans les cellules rouge ne doivent pas être montés,

Top view
Ref Description Fabricant / référence
R39 Résistance 100KR 1% 0603 Toutes marques
R9 Résistance 10KR 1% 0603 Toutes marques
R17,R36 Résistance 15KR 1% 0603 Toutes marques
R28 Résistance 4K7 1% 0603 Toutes marques
R12 Résistance 5K1 1% 0603 Toutes marques
R26 Résistance 2K2 1% 0603 Toutes marques
R10 Résistance 470R 1% 0603 Toutes marques
R6,R7,R8 Résistance 1K 1% 0603 Toutes marques
R29 Résistance 4K7 1% 0603 Toutes marques
R2 Résistance 2.2K 1% 0603 Toutes marques
R13,R14,R15,R16,R20,R21,R22,R23,R24,R25 Résistance 100K 1% 0603 Toutes marques
R19,R37,R38 Résistance 330R 1% 0603 Toutes marques
R34,R35 Résistance 4.7K 1% 0603 Toutes marques
R1,R30 Résistance 5.6K 1% 0603 Toutes marques
R31 Résistance 560R 1% 0603 Toutes marques
R46 Résistance 36K 1% 0603 Toutes marques
R47 Résistance 6.8K 1% 0603 Toutes marques
R11,R33 Résistance 220K 1% 0603 Toutes marques
C2,C4-C6,C9,C13-C18,C36,C20,C21,C22,C24,C25,C27,C38 Condensateur 100nF 50V X7R 10% 0603 Toutes marques
C37 Condensateur 100nF 50V X7R 10% 0603 Toutes marques
C34,C35 Condensateur 10uF 16V X7R 0805 Toutes marques
C40 Condensateur 10nF 50V X7R 10% 0603 Toutes marques
C31 Condensateur 1nF 50V X7R 10% 0603 Toutes marques
C42 Condensateur 22pf 10% 0603 Toutes marques
C8,C12,C26 Condensateur 22uF 10V X7R 0805 Toutes marques
C10,C11,C19 Condensateur 10uF 16V X7R 0805 Toutes marques
C7 Condensateur 10uF 25V X5R 1210 Toutes marques
C3 Condensateur 100uF 50V diam 10mm pas 5mm Panasonic 667-EEU-FC1H101 ou équivalent
C1 Condensateur 2200uF 35V diam 16mm pas 7.5mm Panasonic 667-ECA-1VM222 ou équivalent
C39 Condensateur 1nF 50V X7R 10% 0603 Toutes marques
Top view
Ref Description Fabricant / référence
D1 Diode schottky SDO123 BAT43W ou BAT54T1 ou équivalent
U4 Circuit intégré ICL7660 SO8 Intersil CL7660CBAZ ou équivalent
U6 Circuit intégré ADC 18bits MCP3422A0-E/SN ou MCP3422A1-E/SN SOIC-8 Maxim MCP3422A0-E/SN ou MCP3422A1-E/SN
U1 Circuit intégré DAC AD5647R 14bits SOIC-8 Analog Devices AD5647RBRMZ
U27 regulateur LM2576 TO220-5 Texas LM2576T-ADJ/NOPB
U3 regulateur LM7805 TO220 LM7805 TO220
U5 isolateur I2C ADuM2251 SOIC16 W Analog device ADuM2251ARIZ
U7,U9,U10 Optocoupleur HMHA281 Fairchild Semiconductor HMHA281
U23 Capteur de courant ACS712ELCTR-05B-T (5A) SOIC8 Alegro Microsystem ACS712ELCTR-05B-T
U14 Régulateur DC/DC MP2315 TSOP3-8 MPS (Monolithic Power System) / MP2315
U2,U8 AOP TL072 SOIC8 Toutes marques
U13 comparateur LM211 SOIC8 Toutes marques
U12 regulateur LM1117 3.3V TO220 LM1117T-3.3/NOPB Toutes marques
D2 diode Schottky 40V 3A 1N5822 STMicroelectronics 1N5822 ou équivalent
L1 Inductance DO3316 6.8uH 4.6A COILCRAFT DO3316P-682MLB ou équivalent
L3 Inductance 150uH 5A J.W. Miller 2314-V-RC ou équivalent
J1,J2,J3,J5,J7,J9 bornier 2 points pas 5.08mm WEIDMULLER 1760490000 ou équivalent
J4 Connecteur mâle 1x6 pas 2.54mm Toutes marques
J10 Connecteur mâle 1x6 pas 2.54mm Toutes marques
J6 bornier 2 points pas 5.08mm WEIDMULLER 1760490000 ou équivalent
J11 Connecteur femelle 2x19 pas 2.54mm Toutes marques
J8 Connecteur USB type B traversant Toutes marques

Bottom view
Ref Description Fabricant / référence
C23,C28,C29,C32,C33 Condensateur 100nF 50V X7R 10% 0603 Toutes marques
C41 Condensateur 22uF 25V X7R 1210 Toutes marques
R18,R43 Résistance 22K 1% 0603 Toutes marques
R47 Résistance 75K 1% 0603 Toutes marques
R48 Résistance 22R 1% 0603 Toutes marques
R4,R5 Résistance 4.7K 1% 0603 Toutes marques
R51,R52 Résistance 560R 1W 10% traversante axiale Toutes marques
R41,R42 Résistance 47K 1% 0603 Toutes marques
C30 Condensateur 100nF 50V X7R 10% 0603 Toutes marques

Circuit imprimé

Les dimensions de la carte PSU sont 100x75mm, étant donné que les dimensions standard des PCB prototype sont de 100x100mm, j'ai rajouté sur la surface non utilisée des adaptateurs CMS vers DIP.

Il faut donc découper la carte au niveau du trait rouge.

Ci dessous les photos de la carte F00108


Télécharger ici les données de fabrication

Assemblage

La carte possède des composants sur les deux faces.

Les composants en vert ne doivent pas être câblés.

Les composants en rouge ne doivent pas être câblés pour la carte secondaire.

R56 et R57 doivent être câblées comme sur le plan du bottom (pas comme sur les photos), ceci permet d'avoir une plus grande précision en lecture de courant.


Vue de dessus de la carte

Vue de dessous de la carte (attention au câblage de R56 et R57)

Photo de la vue de dessus de la carte #1 (PRIMARY)

Photo de la vue de dessous de la carte #1 (PRIMARY)

Placement carte CPU

Photo de la vue de dessus de la carte #2 (SECONDARY)

Photo de la vue de dessous de la carte #2 (SECONDARY)

Télécharger ici la vue de dessus en PDF      Télécharger ici la vue de dessous en PDF

Mise en boitier

La description qui suit utilise un boîtier de table Bopla 55520010.MT, mais tout autre type de boitier peut être adapté.


PROPOSITION DE FACE AVANT ET ARRIERE

Plan de perçage face avant

Plan de perçage face arrière

Télécharger ici le plan de perçage de la face avant en PDF      Télécharger ici le plan de perçage de la face arrière en PDF

Plan de sérigraphie des faces

Télécharger ici le plan des sérigraphies des faces en PDF     

face avant vue de devant

face avant vue côté cablage

Câblage

CABLAGE ENTRE LES DEUX CARTES

C'est le câblage pour la communication entre la carte maitre et esclave

Télécharger ici le plan      

CABLAGE BLOCS ALIMENTATIONS

Les entrées primaires 110/230V des quatre blocs sont mis en parallèle et seront câblés sur la face arrière.

Chaque sortie 0 et 19V de chaque bloc est reliée aux entrées 0Va 19Va 0Vb 19Vb de chaque carte, utiliser des fils AWG16 ou moins (diamêtre plus gros).

Télécharger ici le plan      

CABLAGE FACE AVANT


Afin d'éviter trop de chute de tension dans les câbles, utiliser des fils AWG16 ou moins (diamêtre plus gros)

Télécharger ici le plan      

CABLAGE FACE ARRIERE


Télécharger ici le plan      

CABLAGE DISPLAY


Télécharger ici le plan      

PHOTOS CABLAGE

câblage des blocs d'alimentations

Télécharger ici la photo      

câblage principal

Télécharger ici la photo      

Programmation du PIC

Télécharger le zip du fichier HEX V2.15 à programmer dans le PIC      

La programmation peut se faire avec un pickit3 ou un ICD3, ci dessous la correspondance de la pin 1 de programmateur





   Mise sous tension   
   

Si tout se passe bien, vous devriez voir l'écran de boot ci dessous :



Appuyez sur l'écran pour passer au menu principal (on y vient automatiquement au bout d'une trentaine de secondes)

Le T en jaune signifie tracking ON, en rouge OFF

La case ON/OFF indique l'état de la sortie :

En rouge : sortie OFF, en vert : sortie ON

L'appui sur la case change l'état

A l'état OFF, on visualise la valeur de la tension programmée, ainsi que la limite de courant:


Pour programmer la tension de sortie, appuyez sur SET U:

Vous avez alors accès à un clavier

L'appui sur CL set la tension à 00.000V

L'appui sur TR set le mode tracking ON ou OFF

L'appui sur ENTER, set la valeur, et reviens au menu principal, sauf si la tension n'est pas comprise entre 1V et 30V.

Auquel cas la valeur s'affiche en rouge et il faut alors saisir une autre valeur.

Pour programmer la limitation de courant, appuyez sur SET I:

L'appui sur CL set le courant to 0.000A

L'appui sur ZERO calibre le courant 0

L'appui sur ENTER, set la valeur,et reviens au menu principal, sauf si le courant n'est pas compris entre 0 et 3A.

Note : quand la limitation de courant se déclenche (en moins d'une seconde), la PSU passe en mode OFF

Il faut alors soit supprimer le défaut ou augmenter la limite, avant de réarmer en appuyant sur la case ON/OFF

La mesure de courant variant avec la température, quand le courant mesuré est négatif, l'affichage du courant est le suivant :

Il faut alors faire une remise à zéro via le menu SET I puis ZER

Programme PC Window de contrôle de la PSU via USB

Le logiciel de contrôle permet de prendre la main sur la PSU via USB.

Mais il est aussi indispensable pour les calibrations de celle ci.

Télécharger ici le fichier et décompresser le dans un dossier puis lancer FcallBoxPSUremoteV121.exe      

Pour chaque sortie, on a :

- Uread indique la tension lue.
- Iread indique le courant lu.
- USet la tension de sortie programmée, modifiable en saisissant une valeur puis en appuyant sur ENTER ou sur le bouton Apply.
- ISet même chose, mais pour la limite de courant.
- Power indique la puissance consommée par la charge sur la sortie.
- ON/OFF en rouge pour sortie OFF et vert pour ON, l'appuie sur le bouton change l'état de la sortie.

- Dans le fenêtre Miscellaneous Controls :

   - Les boutons Zero Current output 1 et Zero Current output 2 permettent de remettre à 0 la valeur des courants lus.
   - Le bouton tracking met la PSU en mode où la tension de sortie est ajustée pour suivre la tension lue, cela permet de s'affranchir des pertes dans les câbles lors de fortes charges.

A l'état OFF, Uread et Iread n'affichent rien, mais la programmation des sorties est possible :

La mesure de courant variant avec la température, quand le courant mesuré est négatif, l'affichage du courant est le suivant et le bouton Zero Current Output clignote, indiquant qu'une calibration du Zéro est nécessaire :





   CALIBRATION   
   

La calibration s'opère avec le logiciel de contrôle via USB :


Chaque opération peut être faite individuellement.

Calibration de la tension de sortie (CALIBRATION VOLTAGE SET):

- Cliquer sur le bouton 1, attendre que la tension soit stabilisée, mesurer à l'aide d'un multimetre la tension de sortie, écrire la valeur dans la case à droite.
- Cliquer sur le bouton 2, attendre .., mesurer la tension de sortie et l'écrire dans la case de droite.
- Cliquer sur le bouton 3, pour calculer et enregistrer les valeurs de calibrations dans la PSU.

Calibration de la valeur lue de la tension de sortie (CALIBRATION VOLTAGE READ):

- Cliquer sur le bouton 1, attendre que la tension soit stabilisée, mesurer à l'aide d'un multimetre la tension de sortie, écrire la valeur dans la case à droite.
- Cliquer sur le bouton 2, pour calculer et enregistrer les valeurs de calibrations dans la PSU.

Calibration de la valeur lue du courant de sortie (CALIBRATION CURRENT READ):

- Cliquer sur le bouton 1, ceci enregistre la valeur quand il n'y a pas de charge en sortie (calibration du zéro).
- Mettre une charge de 4.7R 50W sur la sortie avec une amperemetre en série, relever le courant et l'écrire dans la case de droite, cliquer sur le bouton 2.
- Cliquer sur le bouton 3, pour calculer et enregistrer les valeurs de calibrations dans la PSU.

Sauvegarde ou chargement des données de calibration :

- Pour chaque sortie, il est possible de sauvegarder Save calibration datas ou de restorer Load calibration datas

Programme PC Linux de contrôle de la PSU via USB

Le logiciel de contrôle permet de prendre la main sur la PSU via USB.

A noter que la calibration n'est pas gérée par le programme Linux et elle doit être faite une fois avec le programme sous Windows.

Le programme a été écrit en python, il faut d'abord lancer installations suivantes en mode root :

- sudo apt-get install python-pygame

- apt-get install python-pip

- pip install pyusb

Télécharger ici le fichier et décompresser le dans un dossier puis lancer python ps.py      

Copie d'écran quand la PSU n'est pas connectée par USB ou pas sous tension

Affichage en mode connecté

La mesure de courant variant avec la température, quand le courant mesuré est négatif, l'affichage du courant est le suivant :

Une calibration de la mesure de courant est nécessaire en cliquant sur DO ZERO OUTPUT


Contrôle à distance du Software Windows ou LINUX

Le logciel peut être piloté à distance via une liaison Socket Server-Client en UDP

Il faut renseigner les champs IP et Port, utiliser 127.0.0.1 si le soft de pilotage est sur le même PC

Les commandes disponibles sont listées ci dessous :

La commande doit être suivie de \n

Les commandes de lecture ci dessous retournent la commande suivie de la valeur et \n par exemple : READ_U1_VOLTAGE12.123\n

READ_U1_VOLTAGE : return voltage read on Output #1
READ_U2_VOLTAGE : return voltage read on Output #2
READ_U1_SET : return voltage set on Output #1
READ_U2_SET : return voltage set on Output #2
READ_I1_CURRENT : return current read on Output #1
READ_I2_CURRENT : return current read on Output #2
READ_I1_LIMIT : return limit current on Output #1
READ_I2_LIMIT : return limit current on Output #2
READ_U1_STATE : return state for Output #1, equal to 1 if ON
READ_U2_STATE : return state for Output #2, equal to 1 if ON
READ_TRACKING_STATE : return tracking, equal to 1 if ON

Les commandes d'écriture ci dessous retournent OK + \n par exemple : OK\n

SET_U1_VOLTAGE : set voltage for Output #1, return OK
SET_U2_VOLTAGE : set voltage for Output #2, return OK
SET_I1_LIMIT : set current limit for Output #1, return OK
SET_I2_LIMIT : set current limit for Output #2, return OK
SET_U1_ON : set Output #1 ON, return OK
SET_U2_ON : set Output #2 ON, return OK
SET_U1_OFF : set Output #1 OFF, return OK
SET_U2_OFF : set Output #2 OFF, return OK
SET_CURRENT_LIMIT_ON : set current limit ON for Output #1 and #2, return OK
SET_CURRENT_LIMIT_OFF : set current limit OFF for Output #1 and #2, return OK
SET_VOLTAGE_TRACKING_ON : set voltage tracking for Output #1 and #2 (software try to adjust the voltage output to fit the voltage read and set), return OK
SET_VOLTAGE_TRACKING_OFF : disable voltage tracking for Output #1 and #2, return OK
ZERO_1 : calibrate current read at 0 (compensate offset due to temperature change) for output #1, return OK after several second
ZERO_2 : calibrate current read at 0 (compensate offset due to temperature change) for output #2, return OK after several second

Application Android de contrôle de la PSU via le soft Windows ou Linux

L'application Android permet le pilotage à distance du soft de contrôle de la PSU et donc de la PSU avec un mobile ou une tablette sous Android

L'application a les mêmes possibilités que l'application Windows excepté le calibrage de la PSU.

Au premier lancement de l'application, l'écran de setting apparait, renseigner l'IP du PC où tourne le soft Windows ou Linux, ainsi que que le port qui est seté à 1236 par défaut.

Ecran principal sur mobile LGK10 de résolution 720x1280 Ecran de setting de l'adresse IP et du port
Ecran principal sur mobile Samsung SII de résolution 480x800 Ecran de setting de l'adresse IP et du port
Ecran principal sur tablette ACER de résolution 800x1280 Ecran de setting de l'adresse IP et du port

La mesure de courant variant avec la température, quand le courant mesuré est négatif, l'affichage du courant et le bouton Zero Current Output sont en rouge, indiquant qu'une calibration du Zéro est nécessaire :


Télécharger ici le fichier apk V1.6 et charger le sur le mobile ou sur la tablette      

Qualifications et mesures

Setup de mesure :





   OUTPUT V1   
   

Vérification entre 1V et 30V sans charge puis à 1A, 2A et 2.9A :

Ci dessous les relevés pour la différences entre la valeur de tension lue par la PSU en OUTPUT 1 en comparaison avec un multimètre externe :

   - La précision max est de 0.2% @ 0A , 0.3% @ 1A, 0.75% @ 2A, 1.3% @ 2.9A dans le range 1 à 30V

   - La précision max est de 0.2% @ 0A , 0.2% @ 1A, 0.2% @ 2A, 0.3% @ 2.9A dans le range 3 à 30V


Ci dessous les relevés pour la différences entre la valeur de tension programmée par la PSU en OUTPUT 1 en comparaison avec celle lue avec un multimètre externe :

   - La précision max est de 0.1% @ 0A , 0.4% @ 1A, 0.7% @ 2A, 1.4% @ 2.9A dans le range 1 à 30V

   - La précision max est de 0.1% @ 0A , 0.2% @ 1A, 0.3% @ 2A, 0.4% @ 2.9A dans le range 3 à 30V


Vérification courant de sortie mesuré :

Ci dessous les relevés pour la différences entre la valeur de courant lue par la PSU en OUTPUT 1 en comparaison avec un multimètre externe :

   - La précision max est de +/-3% de 300mA à 3A et +/-5% environ en dessous de 300mA


Télécharger ici les données de mesures      


   OUTPUT V2   
   

Vérification entre 1V et 30V sans charge puis à 1A, 2A et 2.9A :

Ci dessous les relevés pour la différences entre la valeur de tension lue par la PSU en OUTPUT 2 en comparaison avec un multimètre externe :

   - La précision max est de 0.35% @ 0A , 0.3% @ 1A, 0.6% @ 2A, 1% @ 2.9A dans le range 1 à 30V

   - La précision max est de 0.2% @ 0A , 0.2% @ 1A, 0.1% @ 2A, 0.2% @ 2.9A dans le range 3 à 30V


Ci dessous les relevés pour la différences entre la valeur de tension programmée par la PSU en OUTPUT 2 en comparaison avec celle lue avec un multimètre externe :

   - La précision max est de 0.2% @ 0A , 0.3% @ 1A, 0.8% @ 2A, 1.3% @ 2.9A dans le range 1 à 30V

   - La précision max est de 0.1% @ 0A , 0.05% @ 1A, 0.3% @ 2A, 0.4% @ 2.9A dans le range 3 à 30V


Vérification courant de sortie mesuré :

Ci dessous les relevés pour la différences entre la valeur de courant lue par la PSU en OUTPUT 2 en comparaison avec un multimètre externe :

   - La précision max est de +/-3% de 300mA à 3A et +/-3% environ en dessous de 300mA


Télécharger ici les données de mesures      




Copyright François Callanquin, Octobre 2017

Contact : fcallbox@free.fr