FK8ZHA – Blog radioamateur de F8ASB https://blog.f8asb.com Promouvoir est notre devoir ... Mon, 04 May 2026 05:41:18 +0000 fr-FR hourly 1 98010425 Le module capteur https://blog.f8asb.com/2026/03/01/le-module-capteur/ https://blog.f8asb.com/2026/03/01/le-module-capteur/#respond Sun, 01 Mar 2026 14:07:51 +0000 https://blog.f8asb.com/?p=10143 Continuer la lecture ]]>

 

Aujourd’hui, je vous décris le module capteur en charge du relevé de température et de la tension batterie.
Description:

Ce projet met en œuvre un petit module USB capable de mesurer la température ainsi que la tension d’une batterie, puis de renvoyer ces valeurs sur une liaison série. Compact, économe en énergie et simple à interroger, il constitue un outil idéal pour la surveillance d’alimentations, de systèmes embarqués ou de montages radioamateurs.

Le but est de disposer d’un dispositif USB qui :

  • lit la température via une sonde numérique DS18B20,
  • mesure la tension d’une batterie grâce à un pont diviseur,

Lecture de la température

La sonde DS18B20 est pilotée via le bus OneWire.

  • envoie une requête de mesure,
  • lit la température en degrés Celsius,
  • renvoie la valeur sous la forme :
    T=23.7 C
    

Ce capteur numérique garantit une bonne précision sans nécessiter d’étalonnage complexe.

Mesure de la tension batterie

La tension à mesurer passe par un pont diviseur composé de deux résistances (R1 = 22 kΩ, R2 = 6,8 kΩ). Le microcontrôleur lit la tension sur l’entrée analogique A0, puis calcule la tension réelle selon la formule :

Vin=VA0×R1+R2R2×correction

La valeur retournée ressemble à :

V=12.4 V

Une variable correction permet d’ajuster finement la mesure si nécessaire.

Le Matériel:
Carte microcontrôleur 32U4
Arduino nano est possible également
Une résistance de 6,8K (ou 4,7K + 2,2k)
Une résistance de 22K
Un capteur de température 18B20
Led jaune
Connecteur entrée alimentation
Fichiers 3D

Le programme Arduino est disponible directement sur le simulateur.

Lien vers le simulateur:

https://wokwi.com/projects/452516748378971137


Cliquer sur le bouton lecture vert pour exécuter la simulation.
Sur le champ du bas vous pouvez envoyer la commande T ou V.
En cliquant tu le potentiomètre ou sur le capteur de temperature vous pouvez faire varier les valeurs.

Schéma électronique:

J’ai utilisé 2 résistances en série de 4,7k + 2,2K car je n’avais pas de 6,8K sous la main.

Indication visuelle

Une LED connectée sur la broche 2 s’allume brièvement lors du traitement d’une commande, ce qui permet de visualiser l’activité du module.

Exemple d’utilisation

Depuis un terminal série :

  • envoyer T → obtenir la température
  • envoyer V → obtenir la tension batterie

Aucune configuration complexe, aucune trame exotique : une seule lettre suffit.

Le fichier Python pour aller lire les informations et les stocker dans le Raspberry:
Disponible sur Github 
Celui-ci intégré une temporisation de lecture et la sauvegarde des données.

L’intégration dans Svxlink:

Ajouter le dossier mesureV dans le dossier /home/
et copier le scripts mesureVT.py

Afin de faire la mesure de tension quand le relais est en veille, nous devons lancer le script de mesure lorsque que le relais passe en rx, une temporisation de 10s (configurable) est prévue.
Pour cela nous éditons le fichier RepeaterLogic.tcl qui se situe dans le dossier /usr/share/svxlink/event.d/local/

Editer RepeaterLogic.tcl
Ajouter à la fin de la partie repeater_down ajouter le lancement du script:
set runcmd [exec python3 /home/mesure/mesureVT.py];

proc repeater_down {reason} {
global mycall;
variable repeater_is_up;
#script lecture tension
set runcmd [exec python3 /home/mesure/mesureVT.py];

Dans le même dossier, éditer Logic.tcl, dans la partie dmtf, copier le code ci-desous:

######################
#15 mesure de tension# 
######################

if {$cmd == "15"} {

# Lecture du fichier
set f [open "/tmp/mesureV.txt" r]
set data [read $f]
close $f

# Extraction avec regexp
if {[regexp {V=([0-9]+\.[0-9]+)\s*V} $data -> valeur]} {

puts "Tension Alim:$valeur V"
playMsg "SVXCard/Mesurement" "PowerSupplyVoltage";
playVoltage $valeur;
} else {
puts "Aucune tension trouvée dans le fichier"
}

return 1
}

##########################
#14 mesure de temperature#
##########################

if {$cmd == "14"} {
# Exécute le script Python et lit toute la sortie
set f [open "|python3 /home/mesure/mesureT.py" r]
set output [read $f]
close $f

# Extraction de la température au format :
# Température : 28.9
set temperature ""

if {[regexp {Température\s*:\s*([0-9]+\.[0-9]+)} $output -> temp]} {
set temperature $temp
}

# Affichage du résultat
if {$temperature ne ""} {
puts "Temperature:"
puts $temperature

playMsg "SVXCard/Weatherstation" "tempint";
playTemp $temperature;

} else {
puts "Erreur : impossible d'extraire la température"
}
return 1
}

Le script écrit 1 fichiers dans le dossier temporaire à la retombée du relais pour avoir une tension hors charge dans /tmp/mesureV.txt

A la reception du code DTMF, SvxLink ira lire la valeur dans le fichier pour la tension et en direct pour la température.

Les photos de la réalisation du capteur:


Conclusion:

Vous disposez désormais de la description nécessaire pour réaliser ce type de capteur. Vous pourrez également interagir avec celui‑ci et associer des actions en fonction des valeurs mesurées.

Afin de préserver les batteries, le relais pourrait s’arrêter à partir d’un certain seuil de tension, annoncer vocalement la tension mesurée lors de l’ouverture du relais, ou encore alerter en cas de tension basse des batteries.

Vous l’aurez compris, votre imagination fera le reste : il ne s’agit ici que d’une approche logicielle à mettre en place.

Je préconise de sauvegarder les fichiers que vous allez modifier en amont, ce qui vous permettra de revenir en arrière dans le cadre d’une erreur.

Bonne réalisation.

Vous pouvez recevoir un email dès la parution d’un article sur le Blog F8ASB.COM ainsi que des actualités Tech et radio, en entrant votre adresse email ICI. Tous les articles en 1 clic ICI
]]>
https://blog.f8asb.com/2026/03/01/le-module-capteur/feed/ 0 10143
SxvLink: La météo sur votre relais sans station météo ! https://blog.f8asb.com/2022/08/27/sxvlink-la-meteo-sur-votre-relais-sans-station-meteo/ https://blog.f8asb.com/2022/08/27/sxvlink-la-meteo-sur-votre-relais-sans-station-meteo/#respond Sat, 27 Aug 2022 16:55:09 +0000 http://blog.f8asb.com/?p=7949 Continuer la lecture ]]> Mon ami Goulven FK1UW, responsable du relais du Mont Do FK8ZHA, m’a contacté pour me dire que sa station météo était hors service suite aux intempéries qu’ils ont subis en Nouvelle Calédonie.
Je lui ai donc proposé une alternative, c’est ceque que je vous partage dans cet article.

Beaucoup d’Oms utilisent la météo des aéroports pour les relais, cela fonctionne très bien.
Toutefois la solution de OpenWeather propose plus de site météo et un contenu de données plus important.

Les prérequis:

  • Un compte sur Open Weather et une API active.
  • Un relais ou hotspot qui fonctionne avec SvxLink.
  • Une connection Internet sur site.
  • Modification du fichier Logic.tcl
  • Ajout d’un script Python
  • bibliothèque de sons https://github.com/F8ASB/fr_FR_Agnes

 

Création d’un compte sur Open Weather:

Rien de compliqué, il suffit de se rendre sur le site, cliquer en haut à droite sur le site Sign In et remplir le formulaire.

Mettre le statut en actif le numéro sur la gauche sera à intégrer dans un script.

La version gratuite permet d’avoir 60 interrogations par minute avec des informations limitées. Ces dernières sont largement suffisante pour une application relais.
Je vous invite à aller sur le lien suivant pour voir les tarifs et options.

Script Python:

Nous allons maintenant créer un script pour aller récupérer les informations sur l’API en Python. Le format du fichier peut etre en XML ou JSON.
J’ai choisi de prendre JSON.

Voila à quoi ressemble le fichier brute reçu:
{‘coord’: {‘lon’: 6.7167, ‘lat’: 48.0167}, ‘weather’: [{‘id’: 501, ‘main’: ‘Rain’, ‘description’: ‘moderate rain’, ‘icon’: ’10d’}], ‘base’: ‘stations’, ‘main’: {‘temp’: 22.97, ‘feels_like’: 23.28, ‘temp_min’: 19.45, ‘temp_max’: 22.97, ‘pressure’: 1014, ‘humidity’: 75, ‘sea_level’: 1014, ‘grnd_level’: 966}, ‘visibility’: 10000, ‘wind’: {‘speed’: 1.53, ‘deg’: 2, ‘gust’: 1.66}, ‘rain’: {‘1h’: 1.78}, ‘clouds’: {‘all’: 97}, ‘dt’: 1661609109, ‘sys’: {‘type’: 1, ‘id’: 6596, ‘country’: ‘FR’, ‘sunrise’: 1661575450, ‘sunset’: 1661624743}, ‘timezone’: 7200, ‘id’: 6445778, ‘name’: ‘Vagney’, ‘cod’: 200}

Ci-dessous le script à utiliser:

Disponible sur GitHub https://github.com/F8ASB/meteo-relais

Vous avez juste à remplacer “votre code API” par ce que vous fourni le portail OpenWeather.
Pour ma part, j’ai positionné le script dans le dossier /home/SVXCARD/meteo-relais.py

Libre à vous de le mettre où vous le souhaitez, prenez soin de bien noter le chemin car on en aura besoin juste après.
Vous pouvez lancer le script en manuel afin de verifier le bon fonctionnement.

Vous devriez avoir en retour:
22.9/19.4/22.9/1014/75/2/112.5
température/tempmini/tempmaxi/pression/humidité/ventDirection/ventVitesse

Il est nécessaire maintenant d’intégrer le code DTMF et la récupération des données dans SvxLink avec le traitement pour la synthèse vocale.

Modification Logic.tcl

Nous allons éditer le fichier Logic.tcl qui peut etre situé dans le dossier /usr/share/svxlink/events.d/ ou /usr/share/svxlink/events.d/local/


Disponible sur GitHub https://github.com/F8ASB/meteo-relais

Copier/coller le code juste au dessus de Executed when the SvxLink software is started.
Changez le chemin du script python si nécessaire à la ligne 9.

Il sera nécessaire d’avoir les sons correspondants au chemin du fichier audio, dans le cas contraire des erreurs apparaitront

Intégration code dtmf:

Il nous reste plus qu’a créer un code dtmf, dans l’exemple le code est 18# pour appeler la fonction.

En regardant le log de SvxLink vous verrez apparaitre les informations.

Video

Vidéo de démonstration:

Conclusion:

Cet article peut également être utilisé pour un hotspot, dès qu’un système fonctionne sous SvxLink il sera compatible. Il peut être nécessaire de télécharger les fichiers sons afin d’être sûre de les avoir tous.
Disponible sur Github.

Un article précédent présente l’installation d’une station météo sur le site d’un relais et son adaptation sur SvxLink.

Vous pouvez recevoir un email dès la parution d’un article sur le Blog F8ASB.COM, entrez votre mail sur la fenêtre à droite et cliquer sur abonnement. Tous les articles en 1 clic ICI
]]>
https://blog.f8asb.com/2022/08/27/sxvlink-la-meteo-sur-votre-relais-sans-station-meteo/feed/ 0 7949
Le relais du Mont Do, FK8ZHA donne la voix ! https://blog.f8asb.com/2020/01/12/le-relais-du-mont-do-fk8zha-donne-la-voix/ https://blog.f8asb.com/2020/01/12/le-relais-du-mont-do-fk8zha-donne-la-voix/#respond Sun, 12 Jan 2020 16:42:28 +0000 http://blog.f8asb.com/?p=5452 Continuer la lecture ]]>

Pour faire suite à un article paru sur ce Blog, sur la préparation du relais par Goulven FK1UW.
Le relais est maintenant sur site et propose une synthèse vocale et plusieurs fonctions dès plus modernes.
Vous retrouverez dans cet article un reportage photo de l’installation.

 Le 7 janvier 2020, a été installé le nouveau relais du Mont Do, ainsi qu’une station météo et une caméra. Avec la participation de Sam FK8DD, Yves FK4RD, Alain Weihsbach, et Gaël Beaufils l’informaticien pour l’installation du relais sur site. 

Caractéristiques du relais : 
Locator : RG38AF
Longitude : 166° 00’ 00’’ Est
Latitude : 21° 45’ 17’’ Sud
Altitude : 1020 mètres
TX 146,800 et RX 146,200 Mhz 
Ouverture 1750Hz
Logique: SVXCARD
TX: ICOM IC F310 – 25Watts
RX:TAIT TM 8110 

 Le site est connecté en 4G pour la prise à distance du système et la visualisation des données vidéos.

Vue intérieur de FK8ZHA
Le relais est situé dans un conteneur
Installation d’une webcam et d’une station météo
Une autre vue de l’intérieur du relais
Parce qu’il est toujours bien d’être au moins deux sur un projet FK4RD Yves est très souvent avec Goulven pour lui donner des coups de main.
Des essais de communication ont été fait en amont chez Goulven.
La station météo de type WS1080 communique avec le Raspberry via WeeWx, les données sont ensuite utilisées par Svxlink pour la transmission vocale des données. Voir l’article sur ce Blog

 Les remerciements pour les personnes suivantes:

Yves FK4RD pour l’aide précieuse apporté à la fabrication du relais au QRA, toujours dans la bonne humeur. 

Gilles FK4RH pour le don de 2 postes ICOM IC F310 qui a permis la réalisation du relais. 

Sam FK8DD notre Président pour le don d’une alimentation à découpage de 30 Ampères qui a permis la réalisation du relais, et toujours disponible pour monter au Mont Do ou autres. 

Tony TRAN de la société AUDIOTECH, pour la programmation du poste ICOM et autres travaux divers, lorsque nous avions besoin de lui et de ses précieux conseils. 

Gaël BEAUFILS l’informaticien pour ses compétences et sa disponibilité, prenant sur son temps de travail pour l’ARANC. 

Alain WEIHSBACH notre photographe attitré toujours disponible et partant dans nos aventures pour immortaliser nos projets et sorties. 

Et comme la liste des remerciements vient d’un des nombreux compte rendu que Goulven m’a fait parvenir, il ne s’intègre jamais dedans.
Pourtant c’est bien lui qui a lancer le projet, qui a découvert Linux, l’assemblage de la carte électronique, le câblage…
Bref, le technicien qui était en lui est né à travers ce projet et je le vois maintenant lors de nos derniers échanges, il y a une réelle analyse du problème avant de me solliciter.

Goulven m’a dit une fois “Maintenant, je réfléchi différemment, j’ai même trouvé une panne à mon pro”

Goulven, MERCI de ne pas avoir lâché ce projet au nom de la communauté radioamateur.

D’autres améliorations viendront sur ce relais, il est nécessaire dans un premier temps de laisser l’installation en fonctionnement pour étudier son comportement.

Ci-dessous la vidéo de la présentation du relais au Radioclub de l’ARANC. Il manque la fin suite à un problème de batterie.

Vidéo de la présentation du projet au Radioclub de L’ARANC le 25/09/2019
Vous pouvez recevoir un email dès la parution d’un article sur le Blog F8ASB.COM, entrez votre mail sur la fenêtre à droite et cliquer sur abonnement. Tous les articles en 1 clic ICI

]]>
https://blog.f8asb.com/2020/01/12/le-relais-du-mont-do-fk8zha-donne-la-voix/feed/ 0 5452