version 0.0 ..... 07 Octobre 2018
rev 12/12/2021
rev 11/06/2023
Controle Consommation EDF et
Pilotage du Chauffage
Installation
de chauffage
Test fil
pilote sur radiateur ATLANTIC
..........Note sur Aleas de fonctionnement
Schema
et Typon de la partie commande des 4 fils pilotes
Info
EDF via Appli BlueElectronics
Info
EDF via Appli RapidQ (rev 10/06/2023)
Schéma
provisoire partie PIC18F
Application
PIC18FL46K22 gestion datas EDF et commande des Fils Pilotes
Schéma
final
Circuits Imprimés
Montage
et Mise en Tests
Tests
avec appli RapidQ Basic (simulation)
Analyse
Capture trame via MikroC avec SQA Logic Analyser
Reconnection
au compteur EDF
Passage
sur nouveau Compteur Linky (09/07/2019)
et mise à jour des Applis PIC18F
et RapidQ
Evolution Appli RapidQ BT EDF Info (rev 10/06/2023)
annexes:
Excel
pour ENVOI du programme de chauffage sur l'appli. PIC18F
RapidQ
et QGridEx pour generer ce meme tableau
Integration
Appli RapidQ
Récup.
des datas via Excel (2019)
ou
via API Google et fichier HTML (2021)
Installation
de chauffage :
Les moyens de chauffage :
Cumulus de 300L | 3000 | Relais | Relais Legrand 10A | thermostat cumulus 65°C |
CH#1 Radiateur | 1500 | fil pilote | Commutateur +thermostat | |
CH#2 Radiateur | 1000 | fil pilote | Commutateur +thermostat | |
CH#3 Radiateur | 1000 | fil pilote | Commutateur +thermostat | |
SDB Radiateur | 600 | fil pilote | Commutateur +thermostat | |
SDB Seche serv. | 1500 | Commutateur +thermostat+minuterie | ||
buanderie Radiateur | 1000 | fil pilote | Commutateur +thermostat | |
Chauffage au SOL | 864 | relais + Pilote | relais Legrand 25A | via thermostat Deleage |
pour mémoire:
circuit interface trouvé sur le web :
Test avec
radiateur ATLANTIC
Radiateur ATLANTIC F117-T 514 115 IP24 1500W 230V
AC IP24
CTN= 14K @ 18+C
Resistance chauffante = 36 ohms à froid
Cable alim. : Rouge=Phase Bleu=Neutre Noir= Fil pilote
Nota:
Fonctionnement erratic du thermostat, si le fil pilote
est connecté coté radiateur et en l'air ,
à l'autre bout du cable ;coté Coffret distribution electrique...
Ce fil pouvant capter toute perturbation ECM ,
ou le fil de phase dans ce meme cable ? voir
aussi ICI
montage de test:
deconnection radiateur du mur , tiré un fil direct depuis l'entrée
pilote du radiateur, (raccordé via un sucre sur une sortie cable)
vers l'interface opto-triacs :
1 opto triac avec diode 1N4007 sens -
1 opto avec diode 1N4007 sens +
les 2 sorties de diodes sont reliées ensemble pour aller sur le
fil pilote radiateur
Par commodité ,
Je recupere la phase sur une prise de courant qui , via un
disjoncteur 2A, va sur la R=750 ohms
qui sert de mini protection/fusible pour aller sur les 2 entrees
Triacs
La partie amont : R =120 ohms pour activer l'entree opto qui est
alimenté via un module USB 5V.
avec les seuls composants que j'ai en ce moment
disjoncteur de 2A
R de 750 ohms 1/8 de W en serie avec la Phase.
2 Diodes 1N4007
1 MOC3041 ,avec R serie led=220 ohms
1MOC 3040 R serie led=220 ohms Niveau de cde 5V
8 x R 120 ohms 1/4 W
Le MOC3040 ne semble pas convenir,
car moins sensible:
MOC3040 => 30mA Coupled
MOC3041=> 15 mA coupled
je teste donc avec un MOC3081 que j'ai sous la
main pour remplacer le MOC3040.... OK
800V et I =15mA , le MOC3082 serait plus sensible (10mA) et MOC3083
pour 5mA
Niveau de cde 4.8V => 8x R 330
Le radiateur ATLANTIC répond bien aux ordres
Commutateur positionné sur le sigle Horloge , Thermostat sur 5
Le test Hors Gel sera à verifier plus TARD!! (il fait 20°C
dehors.)
Sans MCU ,je ne peux pas encore tester les 2 modes CONFORT-1 ou
CONFORT-2, car Necessite un Timing special.
Mesures avec un multimetre FI515X:
sur la sortie vers fil pilote
Opto 1 activé : je mesure en AC : 123V et en position DC : -98V................HORS
GEL
Opto 2 activé : je mesure en AC 123V et en DC +100V...............................ARRET
Opto 1 et Opto 2 Actives => 230V AC.......................................................ECO
Opto 1 etOpto 2 Désactivé =>0.62V AC
..................................................CONFORT
En mode piloté; il faut donc regler le thermostat via la
position Confort de sorte à avoir 20°C ..
schéma
et étude du Typon de la partie commande des 4 fils pilotes :
Typon_Commande_Chauffage_8_moc_181018.pdf
cde de 10 MOC3082 (Moc <1) et 25 diodes 1N4007..chez
farnell
schema (provisoire)
Petit souci de porté BlueTooth
Car je veux inclure aussi ,
l'appli EDF Info dans ce montage
En alimentant le montage en 3,3V , au lieu de 3,7V , la portée
blueTooth est diminuée 12 à 15M maxi au lieu de 20M
A moins que la temperature Ambiante interfere aussi avec la
portée : 20M avec T°A > 30°C alors que maintenant j'ai
plutot <15°C
(dans le garage)
Je vais peut etre m'orienter par la suite sur le WIFI ou Ethernet
via CPL ... ou module LORA !
Partie Info EDF via Appli BlueElectronics :
Solution simple et unilaterale: datas envoyée
par PIC161847 via module BlueTootrh RN41, pas de retour (cdes)
Partie Info EDF
voir details ici : application PC basic RapidQ
meme hardware
2 autres solutions , avec dialogue bi-lateral possible :
traitement avec WIN XP sur EEPC : module bluetooth Maitre RN41 +
converter USB/LTTL CH340G
traitement avec cle Blueototh APM sur PC ASUS WIN10 + BlueSoleil
=> port COM Virtuel
interlaisons entre appli RapidQ et PC , via blueTooth et usage de
bluesoleil
Récuperation
et Affichage Graphique des données :
Données récupérées chaque jour , à minuit , formant 2
fichiers journaliers , stockés dans un dossier DATAS\ du EEPC:
1 fichier sur 24 couples de mesures : delta KWH et Temperature
Amb.Garage ( moyenne )
1 fichier sur 1440 couples de mesures ( Amperes et Temperature
Amb Garage)
exemple de fichier sur 24H00, recupére delta
KWH et Temperature Moyenne, chaque heure
EdfInfo_KWH_TemP_1221.txt
Affichage des données récupérées soit sur Excel ( lecture
fichier en mode CSV, separateur=";" => Grafique .)
il suffit de copier /coller les donneés à partir de A1
Nota : creation du fichier ..juste avant Minuit , concerne donc
le 21/12/2018
Fichier Journalier , enregistrant chaque minute,
les amperes et la température
nota : les 1440 mesures Ampere et Temperature sont les mesures
moyennées pendant la minute en cours. ( ~42mesures/mn)
exemple : EdfInfo_Amps_Temp_0925.txt
Le Fichier Excel : EdfInfo_Data_2020_10.xls
onglet : EdfInfo_Amps_Temp_2020
Graphe Excel direct avec fchier Raw datas:
et si on a pas EXCEL ou tableur equivalent
via API Google et
fichier HTML
exemple 1 avec : Edf_24H_Chart.html
![]() |
![]() exemple sur 24H |
Datas Encadrées et incorporées dans le fichier de base HTML | resultat avec API Google |
Exemple:
copier le fichier texte datas recupéré via EDFinfo RapidQ sur
Datas\
ex: EdfInfo_Jour_Amps_Temp_20230611.txt
l'importer au format *.CSV dans une feuille excel ; avec
separateur= ;
ouvrir une copie existante de fichier excel traitement datas
EDFinfo
et renomer le fichier en
EDF_Temp_2023_0611.xls
selectionner toutes les datas du fichier *.CSV et les coller en
en B3:C1443 ..puis lancer la Mise en forme (via le "Bouton
Mise en Forme")
via l'usage d'une tres simple Macro VBA, activée par le Bouton
qui utilise la case F4 comme réference de Formattage
ATTENTION, la syntaxe doit
etre RIGOUREUSEMENT respectée
la cellule F4 contient une formule qui etablit et APPLIQUE le bon
formattage depuis la cellue B4.
La formule de formatage des donnees brutes
=SI(A4>0;A4&"',"&CTXT(B4;2)
&","&CTXT(C4;2) &"],";"")
Nota: La colone A4 contient déja le debut de format de l'index (Axe
X du graphique)
( de ...1 à 1440) ... on pourrait mettre aussi l'Heure:Minute
à la place 00:00
En fin de macro, la zone F2..F1443 est selectionnée
..
En zone Vert : les datas (Raw) issues du fichier csv EdfInfo_Amps_Temp_0925.txt
En Jaune : le résultat du formattage des données .. à copier
dans le fichier HTML
cette zone nommée de données est plus accessible via atteindre Mes_datas
...le graphe excel est mis à jour
Créer un fichier html vierge ( avec Notepad++)
Inserer :
L' ENTETE (Tail )
et le SUFFIXE (Queue)
Mettre la bonne date .!..
et entre les deux, on inserer le résultat du formattage
si la selection de la zone colonne F3:F1443 a disparu...
les données contenues dans la colonne F3:F1443 sont acccessible
via
Edition
Atteindre ... "Mes_Datas"
les copier ,coller dans le fichier html , entre la partie debut :
TAIL et la fin :QUEUE
Ne pas oublier ([
au debut des datas , et ]); à
la fin des datas
sauver le fichier html
La Macro :
Sub Mise_en_forme()
Range("B4:C1443").Select
Selection.NumberFormat = "0.00"
Range("F4").Select
Selection.Copy
Range("F5:F1443").Select
ActiveSheet.Paste
Range("F4:F1443").Select
' pour coier dans html file
' Range("F1445").Select
End Sub
le resultat :
En lancant le fichier Html resultant ( EDF_infos_2020_Grafique.html)
avec Goggle chrome ou autre ..
exmpel 2 : 11/06/2023
Nota:
Le PIC pourait tres bien génerer completement le fichier au
format HTML ,directement utilisable !
au lieu de stocker en CSV .. mais l'ideal serait de communiquer
en WIFI au lieu de BlueTooth .
ou via le module LANTRONIX pouvant herberger une page HTML (
gerée par le PIC) , en liaison EThernet
vers la Freexbox pour acces via INTERNET.
Actuellement .. à voir plutot avec un ESP8266 ou ESP32
La
Programmation HORAIRE du chauffage
A chaque heure , le programmateur defini quel element sera mis en
chauffe et sous quel mode, 1 parmi 4, choix donné par le fil
pilote.
Excel est une solution semi grafique permettant aisément de
faire cette programmation, visuelle, en utilisant la 1ere lettre
de la fonction fil Pilote.
Lien
Details sur Excel et VBA
Hors cumulus qui , sans fil pilote , utilise Marche et Stop
Le programme VBA associé generant le fichier txt ( format CSV)
qui sera envoyé au PIC pour representer la programmation
Journaliere des 4 chauffages avec fil Pilote + le chauffage
CUMMULS via relais.
Apres etre mal parti sur la façon
de gerer le tableau de programmation hebdomadaire non tributaire
du jour de la semaine.
J'étais parti sur la gestion du tableau en 5
lignes de 24 bits ( 2 bits pour chaque heure et donc 2x5 =10 mots
de 32 bits
Mais s'est avéré trop complexe à gerer coté appli MikroC .
J'ai donc changé de principe et dapter une gestion colonne par
colonne , 1 pour chaque heure et 2 bits par element chauffant (rangée)
Colonne Codée sur un mot de 16 bits : 8 bits pour la commande de
chauffage des fils pilotes qui est directeement appliquée
et 1 bit pour le relais cumulus .
On a donc :
radiateur CH1 = 0, 1, 2,ou 3
Radiateur CH3 = (0,1,2,3)*2
Radiateur SDB = (0,1,2,3)*4
Chauffage sol Salon = (0,1,2,3)*8
Cumuls Relais : (0,1)*256
la colonne pouvant prendre la valeur 0 à 511 maximum
L'utilisateur rempli le tableau avec des lettres (Mnémonique E
pour ECO, H pour HORS gel ..etc ..) et evite de manipuler
des combinaisons de 2 bits
Une fois le tableau excel rempli, une macro ( en VBA) se charge d'etablir
la relation 2 bits de commandes en fonction du radiateur
commandé.
calcule et affiche en dessous de chaque colonne , le poids des
bits à activer ,pour chaque tranche d'heure.
L'ensemble est recopié ausi sur la droite du tableau pour voir
ces valeurs en Hexadecimal et en Binaire
Les valeurs sont toutes formatée sosu 3 digits Ascii (ex: 3 ->
003)
De meme la ligne de commande ou fichier representant la
programmation de chauffe est recopiée
sous le tableau
Via bluetooth et un PC ,ou via une application android terminal,
il est facile d'envoyer ce fichier qui ne comporte qu'une ligne
de 24 valeurs .
Ces valeurs, séparées par un ";" , constitue un
fichier au format CSV, renomé * text ,
qui permettra ensuite , de les envoyer à l'application PIC , via
directement l'UART ou via BlueTooth Terminal.
L'Application PIC decodera les couples de 3 caracetres ascii
representant la valeur decimale de consigne de chauffage
pour chaque élement de chauffage, ces valeurs isolées, seront
dans la foulée, stockées dans l'EEPROM du PIC .
EEPROM PIC relue à chaque demarrage du PIC. ou sur demande.
Planning Horaire at 0 Cde = 511 Cumulus = 1 Radiateurs = 11111111 at 1 Cde = 170 Cumulus = 0 Radiateurs = 10101010 at 2 Cde = 234 Cumulus = 0 Radiateurs = 11101010 at 3 Cde = 491 Cumulus = 1 Radiateurs = 11101011 at 4 Cde = 491 Cumulus = 1 Radiateurs = 11101011 at 5 Cde = 507 Cumulus = 1 Radiateurs = 11111011 at 6 Cde = 319 Cumulus = 1 Radiateurs = 00111111 at 7 Cde = 3 Cumulus = 0 Radiateurs = 00000011 at 8 Cde = 3 Cumulus = 0 Radiateurs = 00000011 at 9 Cde = 87 Cumulus = 0 Radiateurs = 01010111 at 10 Cde = 501 Cumulus = 1 Radiateurs = 11110101 at 11 Cde = 507 Cumulus = 1 Radiateurs = 11111011 at 12 Cde = 234 Cumulus = 0 Radiateurs = 11101010 at 13 Cde = 234 Cumulus = 0 Radiateurs = 11101010 at 14 Cde = 234 Cumulus = 0 Radiateurs = 11101010 at 15 Cde = 234 Cumulus = 0 Radiateurs = 11101010 at 16 Cde = 234 Cumulus = 0 Radiateurs = 11101010 at 17 Cde = 298 Cumulus = 1 Radiateurs = 00101010 at 18 Cde = 319 Cumulus = 1 Radiateurs = 00111111 at 19 Cde = 60 Cumulus = 0 Radiateurs = 00111100 at 20 Cde = 63 Cumulus = 0 Radiateurs = 00111111 at 21 Cde = 32 Cumulus = 0 Radiateurs = 00100000 at 22 Cde = 235 Cumulus = 0 Radiateurs = 11101011 at 23 Cde = 490 Cumulus = 1 Radiateurs = 11101010 |
exmple de message au franchissement d'heure , modification de la
consigne des fils pilotes Radiateurs :
*C050222059498*;*W00052239841*;*K 1154.841*;*R00021*;*A00002*,*G00002,00021*;
01-01-19 18:00:01 Radiateur = 053 000110101
*C050222059498*;*W00052239841*;*K 1154.841*;*R00021*;*A00003*,*G00003,00021*;
Application
PIC
rev 03/01/2019
Rajout Mesure temp.exterieur via un capteur DS18B20 OWS et LM35DZ
pour Tamb Interieure ( ne descent pas en dessous de 0°C!)
à suivre: stockage local ..EEPROM 32K
Projet zipé : 18LF46K22_EDF_Info_et_Controle_Chauffage_190104.zip
Source MC : 18LF46K22_EDF_Info_et_Controle_Chauffage_RN41_190104.c
Au lancement du programme, affichage presentation et divers infos
Modif. Appli RapidQ pour prise
en compte Programmation Horaire
Rajout de la commande des fils pilotes en fonction de la table de
programmation Horaire
émise depuis l'Appli.Excel
A chaque heure correspond un Mot de 16 bits :
LSB du mot de 16 bits => 8 bits décomposés en 4
couples de 2 bits pour les 4 états des 4 fils Pilotes
et le 1er bit MSB ce mot, => 0, ou 256 pour
commander le relais cumulus
Le LSB de ce Mot est envoyé sur le PCF8754 qui donne 8 sorties
logiques (8 etats)
Coté PIC, si on reçoit l'entete STX CHAUFF .. on recupere
toutes les data séparées par ";" jusqu'au caractere
EOT
et on range ces valeurs en EEPROM PIC
A chaque demarrage PIC, on recupere cette table de chauffage.
En fonction de l'Heure en cours , lue sur la RTC 3231, on choisit
la consigne à appliquer.
Modification
Excel pour rajout ENVOI des datas sur le
PIC , via liaison COM BlueTooth ou direct RS232
.... reprise d'un test fait en 2013 avec la DLL RSPAI.dll
Utilisation de RSCOM.DLL
(déja utilisée avec RapidQ BASIC )
La config COM est définie dans un TextEditBox , en dur, mais
modifiable
L'envoi vers le PIC , n'est validé que si on a rafraichit le
fichier ( ligne) de programmation (ce qui rend Enabled le BP)
Ensuite, l'appui sur le Bouton Envoi vers PIC, recupere la ligne
de texte resultante en B21 et l'envoi sur la COM, byte par Byte
ce qui permet d'envoyer les caracteres non ascii STX et ETX
La partie ENVOI vers PIC a été rajoutée dans le module1.bas
principal
..est lancée sur l'evenement Appui sur BP Envoi
trame contenant les 24 Mots de commande.
CHAUFF;511;170;234;491;491;507;319;003;003;087;501;507;234;234;234;234;234;298;319;060;063;032;235;490;
Sub SendData(ComPort) Dim EnvoiString As String, ErrorString As String Dim succ As Integer, I, J, dummy As Integer Dim b$ Dim cx As Byte Dim k, l, n As Integer Set s1 = Feuil11 s1.Activate 'activate data sheet Range("B21").Select EnvoiString = ActiveCell.value 'Debug.Print " "; EnvoiString succ = 0 succ = OPENCOM(ComPort) 'open serial communication port (DTR=1, RTS=0) If (succ = 0) Then dummy = MsgBox("RS232 connection failed: " & ComPort, vbCritical, "RSCOM.dll") Else 'TIMEOUTS 1500 'TIMEINIT n = OUTBUFFER 'reset time k = 1 l = Len(EnvoiString) Do cx = Asc(Mid$(EnvoiString, k, 1)) Debug.Print cx SENDBYTE cx DoEvents k = k + 1 Loop Until k > l '************** End Outer Loop ************* CLOSECOM dummy = MsgBox("Fin d'envoi" + Chr$(13) + Str$(l) + " bytes", vbOK, "") End If ' succes=0 ' s1.Button2_Envoi_UART.Enabled = False End Sub |
(Excel 97 et WIN10)
fichier Excel : EDF_Progr_Controle_Pilotes_via_UART_190104.xls
fichier source VBA : EDF_Cde_Fils_Pilots_via_UART_190104.bas
il n'y a aucun controle de la qualité de
la liaison, ou verif de checksum .
La liaison COM est traitée ici de façon unidirectinnelle ->
PC -> PIC
Je sais ..on pourrait mieux faire, mais pour moi, c'est
suffisant
Tableau Programmation horaire fil pilotes
en RapidQ
avec QGridEx sous RapidQ Basic
Le meme principe qu'avec Excel
Colonne de 1 à 24 pour les 24 Heures => corrigé
en 0 à 23
Lettre Mnemonique pour codage fil pilote :
Commande | bit1 | bit 0 | poids | |
cumulus | M | 1 |
256 | |
S | 0 |
0 |
||
Econom. | E | 1 | 1 | 64 |
Hors-Gel . | H | 1 | 0 | 16 |
Arret | A | 0 | 1 | 4 |
Confort | C | 0 | 0 | 1 |
regroupant l'etat de 2 bits ( gestion de 4 ordres seulement)
+ cas particulier Cumulus M=Marche S=Stop
Le numero de rangée determine le poids des 2 bits utilisés
Le codage des 4 radiateurs est donc compris entre 0x00 et 0xFF
Le cumulus 0x0xx ou 0x1xx
On peut modifier les cases , puis ensuite ,
appui sur Calcul => rafraichit tous les ca lculs de toutt le
tableau
resultat stocké dans la rangee "Codage"
.. Rangée qui sera envoyée ensuite au PIC
La configuration peut etre sauvée dans un fichie r*.tab ou alors,
rappelée.
fichier original modifié : My_QGridEx_190105.inc
pour adapter le nombre de lignes et colonnes , et libellés
rangees
fichier de config : datas\ChauffProgrData.tab
executable : Test_Tableau_Consigne_fils_Pilotes_190106.exe
source RapidQ: Test_Tableau_Consigne_fils_Pilotes_190106.rqw
à suivre : integration de ce module dans l'appli de base
voir si on peut "colorer " les cases en fonction du
code Fil Pilote .
Integration
Appli RapidQ
Rappel :
Au lancement de l'Application RapidQ Basic, verification
si fichier $$$$$$$.$$ est present ?
si oui, on stope .. pour éviter plusieurs instances de ce
programme => effacer ce fichier
au lancement , on lit le fichier EDF_BT.INI qui contient :
*La position de la fenetre windows : Top,Left
*Les parametres de la COM vitesse,parite,stiop,Numero de PORT-1
*La valeur du compteur EDF lors de la derniere facture
*Le cout du KWH en euro
Un Messagebox affiche les données ainsi recupérées
Si la COM recoit bien la Trame du PIC , évolution Grafique
Deroulant Active montrant l' Amperage..
Les noms de fichiers de sauvegarde des données sont ecrits en
dur dans le programme, mais ont comme suffixe
soit le numero du jour de l'année, soit la date reduite , au
format : MMJJ
Ce sont des fichiers *.txt , en ascii, valeurs delimitées par
";" (compatibles CSV excel) et stockes dans le
directory \Datas
L'application ne tolere que des numeros de PORT COM < 10
Sur cette COM, l'appli recoit la trame emise par le PIC18LF46K22
, via blueTooth ou cordon Prolific RS232 TTL/USB
pour recuperer les infos EDF ( Amperes, Wattheures), temp
exterieur via capteur DS18B20
pour recalculer la conso Horaire en KW/H et le cout en Euros .
Des fichiers de stockages datas sont génerés /
1 pour les valeurs journalieres : Amperes et Temp.Ext par jour (2x1440
datas)
1 pour la conso journaliere KWH et Temp ext moyenne pour chaque
Heure ( 2x 24 valeurs)
1 pour la conso Annuelle KWH et temp ext moyenne par jour (366
couple de valeurs)
1 fichier Ascii , est utilisé aussi pour generer les consignes
horaires pour les fils pilote ( 24H -> 24 mots ->consignes
x 4 fils pilotes + cumulus)
quelques explications:
*Partager les ressouces avec plusieurs form
?
Pour l'instant, je retourne à ma Form principale pour finaliser
ma saisie de données avec la form contenant le Grid Data
afin de pouvoir envoyer ces datas , via le Port COM3 -> vers
le PIC UART1 RX( qui les stockera ensuite en eeprom )
et faire une sauvegarde sur un fichier de ces valeurs de
consignes sur le PC.
Je me sers de 3 terminaux pour faire mes tests, en
simulation
COM13 VBRAY Terminal + Script ->Simule, envoie
une trame EDF typique sur le PIC UART2 1200bs
COM3 pour liaison PIC UART1 19200 -> PC Applicatio RapidQ pour
recuperer les infos Trame envoyée par le PIC :
EDF + Autres
gerer les fichiers de stockage datas, et aussi pour pouvoir
envoyer les consignes fils pilotes dans le PIC.
et COM2 que je peux mettre en espion, soit sur l'envoit
TX UART1 PIC , soit sur l'envoi PC vers RX UART1
Sur la forme principale "EDF_BT" il y a une case
à cocher qui me permet de sortir de cette Form
Principale , pour ouvrir la form "Prog Radiateurs Fils
Pilote"
contenant le QGrid data , (qui permet la creation, modif ,sauvegarde
ou Chargement de fichier , au format *.tab)
je charge le fichier de config ( car déja
prélablement élaboré ), D:\RapidQ\_BT_Edfinfo\Datas\ChauffProgrData.tab
configuration Symbolique ( avec lettres E,H,C,A) (comme avec mon
tableau excel!)
et appui sur touche Calculs ..
=> explore lignes et colonne pour en déduire le poids binaire
de la consigne ( 16 bits )
Le PIC ré-aiguille les 8 bits pour 4 fils pilotes et 1 bit pour
le relais culmulus.
Exit de cette form =>retour à la Form
principale "EDF_BT"
Stockage des consignes dans un fichier
et Envoi des consignes dans le PIC
puis, poursuite normale du programme ..
Rajout Icone BMP ETAT des commandes de
chauffe
usage de Qimage pour afficher les icones au format BMP
en fonction de la sequence de commande des fils pilotes, envoyé
dans chaque trame du PIC
cette sequence peut evoluer à chaqu Heure en fonction du tableau
de programmation
source RapidQ Basic de ce test : TestQimage.rqw
rev 20-01-2019
C'est bien le PIC qui renvoi l'info codage commande de chauffe ,
en fonction du tableau de commande envoyé par l'appli RapidQ et
de l'heure interne PIC,
fournie par la RTC DS3231 .
Cette commande (5 lettres) est affichée sous les icones
le cumulus a un traitement particulier , puisque cde via relais ,
la 1ere lettre M pour Marche (vert) ou S
pour Arret (Noir) (S car le A est deja reservé pour fil
Pilote !)
les 4 modes standard de Cde fils pilotes :
C=Confort (Rouge) , E=Eco (Orange)
, H=Hors-Gel (Bleu) , A=Arret (Blanc)
MAJ appli RapidQ coté PC :
fichir Init COM : EDF_BT.ini
fichier config fil pilotes pour QGrid Datas : ChauffProgrData.tab
derniere version Source basic : BT_edfinfo_et_Tableau_Consigne_190120.rqw
fichier consigne = envoi au PIC : Consigne_Chauff_Pilotes_0112.txt
simulation trame EDF 1200,7,E,1 avec VBRAY , pour le PIC18F : teleinfo_SMG_190120.tsc
exemples de fichiers journalier de datas genérés:
Amperes et Temperature à chaque minute: EdfInfo_Amps_Temp_111.txt
Kwh et temperature moyenne à chaque Heure : EdfInfo_KWH_TemP_111.txt
Evolution
Appli RapidQ
10/06/2023
L'info AMPERE issue de la trame EDF (Linky) est une valeur
entiere et ne permet pas de suivre les tres basses consommations..
car indique donc 0 , si < 1A ou 1 si la conso est > 1A mais
< 2A
En été ,il n'est donc pas rare de voir un graphe AMPERE plat à
0 , ou à 1 Amp
C'est pourquoi j'ai rajouté une info issue du Delta W par minute
en calculant le courant : Delta W mesuré par minute *60 / 230 => Amps_Now =
Intensité moyenne sur une minute
Je neglige le parametre USecteur , figé ici à 230V .
La resolution absolue est de environ 0,25A , mais via le calcul
sur un nombre precis de W .
Nota : j'aurais pu prendre un delta de 5
Minutes pour ameliorer la resolution !
.... voir 10 Mn.. voir chaque heure ... bref c'est mon choix (du
moment !)
Modif de la Form ,presentation
pour afficher les 2 valeurs Amp Trame et Amp
calculé via Delta Watt
Modif. Programme pour le calcul AMps_Now:
Mesures
resolution issue de la Trame EDF = 1 A valeur entiere ,pas de
decimale indique 0 si < 1A !
resolution Delta W ~ 0,25A (mais on suppose Usecteur = Constante=230V
AC)
avec :
TV Salon Sony + PC portable ASUS + 4 horloges PIC + frigo + VMC +
+ PC bureau + 2 ecrans + EDF info BlueTooth(<2,5W) + ??
10/06/2023 13:06:00 1A 1.043
10/06/2023 13:07:00 1A 1.043
10/06/2023 13:08:00 1A 1.304 + lampe Buro Ikea (12W)
10/06/2023 13:09:00 1A 1.304
10/06/2023 13:10:00 1A 1.304 + Horloge 12 max (<5W)
10/06/2023 13:11:00 1A 1.304
10/06/2023 13:11:00 1A 1.304
10/06/2023 13:11:00 1A 1.304 + eclairage ch3 (60W)
10/06/2023 13:12:00 1A 1.565
10/06/2023 13:13:00 1A 1.565
J'attends d'etre en situation 0 Amps , pour vérifier mon minimum
de lecture consommation possible
et éventuellement de debrancher certains élements pour VOIR.. .
Resultat obtenu le lendemain :
exemple 2 :
avec version 2023 et mesure de Courant issue de
delta Watt par minute
nota: recup partielle de la journée
du 11/06/2023
fichier Raw data ,recupéré via appli EDF_info RapideQ ,liée au
PIC18F26K42 via bluetooth : EdfInfo_Jour_Amps_Temp_20230611.txt
Traitement des données via : EDF_Temp_2023_0611.xls
transformé en html
fichier resultat : EdfInfo_Jour_Amps_Temp_20230611.html
Nota : avec Ampere Linky = 0 ! sur cette periode de mesure
En service:
FreeBox, VMW, Frigo-congel,4 horloges PIC, PC portable EEpc ,
montage PIC EDFinfo , Horloge four, base telephone fixe .. et ???
(Cumulus Hors service sur cette periode)
mesure à chaque changement de minute ...
Amps_Now, Temperature °C
0.78;23.12
0.00;23.12 ..............<-- valeur <
à 0,26A ?
0.52;23.12
0.52;23.12
0.26;23.12........... <-- minima
0.78;23.12
0.52;23.12
0.78;23.12
1.04;23.12
0.78;23.12
0.52;23.10
0.78;23.08
1.04;23.07
0.78;23.06
0.52;23.06
0.78;23.06
1.04;23.06
0.52;23.06
0.26;23.06
0.26;23.06
0.78;23.06
On voit bien que la resolution n'est que de 0,26A ( 1W*60/230)
Mais pas question de débrancher la BOX chaque soir.......car c'est
un coup pour la fusiller plus rapidement !
.. et eventuellement prevoir de changer la gamme Delta
Watt sur 10 min !
Les "Linky" n'ont pas été prevu pour les petites
économies .. vu le tarif actuel du KW/H ! ..à quoi bon !
D'autant qu'avec 20% de TVA , qui c'est qui raboule ?
Pour faire des économies à notre niveau , et
rapidement .. TVA à 5,5% ! et là ,pas besoin de couper les
amperes en 4 .
Probable évolutions suivant le tarif EDF à venir....
car mes fils pilotes ne sont toujours pas raccordés , et les
modules sans fils sont trop chers ...
quoique ...on finit par s'habituer à 16 ou 17°C la nuit, en
hiver.
SOFTWARE :
ok sous win10 !
BT_edfinfo_18F46k22_et_Tableau_Consigne_2023-06_Win10.html
BT_edfinfo_18F46k22_et_Tableau_Consigne_2023-06_Win10.rqw
BT_edfinfo_18F46k22_et_Tableau_Consigne_2023-06_Win10.exe
My_QGridEx_2023-06.inc
version pour portable EePC BT_edfinfo_18F46k22_et_Tableau_Consigne_2023-06_EEPC.exe
MAJ appli MikroC coté PIC :
rajout sur affichage alterné LCD , de la consigne de chauffage
Horaire , sous forme Mnemonique .
Envoi des consignes sous forme Mnemonique dans la Trame vers
appli externe (RapidQ ou autre)
chargeur : 18LF46K22_EDF_Info_et_Controle_Chauffage_2019.hex
config : 18LF46K22_EDF_Info_et_Controle_Chauffage_2019.cfg
MAJ Schéma
rev 01/03/2019
EDFinfo_18LF46K22_RN41_LCD2x16_Cde_Fils_Pilotes_190301.DSN
Bill
Of Materials For EDF Info_190208.HTMl
Circuits imprimés
étude avec sprint layout 6.0
Cicuits Réalisés par JCL PCB en 5 jours..
Main PIC18F et Interface fils pilotes
revision Avril 2019
correctif écartement rangées de
pin RN41
EDF PIC18F_Main_190426.lay6
EDF Interface_Fils_Pilotes_190426.lay6
nota : je peux vous fournir ces 2 circuits imprimés pour 15
(port compris) me contacter par mail..
Montage des composants
Mise En TEST :
Problemes rencontrés :
Probleme avec CHG340 et RN41-DB49
USB n'est plus reconnu ..... because
Windows Update driver !
rechargement du driver ( en mode administrateur!)
D:\Exe_zips_\_Drivers_USB_Serial_CH340G\CH34x_Install_Windows_v3_4.exe
Avec USBDEVIEW:
Periph_USB_CH340G_RN41-DB49_COM16.html
lancement TERATERM COM16 19200 .. OK
pas de laison BlueTooth :
suite Erreur , croisement des 2 modules RN41
Obligation de reconfigurer le RN41-EEEC monté (soudé!) sur le
circuit imprimé MCU
j'enleve le MCU 18F, pour avoir acces aux pin RC6 (Tx) et RC7(Rx)
=> connection directe Prolific Cable USB/LTTL vers le RN41-EEEC
serial port : COM3 19200,8,N,1
BTA=00066665EEEC
BTName=RN41-EEEC
1 noir ---Gnd pin carte
2 bleu N.C.
3 violet --+VCC pin carte
4 Vert --- sur R entree TX
5 blanc --sur pin RC7 RX support MCU
6 jaune N.C.
ver 6.15 04/26/2013
(c) Roving Networks
***Settings***
BTA=00066665EEEC
BTName=RN41-EEEC
Baudrt=19.2
Mode =Mstr
Authen=0
PinCod=1234
Bonded=1
Rem=00066607DB49
modif du mode :passage RN41-EEEC en mode ESCLAVE
**Settings***
BTA=00066665EEEC
BTName=RN41-EEEC
Baudrt=19.2
Mode =Slav
Authen=0
PinCod=1234
Bonded=1
Rem=00066607DB49
pour memoriser les changement :
R,1
Reboot!
18F_REBOOT
le module RN41-DB49 est lui, reconfiguré en MASTER.
Test liaison blueTooth:
avec
RN41-EEEC Slave sur carte PIC EDF
RN41-DB48 Master sur mini breadbard avec CH340G USB/LTTL
Connecté via COM16 19200,8,N,1 sur TeraTerm PC terminal
Activation via l'envoi de commandes cote Mater PC Teraterm 1
$$$ --> CMD
Version -->
Ver 4.77 05/12/09
(c) Roving Networks
C <enter> <---- commande
connection
TRYING
Problemo EDFinfo OK ....... on
est connecté, mais ll'info trame EDF n'est pas
racordée
Activation /Simulation envoi trame EDF info
Le montage n'etant pas directement lié au compteur EDF situé
dans le garage,
lUsage du Terminal VBRAY relié à pins UART2 MCU de la carte MCU
via cordon Prolific USB/TTL COM14 :1200,7,E,1
lancement script
program teleinfo;
18F46K22_EDFinfo_BT_190430.tsc
On voit alors sur le Terminal TeraTerm ( recoit la trame +
complement emise par UART1 du PIC)
*C050222059498*;*W00052085000*;*K1000.000*;*E-0.06°C *;*A00000*;*G00000*;*T102.30*;*H=10*;*R=SEAAE*;
Suite à la programmation de ce PIC18F, l'EEPROM n'est pas à
jour,
donc ENVOI du Profil consignes de CHAUF, via le terminal
TearTermF
C050222059498*;*W00052085000*;*K1000.000*;*E-0.06°C *;*A00006*;*G00006*;*T102.30*;*H=10*;*R=SEAAE*;
*C050222059498*;*W00052085000*;*K1000.000*;*E-0.06°C *;*A00007*;*G00007*;*T102.30*;*H=10*;*R=SEAAE*;
Fichier Progr.: CHAUFF;511;170;234;491;491;507;319;003;003;087;501;507;234;234;234;234;234;298;319;060;063;032;235;490;
Relecture Prog. chauffe EEPROM :
CHAUFF 511 170 234 491 491 507 319
003 003 087 501 507 234 234 234 234 234 298 319 060 063 032 235
490
*C050222059498*;*W00052085000*;*K1000.000*;*E-0.06°C *;*A00003*;*G00003*;*T102.30*;*H=10*;*R=MEEAA*;
*C050222059498*;*W00052085000*;*K1000.000*;*E-0.06°C *;*A00004*;*G00004*;*T102.30*;*H=10*;*R=MEEAA*;
profil stocké dans l'eeprom !
Verification , en coupant /remettant l'alimenation
,reset MCU
..car lecture Eeeprom en debut de programme
ATTENTION : si usage Pickit3 ,
DECOCHER EEPROM
Test commande HELP
*C050222059498*;*W00052085000*;*K1000.000*;*E-0.06°C *;*A00001*;*G00001*;*T102.30*;*H=10*;*R=SEAAE*;
Help : Help<CR>
RTC Update: U;14;05;18;15;36;02#<CR>
14 Mai 2018 02(Lundi) 15H36
READ_PRG = Affichage Prog. de Chauff (stocké en EEPROM)
CHAUFF= Recup fichier Ascii Progr. CHAUFF EXCEL -> EEPROM
OFFSET correction temperature LM35DZ
OFS=-30 (limites -99 à 99)
Test MAJ RTC DS3231
si RE0 est forcée à 1, forcage RTC à la date 01/05/2018 et 15H00
il faut donc enlever ce strap,apres la toute premiere mise sous
tension ,pour recuperer par la suite
l'heure courante.
On peut mettre à jour la RTC soit avec un terminal : cde #U:30;04;19;14;45;02;&
pour le 30 avril 2019 14H45 Mardi
soit ,simplement ,avec l'appil basic RapidQ , clicker sur la
touche MAJ RTC
*C050222059498*;*W00052085000*;*K1000.000*;*E-0.06°C *;*A00000*;*G00000*;*T102.30*;*H=15*;*R=SEEEE*;
*C050222059498*;*W00052085000*;*K1000.000*;*E-0.06°C *;*A00001*;*G00001*;*T102.30*;*H=15*;*R=SEEEE*;
RTC Update : U;29;04;19;20;28;01;#
Ecriture dans DS3231... OK
*C050222059498*;*W00052085000*;*K1000.000*;*E-0.06°C *;*A00002*;*G00002*;*T102.30*;*H=20*;*R=SAHAA*;
*C050222059498*;*W00052085000*;*K1000.000*;*E-0.06°C *;*A00003*;*G00003*;*T102.30*;*H=20*;*R=SAHAA*;
le changement se voit soit sur l'appli basic RapidQ , et/ou sur
le terminal UART2
Test
avec Analyseur Logic
Problematique :
Recuperation que d'une trame EDF sur 2
RapidQ
TimeOut reception
*C050222059498*;*W00056479294*;*K1365.294*;*E 14.87*;*A00012*;*G00012*;*T
0.01*;*H=1707*;*R=MCHHH*;
TimeOut reception
*C050222059498*;*W00056479296*;*K1365.296*;*E 14.87*;*A00012*;*G00012*;*T
0.01*;*H=1707*;*R=MCHHH*;
TimeOut reception
*C050222059498*;*W00056479298*;*K1365.298*;*E 14.87*;*A00012*;*G00012*;*T
0.01*;*H=1707*;*R=MCHHH*;
malgré l'usage d'un double buffering : On rempli un buffer ,
pendant qu'on analyse l'autre precedement rempli..
Pin SQA =RD5 output , pour synchro de la capture
la trame EDF de 140 chars , à 1200 bauds, dure 1.168 sec , 8.32mS
/char
On attend de detecter ETX (End Of Text) pour signaler "Trame
complete reçue" , mais vu qu'il n'y a AUCUN delai de repos
entre les trames
si STX (Start Of Text) survient tout de suite , il est raté une
fois sur 2 , car, entre temps , il faut transferer le contenu
reçu dans TRAME -> vers le Buffer_Analyse
qui sert à decortiquer et ranger les datas , dans la trame
finale , qui sera emise sur UART1 (-> blueTooth) vers l'appli
PC RapidQ.
nota: Le transfert trame -> Buffer_Analyse dure 8,04mS !
Une piste à creuser :
* Commutation alternée de pointeur
: un pointeur commun commuté sur buffer reception en cours, puis
sur reception terminee
eviterait la necessiter de copier le contenu de l'un
,dans l'autre !
Il suffitrait d'un seul char <CR> collé derriere le ETX ,
donc entre ETX et STX suivant
pour qu'on puisse capturer CHAQUE TRAME complete aisément., car
on dispose alors de 8,32ms supplementaires.
Config Analyser IKALOGIC SQ50:
Trame_EDF_Transition_ETX_STX_190511.scana
![]() |
![]() |
transition ETX / STX | 3 trames EDF (simulée) |
Lorsqu'on a detecté le carcatere ETX et donc armé le Flag _Trame_OK=1
On dispose d'un gap temporel de 1,16 secondes ( 1168mS) pour
realiser le traitement, mais
il faut tenir compte des interruptions de Timer1 (toutes les 25ms)
=> 1168 ms / 25 ms => ~ 46
Ces 46 interruptions vont prendre 46* duree traitement Interrupt
Timer1 soit 46 * X1µS
Des 140 interruptions de RX UART2 ! soit 140 * X2µS
Lecture de la RTC DS3231
De meme , la lecture du capteur OWS, necessite un delai de 500mS
( maxima 750mS!) pour acquerir la mesure de temperature 12 bits
de resolution.
L'affichage LCD necessite aussi des delais de l'ordre de 25mS x 2
( 2 lignes) => >50mS
Le décodage et remplissage de la trame finale sur UART1-> X3
µS
L'envoi des 102 cars de la trame UART1 à 19200 bds => 102/1920=>
0.053 sec => 53mS
On a donc Largement le temps ..le Timeout n'apparait pas du tout
.voir log
My_teraterm_190512.log
L'envoi de commande via UART1 , passe tres facilement
Ce qui prouve qu'un char supplementaire apporterait une bonne
disponibilté temporelle .
mais ce n'est pas possible dans le monde Reel, on ne peut pas
modifier la trame fournie par EDF.
Modif programme MikroC:
pour capter les infos à CHAQUE trame EDF
contre mesure appliquée 12/05/2019
* Ou astuce utilisée dans ma version C18 de 2014 , ne prendre
les infos de la trame EDF qu'à partir du 45em char ,puis 80em
simili machine d'etat , pour isoler les infos les Watt-Heures
et Amperes seulement,
ce qui laisse un gap temporel de (10 char * 8,3ms =83 ms ) avant
de recevoir ETX
modif interruption RX UART2 :
Resultat:, en connection Réelle EDF ..
*C050222059498*;*W00056481748*;*K1367.748*;*E
15.43*;*A00003*;*G00003*;*T 0.01*;*H=1958*;*R=SCEEC*;
*C050222059498*;*W00056481748*;*K1367.748*;*E 15.43*;*A00003*;*G00003*;*T
0.01*;*H=1958*;*R=SCEEC*;
*C050222059498*;*W00056481748*;*K1367.748*;*E 15.43*;*A00003*;*G00003*;*T
0.01*;*H=1958*;*R=SCEEC*;
*C050222059498*;*W00056481748*;*K1367.748*;*E 15.43*;*A00003*;*G00003*;*T
0.01*;*H=1958*;*R=SCEEC*;
*C050222059498*;*W00056481748*;*K1367.748*;*E 15.43*;*A00003*;*G00003*;*T
0.01*;*H=1958*;*R=SCEEC*;
*C050222059498*;*W00056481749*;*K1367.749*;*E 15.43*;*A00003*;*G00003*;*T
0.01*;*H=1958*;*R=SCEEC*;
*C050222059498*;*W00056481749*;*K1367.749*;*E 15.43*;*A00003*;*G00003*;*T
0.01*;*H=1958*;*R=SCEEC*;
Affichage alterné sur LCD 2119 (en
I2C):
30-04-2019
Application RapidQ Basic
Lancement avec COM16 active sur RN41-DB49 Maitre
RIEN ne se passe , pas de datas ???
Rappel important : RAQPIDQ ne sait
pas traiter les numeros de ports COM >9
parametre COM16
-----Proprietes de USB-SERIAL CH340 COM16
---------parametres avancés pour COM16
-------------Numero de PORT : COM16 renomé COM2
(disponible)
Modfi du fichier de config Appli RapidQ EDF_BT.ini :
35 .............' top windows
716 ...........' left Window
4 ...............'19200 bds
0................ ' (zero) NO parity
1 ................' Nb datas 8
0 ................' 1 stop
1 ................' #COM numero de
COM-1 (donc COM 2-1=1)
55114000... ' dernier relevé EDF was 52958000
0.175......... ' cout KWH (was 0,161!)
(simulation)
injection Trame EDF simulée par Terminal VBRAY + script à la
sortie du photoupleur 6N138
BT_edfinfo_et_Tableau_Consigne_190501.rqw
last modifs : 12/05/2019
* Modif format MAJ RTC : A$="U;30;04;19;20;12;06;#"
test modif RTC ..OK
*Attente reception ETX trame EDF , pour rester synchro .
last modifs : 01/05/2019
*Deplacement Init UART2 tout au debut.
*Relecture infos CHAUFF Eeprom regdirigee sur UART2 (au lieu de
UART1,)
CHAUFF 511 170 234 491 491 507 319 003 003 087 501 507 234 234
234 234 234 298 319 060 063 032 235 490
qui correspond à :
Planning Horaire
at 0 Cde = 511 Chauf: MEEEE
at 1 Cde = 170 Chauf: SHHHH
at 2 Cde = 234 Chauf: SEHHH
at 3 Cde = 491 Chauf: MEHHE
at 4 Cde = 491 Chauf: MEHHE
at 5 Cde = 507 Chauf: MEEHE
at 6 Cde = 319 Chauf: MCEEE
at 7 Cde = 3 Chauf: SCCCE
at 8 Cde = 3 Chauf: SCCCE
at 9 Cde = 87 Chauf: SAAAE
at 10 Cde = 501 Chauf: MEEAA
at 11 Cde = 507 Chauf :MEEHE
at 12 Cde = 234 Chauf: SEHHH
at 13 Cde = 234 Chauf: SEHHH
at 14 Cde = 234 Chauf: SEHHH
at 15 Cde = 234 Chauf: SEHHH
at 16 Cde = 234 Chauf: SEHHH
at 17 Cde = 298 Chauf: MCHHH
at 18 Cde = 319 Chauf: MCEEE
at 19 Cde = 60 Chauf: SCEEC
at 20 Cde = 63 Chauf: SCEEE
at 21 Cde = 32 Chauf: SCHCC
at 22 Cde = 235 Chauf: SEHHE
at 23 Cde = 490 Chauf: MEHHH
TESTS REELS, connecté au compteur EDF
Test avec appli rapidQ Basic sur PC ASUS WIN10
RIEN ne se passe ..
oubli du 10nF aux bornes de la sortie photocoupleur , la trame
etant perturbée par du residu 50KHz .
Remis ce condo de 10nF..OK
Test avec Teraterminal pour visualiser la trame
SANS AUCUN TRAITEMENT , autre que via l'appli MikroC distante
*C050222059498*;*W00000256191*;*K-0050828.809*;*E-0.06°C *;*A00002*;*G00002*;*T102.30*;*H=15*;*R=SEHHH*;
Probleme mesure de temperature
E -0.06°C
Grosse recherche ..pour decouvrir un fil coupé sur la liaison
sonde DS18B20 .
Probleme sur recup NB de KWH
Delta Kwh NEGATIF ???
probleme sur nb KWH 256191 alors que la valeur reel sur le
compteur est 56256191
les 2 premiers digits sont bouffés..
L'application precedente MikroC basée sur 16F1847
étatit OK ..
*C050222059498*;*W00000311874*;*K-0054802.126*;*E
12.31*;*A00013*;*G00013*;*T 0.01*;*H=16*;*R=SEHHH*;
watts_Zero= 55144000
*W00000311874*;*K-0054802.126*;
55114000-311.874=54802.126
Comparaison fichier mikroC
rappel de la trame Edf info délivrée par le compteur
ADCO 050222059498 E
OPTARIF BASE 0
ISOUSC 60 <
BASE 049517379 8
PTEC TH.. $
IINST 003 Z
IMAX 017 G
p2=strstr(Buffer_Analyse,"PTEC TH");
if (p2>0) // pointe sur PTECH APRES le nombre de W !!!
{
p2=p2-10; // was -12 // pointe
sur 049 517 379
*(p2+8)=0;
L1=atol(p2) ;
CRam1[0]=0;
strcpy(Watts_En_Cours,p2);
LongIntToStrWithZeros(L1,CRam1);
UART1_Write('*'); UART1_Write('W');
UART1_Write_Text(CRam1); UART1_Write('*'); UART1_Write(';') ;
Watts= L1 - Watts_Zero ;
LongIntToStrWithZeros(Watts,CRam1) ;
k=strlen(CRam1);
CRam1[k+1]=0;
correctif : p2=p2-12;
2me test .kwh OK sur teraterm
*C050222059498*;*W00056313456*;*K1199.456*;*E 12.75*;*A00002*;*G00002*;*T
0.01*;*H=21*;*R=SCHCC*;
PB Affichage temperature sur RapidQ
// 3em test (PB affichage temperature rapidQ)
// prevu avec voie analog sur version mikroc 16F1847 , modifiée
avec capteur OWS sur version 18F46K22
// => modif rapidQ
'---- recherche valeur Temper -----
i=i+1
j=i
while (Mid$(Trame_EDF$,i,1)<>"E" )
i=i+1
if (i> Lg) then exit while
Wend
i=i+1
j=i
while (Mid$(Trame_EDF$,i,1)<>";" )
i=i+1
if (i> Lg) then exit while
Wend
';*E 8.68*;
Ax$= Mid$(Trame_EDF$,j,i-j-1)
' 05-05-2019 il n'y a plus °C dans la
version 18F
' Ax$= Mid$(Trame_EDF$,j,i-j-5) ' enleve °C '@@@ correctif
version 16F1847
TemperExt=val(Ax$)
Label_TempExt.caption=format$("%4.2f",TemperExt)
Modif option Visu
Trame
en cochant Visu Trame, on peut voir celle ci dans la zone
Réception , mais trop petite : 1 seule ligne
modif pour faire apparaitre une fenetre deroulante de plusieur
lignes (trames), fenetre qui se retracte en décochant Visu trame.
En cas de reset ou coupure alim sur l'appli PIC MikroC,
le module RN41-DB49 maitre deconnecte le lien BlueTooth, suite à
l'init du RN41-DB49 Esclave
et il faut reconnecter le maitre RN41-EEC en envoyant une
sequence , via la fenetre Zone Emission
envoi de $$$ ( passe en mode commande CMD) click
sur Send Message -> envoi $$$ (SANS CR)
envoi de C et coche sur add CR -> click sur
Send Message-> envoi C<CR>
la connection est à nouveau rétablie ..visisble sur la zone
reception de trame et reactualisation des mesures.
Rajout affichage Pictime:
HHMM , l'heure minute de la RTC du PIC
possibilité de resynchroniser manuellement l'heure RTC PIC avec
l'heure PC Win10, via la touche MAJ RTC
Rajout possibilite
de lire le niveau de reception liaison RSSI
Modif pour afficher le contenu Buffer reception si longueur mini
trame non atteinte, de sorte à afficher la réponse du RN41
Nota: on ne peut pas differencier nettement un message arrivant
via BlueTooth , d'une reponse directe du module RN41
sauf le fait d'etre en mode Commande
Envoyer la commande $$$
dans la zone Emission... reponse CMD
puis L<CR>
RSSI ON
Rssi=ee,ec
Rssi=ee,ec
repeter la commande L<R> pour stopper
L<CR>
RSSI OFF
reconnecter la liaison au RN41-EEEC
$$$
C<CR>
et ça repart avec la reception trame
L'appli RapidQ basic :
BT_edfinfo_RapidQ_18F46k22_et_Tableau_Consigne_190508.zip
Appli MikroC (mise à jour)
_18F46K22_EDF_Info_et_Controle_Chauffage_190513.zip
compteur Linky annoncé !
pour juin 2019
Passage sur compteur LINKY
Remplacement effectué en moins de 15mn (en Juillet 2019)
Se met en lieu et place de l'ancien compteur ENERTEC , donc pas
de modif cablage sur la puissance.
Par contre, il faut que je fasse quelques modifs de programmes
...
Coté interface Hardware :
Aucune modification remplacement du numéro de compteur , servant
à la vérification de trame
Coté Application MikroC
Pour visualiser , à distance, le contenu de la trame "Brute"
emise par le Linky
Rajout d'une commande specifique RAW, envoyée
via TeraTerm terminal PC , ( Dongle 340G USB/TTL -> RN41
Maitre ))) BlueTooth,
Coté PIC18F distant , la Trame Linky est reçue sur UART2 RD6 RX
, puis envoyée via UART1 -> RN41 -> BlueTooth ))).
visualisée donc sur Teraterm PC .
Rajout de la commande NORMAL , pour retour à la
configuration d'usage normal (trame reconstituée -> UART1)
Remplacement du numero de compteur , servant à la verification
de trame
Recadrage position de la mesure consommation en WH ,* positionné
juste avant le mot clé PTEC
BASE 000009667 '
PTEC TH.. $
*car le mot clé BASE est utilisé 2 fois
Trame Linky brute :
Mode RAW actif
ADCO 021961176859 N OPTARIF BASE 0 ISOUSC 60 < BASE 000009667 ' PTEC TH.. $ IINST 002 Y IMAX 090 H PAPP 00510 ' HHPHC A , MO |
![]() |
trame linky | sur teraterm |
SOFTWARE :
Programme MikroC 7.50:
projet : 18F46K22_EDF_Info_et_Controle_Chauffage_via_Linky_RN41_190711.zip
source : _18F46K22_EDF_Info_et_Controle_Chauffage_via_Linky_RN41_190711.c
Chargeur : 18F46K22_EDF_Info_et_Controle_Chauffage_via_Linky_1907.hex
Modification sur application RapidQ
modification mineures :
N° de compteur ( check intégrité trame)
Base KWH à zero ! en recopiant la valeur relevée par EDF à
chaque facture ..
avec un relevé automatique Linky le 21 de chaque mois, je
pourrais faire maintenant cette RAZ mensuelle , automatiquement
..mais boof !
Recadrage position consommation KWH
Source : BT_edfinfo_18F46k22_et_Tableau_Consigne_190710.rqw
Executable : BT_edfinfo_18F46k22_et_Tableau_Consigne_190710.exe
BT_edfinfo_18F46k22_et_Tableau_Consigne_190710.html
A suivre : mise en boitier et tests des commandes fils pilotes
Préalable :
Tests réussis sur modules Transceivers GT38 pour récup des
mesures de Température Ambiantes de chaque pieces
voir, utiliser AUSSi ce module pour gerer le fil pilote en direct
, car pres du radiateur..
autre piste : Remplacer le PC ,par une appli concentrateur PIC +
Display couleur 320x240 + Touch screen autonome + ESP01 wifi
ou Raspberry ?
ou ESP32 wifi