help arduino+servo+KY-037 je suis novice

bonjours

Il y aurait une âme charitable pour moi faire un programme, ou m'indiquer ou le trouver?
Avec un arduino nano je souhaiteai qu'un servo MG90S bouge de 0 à 90 ° quand je parle dans un KY-037.
il faut que le servo fasse des mouvements (rapide) quand je parle, qu'il soit à 0 ° quand je ne parle plus.
si je cris en continu et qu'il reste à 90 ° c'est bonus, sinon ce n'est pas grave mais dans ce cas il faudrait qu'un appuis sur un bouton poussoir le mette à 90 ° jusqu'à relâchement du bouton et retour à 0 °.

c'est pour un projet d'animatronique pour les mouvements de la bouche.

c'est cela existe déjà merci de m'indiquer ou

si ma demande dérange, excusez moi. dite le moi et je me retire ce post.

merci

Bonjour,

Il n’y aura personne pour faire le programme a ta place, ce n’est pas dans les habitudes de la maison.
Par contre il y aura des bénévoles pour t’aider à le faire.

Important : il faut lire les messages épinglés et donner tous les renseignements demandés.
Déjà il manque les liens vers le servo et le micro.

Ensuite de la méthode :
Tu as deux composants un servo et et un micro.
Des bibliothèques existent pour ces deux composants .
Les bibliothèques sont toujours accompagnées d’exemples.
Il faut faire SEPAREMENT les exemples du servo et du micro.

L’étape suivante sera d’adapter les exemples à ton projet.

Tu vois que tu ne part pas de rien.

Il existe un très bon tuto : Eskimon qui existe sous différentes forme : pdf, blog où tu peux aussi demander des éclaircissements.

En haut à droite de cette page il y a le moteur de recherche de ce forum et les réponses en français sont données en priorité.
L’utilisation d’un microphone a été maintes fois traitées tu devrais obtenir de nombreuses indications.

désolé mais à mon âge trop difficile d'apprendre tout ça
et je ne veux pas aller chercher dans des livres à la bibliothèque
servos : https://www.amazon.fr/gp/product/B081JMRV7Y/ref=ppx_yo_dt_b_asin_title_o04_s00?ie=UTF8&psc=1
micro : https://www.amazon.fr/gp/product/B07CN3D77S/ref=ppx_yo_dt_b_asin_title_o02_s00?ie=UTF8&psc=1
arduino : https://www.amazon.fr/gp/product/B0722YYBSS/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

je sais juste souder moi.

ou alors si quelqu'un peu m'orienter vers un professionnel qui me factura....

En programmation une bibliothèque est un ensemble de fichiers prets à l'emploi qu'il suffit de charger dans l'IDE.
Bibliothèque est le nom en français, certains préfèrent utiliser le nom en anglais qui est "library".
Ce n'est pas une médiatèque.

Ce sont des fichiers qui ont été écrits par des bénévolles ou des fabricants de produits pour décharger les utiliisateurs.
En parcourant les fichiers d'une "bibliothèque" on trouve un repertoire "Exemple" à l'intérieur duquel il se trouve des fichiers xxxx.ino : ce sont les exemples à réaliser.

Concernant le servo ce qui m'a impressionné c'est le prix qui n'et pas donné.
Concernant le "microphone" il est équipé d'un comparateur LM393 et d'un potentiomètre

  • le potentiomètre sert à régler le seuil de déclenchement du comparateur
  • le comparateur est "comme un amplicateur opérationnel" sauf qu'en sortie il n'a que deux états : haut (5V) ou bas (0V).

Il doit aussi y avoir une sortie directe du signal "voix", c'est un signal analogique qu'il faudra traiter comme tel.
Si tu veux discriminer différents niveaux sonores la sortie analoogique est la seule exploitable.

Note : dans la parttie anglaise du forum il y a un endroit appelé "Gigs and collaboration" (orthographe non garantie) pour des collaboration avec échange d'argent.
Sur le forum francophone cela ne se passe pas officiellement, néanmoins peut-être que tu sera contacté en messages privés mais en tout cas pas par moi.

Bonne continuation.

68tjs:
Concernant le servo ce qui m'a impressionné c'est le prix qui n'et pas donné.

C'est pour 10 pièces

Concernant le servo ce qui m'a impressionné c'est le prix qui n'et n'est pas donné.

C'est pour 10 pièces

Ouf cela va mieux.

désolé mais c'est du chinois pour moi tout ça (si vous me permettez l'expression)
je n'y connais rien en électronique et encore moins en programmation de ces derniers.
je suis mécano (bac F1 génie méca qui n'existe même plus). moi.
la CAO et impression 3D font partis de mes compétences.
la programmation en gcode ok mais pas électronique
plus 0 en anglais
je me suis arrêté à la programmation grafcet sur TSX17 et 27 il y a plus de 20ans au lycée

tant pis les enfants n'auront pas de père noël qui parle avec ma voix.
je pensais qu'un truc comme ça aurait déjà était fait et qu'une âme charitable m'y aurait redirigé ou donné des liens.
mais je suis complètement perdu dans tout ces trucs.

désolé de vous avoir dérangé.

Je dois avoir ce module, je ferais un test ce week end.

En attendant, voici un lien pour comprendre et tester le module KY037
https://sensorkit.fr.joy-it.net/index.php?title=KY-037_Capteur_sonore

Cela fait un bout de temps que j’y suis, ça doit faire le job normalement.

#include <Servo.h>


// entrée pin D2 entrée digital pour le module
#define DIGITAL_IN 2

// sortie pin D6 a raccordé sur la la pin signal du servo
#define SERVO_OUT 6


unsigned long time;
byte memEtat = 0;

Servo myservo;

void setup()
{
  // configuration du port série
  Serial.begin(9600);

  // configuration du port en sortie pour la LED interne de la carte
  pinMode(LED_BUILTIN, OUTPUT);

  //  Configuration du port DIGITAL_IN en entrée
  pinMode(DIGITAL_IN , INPUT);

  // on associe le pin du servo à la fonction
  myservo.attach(SERVO_OUT);
  myservo.write(0);

  Serial.println("Sortie du Setup");
}

void loop()
{
  unsigned long result = (millis() - time);

  int valeur = digitalRead(DIGITAL_IN);
  
  if (valeur) {
    digitalWrite(LED_BUILTIN, HIGH);
    myservo.write(90);
    if (memEtat == 0) {
      Serial.println("Start");
    }
    memEtat = 1;
    valeur = 0;
    time = millis();
  } else {
    if (result > 500) {
      digitalWrite(LED_BUILTIN, LOW);
      myservo.write(0);
      time = 0;
      if (memEtat == 1) {
        Serial.println("Fin");
      }
      memEtat = 0;
    }
  }
}

merci énormément nico78 je testerai
j’ai un amis qui m’a fait ça

#include <Servo.h>

Servo myservo;

int pos = 0;
int Digital_Eingang = 3;
void setup() {
myservo.attach(9);
pinMode (Digital_Eingang, INPUT);
}

void loop() {
int Digital;
Digital = digitalRead (Digital_Eingang);
if (Digital == 1) {
myservo.write(90);
}
else {
myservo.write(0);
delay(75);
}
}

et remplacer sur le KY-037 le capteur par un micro (pour l’instant connecté avec des pinces crocodile sur le jack d’un micro cravate pour tests)
c’est prometteur, ça fait le job mais je dois avoir le micro cravate juste devant la bouche

je vais chercher un vieux micro d’un casque-micro pour souder sur le KY-037
et quelques réglages/tests
j’ai de quoi bien m’occuper ce WE

à suivre…

Oui, je dois dire que le fonctionnement à la voix nécessite d'être vraiment tout proche; je n'avais pas encore testé ce module auparavant.

Amusez vous bien.