Panier d’achat

Aucun produit dans le panier.

Potentiomètre linéaire Multi-Valeurs

8.00 د.م.

Tutoriel : Utilisation d’un potentiomètre avec Arduino


Matériel

  • Ordinateur
  • Carte Arduino
  • Câble USB pour connecter la carte Arduino au PC
  • 1x potentiomètre 100kOhm
  • 3x câble dupont

Schéma

Le potentiomètre est un composant passif. Pour mesurer un changement de résistance, nous envoyons un courant entre les bornes extrêmes du potentiomètre et nous pouvons lire la valeur de la tension résultante du pont diviseur ainsi créé sur sa borne du milieu.

arduino-potentiometer_cablage

Code

Pour afficher la valeur physique du capteur, il faut connaitre la règle de conversion qui sera souvent linéaire du type y= a*x+b.
Afin d’avoir un code propre et lisible, il est préférable de placer le code dans une sous fonction. Nous allons donc créer une fonction qui se charge de lire la valeur du capteur et de la convertir en valeur physique.

/* Potentiometer reading program */
// Constants
#define DELAY 500 // Delay between two measurements in ms
#define VIN 5 // V power voltage
#define R 10000 //ohm resistance value

// Parameters
const int sensorPin = A0; // Pin connected to sensor

//Variables
int sensorVal; // Analog value from the sensor
float res; //resistance value

void setup(void) {
  Serial.begin(9600);
}

void loop(void) {
  sensorVal = analogRead(sensorPin);
  res=sensorRawToPhys(sensorVal);
  Serial.print(F("Raw value from sensor= "));
  Serial.println(sensorVal); // the analog reading
  Serial.print(F("Physical value from sensor = "));
  Serial.print(res); // the analog reading
  Serial.println(F(" ohm")); // the analog reading
  delay(DELAY);
}

float sensorRawToPhys(int raw){
  // Conversion rule
  float Vout = float(raw) * (VIN / float(1023));// Conversion analog to voltage
  float phys = R *((Vout))/VIN; // Conversion voltage to resistance between GND and signal
  float phys2 = R *((VIN - Vout))/VIN; // Conversion voltage to resistance between 5V and signal
  return phys;
}

Application

Une application possible avec un potentiomètre est le contrôle de la luminosité d’une LED. Pour cela, il n’est pas nécessaire de convertir le signal du capteur en valeur physique mais simplement de convertir le signal du potentiomètre en une valeur de commande pour la LED.

arduino-potentiometer-led cablage
/* Potentiometer controlling lamp program */
// Constants
#define DELAY 20 // Delay between two measurements in ms
#define MIN_RAW 0 // Analog minimum value
#define MAX_RAW 1023 // Analog maximum value
#define MIN_CMD 0 // Digital minimum value
#define MAX_CMD 200 // Digital maximum value

// Parameters
const int sensorPin = A0; // Pin connected to sensor
const int ledPin = 3; // Pin connected to sensor

//Variables
int sensorVal; // Analog value from the sensor
int cmd; //Led command value

//Main
void setup(void) {
  Serial.begin(9600);
  pinMode(ledPin,OUTPUT);
}

void loop(void) {
  sensorVal = analogRead(sensorPin);
  cmd=sensorToLed(sensorVal);
  analogWrite(ledPin,cmd);
  delay(DELAY);
  Serial.print("Sensor : ");
  Serial.println(sensorVal);
  Serial.print("Command : ");
  Serial.println(cmd);
}

//Functions
int sensorToLed(int raw){
  int val = map(sensorVal, MIN_RAW, MAX_RAW, MIN_CMD, MAX_CMD);
  val=max(val,MIN_CMD);
  val=min(val,MAX_CMD);
  return val;
}

Plus d’information visite notre page Facebook.


 
Valeur

5K, 10K, 100K

Avis

Il n’y a pas encore d’avis.

Soyez le premier à laisser votre avis sur “Potentiomètre linéaire Multi-Valeurs”

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Tous les résultats de recherche
×