Question

J'apprends à utiliser LabVIEW dans le cadre de mon projet de spécialisation et je me demandais quels avantages le langage de programmation graphique présente par rapport à un langage textuel?

Était-ce utile?

La solution

Tout sur les pilotes d’équipement et les capacités de l’utilisateur. NI (Labview) possède un ensemble bien pris en charge de pilotes d’équipement de laboratoire faciles à interfacer. Un opérateur de test (pas un développeur) a besoin d'une interface graphique avec un gros bouton vert / rouge réussite / échec. J'ai implémenté une automatisation complexe via python dans cygwin. Un développeur de Labview a pu appeler le système cygwin / python et les données ont été extraites des fichiers journaux. Donc, vous pouvez faire les deux. Le système python est portable, maintenable, extensible, utilisable et, mieux encore, gratuit.

Autres conseils

Pour moi, l'avantage de LabVIEW n'est pas graphique mais textuel.

C'est un flux de données contre un impératif.

Programmation de flux de données se prête à la concurrence, car votre exécution est modélisée comme une boîte noire à exécuter lorsque leurs entrées sont valides et leurs entrées / sorties sont câblées ensemble. Ceci par opposition à l'état implicite avec une liste d'instructions sur la façon de le modifier. (Paraphrasant vaguement 'kipedia, l'article lié ci-dessus est préférable.)

Chaque boîte noire peut être exécutée sur un noyau / processeur / nœud distinct, ce qui vous donne effectivement accès libre si vous organisez votre programme de manière à ce que les flux de données soient gérés.

Malheureusement (et c’est un inconvénient de la programmation de flux de données en général), le meilleur moyen de visualiser et d’éditer des programmes de flux de données est graphique, et non textuel. Cela rend très difficile l’utilisation d’outils tels que le contrôle de révision et les générateurs de code.

La question qui se pose est la suivante: les avantages du flux de données l'emportent-ils sur les inconvénients, pour vous et votre projet?

L'un des principaux avantages de la programmation graphique avec LabVIEW est que le code source est très similaire aux schémas de circuits. C'est donc un langage très facile à comprendre pour les ingénieurs électriciens et électroniciens. C’est l’une des raisons pour lesquelles LabVIEW est devenu si populaire dans les domaines de l’acquisition de données et de l’automatisation, où les EE sont nombreux.

Un autre avantage que j’ai trouvé était la rapidité du développement. Vous assemblez vos interfaces graphiques à partir d'une palette de commandes disponibles sur le panneau avant, très similaire à la façon dont vous procédez dans Visual Studio. Le code source est écrit de la même manière, avec de nombreux composants prédéfinis que vous pouvez insérer dans les menus et les relier ensemble.

Un troisième avantage est la compatibilité avec le matériel. La principale activité de National Instruments est le matériel d’acquisition de données. Ils s’efforcent de faire en sorte que tous leurs produits puissent communiquer avec le logiciel LabVIEW directement. De nombreux autres fournisseurs de matériel du secteur de l’acquisition de données et du contrôle d’automatisation font de même.

J'ai déjà utilisé labview pour calculer les paramètres afin de régler une machine nMRI. Ils existent parce qu’en théorie, il est plus facile pour un utilisateur peu expérimenté en langage de programmation de créer un programme. Le flux de contrôle et les structures de décision peuvent être organisés graphiquement et ils peuvent taper leurs formules où ils le souhaitent.

Pour les professeurs et les assistants de laboratoire ... utiles. Pour les vrais développeurs de logiciels ... il serait plus facile d'écrire dans une autre langue.

J'ai utilisé LabView dans le passé, et pour l'acquisition de données, l'instrumentation virtuelle, etc., rien de mieux. La dernière fois que j'en ai utilisé il y a 10 ans, rien de ce que j'ai vu depuis n'a été comparable à ce qu'il était au milieu des années 90.

Selon moi, certains avantages de LabVIEW sont les suivants:

  • Les composants de l'interface utilisateur intégrés tels que les boutons, les graphiques, etc. ne nécessitent littéralement aucune programmation. vous les placez simplement sur le panneau avant et les terminaux de données apparaissent sur le diagramme.

  • Il existe une grande bibliothèque de pilotes pour le matériel d'acquisition de données et les instruments de test. Si votre tâche consiste essentiellement à obtenir des données depuis et vers ceux-ci et à y placer une interface utilisateur, vous pouvez y parvenir pratiquement sans programmation.

  • L'exécution en parallèle de plusieurs tâches est gérée automatiquement - placez deux boucles indépendantes sur le diagramme et elles s'exécuteront simultanément. C’est souvent une exigence dans les applications d’acquisition et de contrôle de données.

De nombreuses personnes, y compris les "vrais développeurs de logiciels", estiment que le paradigme graphique s’adapte mieux à leur façon de penser et de visualiser leur logiciel que le logiciel textuel. Les langues de texte sont sans doute meilleures que LabVIEW (traitées dans une autre discussion sur ce site), mais lorsque LabVIEW convient, il est très efficace pour faire le travail.

Pour moi, tout dépend de ce avec quoi vous êtes à l'aise. Si vous êtes à l'aise dans les langues basées sur du texte, vous constaterez probablement que Labview introduit simplement une autre courbe d'apprentissage. À moins que vous n'ayez un objectif spécifique d'apprendre et d'utiliser Labview, je ne vois pas l'intérêt de votre projet.

D'un autre côté, si vous n'êtes pas particulièrement à l'aise dans les langages à base de texte, j'ai tendance à penser que Labview est plus facile à maîtriser et à apprendre, en particulier pour les non-ingénieurs en logiciel.

J'utilise assez souvent des langages textuels pour l'ingénierie de test, ainsi que Labview et TestStand. Pour moi, il s'agit davantage de savoir qui d'autre utilisera mon logiciel que de moi. Certaines entreprises ont plusieurs personnes formées à Labview et d’autres préfèrent écrire dans des langues basées sur du texte. La formation dans une autre langue peut coûter très cher à l’échelle de l’entreprise et elle modifie les exigences en matière d’embauche pour des postes au sein d’une entreprise, de sorte que certaines entreprises sont pratiquement «bloquées» dans un paradigme ou l’autre. Je dirais que votre meilleur pari si vous avez l’intention de travailler dans l’industrie est d’être doué dans les deux domaines, de cette manière vous êtes flexible. Si tel est le cas et que vous avez le temps d’apprendre non plus, je vous conseillerais de travailler dans celle avec laquelle vous êtes le moins à l’aise et d’élargir votre champ de connaissances, c’est à quoi sert l’école?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top