Panier d'achat :
0 article / 0.00 €

[s'identifier]


Systèmes filaires

Plate-forme de développement vidéo "CMUcam3"

Plate-forme de développement vidéo "CMUcam3"

L'objectif du projet "CMUcam" est de pouvoir offrir à la plupart des systèmes embarqués un dispositif de traitement vidéo performant, économique et simple à utiliser. Le dernier produit en date issu de ce projet (qui en est à sa 3ème génération) se présente sous la forme d'une petite platine électronique basée sur un microcontrôleur ARM™ associé à un capteur vidéo CMOS couleur.
 

Appelée "CMUcam3", cette platine peut être exploitée soit comme un capteur vidéo intelligent prêt
à l'emploi
(très facilement interfaçable via une liaison série avec n'importe quel microcontrôleur: PIC™, AVR™, modules PICBASIC, CUBLOC, Basic Stamp™...), soit comme une véritable plate-forme de développement, laquelle vous permettra de concevoir vos propres algorithmes de traitements et d'analyses vidéos grâce à une bibliothèque d'exemples et de librairies accessibles en "open source". Dès lors, le module "CMUcam3" pourra vous révéler ses talents et ses possibilités en terme
de reconnaissance de couleurs ou de reconnaissance de formes.
   
   
Présentation matérielle:
Développée par l'Université de Carnegie Mellon qui a sélectionné Lextronic pour fournir et fabriquer ce module sous licence, la "CMUcam3" est conçue autour d'un puissant processeur ARM™ de type LPC2106 (origine NXP™ / Philips™) associé à une mémoire FIFO et à un module caméra couleur CMOS interchangeable Omnivision™.   
   
 
    Entièrement programmable en langage "C" via une suite logiciel librement accessible de type GNU, le module "CMUcam3" pourra être très facilement "flashé" avec vos propres applications (ou une des nombreuses applications prêtes à l'emploi disponibles sur le site dédié à ce projet) au moyen d'une simple liaison série sans autre outil de développement complémentaire. 
 
De très faibles dimensions (55 x 57 mm), la "CMUcam3" se compose d'une platine principale reliée à un module caméra couleur via un connecteur mâle / femelle 2 x 16 points.
   
 
Destinée à être alimentée de 6 à 15 Vcc (de préférence en 6 Vcc), la platine de la "CMUcam3" dispose d'une multitude de connecteurs mâles au pas de 2,54 mm permettant d'avoir accès à un port de communication série doté d'un niveau logique +/- 12 V (pour une liaison directe avec le port RS-232 d'un PC) ou d'un niveau logique 0 / 5 V (pour une liaison directe avec le port série d'un microcontrôleur externe). La sélection d'une des 2 sorties s'effectue au moyen d'un cavalier. 
    
  
                
  
 
D'autres connecteurs donnent accès à des ports d'entrées/sorties à usages divers, dont certains pourront (suivant le Firmware chargé dans la "CMUcam3") être utilisés pour piloter directement 4 servomoteurs à partir d'ordres séries envoyés à la "CMUcam3". L'alimentation des servomoteurs pourra suivant leur nombre et leur puissance se faire soit directement via le régulateur intégré de la platine ou soit via une source externe (la sélection du mode d'alimentation s'effectuant par un cavalier). 4 Leds de visualisation (dont la première sert à visualiser la présence de l'alimentation) peuvent être pilotées par certaines sorties du microcontrôleur de la platine. 
  
 
La "CMUcam3" dispose également d'un mini interrupteur "M/A" et d'un bouton "Reset" permettant accessoirement d'initier la phase de programmation ISP de votre application dans la mémoire Flash du microcontrôleur ARM™ LPC2106 via le port série. 
   
Une connexion "à souder" permet également de disposer d'une sortie vidéo PAL analogique en provenance du module caméra de la platine. Enfin, un connecteur pour carte SD™ / MMC™ est quand à lui présent sur l'autre face de la "CMUcam3". Ce dernier pourra (en fonction du Firmware installé) être utilisé pour stocker des données ou des images sur une carte mémoire SD™ ou MMC™ (non livrée). 
      
   
   
   
Principales caractéristiques techniques:
- Faibles dimensions: 55 x 57 mm (épaisseur: 50 mm)
- Microcontrôleur ARM™ LPC2106 avec 128 K de mémoire Flash et 64 K de RAM
- Mémoire RAM (FIFO) externe 512 Kb (Max. Rate: 50 FPS)
- Environnement de développement Open source pour Windows™ ou Linux
- 4 sorties PWM pour servomoteurs (sans nécessité d'acquérrir de platine additonnelle)
- Connecteur pour lecture/écriture sur cartes SD™ / MMC™ en FAT16 (carte non livrée)
- Chargement d'images en mémoire à 26 frames/sec.
- Langage interpréteur "LUA" pour prototypage rapide
- Emulation permettant de disposer d'un fonctionement quasi similaire à la "CMUcam2"
- Sortie vidéo analogique PAL
- Buffer FIFO avec passes multiples pour traitement des images
- Tourelle de fixation avec déplacement "X/Y" disponible en option (voir au bas de la page)
- Idéal pour robotique ludique, recherche, éducation, reconnaissance de forme, reconnaissance de
  couleur, reconnaissance de visage, data-logger...   
 
 

Reprogrammation de la "CMUcam3":
La "CMUcam3" est livrée pré-assemblée avec un petit câble de liaison série ainsi qu'un connecteur d'alimentation avec sorties sur fils. Cette dernière est également pré-programmée (et testée) avec un Firmware vous permettant de l'exploiter immédiatement comme un capteur vidéo intelligent capable d'émuler à peu de chose près toutes les possibilités du module "CMUcam2". Pour rappel, la "CMUcam2" correspond au projet "CMUcam" de 2ème génération conçu sur la base d'un microcontrôleur "SX52". De part l'obsolescence du "SX52", le module "CMUcam2" n'est à ce jour plus disponible en Europe.    


Dès lors, il en résulte que pour bon nombre d'entres vous la "CMUcam3" sera immédiatement opérationnelle et capable de s'interfacer simplement et rapidement avec votre microcontrôleur ou votre module microcontrôlé habituel (PIC™, AVR™, MSP430, HCS12, PICBASIC, CUBLOC, Basic-Stamp™...).
  
Toutefois si vous le désirez vous pourrez également télécharger vous même un autre Firmware dans la mémoire de la "CMUcam3" afin que cette dernière puisse réaliser d'autres fonctions (reconnaissance de visages, suivi automatique de couleurs, reconnaissance d'environnement, dispositif de surveillance vidéo avec enregistrement des images sur une mémoire SD™ en cas de détection de mouvement, etc...).
       
   
     
    
 
La mise à jour du Firmware de la "CMUcam3" s'effectue très simplement au moyen de l'utilitaire "LPC210x Flash" qui vous permettra de transférer un fichier ".hex" dans la mémoire Flash du microcontrôleur ARM™ via le port série de la platine (sans autre outil additionnel). 
   
Vous pourrez aussi décider de modifier ou de développer vous même votre propre "Firmware" sur la base des exemples et des codes sources existants. Pour ce faire, vous disposez de tout l'environnement logiciel nécessaire en téléchargement sur le "site officiel" de la "CMUcam3" (compilateur "C" GNU, programme de "flashage" du LPC2106, codes sources associés aux différents Firmwares, etc...). 
    
    
 
Description des différents Firmwares exploitables sur la CMUcam3:
Ces différents Firmwares sont disponibles sous la forme de codes sources ou de fichiers ".hex" directement téléchargeables dans la "CMUcam3".
  
 
CMUcam2 firmware emulation


 C'est le Firmware pré-installé lorsque vous recevez la "CMUcam3". Celui-ci consiste à faire fonctionner la "CMUcam3" comme s'il s'agissait (à quelques exceptions) du module "CMUcam2", lequel pourra alors:
     
- Détecter un objet coloré à près de 50 images par secondes
  (la valeur est fonction de la taille de la fenêtre de travail sélectionnée)
- Suivre un objet coloré en mouvement (détection différence de trame, jusqu'à 26 par sec.)
- Trouver le centre de l'objet à suivre
- Renvoyer les données de couleur et variance d'un objet
- Fournir un "histogramme" de chaque canal de couleur
- Manipuler les pixels des images
- Transférer en temps réel les pixels de l'objet suivi en une image
- Redimensionner la fenêtre de détection de la caméra
- Récupérer l'image "vue" par la caméra
- Piloter très simplement jusqu'à 5 servomoteurs type modélisme
- Etc, etc...
   
Une des principales applications possibles de la "CMUcam3" est bien évidément sa mise à contribution pour la réalisation de petits robots ludiques intelligent qui pourront très simplement réagir à leur environnement afin de pouvoir suivre des objets colorés. Les petites vidéos ci-dessous montrent des exemples d'aplications réalisées à l'aide de la "CMUcam" (qui est en fait "l'ancêtre" de la "CMUcam3" puisqu'il s'agit de la première génération de module développé). Vous pourrez dés lors réaliser sans peine la même chose avec la "CMUcam3" en gardant à l'esprit que la "CMUcam" est bien moins puissante que la "CMUcam3"... Ce qui vous laisse entrevoir les possibilités de progression offertes par le module actuel...
   
 
                
   
     

Cette vidéo vous fera réellement prendre conscience du potentiel du projet "CMUcam" en vous proposant une sélection de robots capables de se déplacer et de suivre littéralement une balle ou une ligne "du regard". A télécharger de toute urgence !!! - N'oubliez-pas de monter le volume sonore de vos enceintes....
 

  La vidéo complète

         
 
Les différentes vidéos ci-dessous mettent en scènes des petits robots capables de suivre des objets colorés en déplaçant des tourelles "X/Y" (ou en se déplaçant litéralement).
    
  La vidéo du robot "B2Bot"                 La vidéo du robot "MiniBot3D"
  La vidéo du robot "MiniBot"     La vidéo du suivi horizontal d'un objet
      
                
     
   
 
La "CMUcam3" (avec Firmware "CMUcam2")... Comment ça marche ?
L'utilisation de la "CMUcam3" est on ne peu plus simple, puisqu'il suffira au système hôte (votre PC, votre microcontrôleur, votre module PICBASIC, CUBLOC ou BASIC-STAMP™) de lui envoyer (via le port série) une succession de codes ASCII se terminant par l'équivalent d'un retour chariot (code ASCII 13). Ces codes ASCII correspondent aux commandes et actions que vous désirerez lui faire effectuer (la "CMUcam3" est à même d'en reconnaître plus d'une quarantaine). Selon les cas, la "CMUcam3" vous répondra en vous renvoyant également une succession de codes ASCII. 
         
Ainsi par exemple les commandes:
 
L0 1 (Enter) -> allumera la Led "rouge" de la "CMUcam3"
L0 0 (Enter) -> Eteindra la Led "rouge" de la "CMUcam3"
   
SV 0 200 (Enter) -> Déplace un servomoteur sur une certaine position
                                Ce dernier devra être connecté sur une des sorties de la "CMUcam3"
 
Selon le même principe, des ordres plus complexes peuvent être envoyés pour gérer la détection de couleur en indiquant à la "CMUcam3" les limites minimales et maximales des 3 composantes RGB de la couleur que vous voudrez rechercher. Dès lors, chaque pixel de l’image sera analysé et comparé avec vos valeurs afin de vous retourner les coordonnées des pixels les plus en haut à gauche (x1,y1) et les plus en bas à droite (x2, y2) qui correspondent à votre requête. 
  
 
    

Logiciel de test
"Graphical User Interface"

Bien que principalement destinée à être utilisée sur des dispositifs embarqués autonomes (tels que des robots ludiques par exemple), la "CMUcam3" dispose d'un très puissant logiciel de test développé en JAVA™. Pouvant fonctionner sur différentes plate-formes et systèmes d'exploitation (Windows™, Linux™, MAC OS™), ce dernier vous permettra de tester immédiatement et simplement la plupart des fonctions de la "CMUcam3" en communiquant avec elle au moyen de différents menus très didactiques.
 

      
 
Appelé "GUI" (pour Graphical User Interface), ce logiciel est aussi compatible (en partie) avec les versions antérieur du projet "CMUcam" (CMUcam1 et CMLUcam2). Toutes les fonctions du logiciel sont accessibles depuis une fenêtre dotée de multiples "onglets". Une ligne de saisie en haut de l'écran vous permet également d'envoyer des ordres à la "CMUcam3" en tapant directement les codes ASCII correspondants aux différentes commandes reconnues par la caméra.
   
 
              
   
Le premier onglet permet d'effectuer une capture d'écran de ce que "voit" la "CMUcam3". L'image une fois capturée peut être sauvegardée sur le disque dur du votre ordinateur. En déplaçant le curseur de la souris sur l'image, le programme vous retourne les valeurs des composantes (RVB) de chaque pixel (idéal pour déterminer les spécifications de la couleur de l'objet que l'on souhaite suivre). 
    
 
            

En cliquant sur un pixel, le logiciel délimite automatiquement le contour de l'objet (via une sur-impression colorée). Vous pouvez également sélectionner une tolérance lors de la génération du contour de l'objet afin de séparer des objets de couleurs plus ou moins proches.
    
Après coups, il vous sera possible (via un autre onglet) de déplacer l'objet devant la caméra, afin que l'écran du PC affiche un rectangle bleu correspondant à la "taille" de l'objet. Ce rectangle se déplacera également à l'écran en même temps et selon les mêmes conditions que l'objet que vous présenterez à la caméra. 

      
  
              
 
D'autres onglets du logiciel permettent d'obtenir un histogramme de l'image vue par la caméra ou d'obtenir un affichage statistique des couleurs de l'image vue par la caméra.
  
    
              
  
Vous pourrez également piloter (via des curseurs manipulables à la souris) jusqu'à 4 servomoteurs (non livrés) connectés sur les sorties prévues à cet effet sur la "CMUcam3". Un dernier onglet s'apparente à une véritable "boîte de réglage" qui vous permettra de modifier la plupart des paramètres de la "CMUcam3" liés au traîtement vidéo.
   
    

Security-cam firmware
Ce firmware vous permettra de transformer votre "CMUcam3" en système de vidéosurveillance expérimental avec détection de mouvement par analyse d'image. Après avoir chargé ce firmware, il vous faudra (hors tension) insérer une carte SD™ / MMC™ dans le connecteur prévu à cet effet sur la "CMUcam3". La carte devra préalablement avoir été formatée au format FAT (ne pas utiliser le format FAT32 qui n'est pas supporté). A la mise sous tension de la platine, la "CMUcam3" effectuera une surveillance permanente des images et dès que celle-ci détectera un mouvement la caméra fera clignoter brièvement une de ses leds tout en sauvegardant l'image liée à l'alarme détectée sur la carte SD™/MMC™. Après coups, il vous sera possible de récupérer toutes les images sauvegardées sur la carte SD™/MMC™ à partir d'un PC équipé d'un lecteur de carte SD™/MMC™.
   
    

Viola-jones face detector
Vous trouverez une description très intéressante concernant la mise en oeuvre d'un système de détection et de reconnaissance expérimentales de visages via une "CMUcam3". Cet exemple est conçu sur la base d'une parrution écrite par P.Viola et M. Jones (Robust Real-Time Face Detection). Après une phase d'apprentissage, la "CMUcam3" sera en mesure de retourner les coordonnées de l'emplacement du visage détecté dans l'image.
 
         
   
    

Implémentation d'un système de navigation pour robots
Vous trouverez une autre description très intéressante concernant la mise en oeuvre d'un système de navigation permettant à un robot de trouver les issues qu'il peut emprunter après analyse de l'image par la "CMUcam3". La "CMUcam3" numérisera l'image puis "filtrera" cette dernière pour en extraire les passages non obstrués. Les informations sont transmisent au système hôte sous la forme de trames ASCII via la liaison série. Une version spéciale permet également d'afficher le résultat sous la forme d'un histogramme via le logiciel de test "Graphical User Interface" décrit ci-avant.
  

   
    

Petit robot mobile "Spoon Bot"

Cette réalisation vous permettra de concevoir un petit robot mobile différentiel sur la base d'une "CMUcam3". Equipé de 3 servomoteurs, ce dernier sera à même d'effectuer des déplacements divers (y compris en "Pan" et "Tilt") afin de pouvoir suivre les objets colorés. Sa construction est très simple et fait appel à un minimum de composants pour un résultat très didactique.
   
 

      
     
  
Firmware "Frame Grab"
Ce Firmware permet (en association avec un petit logiciel de test pour PC) de faire l'acquisition d'images en provenance de la "CMUcam3" afin de les afficher sur l'écran de l'ordinateur ou de les sauvegarder sur son disque-dur. Vous disposez également d'un petit terminal de saisie permettant d'envoyer des commandes en ligne à la caméra.
 

    
      
  
Autres exemples d'applications
Vous trouverez de nombreux autres exemples de codes permettant de suivre une couleur, d'activer la fonction d'histogramme, de piloter le port série, d'avoir accès aux données à la carte SD™/MMC™...
  
   
 
Pour en savoir plus...
Téléchargez la documentation complète, les exemples, les firmwares, les codes sources, les utilitaires...
 
  Documentation complète
 
La platine "CMUcam3" est livrée avec son câble série et son connecteur d'alimentation. 
         
La "CMUcam3" est fabriquée sous licence par Lextronic.
Copyright Carnegie Mellon University, 2007. Tous droits réservés
 
CE PRODUIT EST EPUISE A CE JOUR. NOUS ATTENDONS UN MODELE DE REMPLACEMENT - CONTACTEZ-NOUS.
 
Référence : CMUCAM3
125.42 € HT   150.00 € TTC
     Quantité :  
  » dont éco-participation : 0.01 € TTC
 
 

Autres produits conseillés :


Tourelle "Pan / Tilt" universelle
Tourelle "Pan / Tilt" universelle
Pour "CMUcam3" et capteurs divers
Référence : TURRET4
68.56 € HT
82.00 € TTC
Quantité :  
Servomoteur à pignons métal
Servomoteur à pignons métal

Référence : MS3003
17.72 € HT
21.19 € TTC
Quantité :  
Plate-forme de développement vidéo "CMUcam3"
Plate-forme de développement vidéo "CMUcam3"
Version sans module caméra
Référence : CMUCAM3/SC
117.05 € HT
139.99 € TTC
Quantité :