Table des matières:

STEM - Contrôle de la voix et de l'image : 13 étapes
STEM - Contrôle de la voix et de l'image : 13 étapes

Vidéo: STEM - Contrôle de la voix et de l'image : 13 étapes

Vidéo: STEM - Contrôle de la voix et de l'image : 13 étapes
Vidéo: LE LARYNX - Son rôle dans la phonation 2024, Novembre
Anonim
STEM - Contrôle de la voix et de l'image
STEM - Contrôle de la voix et de l'image
STEM - Contrôle de la voix et de l'image
STEM - Contrôle de la voix et de l'image
STEM - Contrôle de la voix et de l'image
STEM - Contrôle de la voix et de l'image

Au cours des dernières années, il est devenu de plus en plus facile de faire quelque chose avec la reconnaissance vocale ou d'image. Les deux sont de plus en plus utilisés de nos jours. Et ce sont des sujets populaires dans les projets de bricolage. La plupart du temps créé avec le logiciel/API de l'une des sociétés suivantes:

  • La voix de Google.
  • Amazon Alexa.
  • Services cognitifs Microsoft.

Il existe même des kits de bricolage, comme le Google AIY Voice Kit pour aider les amateurs. La plupart de ces produits utilisent un Raspberry Pi ou une carte similaire. Malheureusement, cela ne convient pas à ceux qui ne savent pas gérer un langage de programmation, tel que Python.

Cette instructable concerne la reconnaissance vocale et l'OCR d'image, sans aucune connaissance d'un langage de programmation. Cependant, la pensée logique reste une exigence. Le produit Makeblock Neuron est utilisé, combiné à un environnement de programmation basé sur les flux.

Ce produit Neuron a démarré en tant que projet Kickstarter en 2017. Il s'agit d'une plate-forme de blocs de construction électroniques utilisant tous les types de « blocs » électroniques pouvant être connectés par des connecteurs magnétiques. Et est essentiellement conçu comme un produit STEM (Science, Technologie, Ingénierie et Mathématiques). Ce produit se concentre donc sur la pensée logique et (apprendre) à programmer.

Il existe environ 30 types différents de blocs de neurones. Tels que différents types d'émetteurs et de récepteurs, boutons, LED, capteurs et moteurs. La plupart des blocs ne communiquent qu'entre eux. Mais l'un des blocs, le bloc WiFi, peut être connecté à Internet. Cela permet d'accéder à des applications Internet telles que les Microsoft Cognitive Services.

Les premières étapes de ce Instructable commencent par une brève introduction sur le produit Neuron et comment les programmer. Cela inclut la programmation basée sur les flux et certains des composants électroniques disponibles. Ceci est suivi de quelques exemples avec la reconnaissance visuelle et vocale. Et enfin un petit robot tortue. Qui peut être contrôlé à distance au moyen d'un joystick. Il est possible d'utiliser la reconnaissance vocale avec ce robot. Cependant, les temps de réponse de la commande vocale doivent être pris en compte.

De plus, il y a quelques informations techniques supplémentaires. Ces étapes fournissent des informations générales et donnent un aperçu du produit Neuron.

G o s s e A d e m a

Étape 1: Kit d'explorateur de neurones

Kit d'explorateur de neurones
Kit d'explorateur de neurones
Kit d'explorateur de neurones
Kit d'explorateur de neurones

Les blocs de neurones sont comme des briques électroniques, et la couleur de chaque neurone montre sa fonction principale. Les blocs d'énergie et de communication sont verts; Les blocs d'entrée sont jaunes; Les blocs de contrôle sont oranges; Et les blocs de sortie sont bleus. Chaque neurone a sa propre fonction dédiée, et ils commencent à communiquer entre eux lorsqu'ils sont connectés les uns aux autres.

Le produit a commencé en tant que projet Kickstarter en avril 2017. Et cette instructable utilise le kit Explorer. Ce Kit contient les pièces suivantes:

  • Wi-Fi (neurone)
  • Puissance (neurone)
  • Microphone et haut-parleur (USB)
  • Panneau Led 8x8 RVB (Neuron)
  • Joystick (Neuron)
  • Bouton (neurone)
  • Led Strip Driver (Neuron)
  • Bande Led 50cm (15 LEDs)
  • Pilote de moteur à courant continu double (neurone)
  • Moteur CC (2x)
  • Support moteur (2x)
  • Roues (2x)
  • Mini roue
  • Pilote de servomoteur double (neurone)
  • Servomoteur (2x)
  • Reconnaissance vocale (Neuron)
  • Capteur à ultrasons (neurone)
  • Émetteur sans fil (Neuron)
  • Récepteur sans fil (Neuron)
  • Appareil photo (USB)
  • Pointeur laser
  • Carte Neurone (4x)
  • Fil magnétique 10 cm (2x)
  • Fil magnétique 20 cm (2x)
  • Câble Micro USB 20 cm (2x)
  • Câble Micro USB 100 cm (2x)

Ce kit contient toutes les pièces électroniques pour tous les types de projets STEM. Son objectif principal semble être la fabrication de petits robots. Mais la caméra et la reconnaissance vocale lui offrent bien plus de possibilités que de simples robots.

Chaque neurone contient un aimant. Et peut être placé sur des objets métalliques ou sur les cartes Neuron fournies.

La seule pièce qui "manque" dans ce kit d'explorateur est un capteur suiveur de ligne. Ceci fait partie du kit "Tout en un". Ce capteur serait un choix plus logique, à la place de la bande LED ou de la matrice LED.

Étape 2: Blocs de neurones

Blocs de neurones
Blocs de neurones
Blocs de neurones
Blocs de neurones
Blocs de neurones
Blocs de neurones

Plusieurs packages Neuron ont été vendus via une campagne Kickstarter. Et en ce moment les premiers packages sont disponibles pour les ventes régulières.

Il y a environ 30 blocs différents, qui peuvent être connectés les uns aux autres avec des connecteurs magnétiques. Cela crée une ligne de blocs. Qui communiquent entre eux via l'App (Android, iOS).

Il y a un bloc d'alimentation rechargeable qui alimente tous les blocs connectés. Et tous les blocs de communication ont un connecteur micro USB, qui peut être utilisé pour alimenter les blocs. Une chaîne commence normalement par un bloc de communication. Et s'il n'est pas alimenté par USB, le bloc suivant devrait être un bloc d'alimentation.

Les blocs d'énergie et de communication ont une couleur verte, et il y en a 5:

  • Puissance.
  • Récepteur sans fil.
  • Émetteur sans fil.
  • Wifi.
  • Bluetooth.

L'application et le programme Scratch nécessitent une connexion WiFi ou BlueTooth. Les 2 blocs sans fil peuvent être utilisés pour des projets télécommandés à courte distance.

L'Explorer Kit contient trois blocs de contrôle orange:

  • Bouton.
  • Manette.
  • Reconnaissance vocale.

Et deux capteurs jaunes:

  • Caméra
  • Capteur à ultrasons

Les blocs de contrôle et de capteurs fournissent une entrée pour votre programme. Le bouton donne une valeur comprise entre 0 et 100, et peut être utilisé comme variateur ou pour contrôler la vitesse d'un moteur. Le joystick donne deux valeurs entre -100 et 100, une valeur pour chaque direction. Le capteur à ultrasons mesure la distance en centimètres. La valeur de sortie est comprise entre 0 et 400.

Les cinq blocs de sortie bleus de ce kit sont:

  • Pilote de bande LED + Bande LED.
  • Panneau DEL.
  • Pilote de moteur à courant continu
  • Pilote de servomoteur
  • Microphone et haut-parleur

Les blocs de sortie sont très divers. Cela permet de nombreux types de projets différents. Comme une lampe LED, un robot en mouvement et/ou un enregistreur de son.

Tous les blocs Neuron sont répertoriés sur la page Kickstarter.

Étape 3: Programmation du neurone

Programmation du neurone
Programmation du neurone
Programmation du neurone
Programmation du neurone

Il existe plusieurs façons d'utiliser les blocs Neuron.

  1. Hors ligne.
  2. En ligne avec une application.
  3. En ligne avec mBlock Scratch.

Offline offre un moyen simple de présenter les différentes parties. Cela ne nécessite aucune programmation. La programmation en ligne peut être effectuée avec une application (Android/iOS) ou un programme informatique (mBlock 4.0). Le bloc WiFi a la capacité de sauvegarder un programme. Ce programme reste en cours d'exécution jusqu'à ce qu'il soit arrêté par l'application.

L'application est plus facile à utiliser que le logiciel mBlock 4.0. Et tous les blocs Neuron ne sont pas actuellement présents dans le logiciel mBlock.

Il y a quelques cartes avec des exemples de projets dans la boîte Neuron. Ceux-ci peuvent être assemblés à l'aide de l'application et montrent les principes de base des différents blocs.

Étape 4: Mode hors ligne

Mode hors-ligne
Mode hors-ligne
Mode hors-ligne
Mode hors-ligne
Mode hors-ligne
Mode hors-ligne

Ce mode est principalement destiné à se familiariser avec le produit et ne nécessite aucune programmation.

Chaque capteur de bloc de sortie est capable de fournir une sortie aux blocs attachés à droite. Et chaque bloc d'affichage peut recevoir des signaux d'entrée de la gauche; Donne sa sortie; Et passe le signal d'entrée à des blocs supplémentaires connectés à droite.

Ainsi, une chaîne hors ligne contient toujours plusieurs blocs dans un ordre fixe: Un bloc d'alimentation vert; Un bloc jaune ou orange (entrée ou contrôle); Et un ou plusieurs blocs de sortie bleus. Et ce mode hors ligne ne fonctionne que de gauche à droite (avec des lettres lisibles).

Un bloc d'entrée ou de contrôle contrôle tous les blocs de sortie suivants. Et la sortie dépend du type de bloc d'entrée. Par exemple: le bouton agit comme un gradateur lorsqu'il est connecté à une matrice de LED. Et le joystick indique la direction sur la matrice LED. Les signaux de plusieurs blocs d'entrée ne peuvent pas être combinés en mode hors ligne. Seul le signal du dernier bloc est transmis aux blocs de sortie.

La combinaison de blocs d'entrée et/ou de contrôle nécessite le mode en ligne (programmation).

Étape 5: Programmation basée sur les flux

Programmation basée sur les flux
Programmation basée sur les flux

Lorsque les blocs Neuron sont connectés à une tablette (iPad), ils deviennent automatiquement actifs en mode en ligne. Désormais, tous les blocs connectés peuvent être utilisés pour interagir les uns avec les autres. Alors que l'environnement du programme ajoute des opérations logiques et mathématiques.

La documentation sur la programmation des blocs Neuron est disponible sur le site Web de Makeblock. Il y a aussi un forum qui donne beaucoup d'informations. Parce que ce produit est plutôt nouveau, il y a des mises à jour et des ajouts réguliers à la documentation sur le site Web de Makeblock.

L'application Neuron utilise une programmation basée sur les flux. En plus des blocs Neuron qui donnent des valeurs de sortie ou nécessitent des valeurs d'entrée, il existe toutes sortes de nœuds de programmation différents. Ceux-ci sont divisés en plusieurs zones et ont été placés sur différents onglets à l'intérieur de l'application. Par défaut, il y a 4 onglets:

  • De base
  • Les contrôles
  • Temps
  • Avancée

Ces nœuds de programmation peuvent être utilisés sans blocs Neuron.

La documentation en ligne de Makeblock présente les fonctionnalités de l'interface de l'application.

Logique et mathématiques

Ce sont des fonctions de base. Et avoir une ou deux entrées et une valeur de sortie. Il existe plusieurs calculs et comparaisons simples.

Robot instructable
Robot instructable

La fonction à bascule change d'état à chaque fois qu'elle reçoit un « Y ».

Nombres

Il existe deux nœuds numériques, une version « de base » et une version « contrôles » (ils se trouvent sur des onglets différents). La version des commandes est un numéro fixe, tandis que le numéro de base a un état « on » et « arrêt ». L'exemple suivant montre la différence. L'intervalle s'allume ('Y') et s'éteint ('N') chaque seconde. La sortie du nombre vert est 5 lorsque l'entrée est « Y », sinon la valeur est 0.

Robot instructable
Robot instructable

Le nœud de la courbe affiche un graphique. Cela est utile pour afficher les différentes valeurs de sortie. D'autres indicateurs utiles sont l'étiquette et le nœud indicateur.

Séquence

La séquence s'exécute de manière répétée ou une seule fois lorsque l'entrée est « Y ». Cela permet une séquence d'actions.

Robot instructable
Robot instructable

La séquence reçoit un signal lorsque l'interrupteur est activé. La sortie de la séquence est transmise à un indicateur.

Notez la couleur des lignes: Les lignes bleues indiquent le flux de courant. Et le cercle à droite d'un nœud montre toujours la sortie actuelle.

Escalader

Le nœud d'échelle traduit une plage d'entrée en une plage de sortie. Par exemple, 0 à 100 peut être traduit en une valeur comprise entre 0 et 255.

Robot instructable
Robot instructable

Les valeurs supérieures au maximum de la plage d'entrée entraînent une valeur supérieure à l'échelle de sortie maximum ! Le filtre peut être utilisé pour limiter la valeur.

Soupape

Il s'agit d'un nœud qui transmet la valeur d'entrée inférieure si la valeur d'entrée supérieure est vraie. Ceci est mieux expliqué avec un exemple:

Robot instructable
Robot instructable

Le nœud d'intervalle vert bascule entre 0 et 1 chaque demi-seconde. La sortie de ce nœud est visible sur le graphe supérieur. Le nœud d'impulsion violet donne une sortie sinusale, avec des valeurs comprises entre -255 et 255. Ceci est indiqué sur le graphique inférieur.

L'intervalle et le sinus sont tous deux entrés pour le nœud de valve. Et la valeur de sortie est 0 lorsque la valeur d'intervalle est « N ». Lorsque la valeur d'intervalle est « Y », la valeur de sortie est égale à la valeur d'entrée sinusoïdale. Cela donne le graphique du milieu.

Étape 6: Exemple de flux

Exemple de flux
Exemple de flux
Exemple de flux
Exemple de flux

La meilleure façon de montrer la programmation de flux est par un exemple. Cet exemple n'utilise aucun bloc Neuron. Et tout le monde peut le programmer après avoir téléchargé l'application. Ouvrez l'environnement de code et créez un nouveau programme. Sélectionnez '(X)' lorsqu'on vous demande une connexion et lancez la programmation.

Faites simplement glisser les nœuds requis dans la zone de programme et connectez les lignes. Cliquez sur les nœuds pour voir les possibilités et pour modifier les valeurs/paramètres.

La sortie des boutons est 'N' par défaut. Appuyer sur un bouton donne un « Y » en sortie. Cette sortie est transmise à un générateur de nombres aléatoires. Cela génère un nouveau nombre (entre 0 et 100) chaque fois que l'entrée a la valeur « Y » et transmet la sortie au(x) nœud(s) suivant(s).

Les nœuds de comparaison nécessitent 2 entrées et renvoient la valeur « Y » si la condition est remplie. Le nœud de comparaison supérieur vérifie si la valeur du port A est supérieure à la valeur du port B. Si cela est vrai, le voyant devient vert. Actuellement, le voyant inférieur est vert, car 21 est inférieur à 23.

Cela demande un peu de pratique pour programmer de cette façon. Le gros avantage est que vous n'avez pas à penser à la syntaxe du code. Et chaque nœud affiche sa valeur de sortie. De plus, les lignes bleues représentent le flux de données.

Étape 7: Contrôle de l'image

Contrôle d'image
Contrôle d'image
Contrôle d'image
Contrôle d'image

Il y a deux blocs Neuron qui peuvent être attachés au bloc WiFi au moyen d'un câble USB: La caméra et le microphone/haut-parleur. Les deux appareils sont des appareils USB classiques et peuvent être connectés à un PC. L'appareil photo nécessite des pilotes supplémentaires, mais le haut-parleur fonctionne comme un haut-parleur USB standard.

Un onglet et une icône de caméra apparaissent dans l'application lorsque la caméra est connectée au bloc WiFi. L'icône ouvre une fenêtre d'aperçu avec l'image de la caméra.

Il y a un nœud photo/appareil photo dans l'onglet appareil photo. Cela prend une photo lorsqu'il y a un signal d'entrée avec la valeur 'Y' (vrai). Après avoir placé ce nœud dans la zone de programme, il dispose de trois options (cliquez sur le nœud):

  • Cadre photo
  • OCR
  • Test d'émoticônes

Le cadre photo montre la sortie du nœud photo. Les trois nœuds suivants fournissent un « appareil photo ». L'appareil photo prend une photo lorsque le bouton est enfoncé (cela donne « Y » comme sortie). Et cela est montré à l'intérieur du cadre photo. L'image est stockée à l'intérieur du bloc WiFi, mais est écrasée lorsqu'une nouvelle photo est prise.

Robot instructable
Robot instructable

Il est possible d'utiliser la minuterie pour l'entrée de la caméra, mais ne faites pas l'intervalle trop court (> 1 seconde). Sinon, le bloc WiFi ne peut pas gérer les données et se bloque pendant un certain temps.

Le nœud OCR traduit les images en texte. Cela utilise les services cognitifs de Microsoft. Le bloc WiFi doit être connecté à Internet et l'application doit être connectée au bloc WiFi.

Le programme suivant prend une photo lorsque le bouton est enfoncé. Cette photo est affichée et traitée par le nœud OCR. La sortie est comparée par trois nœuds de comparaison de texte. Ceux-ci vérifient les valeurs "un", "deux" et "trois". Et chaque valeur montre une image différente sur le panneau LED. La sortie du nœud OCR est également affichée par un nœud « étiquette ». Cela affiche « Non » (Faux) lorsque rien n'est reconnu.

Robot instructable
Robot instructable

Les lignes bleues indiquent le flux de données à l'intérieur du programme. Et le « Y » et le « N » après chaque nœud représentent sa valeur de sortie. Cela simplifie le dépannage au sein d'un programme. Malheureusement, la sortie de la matrice LED n'est pas affichée dans l'application.

La dernière option de nœud de caméra est le test d'émoticône. Cela traduit les visages sur une image en une émotion.

Robot instructable
Robot instructable

Les exemples ci-dessus sont simples, mais ils montrent le principe de base. Des blocs logiques et neuronaux supplémentaires peuvent être ajoutés pour créer des programmes plus complexes

Étape 8: Reconnaissance vocale (microphone)

Reconnaissance vocale (microphone)
Reconnaissance vocale (microphone)
Reconnaissance vocale (microphone)
Reconnaissance vocale (microphone)

En plus de la caméra, un microphone/haut-parleur Neuron peut être connecté au bloc WiFi. Cela peut être utilisé pour enregistrer et lire des fragments audio. La connexion de ce Neuron donne un onglet "son" supplémentaire dans l'application.

Le nœud d'enregistrement n'enregistrera le son que si l'entrée est « Y », cela nécessite un bouton ou un commutateur. Le fragment audio enregistré est la sortie du nœud d'enregistrement. L'ajout du nœud « jouer le son » lit immédiatement cette sortie. Cela peut être utilisé faire un perroquet:

Robot instructable
Robot instructable

Un clic sur le nœud du microphone donne 2 options: « voix en texte » et « enregistrer l'enregistrement ».

Le nœud "enregistrer l'enregistrement" enregistre le fichier audio sur le système de fichiers à l'intérieur du bloc WiFi. Ce fichier est écrasé à chaque démarrage d'un nouvel enregistrement.

Le nœud "Lire le son" est capable de lire l'audio d'entrée, mais il est également possible de sélectionner un effet sonore ou un fichier enregistré. Il nécessite un déclencheur d'entrée pour démarrer le son donné. Et il s'arrête immédiatement lorsque l'entrée est 'N' (faux). L'exemple suivant est une sorte de dictaphone. Le bouton supérieur effectue un enregistrement et le bouton inférieur lit cet enregistrement.

Robot instructable
Robot instructable

L'option Voice to tekst du nœud de microphone utilise les services cognitifs de Microsoft pour traduire l'enregistrement en texte. Le nœud d'étiquette est capable d'afficher la sortie. Les nœuds d'enregistrement et de lecture du son ne sont pas nécessaires pour traduire la voix en texte. Mais ceux-ci sont utiles lors de la programmation pour vérifier la sortie.

Robot instructable
Robot instructable

Le débogage de cette fonctionnalité peut être effectué en se connectant au bloc WiFi (fonctionnalité avancée).

[2018-01-19 23:00:35] [WARN] Le gestionnaire de requêtes « son serveur » a été appelé:

Il est possible de vérifier plusieurs mots. Et le nœud de comparaison fonctionne exactement comme l'OCR de la caméra.

Parfois, le même mot donne une sortie différente. Par exemple: « au revoir » peut donner l'une des valeurs suivantes: « au revoir » ou « au revoir ». Cela nécessite plusieurs nœuds de texte avec la même sortie:

Robot instructable
Robot instructable

Remarque: La langue par défaut du discours vers le texte est l'anglais.

Étape 9: Reconnaissance vocale (Neuron)

Reconnaissance vocale (Neuron)
Reconnaissance vocale (Neuron)
Reconnaissance vocale (Neuron)
Reconnaissance vocale (Neuron)
Reconnaissance vocale (Neuron)
Reconnaissance vocale (Neuron)

Il s'agit d'un neurone dédié pour convertir la voix en texte. Il accepte 22 commandes qui sont codées en dur à l'intérieur du bloc et le code Neuron:

var COMMANDE = {'Allumer la lumière': 3, 'Devenir rouge': 4, 'Devenir bleu': 5, 'Devenir vert': 6, 'Devenir blanc':7, 'Plus de lumière':8, 'Moins de lumière':9, 'Éteindre':10, 'Moteur avant':11, 'Moteur arrière':12, 'Accélération':13, 'Vitesse vers le bas':14, 'Amour':15, 'Sourire':16, 'En colère':17, 'Triste': 18, 'Rock and roll':19, 'Fire Fire':20, 'Game start':21, 'Winter is coming':22, 'Start':23, 'Shut down':24};

Ce bloc n'accepte que l'anglais. Et cela nécessite une prononciation correcte. Il n'y a pas beaucoup de place pour l'erreur. Et même la sortie vocale de Google Voice Translate n'active pas toujours la commande correspondante. Mais l'utilisation de Google Speach reste un bon point de départ. Commencez par "Hello Makeblock", "Hello Makeblok" et/ou "Helo makeblok". Suivi de "l'hiver arrive" ou "passe au vert".

Ces commandes ont été utilisées dans le code de la première image de cette étape. L'indicateur à droite du nœud de commande vocale supérieur est « Y » (vrai). Cela indique que la commande a été reconnue.

Il faut un peu de pratique pour travailler avec ce neurone. Heureusement, le bloc répète le message après en avoir reçu un (il contient un haut-parleur et un microphone).

Étape 10: Tortue LEGO télécommandée

Tortue LEGO télécommandée
Tortue LEGO télécommandée
Tortue LEGO télécommandée
Tortue LEGO télécommandée
Tortue LEGO télécommandée
Tortue LEGO télécommandée
Tortue LEGO télécommandée
Tortue LEGO télécommandée

Le kit Neuron Explorer contient 2 moteurs à courant continu et 2 servomoteurs. Cela fait appel à un robot: une tortue à trois roues. Il utilise les moteurs et les roues du kit avec des pièces LEGO comme cadre.

Il y a 8 poutres, de manière circulaire, fixées au-dessus de ce cadre. Ces faisceaux soutiennent la bande LED. Trois panneaux magnétiques Neuron sont placés au-dessus des 8 faisceaux. Ceux-ci contiennent les parties neuronales suivantes:

  • Récepteur sans fil
  • Puissance
  • câble de 10 cm
  • Pilote de servomoteur
  • Pilote de moteur à courant continu
  • Pilote de bande LED
  • câble de 10 cm

Le dernier câble de 10 cm est attaché au capteur à ultrasons, qui est placé sur la tête de la tortue. Cette tête se compose de la quatrième carte magnétique Neuron. Enfin, la queue se compose d'un servomoteur, auquel est attaché une poutre lego.

Le résultat ressemble uniquement à des "fils et de l'électronique", mais le bouclier de tortue couvre presque tous les composants électroniques.

Le robot peut être contrôlé avec le joystick. Cela nécessite le bloc WiFi (ou Bluetooth), le Joystick et l'émetteur sans fil. La télécommande nécessite une source d'alimentation USB. Il n'y a qu'un seul bloc d'alimentation disponible, qui se trouve à l'intérieur du robot.

La première image montre un programme possible pour ce robot. Le joystick est connecté au bloc moteur DC. Haut/bas pour la vitesse et gauche/droite pour la direction.

La sortie du capteur à ultrasons est comparée à la valeur de 100 cm. Si la distance est plus grande, la couleur verte/jaune s'affiche sur toutes les LED. Les couleurs virent au rouge/orange lorsque la distance descend en dessous de 100 cm.

La queue utilise un nœud d'impulsion entre -180 et 180. Une fonction ABS rend la valeur négative positive. Cette valeur est transmise au servomoteur et la queue commence à remuer.

En combinant les blocs de neurones et les nœuds fonctionnels, il est possible d'écrire des programmes plus complexes. La vitesse de la queue peut dépendre de la vitesse du robot ou le robot pourrait s'arrêter si le capteur à ultrasons mesure moins de 30 cm.

Étape 11: Tortue 2.0

Tortue 2.0
Tortue 2.0
Tortue 2.0
Tortue 2.0
Tortue 2.0
Tortue 2.0

La tortue LEGO précédente peut être simplifiée en utilisant un morceau de carton/bois. J'ai utilisé un morceau de contreplaqué de 8 mm. Utilisez une scie sauteuse pour créer un cercle d'un diamètre de 19 cm. Percez tous les trous avec un foret de 4, 8 mm. Utilisez la perceuse et la scie sauteuse pour créer les ouvertures carrées. Ce sont pour les roues et les fils.

J'ai utilisé des pièces LEGO pour attacher les pièces du Neuron à la plaque en bois. Il existe des connecteurs compatibles à l'intérieur du kit Explorer. Mais il est également possible d'utiliser des boulons m4 pour la plupart des connexions.

Deux moteurs à courant continu (avec roues) sont fixés au fond (carrés rouges foncés). Tout comme la roue arrière (rectangle noir). Un faisceau LEGO technic est utilisé pour une distance supplémentaire entre la plaque et la roue arrière. Les trois carrés violets sont pour les cartes magnétiques Neuron. La quatrième carte Neuron magnétique est utilisée pour la tête/capteur à ultrasons (rectangle orange). Le cercle rouge indique l'emplacement de la bande LED. Utilisez de petits élastiques (bandes de métier à tisser) pour fixer la bande LED.

Ce robot fonctionne avec le même code que la tortue LEGO.

Étape 12: Composants internes du logiciel

Logiciels internes
Logiciels internes
Logiciels internes
Logiciels internes
Logiciels internes
Logiciels internes

La programmation des blocs Neuron est simple, il n'y a pas besoin d'écrire de code. Les informations suivantes sont donc uniquement destinées à l'utilisateur avancé. Il donne un aperçu du fonctionnement du produit Neuron.

La page Makeblock Github contient du code Neuron. Vous pouvez le télécharger et explorer le code. Il est écrit en Javascript et utilise nodeJS.

Le bloc WiFi doit être connecté à Internet. Lorsque l'application se connecte au SID du bloc WiFi, elle reçoit une adresse IP du bloc WiFi. Les blocs WiFi agissent désormais comme une passerelle.

L'adresse IP du bloc WiFi est 192.168.100.1. Il existe un serveur Web fonctionnant sur le port 80 qui affiche une interface de configuration (mot de passe = makeblock). Cela permet de modifier divers paramètres et options.

Vous pouvez modifier le fuseau horaire et/ou le SSID WiFi. Mais attention, il existe peu de documentation sur les autres paramètres.

L'onglet Services/Partages réseau affiche tous les partages réseau. J'ai créé un partage supplémentaire "Server" dans le dossier "/tmp/run/mountd/mmcblk0p1/neurons-server". Ce dossier (et ses sous-dossiers) contient tous les fichiers journaux, sons et images.

Cela permet de parcourir tous les fichiers avec l'explorateur de fichiers Windows. L'ouverture du partage "\192.168.100.1\Server" donne un accès en lecture à tous les fichiers du moteur Neuron. Y compris le fichier journal du serveur:

UUID de l'appareil: 6A1BC6-AFA-B4B-C1C-FED62004

essayez mqtt.connect connecté à iot cloud ok… [2018-01-19 22:56:43] [WARN] serverLog - Gestionnaire de requêtes 'sound server': {"startRecord"} [2018-01-19 22:56:43] [WARN] serverLog - démarrer l'enregistrement [2018-01-19 22:56:45] [WARN] serverLog - Gestionnaire de requêtes 'sound server': {"stopRecord"} [2018-01-19 22:56:45] [WARN] serverLog - arrêter l'enregistrement [2018-01-19 22:56:46] [WARN] serverLog - Gestionnaire de requêtes 'serveur de son': {"speakerRecognize"} resultSpeech de requête: bonjour

Le fichier config.js contient tous les paramètres. Cela inclut les clés Microsoft et le niveau de journalisation actuel. Ceux-ci peuvent être modifiés, mais conservez toujours une copie du fichier d'origine.

Le niveau de journalisation par défaut est « WARN ». Cela peut être modifié si nécessaire:

* `loglevel`: le niveau de journalisation à définir, n'imprimera pas le journal dont la priorité est inférieure à celle définie.

* prend actuellement en charge le niveau de journalisation * **TRACE**, * **DEBUG**, * **INFO**, * **WARN**, * **ERROR**, * **FATAL**

J'ai créé un partage réseau en lecture seule. Un partage en lecture-écriture permet de placer des images-j.webp

Il existe également un serveur ssh exécuté sur le port 22. Cela permet de se connecter au shell Linux. Utilisez Putty pour vous connecter à 192.168.100.1 et connectez-vous avec l'utilisateur root et le mot de passe makeblock. Mais soyez très prudent.

Les blocs WiFi exécutent OpenWrt. Il s'agit d'une distribution Linux pour les appareils embarqués. Le logiciel Neuron se trouve dans le répertoire "/tmp/run/mountd/mmcblk0p1/neurons-server".

Il est possible de programmer la plupart des blocs Neuron avec le logiciel mBlock. Cela nécessite la version 4.0.4 du logiciel. Les services Microsoft ne sont pas disponibles dans cette version scratch. La reconnaissance vocale Neuron, qui ne nécessite pas ces services, peut être utilisée. Le mBlock Version 5 ne prend pas en charge les blocs Neuron pour le moment (janvier 2018).

Les blocs de code Neuron sont disponibles dans la partie Robots (bleu). Et le logiciel mBlock a l'avantage que non seulement les blocs connectés peuvent être utilisés. Cela n'a aucun sens d'utiliser des blocs que vous n'avez pas, mais cela permet d'écrire du code sans aucun bloc Neuron connecté.

Le mot de passe par défaut doit être modifié lorsque le Neuron est utilisé sur un réseau WiFi ouvert.

Étape 13: Composants internes du matériel

Composants internes du matériel
Composants internes du matériel
Composants internes du matériel
Composants internes du matériel
Composants internes du matériel
Composants internes du matériel

Ces informations sur le matériel ne sont fournies qu'à titre informatif. Cela n'a pas été vérifié par Makeblock !

La plupart du matériel des produits Makeblock est bien documenté. Mais il n'y a pas beaucoup d'informations matérielles sur le produit Neuron. Il y a quelques images sur Kickstarter mais cela montre les internes d'un prototype. Celui-ci n'a qu'un seul connecteur USB et le produit réel a deux connecteurs USB.

Le serveur Web à l'intérieur du bloc WiFi révèle le matériel réel utilisé pour ce bloc. C'est un MediaTek LinkIt Smart 7688. Les principales caractéristiques de cette carte sont:

  • Exécute OpenWrt Linux et prend en charge le développement d'applications en Python, Node.js et les langages de programmation C natifs.
  • Utilise un MT7688AN en tant que MPU autonome et prend en charge deux modes de fonctionnement: passerelle IoT et mode appareil IoT
  • Prend en charge le Wi-Fi, l'hôte USB et les cartes SD.
  • Brochage pour PWM, I2C, SPI, UART, Ethernet et I2S.
  • Prend en charge jusqu'à 256 Mo de RAM avec un stockage supplémentaire sur carte SD.

Les systèmes de fichiers Linux affichent le stockage sur disque interne:

root@makeblock_linkit:~# df -h

Taille du système de fichiers utilisé % d'utilisation disponible Monté sur rootfs 17,9 M 644,0 K 17,3 M 4 % / /dev/root 12,8 M 12,8 M 0 100 % /rom tmpfs 61,7 M 812,0 K 60,9 M 1 % /tmp /dev/mtdblock6 17,9 M 644,0 K 17,3M 4% /overlayfs:/overlay 17,9M 644,0K 17,3M 4% / tmpfs 512,0K 0 512,0K 0% /dev /dev/mmcblk0p1 1,8G 101,4M 1,7G 5% /tmp/run/mountd/mmcblk0p1/

Il y a un volume de disque nommé mmcblk01 à l'intérieur du bloc. Ce nom est principalement utilisé pour les cartes mémoire. Il semble qu'il y ait une carte SD de 2 Go à l'intérieur (1,7 Go + 256 Mo pour le LinkIt 7688).

Les broches pogo ont 4 connecteurs: un pour VCC, un pour la masse et deux pour la communication. Les blocs Neuron communiquent probablement avec le protocole I2c. Il doit y avoir une carte compatible Arduino à l'intérieur de chaque neurone.

Conseillé: