Partage
  • Partager sur Facebook
  • Partager sur Twitter

MOOC Arduino Perfectionnement

Perfectionnez-vous dans la programmation Arduino

    7 juin 2017 à 16:41:01

    Bonjour, 

    Pour ce cours, j'ai commandé mes pièces chez adafruit, puisque le lien donné pour le shield moteur sur la home page y menait. 

    Hélas, le fournisseur est américain et toute ma commande est bloquée depuis une semaine à la douane. 
    Je vais donc devoir payer la TVA, en plus d'une livraison déjà très chère (30$ UPS).
    Et bien sur ne pas pouvoir commencer le cours :(

    J'ignore si certain ont déjà rencontré ce problème mais je pense que vous devriez recommander un autre shield moteur ou un autre fournisseur pour ce shield (je n'en ai pas trouvé)

    Henry

    • Partager sur Facebook
    • Partager sur Twitter
      5 août 2017 à 4:42:42

      Bonjour,

      Donc j'aurais moi aussi besoin de votre aide concernant la fabrication d'un robot éviteur d'obstacle controlé par Arduino.  Je veux faire un robot à 2 roues ( vu que je n'ai que 2 roues motorisées et pas de servo :D) mais mon problème reste comment faire la roue libre à l'avant et aussi la partie electronique (branchements :().

      Mes composants sont les suivants :

      _Une Arduino UNO

      _Des fils connecteurs (obviously :D)

      _Deux roues-moteurs

      _Une L293D

      _Un capteur ultrason (HY-SRF05)

      _Une pile 9V

      _Une petite breadboard

      _Des résistances ( je ne pense pas que ça servira )

      _Des LEDs ( pour la décoration peut -être)

      • Partager sur Facebook
      • Partager sur Twitter
        3 septembre 2017 à 23:45:46

        Bonjour,

        J'utilise le shield Adafruit Dadalogger qui inclus un lecteur de carte SD et une RTC (ou HTR = horloge en temps rééel).

        Je commence à maîtriser la carte SD ainsi que l'horloge. Dans mon projet (je vous en dirai plus + tard) je serai amené à créer de nombreux fichiers sur la carte SD (j'utilise une 16 Go en FAT32), dans le but de les utiliser sur mon PC pour traitement ultérieur. Le problème, c'est que ces fichiers ne sont pas datés : il sont tous au 01/01/2000 00:00 ! Est-il possible, sous Arduino, de dater les fichiers afin de pouvoir les trier ?

        Merci d'avance pour votre aide et/ou vos conseils.

        • Partager sur Facebook
        • Partager sur Twitter
          17 octobre 2017 à 0:32:10

          J'ai acheté une carte Arduino etherten avec un port ethernet POE.... Malheureusement après essai et recherche sur le net, je découvre que ce port POE ne fonctionne pas avec mon réseau avec un switch Cisco de la série 500, car il n'est pas compatible avec la norme POE en 1 Gigabits.... existe-t-il des shields Ethernet compatible avec les dernières normes POE????

          Par avance merci de la réponse...

          Cordialement JLR

          • Partager sur Facebook
          • Partager sur Twitter
            23 octobre 2017 à 12:40:34

            Bonjour, je rencontre des problèmes avec mon robot autonome. J'utilise une construction en lego, un servo moteur dirige les des roues a l'avant et un seul moteur fait tourner les deux roues arrières.

            Lorsque mon robot fonctionne le servo moteur se met à tourner sur lui même sans s'arreter, je ne comprends pas pourquoi. Il s'agit d'un Tower Pro SG90. Je n'arrive pas à le stabiliser.

            Je ne pense pas que ce soit lié au montage. Mon moteur est alimenté par une pile 9V, mon Arduino est alimentée par une autre pile 9V et mon servo est alimenté par l'Arduino UNO R3.

            Je vous poste mon code :

            #include <Servo.h>
            #define TRIG 8 // TRIGGER du module de détection à ultrasons
            #define ECHO 9 // ECHO du module de détection a ultrasons
            #define SERVO 3 // pin servomoteur
            #define MOTEUR 10 //pin moteur 
            #define MOT1 11 // pin 1 du moteur
            #define MOT2 12 // pin 2 moteur
            
            Servo servo;
            
            
            void setup() { // SETUP du servo et positionnement des roues droites (34°)
              servo.attach(3);
              servo.write(34);
              Serial.begin(9600);
              pinMode(TRIG,OUTPUT);
              pinMode(ECHO,INPUT);
              pinMode(MOTEUR,OUTPUT);
              pinMode(MOT1,OUTPUT);
              pinMode(MOT2,OUTPUT);
              
              digitalWrite(MOTEUR,HIGH);
              
            }
            
            void loop() {
              
              if (mesureDistance()>=10) { // Appel de la fonction mesureDistance qui renvoie une distance en cm grace au module de detection
                avancer(); // si plus de 10cm avant le mur on avance
                Serial.println("AVANCER");
              }
              else {
                arreter(); // si moins de 10cm on arrete
                Serial.println("STOP");
                delay(1000);
                reculer(); // on le fait reculer sur le meme axe
                delay(2000);
                servo.write(54); // on tourne les roues a droite
                avancer(); // on avance en tournant a droite donc
                delay(2000);
                servo.write(34); // on remet les roues droites 
              } // fin de la boucle
              delay(25); // delai
              
            }
            
            void arreter() { // fonction d'arret
              digitalWrite(MOT1,HIGH);
              digitalWrite(MOT2,HIGH);
            }
            void reculer() { // fonction de recul
              digitalWrite(MOTEUR,HIGH);
              digitalWrite(MOT1,HIGH);
              digitalWrite(MOT2,LOW);
            }
            
            void avancer() { // fonction pour avancer
              digitalWrite(MOTEUR,HIGH);
              digitalWrite(MOT1,LOW);
              digitalWrite(MOT2,HIGH);
            }
            
            int mesureDistance() { // fonction qui mesure la distance avec les ultrasons
            
              unsigned long mesure = 0; 
              unsigned long cumul = 0; 
            
              for (int t = 0; t < 15; t++) { 
                digitalWrite(TRIG, HIGH);
                delayMicroseconds(10); 
                digitalWrite(TRIG, LOW);
                mesure = pulseIn(ECHO, HIGH);
                cumul+=mesure; 
                delayMicroseconds(40); 
              }
              mesure=cumul/15; 
              mesure=mesure/59;
            
              return mesure; 
            }
            

            Merci d'avance pour vos réponses :)

            Cordialement

            • Partager sur Facebook
            • Partager sur Twitter
              1 novembre 2017 à 17:27:30

              Bonjour,

              Je suis actuellement ce mooc et je rencontre un problème avec la partie sur le shield ethernet. Une fois tout connecté comme il faut, quand j'envoie le code ci-dessous, le moniteur-série me renvoie 0.178.178.178 ou 0.242.242.242 comme adresse IP. Pourtant, j'ai des serveurs web sur des PC ordinaires sous Linux et je peux m'y connecter sans soucis. Pourquoi est-ce que ce la de fonctionne pas avec l'arduino ?

              #include <SPI.h> //bibliothèqe pour SPI
              #include <Ethernet.h> //bibliothèque pour Ethernet
              byte mac[] = {0x90, 0xA2, 0xDA, 0x0F, 0xDF, 0xAB}; //adresse mac de votre carte
              byte ip[] = {192, 168, 1, 123}; //adresse IP
              EthernetServer serveur(80); // déclare l'objet serveur au port d'écoute 80
              
              void setup() {
                Serial.begin (9600); //initialisation de communication série
                Ethernet.begin (mac, ip); //initialisatio de la communication Ethernet
                Serial.print("\nLe serveur est sur l'adresse : ");
                Serial.println(Ethernet.localIP()); //on affiche l'adresse IP de la connexion
                serveur.begin(); // démarre l'écoute
              }
              
              void loop() {
                if (serveur.available()){ //si client connecté
                  Serial.println("Client"); //on le dit...
                }
              }

              Remarques : Je suis en réseau grâce à une Freebox Revolution et j'ai bien-sûr remplacer l'adresse MAC ci-dessus par celle de mon shield perso.

              ++ ;)

              Edit Pour BambaFall : Une roue folle ou une simple roulette de petite taille fixée au centre à l'avant ou l'arrière suffit comme troisième roue. Sur un de mes robots, j'ai utilisé ça : http://www.castorama.fr/store/Roulette-fixe-a-platine-fixe--158-mm-prod21070049.html?navAction=jump&isSearchResult=true

              Sinon pour les branchements des moteurs, tout est expliqué dans le cours d'initiation à la programmation de l'arduino de notre bon Nanomaître.

              -
              Edité par Philkat 1 novembre 2017 à 18:08:38

              • Partager sur Facebook
              • Partager sur Twitter

              Agent de développement des cultures numériques (facilitateur).

                4 novembre 2017 à 21:24:10

                Bonjour à tous. Je viens de terminer le cours d'initiation en programmation avec Arduino. Je suis très heureux d'avoir appris des choses que je ne pensais même pas pouvoir faire un jour. Donc merci maître. 

                • Partager sur Facebook
                • Partager sur Twitter
                  8 novembre 2017 à 18:39:31

                  Il semblerait que notre bon Nanomaître, qui n'a pas communiquer ici depuis septembre 2016, ait disparu et que nous n'aurons jamais de réponses à nos question :(

                  ça risque donc d'être difficile de continuer ce cours, en tout cas, pour moi.

                  -
                  Edité par Philkat 8 novembre 2017 à 18:41:00

                  • Partager sur Facebook
                  • Partager sur Twitter

                  Agent de développement des cultures numériques (facilitateur).

                    9 novembre 2017 à 6:32:11

                    C'est triste !  J'espère qu'il va refaire surface. Sinon qui ça nous apprendre à faire un drone avec Arduino.
                    • Partager sur Facebook
                    • Partager sur Twitter
                      5 mai 2018 à 21:05:37

                      Bonjour, je suis en Terminale S SI et je dois programmer un capteur de pression MPX2200DP en Arduino pour avoir une mesure continue de la pression en BAR ainsi que retranscrire ces données sur un écran LCD. Malheureusement, je n'ai jamais utilisé Arduino et je suis complétement paumé. En effet il n'y a pas de programme déjà fait comme l'on trouve sur différents capteur de temps en temps et ducoup je me retrouve avec un soucis ! Si quelqu'un pourrait m'aider ce serait fort sympathique de sa part.

                      Merci d'avance

                      Valentin

                      • Partager sur Facebook
                      • Partager sur Twitter
                        18 mai 2018 à 13:50:18

                        Je n'ai pas testé ton code mais un coup d'oeil sur la documentation me dit que si tu utilise un serveur DHCP (comme par défaut sur la Freebox), alors seule l'adresse MAC lors de l'appel de Ethernet.begin() est nécessaire. Je n'ai pas de shield Ethernet pour tester, malheureusement.

                        Philkat a écrit:

                        Bonjour,

                        Je suis actuellement ce mooc et je rencontre un problème avec la partie sur le shield ethernet. Une fois tout connecté comme il faut, quand j'envoie le code ci-dessous, le moniteur-série me renvoie 0.178.178.178 ou 0.242.242.242 comme adresse IP. Pourtant, j'ai des serveurs web sur des PC ordinaires sous Linux et je peux m'y connecter sans soucis. Pourquoi est-ce que ce la de fonctionne pas avec l'arduino ?

                        #include <SPI.h> //bibliothèqe pour SPI
                        #include <Ethernet.h> //bibliothèque pour Ethernet
                        byte mac[] = {0x90, 0xA2, 0xDA, 0x0F, 0xDF, 0xAB}; //adresse mac de votre carte
                        byte ip[] = {192, 168, 1, 123}; //adresse IP
                        EthernetServer serveur(80); // déclare l'objet serveur au port d'écoute 80
                        
                        void setup() {
                          Serial.begin (9600); //initialisation de communication série
                          Ethernet.begin (mac, ip); //initialisatio de la communication Ethernet
                          Serial.print("\nLe serveur est sur l'adresse : ");
                          Serial.println(Ethernet.localIP()); //on affiche l'adresse IP de la connexion
                          serveur.begin(); // démarre l'écoute
                        }
                        
                        void loop() {
                          if (serveur.available()){ //si client connecté
                            Serial.println("Client"); //on le dit...
                          }
                        }

                        Remarques : Je suis en réseau grâce à une Freebox Revolution et j'ai bien-sûr remplacer l'adresse MAC ci-dessus par celle de mon shield perso.

                        ++ ;)

                        Edit Pour BambaFall : Une roue folle ou une simple roulette de petite taille fixée au centre à l'avant ou l'arrière suffit comme troisième roue. Sur un de mes robots, j'ai utilisé ça : http://www.castorama.fr/store/Roulette-fixe-a-platine-fixe--158-mm-prod21070049.html?navAction=jump&isSearchResult=true

                        Sinon pour les branchements des moteurs, tout est expliqué dans le cours d'initiation à la programmation de l'arduino de notre bon Nanomaître.

                        -
                        Edité par Philkat 1 novembre 2017 à 18:08:38



                        • Partager sur Facebook
                        • Partager sur Twitter
                          20 novembre 2018 à 18:59:27

                          bonsoir,

                          j'ai réalisé le montage qui permet de faire clignoter 5 leds via le shield ethernet.

                          tout fonctionne SAUF que le code semble se dérouler 2 fois à chaque clic de souris sur le mot change. Cela semble se passer dans la fonction gestionClient(). donc on ne passe pas de OFF à ON puis à CLI mais de OFF à CLI puis ON....

                          je ne vois pas ce qui se passe surtout que j'ai utilisé le code proposé en fin de module.

                          Qui à une idée

                          • Partager sur Facebook
                          • Partager sur Twitter
                          Spocyl
                            22 mai 2019 à 20:55:00

                            bonsoir,

                            j'ai un problème avec le programme de mon projet. je dois faire fonctionner un moteur pas a pas et un capteur de poids.j'ai fait independamment les programme des deux mais lorsque je rejoint les deux programmes la balance affiche que des zeros (initialisation en 0) et le moteur pas à pas ne marche pas.

                            je pense que c'est un pb au niveau de l'alimentation, il n'a peut etre pas assez d'intensité pour les 2 ?

                            qu'en pensez vous ? que devrais-je faire
                            • Partager sur Facebook
                            • Partager sur Twitter
                              14 août 2019 à 19:12:25

                              MarcMillon a écrit:

                              Bonjour, maître nano.

                              J'ai une question concernant la partie "shield ethernet en local".

                              J'ai réalisé le TP demandé (allumer les 5 leds via la page html), mais cela ne marche bien que sur Edge.

                              Sur chrome, le client envoie une deuxième connexion demandant un favicon, et cela perturbe tout.

                              J'ai testé ton programme, et il souffre du même problème : impeccable sous Edge, mais perturbé sous chrome.

                              Dans ta solution, sous crhome,  modifier l'état d'une led modifie aussi l'état d'une autre des 4... Je pense que c'est dû à cette deuxième connexion, dont la href contient aussi un "=".

                              Comment faire ? Y a-t-il une solution simple ?

                              Merci !


                              J'ai exactement le même problème que MarcMillon et je ne trouve pas la solution.

                              J'ai essayer de modifier le décodeur et de rajouter des temporisation (delay), mais rien n'y fait.

                              Ca m’énééééééééerve beaucoup, beaucoup, beaucoup...

                              Auriez-vous une solution ?

                              Merci d'avance pour votre réponse.

                              • Partager sur Facebook
                              • Partager sur Twitter
                                7 novembre 2019 à 21:21:30

                                bonsoir a tous

                                s'il vous paît je rencontre un problème au niveau de la compréhension du cours pus précisément sur le paragraphe concernant la génération d'un son par la piezzo ou un haut parleur.

                                mon problème se trouve au niveau du Rythme d'une note.en effet comment manipuler la durée d'une note?? c'est la ma difficulte.

                                le cous explique cela avec ces quelques lignes mais je ne les comprends pas:

                                Si on imagine que le temps (c'est ce qui est mesuré quand vos tapez du pied en écoutant de la musique) est le code 2, on a :

                                • code 1 : la note dure la moitié d'un temps (croche en musique)

                                • code 2 : la note dure 1 temps (noire en musique) donc 2 croches

                                • code 4 : la note dure 2 temps (blanche en musique) donc 4 croches

                                • code 8 : la note dure 4 temps (ronde en musique) donc 8 croches

                                je souhaite sincèrement que vous m'aidiez à mieux comprendre cette partie s'il vous plaît ou ces lignes du cours.merci de me repondre

                                • Partager sur Facebook
                                • Partager sur Twitter
                                  9 décembre 2019 à 19:52:29

                                  dac

                                  démerde-toi

                                  -
                                  Edité par ZacharieZuwala 9 décembre 2019 à 19:53:58

                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    26 janvier 2020 à 14:22:39

                                    Salut,

                                    Est ce qu'il y a du monde qui s'est amusé à faire les exercices du projet MOTUS à la fin du module sur codez et décodez des informations ? Je serais intéressé à échanger sur le code :)

                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      27 janvier 2020 à 0:10:11

                                      Salut,

                                      Je réalise un petit souci, je dois faire l'étude et réalisation d'une sonde de niveau d'eau réglable et autonome d'un puisard.

                                      Pour cela je veux utiliser capteur ultrason, mais j'essaie de me documenter sur ce dernier, sur les critère de choix.

                                      Merci

                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        19 mars 2020 à 11:06:42

                                        Bonjour

                                        Je sèche depuis 2016 sur le TP simon, qui depuis n'existe plus dans le cour.

                                        Je bloque sur la fonction Compare()

                                        J'ai essayé plein de sorte de code, mais je n'y arrive pas.

                                        quelqu'un a t il une idée pour me débloquer.

                                        Voici le code de la fonction compare():

                                        • //fonction qui compare la réponse avec la séquence en cours
                                        • void compare (int b) { 
                                        •       for(int i = 0;i < taille;i++){
                                        •         if(b!=sequence[i]){
                                        •           posTest = 2;
                                        •         }else if(i == (taille-1)){
                                        •           posTest = 1;
                                        •         }
                                        •       }
                                        •       Serial.println(posTest);
                                        •       switch (posTest) {
                                        •        case 1:         //on est au bout de la séquence et on appelle la fonction valide() et on retourne au mode 1
                                        •          valide();
                                        •          mode=1;
                                        •          break;
                                        •        case 2:        //le joueur a fait une erreur et on appelle la fonction nonValide() et on retourne au mode 0
                                        •          nonValide();
                                        •          mode=0;
                                        •          break;
                                        •       }  

                                        Par avance merci

                                        -
                                        Edité par Jean-LouisFournier1 19 mars 2020 à 11:17:31

                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                          10 novembre 2020 à 15:53:55

                                          Bonjour,

                                          Je ne trouve plus "Perfectionnez-vous dans la programmation Arduino" sur openclassroom, sauriez-vous où je peux trouver le cours, svp ?

                                          En vous remerciant par avance

                                          Ludovic

                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                            7 décembre 2020 à 14:13:36

                                            Bonjour,

                                            Même question que LudovicRaubert. Est-il encore possible de suivre le cours "Perfectionnez vous dans la programmation Arduino"? J'ai fini l'initiation et cela me laisse un peu sur ma faim ;-).

                                            Bien à vous,

                                            Mahmoud

                                            • Partager sur Facebook
                                            • Partager sur Twitter

                                            MOOC Arduino Perfectionnement

                                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                            • Editeur
                                            • Markdown