Motion Control and Motor Drives

cancel
Showing results for 
Search instead for 
Did you mean: 

Need help on ni-7340.

Hello, everybody!
I'm asking for help concerning ni-7340. I am a newbe here but need to work with this card.
 
The question is as follows:
How "fast" is that board? I was searching the forum but have not found anything.
 
The exact formulation may sound like this:
I have implemented the simple onboard program which sets the label, increments the number, jumps to the label that was set before.
Only three lines of code inside flex_begin_store and flex_end_store functions.
I run this program and it shows that I have something like 250 additions per second.
I get the value of counter by reading the value from the board variable.
Does anybody know is it the correct number? Because I was told that ni-7340 can perform a lot more per second.
Or maybe something wrong with the drivers or with the board itself?
Some compileable examples will help.
 
My task is more complicated then this simple increment cycle, but while I am on such speed, I cannot perform further steps.
 
 
Thanks beforehand and good luck everybody
Sergey, Germany
0 Kudos
Message 1 of 6
(3,862 Views)
Hello Sergey,

you can finde the hole specification under the link below.

http://digital.ni.com/manuals.nsf/websearch/40BA889EEBEBECAD86257180007233A9

The hardware works correct if the device self test works.
Open the Measurement Automation Explorer (device and interface choose the 7350 device and press the button selftest).

Maybe some examples should help to programm the code.
Open Labview  (Help/Find Examples)




0 Kudos
Message 2 of 6
(3,845 Views)
Hello, Elmar.
Thank you for your answer I will try this examples.
I have read the documentation many times and I didn't find information about the speed of the onboard
programs to be executed.
So the question still remains: how "fast" are the boards from ni-7340 series? I mean how many cycles of the onboard program (exectly onboard)
per second I can expect?
Thanks beforehand.
Sergey, Germany
0 Kudos
Message 3 of 6
(3,829 Views)
Hello Sergey,

the cycle speed is not a fixed number.
Because it dependent on the number of onbord functions and the time between.
For example function 1 -> move process -> function 2
Its not possible to start function 2 befor the move process end.

(I mean how many cycles of the onboard program (exectly onboard)
per second I can expect?)

Kind regards,

Elmar



0 Kudos
Message 4 of 6
(3,823 Views)
Hello, again.
Yes I do really understand this. That is why I suggested a simple program in the first post:
- load var A = 0
- load var B = 1
- set label LABEL
- add A = A + B
- goto LABEL
 
this program should increment the value A and it does.
When I run it it shows something about 250 incrementations per second (read: program cycles per seconds).
I am reading the value using timer just by reading variable using flex_read_var_rtn(...)
I guess that this value is incrediblly small. Are my guesses correct?
I hope that this board can give me something more that 2000 cycles per second for such a simple program.
 
Thank you again. Bye
Sergey, Germany
0 Kudos
Message 5 of 6
(3,820 Views)
Sergey,

the 68331 CPU on the 7340 runs multiple tasks in parallel in a time sliced architecture. Amongst these tasks are the host communication and limit switch monitoring. Some of these tasks are running with time criticial priority but onboard programs don't.

Still there is a way to speed up the execution of onboard programs. By default the time slice for an onboard program is 2 ms. After this time a task switch occurrs. On the 7340 you can run up to 10 onboard programs in parallel, each using a 2 ms time slice. If you only run one onboard progarm you can assign the total amount of 20 ms to this program by using "Load Program Time Slice.vi". Please note that this vi or function needs to be called inside an onboard program.



This should improve your onboard program's peformance significantly but still it is running with low priority so I can' guarantee that you can reach the targeted loop rate.
If this hint doesn't solve your problem please provide some more details about what you are trying to accomplish with your onboard program as there might be an alternative approach for thsi task.

Best regards,

Jochen Klier
National Instruments Germany

Message Edited by Jochen on 12-01-2006 10:00 AM

0 Kudos
Message 6 of 6
(3,814 Views)