Motion Control and Motor Drives

cancel
Showing results for 
Search instead for 
Did you mean: 

Got 70140(All program players are in use) Error

Hi,
Need help on NI flexmotion 70140 errors: "All program players (maximum 10) are in use storing/playing programs"
I'm using Onboard Subroutines structures now(C/C++ coding), totally 25 programs(prog#1~prog#25) stored in RAM while at any time only 7~10 programs running, totally memory used is less than. It seems OK if I'm not wrong(Max. 32 progs storing, up to 10 progs sync-running, size less than 64K). After all of them downloaded I can see them from MAX marked with "program done" state.
To be exactly, I will trigger prog#1 from host, then trigger prog#2,3,4,5,6,7 from prog#1, all of them can be considered always running thread as they will keep monitoring status and issuing jobs, the rest, prog#8~prog#25 will act as "subroutines" and do motion jobs only, they will be ended upon the motion completed. I try the simplicity by just calling prog#1->prog#6->prog#14,  disable the rest --> problem still there.
 
MAX Version: 3.1.1
firmware are updated(from MAX)
 
Any comments?
 
 
Thanks & Best Regards,
0 Kudos
Message 1 of 4
(3,255 Views)
Hi,
 
When a subroutine program is called, it will towards the number of running programs.  For instance, if programs 1-7 are running and 1,3, and 5 call subroutines, there are 10 programs running.  If program 6 calls a subroutine, there are now 11 programs running and you will get an error.  Using this definition, are there more than 10 programs running at a time?  If there are less than ten programs running, make sure programs are being stopped, not paused, before more programs are called.  A paused program will still count towards the 10 program limit.
 
Ryan M.
Applications Engineer
National Instruments
0 Kudos
Message 2 of 4
(3,244 Views)

Hi Ryanm,

Thanks your reply.  I did further testing and here is the result:

1. This issue is not related with how many onboard progs(< 32) and total progs' size(< 64K). In fact I can store all of my progs(up to 25) without any error but I can't run even one or two of them at all. I tried to download some progs only then I can run two of them, ie. pg#1, pg#6 which is called by pg#1, and I also need disable some subroutine call from pg#6. Try pg#1->pg#2,3...., same.

2. This issue is not related with RAM/flash ROM too. I tried download my programs to flash and free from RAM, then run them from flash, same error.

3. The only way I can solve my problem is compressed them so that the total program No will not exceed 10. Now I moved my subroutines into their caller's codes, after changing the total prog No. reduced to 7. Run them, fine!

4. BTW, once 70140 error happened, it can not be reset as normal by press "Error Details" button at "My System|Devices and Interfaces|NI Motion Devices|PCI-7350|Interactive|1-D Interactive" from MAX, though it seems error cleared but actually it sits in memory somewhere and you will get same error everytime you download new progs and run. You can only power off PC or "Reset Device" to clear the error.

5. I think the issue is caused by firmware bug during onboard programs' switching. The firmware version is 7.00.3001, if you need further information for investigation such as my onboard programs please let me know.

Thanks.

0 Kudos
Message 3 of 4
(3,241 Views)
Hi,
 
We tried to reproduce the issue by loading 20 programs.  Program 1 can call 2-9 and this works fine.  We can then stop 2-5 and start 14-17 and this also works fine.  It may be something more specific to your code.  If you could send me the simplest version that reproduces the problem, I would be glad to take a look at it.
 
Ryan M.
Applications Engineer
National Instruments 
0 Kudos
Message 4 of 4
(3,225 Views)