Aller au contenu


dydyouaki

Inscrit(e) (le) 24 sept. 2010
Déconnecté Dernière activité mai 25 2020 06:43
*****

Sujets que j'ai initiés

Circuit interrupteur avec Delay

19 février 2015 - 06:52

Salut ! 

 

Je viens a vous ce soir car je n'arrive pas a trouver une solution a mon probleme. 

 

J'ai une amie qui voudrais se lancer dans l'esthetique et elle a besoin d'un appareil UV pour secher le vernis a ongles de ses clientes. Je voudrais lui ajouter un interrupteur avec une fonction delay , je ne trouve pas le mot exact pour decrite ce que je veux. Mais je voudrais en fait que son appareil UV fonctionne pendant 15 secondes , le temps qu'il faut pour secher les ongles des clientes , car les exposer trop longtemps aux UV , rend des effets indesirables. 

 

Connaissez vous un circuit qui me permet de le rajouter a son appareil ou alors un lien avec l'article en question , car je ne sais pas quoi taper sur google.

 

Merci d'avance.


Presentation de U.Bot

30 octobre 2014 - 11:18

voila la présentation de mon robot V1.0 et bientôt je mettrais la Version V2.0. Donc dans un premier temps les composants :

 

_Arduino (Mega2560 dans mon cas)

_Kit Magician Châssis (contient: 2 moteurs, 2 roues , un châssis , une roue folle , support piles)

_Contrôleur de moteur L293D

_Capteur infrarouge TSOP1838 (voir modèle joint)

_Télécommande infrarouge (télé, DVD, ou n'importe)

_Pile 9V (alimention Arduino)

_4 piles AA 1.5V (alimentation moteurs)

 

ensuite le schéma électronique (Le capteur Infrarouge n'est pas bon mais le câblage oui , regarder image jointe du capteur )

 

Fichier joint  CircuitV1.0.jpg   252,2 Ko   218 téléchargement(s)

 

Et pour finir le code ! 

Télécharger la bibliotheque :  NECIRrcv.h et installer la sur Arduino.

 

Ensuite il faut d'abord noter les codes Hex des touches de la télécommande pour les attribuer a des directions/ordres. Donc on upload le code suivant et des qu'il est uploader , ouvrir le serial monitor et appuyer sur une touches de la télécommande pour afficher a l'écran le code HEX de la touche pressée. Après avoir noter la touche et son code vous aller copier le code HEX dans la partie a changer du code :

// telecharger la librairie sur ce lien http://www.4shared.com/zip/JgqhuOpr/NECIRrcv.html
#include <NECIRrcv.h>

//declaration du capteur qui est sur le pin 10
#define IRPIN 10 
//declaration des moteurs + L293D
#define motor1Pin1 3
#define motor1Pin2 4
#define motor2Pin1 6
#define motor2Pin2 7
#define enable1 2
#define enable2 5

//Partie du code a changer ! 
#define n1 3877174785 //noter le code HEX ,reçu sur le serial monitor pour la touche 1
#define n2 3108437505 // faites de même avec les autres
#define n3 3191995905
#define n4 3058302465
#define n5 3125149185

NECIRrcv ir(IRPIN) ;
unsigned long ircode; // Variable servant à mémoriser le code reçu

void setup()
{
//reglage des moteurs en mode sortie
pinMode(motor1Pin1, OUTPUT);
pinMode(motor1Pin2, OUTPUT);
pinMode(motor2Pin1, OUTPUT);
pinMode(motor2Pin2, OUTPUT);

Serial.begin(9600);
ir.begin() ;

}

void loop()
{
while (ir.available()) // tant que le capteur est disponible ...
{
// Lire et mémoriser le code dans la variable ircode
ircode = ir.read();
Serial.print(ircode);
switch(ircode)
{
case n1:
{
digitalWrite(motor1Pin1, HIGH);
digitalWrite(motor1Pin2, LOW);
digitalWrite(motor2Pin1, HIGH);
digitalWrite(motor2Pin2, LOW);
break;
}
case n2:
{
digitalWrite(motor1Pin1, LOW);
digitalWrite(motor1Pin2, HIGH);
digitalWrite(motor2Pin1, LOW);
digitalWrite(motor2Pin2, HIGH);
break;
}
case n3:
{
digitalWrite(motor1Pin1, HIGH);
digitalWrite(motor1Pin2, LOW);
digitalWrite(motor2Pin1, LOW);
digitalWrite(motor2Pin2, HIGH);
break;
}
case n4:
{
digitalWrite(motor1Pin1, LOW);
digitalWrite(motor1Pin2, HIGH);
digitalWrite(motor2Pin1, HIGH);
digitalWrite(motor2Pin2, LOW);
break;
}
case n5:
{
digitalWrite(motor1Pin1, LOW);
digitalWrite(motor1Pin2, LOW);
digitalWrite(motor2Pin1, LOW);
digitalWrite(motor2Pin2, LOW);
break;
}
} 
}
} 

Re-Uploader le code pour que le robot fonctionne avec la télécommande.


Robot telecommandé avec IR

13 octobre 2014 - 09:29

Salut a tous ,

 

voila donc je viens de réaliser dernièrement un robot éviteur d'obstacle , j'ai utiliser un capteur Ultrason ,un servo pour le balayage du capteur ,un châssis Magician acheter sur internet avec 2 moteurs , un L293D et le tout basé sur une carte Arduino Mega2560. Il marche très bien et prochainement je vous ferais une vidéo de celui ci avec des explications et bien sur le code source ;)

 

Mais en attendant j'ai besoin de vous car je voudrais rendre ce robot un peu plus Sympa en lui rajoutant le contrôle par une télécommande infrarouge (télécommande de télévision).

Donc dans un premier temps je vais rendre ce robot seulement contrôlable par la télécommande IR , je vais enlever le capteur US et le servo de balayage. Quand j'aurais réussis je mettrais ces 2 options au robot : Autonome(capteur US) et contrôlable (Télécommandé).

 

 

J'ai donc commencé a bossé sur la partie Programmation de mon robot puisqu'il est déjà tout prêt. J'utilise un capteur IR (voir image jointe) et une télécommande de télévision que j'ai trouvé. J'ai donc utiliser ce code pour recevoir les données de ma télécommande et les convertir en nombre Décimale :

#include <IRremote.h>

int RECV_PIN = 11;

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, DEC);
    irrecv.resume(); // Receive the next value
  }
  delay(100);
} 

J'ai ouvert le moniteur et noter les touches que j'avais besoin en l'occurrence :  les 4 touches fléchés pour les directions du robot et le bouton central OK pour l'arrêt du robot.

 

Après cela j'ai essayé le code du robot : 

#include <IRremote.h>
#include <IRremoteInt.h>

//declaration des moteurs + L293D
#define motor1Pin1 3
#define motor1Pin2 4
#define motor2Pin1 6
#define motor2Pin2 7
#define enable1 2
#define enable2 5
 
//declaration des mouvements + codes telecommande en DEC
#define AVANT 2155813095
#define ARRIERE 2155831965
#define GAUCHE 2155840125
#define DROITE 2155844205
#define STOP 2155848285


 
unsigned long ircode; // Variable servant à mémoriser le code reçu
 
void setup()
{
     //reglage des moteurs en mode sortie
     pinMode(motor1Pin1, OUTPUT);
     pinMode(motor1Pin2, OUTPUT);
     pinMode(motor2Pin1, OUTPUT);
     pinMode(motor2Pin2, OUTPUT);
 
     ir.begin(); //commencer la reception IR
}
 
void loop()
{
   while (ir.available()) // tant que le capteur est disponible ...
   {
     // Lire et mémoriser le code dans la variable  ircode
      ircode = ir.read();
 
      if (ircode == AVANT) avant();
      if (ircode == ARRIERE) arriere();      
      if (ircode == GAUCHE) gauche();
      if (ircode == DROITE) droite();
      else if (ircode == STOP) arret();
   }
}
 
void avant() //aller en avant
{
    digitalWrite(motor1Pin1, HIGH);
    digitalWrite(motor1Pin2, LOW);
    digitalWrite(motor2Pin1, HIGH);
    digitalWrite(motor2Pin2, LOW);
}
 
void arriere() //aller en arriere
{
    digitalWrite(motor1Pin1, LOW);
    digitalWrite(motor1Pin2, HIGH);
    digitalWrite(motor2Pin1, LOW);
    digitalWrite(motor2Pin2, HIGH);
}
 
void gauche() //aller a droite
{
    digitalWrite(motor1Pin1, HIGH);
    digitalWrite(motor1Pin2, LOW);
    digitalWrite(motor2Pin1, LOW);
    digitalWrite(motor2Pin2, HIGH);
}
 
void droite() //aller a gauche
{
    digitalWrite(motor1Pin1, LOW);
    digitalWrite(motor1Pin2, HIGH);
    digitalWrite(motor2Pin1, HIGH);
    digitalWrite(motor2Pin2, LOW);
}
 
void arret() //stop/arret
{
    digitalWrite(motor1Pin1, LOW);
    digitalWrite(motor1Pin2, LOW);
    digitalWrite(motor2Pin1, LOW);
    digitalWrite(motor2Pin2, LOW);
}

mais celui me donne une erreur :

sketch_oct13b.ino: In function 'void setup()':
sketch_oct13b:31: error: 'ir' was not declared in this scope
sketch_oct13b.ino: In function 'void loop()':
sketch_oct13b:36: error: 'ir' was not declared in this scope
 
Donc je ne comprends pas quelle est l'erreur dans cette ligne car je dois lancer la réception Infrarouge a ce moment la ( a moins qu'il y a une autre manière)
Si quelqu'un pourrait m'éclairer sur ce point.
 
Et pour finir ,quelle est la distance maximum a peu prés que je peux garder entre le robot et la telecommande IR ?
 
Merci de votre aide.

Prototype module bluetooth

08 juin 2014 - 02:39

Salut a tous!
Ça fait du bien de revenir sur le forum :)/>

Aujourd'hui je suis là pour être un peu eclairci.Je m'explique.

J'ai mon cousin qui est developpeur d'application et programmeur de site internet. Et lui et moi ont avaient une idée, qui consiste pour l'instant a créer un prototype avec un module bluetooth et un moteur a vibration (comme sur les portables en mode silence) qui se glisse dans la poche. Puis creer une application qui resterait connecter par bluetooth sur ce module et dés que le signal s'affaiblit entre le module et le téléphone (cela signifie que l'on a perdu/oublié sont telephone) le moteur a vibration se met en marche.donc du coup on ne peut plus perdre son telephone car si on le perd ou on l'oublie le vibrateur se met en marche dans la poche.

Maintenant j'ai quelques questions :
1) faut il que je creer un cicuit eletronique pour la detection de l'affaiblissement du signal (je pense pas , mais bon)ou est ce que cela se fait dans la programmation ?
2) un simple petit moteur vibrateur , module bluetooth et arduino ferais l'affaire ?
3) est ce possible de le faire sans microcontroleur ?

Je vous remercie d'avance.

Projet - Sèche mains électrique

23 mai 2014 - 02:18

Salut a tous !

Cela fais longtemps que je n'étais plus sur le Forum, j'étudie et pas beaucoup de temps pour mon temps libre.
Mais je reviens aujourd'hui vous voir car, j'ai un projet que je dois réaliser pour un examen en électronique et le projet est un sèche main électrique.

Donc je dois seulement réaliser la partie "circuit électronique", je n'ai pas à le réaliser vraiment avec le coffrage et tout. Et a la place du moteur qui chauffe et qui envoie de l'air, un simple petit moteur suffira pour passer l'examen.
Maintenant j'ai travaillé avec mon partenaire (on est deux sur le projet) et avec un de nos professeurs et nous avons réalisés (sur ordinateur) le circuit adapter a notre projet.

Le sécheur de mains comporte un détecteur IR, dès qu'il détecte quelque chose il met en marche le moteur et allume une LED verte, s'il ne détecte rien le moteur reste éteint et une LED rouge est allumée.
Le problème c'est qu'il faut a présent le faire en réel et la on a un problème , je ne sais pas quelle sorte de photo-transistor et LED IR utiliser pour le détecteur.


Je mets en pièces jointes des images du circuit réaliser pour que ce soit plus clair et si vous pouvez nous aider a trouver le photo-transistor et la LED IR a utiliser pour le détecteur.


Merci d'avance.