Airsoft Krispies

Bonjour à tous et bienvenue


    Bombe en valise + lancement des missiles

    Partagez
    avatar
    Ariolas
    vis rouillée
    vis rouillée

    Messages : 33
    Date d'inscription : 25/08/2011
    Age : 26

    Bombe en valise + lancement des missiles

    Message par Ariolas le Mar 24 Juil - 13:45

    Bonjour à tous,

    Voici les plans d'une réalisation faites il y a quelques mois pour ma team (ACT - Yonne) pour apporter du solide lors de notre OP.

    Il s'agit d'une valise qui peux faire office de bombe solo ou, par un menu, nécessiter le raccordement d'une base de lancement de missiles.

    La valise est entièrement de moi pour l'idée générale, tandis que les missiles sont inspirés du tuto d'eyeshield.

    Voici une photo de l'ensemble final :

    Valise+missiles


    Valise solo



    Place au tuto !!!!!!

    Pour ce tuto, vous aurez besoin de quelques petites choses.

    _ Un fer à souder et ce qui faut pour s'en servir
    _ Savoir lire un plan électronique simple
    _ Un ordinateur pour programmer l'Arduino

    Matériel

    _ 1 valise
    _ 1 arduino duemilanove
    _ 1 écran LCD 2 * 16 ( j'ai pris un écran LCD "shield" pour plus de simplicité. Cela veut dire que j'ai juste a le clipser sur l'arduino)
    _ 3 LED pour la valise
    _ 7 résistances 220ohms
    _ 1 sirène 12V
    _ 4 transistor NPN ( BD135 pour moi il me semble. L'important c'est qu'ils soient commandés par un état HAUT sur la base ( petite doc sur les transistor en général ICI )
    _ 1 batterie 12V de scooter ( au gel de préférence, environ 30€, mais au moins, sa se met dans tout les sens sans couler)
    _ 4 interrupteurs à clé (pour ma part, des vieux neimann/antivol de scoot)
    _ 3 bouton poussoir
    _ 1 interrupteur type bascule aviation ( un membre m'a trouvé CE BOUTON qui est plutot classe )
    _ 2 embases MIDI 4fils
    _ 1 cable MIDI 4fils (on a pris du 3m que j'ai sertis moi même)

    Réalisation

    Je ne dirais rien ici pour les missiles, les tutos d'eyeshield sont merveilleusement bien fait, je ne pourrais pas faire mieux.

    Pour l'arduino, je vous conseil CE SITE pour débuter et comprendre comment envoyer le programme dans la carte.

    Voici le programme :
    Spoiler:
    Code:
    //Programme de la bombe d'airsoft

    // include the library code:
    #include <LiquidCrystal.h>

    // initialize the library with the numbers of the interface pins
    LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

    //Definition des broches:

    int bouton1 = 0;
    int etat1;
    int bouton2 = 1;
    int etat2;

    int bouton_cle1 = 2;
    int LED_1 = 3;

    int bouton_cle2 = 11;
    int LED_2 = 12;

    int bouton_bascule = 15;
    int alim_led_bascule = 16; //alimenter led bascule transistor

    int bouton_poussoir = 17;

    int sirene = 13;

    int verif_cable = 19;

    int bouton_autodestruction = 18;

    //variable de controle
    int test1 = 0; //progressiond ans le programme
    int test2 = 0; // controle pour ne compter chaque appuie sur bouton qu'une fois
    int compteur = 0;
    int arret = 0;
    int auto_destruction = 0; // controlle pour si activation apr cle ou autodestruction
    int cligno_led = 0; //controle de clignotement de la led du bouton a bascule
    int verification_cable = 0; // controle de cable, mise a 1 quand le controle est actif

    //variable de minutage
    int H = 0;
    int M = 0;
    int min_tmp = 0;
    int S = 0;

    //initialisation
    void setup()
    {             
      //definition des entrees
      pinMode(bouton1, INPUT);
      pinMode(bouton2, INPUT);
     
      pinMode(bouton_cle1, INPUT);
     
      pinMode(bouton_cle2, INPUT);
     
      pinMode(bouton_bascule, INPUT);
     
      pinMode(bouton_poussoir, INPUT);
     
      pinMode(bouton_autodestruction, INPUT);
     
      pinMode(verif_cable, INPUT);
      //6entrees utilisees
     
      //definition des sorties
      pinMode(LED_1, OUTPUT);
      pinMode(LED_2, OUTPUT);
      pinMode(alim_led_bascule, OUTPUT);
      pinMode(sirene, OUTPUT);
      //4sorties utilisees

     
      //definition des pullup
      digitalWrite(bouton1, HIGH);
      digitalWrite(bouton2, HIGH);
      digitalWrite(bouton_cle1, HIGH);
      digitalWrite(LED_1, LOW);
      digitalWrite(bouton_cle2, HIGH);
      digitalWrite(LED_2, LOW);
      digitalWrite(bouton_bascule, HIGH);
      digitalWrite(alim_led_bascule, LOW);
      digitalWrite(bouton_poussoir, HIGH);
      digitalWrite(bouton_autodestruction, HIGH);
      digitalWrite(sirene, LOW);
      digitalWrite(verif_cable, HIGH);
     
      lcd.begin(16, 2);
    }

    //programme

    void loop()
    {
     
      //reset des valeurs
      digitalWrite(sirene, LOW);
      digitalWrite(LED_1, LOW);
      digitalWrite(LED_2, LOW);
      auto_destruction = 0;
      arret = 0;
      H = 0;
      M = 0;
      S = 0;
      // definition du Timer
      do
      {
        if (digitalRead(bouton1) == LOW)
        {
          test1 = 1;
        }
        delay (500);
        lcd.clear();
       
        do
        {
          lcd.setCursor(0, 0);
          lcd.print("Verif cable?");
          lcd.setCursor(0, 1);
          lcd.print("NON");
          lcd.setCursor(10,1);
          lcd.print("OUI");
          if (digitalRead(bouton1) == LOW)
          {
            verification_cable = 1;
            delay (500);
          }
          if (digitalRead(bouton2) == LOW)
          {
            verification_cable = 0;
            delay (500);
          }
        } while ( (digitalRead(bouton1) == HIGH) && (digitalRead(bouton2) == HIGH) );
        lcd.clear();

       
     
        //definition de la valeur des heures
     
        do //incrementation heure
        {
        lcd.setCursor(0, 0);
        lcd.print("HEURES");
        lcd.setCursor(0, 1);
        lcd.print(H);
        lcd.setCursor(1, 1);
        lcd.print(":");
        lcd.setCursor(2, 1);
        lcd.print(M);
        lcd.setCursor(4, 1);
        lcd.print(":");
        lcd.setCursor(5, 1);
        lcd.print(S);
     
        etat2 = digitalRead(bouton2);
        if (etat2 == LOW)
     
        {
          /*digitalWrite(13, HIGH);
          delay (1000);
          digitalWrite(13, LOW);
          delay (1000);*/
       
          if (test2 == 0)
          {
            H = H + 1;
            if ( H % 10 == 0)
            {
              H = 0;
              lcd.clear();
            }
            test2 = 1;
          }
        }
        else
        {
          test2 = 0;
        }
     
        etat1 = digitalRead(bouton1);
        if (etat1 == LOW)
        {
          test1 = 2;
        }
        } while (test1 != 2);
     
        delay (500);
        lcd.clear();
     
        //definition de la valeur des minutes
     
        do //incrementation minutes
        {
        lcd.setCursor(0, 0);
        lcd.print("MINUTES");
        lcd.setCursor(0, 1);
        lcd.print(H);
        lcd.setCursor(1, 1);
        lcd.print(":");
        lcd.setCursor(2, 1);
        lcd.print(M);
        lcd.setCursor(4, 1);
        lcd.print(":");
        lcd.setCursor(5, 1);
        lcd.print(S);
     
        etat2 = digitalRead(bouton2);
        if (etat2 == LOW)
        {
          if (test2 == 0)
          {
            M = M + 1;
            if ( M % 60 == 0)
            {
              M = 00;
              lcd.clear();
           
            }
            test2 = 1;
          }
        }
        else
        {
          test2 = 0;
        }
     
        etat1 = digitalRead(bouton1);
        if (etat1 == LOW)
        {
          test1 = 3;
        }
        } while (test1 != 3);
     
        delay (500);
        lcd.clear();
     
        //definition de la valeur des secondes
       
        do //incrementation secondes
        {
     
        lcd.setCursor(0, 0);
        lcd.print("SECONDES");
        lcd.setCursor(0, 1);
        lcd.print(H);
        lcd.setCursor(1, 1);
        lcd.print(":");
        lcd.setCursor(2, 1);
        lcd.print(M);
        lcd.setCursor(4, 1);
        lcd.print(":");
        lcd.setCursor(5, 1);
        lcd.print(S);
     
        etat2 = digitalRead(bouton2);
        if (etat2 == LOW)
        {
          if (test2 == 0)
          {
            S = S + 1;
            if ( S % 60 == 0)
            {
              S = 0;
              lcd.clear();
            }
            test2 = 1;
          }
        }
        else
        {
          test2 = 0;
        }
     
        etat1 = digitalRead(bouton1);
        if (etat1 == LOW)
        {
          test1 = 4;
        }
        } while (test1 != 4);
     
     
        delay (500);
        lcd.clear();
     
        //choix de la validation ou de la correction. Bouton1 pour recommencer, Bouton2 pour valider
     
        do
        {
     
        lcd.setCursor(0, 0);
        lcd.print("VALIDER ?");
        lcd.setCursor(0, 1);
        lcd.print(H);
        lcd.setCursor(1, 1);
        lcd.print(":");
        lcd.setCursor(2, 1);
        lcd.print(M);
        lcd.setCursor(4, 1);
        lcd.print(":");
        lcd.setCursor(5, 1);
        lcd.print(S);
     
        etat2 = digitalRead(bouton2);
        if (etat2 == LOW)
        {
          if (test2 == 0)
          {
            test1 = 5;
            test2 = 1;
          }
        }
        else
        {
          test2 = 0;
        }
     
        etat1 = digitalRead(bouton1);
        if (etat1 == LOW)
        {
          test1 = 1;
        }
        } while (test1 == 4);
     
      } while (test1 < 5);
     
      if (verification_cable == 1)
      {
        lcd.clear();
       
        do
        {
          lcd.setCursor(0, 0);
          lcd.print("ATTENTION");
          lcd.setCursor(0, 1);
          lcd.print("Cable debranche");
        } while ( digitalRead(verif_cable) == LOW);
      }
     
      //attente
      lcd.clear();
      lcd.setCursor(0, 0);
      lcd.print("ATTENTE");
      lcd.setCursor(0, 1);
      lcd.print(H);
      lcd.setCursor(1, 1);
      lcd.print(":");
      lcd.setCursor(2, 1);
      lcd.print(M);
      lcd.setCursor(4, 1);
      lcd.print(":");
      lcd.setCursor(5, 1);
      lcd.print(S);
     
     
      do
      {
       
        //controle LED_1
        if(digitalRead(bouton_cle1) == LOW)
        {
          digitalWrite(LED_1, HIGH);
        }
        else
        {
          digitalWrite(LED_1, LOW);
        }
       
        //controle LED_2
        if(digitalRead(bouton_cle2) == LOW)
        {
          digitalWrite(LED_2, HIGH);
         
        }
        else
        {
          digitalWrite(LED_2, LOW);
         
        }
       
        //controle des interrupteurs
        if (digitalRead(bouton_cle1) == LOW && digitalRead(bouton_cle2) == LOW)
        {
          //digitalWrite(alim_bouton_bascule, LOW);
         
          if (digitalRead(bouton_bascule) == LOW)
          {
            digitalWrite(alim_led_bascule, HIGH); //alimentation du transistor de la led bascule
           
            if (digitalRead(bouton_poussoir) == LOW)
            {
              digitalWrite(alim_led_bascule, LOW);
              test1 = 6;
            }
          }
        }
        //test bouton autodestruction
        if (digitalRead(bouton_autodestruction) == LOW)
        {
          cligno_led = 1;
         
          while(cligno_led == 1 && digitalRead(bouton_autodestruction) == LOW) //tand que la variable est a 1, on fait clignoter la led : mise en etat haut de la led + 10 tests espacés de 50 ms, puis idem mais en led etat bas
          {
            digitalWrite(alim_led_bascule, HIGH);
            for (int j=0 ; j <= 10 ; j++)
            {
              if (digitalRead(bouton_poussoir) == LOW)
              {
                digitalWrite(alim_led_bascule, LOW);
                auto_destruction = 1;
                test1 = 6;
                cligno_led = 0;
              }
              delay(50);
            }
           
            digitalWrite(alim_led_bascule, LOW);
            for (int j=0 ; j <= 10 ; j++)
            {
              if (digitalRead(bouton_poussoir) == LOW)
              {
                digitalWrite(alim_led_bascule, LOW);
                auto_destruction = 1;
                test1 = 6;
                cligno_led = 0;
              }
              delay(50);
            }
               
          }
        }
        else
        {
          cligno_led = 0;
          digitalWrite(alim_led_bascule, LOW);
        }
      } while (test1 < 6);
     
      //Signal d'activation  si activation par autodestruction, 2sec + 1sec de silence + 2sec / Si activation apr clé 1sec + 0.5sec de silence + 1sec
      if(auto_destruction == 1)
      {
        digitalWrite(sirene, HIGH);
        delay(1000);
        delay(1000);
        delay(1000);
        digitalWrite(sirene, LOW);
      }
      else
      {
        digitalWrite(sirene, HIGH);
        delay(1000);
        digitalWrite(sirene, LOW);
        delay(500);
        digitalWrite(sirene, HIGH);
        delay(1000);
        digitalWrite(sirene, LOW);
      }
     
      //Compte à rebour
     
      do
      {
        lcd.clear();
        if(auto_destruction == 1)
        {
          lcd.setCursor(0, 0);
          lcd.print("Autodestruction");
        }
        else
        {
          lcd.setCursor(0, 0);
          lcd.print("Lancement dans :");
        }
        lcd.setCursor(0, 1);
        lcd.print(H);
        lcd.setCursor(1, 1);
        lcd.print(":");
        lcd.setCursor(2, 1);
        lcd.print(M);
        lcd.setCursor(4, 1);
        lcd.print(":");
        lcd.setCursor(5, 1);
        lcd.print(S);
     
     
        if ( S < 1)
        {
          //sonnerie de controle : 1 toutes les 10min, puis en dessous de 5min, une toutes les minutes
         
          min_tmp = M + H * 60;
          min_tmp = min_tmp % 10;
         
          if(min_tmp == 0)
          {
            digitalWrite(sirene, HIGH);
            delay(1000);
            digitalWrite(sirene, LOW);
          }
          else
          {
            if(M <= 5)
            {
              if(H == 0)
              {
                digitalWrite(sirene, HIGH);
                delay(1000);
                digitalWrite(sirene, LOW);
              }
            }
          }
         
         
          if ( M > 0 )
          {
            M = M - 1;
            S = 60;
          }
          else
          {
            if (H > 0)
            {
              H = H - 1;
              M = 59;
              S = 60;
            }
            else
            {
              //instructions à effectuer lors de l'arrivée à 0. Ici, on passe la broche 13 à l'état haut pour le test
           
              if(auto_destruction == 1)
              {
                test1 = 7;
                H = 0;
                M = 0;
                S = 0;
                lcd.clear();
                lcd.setCursor(0, 0);
                lcd.print("Autodestruction");
                lcd.setCursor(0, 1);
                lcd.print(H);
                lcd.setCursor(1, 1);
                lcd.print(":");
                lcd.setCursor(2, 1);
                lcd.print(M);
                lcd.setCursor(4, 1);
                lcd.print(":");
                lcd.setCursor(5, 1);
                lcd.print(S);
                digitalWrite(sirene, HIGH);
                delay(1000);
                delay(1000);
                delay(1000);
                delay(1000);
                delay(1000);
                delay(1000);
                delay(1000);
                delay(1000);
                delay(1000);
                delay(1000);
                digitalWrite(sirene, LOW);
              }
              else
              {
                test1 = 7;
                H = 0;
                M = 0;
                S = 0;
                lcd.clear();
                lcd.setCursor(0, 0);
                lcd.print("MISSILES TIRES");
                lcd.setCursor(0, 1);
                lcd.print(H);
                lcd.setCursor(1, 1);
                lcd.print(":");
                lcd.setCursor(2, 1);
                lcd.print(M);
                lcd.setCursor(4, 1);
                lcd.print(":");
                lcd.setCursor(5, 1);
                lcd.print(S);
                digitalWrite(sirene, HIGH);
                delay(1000);
                delay(1000);
                delay(1000);
                delay(1000);
                delay(1000);
                delay(1000);
                delay(1000);
                delay(1000);
                delay(1000);
                delay(1000);
                digitalWrite(sirene, LOW);
              }
             
            }
          }
       
        }
        S = S - 1;
       
             
      // delay(1000);

        for (int i=0 ; i <= 10 ; i++)
        {
         
          if(digitalRead(bouton_cle1) == HIGH)
          {
            digitalWrite(LED_1, LOW);
          }
          else
          {
            digitalWrite(LED_1, HIGH);
          }
         
          if(digitalRead(bouton_cle2) == HIGH)
          {
            digitalWrite(LED_2, LOW);
          }
          else
          {
            digitalWrite(LED_2, HIGH);
          }
         
          //Controle que les 2 bouton a cle sont toujours actifs. Si un des 2 est enlevé, la bombe est desamorcee
         
          if(auto_destruction != 1)
          {
            if(digitalRead(bouton_cle1) == HIGH || digitalRead(bouton_cle2) == HIGH)
            {
              if(arret != 1)
              {
                arret = 1;
                test1 = 7;
                digitalWrite(sirene,HIGH);
                delay(1000);
                delay(1000);
                delay(1000);
                digitalWrite(sirene,LOW);
              }
            }
          }
          else
          {
            if(digitalRead(bouton_autodestruction) == HIGH)
            {
              if(arret != 1)
              {
                arret = 1;
                test1 = 7;
                digitalWrite(sirene,HIGH);
                delay(1000);
                delay(1000);
                delay(1000);
                digitalWrite(sirene,LOW);
              }
            }
          }
       
          delay(99);
        }
     
       
      } while (test1 != 7);
     
     
      //desamorcage
      while (arret == 0)
      {
        if (digitalRead(bouton2) == LOW )
        {
          arret = 2 ;
        }
      }
      while (arret == 1)
      {
        lcd.clear();
        lcd.setCursor(0, 0);
        if(auto_destruction != 1)
        {
          lcd.print("MISSILES OFF");
        }
        else
        {
          lcd.print("Destruct OFF");
        }
        lcd.setCursor(0, 1);
        lcd.print(H);
        lcd.setCursor(1, 1);
        lcd.print(":");
        lcd.setCursor(2, 1);
        lcd.print(M);
        lcd.setCursor(4, 1);
        lcd.print(":");
        lcd.setCursor(5, 1);
        lcd.print(S);
     
        delay(100);
        if (digitalRead(bouton2) == LOW )
        {
          arret = 0;
        }
     
     
      }
    }

    Avec ce code, vous avez un bip toute les 10min, puis 1 bip toute les minutes en dessous de 10minutes de temps restant

    Ensuite, il suffit de souder autour de l'arduino les éléments du schéma suivant



    Pour l'arduino, je l'ai alimenté directement avec la batterie de 12V en mettant le +12V en coupure sur un neimann (non présent sur le schéma). Il suffit de relier le - dela batterie à une borne "ground" de l'arduino et le +12V à la borne Vin


    Pas grand chose à dire si ce n'est de faire attention, et d'être très minutieux. Les arduino sont assez costaud, mais par mesure de sécurité, je ne saurais que trop vous conseiller de revérifier 2 fois avant de brancher la batterie de 12V Wink

    Pour ceux qui veulent tester sans mettre la sirène, sachez que celle-ci est reliée à la broche 13, qui est nativement équipée d'une LED Wink

    Chez moi, pour la décoration, il s'agit d'une plaque en inox faite par un membre de la team. L’intérieur de la valise comporte un cadre en bois pour structurer le tout.




    Comme on voit, beaucoup de filasse, mais je n'ai pas trouver moyen de faire plus propre sans utiliser de CI.

    Pour le câble de test de présence des missiles, il s'agit d'une simple boucle avec la masse dans un boitier sur le pied des missiles. Les 2 autres fils servent a alimenter une ampoule pour indiquer le bon raccordement.

    EDIT :

    Voici un petit aperçue des missiles V2.

    Au programme :

    _ Missiles démontables (reste à trouver la caisse)
    _ Possibilité d'activer la détection de la présence des missiles sur le pieds

    J'ai repris le principe de la boucle de contrôle, sauf que cette fois je fait passer ma boucle par les 3 missiles, grâce à des prises JACK 5mm ( grosses prises, simple a câble, résistantes, et surtout pas chère en cas de besoin de changement)

    Voici la vidéo démonstrative
























    __________________________________________________________________________________________________
    Ajout des LEDs sous le logo et du grillage (simple bande a LEDs reliée sur le neimann de contrôle général)













    Ressources informatiques

    Ce lien vous mènera a mon dossier skydrive contenant en consultation toutes mes ressources pour cette valise avec la notice, le schéma, les photos...

    DOSSIER SKYDRIVE

    Ajout des script/photos sur le skydrive



    Dernière édition par Ariolas le Mar 29 Jan - 21:20, édité 7 fois
    avatar
    Stranger
    ecrou argent
    ecrou argent

    Messages : 419
    Date d'inscription : 01/07/2011
    Age : 27
    Localisation : Au royaume du Jambon et du Chocolat...

    Re: Bombe en valise + lancement des missiles

    Message par Stranger le Mar 24 Juil - 13:55

    Fichtre! Ca, c'est du beau matos! Une idée un peu tordue, pour signaler le lancement des missiles, on pourrait disposer des cartouches de poudre style farine dans les fausses tuyères, propulsée par des ventilateurs de PC, à condition de réussir à programmer une temporisation, non?
    avatar
    Coco pop's
    ecrou argent
    ecrou argent

    Messages : 278
    Date d'inscription : 07/09/2011
    Age : 23
    Localisation : Châteauroux

    Re: Bombe en valise + lancement des missiles

    Message par Coco pop's le Mar 24 Juil - 16:17

    Sacrilège d'utiliser un arduino pour ça !

    Mais pas mal quand même Smile
    avatar
    Ariolas
    vis rouillée
    vis rouillée

    Messages : 33
    Date d'inscription : 25/08/2011
    Age : 26

    Re: Bombe en valise + lancement des missiles

    Message par Ariolas le Mar 24 Juil - 16:43

    @stranger j'avais bien penser a une amorce, mais les missiles snt bouché au bout ^^"
    @coco en quoi est-ce un sacrilege? je trouve au contraire que cela laisse de tres nombreuses possibilités ^^ mais j'avoue que c'est dommage, car on utilise a peine 5% des capa du microcontrolleur, c'est comme tuer une mouche a coup de bazooka ^^"
    avatar
    Coco pop's
    ecrou argent
    ecrou argent

    Messages : 278
    Date d'inscription : 07/09/2011
    Age : 23
    Localisation : Châteauroux

    Re: Bombe en valise + lancement des missiles

    Message par Coco pop's le Mar 24 Juil - 16:45

    Ariolas a écrit:@stranger j'avais bien penser a une amorce, mais les missiles snt bouché au bout ^^"
    @coco en quoi est-ce un sacrilege? je trouve au contraire que cela laisse de tres nombreuses possibilités ^^ mais j'avoue que c'est dommage, car on utilise a peine 5% des capa du microcontrolleur, c'est comme tuer une mouche a coup de bazooka ^^"

    C'est pour ça que je dit sacrilège What a Face
    C'est pas 5% utilisé c'est 0.1% ^^
    avatar
    Omen
    vis rouillée
    vis rouillée

    Messages : 57
    Date d'inscription : 11/07/2012
    Age : 34
    Localisation : 69 - SE de Lyon

    Re: Bombe en valise + lancement des missiles

    Message par Omen le Mar 24 Juil - 22:05

    o_O Ca déchire ton merdier Shocked


    Félicitations!
    avatar
    Wood
    boulon d'argent
    boulon d'argent

    Messages : 1110
    Date d'inscription : 03/06/2011
    Age : 40
    Localisation : Liré

    Re: Bombe en valise + lancement des missiles

    Message par Wood le Mar 24 Juil - 22:39

    lovmach
    avatar
    pic-pac
    ecrou or
    ecrou or

    Messages : 663
    Date d'inscription : 20/06/2011
    Age : 36
    Localisation : Issoire (63)

    Re: Bombe en valise + lancement des missiles

    Message par pic-pac le Mar 24 Juil - 23:37

    Cool je vois que tu t'es remis sur ton arduino, ça fais super plaisir, moi j'ai pas encore fini mes petits projects avec mais bon il est possible que tu puisse m'aider un de ces 4, je suis entrain de faire ceci et j'ai une petite bombinette en preparation mais j'ai un petit soucis avec le code donc il va falloir la revoir un peu
    avatar
    Ariolas
    vis rouillée
    vis rouillée

    Messages : 33
    Date d'inscription : 25/08/2011
    Age : 26

    Re: Bombe en valise + lancement des missiles

    Message par Ariolas le Mer 25 Juil - 9:26

    petit up pour signaler l'ajout de quelques photos et d'un lien vers skydrive contenant les ressources necessaires (notice, plan, etc, etc)

    @pic-pac pas de soucis, si je peux t'aider, dit le moi Wink petit pm et on peu en causer ^^
    avatar
    DJABA

    Messages : 11
    Date d'inscription : 31/07/2012
    Age : 38
    Localisation : LIOMER

    Re: Bombe en valise + lancement des missiles

    Message par DJABA le Mer 1 Aoû - 0:24

    salut ARIOLAS super boulot
    juste une petite question sur le schéma on ne vois pas ou l'on branche l'écran lcd
    merci DJABA

    avatar
    Ariolas
    vis rouillée
    vis rouillée

    Messages : 33
    Date d'inscription : 25/08/2011
    Age : 26

    Re: Bombe en valise + lancement des missiles

    Message par Ariolas le Jeu 2 Aoû - 20:29

    Salut DJABA, il s'agit d'un "shield", qui est une plaquette precablée, que tu a juste a poser sur l'arduino.

    Si tu a un écran standard, que tu souhaite câbler a part, je te conseil de le câbler comme sur l'image suivante :



    Petite modif : Vo à la masse, LED au 5V, LED- à la masse, et sur l'arduino : RS en 8, E en 9, DB 4-5-6-7 en 4-5-6-7 .

    Petit tuto sur l'utilisation des ecran :
    ICI : http://tehloda.wordpress.com/2011/07/16/arduino-utilise-un-ecran-lcd/
    et
    LA POUR LA SYNTAXE : http://arduino.cc/fr/Main/LiquidCrystal


    Dernière édition par Ariolas le Sam 4 Aoû - 12:59, édité 2 fois
    avatar
    DJABA

    Messages : 11
    Date d'inscription : 31/07/2012
    Age : 38
    Localisation : LIOMER

    Re: Bombe en valise + lancement des missiles

    Message par DJABA le Ven 3 Aoû - 22:10

    merci pour cette réponse rapide mais quand je regarde les deux schéma 4 sorties sont utilisé deux fois "D2-D3-D11-D12" est-ce normal?
    avatar
    Ariolas
    vis rouillée
    vis rouillée

    Messages : 33
    Date d'inscription : 25/08/2011
    Age : 26

    Re: Bombe en valise + lancement des missiles

    Message par Ariolas le Sam 4 Aoû - 12:52

    oui, c'est le schema de démonstration. le 2eme lien donne la syntaxe de la ligne d'initialisation de l'ecran.

    C'est ensuite toi, dans ton initialisation, avec la ligne "LiquidCrystal lcd(rs, enable, d4, d5, d6, d7)" qui dit quelles entrées/sorties tu utilise.

    Sur MON montage, d2 = cle1 ; d3 = transistor de la 1ere LED ; d11 = clé2 ; d12 = transistor de la 2eme LED.

    Je ne sais pas si j'ai bien répondu a ta question?

    PS : j'ai vu que mes liens n'avaient apparemment pas fonctionné, je viens de les remettre sur le post precedent
    avatar
    DJABA

    Messages : 11
    Date d'inscription : 31/07/2012
    Age : 38
    Localisation : LIOMER

    Re: Bombe en valise + lancement des missiles

    Message par DJABA le Sam 4 Aoû - 13:49

    ok merci
    avatar
    DJABA

    Messages : 11
    Date d'inscription : 31/07/2012
    Age : 38
    Localisation : LIOMER

    Re: Bombe en valise + lancement des missiles

    Message par DJABA le Dim 2 Sep - 18:41

    salut

    j'ai fini la construction de ma bombe qui fonctionne très bien. encore merci


    après plusieurs partie je voudrai me servir de la sortie D10 pour y brancher un inflammateur pour allumé un fumigène en fin de compte a rebours de chaque mode de jeu mais je n arrive pas a le programmer

    et il possible d avoir un coup de main merci
    avatar
    tontonairsoft
    ecrou argent
    ecrou argent

    Messages : 440
    Date d'inscription : 22/05/2012
    Age : 27
    Localisation : le chnord

    Re: Bombe en valise + lancement des missiles

    Message par tontonairsoft le Dim 2 Sep - 20:24

    @ DJABA met un avatar stp
    @ariolas tu as une présentation ? car je n'en vois pas et met a jours ton PROFIL et met un AVATAR
    avatar
    Ariolas
    vis rouillée
    vis rouillée

    Messages : 33
    Date d'inscription : 25/08/2011
    Age : 26

    Re: Bombe en valise + lancement des missiles

    Message par Ariolas le Lun 3 Sep - 8:22

    @totoairsoft, je le fait des que possible Wink

    @DJABA : C'est possible, il faut qu'au moment ou tu passe la sirène à l’état haut (allumage), tu passe également la broche D10 à l'état haut, puis que tu allume un détonateur pyro par la biais d'un transistor/relai. Mais je ne t'en dirais pas plus, sauf si un modo m'y autorise, car on tombe dans la pyrotechnie qui, il me semble, est interdite ici. Dans tout les cas, si avec cette piste, tu essai de réaliser cela, fait très attention a toi, etre artificier, c'est un métier Wink
    avatar
    DJABA

    Messages : 11
    Date d'inscription : 31/07/2012
    Age : 38
    Localisation : LIOMER

    Re: Bombe en valise + lancement des missiles

    Message par DJABA le Lun 3 Sep - 23:45

    ok merci
    je vais essayer cela
    mais je ne cherche pas a faire un feu d artifice juste allumé un fumigène pour un peut plus de réalisme.

    encore merci
    avatar
    Ariolas
    vis rouillée
    vis rouillée

    Messages : 33
    Date d'inscription : 25/08/2011
    Age : 26

    Re: Bombe en valise + lancement des missiles

    Message par Ariolas le Sam 22 Déc - 12:09

    Petit UP, pour l'ajout des missiles fonctionnels (enfin, presque, ils ne décollent pas ^^")

    Voici un petit aperçue des missiles V2.

    Au programme :

    _ Missiles démontables (reste à trouver la caisse)
    _ Possibilité d'activer la détection de la présence des missiles sur le pieds

    Voici la vidéo démonstrative
























    __________________________________________________________________________________________________
    EDIT : Ajout des LEDs sous le logo et du grillage











    avatar
    freeman83
    boulon d'argent
    boulon d'argent

    Messages : 1229
    Date d'inscription : 23/06/2012
    Age : 39
    Localisation : Rougiers / Var

    Re: Bombe en valise + lancement des missiles

    Message par freeman83 le Sam 22 Déc - 13:02

    approuved excelent travail, tres realiste, j'espere que tu as prevu un tuto parce que la il vas y avoir des amateurs. combien de temps ca tu as mis pour en arriver a ce stade.
    avatar
    Wood
    boulon d'argent
    boulon d'argent

    Messages : 1110
    Date d'inscription : 03/06/2011
    Age : 40
    Localisation : Liré

    Re: Bombe en valise + lancement des missiles

    Message par Wood le Sam 22 Déc - 23:13

    Excellent, j'ai fais un système plus simplifier sur les miens.
    Mais ta finition est bien meilleur.
    Perso j'ai utiliser une boite à munition, dans la quelle j'y ai placé un bouton Type top gun, un coupe batterie en guise de clé et un poussoir pour faire sonner un buzer.

    Contenu sponsorisé

    Re: Bombe en valise + lancement des missiles

    Message par Contenu sponsorisé


      La date/heure actuelle est Ven 15 Déc - 9:20