Discusiones sobre Productos NI

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

DeviceNet en CRio

Hola a todos,

 

Estoy intentando realizar un programa a través del módulo NI 9882 con Crio.

He seguido las indicaciones que vienen en los ejemplos "DeviceNet cRio Basic.lvproj", para compilar el FPGA bitfile para los modulos DeviceNet.

 

Hasta aqui todo sencillo y sin problemas, y de hecho mi programa funciona perfectamente al ejecutarlo con el Highlight Execution, el problema lo tengo cuando lo intento hacer desde mi módulo Crio con "Real Time application".

 

En configuración de Chassis lo tengo definido como LabVIEW FPGA Interface, para que me funcione la iniciación (en Scan Interface me da error "-61201"), pero no me funciona...además, esto no me dará problemas con el resto de programa que lo quiero ejecutar en Scan Interface??? y no puedo tener más de un chasis por proyecto.. Cómo puedo hacer esto simultaneamente??

 

Agradecería cualquier sugerencia o ejemplo que me puedan dar,

 

un saludo y muchas gracias!!

0 kudos
Mensaje 1 de 13
5.213 Vistas

 

Buenas,

 

Supongo que a nadie le ha tocado trabajar con esto. Por si le ayuda a alguien, si se puede trabajar en "modo hibrido":

https://knowledge.ni.com/KnowledgeArticleDetails?id=kA03q000000YIDfCAO&l=en-US

 

Pero en mi caso, no puedo meter el modulo NI 9882 bajo la FPGA, (tengo todos los modulos en Scan mode), y sigo teniendo problemas en la ejecución en Real Time (en Higlihgt si funciona).

El chassis lo tengo configurado en modo "FPGA Interface" ( para poder abrir la FPGA), sino en "Scan Interface" modo me da el error -61201.

 

La verdad que ya no sé que más probar, para hacer funcionar el programa completo con este modulo DeviceNet, así que agradeciría por favor cualquier sugerencia.

Un saludo y muchas gracias por vuestro tiempo,

0 kudos
Mensaje 2 de 13
5.192 Vistas

Hola juanafer24,

 

No he trabajado con DeviceNet, pero algo he estado averiguando.

 

El error -61201 te aparece cuando el chasis esta en Scan Interface y quieres correr algun VI de FPGA. Para esto necesitas si o si seleccionar LabVIEW FPGA Interface cuando agregas el target. Luego de esto, hacer un deploy.

 

El link que compartiste sobre trabajar en modo hibrido está muy bueno, y es lo que he visto que se recomienda para trabajar con devicenet, pero aun debes compilar y correr la FPGA.


De todas formas, leyendo y leyendo, encontré que NI permite que modulos de la serie C trabajaen en modo RT (DeviceNet application on RT) y modo FPGA (DeviceNet application on FPGA). Lo que si, ambos modos no pueden trabajar simultaneamente en un mismo slot, pero pueden trabajar en distintos slots simultaneamente. Habria que elegir un slot en modo RT y otro en modo FPGA.

 

Seguiré investigando a ver que mas encuentro.

 

Saludos !

Patricio Cortes | NI Cono Sur
0 kudos
Mensaje 3 de 13
5.179 Vistas

Hola Patricio,

 

Muchisimas gracias por tu respuesta.

Si, como me comentas el error -61201 lo obtengo al intentar abrir la FPGA Target en modo "Scan Interface", por lo tanto para poder utilizar el modulo NI 9882, el chassis debe estar configurado en "FPGA Interface".

 

Pero para seleccionar los slots en Scan o FPGA, se realiza "arrastrando" el modulo dentro de las carpetas de la FPGA o no, y entonces compilar la tarjeta, pero en mi caso, el modulo NI 9882 no lo puedo mover (sólo está permitido en scan mode).

 

Con esta configuración (chassis en FPGA y el modulo fuera de la carpeta, en scan) cuando ejecuto mi programa en highliht trabaja correctamente (adjunto imagen) pero en cuanto me creo mi ejecutable para hacerlo desde mi Crio como "Run as startup" no me hace nada.

 

Agradecería cualquier sugerencia que se os ocurra por que ya nose que más intentar para poder ejecutarlo en RT.

 

Un saludo!!!!

 

0 kudos
Mensaje 4 de 13
5.170 Vistas

Buenas,

 

Ya se cual es el problema. Las Shared variables no funcionan en el modo hibrido.

He estado buscando pero no he encontrado ningún ejemplo claro, de como compartir las variables entre mi Host(Pc) y el programa en Crio (RT). Aunque las tengo en modo hibrido hay que implementarlas también en la FPGA o alguien sabe cual es la manera más fácil de hacer esto?

Ya que cuento con un gran número de variables compartidas en mi programa anterior (scan Interface) y tengo que modificar todo para que trabaje en FPGA interface.

 

Muchisimas gracias por vuestra ayuda,

 

un saludo!!!!

0 kudos
Mensaje 5 de 13
5.159 Vistas

Hola juanfer23,

 

me alegro que ya hayas encontrado la raiz del problema. De todas formas, he estado investigando un poco sobre el modo hibrido, y al revisar un ejemplo lo comparé con tu proyecto, y observé algunas diferencias que muestro en la siguiente imagen. ¿Podrías hacer unas pruebas creando un nuevo proyecto?

 

comparacion.png

 

En relacion a las variables compartidas, no se que version de LabVIEW tienes, pero si es anterior a la 2012, haz los siguiente: haz doble click en ellas y haz cliack en  "Disconnect From TypeDef". Esto daba algunos problemas en la creación del RT-Application que fue solucionado en la version 2012.

 

Saludos !

Patricio Cortes | NI Cono Sur
0 kudos
Mensaje 6 de 13
5.155 Vistas

perdón, la imagen quedó muy pequeña. Adjunto original.

 

comparacion.png

Patricio Cortes | NI Cono Sur
0 kudos
Mensaje 7 de 13
5.153 Vistas

Hola Patricio,

 

Muchas gracias por tu interés.

La diferencia entre mi proyecto y el que has creado, es que yo tengo librerias de variables compartidas creadas (ya que anteriormente trabajaba en Scan Interface, como: "variables, library host....lvlib") para compartir datos entre "RT Crio" y " My Computer" donde tengo mi programa Host.v (visualizador) en mi PC.

 

En cuanto a los modulos, si los incluyes dentro de la folder de la tarjeta FPGA, son para trabajar en "FPGA interface" modo, y los que incluyes encima (dentro del chasis) trabajan en "Scan mode", una vez que compilas y cargas la tarjeta. Esto lo configuras tú, según tus necesidades.

En mi caso los tenía todos en Scan Mode, porque pensaba que en modo hibrido no habría problema con las shared variables, pero parece ser que si 😞

Lo que me comentas del "Disconnect From TypeDef" como estoy trabajando el labview 2012 no me aplica, pero la verdad que nose muy bien como hacer para compartir las variables desde el PC a mi programa cRio, a través del FPGA interface.

 

He mirado en ejemplos, pero no he visto que incluyan desde host en PC, sino todos para compartir variables directamente dentro de la tarjeta FPGA.

 

Agradecería cualquier ejemplo o idea,

 

Muchisimas Gracias!!!!!!!

 

0 kudos
Mensaje 8 de 13
5.149 Vistas

de a poco nos acercaremos a la solución final Emoticono feliz

 

revisa estos links:

 

Transferring Data between the FPGA and Host (FPGA Module)

 

LabVIEW FPGA Module Training (nunca está de más)

 

Saludos !

Patricio Cortes | NI Cono Sur
Mensaje 9 de 13
5.145 Vistas

Muchas Gracias!!!!

Sigo con ello y te aviso en cuanto logre algo 😉

 

Un saludo,

0 kudos
Mensaje 10 de 13
5.142 Vistas