Production photovoltaïque et surplus…

Depuis le 28/09/2023, je suis équipé d’une centrale photovoltaïque de 3KWc….

L’achat s’est plutôt bien passé mais la revente du surplus qui doit rentabiliser la bête, se fait attendre…

Alors plutôt que d’injecter gratuitement le surplus, l’idée m’est venue d’en utiliser une partie pour mon vieux chauffe eau électrique…

Je suis connecté au Linky par un petit module ESP8266 qui envoie les données à mon serveur Domoticz

Je peux ainsi suivre consommation et production en direct ou presque…

En mode historique le Linky donne 2 informations:
IINST intensité instantanée
PAPP puissance apparante

PAPP est nul en cas d’injection mais pas IINST

Donc quand PAPP est nul est que IINST est supérieur à mon talon de consommation+ la consommation dudit chauffe eau, je décide de l’alimenter sinon on coupe….

Comme le chauffe eau est télécommandable par Domoticz via une prise RF 433 Chacon, cela n’a pas été difficile

 

 

Publié dans Non classé | Laisser un commentaire

Mon Serveur Domoticz…

Fonctionnalités en liaison avec RFLINK ( sur arduino):
1- asservissement arrosage
2- asservissement veilleuse de nuit
3- publication WebCams
4- surveillance ouverture portes, fenêtres et boite aux lettres
5- automatisation on/off alarme HA500
6- gestion du pluviomètre WH0351

7- Ajouter il y quelques mois: la consommation électrique avec la TeleInfo du compteur LinkyEn détail:

 

 

Publié dans Non classé | Laisser un commentaire

Solveur de Rubik’s cube

Il est içi
c’est une applet, il faut donc autoriser java…
et un navigateur compatible...(la dernière version de FireFox ne l’est plus)
Pour les navigateurs non compatibles essayer ce lien…  et exécuter le jnlp.

On peut saisir un cube, on choisit la couleur par le centre d’une face….
rb3-300x221

Un petite démo ? (rb3.avi) ou http://youtu.be/yRePknD7zQI

La méthode utilisée est « the Two-Phase Algorithm »
trouvée ici dans un premier temps et ici pour les dernières versions

Mais, ça n’a pas suffit…
Quand j’ai trouvé ce machin sur Internet,il m’en a fallu un absolument:
P1000804-300x225

Super!…
Bon, je n’ai rien inventé, tout provient de la:
http://mindcuber.com/index.html

mais quel plaisir  !

Publié dans Uncategorized | Laisser un commentaire

Traceurs 2D

Traceurs 2D

Et 1 (avec ces jolies petites choses…)



et 2  (avec des vieux moteurs de lecteur de disquette 5 pouces)  

et 3 (mécaniques de 2 vieux scanners, bonne précision mais très lents..)

voila un moment que je m’intéresse à ces choses là et nombreux sont les tutos sur internet… du miniCNC avec des lecteurs CD au graveur laser pro, par exemple un des premiers à m’inspirer

https://www.instructables.com/Mini-CNC-Plotter-Arduino-Based/

mais j’ai eu des problèmes avec les lineTo ou gotoXY ou drawXY ou…etc

en effet souvent les tracés ne se raccordaient pas ou des problèmes apparaissaient lors du traçage, les procédures de tracé de segment n’étaient en effet pas correctes quand il fallait convertir des mm de distance en pas moteur….on demande de tracer 11,47 mm avec des système moteurs-poulies ( de récupération) dont la résolution ne dépasse pas 0,4 mm, forcément des erreurs apparaissent…et s’accumulent…

La première solution a été de ne pas oublier, à la fin du tracé de préciser l’endroit ou on a abouti, ce n’est pas parce qu’on veut aller à un endroit qu’on s’y retrouve (problème de résolution…)

Voici donc ma procédure:

ce sont les dernières lignes  Xpos=… et Ypos=… qui rétablissent la situation…

Ceci a réglé pas mal de problème mais certains subsistaient dans l’implémentation de l’algorithme de Bresenham pour le tracé de segment en pas moteur, celle qui suit à régler tous les problèmes et en prime elle est la plus courte…:

 

et voila c’est super…

F-Engrave        

https://www.scorchworks.com/Fengrave/fengrave.html

Je cherchais une solution pour plotter du texte, celle-ci fonctionne à merveilleJ’ai remplacé le scanner le plus lent par un moteur 100 pas programmé en 1/2pas et une petite poulie pour obtenir , sur cet axe, une résolution de 0.15 mm/pas, ce n’est pas si mal…

Sur l’autre axe, avec le vieux scanner, j’ai  deux fois mieux

Publié dans Non classé | Laisser un commentaire

Pluviomètre WH0531 (à finir…)

Après avoir bien joué avec le pluviométre1… , j’ai acheté ce WH0531
et je ne le regrette pas… pour environ 20 euros il fait le boulot…

Le problème est que le capteur ne communique qu’avec l’afficheur et moi je souhaitais récupérer les données pour enrichir ma BD…
En fouillant un peu je suis tombé sur ce site:
https://lucsmall.com/2012/04/27/weather-station-hacking-part-1/

et c’était parti pour une passerelle RF433-Internet adaptée à ce pluviomètre…

Quelques modifications pour intercepter complétement les paquets envoyés par le WH0531

Résultat:  Il intercepte les paquets destinés à l’afficheur et  envoie sur ma BD internet uniquement les données RAIN (R:octets 4 et 5), BD consultable içi.

Un module similaire permet d’asservir mon arrosage automatique…

Publié dans Non classé | Laisser un commentaire

Pluviomètre 1

Il y a longtemps que j’y pensais…Il est enfin la…

Grace à ma dernière acquisition et à ThingIverse

j’ai pu réalisé ceci

en ajoutant puis

puis encore et et …

 

 

J’ai obtenu  

qui donne cela:

(un tick c’est environ 1 mm de pluie, mais je vais changer(augmenter) l’entonnoir…)

Publié dans Non classé | Laisser un commentaire

Sniffer RF433 MHz et télécommandes 433MHz (à finir…)

 

J’avais essayé il y a déjà longtemps les émetteurs et le récepteurs RF433 des sites chinois avec l’Arduino , et j’avais été enthousiasmé par la facilité de cloner les télécommandes bon marché eu utilisant la libraire RC-Switch…

par exemple :
http://anothermaker.xyz/iot/domotique-arduino-nano-raspberry-pi-partie1-rf433mhz-4995

Mais j’ai été très vite déçu, en effet de nombreuses télécommandes n’étaient pas identifiées pas ce moyen…( j’apprends ce jour que cette bibliothèque à évolué avec 29 protocoles supplémentaires…., dont les DiO…, super…on continue quand même)

J’ai donc entrepris de me passer de cette Library pourtant excellente…
Pour cela j’ai revu  le sniffer433 en utilisant la numérisation rapide….

il envoie les données capturées à un moniteur graphique écrit avec Delphi, celui de l’arduino étant limité à 500 données…

Pour le bouton on d’une télécommande, le signal est le suivant:

On y voit des barres fines et des barres plus épaisses séparées par des blancs, on suggère rapidement des 0 et des 1, soit « 0001010100010101010101110 »
En fait la dernière barre fine est le début du signal….suivi d’un grand blanc ce qui constitue l’entête de synchronisation

On peut obtenir davantage de détails en jouant sue le paramètre ‘factor’ de la procédure a2dSetup (configuration du convertisseur analogique numérique) avec un paramètre à 4 on obtient une donnée toutes les 16 µs…(environ…)

Le moniteur graphique permet de mesurer les périodes…

Ici en moyenne  une mesure toutes les 9,54µs (factor mis à 3), 8 périodes (bits) 1086 mesures soit un bit 9,54*1086/8=1295 µs et donc un pulse (état H ou b) à 323,75 µs

L’analyse complète donne:
1-Entete de 32 ‘pulses’: Hbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
2-Bit 0: 4 pulses Hbbb
3-Bit 1: 4 pulses HHHb
4-durée d’un état (pulse): 323 µs

On peut ainsi simuler la télécommande physique par un programme:

Telecommande On/Off

PS: pour les télécommande DiO, une solution est ici:
http://charleslabs.fr/fr/project-Contrôle+de+prises+DiO+avec+Arduino
marche très bien
Finalement j’utilise RC-Switch avec tous ses protocoles….

 

Version Simplifiée avec esp32

les timers de l’esp32 permettent une version plus claire

resultat sans signal

Durée des mesures: 208 attendu :208

**************** les mesures avec comptage ***********************************
(0:1)
11 (1:2)
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:3997)
Touche en attente…

résultats avec signal (après élimination des données superflues ou redontantes…)

Durée des mesures: 208 attendu :208

**************** les mesures avec comptage ***********************************

111 (1:3)
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:197)
111111 (1:6)
00000000000000000000 (0:20)
111111 (1:6)
0000000000000000000 (0:19)
111111 (1:6)
00000000000000000000 (0:20)
111111111111111111 (1:18)
00000000 (0:8)
11111 (1:5)
00000000000000000000 (0:20)
111111111111111111 (1:18)
000000000 (0:9)
1111 (1:4)
000000000000000000000 (0:21)
111111111111111111 (1:18)
000000000 (0:9)
1111 (1:4)
00000000000000000000 (0:20)
111111111111111111 (1:18)
000000000 (0:9)
1111 (1:4)
000000000000000000000 (0:21)
111111111111111111 (1:18)
000000000 (0:9)
1111 (1:4)
00000000000000000000 (0:20)
11111 (1:5)
000000000000000000000 (0:21)
11111 (1:5)
00000000000000000000 (0:20)
111111111111111111 (1:18)
000000000 (0:9)
1111 (1:4)
000000000000000000000 (0:21)
111111111111111111 (1:18)
000000000 (0:9)
1111 (1:4)
00000000000000000000 (0:20)
111111111111111111 (1:18)
000000000 (0:9)
1111 (1:4)
000000000000000000000 (0:21)
111111111111111111 (1:18)
000000000 (0:9)
11111111111111111 (1:17)
000000000 (0:9)
11111111111111111 (1:17)
000000000 (0:9)
1111 (1:4)
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:197)

entre deux blocs de 197 O, on voit apparaitre une alternance de 0 et 1:

-un 1 :
111111111111111111 (1:18)
00000000 (0:8)

-un 0:
11111 (1:5)
00000000000000000000 (0:20)

On retrouve le codage sur 4 états HHHb pour un 1 et Hbbb pour un 0, la durée de chaque état étant de 5 à 8 intervalles de mesures de 52 µs soit 260-416 µs soit en moyenne 338 µs ( entre 25*52/4 et 27*52/4)

En comptant les nombres d’échantillons de chaque état, on on obtient la signature du signal, par exemple:

11111111111111111111111111 (1:26)
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:1019)
111111111111111111111111111111111 (1:33)
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:99)
11111111111111111111111111111111 (1:32)
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:99)
11111111111111111111111111111111 (1:32)
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:100)
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 (1:98)
0000000000000000000000000000000000000 (0:37)
111111111111111111111111111111 (1:30)
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:102)
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 (1:98)
0000000000000000000000000000000000000 (0:37)
111111111111111111111111111111 (1:30)
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:103)
1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 (1:97)
00000000000000000000000000000000000000 (0:38)
11111111111111111111111111111 (1:29)
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:103)
1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 (1:97)
000000000000000000000000000000000000000 (0:39)
11111111111111111111111111111 (1:29)
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:103)
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 (1:98)
000000000000000000000000000000000000000 (0:39)
1111111111111111111111111111 (1:28)
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:104)
111111111111111111111111111111 (1:30)
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:103)
11111111111111111111111111111 (1:29)
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:103)
1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 (1:97)
000000000000000000000000000000000000000 (0:39)
11111111111111111111111111111 (1:29)
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:103)
1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 (1:97)
0000000000000000000000000000000000000000 (0:40)
1111111111111111111111111111 (1:28)
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:103)
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 (1:98)
000000000000000000000000000000000000000 (0:39)
1111111111111111111111111111 (1:28)
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:104)
1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 (1:97)
000000000000000000000000000000000000000 (0:39)
111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 (1:96)
0000000000000000000000000000000000000000 (0:40)
111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 (1:96)
000000000000000000000000000000000000000 (0:39)
1111111111111111111111111111 (1:28)
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (0:1019)
26,1019,33,99,32,99,32,100,98,37,30,102,98,37,30,103,97,38,29,103,97,39,29,103,98,39,28,104,30,103,29,103,97,39,29,103,97,40,28,103,98,39,28,104,97,39,96,40,96,39,28,1019,

Cette dernière ligne sera donnée au player avec la durée entre deux échantillons, par exemple

 

 

 

Publié dans Non classé | Laisser un commentaire

ESP8266 Arduino Killer

Très attendue cette commande est enfin arrivée avec les esp8266 et surtout sa mise en œuvre Wemos:mini_v2

et depuis j’utilise beaucoup moins mes arduinos….
La station météo ressemble désormais à ça :1465738141742-img_20160612_133556

C’est quand même plus simple….plus besoin d’Android et ses liaisons BlueTooth et Wifi, l’esp transmettant directement les données sur mon site

le code:

 

les données sont stockées dans une base mysql par le script .php:

 

les résultats ici: daniel974/meteo2/

Publié dans Non classé | Laisser un commentaire

Mini station météo

Comme beaucoup qui jouent avec une Arduino, j’ai eu envie d’avoir ma station météo, température, pression, humidité
pas de pluviomètre ni d’anémomètre, ces capteurs étant un peu chers à mon gout…

Je voulais en outre publier les mesures sur ce site:
Mes mesures météo

line-006.php

La chaine est donc la suivante:

Capteurs–>Arduino–>…BT…–>Android–>…WIFI…–>MaBox–>..Internet…–>Monsite

On doit pouvoir faire plus simple…mais c’est intéressant!…

J’ai tout d’abord essayé le capteur LM35FE0DHQ4HV2AIB01.MEDIUM

Très facile à mettre en œuvre, et nombreux tutos par exemple
mais il ne fait que la température, j’ai finalement opté pour un DS18B20 et un BMP085 avant de passer au BME280 en commande…bme280

Restait à publier….
Ma solution a été de relier l’Arduino à un viel Android  en BlueTooth(je ne suis pas sur que mon Samsung Galaxy S apprécie…) Celui-ci envoie en WIFI les mesures sur mon site via ma box !… l’Arduino devra en plus gérer la charge de l’Android, de façon à ce qu’on puisse laisser cet ensemble dans un coin et ne plus s’en occuper…

L’application Android est fortement inspirée de:
1- BlueTooth-spp-Terminal pour la liaison BlueTooth Arduino>->Android
2- Android UpLoad pour le transfert des données Android->MonSite
3- BatteryLevel pour la gestion de la charge de l’Android

Voici l’installation:P1000974
j’ai mis tout ça dans une porte fenêtre peu utilisée, on voit le boitier de l’Arduino, l’Android en liaison USB pour la charge et Bluetooth pour les mesures,  l’alimentation et enfin le fil de la sonde DS18B20qui est placée à l’extérieur,P1000970
la capteur BMP035 étant dans le boitier Arduino. MontageVite un couvercle, ça fait peur…

Montage:StationMeteoA venir: codes….

J’ai depuis découvert l’ESP8266 et notamment cet articlesensors_proto
Ça à l’air bien…j’ai donc commandé ce composant et ai hâte de le mettre en œuvre…

Publié dans Non classé | Laisser un commentaire

Oscilloscopes…

J’ai commandé un ds0 138dso138_08a

En attendant sa livraison, j’ai essayé d’imiter celui-la OscilloAndroid décrit sur http://projectproto.blogspot.com/2010/09/android-bluetooth-oscilloscope.html

Pour cela j’ai dépoussièré ma carte IOIO et modifié l’application IOIOSimpleApp, et j’ai obtenu ce truc …MyAndroOscillo  le signal est fourni par le moteur de ma plaque IOIO.
J’ai utilisé la même classe que le précédent pour l’affichage, mais l’échantillonnage de la carte IOIO est limité à 1 kSa/s, c’est peu…

Je me suis alors tourné vers les applis PC et essayé XOcillo et Scopino qui utilisent un arduino

scopino6 XOscilloAndMyGBF

Super les deux….

La manip complète….(GBF—>Echantillonneur—->Grapheur)
(70s GBF, Arduino, PC)

XOscilloAndMyGBF5

Publié dans Non classé | Laisser un commentaire