published RT cRIO-9030 with network-a project of shared variables cannot communicate with host VI when compiled and deployed as executable startup.

I have a project including a VI RT running on a cRIO-9030 and a host VI running on a desktop computer.  The two programs communicate via shared variables that are hosted on the cRIO.  As shows, when I run the screw of the project, everything works as expected.  When I compile the RT VI in a start-up executable can deploy for the cRIO, as well as the libraries of shared variables (the record of support in the build specification-oriented), I am unable to connect to the executable running in real time.

I have 'Disable Autodeploy Variables' checked on the cRIO target, if I no longer get the prompt to stop the currently running application to deploy the variables.  The host VI opens and appears to run, but has no connection with shared variables (data does not update).  Compilation of the host VI as an executable file and it works outside the project result in the same behavior.

I read some relevant posts / knowledge base articles related to this problem, but still can't seem to find a way around it.  I note a number of articles on the series in double bond of variables, but this is in contradiction with my possible behavior for this system: I finally have a number of cRIO controllers identical all runnning the same executable RT and want to be able to have a single host VI which allows the user to select from a list of available controllers (using the screw system configuration) and extract the host name of the controller selected, that would be later used for programmatic addressing of the variables on the host of part VI.

In any case, I want to start with the simple fact of being able to get that first controller running without an open connection to the RT VI project.  With the deployed executable start, I checked via programmed behavior of LED application of the RT and FPGA are running on the cRIO.  The problem, I think, has to do with shared variables, but I'm not sure where to go from here.  I want to connect to RT executable running from the VI to the host (in project) to verify that the compiled executable of RT works as expected and then the subsequently compile host VI in an executable that can be run from any desktop on the local subnet.

Thoughts?

It seems that the error has now been corrected.  There were three things, I changed: the file startup.aliases in the startup on the target directory (Home: / lvuser/natinst/bin) put in 'localhost' as an alias for the controller.  I changed it to the IP address of the controller.  Then, I got some features of IO files in my application RT relative paths using the path obtained by the 'current path VI' VI.  As this path changes according to the location / delivery system, I had to create a VI that has used the Application property: type with a case properly structure band / build railroads desired regardless of the runtime system data files.  This may have broke my RT request.  Finally, I got a property node in one of my RT SubVIs, who attempted to change an indicator in the Subvi, which is not taken care of in an RT compiled executable.  I can't do this for debugging purposes somewhere along the way, but in any case, I removed it, and after a recompilation and the deployment of the executable of RT, everything seems to work as expected today.  The host VI on the desktop can connect to the application of the RT project, and when it is compiled into an executable file, which also works.

Tags: NI Software

Similar Questions

  • My beta1 application does not open when compiled and run with the beta 2

    I somehow updated my alpha and IDE, now my only problem is that when I launch my app it begins to open on the alpha but omits to say could not load library libbb.so.0, I'll do some research, but if anyone has any ideas?

    Thank you as always.

    I also had problems during the upgrade to version BETA 2.

    My application will compile fine but when run in the Simulator, it would break indicating: 'CODE of ERROR 8 '.

    What I have done is to create a new application of Cascades and simply copied over the old files in my new project (with a change of name here and there).

    This fixed the problem.

  • Shared Variable (published network) communication

    Hi all

    All day I was hitting my head with variable communication shared between RT host and the host computer:

    I basically tried to pass an array of the host of the CR to the host computer. For this I used a published shared variable of network type Array U64. I used this link to help me understand usign shared variable communication

    http://www.ni.com/white-paper/4679/en ...

    I also activated RT FIFO. Now in the city that link the information given on the use of FIFO of the single element or Multi element FIFO

    "By enabling real-time FIFO, you can choose between two types of compatible FIFO slightly different variables: the only element and the buffer insurance program. A distinction between these two types of buffers, it's that the only element FIFO reports no warnings on positive or negative overflow conditions. A second distinction is the value returned by LabVIEW when several readers read an empty buffer. Several readers the only element FIFO receive the same value, and the only element FIFO returns the same value until a writer writes back to this variable. Several readers of a FIFO empty array each get the last value that they read from the buffer or the default value for the data type of the variable, if they have not read before variable. "

    I had read the content above a 100 times, but still I'm not able to get a clear picture of the difference and when to use which option. So I decided to take the text and tried to try something for me.

    I had a loop in the reception of RT who writes arrays of 3 different elements in the 'network published variable shared'. Now when I use the option of multi element with "number of berries as - 2" I am able to read tables separates one by one in the host computer (as you can read a queue in general).

    Now when I used the option of single element for the RT FIFO with 1 UN editable table option, only the last table written in the 'shared variable published network' is read in the host computer.

    This seems absolutely ridiculous as if this is the case, then what is the purpose of creating the "buffer". For testing purposes, I had put the buffer in 5 tables.

    In fact, I have only a single author (written in loop in the reception of RT) and a reader (new looping in the host computer). So I don't know even if I need option of the RT FIFO for the published network shared variable.

    I'm sorry for the long message but I've reached the limits of going around in circles waiting to type somewhere

    I know I made a mistake stupid somewher or it miss me probably a clear simple trick but don't know what it is...

    I request some clarification... In fact I posted a little while earlier today so ... bind - http://forums.ni.com/t5/LabVIEW/RT-Host-to-Host-computer-communication/td-p/2348130 )

    any help would be appreciated

    See you soon

    me

    Hello

    I think that the difference between these two types is clearer by using LabVIEW:

    "

    Activation of the FIFO in real-time

    You can activate the FIFO in real-time to a shared variable since the page FIFO in real-time of the properties of the shared Variable dialog box. Check the box Enable the FIFO in real-time in a deterministic way share data using the one element or several elements FIFO.

    Single element FIFO

    One FIFO shares the most recent value of the data. The shared variable overrides the value of data when it receives a new data value. Use this option when you need only the most recent value. Configure the size of the elements of the array or the size of the waveform for the FIFO buffer, if you select a table or a waveform data type.

    Several elements FIFO

    A FIFO multi-elements implements buffer the values shared by the shared variable. You can configure the size and elements of the buffer FIFO to match the parameters of buffering to use of the Variable page, or you can configure a custom size for the FIFO and FIFO elements.

    Note  For single item both multi-elements FIFOs, if the variable contains data table or a waveform, you must configure the size of the elements FIFO equals the size of the data to share. If the network buffer both the RT FIFO are enabled, the network buffer should be at least as big as one of the elements of FIFO. Sharing data smaller or larger that the specified length results in a memory allocation which affects determinism.
    Note  Waveforms contain variant of varying size that are not compatible with real-time FIFO. Therefore, if you enable the FIFO in real-time on a shared variable that contains the waveform data, the item variant waveform data does not transfer.

    "

    http://zone.NI.com/reference/en-XX/help/370622K-01/lvrtconcepts/rt_projectvariable/#Single_Element_F...

    ' Hope this helps

    Aurélie

  • Network shared Variable breaks rtexe

    I have a cRIO-9063 which I want to use for the control (PWM digital output for pumps signals) and measurement (temperature and voltage) of a system. In the ideal configuration the cRIO would be able to take measures and rebroadcast to a PC for monitoring and logging. The PC must be also able to change the digital output PWM on the cRIO lines. The cRIO should be able to continue to operate when the PC is not available. To do this, I use Scan interface for data acquisition and shared variables (single editor, no RT FIFO) hosted on the cRIO for network communication.

    I have developed the code for the target cRIO as well as my host PC meets my criteria. However, this code only works in development mode. When I try to build and deploy a rtexe on the cRIO, it does not work. I reinforced to the back and made a simple LED flashing user vi, ensure what I create and deploy properly. Slowly adding things to this flashing vi, I discovered it's shared network variables that break the vi once it is integrated into a rtexe.

    After flipping through other-related posts, I'll include the following:

    -There is no object on the remote VI front panel. Simply add a variable node shared is enough to break the vi (when it is deployed).

    -J' tried including my shared variable library in support of the construction directory, but what I saw there is not copied during construction or deployment. I manually copied the library to the /home/lvuser/natinst/bin/data / directory on the cRIO, then used an invoke node to deploy the cRIO variables when the software starts first. Even when you include a delay of 10 seconds after the invoke node, it did not work, just a mistake of 1043 at "the method or property is not supported in this version of LabVIEW."

    -NSV is referenced as absolute

    Some details of my configuration:

    LabVIEW 2015

    cRIO 15.0

    NOR-RIO 15.0

    Communication via ethernet, static IP

    Any help would be GREATLY appreciated. I suspect that I forget a few minor step or detail, otherwise am poorly understand exactly how and when shared network variables are deployed.

    I found shared to not be worthwhile over the years network variables.

    The RT EXE is not able to use the library to deploy to deploy the shared Variables.  See Help topic: http://zone.ni.com/reference/en-XX/help/371361M-01/lvprop/app_libdeploy_library/

    In general, SV are deployed once the project and they persist through reboots of the RT system.  In general, you should have a startup routine that checks the shared variables and expected for there to be without error on a node of the OAS and then move on to the rest of the program, defining the commissioning of values and check that they spread in the engine of the Variable is a typical method.

    See here for more information on the deployment of a variable in an application of the RT.  http://digital.NI.com/public.nsf/allkb/990508969805A7C086257619007189E7

    The section deployment of Variables shared in a real-time (RT) target running Headlessly is downstairs.  Because you are connected to an HMI PC, you should be able to use the library to deploy feature of the PC code targeting the cRIO.

    Usually, it's a faster, more scalable solution to replace your shared network Variables with a stream of network dedicated to the HMI and another for HMI - RT EXE commands.  You can send complex structures such as a cluster or even define the message as a cluster of enum and variant type to be able to use the Enum to convert the variant correctly according to the Enum value.

  • cRIO, shared Variables & stand-alone application

    Hello!

    I developed an application very simple acquisition of analog (NI9215) and the activation/deactivation of outputs signals digital (NI9472) using a cRIO (9012). Data are transmitted to the host through shared variables program.

    I created an executable of the code to be run by the cRIO, set it to the "launch on startup" and it worked.

    I did the same thing with the hosting program and created an exe installer. As I use variables shared the result of acquisition of pipes, I have them placed in the support directory (data) when you generate the executable file (Distribution.exe).

    This executable works perfectly on my computer.

    I used the Setup program to install the program on another computer. This computer as its IP address in the same subnet as my computer. But shared variables ever offer data other than their default values so I guess there is a problem of communication...

    Can someone help me?

    Hi zyl7,

    Thanks for the post!

    This is a common problem - I think...

    The problem is that you need to deploy two seté variables shared by two of the llb. You need 'real' variables on the cRIO - and deploy manually (see link) and a second llb on the host pc, which are related to real variables on the cRIO. This is because the local computer get variables shared, which of course are not those with the cRIO data locally.

    Perhaps in clearer terms.

    When you make an exe of a project using shared variables, you must have a local copy of the variables on the deployment computer which are then related to the 'real' shared variables stored on the target - cRIO, in this case.

    This means that in the view of your project:

    (1) Create static variable in the normal Manor on the cRIO.

    (2) create variables shared on the host PC - llb under the Pc host in the project and then select the aliasing and how to link to YOUR PSP.

    Let me know how it works,

    Kind regards

  • Communication with EtherCAT defective modules with executable startup

    Hello

    I have a deployment with a hypervisor OR 3110 and four NI 9144 chassis that are connected via EtherCAT. The RT VI I created works perfectly when they are deployed since in the LabView project. However, when I create a start executable (startup.rtexe), it fails somehow communicate with 3 out of the 4 chassis. I can read/set values for the frame that plugs directly into the hypervisor, but cannot control the chassis more far. If I build the executable to start with debugging enabled, the behavior is the same. Strangely, when I connect to the startup.rtexe running through the 'Debug Application or Shared Library' menu in the LabView project, I start getting values as it should. When I disconnect from the debug version, I lose the modules again.

    What I'm missing here?

    Thank you much for the help.

    Christoph

    I found the root of the problem: for iterations inside my call loops, I use property on variables unconnected (type defs) nodes to determine the number of iterations that I need. This doesn't seem to work if the FP is closed, as is the case in a deployed executable startup. If I replace these nodes of property with the constants, everything works as expected. It semms that the compiler removes variables unconnetced, because it "thinks" that they are not used.

  • shared - variables multi-network

    Hello

    I have problems of publication of multiple variables shared in a network configuration to the correct network. (NIC1, NIC2, wireless)

    I followed the info in Spreading of Variables shared for a specific network adapter

    For a Windows-based system:
    If one does not already exist, create a file in the C:\WINDOWS directory named logos.ini and add the following lines to the file:
    [LOGOS]
    ServiceBindTo=XX:XX:XX:XX:XX:XX
    where XX:XX:XX:XX:XX:XX is the MAC address of the Ethernet card to want to bind to.
    
    Right-click on My Computer within the LabVIEW Project Explorer, click on Properties. Under the General tab, click the Specify Custom Address checkbox, and enter the IP address of the network card that the shared variables will be deployed to.
    

    but it comes to 8.2.1 - is still topical for 8.5?

    After these changes my shared variables always deployed to the default (wireless)

    I am running XP on the computers and LabVIEW 8.5

    Hello Al,.

    I think you may need to change your default interface card just.

    Here is an article that should help you further:

    http://digital.NI.com/public.nsf/allkb/FB4B94AE226BEA2986257559006D0FF1

    And also, point number 8 on this refers to a similar route of troubleshooting:

    http://digital.NI.com/public.nsf/allkb/6E37AC5435E44F9F862570D2005FEF25

    I hope this helps.

    Let me know if the problem persists.

    Kind regards

    Michael S.
    Technical sales engineer
    NEITHER UK & Ireland

  • shared variables crio RT does not not after compilation

    I have a cRIO project that uses static variables. There are variables located on the host computer and a double set of variables on the RT.  While the project is open, everything works fine. I can DL the FPGA VI for flash, deployment and execution, the value of the RT VI car can run my desktop VI in EXE application.

    Once that I close the project window and close labview, the office program (host VI) will work but doesn't get over all values of the shared variable. I have read all the FAQs and have contacted technical support (which was told the fair questions).

    Apparently I'm supposed to add code to the RT VI to deploy the shared variables in the RT the RT VI executing. When I try to do, the variable deployment method requires a path. I don't know which way to turn in.

    Any ideas?


  • Shared variables with touchscreen of TPC-2106

    I can't work with a TPC-2106 Touch Panel shared Variables.  I am hosting a Board 9642 sbRIO variables.  I built a test VI to run from the hard drive, and I can edit and read variables that VI.  When a generation a VI to run it on the touch screen works, but he can't read or write on all shared variables.  No error is shown during the execution of the VI.

    It seems that I is not need to take special steps to install support for this version of touch panel by: http://zone.ni.com/reference/en-XX/help/372507A-01/lvtpcgsm/tpc_install_sharvar/

    I tried the "Shared Variable.lvproj" sample project that is supposed to generate weather information and then transfer it to the touch screen.  The weather data are generated and displayed by VI on my PC.  The VI on the touch screen works, but never any weather data updated.

    I use LabVIEW 8.6 with touchscreen, FPGA and real-time modules installed.

    I have the touch screen connected via an Ethernet cable directly to my PC.  I assigned an IP address to the touch screen manually.

    Problem is solved using an Ethernet crossover cable instead of a standard cable.

  • HOW WE LINK SHARED VARIABLE WITH DEVICE (SENSOR MODBUS ADDRESS) IN E/S SERVER MODBUS

    I USE THE IO SERVER MODBUS WITH SHARED VARIABLES TO COMMUNICATE WITH THREE DEVICES (TEMPERATURE, PRESSURE AND LEVEL DEVICE). EACH DEVICE HAS ITSELF MODBUS ADDRESS TO BE IDENTIFIED IN THE E/S SERVER. THESE DEVICES ARE SUPPORTED BY THE MODBUS SERIES.

    (1) HOW CAN I CONNECT EACH DEVICE SHARED THE DEVICE TO HELP ADDRESS VARIABLE?

    (2) HOW DO I USE THE ADDRESS OF DEVICE FOR IDENTTIFY THE E/S SERVER APPLIANCE?

    COULD YOU HELP ME?

    Thank you

    Hello

    You will find attached a few slides explaining the different steps to create variables shared with e/s server Modbus.

    You can also have a look at the demo on the website.

    I hope this will help you communicate with your devices.

    Kind regards

  • shared variable creates sound - problem, save data in crio

    Hi all

    I have a problem here...

    Why I get noise when using shared variables in my labview code...

    but when I remove these shared_varibles, the sounds are totally reduced...

    I use the shared variable for the data record. For the recording of data, I do a VI special folder under my computer. During my actual code CRIO.

    These two screws are to communicate using shared variables. Is there a better way to make the real-time recording apart from the use of shared data variables?

    I tried to record data directly to CRIO but it always fails... That's why I do a special VI under workstation for the logging of data...

    But if shared variables create sounds... my data record is no longer valid...

    Please help me...

    I downloaded some pictures... I hope that makes my problem clearly to you all...

    Hello auralius,

    Are these plots you have posted on the graph of velocity on the block diagram?

    I think that shared variables are affecting the timing of your loop and so affect the outcome.  I suggest you to add code to check if one of the iterations is late.  I suspect that the end iterations will correspond to the bad data that show you.

    You can try to enable the RT FIFO on the shared variable or you may need to add a second loop of communication and use a form any local communication to pass data to it.

    Take a look at http://zone.ni.com/reference/en-XX/help/370622G-01/TOC1.htm, including the sharing of data in deterministic Applications section for more information.

    Let me know how it goes,

    Sebastian

  • Impossible to compile and run the project

    Hello

    Last night, my project ran and deployed to the alpha of dev without problem.

    This morning (and the only thing I've done is changed my icon and splash screen) it just sits there at 91%. When you look at the progress window there are two progress bars:

    1 says Syncing and application startup

    2 said launch myapp (blocked: user operation is pending of "" to complete).

    This eventually give up and display a dialog window:

    There is problem

    Synchronization and application startup

    Deployment failed: Info: request shipment: install and launch

    News: Native on debugging

    Information: size of the 648916759 file

    Info: installation

    Info: Treatment 648916759 bytes

    News: Progress 0%...

    News: Advance 4%...

    Info: 99% progress

    actual_id:

    actual_version:

    result: failure 812/var/tmp/cgic247239: duplicate member name ' native/MyAppName '.

    It's that last line that concerns me.

    Any ideas what is happening?  My other projects compile and deployment very well.  I tried to use the device-debug and release.  I rebooted the PC and dev alpha and even delete the running configs so that they recreated

    Thank you very much

    After more digging, I came across http://supportforums.blackberry.com/t5/Cascades-Development/App-Wont-Launch/m-p/1955639/highlight/tr...

    I also tried to create a new project, but the problem persisted. But what it show me was a warning in the bar file descripter.  The assets he suggested I had a duplicate png file.  The assets tab listed my assets folder (where the image was in fact), but it was also alongside icon.png.  So I removed that in the list and hey presto - all is well again.

  • writing in shared variable published network hosted on rt (defined as slave modbus for crio) problems

    Hello Forums or

    This is my first post on this forum and I've been using labview for about 8 months now

    I have a problem about writing data in the modbus registers through a server of e/s defined as a slave modbus for my hardware 9074. Once I finished the project of construction and deployment of the variables and by following the instructions here , he reports no results but a row of zeros. I have the DSM nor opened and configuration modbus master to see whether the data is actually read or written on the respective sides that give the same line of zeros so.  What I am actually trying to write is a single-precision floating data table. The registers are structured F40000-F46534 runs from 10 items or have them for range AF40001L1-AF46534L1 of the AF40001L10 point where it's an array of length 10. (Referenced beaches here)

    I know 1 thing for you, the modbus connection works and is ready for data requests, I tested cela NI DSM and set manually the data for and received my master.

    System and project specifications

    Windows 7 operating system

    LabVIEW edition development system complete 2011

    No module Labview DSC, but I use the real time such referenced by one of the documents

    This project is an application in real time with fpga mode (and not scan interface)

    The master and the slave are the same network and subnet

    Connection Modbus type: TCP

    9074 compact slots rio 8

    9234 module x 3

    module 9221 x 1

    9472 module x 1

    Engine service Variable shared running on windows os and rtos system

    Used this guide to learn more about the Protocol modbus, as I have searched all over the internet to learn more about modbus

    I already have software Modbus IO Server installed on the crio thanks to max or 1.8 for NI RIO 4.0 version

    file attachment (s)

    Image of software specifications Crio

    Image of data written in scheme-block rt variable

    Short version of the problem: why is the e/s no variable writes in with the converted correctly data?

    Okay, Yes, it's that I was the one proposed. Regarding the news of the error, if you look at the bottom of your image to DSM, you see a little commfail and an error code, but it seems that those are OK.

    The only thing I can think is that DSM (or another function) is written for a range of values that includes 400004. I suggest you to put into service 4-going to a range of 3. 3 s are entered only (perspective control), then you can be sure that the master is not trampling on the data. Once you have checked that, look at DSM and any other code running to make sure q EU not accidentally write 0s to the same reg.

  • Missing items from NI 9214 FPGA of e/s (cRIO-9030 / combo NI 9144)

    I have a new cRIO-9030 and the expansion chassis NI 9144 EtherCAT I configured and added to a project existing LabVIEW that contains a cRIO-9012. When I researched targets and devices, modules have been correctly detected (NI 9237, NI 9263 and NI 9265 on the cRIO-9030 and 9214 NI and NI 9477 on the NI 9144 chassis); However, the I/O items listed for the show of the NI 9214 module only 16 channels thermocouple (TC0 by TC15). Four additional channels do not appear (track and CJC0 through CJC2), although they did when the module has been previously configured for the cRIO-9012.  It is a known / compatibility problem with the NI 9144? or y at - it a configuration option, I'm missing? The terminal block must be set up on the module for these I/O elements appear?

    I think I have solved the problem. If I first add a FPGA target under the appliance NOR 9144, and then add the NI 9214 module under that, then additional channels appear. I guess that means that these elements of I/O are available when you use the NI 9144 FPGA mode?

    Sean

  • Refresh your LV2016, LV 2015 will interrupt the cRIO-9030 GUI

    I have an application that has worked successfully on a cRIO-9030 in 2015 of LabVIEW.  I upgraded to LabVIEW 2016 and now it's not just the UI on the cRIO-9030.  I makes no changes in VI, I just realized a compilation of mass of the LabVIEW project and then recompiled the FPGA and the start of RT VI.  I have updated the cRIO-9030 MAX for pilots of 2016 and redeployed the boot VI.  From a functional point of view, the VI works very well in LabVIEW 2016, the GUI is just wrong.

    The attached photos illustrate the problem - what the GUI looked like with LabVIEW 2015 and then what it looks like with LabVIEW 2016.  It seems that the font properties got lost somehow (size, fat, etc.), but I couldn't find where to fix it.

    Also has anyone seen this problem?  and suggestions on how to fix it?

    Thank you

    Dave

    Run the command below, as an administrator on the target (ssh or console):
    find/usr/share/fonts/X 11-type d - print0 | XARGS-mkfontdir 0
    then restart the target

Maybe you are looking for

  • Internet keyword search does not

    I recently upgraded to Firefox to 8.0.1 and since then, I had problems with the search of the address bar. When I try to use "Internet keyword" firefox, it comes up with the message "[file not found: Firefox cannot find the jar file: file: / / / C:/P

  • You want to know how to renew page

    Need to refresh a page and do not see how to do it in FF4. How to proceed when you want? Thank you.....Ray/FL

  • Apps do not show move to SD.

    I cannot move my applications on my 32 GB sd card using my tablet. When I got to the Tablet, I have noted the ability of tablets to move to external USB device. At this time, I got a 4 GB sd card inserted just for the experience. After Exchange sd ca

  • Reset the filter table values in Jdev 11.1.1.7

    Hi Experts,I use Jdev 11.1.1.7I went through this link Ashish Awasthi (Jdev/ADF) Blog: table light filter in the ADF valueI created a column and the value rowHeader as true. After you run this page, I'm not able to see the pencil icon which is reset

  • Get the error code: 201 continually download/re-installing creative cloud

    Get the error code: 201 constantly that I am trying to re - install the Adobe Creative Cloud app and Adobe CC applications.  It seems to be a 'problem' not specified with the download process, but when I first installed it was not.  I am re - install