Table des matières:
Vidéo: CircuitPython et TinyLiDAR : Exemple simple : 3 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:08
Le MicroElectronicDesign tinyLiDAR est un module de mesure du temps de vol (ToF) basé sur ST VL53L0X avec une connexion de bus i2c. Les cartes de microcontrôleur Adafruit sont facilement connectées à ce capteur car elles peuvent communiquer le protocole i2c sur leurs broches de données.
Les séries M0/M4 ont l'avantage sur les autres cartes car elles prennent en charge un sous-ensemble de Python, ce qui rend la programmation plus accessible à un public plus large que C sur un Arduino. Il s'agit d'un exemple simple utilisant CircuitPython sur une carte Gemma M0 pour lire les valeurs de distance à partir d'un tinyLiDAR et indiquer la distance en faisant varier la luminosité de la LED RVB intégrée. La carte doit être la version M0 pour la prise en charge de python.
Remarque: Adafruit fabrique également diverses cartes de détection de distance, dont une basée sur le VL53L0X.
Étape 1: Code CircuitPython
- Téléchargez lib/adafruit_dotstar.mpy et lib/adafruit_bus_device/i2c_device.mpy si vous ne les avez pas déjà. Ceux-ci font partie de l'ensemble de bibliothèques en option, voir la première section de CircuitPython I2C pour des notes sur la façon de les installer. Ces fichiers doivent aller dans les répertoires lib et lib/adafruit_bus_device sur le Gemma M0.
- Téléchargez gemma-m0-tinylidar-simple.py, renommez-le en main.py et copiez-le dans le répertoire racine du Gemma M0.
Le programme écrit la sortie sur la console série et fait varier la luminosité de la LED Gemma MO RGB proportionnellement à la distance lue. La LED Gemma M0 alterne entre allumée et éteinte pour les lectures, elle clignotera donc à environ 5 Hz et le comportement par défaut de la carte tinyLiDAR est de faire clignoter sa LED bleue par commande à 10 Hz.
Le bus est piloté à 100 kHz, ce qui fonctionne bien dans ce cas. Comme tout bus, la vitesse de communication est limitée par les caractéristiques de la ou des lignes de transmission, il faut donc prêter attention à la longueur, à la capacité et à d'autres facteurs.
Étape 2: Connecter le TinyLiDAR à un Gemma M0
L'image montre une configuration temporaire efficace mais peu élégante pour connecter le tinyLiDAR à une carte Gemma M0. Le connecteur universel « Grove » à 4 broches du tinyLiDAR est utilisé via un câble de conversion Seeed Grove, un en-tête de rechange et des pinces crocodiles pour se connecter au Gemma M0. Une certaine séparation entre les broches sur l'en-tête supprime le risque d'un court-circuit par inadvertance. Les connexions sont:
- Noir: gnd à gnd
- Rouge: +V à 3Vo
- Blanc: SDA à D0 (données)
- Jaune: SCL à D2 (horloge)
Les cartes Adafruit ont des broches qui supportent efficacement le protocole i2c dans le matériel. Dans le cas du Gemma M0, ceux-ci doivent être utilisés, D0 pour les données et D2 pour l'horloge.
Un bus i2c nécessite une résistance de rappel sur les lignes de données et d'horloge. Dans ce cas, le tinyLiDAR fournit des résistances embarquées de 4,7K. Si ceux-ci ont été retirés du circuit en coupant les lignes, des équivalents doivent être ajoutés au circuit.
Étape 3: sortie série
Le programme écrit une sortie sur la console série indiquant la distance mesurée, voici un exemple de capture d'écran d'un terminal montrant un objet s'éloignant du capteur.
Conseillé:
Comment créer votre propre système d'exploitation ! (lot et exemple à l'intérieur): 5 étapes
Comment créer votre propre système d'exploitation ! (lot et exemple à l'intérieur) : Faites-le maintenant
Exemple de contrôleur de pad à l'aide de Pure Data : 4 étapes
Sample Pad Controller Using Pure Data : Dans ce Instructable, je vais créer un contrôleur pour permettre à certains anciens pads de kit de batterie électronique Roland de déclencher des sons sans le module de batterie d'origine fourni avec le kit. J'utiliserai Pure Data pour créer un patch à charger quelques fichiers wav puis p
Exemple de programmation MTP Arduino : 5 étapes
Exemple de programmation MTP Arduino : dans ce Instructable, nous montrons comment utiliser l'esquisse de programmation SLG46824/6 Arduino pour programmer un dispositif Dialog SLG46824/6 GreenPAK™ programmable à plusieurs heures (MTP). La plupart des appareils GreenPAK sont programmables une fois (OTP), ce qui signifie qu'une fois leur Non-V
Exemple moderne, nouveau et plus simple de casier avec clavier matriciel Arduino 4x4 : 3 étapes
Exemple moderne, nouveau et plus simple de casier avec clavier matriciel Arduino 4x4 : Un autre exemple d'utilisation d'un clavier matriciel LCD 4x4 avec un circuit I2C
IoT Guru Cloud - Exemple de graphique simple : 4 étapes
IoT Guru Cloud - Exemple de graphique simple : IoT Guru Cloud fournit un ensemble de services backend via l'API REST et vous pouvez facilement intégrer ces appels REST à votre page Web. Avec Highcharts, vous pouvez afficher des graphiques de votre mesure simplement avec un appel AJAX