Vous êtes sur la page 1sur 48

Avoid module

Le module Avoid permet dviter les obstacle, voici le branchement de ce module


Voici un code Arduino simple pour pouvoir le faire fonctionner :

int Led=13;
int buttonpin=3;
int val;
void setup()
{
pinMode(Led,OUTPUT);
pinMode(buttonpin,INPUT);
}
void loop()
{
val=digitalRead(buttonpin);
if(val==HIGH)
{
digitalWrite(Led,HIGH);
}
else
{
digitalWrite(Led,LOW);
}
}
Avoid module
Le module Avoid permet dviter les obstacle, voici le branchement de ce module
Voici un code Arduino simple pour pouvoir le faire fonctionner :

int Led=13;
int buttonpin=3;
int val;
void setup()
{
pinMode(Led,OUTPUT);
pinMode(buttonpin,INPUT);
}
void loop()
{
val=digitalRead(buttonpin);
if(val==HIGH)
{
digitalWrite(Led,HIGH);
}
else
{
digitalWrite(Led,LOW);
}
}
Analog Temp Module

Analog temp module permet de rcuperer une temprature laide de la


thermistance et de lenvoyer sous forme analogique.

Voici un code Arduino qui nous permet de rcuprer la temprature par le


biais du port srie.

#include <math.h>
double Thermister(int RawADC) {
double Temp;
Temp = log(((10240000/RawADC) - 10000)); Temp = 1 / (0.001129148 +
(0.000234125 + (0.0000000876741 * Temp * Temp ))* Temp );
Temp = Temp - 273.15; // Convert Kelvin to Celcius return Temp;
}
void setup() {
Serial.begin(9600);
} void loop()
{
Serial.print(Thermister(analogRead(0)));// display Fahrenheit
Serial.println("c");
delay(500);

}
7 color flash
Le 7 color flash est un module qui comprend une LED blanche

Voici un code Arduino simple pour pouvoir le faire fonctionner :

void setup() {
// initialize the digital pin as an output.
// Pin 13 has an LED connected on most Arduino boards:
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH); // set the LED on
delay(2000); // wait for a second
digitalWrite(13, LOW); // set the LED off
delay(2000); // wait for a second
}
Ball Switch Module

Le ball switch module permet, lorsquil est inclin, de passer un niveau


1 logique, on peut lutiliser pour activer certains modules ou capteurs
lorsque linclinaison est trop leve

Il faut le brancher :
- A la masse du ct -
- A vcc sur la broche du milieu
- A lentre Digitale de lArduino du ct S
Voici un code Arduino simple pour pouvoir le faire fonctionner :

int Led=13;
int buttonpin=3;
int val;
void setup()
{
pinMode(Led,OUTPUT);
pinMode(buttonpin,INPUT);
}
void loop()
{
val=digitalRead(buttonpin);
if(val==HIGH){
digitalWrite(Led,HIGH);
}else{
digitalWrite(Led,LOW);
}
}
Module Bouton :

La broche est relie la masse


La broche du milieu est relie au 3.3v ou 5v
La broche S correspond 5v lorsque lon appuie sur le bouton poussoir.
Voici un exemple Arduino pour allumer la Led interne de lArduino lorsque lon appuie sur le
bouton poussoir. Le branchement se fait comme sur la photo de la doc.

Int Led=13 ;
Int bouttonPin = 3 ;
//on dclare en variable globale la Led interne qui correspond la broche 1, ainsi que
la broche du bouton poussoir
void setup(){
pinMode(Led, OUTPUT);
pinMode(bouttonPin, INPUT);
}
void loop(){
If (bouttonPin == HIGH){
digitalWrite(Led, HIGH);
}
delay(100);
}
Digital Temp

Le module digital temp permet de calculer la temprature partir dune


thermistance.

Voici un code arduino simple pour faire fonctionner ce module de temperature :

int Led=13;
int buttonpin=3;
int val;
void setup()
{ pinMode(Led,OUTPUT);
pinMode(buttonpin,INPUT);
}
void loop()
{
val=digitalRead(buttonpin);
if(val==HIGH)
{
digitalWrite(Led,HIGH);
}else
{ digitalWrite(Led,LOW);
}
}
Flame Module

Le module Flame est capteur de flamme pour des longueurs d'onde entre 760 nm et 1100 nm
Voici le code Arduino pour le faire fonctionner.

int Led=13;
int buttonpin=3;
int val;
void setup()
{ pinMode(Led,OUTPUT);

pinMode(buttonpin,INPUT);
}
void loop()
{
val=digitalRead(buttonpin);
if(val==HIGH)
{ digitalWrite(Led,HIGH);
}e
lse
{ digitalWrite(Led,LOW);
}
}
Heartbeat

Le module Heartbeat permet de calculer les pulsations du cur.


Voici le code Arduino pour rcuprer les pulsations

int sensorPin = A5;


int ledPin = 13;
int sensorValue = 0;
void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
sensorValue = analogRead(sensorPin);
digitalWrite(ledPin, HIGH);
delay(sensorValue);
digitalWrite(ledPin, LOW);
delay(sensorValue);
Serial.println(sensorValue, DEC);
}
IR emit, IR incept

LIR mit est un metteur infrarouge, il permet de Controller tout type dobjet qui se pilote
avec un rcepteur infrarouge, cela peut tre une clim, une tlvision, un ampli
A linverse, le rcepteur Infrarouge permet, lorsquil reoit certains codes infrarouges,
activer des partie dun montage : cela peut tre lactivation dun module, faire clignoter une
Led, les possibilits sont illimits.
Lassociation de ses deux capteurs peut tre de rcuprer un code infrarouge, dune tl, et
de pouvoir le rutiliser avec un code Arduino. Il faut cependant tlcharger la bibliothque
IRremote

Emetteur Infrarouge Rcepteur Infrarouge


Cblage du rcepteur IR pour le code Arduino

Branchement de l'metteur IR pour le code Arduino


Voici maintenant les codes Arduino simples pour faire fonctionner lmetteur et le rcepteur
infrarouge

Le code de lmetteur infrarouge qui permet dallumer ou dteindre une tl Sony, les codes pour
les allumer et teindre sont disponibles sur internet.
#include <IRremote.h>
IRsend irsend;
void setup()
{
Serial.begin(9600);
}

void loop()
{
for (int i = 0; i < 50; i++) {
irsend.sendSony(0xa90, 12); // Sony TV power code
delay(40);
}
}

Le code Arduino du rcepteur infrarouge:

#include <IRremote.h>
int RECV_PIN = 11; //define input pin on Arduino IRrecv irrecv(RECV_PIN);
decode_results results;
void setup() {
Serial.begin(9600);
irrecv.enableIRIn(); // Start the receiver
}

void loop() {
if (irrecv.decode(&results)) {
Serial.println(results.value, HEX);
irrecv.resume(); // Receive the next value
}
}
Joystick Module

Le module joystick fonctionne avec deux potentiomtres, un sur chaque axe (x,y) , et, selon
la position du joystick on peut retrouver sa position en fonction des valeur des rsistances.

Voici un code Arduino simple pour rcuperer les valeurs en (x,y) du joystick. La valeur Z
correspond une pression sur le joystick, cest donc une sortie digitale, alors que pour les
axes (x,y) ce sont des valeurs analogiques

int value = 0;
void setup()
{
pinMode(7, OUTPUT);
Serial.begin(9600);
}
void loop()
{
value = analogRead(0);
Serial.print("X:");
Serial.print(value, DEC);
value = analogRead(1);
Serial.print(" | Y:");
Serial.print(value, DEC);
value = digitalRead(7);
Serial.print(" | Z: ");
Serial.println(value, DEC);
delay(100);
}
Laser Emit Module
Le laser Emit Module est un metteur laser

Voici un code Arduino simple pour faire fonctionner lmetteur laser :

void setup()
{
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
}
Light Blocking Module

Le Light Blocking est un module se branchant comme sur limage ci-dessous

int Led=13;
int buttonpin=3;
int val;
void setup()
{
pinMode(Led,OUTPUT);
pinMode(buttonpin,INPUT);
}
void loop()
{
val=digitalRead(buttonpin);
if(val==HIGH){
digitalWrite(Led,HIGH);
}else{
digitalWrite(Led,LOW);
}
}
Linear Hall Module
Le linear hall module sert dtecter les ondes magntique laide de leffet hall, ce module
passe un niveau 1 logique lorsquil dtecte les ondes magntiques
Voici un code Arduino simple pour le faire fonctionner :

int Led=13;
int buttonpin=3;
int val;
void setup()
{
pinMode(Led,OUTPUT);
pinMode(buttonpin,INPUT);
}
void loop()
{ val=digitalRead(buttonpin);
if(val==HIGH)
{
digitalWrite(Led,HIGH);
}else{
digitalWrite(Led,LOW);
}
}
Module Tracking
Le module Tracking permet de suivre une ligne au sol
Voici un code simple Arduino pour le faire fonctionner

int Led=13;
int buttonpin=3;
int val;
void setup()
{ pinMode(Led,OUTPUT);
pinMode(buttonpin,INPUT);
}
void loop()
{
val=digitalRead(buttonpin);
if(val==HIGH)
{ digitalWrite(Led,HIGH);
}else
{ digitalWrite(Led,LOW);
}
}
Passive buzzer module

Le passivebuzzer module est un buzzer passif, il a la particularit dtre actif lorsquon lui
envoie un signal avec une PWM, contrairement un buzzer actif qui fonctionne que lorsquon
lui envoie un signal continu.
Voici un code Arduino qui peut activer le buzzer :
int buzzer=8;
void setup()
{
pinMode(buzzer,OUTPUT);
}
void loop()
{
unsigned char i,j;
while(1)
{
for(i=0;i<80;i++)
{
digitalWrite(buzzer,HIGH);
delay(1);
digitalWrite(buzzer,LOW);
delay(1);
}
for(i=0;i<100;i++)
{
digitalWrite(buzzer,HIGH);
delay(2);
digitalWrite(buzzer,LOW);
delay(2);
}
}
Photoresistor Module
Ce module fonctionne laide dune photorsistance, les photorsistances sont des semi-
conducteurs photosensibles, en plus davoir une sensibilit leve, un temps de rponse
rapide. Il utilise une entre analogique de lArduino pour donner une valeur prcise de la
quantit de lumire reue.

La broche S se branche sur lentre analogique de lArduino


La broche du milieu se branche au vcc
La broche - se banche la masse

Voici un exemple de code Arduino pour le faire fonctionner :

int sensorPin = 2;
int value = 0;
void setup() {
Serial.begin(9600);
}
void loop()
{
value = analogRead(sensorPin);
Serial.println(value, DEC);
delay(50);
}
Reed Switch

Le reed swich permet de lier les deux pins lorsquil y a un aimant


proximit du reed switch

Voici le code arduino pour le faire fonctionner :

int Led=13;
int buttonpin=3;
int val;
void setup()
{ pinMode(Led,OUTPUT);
pinMode(buttonpin,INPUT);
}
void loop()
{
val=digitalRead(buttonpin);
if(val==HIGH)
{ digitalWrite(Led,HIGH);
}else{
digitalWrite(Led,LOW);
}
}
Relay Module

Principe de fonctionnement
On souhaite commander de la puissance (une lampe, un moteur, une ventilation, le chauffage, en
220V par exemple...) partir d'un microcontrleur (carte Arduino).
Une carte Arduino ne supporte que 40mA et 5V par broche de sortie, et a donc besoin d'un
intermdiaire pour commander de la puissance.

Un relais permet de commuter (comme un interrupteur) cette puissance la demande.

Le module de relais utilis ici reoit en entre 5V et gre en sortie jusqu' 10A, 250 V/AC.

Voici un exemple de fonctionnement du module relais.

void setup() {
pinMode(relay,OUTPUT);
}
void loop() {
digitalWrite(relay,HIGH);
delay(1000);
digitalWrite(relay,LOW);
delay(1000);
}
Rotary encoders Module
Le Rotary encoders module fonctionne comme une roue codeuse

Voici un code Arduino pour allumer des Leds en fonction de la position de la roue codeuse
int redPin = 2;
int yellowPin = 3;
int greenPin = 4;
int aPin = 6;
int bPin = 7;
int buttonPin = 5;
int state = 0;
int longPeriod = 5000; // Time at green or red
int shortPeriod = 700; // Time period when changing
int targetCount = shortPeriod;
int count = 0;
void setup()
{
pinMode(aPin, INPUT);
pinMode(bPin, INPUT);
pinMode(buttonPin, INPUT);
pinMode(redPin, OUTPUT);
pinMode(yellowPin, OUTPUT);
pinMode(greenPin, OUTPUT);
}
void loop()
{
count++;
if (digitalRead(buttonPin))
{
setLights(HIGH, HIGH, HIGH);
}
else
{
int change = getEncoderTurn();
int newPeriod = longPeriod + (change * 1000);
if (newPeriod >= 1000 && newPeriod <= 10000)
{
longPeriod = newPeriod;
}
if (count > targetCount)
{
setState();
count = 0;
}
}
delay(1);
}
int getEncoderTurn()
{
// return -1, 0, or +1
static int oldA = LOW;
static int oldB = LOW;
int result = 0;
int newA = digitalRead(aPin);
int newB = digitalRead(bPin);
if (newA != oldA || newB != oldB)
{
// something has changed
if (oldA == LOW && newA == HIGH)
{
result = -(oldB * 2 - 1);
}
}
oldA = newA;
oldB = newB;
return result;
}
int setState()
{
if (state == 0)
{
setLights(HIGH, LOW, LOW);
targetCount = longPeriod;
state = 1;
}
else if (state == 1)
{
setLights(HIGH, HIGH, LOW);
targetCount = shortPeriod;
state = 2;
}
else if (state == 2)
{
setLights(LOW, LOW, HIGH);
targetCount = longPeriod;
state = 3;
}
else if (state == 3)
{
setLights(LOW, HIGH, LOW);
targetCount = shortPeriod;
state = 0;
}
}
void setLights(int red, int yellow, int green)
{
digitalWrite(redPin, red);
digitalWrite(yellowPin, yellow);
digitalWrite(greenPin, green);
}
Small sound/ Big Sound
Le Small Sound est un Module de dtection du son
Ce module dispose de deux sorties:
1, AO, la sortie analogique

2, DO, Qui change de niveau logique lorsque le son atteint un certain seuil, ce seuil est rglable avec
le potentiomtre.

Voici un code Arduino simple pour faire fonctionner ce module de son :

int sensorPin = A5; // select the input pin for the potentiometer
int ledPin = 13; // select the pin for the LED
int sensorValue = 0; // variable to store the value coming from the sensor
void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
sensorValue = analogRead(sensorPin);
digitalWrite(ledPin, HIGH);
delay(sensorValue);
digitalWrite(ledPin, LOW);
delay(sensorValue);
Serial.println(sensorValue, DEC);
}
SMD-RGB
Le SMD-RGB est un module de LED RGB (rouge, vert, bleu), ave lequelle vous pouvez
produire nimporte quelle couleur.

Le brochage des LED est inscrit en clair sur la carte


Le se branche la masse
Le R pour la LED rouge
Le G pour la Led verte
Le B pour la Led bleu
Voici le code Arduino simple pour pourvoir faire fonctionner ce module.

#define BLUE_LED_DIO 11
#define RED_LED_DIO 9
#define GREEN_LED_DIO 10

void setup()
{
pinMode(BLUE_LED_DIO, OUTPUT);
pinMode(RED_LED_DIO, OUTPUT);
pinMode(GREEN_LED_DIO, OUTPUT);
}

void loop()
{
int k;

for (k = 0; k <=255; k++)


{
analogWrite(RED_LED_DIO,255 - k);
analogWrite(GREEN_LED_DIO, k);
delay(10);
}

for (k = 0; k <=255; k++)


{
analogWrite(GREEN_LED_DIO,255 - k);
analogWrite(BLUE_LED_DIO, k);
delay(10);
}

for (k = 0; k <=255; k++)


{
analogWrite(BLUE_LED_DIO,255 - k);
analogWrite(RED_LED_DIO, k);
delay(10);
}
}
Tap Module
Le Tap Module permet de relier les deux pins lorsquil y dtecte un choc.
Voici le code arduino pour le faire fonctionner :

int Led=13;
int Shock=3
int val;
void setup()
{ pinMode(Led,OUTPUT);
pinMode(Shock,INPUT);
}
void loop()
{
val=digitalRead(Shock);
if(val==HIGH)
{ digitalWrite(Led,LOW);
}else
{ digitalWrite(Led,HIGH);
}
}
Temp and Humidity module
Ce module fonctionne avec le composant DHT11, qui permet de rcuprer
la temprature et lhumidit
Voici un code Arduino qui permet de rcuprer les valeurs de
temprature et dhumidit

int DHpin = 8;
byte dat[5];
byte read_data() { byte data; for(int i=0; i<8; i++) {
if(digitalRead(DHpin) == LOW) { while(digitalRead(DHpin) == LOW); //50us

delayMicroseconds(30);
if(digitalRead(DHpin) == HIGH) data |= (1<<(7-i));
while(digitalRead(DHpin) == HIGH);

} } return data;
} void start_test() { digitalWrite(DHpin,LOW);
delay(30);
digitalWrite(DHpin,HIGH); delayMicroseconds(40);

pinMode(DHpin,INPUT);
while(digitalRead(DHpin) == HIGH);
delayMicroseconds(80);
if(digitalRead(DHpin) == LOW);
delayMicroseconds(80);
for(int i=0;i<4;i++)
dat[i] = read_data(); pinMode(DHpin,OUTPUT);
digitalWrite(DHpin,HIGH);
} void setup() {
Serial.begin(9600);
pinMode(DHpin,OUTPUT);
}
void loop() {
start_test();
Serial.print("Current humdity = ");
Serial.print(dat[0], DEC);
Serial.print('.');
Serial.print(dat[1],DEC);
Serial.println('%');
Serial.print("Current temperature = ");
Serial.print(dat[2], DEC);
Serial.print('.');
Serial.print(dat[3],DEC);
Serial.println('C');
delay(700);
}
Temp Module
Le Temps Module est un module de temprature bas sur le DS18B20, envoi en analogique
le signal de la temperature
Voici un code Arduino simple pour le faire fonctionner : Il faudra cependant tlcharger le
librairie OneWire.h disponible sur le site Arduino

#include <OneWire.h> // Inclusion de la librairie OneWire

#define DS18B20 0x28 // Adresse 1-Wire du DS18B20


#define BROCHE_ONEWIRE 7 // Broche utilise pour le bus 1-Wire

OneWire ds(BROCHE_ONEWIRE); // Cration de l'objet OneWire ds

// Fonction rcuprant la temprature depuis le DS18B20


// Retourne true si tout va bien, ou false en cas d'erreur
boolean getTemperature(float *temp){
byte data[9], addr[8];
// data : Donnes lues depuis le scratchpad
// addr : adresse du module 1-Wire dtect

if (!ds.search(addr)) { // Recherche un module 1-Wire


ds.reset_search(); // Rinitialise la recherche de module
return false; // Retourne une erreur
}

if (OneWire::crc8(addr, 7) != addr[7]) // Vrifie que l'adresse a t


correctement reue
return false; // Si le message est corrompu on
retourne une erreur

if (addr[0] != DS18B20) // Vrifie qu'il s'agit bien d'un DS18B20


return false; // Si ce n'est pas le cas on retourne une erreur
Tilt Switch module
Le tilt switch module permet de relier deux fil entre eux selon
linclinaison, une bille de mtal cr le contact lorsque le module est
inclin.
Voici un code Arduino pour faire fonctionner le tilt switch

int buttonpin=3;
int val;
void setup()
{
pinMode(Led,OUTPUT);
pinMode(buttonpin,INPUT);
}
void loop()
{
val=digitalRead(buttonpin);
if(val==HIGH)
{ digitalWrite(Led,HIGH);
}else
{ digitalWrite(Led,LOW);
}}
ds.reset(); // On reset le bus 1-Wire
ds.select(addr); // On slectionne le DS18B20

ds.write(0x44, 1); // On lance une prise de mesure de temprature


delay(800); // Et on attend la fin de la mesure

ds.reset(); // On reset le bus 1-Wire


ds.select(addr); // On slectionne le DS18B20
ds.write(0xBE); // On envoie une demande de lecture du scratchpad

for (byte i = 0; i < 9; i++) // On lit le scratchpad


data[i] = ds.read(); // Et on stock les octets reus

// Calcul de la temprature en degr Celsius


*temp = ((data[1] << 8) | data[0]) * 0.0625;

// Pas d'erreur
return true;
}

// setup()
void setup() {
Serial.begin(9600); // Initialisation du port srie
}

// loop()
void loop() {
float temp;

// Lit la temprature ambiante ~1Hz


if(getTemperature(&temp)) {

// Affiche la temprature
Serial.print("Temperature : ");
Serial.print(temp);
Serial.write(176); // caractre
Serial.write('C');
Serial.println();
}
}
Touch Module
Le touch module est un module permettant de dtecter lorsque lon touche le bout du
module, avec le code Arduino en exemple, lorsque lon touche le module la Led passe un
niveau 1 logique, sinon la Led est hors tension.
Voici un code Arduino :
int Led=13;
int buttonpin=3;
int val;
void setup()
{
pinMode(Led,OUTPUT);
pinMode(buttonpin,INPUT);
}
void loop()
{
val=digitalRead(buttonpin);
if(val==HIGH)
{
digitalWrite(Led,HIGH);
}else{
digitalWrite(Led,LOW);
}
}
Module Two color (LED RB)

Ce module permet de Controller 2 Led, une verte et une rouge.

En se calquant sur la photo ci-dessous :

- la masse est connecte la broche la plus gauche


- La Led rouge se trouve au milieu
- La Led verte se trouve lextrmit droite
Voici le code Arduino qui va permettre de le faire fonctionner :

int redpin = 11; // selectionne la pin pour la LED rouge


int greenpin =10; // selectionne la pin pour la LED verte
int val;

void setup() {
pinMode(redpin, OUTPUT);
pinMode(greenpin, OUTPUT);
Serial.begin(9600);
}

void loop()
{
for(val=255; val>0; val--)
{
analogWrite(11, val);
analogWrite(10, 255-val);
delay(15);
}
for(val=0; val<255; val++)
{
analogWrite(11, val);
analogWrite(10, 255-val);
delay(15);
}
Serial.println(val, DEC);
}