RD6006: ajouter une connexion réseau filaire

RD6006: ajouter une connexion réseau filaire

Pour une de nos expériences, on avait besoin d'une alimentation de laboratoire, facilement déplaçable et pilotable à distance à travers une connexion réseau filaire. Chez Yoctopuce, en termes de matériel, on a plutôt l'habitude de miser sur les fabricants les plus connus, mais cette fois on a décidé de donner sa chance au RD6006...



L'alimentation RD6006

Le RD6006, fabriqué par la société chinoise Ruideng, est une alimentation qui accepte de 6 à 70V DC en entrée et est capable de fournir jusqu'à 60V DC, 6A en sortie. Notez que c'est un buck, la tension de sortie ne peut pas être supérieure à la tension d'entrée moins ~1V.

Elle se présente sous la forme d'une minuscule façade d'appareil de laboratoire encastrable. Comme toute alim de laboratoire qui se respecte, la tension et le courant de sortie peuvent être réglés précisément. Elle calcule la puissance délivrée et est capable de l'intégrer. Elle dispose d'un écran couleur de 320x240 pixels qui affiche une pléthore d'infos intéressantes. Elle même capable d'afficher quelques graphes basiques. Pour tout vous dire, cette alim jouit d'une excellente réputation sur la scène DIY.

L'alimentation RD6006
L'alimentation RD6006


Ruideng vend cette alim essentiellement sur Alibaba/Aliexpress pour moins de 50$. Nous, on a préféré acheter la nôtre deux fois plus cher auprès d'un revendeur européen. Elle est rebrandée Joy-it JT-RD6006, mais c'est exactement la même.

Les options

On peut aussi acheter le boîtier qui va avec. Il existe en deux tailles: un grand prévu pour contenir le convertisseur AC/DC 400W recommandé par le constructeur et un petit, visible sur la photo précédente, qui n'est censé contenir qu'un interrupteur et quelques fils.

Il existe aussi un petit module Wifi qui peut être installé à l'intérieur de l'appareil et qui communique avec lui par l'intermédiaire d'un port série TTL. Dans la mesure où on voulait une connexion filaire, on n'était pas du tout intéressé par le module Wifi propriétaire, mais on a fait le pari qu'on arriverait à faire entrer dans le petit boîtier un petit convertisseur AC/DC, un YoctoHub-Ethernet et un Yocto-Serial et qu'on arriverait à piloter l'alim avec le Yocto-Serial par l'intermédiaire du port TTL.

L'arrière du boîtier, le connecteur de l'interface série TTL est en bas à droite
L'arrière du boîtier, le connecteur de l'interface série TTL est en bas à droite


Construction

On a choisi un convertisseur TRACO-POWER TML 100-148C qui accepte de 90 à 264V AC en entrée et qui fourni 48V DC à 2A en sortie. Cela signifie que notre alimentation ne pourra pas fournir plus de 47V et qu'elle sera limité à ~100W, mais c'est largement suffisant pour nos besoins.

Le convertisseur AC/DC TML 100-148C, 100W dans un petit format
Le convertisseur AC/DC TML 100-148C, 100W dans un petit format


On ajouté un connecteur secteur C14 à l'arrière du boîtier. On a protégé les connexions dangereuses avec de l'isolant liquide. Par sécurité, la terre de protection sera aussi connectée à la carlingue du boîtier.

Quelques aménagements dans le boîtier
Quelques aménagements dans le boîtier


On a monté le convertisseur, le YoctoHub-Ethernet et un Yocto-Serial ensemble à l'aide de plaques de verre acrylique et d'entretoises filetées. On a obtenu un bloc qui entre au chausse pied dans le petit boîtier. Le Yocto-Serial est connecté au port série interne du RD6006, et YoctoHub-Ethernet est alimenté par le 5V disponible sur ce même port série.


Le YoctoHub-Ethernet et le Yocto-Serial, montés ensembles  Un joli bloc bien compact
Ça va rentrer au chausse-pied  C'est presque fini
Intégration de tous les composants


Notez qu'on a dessoudé le Module PoE du YoctoHub-Ethernet parce qu'on a remarqué que le RD6006 n'aimait pas trop voir son 5V en commun avec celui du YoctoHub lorsque que ce dernier est alimenté par PoE. Ce qui n'est pas vraiment surprenant en soi, il doit manquer une diode quelque part.

On ne compte pas utiliser notre alimentation à la puissance maximum trop souvent, mais c'est quand même bien tassé à l'intérieur, si on se rend compte que ça chauffe un peu trop il faudra probablement rajouter un petit ventilateur à l'arrière du boîtier.

Le résultat est une petite alimentation toute mignonne, de 17x11x10cm, pesant 1.4Kg, qui fonctionne sur secteur, pilotable par Ethernet et qu'on peut facilement trimbaler partout. Exactement ce qu'on voulait :-)


Côté face  Côté pile
Tadaaa!!


Pilotage

Le pilotage de l'alim se fait à l'aide de commandes ModBus sur le port Série TTL. Ça a l'air un peu effrayant dit comme ça, mais comme le Yocto-Serial est capable de gérer les protocoles Modbus nativement, il suffit d’appeler les fonctions qui permettent de lire et d'écrire dans quelques registres Modbus. Le RD6006 étant très populaire, on peut facilement trouver la liste des registres sur GitHub. Par exemple, le code Yoctopuce pour configurer la tension ressemble à :

_serialport.modbusWriteRegister(ModbusSlaveId,8,int(VoltValue*100))


le code pour la relire serait:

res =  _serialport.modbusReadRegisters(ModbusSlaveId,8,1)
print(str(res[0]/100)+" Volts")


On peut aussi pré-programmer un job dans le Yocto-Serial qui interroge en permanence le RD6006 et publie le résultat sous forme de capteurs Yoctopuce, ce qui permet de facilement surveiller l'alim avec par exemple Yocto-Visualisation ou de tirer profit de l'enregistreur de données du Yocto-Serial.

Faire fonctionner Yocto-Visualization avec l'alim? facile!
Faire fonctionner Yocto-Visualization avec l'alim? facile!


On a commencé l'écriture d'une petite librairie Python pour piloter l'alim. C'est du code assez trivial dans la mesure où tout le travail un peu compliqué est fait automatiquement par le Yocto-Serial. Vous pouvez la télécharger ici.

Problèmes et solutions

Dans ce projet, il y a quelques points importants dont il faut être conscient:

  • Il faut explicitement configurer le port de communication interne du RD6006 en mode "TTL" pour qu'il fonctionne. Sa tension de fonctionnement est 3.3V, ne configurez pas le Yocto-Serial en 5V!
  • Le port série TTL du RD6006 ne fonctionne qu'à partir du firmware 1.32 du RD6006, vous aurez donc peut-être besoin de mettre à jour son firmware.
  • Assurez-vous que le firmware du Yocto-Serial est au moins 41418. On y a ajouté une amélioration qui gère les conflits lorsque l'API et un job interne essaient de faire des requêtes en même temps.
  • Lorsqu'il y a une communication active sur le Port TTL, les boutons de la façade du RD6006 sont bloqués. C'est une limitation du firmware officiel. Mais un certain UniSoft a publié sur le forum EEVblog Electronics Community un firmware alternatif qui permet, entre autres améliorations, de contourner cette limitation.

Conclusion

On est archi-content: on a enfin une alimentation raisonnablement puissante que l'on peut facilement piloter avec les librairies Yoctopuce. C'est quelque chose qui nous manquait au point qu'on avait sérieusement envisagé de concevoir notre propre module Yocto-PowerSupply. Alors évidement, avec l'ajout du convertisseur AC/DC et des modules Yoctopuce, on a transformé une alim coûtant moins de 100$ en un appareil à près de 500$, mais il n'est pas dit qu'on aurait trouvé quelque chose d'aussi compact et performant pour moins cher sur le marché.

Commenter aucun commentaire Retour au blog












Yoctopuce, get your stuff connected.