Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

Program is stopped in PDA

Hello,
I need your help.
I am working with PDA and USB6008OEM to detect temperatures, photodetector signals and generate digital outputs.
So I am using 3 analogue inputs (2 differential modes and a reference single mode) and 6 digital outputs.
I am monitoring the temperature signals with 1000sample rate with 100 samples/channel.
The program is running for a while but it is stopped at a certain point.
My file may be big, 3.5Mb in the PDA (in the computer just 166kb).

I am trying to separate a big file to several small, but it is not easy.

I do not know well.
Time goes but I am struggling with it for long time.
Could you give me any idea?

That would be helpful for me.

Thank you and I attached my original file.

P.S. Everything is fine in my computer and original file size in my computer is 166kb. What is the biggest file size to run in the PDA?

0 Kudos
Message 1 of 7
(10,678 Views)
Hi Nannom,
 
I would like some clarification on what exactly you are trying to do. It is my understanding that you have a VI that works on your development machine and is 166 kb in size, when you deploy to your PDA target the file size is then 3.5Mb. The VI also runs for a short amount of time on the target and then stops.
1. Is the large vile size just the VI? or all the driver files,log files, etc? 
2. Does the application work correctly on the PDA and then crash or hang or start giving incorrect data?
3. If so when does it crash, is it always are the same point?
4. Have you tried using an example VI such as USB-600x interactive control.vi which can be found in the following location: C:\Program Files\National Instruments\LabVIEW 8.5\examples\daqmxbase then open the USB-600x interactive control.llb the VI should be the first one in the list. I have attached a screen shot of the example.
5. Does this example work correctly?
 
Any information in addition to the answer and results from above would be greatly appreciated
 
JaceD

Message Edited by jaced on 10-03-2007 11:14 AM

Message Edited by jaced on 10-03-2007 11:16 AM

JaceD
Signal Sources Product Support Engineer
National Instruments
0 Kudos
Message 2 of 7
(10,651 Views)
Thank you , JaceD.

I try to answer your questions:
>> It is my understanding that you have a VI that works on your development machine and is 166 kb in size, when you deploy to your PDA target the file size is then 3.5Mb. The VI also runs for a short amount of time on the target and then stops.
Yes, your understanding is correct. Actually I have one more problem. In my program, at the case #7 I start to detect one more signal by changing digital output (for a switch controlled by 4 port on/off signals). From that points, my temperature signals (they are detecting from the beginning) can not be detected. All these problems are not shown in my labtop computer.

>>1. Is the large vile size just the VI? or all the driver files,log files, etc?
I do not know well, but this is not VI file. It is exe file. It is generated by building process. I transfered this file to my PDA. The exe file is 3.5Mb not VI file.

>>2. Does the application work correctly on the PDA and then crash or hang or start giving incorrect data?
>>3. If so when does it crash, is it always are the same point?Yes. In my program, there are 11 case structures. cases #5 to 10 are repeated. All cases are detecting two temperatures and output two digital signals for temperature control (controls heater and fan). Only at case 7, I detect one more signal and output 4 more digital signals (to control switch). At this point detecting has some problem. My PDA lost temperature detections and other detections, but program is still running. After completing one cycle, cases #5 to 10 are repeating. In this cycle at case #8, the program is stopped at  every same spot, 10.6 seconds.

>> 4. Have you tried using an example VI such as USB-600x interactive control.vi which can be found in the following location: C:\Program Files\National Instruments\LabVIEW 8.5\examples\daqmxbase then open the USB-600x interactive control.llb the VI should be the first one in the list. I have attached a screen shot of the example.
>>5. Does this example work correctly?
Yes. I checked it. Everything is work fine.

Thank you..
0 Kudos
Message 3 of 7
(10,639 Views)

Hi nannom,

I tried opening your VI but it is missing the "VtoC.vi"  Is this a custom VI that you made? Could you please attach it.

Also, you should look at all the tasks you are starting.  It looks that in each event you start new tasks without closing them before you move on to the next action.

Final question to clear up the issue, is the root problem that certain events (5-10) repeat unexpectedly, or do you just not see the inputs and outputs desired?

 

Alex A.
Applications Engineer
0 Kudos
Message 4 of 7
(10,542 Views)

Thank you, and I attached VtoC.VI.

I do not understand well.

I started task out side of loop and only gathered data in the loop. Is there any problem?

And if it is problem, the program should not detect signals in the desktop computer too.

In PDA, there is no problem repeating before the program is stopped.

Problems were the lost of signals and unexpectedly stop.




0 Kudos
Message 5 of 7
(10,539 Views)

Hi nannom,

We need to step back and take a broader look at what you are trying to accomplish.

I understand that you are taking temperatures during numerous steps in the program. Now are the photodetector signals you are reading only taken during certain events?

The digital outputs that you have are they dependent on any of the measurements you already take, or do they only occur in events in sequence?

I would take a look at the “Stop” functions you have in each step.  It is poor LabVIEW practice to use these in that it will abort the execution of your entire program. You should look at using a boolean control button that will exit the loops and end the VI naturally.

I reiterate that you need to look at your “thermal control” and “optical switch” tasks.   You have the task with the start and write functions, but you need to stop or clear these tasks before your next event (0-11) takes place.

My last suggestion would be to wire the errors of your task subVI’s in the sequence that you would like your program to run.  This will insure that the program executes in the proper order, and will output any errors that occur.  As it stands right now, errors will be displayed only if it occurs at the “ai read” task because it is the only section of code which is wired for error handling.

 

Alex A.
Applications Engineer
0 Kudos
Message 6 of 7
(10,043 Views)

Alex,

Yes, photodetecting signals are reading at Case#7 after 10 seconds.

There are two digital outputs. One is named "thermal control" of port1. I am using two channels(#0 and #1) of it to control constant temperature (with heater and fan).

The other channel is named "optical switch" of port2. I am using all four channels of it to control optical switch.

"Thermal control" digital output is dependent on temperature measurement in all cases. Based on measured temperature, "thermal control" output signal is decided.

"Optical switch" digital output is related to photodetecting. After changing swich, one photodetecting signal is measured, and then switch is changed to next port to detect other photodetecting signals only in case#7

The "Stop" function is only to stop the program at any cases. I tried several other ways but it was not good to stop the program while it is running. Please recommend me better way if you know. I am not sure but I also used boolean, but it was not stop(maybe). Also if so, do I have to put boolean function at every events (cases)?

Whatever I do or do not put stop and clear, the program was okay in the desktop but not in PDA. Is there any critical limit in the PDA?

Have you tried this program in your PDA?

I hope you could do and give some idea.

I really thank you for your helps.

0 Kudos
Message 7 of 7
(9,718 Views)