Blog
Système haute tension multivoies MMC (ECH 124, ECH 128 & ECH 12A) et convertisseurs HT types CPS, DPR, EPS
Téléchargement du logiciel isegCANHVControl version 1.64 avec Setup, manuel utilisateur et fichiers d’aides.
http://www.iseg-hv.de/download.php/835/file_url_en/isegCANHVControl_1.64.exe
Whatever the DPR you put into the system (for instance a 500 V together with a 3 kV unit), the CANbus send the information that all converters are 3 kV nominal values. The system considers the 500 V like a 3 kV ? How the CANbus may recognize the type of the converters since the communication between the DPR and the CAN Controller is made via analog voltages on the backplane inside ?
The DPR modules are full passive modules without any information about the nominal values. The information about the nominal values is stored in the EEPROM of the Multi-Channel CAN I/O unit of the MMC system and can be changed by a write instruction of the nominal values. Please, see description on page 17 (*). The program isegCANHVControl has a function to re-program the nominal values of the MMC system. In this case the user have to input the password « Nominals » and then he can re-program the nominal values per channel with a right mouse click on the panel of the corresponding channel, a pop up window will opening and by the selection of « Vnominal » or « Inominal » entry and new value can to typing in.
(*) cio_multi_channel_can_2006
How changing the ramp speed by writting your own program – looking for the Value (Integer)
Into our cio_multi_channel_can_2006 PDF document (on page 20) we talk about the interval of programming on one hand:
- VO max / 2500s ≤ Ramp speed ≤ VO max / 10s which means for a 3 kV unit (formula 1)
- 1,2 ≤ Ramp speed ≤ 300 (formula 1bis)
And on the other hand the ramp speed integer on the CANbus is calculated as follow:
- Ramp Speed = Value * resolution = Value * Vnominal/50000 (formula 2)
In the IsegCANHVControl software, we define the ramp as a percentage of Vnominal/s, example of calculation: Using the formula 2, we are looking for the Value Integer corresponding to the value 300 (formula 1bis) which represents 10 %!
Ramp speed = 300 = Value *resolution = Value*Vnominal/50000
After isolating Value —-> Value = Ramp speed *50000/Vnominal = 300*50000/3000 = 5000
Which finally leads to the 3 examples: 0,04% –> Value (Integer) = 20, 5,00% –> Value (Integer) = 2500, 10,00% –> Value (Integer) = 5000
Nous avons acquis deux châssis ECH 128 contrôlés par bus CAN ( par 1 câble USB CAN) sur lesquels sont répartis 14 convertisseurs haute tension (2kV). Nous souhaitons les piloter via une application en C++ que nous développons actuellement. Pour cela nous nous sommes inspirés des exemples de programmes C++ et VC6 (isegCANHVTest) fournis avec la documentation et avons ainsi utilisé la librairie de fonction isegCANDLL. Nous avons testé le dispositif avec le programme standard isegCANHVControl. L’ensemble fonctionne normalement: les châssis sont reconnus et le pilotage des 14 convertisseurs haute tension se fait correctement. Cependant lorsque nous testons notre application, nous rencontrons quelques problèmes. Nous parvenons à piloter les tensions des convertisseurs haute tension sur un châssis, mais dès que nous connectons les deux, seuls les 7 premiers convertisseurs HT sont accessibles. Nous avons le même problème avec le programme d’exemple VC6: isegCANHVTest. Le problème semble venir d’un mauvais adressage utilisé pour communiquer avec ce second châssis. Pouvez vous nous renseigner à ce sujet ? Voir nous fournir un exemple ?
The isegCANHVControl use the isegpcan.dll to control up to 64 HV modules or CAN I/O modules/crates on one bus. All iseg CAN modules send a « Log-on Front-end device at superior layer » frame to display their own identifier for a scan in of a controller on a higher layer (see page 21 of cio_multi_channel_can.pdf). The first action is to scan all « Log-on Front-end device at superior layer » frames and send the corresponding « LOG ON superior layer at Front-end device » frames to switch the modules/crates in connect state. The identifier of the « Log-on Front-end devices at superior layer » is used to communicate with the Front-end device (CAN I/O). Please keep attention of the handling of the DATA_DIR bit of the identifier. DATA_DIR = 0 for a write access DATA_DIR = 1 for a write-read access
You will find the actual isegpcan.dll under \WINDOWS\SYSTEM32\isegpcan.dll and the description under [PROGRAM_DIR]\iseg\isegCANHVControl\manuals\functions_of_isegxcan_dll.pdf.
Quel est le temps du cycle de readout, autrement dit le temps nécessaire pour lire 2 valeurs de monitoring ou de setting ?
Le processeur central contenu dans le contrôleur de la carte interface CIOFxxx doit gérer l’ensemble des modules haute tension contenu dans le rack MMC. Pour chaque module il doit vérifier la tension mesurée, le courant mesuré, la tension de consigne, le courant de consigne, les différents status liés au bon fonctionnement du module. D’autre part, le contrôleur doit convertir les tensions analogiques présentes sur le backplane du rack via des composants ADC et DAC car les modules ont une « communication » analogique et non numérique. Il faut donc compter sur un taux de rafraichissement de 100 ms environ.
