Une conception d'acquisition de caméra intégrée doit commencer par les données requises par l'application, puis vérifier la prise en charge du capteur, de l'interface et du système. Ce qui suit est une méthode de conception de projet pour des conditions matérielles spécifiées. Il n'établit pas d'adaptation de capteurs et de processeurs arbitraires.
Chaîne de signaux et de données
Composant d'imagerie → composants d'interface et de transport → récepteur et pilote hôte → tampons de trame et informations de synchronisation → API d'acquisition → application de traitement, d'affichage ou de stockage. Les paramètres et l'état utilisent les canaux de contrôle correspondants. Le client ou un fournisseur spécialisé fournit l'éclairage et l'optique spécialisée, avec des responsabilités convenues par projet.
Définir le développement par couche
| Couche | Entrées à confirmer | Sorties possibles |
|---|---|---|
| Imagerie | Capteur ou module, puissance, horloges, modes et formats | Modes de périphérique et enregistrements de configuration de registre ou de SDK |
| Transport | Direction de l'interface, câbles, ponts ou SerDes et chemin de contrôle | Définitions d'interface, informations de connexion et état des liens |
| Système | Version du système d'exploitation, pilote, récepteur, formats et prise en charge du tampon | Configuration, modifications du pilote et enregistrements de débogage d'acquisition |
| Données | Disposition de la mémoire, horodatages, identifiants de trame et propriété | Interface du cadre, cycle de vie et documentation des erreurs |
| Application | Affichage, traitement, enregistrement, concurrence et arrêt | Exemples, enregistrements de configuration et de vérification fonctionnelle |
Lorsqu'un SDK existant fournit les fonctions requises, définissez son intégration et la portée de son wrapper. Répertoriez séparément le code source, les fichiers de conception, les conditions de construction et les tests lorsque des modifications du pilote ou du matériel sont nécessaires. Les wrappers d'applications et le développement au niveau de la carte sont des tâches différentes.
Informations minimales sur l'interface de trame
Considérez un identifiant de trame, l'heure de capture et la source d'horloge, les dimensions, le format de pixel, le pas de ligne, la longueur de données valide, la propriété du tampon, l'état de qualité et les codes d'erreur. Définissez l’origine et la signification de chaque horodatage. Le temps de réception de l'hôte n'est pas automatiquement le temps d'exposition du capteur. Renvoie des états explicites pour les trames non valides, les déconnexions et les délais d'attente afin que le logiciel en aval ne traite pas une ancienne trame comme un nouveau résultat.
Acceptation par étapes
Vérifiez d'abord l'alimentation, le démarrage et l'énumération. Vérifiez ensuite les trames et les contrôles bruts dans le mode spécifié, l'intégralité et la synchronisation des trames sous la charge de travail cible, et enfin l'arrêt anormal, la reconnexion et l'intégration des applications. Préservez les versions du matériel, du micrologiciel, du système d’exploitation, des pilotes et de la configuration. Enregistrer les échecs et les conditions de reproduction à chaque étape.
Contributions à la remise et à l’évaluation
Les livrables convenus peuvent inclure des définitions d'interface, du code source spécifié, des instructions de construction, une configuration, des exemples, des trames brutes et des enregistrements de test. Les SDK, micrologiciels et composants tiers des fournisseurs sont transférés sous leurs licences respectives. Fournissez des modèles de caméra et de processeur, des connexions complètes, des modes cibles, une documentation SDK et système, des échantillons bruts et des exigences d'acceptation.
Prestations associées : pilotes de capteur et mise en place du lien de caméra, acquisition d'images intégrées et demandes de renseignements sur le projet.