Dans cette version, nous allons découvrir comment configurer le capteur de mouvement intégré du CodeCell pour essayer de deviner l'activité personnelle que vous effectuez et l'afficher sur un écran OLED. Il est conçu pour suivre différents états tels que la marche, la course, le vélo, la montée des escaliers et la conduite !
Le capteur de mouvement du CodeCell est capable de catégoriser diverses activités personnelles en fonction des schémas de mouvement. En fonction de ces schémas, le capteur BNO085 essaiera de deviner quelle activité est en cours d'exécution. Ces activités comprennent la marche, la course, le vélo, la conduite et bien plus encore.
La bibliothèque CodeCell vous permet de lire directement l'activité sans aucun code complexe.
Dans cet exemple, le CodeCell surveille en permanence l'activité personnelle estimée du BNO085. L'activité ayant la plus grande chance d'être détectée est ensuite affichée sur un écran OLED à l'aide de la bibliothèque Adafruit SSD1306. Cette configuration est idéale pour créer des moniteurs d'activité portables ou des trackers de fitness qui fournissent un retour d'information en temps réel sur les activités physiques.
Notez que certaines activités peuvent prendre entre 10 et 30 secondes pour commencer à être reconnues, car cela dépendra principalement de l'orientation du CodeCell et de l'endroit où il est monté.
Vous trouverez ci-dessous un exemple de code pour vous aider à démarrer. Assurez-vous que votre CodeCell est connecté via USB-C et que votre écran OLED est correctement câblé sur le côté inférieur du CodeCell , à l'aide de ses broches de masse, 3V3 et I2C (SDA et SCL).
Suivez les commentaires dans le code pour comprendre chaque étape.
#include <CodeCell.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
CodeCell myCodeCell;
/* Configure the OLED Display */
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 32 // OLED display height, in pixels
#define OLED_RESET -1 // Reset pin # (or -1 if sharing Arduino reset pin)
#define SCREEN_ADDRESS 0x3C // Adresse de l'écran OLED
Affichage Adafruit_SSD1306 (LARGEUR_ÉCRAN, HAUTEUR_ÉCRAN, &Câble, RÉINITIALISATION_OLED) ;
int read_timer = 0;
configuration vide() {
Serial.begin(115200); // Définissez le débit en bauds série sur 115 200. Assurez-vous que Tools/USB_CDC_On_Boot est activé si vous utilisez Serial.
myCodeCell.Init(MOTION_ACTIVITY); // Initialise la détection d'activité.
si (!display.begin(SSD1306_SWITCHCAPVCC, ADRESSE_ECRAN)) {
Serial.println(F("Échec de l'allocation SSD1306"));
}
affichage.clearDisplay();
affichage.setTextSize(1);
affichage.setTextColor(SSD1306_WHITE);
affichage.display();
retard (2000);
}
boucle vide() {
si (myCodeCell.Run()) {
si (read_timer < 10) {
lire_timer++;
} autre {
// Mise à jour toutes les 1 seconde
minuteur_de_lecture = 0;
affichage.clearDisplay();
affichage.setCursor(32, 16);
display.print(F("Activité : "));
affichage.setCursor(32, 24);
commutateur (myCodeCell.Motion_ActivityRead()) {
cas 1:
display.print("Conduite");
casser;
cas 2:
display.print("Cyclisme");
casser;
cas 3:
cas 6:
display.print("Marche");
casser;
cas 4:
display.print("Toujours");
casser;
cas 5:
display.print("Inclinaison");
casser;
cas 7:
display.print("En cours d'exécution");
casser;
cas 8:
display.print("Escalier");
casser;
défaut:
display.print("Lecture..");
casser;
}
affichage.display();
}
}
}
Ce projet montre comment utiliser le capteur de mouvement du CodeCell pour surveiller les activités personnelles et afficher les résultats sur un écran OLED. Cette configuration de base fournit une base pour le développement de systèmes de surveillance d'activité plus avancés.
Expérimentez avec le code et les paramètres pour créer votre propre objet portable personnalisé !
Soyez le premier informé des nouveaux projets et bénéficiez d'offres intéressantes !
© 2024 Microbots.