Conception et mise en uvre des données de l'enregistreur RT-fil basé sur le drone

Résumé: Avec le genre de drones charges utiles de plus en plus, de plus en plus puissant, le dossier de données avioniques et des informations importantes sur l'état de vol de drone de charge utile est également confronté à la quantité de données augmente, la complexité de l'environnement de travail, les heures de travail à long défi de concevoir un appareil polyvalent, très fiable, et un accès facile à l'enregistreur de données est devenu une exigence inévitable du développement de l'industrie. Apporter des améliorations à grande consommation d'énergie, de grande taille, le coût élevé, une faible efficacité de stockage, il y a un inconvénient d'une mauvaise utilisation classique enregistreur de données de drone: transplanté RT-Thread RTOS sur microprocesseur à STM32F4 carte SD comme support de stockage pour l'organisation de données avec le système de fichiers FATFS, une innovation multi-thread pour tamponner des stratégies de stockage de données, et développer une clé USB peut copier des données à partir du PC à l'analyse hors ligne. Enfin, selon un petit logiciel d'essai de traitement par lots et la conception du matériel, peut être testé à plusieurs canaux, stocké dans un environnement d'entrée long flux large de données précises.

TP368.1

A

10,16157 / j.issn.0258-7998.174525

format de citation chinois: Wei Sheng, HE ment haute Tong. RT-Thread UAV enregistreur de données Conception et mise en uvre Technologie électronique, 2018,44 (4): 10-13.

Anglais format de citation: Sheng Wei, Il Biao, Gao Tong. Conception et mise en uvre de drones enregistreur de données basé sur RT-Thread .Application Technique électronique, 2018,44 (4): 10-13.

0 introduction

UAV enregistrements de l'enregistreur de données classiques que le drone tout au long de l'avionique de vol différents paramètres d'état, car ils utilisent un contrôleur de FPGA, une unité de stockage Flash NAND comme, SRAM en tant que mémoire tampon de données en parallèle cache traitement et , bien qu'il puisse obtenir un stockage efficace des données de vol, mais produit un grand problème de consommation de volume et de puissance élevée des données est terminée. Et afin de stocker le fichier de programme , par rapport à la SRAM embarquée ARM et les fichiers de programmation de la mémoire Flash et l'exécution, il augmentera la complexité des circuits périphériques un module de stockage externe FPGA (par exemple EEPROM ou Flash). En outre, Flash NAND en tant que périphérique de stockage de masse, il est nécessaire de concevoir des algorithmes appropriés et effacement mauvais algorithme de gestion des blocs d'équilibrage pour en temps réel dans le réel processus de vérification de la mémoire ECC et maintenir une vraie table de blocs défectueux NAND Flash, au cas où le les données sont écrites pour faire bloc défectueux ne peut pas être lu , réduit considérablement l'efficacité de stockage du système.

Drones applications nécessitent en constante évolution enregistreur de données enregistre non seulement un vol de l'avion, mais aussi d'enregistrer divers équipements d'instruction tâches, données et information pour le travail en ligne, par exemple les caractéristiques suivantes:

(1) les éphémérides stockées d'origine et la station de base GPS différentiel des données mobiles font l'analyse différentielle, pour améliorer la précision de la position de travail aérienne de calcul;

(2) au repos et toutes les données à haute fréquence d'origine mémorisées dans le capteur de navigation en vol hors ligne de modélisation de bruit, le modèle de filtre d'optimisation;

(3) respectivement en amont et en aval des données enregistrées lien instructions et des données, des analyses hors ligne et la fiabilité de la liaison sur le plan de masse.

En outre, il y a de nombreuses fonctionnalités qui attendent d'être exploitées et l'exploitation minière, mais ces caractéristiques sont nécessaires pour stocker des données doivent répondre en temps réel, fiable, faible consommation d'énergie, de petite taille et la facilité d'accès et ainsi de suite. La combinaison des applications pratiques dans le domaine des véhicules aériens sans pilote enregistreur de données conçu sur la base du système d'exploitation embarqué temps réel RT-Thread est.

1 Module de fonction de sélection

En temps réel, fiable, faible consommation d'énergie, de petite taille, à faible coût et la facilité d'accès aux données enregistreur UAV exigences de conception, de la faible consommation d'énergie, la taille et le coût pour répondre du point de vue, le microprocesseur ARM doit être le plus excellent choix, de la rencontre de point de vue en temps réel et très fiable, portable sur toutes les plateformes matérielles du système d'exploitation embarqué en temps réel, par fil-ronde est sans aucun doute le meilleur choix pour assurer, angle des considérations d'accès facile, une carte SD comme le support de stockage sera possible d'éviter le gaspillage de vérifier l'équilibre des ressources CPU et effacer ECC d'autres aspects, un ensemble de données USB de lecture des données d'efficacité de lecture peuvent être améliorées.

Cet article est conçu pour une utilisation microprocesseur de la série plate-forme matérielle intégré de l'enregistreur de données de drone STM32F4, le microprocesseur utilisant le module de lecteur de carte SDIO SD, la réception et le stockage d'une pluralité d'entrées de tampon de données en série, le module USB lire les données mémorisées, et le système d'exploitation embarqué transplanté pour la planification de fil-fil RT et support des systèmes de fichiers, la structure principale représentée sur la Fig.

RT-Thread SIDA par rapport à C / OS-III et FreeRTOS autre système d'exploitation en temps réel intégré présente de nombreux avantages: Tout d'abord, open source, et conformément à la spécification Posix, une grande stabilité, le soutien du système de fichiers FATFS, structure de répertoires multi-niveaux? il peut être de différents types, de différentes sources et différentes utilisations du drone plus de la gestion des fichiers de données scientifiques, et permettant à chaque transfert de fichiers et PC, pour faciliter les données conduisent; algorithme d'ordonnancement de la pleine utilisation prioritaire préemptif à base multithreading et en utilisant des objets du noyau (y compris les sémaphores, mutex, etc.) tranche à base de synchronisation des threads de l'algorithme d'ordonnancement des temps de rotation, et grandement optimisé l'efficacité de l'ordonnancement des threads d'exécution, d'améliorer les performances d'accès aux données du microprocesseur, sur la base de les développeurs de développement de pilotes de matériel efficace et l'application seront en mesure de répondre aux exigences de l'industrie des drones pour l'accès aux données.

2 Hardware Driver Development

développement axé sur le matériel, principalement en trois parties, y compris le module série de développement de pilotes, le module SDIO et un module USB sur un système d'exploitation en temps réel embarqué l'architecture RT-fil. RT-fil est défini comme étant le cadre des modules de couche intermédiaire qui fournit de haut en bas chacune d'une interface, vers le bas à l'interface du pilote de matériel sous-jacent, cette interface pour terminer le module de commande de matériel et l'obtention de données à partir du matériel, et est vers le haut, interface d'application interactive à travers ce cadre de couche intermédiaire, l'accès application peut par une interface unifiée au matériel sous-jacent, le matériel est susceptible de changer, même si le code de la couche supérieure est presque ne change pas, le système améliore la portabilité .

Il comprend le pilote de port série et un port série interruption programme d'initialisation programme de réception, afin d'obtenir une réponse rapide à des données d'entrée externe. pilote SDIO comprend un programme d'initialisation de la carte SD, carte SD et la fonction de la lecture d'informations produit fonction lecteur de carte SD, la fonction utilisée pour mettre en uvre la configuration de la carte SD, doivent également exécuter le système de fichiers FATFS sur la carte SD, un système de fichiers forme organisationnelle pour les données série rapide sont stockées. pilote USB PC pour réaliser la copie des données stockées dans la carte SD à traiter et analyser sur un PC, ce qui nécessite le développement d'un pilote de périphérique de stockage de masse USB , et les interfaces USB principalement descripteur (descripteur) décrit ici configuré comme suit descripteurs : un descripteur de dispositif, le protocole USB 2.0 et prend en charge un descripteur de configuration; un descripteur de configuration, un descripteur d'interface comprenant: un descripteur d'interface, une classe d'unité d'interface de stockage de masse, se compose de deux points d'extrémité, deux descripteur de point d'extrémité, un IN et un point d'extrémité de point d'extrémité OUT pour la transmission de données et de réception, et sont utilisés sous la forme de transfert de bloc, la longueur du paquet de transmission maximale est de 64 B. Divers types d'équipement descripteur de requête de configuration est terminée, USB peut répondre au stockage de masse et de transfert de données protocoles conformément à la norme USB2.0.

Enfin, ces modules d'entraînement sous-jacent 3 et trame de couche intermédiaire RT-fil pour réaliser l'amarrage, l'application peut être effectuée en appelant la couche d'application d'interface de périphérique standard RT-Thread développé.

Plus de trois taraudés données tampon stratégie de stockage

Dans multicanal une grande complexité et la quantité d'applications de données, si le reçu et flux d'octets stocké apériodique go sur une exécution du thread, va inévitablement conduire à des dispositifs de stockage écrit souvent, les périphériques de stockage de masse bloc la plupart du temps au lieu d'octets écrits dans la plus petite unité de temps à écrire en même temps que quelques octets à écrire une seule pièce et, une fois par écrit que quelques octets conduisent inévitablement à une perte de ressources CPU et périphériques de stockage lecture et écriture souvent la plupart du temps du fil, cela est lié à réduire l'efficacité de stockage du système global. Si vous arrive d'avoir de nouvelles données arrivent lors de l'exécution de threads, CPU ne peut pas répondre dans le temps, est lié à affecter en temps réel, ce qui entraîne une perte de données.

Afin d'assurer le stockage de données complète et fiable, et ne prend pas trop de ressources CPU affectent d'autres ordonnancement des threads, ce document présente innovant des données multi-thread technologie mise en mémoire tampon, suivre le principe de « premier et recevoir ensuite la mémoire tampon », qui est conçu pour recevoir trois fils données, mise en mémoire tampon des données et le stockage des données, et l'allocation rationnelle des ressources CPU, de sorte que le fil de réception du traitement d'un minimum, les données en mémoire tampon de filetage modérée, la plupart threading de stockage de données. LIU CL et LAYLAND J proposés et démontré dans la littérature En conclusion, le système d'exploitation en temps réel, le fil est fourni algorithme Rate Monotonic Scheduling (RMS) doit répondre à la plus courte de la période, les règles de priorité plus élevée, de sorte que ce qui précède 3 les discussions prioritaires doivent respecter le principe du « cycle d'augmentation d'exécution, priorité décroissante », le fil des idées de conception spécifique, comme indiqué sur la figure.

Après l'arrivée de la donnée réelle, la plus haute priorité à recevoir des fils de réagir rapidement et flux d'octets reçus en temps utile un tampon d'écriture, une taille de mémoire tampon peut être réglée à environ 256 B, une mémoire tampon après notification à la mémoire tampon est pleine exécution des threads; priorité moyenne dans le tampon après que le fil rapidement commencer à copier les données dans la mémoire tampon secondaire un tampon et un tampon est effacé, le pointeur de données est remise à zéro, il n'a pas la réception d'une tâche d'écriture normale sous l'influence de la taille des deux tampons peut être réglé à environ 2048 B, doit être sensiblement plus grande que la taille d'un tampon, un fil d'exécution est notifiée après le tampon deux de stockage est plein, une faible priorité stockage de niveau de fil démarre rapidement après que les deux copies de la mémoire tampon de données à un tampon trois, deux tampons sont effacés, le pointeur de données est remise à zéro, elle ne touche pas un tampon d'écriture normale en deux la structure tertiaire d'un tampon de file d'attente est agencé pour copier les données à partir du tampon secondaire sur trois écrit séquentiellement aux files d'attente de mémoire tampon en conformité avec, depuis la carte SD, une fois l'unité d'écriture la plus petite B 512, afin d'améliorer l'efficacité de l'écriture au dispositif de stockage, il est nécessaire de contrôler strictement le nombre d'octets écrits dans la carte SD 512 est un multiple entier de la carte SD après l'achèvement du pointeur d'écriture est déplacé vers les trois tampons de données restantes au début et le décalage de temps suivant les données entrantes à la fin de ces données, la précision des données d'écriture et une grande efficacité à titre de garantie, et chaque exécution de fil est terminée tout le délai d'attente de synchronisation pour calculer le prochain déclenchement pour faire en sorte que le tampon encore moins que la zone de données peut également déclencher un délai d'attente retournement progressif de la dernière écriture carte SD, le processus d'exécution du programme illustré à la figure 3.

Après le traitement des données par plus de trois fils et tampon tertiaire, par rapport à l'aide d'une simple réception de données de fil et de stockage, éviter complètement les déchets de problème des ressources de perte de données et la carte SD écrit souvent après la séparation des ports série temps CPU processus de rotation de tranche trois fils est représentée sur la Fig.

Du point de vue du système ordonnancement du robin multithread fonctionnement , la quantité minimale de données reçues fil de traitement, qui occupe très peu de tranche de temps de l'unité centrale, la mémoire tampon d'entrée de données, même pendant l'exécution du fil et la mémoire du fil, la réception fils peuvent aussi anticiper des fils de priorité inférieure et le tampon de stockage des fils à exécuter, afin d'assurer, sans perte de données d'entrée. Et en raison du peu de temps de réception d'un fil d'exécution, après la mise en uvre de la mémoire tampon et le fil avant que le fil est préempté aussi de la place pour continuer le flux de données, puis d'écrire les blocs de données convergent, d'améliorer de manière significative l'efficacité du stockage des données, ce qui réduit la lecture de carte SD temps d'écriture.

4 Test de performance système

Pour vérifier l'exactitude du matériel et la conception et l'efficacité du logiciel, le prochain essai de traitement par lots sur un petit système physique représenté sur la figure. 5, et à l'issue du test de performance du système d'enregistreur de données d'essai.

Les solutions d'essai préparés comme suit: la connexion d'un enregistreur de données de PC transmis simultanément par le logiciel de l'ordinateur à l'enregistreur de données série 3 à 115200 baud différentes fréquences de données sont 10 Hz, la quantité de données sont de 1000 B / fois, UAV applications pour imiter continue des données haute fréquence, ont été testés dans les données monothread et multithread recevoir les magasins de mémoire tampon de deux méthodes, les données simultanées stockées dans l'enregistreur de données est également effectuée par le logiciel du PC PC les données de transmission synchrone est stocké, test de stress de fonctionnement ininterrompu 24 heures après l'achèvement de la copie à travers le port USB trois fichiers différents stockés dans l'enregistreur de données à l'ordinateur, les données de transmission ci-dessus sont stockées en tant que machine de bit de référence, les deux méthodes les taux de stockage de données, l'utilisation du processeur et le nombre réel de lecteur de carte SD, les résultats sont présentés sur la Fig.

Grâce à ce programme ne teste que pour vérifier la fiabilité de la conception matérielle globale du système et des logiciels, mais aussi sur les stratégies de stockage tampon de stratégie de stockage de données monothread et multithread ont été comparés. Les résultats des tests montrent que, par rapport à la stratégie de stockage tampon de données multi-thread en raison de l'ordonnancement des threads a augmenté, même si l'augmentation de l'utilisation du processeur réelle, mais ils apportent améliorer de façon significative le taux de stockage de données est négligeable, mais aussi significativement réduit de cette façon lire et écrire dans la même quantité de fréquence de dispositif de stockage de données, prolonger la durée de vie des périphériques de stockage, nettement mieux que la stratégie de stockage monothread, et toujours maintenir de bonnes données en cas de performances de stockage prolongé, un grand stress tests d'entrée de données , le taux de stockage de données de 100%, à la conception de l'effet désiré. Enfin, l'application effective de l'essai, la préparation de deux enregistreur de données, un enregistreur de données monté sur un petit UAV à quatre rotors, les données de vol de l'UAV données de différence mémorisées et récepteur GPS différentielle de la station mobile, stocker l'autre motif après réception de la station de base GPS différentiel de données de différence, effectuer la différence réelle entre le calcul de post-décomposition vol d'intensité élevée à fréquences multiples en utilisant un logiciel tiers. Après avoir testé, sans perte de données, fonctionnent correctement, peuvent répondre aux besoins des missions de haute intensité.

5. Conclusion

Dans cet article, les applications réelles de l'industrie des drones pour la traction, conçu en temps réel RT-thread-base, fiable, faible consommation d'énergie, de petite taille et la facilité d'enregistreur de données d'accès des drones, réalisé grâce à des données multi-thread tampon stratégie de stockage un grand nombre de conditions d'entrée de données en continu à haut rendement, stockage haute fiabilité, et par le câble USB pour exporter rapidement les données stockées sur le PC après l'analyse, afin de répondre aux exigences de plus en plus complexes des applications de l'industrie des drones enregistreur de données . En outre, le mode de traitement tampon de données multi-thread et multi-niveau ne se limite pas à l'espace embarqué, le besoin de données multi-canaux de traitement de développement informatique et de logiciels de serveur ont également une référence.

références

Développement de Han Yonghao. Enregistreur de données de vol Une masse de drones Nanjing: Nanjing Université d'aéronautique et d'astronautique, 2012.

Yan Ye. UAV grande capacité technologie de traitement de données déchargent enregistreur de données et de la recherche Nanjing: Nanjing Université d'aéronautique et d'astronautique, 2014.

Conception et mise en uvre de Guang-Hui, Zhou Jun, à l'aube Island. Faible coût enregistreur de données de véhicules aériens non habités Mesure et contrôle de la technologie, 2011,30 (1): 10-12.

Zhangsheng Yong, haut Shijie, hépatologie, et autres. FPGA de la méthode de traitement de blocs défectueux NAND Flash basée sur Génie informatique, 2010 (6): 239-240,243.

Pengzhuo Wen, Xinmin, Sheng Hung. Basé sur le module de mémoire à haute vitesse de grande capacité NAND Flash FPGA contrôle Ingénierie, électronique, 2017,25 (7): 111-114,118.

théorie RT-fil et son application au système Cao d'exploitation en temps réel embarqué Jinan: Shandong Université des sciences et de la technologie, 2011.

Xueyuan développement d'applications Yuan .USB Encyclopédie . Pékin: Messages populaire et des télécommunications Press, 2007.

Lu Bin, la conception et le développement du système de gestion de réseau intégré de faible puissance, et les périphériques USB de stockage de masse . Pékin: Université de Beijing des Postes et Télécommunications, 2013.

LIU C L, algorithmes LAYLAND J.Scheduling pour multipro-grammation dans un environnement en temps réel dur .Journal de l'ACM, 1973,20 (1): 46-61.

mise en mémoire tampon de données Zhang Bo. RTOS Électronique mondiale, 2014 (4): 24-25.

Informations sur l'auteur:

Sheng Wei, Il Biao, Tong haute

(Beijing Science Instrument optique et de l'Université d'ingénierie de l'aéronautique et de l'astronautique, Beijing 100191, Chine)

Interview de vote amoy | Gal Gadot: J'espère que, après dix ans peuvent jouer Wonder Woman
Précédent
« Meilleur évolution du petit ami » avis final de l'exposition Kitty Zhang Kai Zheng ont organisé une « routine d'amour. »
Prochain
agitation magnétique rotatif automatique pour maintenir une constante de 55 ° C, ce mode de réalisation boisson trop humide | batardeaux de titane
Lui, le plus difficile à jouer l'un des rôles de l'histoire du cinéma
robot marcheur ne peut pas maladroit, de nouvelles méthodes de formation de l'intelligence artificielle DeepMind aller très élégant
Jusqu'à finalement, ce film aurait dû venir
« Flash de la piste 4 » de nouvelles informations: Lien fait la perte de mémoire
« Comme un cur d'ombre » exposer les confrontent vérité l'homme contemporain amour points de douleur de mariage
Vous recherchez Feng Xiaogang
« Wukong Trek » pignon fixe 1 mai drôle terre rire histoire
« Academic » basé sur le champ potentiel artificiel amélioration de la planification UAV Route en ligne
Acteur crise de la quarantaine, stimulus stimulus
Gary genoux tenir sa femme cuisse fille Grace ignorer les parents peinture calme
La deconstruction Alexa d'Amazon de 15.000 types de compétences: trois factions, baisse de la réputation, la mort longue queue