Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 

Repository files navigation

image

RD60xx-Panel

Interface Web autonome pour piloter et surveiller en temps réel les alimentations Riden RD60xx depuis un navigateur compatible Web Serial.

La version actuelle, v0.3.1-max, met l'accent sur l'acquisition la plus rapide possible : la tension, le courant et la puissance sont lus dans une boucle Modbus RTU « as fast as possible », sans intervalle de scrutation fixe. La résistance est calculée localement à partir de V / I.

Fichier unique : aucune installation, aucune dépendance JavaScript externe et aucun build requis. L'application tient dans RD60xx-Panel_v0_3_1_MAX.html.


Fonctionnalités

Temps réel MAX

  • Lecture rapide de la tension de sortie — registre 10
  • Lecture rapide du courant de sortie — registre 11
  • Lecture rapide de la puissance — registres 12 et 13
  • Calcul local de la résistance — R = V / I
  • Boucle de communication réponse reçue → requête suivante immédiatement
  • Aucun setInterval() dans la boucle rapide
  • Affichage de la fréquence réellement obtenue en Hz
  • Affichage de la période moyenne et du temps de la dernière trame
  • Communication série jusqu'à 115200 bps, 8N1

Le mode MAX ne force pas une fréquence arbitraire. Il envoie simplement la requête suivante dès que la réponse précédente a été entièrement reçue et validée. Le débit réel dépend donc du modèle RD60xx, du firmware, de l'interface USB-série, du système et du navigateur.

4 graphiques séparés

Le tableau de bord présente quatre courbes indépendantes :

  1. Tension en volts
  2. Courant en ampères
  3. Puissance en watts
  4. Résistance déduite en ohms

La fenêtre temporelle est sélectionnable directement dans l'interface :

  • 2,5 s
  • 5 s
  • 10 s — valeur par défaut
  • 30 s
  • 1 min
  • 2 min
  • 5 min

Le changement de fenêtre ne modifie pas la fréquence de communication avec l'alimentation.

Pour éviter que le rendu SVG ne ralentisse l'acquisition, environ 900 points maximum sont dessinés par courbe à l'écran. Les données série continuent néanmoins d'être acquises à la fréquence maximale.

Commandes de l'alimentation

  • Activation / désactivation de la sortie
  • Coupure immédiate de la sortie
  • Raccourci de coupure : Ctrl + Échap
  • Réglage de la tension
  • Réglage du courant
  • Réglage OVP
  • Réglage OCP
  • Rappel rapide des mémoires M0 à M9

Enregistrement

  • Démarrage / arrêt d'une acquisition
  • Enregistrement des valeurs V / I / P
  • Export des données au format CSV
  • Affichage des compteurs Ah et Wh provenant de l'alimentation
  • Jusqu'à environ 60 000 échantillons conservés pour l'enregistrement courant

Réglages et diagnostic

  • Réglage de plusieurs options de l'alimentation
  • Synchronisation de l'horloge du RD60xx avec l'ordinateur
  • Suspension / reprise de la scrutation
  • Lecture brute de registres Modbus
  • Écriture manuelle d'un registre
  • Dump des registres 0 à 119
  • Journal des événements
  • Journal TX/RX pour les opérations de diagnostic
  • Thèmes clair, sombre et système

Modèles pris en charge

Le fichier contient une définition pour les modèles suivants :

Modèle Tension max. Courant max. Puissance max.
RD6006 60 V 6 A 360 W
RD6006P 60 V 6 A 360 W
RD6012 60 V 12 A 720 W
RD6012P 60 V 12 A 720 W
RD6018 60 V 18 A 1080 W
RD6024 60 V 24 A 1440 W
RD6030 60 V 30 A 1800 W

La détection se fait d'abord par l'identifiant retourné par l'appareil, puis par famille lorsqu'un ID exact n'est pas connu. Un modèle peut aussi être forcé manuellement dans le menu de connexion.

Sur un appareil non répertorié ou un firmware inhabituel, vérifier les décimales et les registres dans Diagnostic Modbus avant d'écrire des consignes.


Prérequis

Navigateur

Utiliser un navigateur prenant en charge Web Serial, par exemple une version récente de :

  • Google Chrome
  • Microsoft Edge

L'application doit être ouverte dans un contexte où Web Serial est autorisé, par exemple depuis le fichier local ou via HTTPS selon la configuration du navigateur.

Alimentation

Configurer l'interface de communication du RD60xx afin qu'elle corresponde aux paramètres choisis dans l'application.

Pour la vitesse maximale prévue par cette version :

Baudrate : 115200
Data bits: 8
Parity   : none
Stop bits: 1
Flow ctrl: none

L'adresse Modbus utilisée par défaut est 1.


Démarrage rapide

  1. Télécharger RD60xx-Panel_v0_3_1_MAX.html.
  2. Ouvrir le fichier dans Chrome ou Edge.
  3. Connecter le RD60xx à l'ordinateur par son interface série/USB compatible.
  4. Cliquer sur l'icône ⚙ en haut à droite.
  5. Choisir l'adresse Modbus.
  6. Sélectionner 115200 pour le débit maximal.
  7. Laisser Détection automatique pour le modèle, sauf besoin particulier.
  8. Cliquer sur Choisir le port et connecter.
  9. Autoriser l'accès au port série dans la fenêtre du navigateur.

Une fois connecté, le tableau de bord démarre automatiquement la boucle MAX.


Architecture de l'acquisition MAX

L'acquisition est divisée en deux voies.

FAST lane

La voie rapide ne demande que quatre registres consécutifs :

10  V_OUT   Tension de sortie
11  I_OUT   Courant de sortie
12  P_H     Puissance, mot fort
13  P_L     Puissance, mot faible

Une transaction ressemble conceptuellement à ceci :

requête 10..13
    ↓
attente de la réponse complète
    ↓
validation Modbus + CRC
    ↓
conversion V / I / P
    ↓
calcul R = V / I
    ↓
requête 10..13 suivante immédiatement

Il n'y a volontairement aucun délai artificiel entre deux transactions réussies.

SLOW lane

Les informations qui ne sont pas nécessaires aux quatre courbes sont relues beaucoup moins souvent, environ une fois par seconde :

  • consignes V/I
  • tension d'entrée
  • températures
  • protection
  • mode CV/CC
  • état de sortie
  • preset actif
  • mode batterie
  • Ah / Wh
  • verrouillage du panneau

Cette séparation évite de sacrifier le débit des mesures V/I/P/R pour des valeurs qui n'ont pas besoin d'être mises à jour des dizaines de fois par seconde.

Mise à jour de l'interface

La communication série peut fonctionner plus vite que l'affichage. Les mises à jour du DOM sont regroupées et plafonnées à environ 60 rafraîchissements visuels par seconde.

Cela permet de garder le navigateur fluide tout en laissant la boucle Modbus travailler à sa vitesse maximale.


Historique des graphiques

Les échantillons temps réel sont conservés pendant un peu plus de 5 minutes afin de pouvoir changer de fenêtre sans redémarrer l'acquisition.

Limites internes actuelles :

  • historique temps réel : environ 305 s
  • plafond de sécurité : 70 000 points
  • rendu SVG : environ 900 points par courbe
  • enregistrement utilisateur : jusqu'à 60 000 points

Le sous-échantillonnage utilisé pour l'affichage ne modifie pas la fréquence d'acquisition série.


Calcul de la résistance

La résistance n'est pas lue dans un registre du RD60xx. Elle est calculée :

R = V / I

Lorsque le courant est trop proche de zéro, la résistance est affichée comme indéterminée afin d'éviter une division non significative ou une valeur artificiellement énorme.

Le seuil utilisé correspond à environ un demi-LSB de la mesure de courant du modèle détecté.


Principaux registres utilisés

Registre Fonction
0 Identifiant du modèle
1–2 Numéro de série
3 Firmware
8 Consigne de tension
9 Consigne de courant
10 Tension de sortie
11 Courant de sortie
12–13 Puissance
14 Tension d'entrée
15 Verrouillage clavier
16 Protection
17 Mode CV/CC
18 État de sortie
19 Preset actif
32–41 Batterie, Ah et Wh
48–53 Horloge
66–72 Options
80–119 Mémoires M0 à M9

Indicateurs de communication

Le bloc Communication affiche notamment :

Fréquence réelle

Nombre de trames rapides réellement complétées par seconde, calculé sur une fenêtre glissante d'environ une seconde.

Période moyenne

Temps moyen observé entre deux réponses rapides successives.

Dernière trame

Temps écoulé entre l'envoi de la dernière requête rapide et la réception de sa réponse complète.

Trames rapides

Compteur cumulé des transactions de la FAST lane.

Erreurs / timeouts

Nombre d'échecs de communication détectés durant la session.

Après plusieurs erreurs consécutives, l'application avertit l'utilisateur. Après huit échecs consécutifs, la liaison est arrêtée afin d'éviter une boucle d'erreurs permanente.


Panneau avant verrouillé

Le firmware du RD60xx peut verrouiller son panneau avant lorsqu'une communication est active.

L'application propose Suspendre la scrutation dans les réglages. La communication périodique s'arrête alors sans fermer immédiatement le port série, et le panneau peut être libéré par le firmware après quelques secondes.

La reprise de la scrutation réactive la boucle MAX.


Export CSV

L'écran Enregistrement permet d'exporter les mesures sous cette forme :

horodatage,tension_V,courant_A,puissance_W
2026-08-31T20:00:00.000Z,24.530,12.480,306.100

La résistance n'est actuellement pas incluse dans l'export CSV de cette version.


Dépannage

Web Serial indisponible

Vérifier que le fichier est ouvert dans Chrome ou Edge et que le navigateur autorise Web Serial dans le contexte utilisé.

Aucun appareil détecté

Vérifier :

  • le port série sélectionné ;
  • le débit configuré dans le RD60xx ;
  • le débit choisi dans l'application ;
  • l'adresse Modbus ;
  • qu'aucun autre logiciel ne monopolise le même port série.

Beaucoup de timeouts en mode MAX

Le mode MAX ne fixe pas une cadence : il sollicite l'appareil immédiatement après chaque réponse. Si le firmware ou l'interface série ne supporte pas bien cette charge, des erreurs peuvent apparaître.

Pour diagnostiquer le problème :

  1. suspendre la scrutation ;
  2. vérifier les paramètres série ;
  3. essayer un débit série inférieur ;
  4. consulter Diagnostic Modbus et le Journal.

Résistance affichée « indéterminée »

C'est normal lorsque le courant est nul ou trop faible pour permettre un calcul V / I significatif.

La courbe semble contenir moins de points que le taux en Hz

C'est volontaire. L'affichage SVG est allégé pour protéger les performances du navigateur. L'acquisition série reste indépendante du nombre de points réellement dessinés.


Sécurité

Cette interface peut modifier les consignes et activer la sortie d'une alimentation de forte puissance.

  • Vérifier la tension et la limite de courant avant d'activer la sortie.
  • Utiliser les protections OVP/OCP adaptées à la charge.
  • Ne pas considérer le bouton logiciel Couper immédiatement comme un dispositif de sécurité matériel.
  • Ne pas intervenir sur un montage sous tension.
  • Pour des tensions, courants ou puissances présentant un risque, utiliser un montage, des protections et une supervision appropriés.

Structure du projet

Même si l'application est distribuée sous la forme d'un seul fichier HTML, le code est organisé en sections logiques :

core/
  namespace
  store
  service

protocol/
  registres Riden
  modèles
  Modbus RTU

transport/
  Web Serial

adapters/
  SerialAdapter

services/
  journal
  bus log

ui/
  DOM helpers
  écrans
  router
  shell de l'application

Cette organisation facilite une éventuelle séparation future en plusieurs fichiers sans changer l'architecture générale.


Crédits et références

Le projet s'appuie sur la cartographie communautaire du protocole des alimentations Riden RD60xx et reprend une architecture d'application inspirée du projet KP184-BoOm.


Version

RD60xx-Panel v0.3.1-max

Points principaux de cette version :

  • boucle série as fast as possible ;
  • FAST lane registres 10–13 ;
  • résistance calculée localement ;
  • quatre graphiques séparés ;
  • fenêtres 2,5 s à 5 min ;
  • historique graphique jusqu'à environ 5 min ;
  • mesure du Hz réel et de la latence ;
  • rendu graphique découplé du débit série.

Licence

Aucune licence n'est déclarée dans le fichier HTML actuel. Avant de publier le dépôt comme projet réutilisable ou redistribuable, ajouter explicitement un fichier LICENSE correspondant aux conditions souhaitées.

About

Riden RD60xx

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages