Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
ILVG.it
Italian LabVIEW user Group
Alessandro Ricco
ILVG.it – Administrator
alessandro.ricco@gmail.com
Cos'è ILVG.it?
ILVG.it è:
l'unica comunità italiana indipendente di
sviluppatori, curiosi ed appassionati del
linguaggio di programmazione LabVIEW™.
Che scopi ha ILVG.it?
Lua è usato in diversi campi da diverse industrie. E' molto diffuso nei video game. Esiste un
manuale molto ben fatto, gratis e on-line e diversi libri.
Lua è veloce
Lua è “embeddable”
acquisizione estendibile
analisi avanzata semplice
presentazione dati leggero
E se volessimo unire...
LuaVIEW!
LuaVIEW
- LuaVIEW è un toolkit sviluppato da Citengineering, che permette a LabVIEW di sfruttare
tutte le caratteristiche di Lua.
Potremmo definirlo un ponte tra il mondo LabVIEW e quello Lua.
un CIN (Code Interface Node) che è la VM di LUA + il codice con cui LUA può
interfacciarsi a LabVIEW
LuaVIEW CIN
Apri\chiudi riferimento a Lua LUA VM
Compila per la VM uno script
Esegui uno script
Push e Pull dallo stack Lua
LuaVIEW in action, primo esempio
-- Lua saluta
print("Hello world")
Vediamo l'effetto:
luaview\examples\do a script.vi
LuaVIEW in action, primo esempio
-- Lua saluta
print("Hello world")
Lua chiama una funzione scritta in LabVIEW (print) passandole dei parametri
Questo avviene in maniera automatica e trasparente
La sintassi di Lua è molto molto semplice ed elegante
LuaVIEW in action, ma come...
-- Lua saluta
print("Hello world")
Come detto si deve “dire” a LuaVIEW com'è fatta una nostra funzione, come la print, che
vogliamo rendere utilizzabile in LuaVIEW.
Function manager:
LuaVIEW1.2.1\luaview\tui_LuaVIEW Function Manager.vi
LuaVIEW, la prima funzione
Creo un'applicazione in LabVIEW 100%, la compilo e la vendo al cliente che ne installa 1000
copie
Il cliente richiede una nuova funzionalità o logiche per il software
Sono costretto a modificare il software, compilarlo e reidistribuirlo ma:
_Lua TE main.vi
LuaVIEW, casi d'uso
Alessandro Ricco
ILVG.it – Administrator
alessandro.ricco@gmail.com