Discusiones sobre Productos NI

cancelar
Mostrando los resultados de 
Buscar en lugar de 
Quiere decir: 

OPC datasocket vs DSC

hola a todos
 
Quisiera saber cuales son las ventajas de usar un OPC datasocket contra el modulo DSC. se que el modulo DSC es mucho mas facil de usar que el datasocket,pero lo que mas me interesa saber es cual titne mas limitantes con respecto al desempeño del VI,  ya que con el DSC se puede hacer muchas tags y con el modulo dsc no se cuanto sea maximo o si depende de la memoria de la PC
 
Antonio Garcia Olais
0 kudos
Mensaje 1 de 6
3.905 Vistas
 

Hola Antonio, el Modulo de DSC te ofrece muchas ventajas sobre lo que sería trabajar directamente con Datasocket. Como mencionas la principal es que es mucho más fácil de programar. En cuanto a cuantas variables puedes tener, como supones depende directamente de cuanta memoria tiene tu computadora y que tanta funcionalidad tengas agregadas a las variables.

 

 

Algunas ventajas adicionales que te da:

 

 

Escritura a Bases de Datos. En forma sencilla solamente necesitas activar la opción de data logging para que empiece a escribir los datos hacia Citadel.  La cual es una base de Datos histórica que te puede ayudar a tener un registro de todos tus datos.

 

 

Alarmas y Eventos. A las variables puedes agregar funciones de alarma que si lo hicieras por medio de datasocket tendrías que programar estas alarmas en forma manual. Además de que con las variables puedes lograr estructuras de programación mucho más eficientes por lo que podrías tanto registrarlas a una estructura de eventos, con lo cual tu programa solo ejecutaría esa parte cuando hay un cambio en la variable.

 

 

Además de que cuenta con filtros que te permite que solo escriba datos cuando el valor haya cambiado en un cierto porcentaje disminuyendo el trafico en Red.

 

 

 

 

 

En el siguiente link puedes encontrar también otras de las ventajas que te da:

 

http://www.ni.com/labview/labviewdsc/upgrade.htm 

 

 

De igual forma el siguiente link te puede ser de utilidad:

 

https://www.ni.com/en-us/shop/product/labview-datalogging-and-supervisory-control-module.html

 

 

Saludos

Benjamin C
Principal Systems Engineer // CLA // CLED
0 kudos
Mensaje 2 de 6
3.892 Vistas
hola BeCeGa
 
Los links con los videos que me mandaste me parecerion muy buenos, lo que me mencionas de base de datos me genera algunas dudas mas,veras que difierencia hay en manadar estos datos a una base de datos (MysQL,PostrgreSQL)a mandarlo a la base Citadel. Se pueden hacer Querys a esta base Citadel.
 
Volviendo a Data Socket/DSC, por ejemplo si mi Vi solo requiere la lectura de unas 4 variables y la escritura de 1 entonces es mejor usar el DataSocket, pero en cambio si requiere la lectura/escritura de N variables y alarmas entonces usas DSC,
 
Si mi proceso requiere una lectura de por ejemplo 20 variables y si uso el DSC cuanto memoria requiere la PC y si en cambio uso Datasocket con el mismo numero de variables cuanto memoria requiere mi PC.,independientemente de la deificultad de programacion entre uno y otro metodo.
 
Gracias
 
Antonio Garcia Olais
0 kudos
Mensaje 3 de 6
3.857 Vistas

Hola Antonio, Mandar los datos a Citadel es mas eficiente que usar otras bases de datos si lo que buscas es almacenar por ejemplo señales a lo largo del tiempo. Citadel es una base de datos histórica que te da muchas ventajas como el hecho de comprimir y almacenar información en forma reduntate (para mas seguridad). Escribe datos en cuestión de diferencias por lo que ocupa menos espacio.  Además una ventaja que tienes es que después esta información la puedes obtener mediante querys de SQL.

 

 

En las siguientes ligas puedes encontrar más información.

 

 

Logging Data with National Instruments Citadel- Developer Zone - National Instruments

 

 

 Accessing Citadel 5 Data from Other Software- Developer Zone - National Instruments

 

 

Si tienes pocas variables no incrementa mucho la carga de programación de usar DataSocket,  y como dices si son pocas puedes usarlo, pero perderías algunas de las otras funciones como las alarmas.

 

 

 

 

 

Finalmente sobre tu preocupación de memoria como puedes ver en la siguiente liga, necesitas un giga de RAM para cada 80,000 variables así que no es algo de lo que te tienes que preocupar para aplicaciones pequeñas.

 

 

http://digital.ni.com/public.nsf/allkb/00E2C0F7B7E362AD86257199005229C4?OpenDocument 

 

 

Saludos

 

 

Benjamin C
Principal Systems Engineer // CLA // CLED
0 kudos
Mensaje 4 de 6
3.828 Vistas
hola BeCeGa

Que pasaria la PC donde se encuentra todo el sistema SCADA/HMI llegara a colpsar por alguna sistuacion ya sea de Humedad,Fisica,Electrica,etc.

Como puede LabVIEW decirle al PLC(que en este caso es el control principal del proceso) que el esta en comunicacion con el.

Lo que yo tengo pensado hacer es lo siguiente: escribir desde labview una serie de valores al PLC,estos valores se estarian escribiendo en un Counter,se estara ejecutando un timer en el PLC y cuando terimine se comparara los valores y si el el acumulado es mayor que el preset entonces significara que  Labview esta mandado datos al PLC.

Ya que si escribo un valor desde Labview a mi PLC este se queda en ese valor independiemtemnte si el valor ya no se esta ecribiendo desde Labview.(VALORES BOOLEANOS)

GRACIAS POR SU TIEMPO

Antonio Garcia Olais


0 kudos
Mensaje 5 de 6
3.817 Vistas
 

Hola Antonio como mencionas es una muy buena idea y básicamente estas implementando un Watchdog. El hecho de que tu señal oscile es bueno por lo que dices que el valor quedaría presente aunque falte el sistema, y la falta de esta oscilación es lo que te indicaría que ya no esta la computadora.

 

 

Aquí incluso para simplificarlo podrías evitar el contador y lo único que tendrías que hacer es ver el estado de esta señal de vida (tu señal que oscila) de la computadora que estas enviando. Si hay un cambio reinicias el Timer, si no hay cambios dentro del tiempo que está establecido en el timer puedes asumir que murió tu computadora, y trabajar en base a esta suposición.

 

 

En ocasiones hay sistemas que te permitirían hacer esto un poco mas directo, por ejemplo si estas usando un Compact FieldPoint podrías tener una variable compartida en tu computadora principal y en el Fieldpoint simplemente monitorearías el status de esta variable en el momento en que no esté presente te marcaria un error y podrías trabajar acorde con esto.

 

 

Incluso otra ventaja con los PACs, es que dado que tienen la capacidad de publicar una página web con su panel frontal, te podrían servir como un HMI de emergencia. Y te ofrecen mucho mas confiabilidad que la computadora.

 

 

Saludos

Benjamin C
Principal Systems Engineer // CLA // CLED
0 kudos
Mensaje 6 de 6
3.810 Vistas