LabVIEW: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Collegamento con l'hardware: Ridotta e rinominata la sezione, rimosso avviso
Etichette: Modifica da mobile Modifica da web per mobile
Ensahequ (discussione | contributi)
correggo link
 
(43 versioni intermedie di 25 utenti non mostrate)
Riga 1:
{{F|linguaggi di programmazione|aprile 2017|solo fonti collegate al soggetto della voce}}
{{Software
|Nome = LabVIEW
|Logo =
|Screenshot =
|Didascalia =
|Sviluppatore = [[National Instruments]]
|UltimaVersione = 20152023 Q3
|DataUltimaVersione = 18 luglio 2023<ref>{{cita web|https://www.ni.com/it-it/support/downloads/software-products/download.labview.html|LabVIEW Download}}</ref>
|DataUltimaVersione = Agosto 2015
|UltimaVersioneBeta =
|DataUltimaVersioneBeta =
Riga 12:
|SistemaOperativo2 = macosx
|SistemaOperativo3 = linux
|Linguaggio = C
|Genere = ide
|Licenza = Proprietario
|SoftwareLibero = no
|Lingua = Cinese (semplificato), coreano, francese, giapponese, inglese, tedesco
|SoftwareLibero = no
|SitoWeb = http://www.ni.com/labview/i/
|Linguaggio2 = C++
}}
'''LabVIEW''' (abbreviazione di '''Lab'''oratory '''V'''irtual '''I'''nstrumentation '''E'''ngineering '''W'''orkbench) è l'[[ambiente di sviluppo integrato]] per il [[linguaggio di programmazione]] visuale di [[National Instruments]]. Tale linguaggio grafico viene chiamato ''Linguaggio G''.
 
Realizzato originariamente per [[Macintosh|Apple Macintosh]] nel [[1986]], LabVIEW viene principalmente utilizzato per principalmente programmi di acquisizione e analisi dati, controllo di processi, generazione di rapporti, o più generalmente per tutto ciò che concerne l'[[Automazione|automazione industriale]], su diverse piattaforme come [[Microsoft Windows|Windows]], [[Linux]], [[Mac OSmacOS]] e [[ProgrammableControllore logiclogico controllerprogrammabile|controllori]] National Instruments.
 
== Programmazione G ==
Il linguaggio di programmazione usato in LabVIEW si distingue dai linguaggi tradizionali perché la sua [[Sintassi (informatica)|sintassi]] non è scritta ma grafica, e per questa ragione viene chiamato G-Language (Graphic Language). Un programma o sottoprogramma G, denominato '''VI''' (Virtual Instrument), non esiste sotto forma di [[file di testo|testo]], ma può essere salvato solo come un [[file binario]] che può essere aperto e compilato solo da LabVIEW.
 
La definizione di strutture dati ed [[algoritmo|algoritmi]] avviene con [[icona (informatica)|icone]] e altri oggetti grafici, ognuno dei quali incapsula funzioni diverse, uniti da linee di collegamento (''wire''), in modo da formare una sorta di [[diagramma di flusso]]. Questo tipo di linguaggio viene definito ''dataflow'' (flusso di dati) in quanto la sequenza di esecuzione è definita e rappresentata dal flusso dei dati stessi attraverso i fili monodirezionali che collegano i blocchi funzionali. Poiché i dati possono anche scorrere in parallelo attraverso blocchi e fili non consecutivi, il linguaggio può realizzare spontaneamente il [[multithreading]] senza bisogno di esplicita gestione da parte del programmatore.
 
== Collegamento con l'hardware ==
Interessante è la modalità di realizzazione del software, che si limita spesso al semplice collegamento di blocchi già pronti, grazie alla vasta libreria di funzioni predefinite e [[driver]] per la gestione dell'hardware. LabVIEW è predisposto per la comunicazione con l'hardware di tipo [[IEEE 488]], [[VXI]], [[PXI]], [[EIA RS-232|RS-232]], [[EIA RS-485|RS-485]] e dispositivi [[Acquisizione dati|DAQ]] [[plugin (informatica)|plug-in]]. I programmi LabVIEW sono compatibili con molti modelli di strumenti programmabili e schede di acquisizione.
 
== Dettagli dei VI ==
Line 39 ⟶ 40:
 
=== Pannello frontale ===
Il pannello frontale è l'[[GUIInterfaccia grafica|interfaccia utente]] del VI. Si realizza con ''controlli'' e ''indicatori'', che costituiscono i terminali interattivi d'ingresso e d'uscita, rispettivamente. Essi sono ben più numerosi e complessi dei [[widget (informatica)|widget]] normalmente forniti dal sistema operativo.
I controlli sono [[matrice|matrici]], manopole, [[potenziometro|potenziometri]], pulsanti, quadranti e molti altri; simulano i dispositivi d'ingresso degli strumenti e forniscono dati allo schema a blocchi del VI.
Gli indicatori sono grafici, tabelle, [[LED]], [[termometro|termometri]] e molti altri; simulano i dispositivi d'uscita degli strumenti e visualizzano i dati che lo schema a blocchi acquisisce o genera.
 
=== Schema a blocchi ===
Lo schema a blocchi è il diagramma di flusso che rappresenta il [[codice sorgente]], in formato grafico. Gli oggetti del pannello frontale appaiono come ''terminali'' di ingresso o uscita nello schema a blocchi. Gli oggetti dello schema a blocchi comprendono:
* terminali
* [[funzione (informatica)|funzioni]]
Line 55 ⟶ 56:
Le funzioni sono esse stesse dei VI, anche se non hanno un loro pannello frontale e un loro schema a blocchi. Possono avere un numero indefinito di ingressi e di uscite come ogni VI.
 
Le ''strutture'' eseguono il controllo di flusso di base. Ad esempio il [[iterazioneCiclo (informatica)|ciclo FOR]] FOR è rappresentato da un rettangolo che ripete N volte la porzione di schema a blocchi che viene inserita al suo interno.
 
I fili di collegamento possono trasportare teoricamente qualunque mole di dati di qualunque [[tipo di dato|tipo]], anche [[Struttura dati|aggregati]] (''bundle'') definiti dal programmatore. I fili possono essere di diverso spessore e colore per permettere una facile identificazione dei dati che vi scorrono: ad esempio i [[numero intero|numeri interi]] scorrono su fili blu, i [[numero decimale|numeri decimali]] su fili arancioni le [[Stringa (informatica)|stringhe]] su fili rosa.
 
Lo schema a blocchi può essere reso visibile anche durante l'esecuzione, cosa molto utile in fase di [[Debugging|debug]], in quanto esiste la possibilità di visualizzare con un'animazione al rallentatore il movimento dei dati lungo i fili e il loro valore momentaneo.
 
=== Riquadro connettori ===
Line 66 ⟶ 67:
 
=== Eseguibili ===
A partire dai VI si possono anche creare [[file eseguibile|eseguibili]] a sé stanti e librerie condivise ([[Dynamic-link library|DLL]]), perché LabVIEW è un vero [[compilatore]] a [[32 bit]]. Per utilizzare tali eseguibili e DLL non occorre un'installazione di LabVIEW, ma è necessario che sul computer di destinazione sia installato almeno il ''[[run-time]] engine'' di LabVIEW, peraltro distribuito gratuitamente.
 
== Storia ==
Il progetto LabVIEW nasce nel [[1983]] dalla necessità della National Instruments di disporre di un software di programmazione grafica, con il quale testare rapidamente gli apparati hardware prodotti da tale industria [[statunitense]].
 
Già nel [[1986]] è resa pubblica la versione 1 del software compatibile con i sistemi [[Macintosh]]. Nel gennaio del [[1990]] viene pubblicata la versione 2, le migliorie sul software rendono la velocità di esecuzione del VI paragonabile ai programmi compilati in [[C (linguaggio)|Ansi C]]. Il mese successivo in virtù dell'innovatività dell'approccio grafico alla programmazione, viene pubblicato il [[brevetto]] dal [[United States Patent and Trademark Office|US Patent Office]]. Infine nel settembre [[1992]] ne viene sviluppata una versione [[multipiattaforma]], cioè per [[Microsoft Windows]], [[macOS|Mac OS]] e [[Oracle Solaris|SunOS]]. In seguito venne supportato anche [[Linux]].
 
La versione ''8.0'', pubblicata nel [[2005]], introduce per la prima volta anche il supporto per la [[Programmazione orientata agli oggetti|programmazione a oggetti]]. Il 4 agosto [[2009]] è stata pubblicata la versione ''LabVIEW 2009'', a 32 o 64-bit, che succede alla versione ''8.6''. L'ultima versione distribuita è ''LabVIEW 2014''<ref>2020.
{{en}}[http://www.ni.com/labview/whatsnew/| What's New in LabVIEW 2014]</ref>.class="wikitable"
!Versione
!Numero di build
!Data
|-
|Inizio del progetto
|
|aprile 1983
|-
|LabVIEW 1.0 (per Macintosh)
|
|ottobre 1986
|-
|LabVIEW 2.0
|
|gennaio 1990
|-
|LabVIEW 2.5 (prima versione per Sun & Windows)
|
|agosto 1992
|-
|LabVIEW 3.0 (Multiplatform)
|
|luglio 1993
|-
|LabVIEW 3.0.1 (prima versione per Windows NT)
|
|1994
|-
|LabVIEW 3.1
|
|1994
|-
|LabVIEW 3.1.1 (prima versione con abilità di "application builder")
|
|1995
|-
|LabVIEW 4.0
|
|aprile 1996
|-
|LabVIEW 4.1
|
|1997
|-
|LabVIEW 5.0
|
|febbraio 1998
|-
|LabVIEW RT (Real Time)
|
|maggio 1999
|-
|LabVIEW 6.0 (6i)
|6.0.0.4005
|26 luglio 2000
|-
|LabVIEW 6.1
|6.1.0.4004
|12 aprile 2001
|-
|LabVIEW 7.0 (Express)
|7.0.0.4000
|aprile 2003
|-
|Prima versione del LabVIEW PDA module
|
|maggio 2003
|-
|Prima versione del LabVIEW FPGA module
|
|giugno 2003
|-
|LabVIEW 7.1
|7.1.0.4000
|2004
|-
|Prima versione del LabVIEW Embedded module
|
|maggio 2005
|-
|LabVIEW 8.0
|8.0.0.4005
|settembre 2005
|-
|LabVIEW 8.20 (programmazione object-oriented nativa)
|
|agosto 2006
|-
|LabVIEW 8.2.1
|8.2.1.4002
|21 febbraio 2007
|-
|LabVIEW 8.5
|8.5.0.4002
|2007
|-
|LabVIEW 8.6
|8.6.0.4001
|24 luglio 2008
|-
|LabVIEW 8.6.1
|8.6.0.4001
|10 dicembre 2008
|-
|LabVIEW 2009 (32 e 64-bit)
|9.0.0.4022
|4 agosto 2009
|-
|LabVIEW 2009 SP1
|9.0.1.4011
|8 gennaio 2010
|-
|LabVIEW 2010
|10.0.0.4032
|4 agosto 2010
|-
|LabVIEW 2010 f2
|10.0.0.4033
|16 settembre 2010
|-
|LabVIEW 2010 SP1
|10.0.1.4004
|17 maggio 2011
|-
|LabVIEW for LEGO MINDSTORMS (2010 SP1 con qualche modulo)
|
|agosto 2011
|-
|LabVIEW 2011
|11.0.0.4029
|22 giugno 2011
|-
|LabVIEW 2011 SP1
|11.0.1.4015
|1º marzo 2012
|-
|LabVIEW 2012
|12.0.0.4029
|agosto 2012
|-
|LabVIEW 2012 SP1
|12.0.1.4013
|dicembre 2012
|-
|LabVIEW 2013
|13.0.0.4047
|agosto 2013
|-
|LabVIEW 2013 SP1
|13.0.1.4017
|marzo 2014<ref>{{cita web|url=http://www.ni.com/white-paper/5920/en/|titolo=What's New in NI Developer Suite - National Instruments|urlmorto=sì|urlarchivio=https://web.archive.org/web/20140331131311/http://www.ni.com/white-paper/5920/en/|accesso=23 maggio 2019|dataarchivio=31 marzo 2014}}</ref>
|-
|LabVIEW 2014
|14.0
|agosto 2014
|-
|LabVIEW 2014 SP1
|14.0.1.4008
|marzo 2015
|-
|LabVIEW 2015
|15.0f2
|agosto 2015
|-
|LabVIEW 2015 SP1
|15.0.1f1
|marzo 2016
|-
|LabVIEW 2016
|16.0.0
|agosto 2016
|-
|LabVIEW 2017
|17.0f1
|maggio 2017
|-
|LabVIEW 2017 SP1
|17.0.1f1
|gennaio 2018<ref>{{Cita web|url=http://www.ni.com/product-documentation/54421/en/|titolo=LabVIEW 2017 SP1 Patch Details - National Instruments}}</ref>
|-
|LabVIEW 2018
|18.0
|maggio 2018
|-
|LabVIEW 2018 SP1
|18.0.1
|dicembre 2018
|-
|LabVIEW 2019
|19.0
|15 maggio 2019
|-
|LabVIEW 2019 SP1
|19.0.1
|28 ottobre 2019
|-
|LabVIEW 2020
|20.0
|15 maggio 2020
|-
|LabVIEW 2020 SP1
|20.0.1
|8 gennaio 2021
|-
|LabVIEW 2021
|
|13 luglio 2021
|-
|LabVIEW 2021 SP1
|
|16 febbraio 2022
|-
|LabVIEW 2022 Q3
|
|23 luglio 2022
|}
 
== Note ==
Line 83 ⟶ 301:
== Collegamenti esterni ==
* {{cita web|http://www.ni.com/labview/i/|Sito ufficiale National Instruments}}
* {{cita web | 1 = http://www.ilvg.it/ | 2 = ILVG, comunità italiana di utenti LabVIEW | accesso = 24 novembre 2006 | dataarchivio = 14 agosto 2013 | urlarchivio = https://web.archive.org/web/20130814014950/http://www.ilvg.it/ | urlmorto = sì }}
 
{{Portale|informatica}}