mercredi 2 juillet 2025

capteur ultrasonique avec Arduino

 Dans ce projet, nous utiliserons un capteur à ultrasons pour détecter un intrus.





Ce projet est polyvalent et peut être utilisé et adapté de diverses manières. Le capteur à ultrasons pouvant définir la distance, vous pouvez, par exemple, l'utiliser pour définir une zone et déclencher une 
alarme en cas de franchissement de ce périmètre.
 Le capteur fonctionne comme un radar : il émet un signal ultrasonore, ou ping. Lorsque ce signal touche un objet, il rebondit comme un écho, et le temps entre le ping et l'écho est utilisé pour calculer la distance. 
L'Arduino peut utiliser ce calcul po déclencher un événement, en fonction de la valeur reçue. Dans ce projet, lorsque le capteur détecte un intrus dans un périmètre prédéfini, la LED rouge .

Pour une utilisation plus conviviale, vous pouvez régler la distance très près de vous, de sorte que lorsque vous passez la main devant le capteur.


Insérez le capteur à ultrasons dans la plaque d'essai. Le capteur que nous utilisons dans ce projet possède quatre broches.
Connectez la masse(GND) du capteur au rail de masse de l'Arduino, la tension VCC au +5 V de l'Arduino, 
la tension Trig à la broche 12 de l'Arduino et la tension Echo à la broche 13 de l'Arduino.






 

VCC===5Volt
GND===Masse
TRIG===transmetteur
Echo====récepteur


 le code

#include <NewPing.h> 

#define trigPin 12 

#define echoPin 13 

#define MAX_DISTANCE 500

NewPing sonar(trigPin, echoPin, MAX_DISTANCE);
// Library setting

 redLed = 2; /


void setup() {

Serial.begin (9600);

pinMode(trigPin, OUTPUT);

pinMode(echoPin, INPUT);


pinMode(redLed, OUTPUT);


}

void loop() {

int duration, distance, pos = 0, i;

digitalWrite(trigPin, LOW);

delayMicroseconds(2);

digitalWrite(trigPin, HIGH); /


delayMicroseconds(10);

digitalWrite(trigPin, LOW);

duration =
pulseIn(echoPin, HIGH); 

distance = (duration / 2) / 29.1;


Serial.print(distance); Serial.println(" cm");


if (distance <= 15) {

 
digitalWrite(redLed, HIGH);
 delay(450); 
digitalWrite(redLed, HIGH); 
 
delay(450); 
digitalWrite(redLed, LOW);

}


else {

digitalWrite(redLed, LOW);


} delay(450);

}







mardi 1 juillet 2025

capteur de température avec Arduino

 capteur de température TMP36,


Si les interrupteurs et les boutons sont géniaux, le monde physique ne se résume pas à la simple marche/arrêt. Bien que l'Arduino soit un outil numérique, il peut obtenir des informations de capteurs analogiques pour mesurer des paramètres tels que la température ou la lumière. Pour ce faire, vous utiliserez le convertisseur analogique numérique (CAN) intégré à l'Arduino.

Les broches d'entrée analogique A0 à A5 peuvent renvoyer une valeur comprise entre 0 et 1023, ce qui correspond à une plage de 0 à 5 volts.


Vous utiliserez un capteur de température pour mesurer la température de votre peau. Ce composant produit une tension variable en fonction de la température détectée. Il possède trois broches : une à la terre, une à l'alimentation et une troisième qui fournit une tension variable à votre Arduino. Dans le schéma de ce projet, vous lirez la sortie du capteur et l'utiliserez pour allumer et éteindre des LED indiquant votre température. Il existe plusieurs modèles de capteurs de température.
Ce modèle, le TMP36, est pratique car il produit une tension qui varie directement proportionnellement à la température en degrés Celsius.

CONSTRUIRE LE CIRCUIT



LE CODE

Une paire de constantes utiles

const int sensorPin = A0;

const float baselineTemp = 20.0;



Les constantes sont similaires aux variables : elles permettent de nommer de manière unique les éléments du programme, mais contrairement aux variables, elles ne peuvent pas être modifiées. Nommez l'entrée analogique pour une référence facile et créez une autre constante nommée pour conserver la température de référence.
Pour chaque 2 degrés au-dessus de cette valeur de référence, une LED s'allume.
Vous avez déjà vu le type de données Integer, utilisé ici pour identifier la broche du capteur. La température est stockée sous forme de nombre à virgule flottante. Ce type de nombre possède une virgule décimale et est utilisé pour les nombres pouvant être exprimés sous forme de fractions.

Initialiser le port série à la vitesse souhaitée

void setup(){

Serial.begin(9600); 



Dans la configuration, vous allez utiliser une nouvelle commande : Serial. begin(). Cela ouvre une connexion entre l'Arduino et l'ordinateur, ce qui vous permet de visualiser les valeurs de l'entrée analogique sur l'écran de votre ordinateur.

L'argument 9600 correspond à la vitesse de communication de l'Arduino, soit 9600 bits par seconde. Vous utiliserez le moniteur série de l'IDE Arduino pour visualiser les informations que vous choisissez d'envoyer depuis votre microcontrôleur. 

Lorsque vous ouvrez le moniteur série de l'IDE, vérifiez que le débit en bauds est de 9600.

Initialiser les directions de la broche numérique et éteindre.


for(int pinNumber = 2; pinNumber<5; pinNumber++){ 

pinMode(pinNumber,OUTPUT); digitalWrite(pinNumber, LOW);

}
 }


Ensuite, une boucle for() permet de définir certaines broches comme sorties. Il s'agit des broches auxquelles vous avez connecté des LED précédemment.

 Au lieu de leur donner des noms uniques et d'utiliser la fonction pinMode() pour chacune d'elles, vous pouvez utiliser une boucle for() pour les parcourir rapidement. 

C'est une astuce pratique si vous souhaitez parcourir un grand nombre d'éléments similaires dans un programme. Indiquez à la boucle for() de parcourir les broches 2 à 4 séquentiellement.

Lire le capteur de température

void loop(){

int sensorVal = analogRead(sensorPin);



Dans la fonction loop(), vous utiliserez une variable locale nommée sensorVal
pour stocker la valeur du capteur. Pour obtenir la valeur du capteur, appelez analogRead() qui prend un argument :
la broche sur laquelle la tension doit être mesurée. La valeur, comprise entre 0 et 1023, représente la tension sur la broche.

Envoyer les valeurs du capteur de température à l'Arduino.


Serial.print(“Sensor Value: “); Serial.print(sensorVal);

La fonction Serial.print() envoie des informations de l'Arduino à un ordinateur connecté. Ces informations sont visibles sur votre écran série. 

Si vous lui donnez un argument entre guillemets, Serial.print() affichera le texte saisi. Si vous lui donnez une variable en argument, elle affichera la valeur de cette variable.


Convertir la mesure du capteur en tension

float voltage = (sensorVal/1024.0) * 5.0;

Avec un peu de mathématiques, il est possible de déterminer la tension réelle sur la broche.

Cette tension est comprise entre 0 et 5 volts et comporte une partie fractionnaire (par exemple, 2,5 volts). Il faut donc la stocker dans un nombre à virgule flottante. Créez une variable nommée voltage pour contenir cette valeur. 

Divisez sensorVal par 1024,0 et multipliez par 5,0. Le nouveau nombre représente la tension sur la broche. Comme pour la valeur du capteur, vous l'afficherez sur le moniteur série.


Convertir la tension en température et envoyer la valeur à l'ordinateur

Serial.print(“, Volts: “); Serial.print(voltage)

Si vous consultez la fiche technique du capteur, vous trouverez des informations sur la plage de tension de sortie. Les fiches techniques sont comme des manuels de composants électroniques.
 Elles sont rédigées par des ingénieurs, pour d'autres ingénieurs. La fiche technique de ce capteur explique que chaque variation de 10 millivolts du capteur équivaut à une variation de température de 1 degré Celsius. Elle indique également que le capteur peut mesurer des températures inférieures à 0 degré.
 De ce fait, vous devrez créer un décalage pour les valeurs inférieures à zéro (0 degré). En prenant la tension, en soustrayant 0,5 et en multipliant par 100, vous obtenez la température exacte en degrés Celsius. 
Enregistrez cette nouvelle valeur dans une variable à virgule flottante appelée température. Maintenant que vous avez la température réelle, imprimez là également sur le moniteur série. Puisque la variable de température est la dernière valeur que vous allez imprimer dans cette boucle, vous allez utiliser une commande légèrement différente : Serial.println(). Cette commande crée une nouvelle ligne dans le moniteur série après l'envoi de la valeur. Cela facilite la lecture lors de l'impression.

Éteindre les LED pour une température basse
Serial.print(“, degrees C: “);

float temperature = (voltage - .5) * 100;

Serial.println(temperature);

if(temperature < baselineTemp){ 
digitalWrite(2, LOW); 
digitalWrite(3, LOW); 
digitalWrite(4, LOW);


Avec la température réelle, vous pouvez configurer une instruction if()...else
pour allumer les LED. En utilisant la température de référence comme point de départ, vous allumerez une LED pour chaque augmentation de température de 2 degrés au-dessus de cette température de référence. Vous rechercherez une plage de valeurs à mesure que vous parcourez l'échelle de température.


}else if(temperature >= baselineTemp+2 &&

temperature < baselineTemp+4){ 

digitalWrite(2, HIGH); 

digitalWrite(3, LOW);

digitalWrite(4, LOW);

}else if(temperature >= baselineTemp+4 && temperature < baselineTemp+6){ 

digitalWrite(2, HIGH);

digitalWrite(3, HIGH);

digitalWrite(4, LOW);

}else if(temperature >= baselineTemp+6){

digitalWrite(2, HIGH); 

digitalWrite(3, HIGH); 

digitalWrite(4, HIGH);

} delay(1)

}


En élargissant les types d'entrées lisibles, vous avez utilisé

analogRead() et le moniteur série pour suivre les changements dans

votre Arduino. Il est désormais possible de lire un grand nombre

de capteurs et d'entrées analogiques.


jeudi 19 juin 2025

Assistant feux de route toujours activé au démarrage du moteur Golf 7

 



Activation automatique de l'essuie-glace arrière

STG 09
Autorisation d'accès : 31347
Ajustement

Essuie-glace arrière
Essuie-glace arrière automatique
Valeur activée

Reconnaissance du klaxon avec et sans système d'alarme antivol

STG 09
Autorisation d'accès : 31347
Ajustement

Signaux de rétroaction Valeur
de déverrouillage de la rétroaction acoustique
à activer

Valeur de verrouillage du retour acoustique
sur actif

Durée du retour acoustique du pavillon unique
réglée sur court

Valeur de retour acoustique du contrôle du menu
sur actif

Fermeture en cas de pluie (jusqu'à l'année modèle 2014)

STG 09
Autorisation d'accès : 31347
Ajustement

Contrôle d'accès 2
Rain Close
Value sur Permanent

Menu de contrôle de pluie fermer
la valeur à active

Sélectionnez l'octet 0 du codage de
l'unité de contrôle RLFS
, activez le bit 2

Afficher la température de l'huile



Codage STG 17

Octet 10, activer le bit 1

Activer le changement d'heure automatique



Autorisation d'accès STG 5F :
ajustements 20103

Heure d'été :
valeur automatique pour l'Europe (par défaut : manuel)



Réglages du système de nettoyage des phares

STG 09
Autorisation d'accès : 31347
Ajustement

Nettoyage des phares
Nombre d'activations du lave-glace avant par activation SRA
Ajuster la valeur (par défaut 5)

Ajuster la valeur du délai SRA
(par exemple 2000 ms)


Ajuster la valeur du temps de lavage SRA


Assistant feux de route toujours activé au démarrage du moteur

STG 09
Autorisation d'accès : 31347
Ajustement

Fonction d'éclairage d'assistance, valeur
de réinitialisation de l'assistant de feux de route
non action

Feux de jour américains (non autorisés sur la voie publique, à des fins d'exposition uniquement) 

STG 09
Autorisation d'accès : 31347
Ajustement

Light0BLK

Fonction d'éclairage Valeur C0
sur les feux de jour

Valeur de gradation CD 0
Valeur de réglage (pas plus de 30 % pour les halogènes)

Fonction d'éclairage
Valeur E0 sur phase sombre du clignotant gauche

Valeur de gradation EF0
valeur à 0

Valeur EF0 de la direction de gradation
à minimiser

Light1BLK
Fonction d'éclairage Valeur C1
sur feu de jour

Valeur de gradation CD1
Valeur de réglage (pas plus de 30 % pour les halogènes)

Fonction d'éclairage Valeur E1
sur phase sombre du clignotant droit

Valeur de gradation EF1
à 0

Valeur EF de la direction de gradation
à minimiser



Désactiver la fonction start/stop : golf 7

 




Codage sur la VW Golf VII


Le codage des véhicules VW Golf 7 nécessite le kit de diagnostic (basé sur CAN) 

pour véhicules VAG.

Installation ultérieure d'une caméra de recul :

  • Article requis : Ensemble de caméra de recul pour VW Golf 7 (avec jeu de câbles)
  • Compatible avec
    • Appareil de navigation haut de gamme (PR n° 7UG)
    • Norme relative aux appareils de navigation (Pr-No. 7UF)
    • Discovery Media (PR n° 5G1)
  • Instructions :
  • Codage:
    • Info divertissement STG 5F (codage long STG) : activer la fonction 10, octet 19, bit 4
    • Si PDC est présent : STG 10 (Aide au stationnement) (STG Long Coding) : Activer la fonction 10, octet 2, bit 4

Désactiver la fonction start/stop :

  • STG 19 (ajustement) :
    • Canal « (1)-Démarrage/Arrêt température extérieure température minimale préréglée » -> régler la valeur sur « 50 »
    • Canal « (2)-Démarrage/Arrêt température extérieure température maximale préréglée » -> régler la valeur sur « 50 »

Lève-vitre – désactiver la fonction « Stop » à l’ouverture de la porte :

  • Sélectionnez STG 09 (réseau de bord) (autorisation d'accès STG) :
    • Fonction 16
    • Entrez le code d'accès 31347
    • Réglage STG : Fonction 10
    • (13)-Contrôle d'accès 2-Annuler le délai de libération FH lorsque la porte est ouverte
    • Définir la valeur sur inactif

Ouvrir le hayon automatiquement à l'aide de la télécommande (clé) :

  • Remplacez les amortisseurs par des amortisseurs Go-Simply
  •  Codage:
    • STG 46 (système de confort)
    • Codage (07)
    • Octet 01, activer le bit 4

Activation automatique du « Coming Home » (sans levier de feux de route) :

  • STG 09 (réseau embarqué)
  • Autorisation d'accès STG
  • Fonction 16
  • Entrez le code d'activation 31347
  • Réglage STG
  • Fonction 10
  • (1) Éclairage de confort - Statut d'installation Coming Home Select
  • Sélectionnez « Automatique »

mercredi 18 juin 2025

AIDE AU FREINAGE D’URGENCE

 




GÉNÉRALITÉS

Le système AEBS est une nouvelle fonctionnalité disponible sur ALASKAN. Il informe le conducteur des risques de collision avec le véhicule qui le précède et actionne les freins si le risque de collision augmente. Cela permet d'éviter une collision ou de limiter les dommages en cas d'accident.

Vitesse d’activation :

- De 5 à 200 km/h derrière un véhicule en mouvement,

-
De 5 à 80 km/h derrière un véhicule à l’arrêt.

Le freinage maximum est activé uniquement si la vitesse est inférieure à 40 km/h.

Le système AEBS  utilise uniquement un radar situé derrière le bouclier avant (pas de caméra). La fonction est désactivable depuis le tableau de bord (se réactive à chaque démarrage).


1. Alerte

Lorsque la distance entre les 2 véhicules diminue, un premier avertissement apparaît sur l'écran d'assistance à la conduite.

 Il s'accompagne d'un signal sonore, afin d'avertir le conducteur que la distance par rapport au véhicule devant est trop courte. 

La distance varie en fonction de la vitesse du véhicule et correspond à un temps inter véhicule de 2,6 secondes environ.

Avertissement de collision frontale

2. Ralentissement

Si le conducteur ne réagit pas au premier avertissement et continue à s'approcher dangereusement du véhicule qui le précède, un deuxième avertissement apparaît sur l'écran d'assistance à la conduite. 

Il s'accompagne d'un signal sonore différent. Le système commence à freiner légèrement (décélération de 0,6 G soit 5,88 m/s²) afin de ralentir le véhicule.

La distance varie en fonction de la vitesse du véhicule et correspond à un temps inter véhicule de 1,4 seconde environ.

3. Freinage maximum

Si la situation ne change pas, le système AEBS applique un freinage maximum (jusqu’à 1G soit 9,81 m/s²). La distance varie en fonction de la vitesse du véhicule et correspond à un temps inter véhicule de 0,6 seconde. Soit :

- 6,5 mètres à 40 km/h,

- 1,5 mètre à 10 km/h.

En général, les conducteurs réagissent avant que le système n'applique le freinage d'urgence. À plus de 40 km/h, le freinage maximum est réduit à un freinage partiel (0,6G).

Le système AEBS est inhibé lorsque :

- La fonction est désactivée au tableau de bord,

- La fonction est en défaut,

- La marche arrière est engagée,

- La distance augmente entre les 2 véhicules,

- Le conducteur freine,

- Le conducteur accélère.

Lorsque l’ESC est désactivé, seul le freinage de niveau 1 est activé.


COMPOSITION

Le radar ne comporte aucun réglage de site, ni d’azimut.

C’est lors de la procédure d’alignement que le système restreint la zone de détection.

Radar

Le calculateur ADAS gère la fonction AEBS. Il collecte les informations et si besoin :

- Demande le freinage partiel ou d’urgence au calculateur ESC,

- Pilote le relais de freinage pour allumer les feux stop,

- Commande le témoin d’alerte sonore,

- Demande l’affichage des alertes et témoins au tableau de bord,

- Demande la coupure d’injection au calculateur moteur,

Informations arrivant au calculateur ADAS : Tableau de bord :

Activation / désactivation de la fonction.

ECM :

- Couple moteur

- Position accélérateur

- Régime moteur

- Position pédale de frein.

TCM :

- Rapport engagé.

Synoptique de la fonction

ESC :

- Pression de freinage

- Vitesse véhicule

- Angle de lacet.

- Angle volant :

- Sens de rotation

Vitesse de rotation.

Radar :

- Temps inter véhicule.

Allumage des feux stop

En fonctionnement normal, l’appui sur le contacteur de stop allume les feux stop via la position repos du relais de freinage.

En cas de freinage d’urgence, le relais de freinage est piloté directement par le calculateur ADAS. Il existe un deuxième contacteur de stop qui informe directement de calculateur injection


REPARATION

La procédure d’alignement est à réaliser en cas de :

- Réparation suite à un choc avant

- Remplacement du radar

- Intervention sur les trains roulants

- Présence de DTC relatif à un désalignement.

Avant de commencer la procédure d’alignement :

- Mettre le véhicule sur un sol plat

- Dégager la zone sur plus de 2 mètres autour du véhicule

- Effectuer la mise à pression des pneumatiques

- Vider le véhicule

- Remplir le réservoir à carburant

- Nettoyer la zone du bouclier où se situe le radar

- Vérifier l’état de charge de la batterie

- Vérifier la conformité du support de radar

La procédure d’alignement à l’outil CLIP doit respecter les points suivants :

- Contact mis.

- Sélectionner le calculateur RADAR LASER.

- Sélectionner la commande VP009 REG RADAR ONDES MM dans le menu « Réparation ».

- Lancer la procédure et attendre le message : « Alignement terminé ».

- Contrôler les valeurs d’alignement affichées sur l’écran :

- Les angles mesurés doivent être inférieurs à + 3,00 °.

En cas de message d’erreur ou de désalignement supérieur aux valeurs, vérifier :

- Le bon positionnement de la cible.

- L’absence de DTC.

- L’état du support de radar.

- La mise du contact.

- Que le véhicule n’a pas bougé.

Puis recommencer la procédure.



capteur ultrasonique avec Arduino

 Dans ce projet, nous utiliserons un capteur à ultrasons pour détecter un intrus. Ce projet est polyvalent et peut être utilisé et adapté de...