How to generate a pulse on x number of events PCI-6602
I am running LabVIEW 5.1 full development with a PCI-6602 counter board.
I would like to generate an output pulse after counting x number of input pulses. I would also like to reset the counter with an external signal.
My application is I am trying to generate a second index pulse for an encoder.
I would like to count the pulses from encoder phase A and generate an output pulse on x number of counts. Then I would like to reset the counter using the encoder’s index pulse. This way I can change the phase of the “generated” index pulse with respect to the “real” index pulse by x number of counts (degrees) and maintain that regardless of encoder rpm.
Thanks
Brian
Brian,
There actually is a way to do what you want, but it gets a little complicated. I don't have LV on this machine so I'll have to just describe the idea. First a summary: the counter will repeatedly countdown to 0. Each time it reaches 0, it will generate a brief pulse which will in turn hw-reset the counter value to N. Then it will countdown to 0 again, etc. The same brief pulse could also be wired to a different encoder-measuring counter to create a "delayed" reset to 0 (or some other #).
1. Configure your counter for "position measurement" instead of "simple event counting". Set the encoder type to, um, I forget the name -- something like "two pulse encoder." It's the setting that will increment with every SOURCE edge and decrement with every AUX edge. Wire your encoder channel A to the counter's default AUX input (in position encoder mode, you must use the default input pins). Hard wire from the default SOURCE input to GND. Now every encoder edge will decrement the count, and nothing wlil ever increment it.
2. Configure the counter to use z-indexing. Set the z-index reload value to be N-1, where N is the # of encoder counts by which to delay the encoder's real z-index pulse. Set the z-index reload phase appropriately, probably to A low B low. Wire the real z-index pulse to the counter's GATE input.
3. Configure the counter to "pulse on terminal count" -- you do this using 'Counter Set Attribute.vi'. So N encoder edges after the real z-index pulse, you'll generate a pseudo-z-index with this counter.
4. You can wire this pseudo-z-index to the GATE input of the encoder-measuring counter. Now the encoder's z-index pulse is delayed by an amount you can program.
5. Note: this method requires the motion to be uni-directional.
Good luck!
-Kevin P.
Similar Messages
-
How to generate report with dynamic variable number of columns?
How to generate report with dynamic variable number of columns?
I need to generate a report with varying column names (state names) as follows:
SELECT AK, AL, AR,... FROM States ;
I get these column names from the result of another query.
In order to clarify my question, Please consider following table:
CREATE TABLE TIME_PERIODS (
PERIOD VARCHAR2 (50) PRIMARY KEY
CREATE TABLE STATE_INCOME (
NAME VARCHAR2 (2),
PERIOD VARCHAR2 (50) REFERENCES TIME_PERIODS (PERIOD) ,
INCOME NUMBER (12, 2)
I like to generate a report as follows:
AK CA DE FL ...
PERIOD1 1222.23 2423.20 232.33 345.21
PERIOD2
PERIOD3
Total 433242.23 56744.34 8872.21 2324.23 ...
The TIME_PERIODS.Period and State.Name could change dynamically.
So I can't specify the state name in Select query like
SELECT AK, AL, AR,... FROM
What is the best way to generate this report?SQL> -- test tables and test data:
SQL> CREATE TABLE states
2 (state VARCHAR2 (2))
3 /
Table created.
SQL> INSERT INTO states
2 VALUES ('AK')
3 /
1 row created.
SQL> INSERT INTO states
2 VALUES ('AL')
3 /
1 row created.
SQL> INSERT INTO states
2 VALUES ('AR')
3 /
1 row created.
SQL> INSERT INTO states
2 VALUES ('CA')
3 /
1 row created.
SQL> INSERT INTO states
2 VALUES ('DE')
3 /
1 row created.
SQL> INSERT INTO states
2 VALUES ('FL')
3 /
1 row created.
SQL> CREATE TABLE TIME_PERIODS
2 (PERIOD VARCHAR2 (50) PRIMARY KEY)
3 /
Table created.
SQL> INSERT INTO time_periods
2 VALUES ('PERIOD1')
3 /
1 row created.
SQL> INSERT INTO time_periods
2 VALUES ('PERIOD2')
3 /
1 row created.
SQL> INSERT INTO time_periods
2 VALUES ('PERIOD3')
3 /
1 row created.
SQL> INSERT INTO time_periods
2 VALUES ('PERIOD4')
3 /
1 row created.
SQL> CREATE TABLE STATE_INCOME
2 (NAME VARCHAR2 (2),
3 PERIOD VARCHAR2 (50) REFERENCES TIME_PERIODS (PERIOD),
4 INCOME NUMBER (12, 2))
5 /
Table created.
SQL> INSERT INTO state_income
2 VALUES ('AK', 'PERIOD1', 1222.23)
3 /
1 row created.
SQL> INSERT INTO state_income
2 VALUES ('CA', 'PERIOD1', 2423.20)
3 /
1 row created.
SQL> INSERT INTO state_income
2 VALUES ('DE', 'PERIOD1', 232.33)
3 /
1 row created.
SQL> INSERT INTO state_income
2 VALUES ('FL', 'PERIOD1', 345.21)
3 /
1 row created.
SQL> -- the basic query:
SQL> SELECT SUBSTR (time_periods.period, 1, 10) period,
2 SUM (DECODE (name, 'AK', income)) "AK",
3 SUM (DECODE (name, 'CA', income)) "CA",
4 SUM (DECODE (name, 'DE', income)) "DE",
5 SUM (DECODE (name, 'FL', income)) "FL"
6 FROM state_income, time_periods
7 WHERE time_periods.period = state_income.period (+)
8 AND time_periods.period IN ('PERIOD1','PERIOD2','PERIOD3')
9 GROUP BY ROLLUP (time_periods.period)
10 /
PERIOD AK CA DE FL
PERIOD1 1222.23 2423.2 232.33 345.21
PERIOD2
PERIOD3
1222.23 2423.2 232.33 345.21
SQL> -- package that dynamically executes the query
SQL> -- given variable numbers and values
SQL> -- of states and periods:
SQL> CREATE OR REPLACE PACKAGE package_name
2 AS
3 TYPE cursor_type IS REF CURSOR;
4 PROCEDURE procedure_name
5 (p_periods IN VARCHAR2,
6 p_states IN VARCHAR2,
7 cursor_name IN OUT cursor_type);
8 END package_name;
9 /
Package created.
SQL> CREATE OR REPLACE PACKAGE BODY package_name
2 AS
3 PROCEDURE procedure_name
4 (p_periods IN VARCHAR2,
5 p_states IN VARCHAR2,
6 cursor_name IN OUT cursor_type)
7 IS
8 v_periods VARCHAR2 (1000);
9 v_sql VARCHAR2 (4000);
10 v_states VARCHAR2 (1000) := p_states;
11 BEGIN
12 v_periods := REPLACE (p_periods, ',', ''',''');
13 v_sql := 'SELECT SUBSTR(time_periods.period,1,10) period';
14 WHILE LENGTH (v_states) > 1
15 LOOP
16 v_sql := v_sql
17 || ',SUM(DECODE(name,'''
18 || SUBSTR (v_states,1,2) || ''',income)) "' || SUBSTR (v_states,1,2)
19 || '"';
20 v_states := LTRIM (SUBSTR (v_states, 3), ',');
21 END LOOP;
22 v_sql := v_sql
23 || 'FROM state_income, time_periods
24 WHERE time_periods.period = state_income.period (+)
25 AND time_periods.period IN (''' || v_periods || ''')
26 GROUP BY ROLLUP (time_periods.period)';
27 OPEN cursor_name FOR v_sql;
28 END procedure_name;
29 END package_name;
30 /
Package body created.
SQL> -- sample executions from SQL:
SQL> VARIABLE g_ref REFCURSOR
SQL> EXEC package_name.procedure_name ('PERIOD1,PERIOD2,PERIOD3','AK,CA,DE,FL', :g_ref)
PL/SQL procedure successfully completed.
SQL> PRINT g_ref
PERIOD AK CA DE FL
PERIOD1 1222.23 2423.2 232.33 345.21
PERIOD2
PERIOD3
1222.23 2423.2 232.33 345.21
SQL> EXEC package_name.procedure_name ('PERIOD1,PERIOD2','AK,AL,AR', :g_ref)
PL/SQL procedure successfully completed.
SQL> PRINT g_ref
PERIOD AK AL AR
PERIOD1 1222.23
PERIOD2
1222.23
SQL> -- sample execution from PL/SQL block
SQL> -- using parameters derived from processing
SQL> -- cursors containing results of other queries:
SQL> DECLARE
2 CURSOR c_period
3 IS
4 SELECT period
5 FROM time_periods;
6 v_periods VARCHAR2 (1000);
7 v_delimiter VARCHAR2 (1) := NULL;
8 CURSOR c_states
9 IS
10 SELECT state
11 FROM states;
12 v_states VARCHAR2 (1000);
13 BEGIN
14 FOR r_period IN c_period
15 LOOP
16 v_periods := v_periods || v_delimiter || r_period.period;
17 v_delimiter := ',';
18 END LOOP;
19 v_delimiter := NULL;
20 FOR r_states IN c_states
21 LOOP
22 v_states := v_states || v_delimiter || r_states.state;
23 v_delimiter := ',';
24 END LOOP;
25 package_name.procedure_name (v_periods, v_states, :g_ref);
26 END;
27 /
PL/SQL procedure successfully completed.
SQL> PRINT g_ref
PERIOD AK AL AR CA DE FL
PERIOD1 1222.23 2423.2 232.33 345.21
PERIOD2
PERIOD3
PERIOD4
1222.23 2423.2 232.33 345.21 -
How to generate biphasic pulses and change parameters?
Hi I am a beginner. I need to know how to generate biphasic pulses. What are the functions i need to use(the logic involved in labview to generate)? I should be able to change the parameters like duration,interval during the course of the program.
Greetings:
You can go to the Analysis/waveform/signal generation toolbox and find Pulse Pattern. You can set the duty cycle, frequency and phase with the standard controls.
Eric
Eric P. Nichols
P.O. Box 56235
North Pole, AK 99705 -
How to generate pwm pulse using NI DAQ in MATLAB
hi everyone. please tell me how to generate pwm pulses using Ni DAQ card in MATLAB Simulink. if through coding is possible then post the corresponding code.....reply me
Make sure you have installed the Measurement studio support for VB 6.0 then you will be able to find examples in the folder below on win7 and 8.
C:\Users\Public\Documents\National Instruments\NI-DAQ\Examples
Narrow down to Analog Output and choose update voltage example for measurement studio.
You also have the possibility to use DAQ assistant if you have measurement studio installed. This function is a configuration type programming. After going through the configuration Wizard code is automatically scripted for you so that you can output the voltage you need. Read more about DAQ assistant in the blow link.
http://www.ni.com/white-paper/4652/en/
Best Regards
Jonas Mäki
Applications Engineering
National Instruments -
Hi
I ma using 6070E daq. I am generating a infinite pulse train using one of the counters. I want to generate another pulse train which should 90 degress phase shifted with respect to the previsously generated pulse. How to implement this using the counters in the DAQ card.Hi Gopal,
1) yes the frequency generator is programmable. You have 2 timbebases (10MHz and 100kHz) and you can divide down by any integer between 1-16. Those are the only frequencies you can use.
2) The way counters work is that you can apply a gate signal to the counter which will cutoff the output. Therefore, you can have a second counter generating a pulse train of an equivalent frequency to the frequency generator (fout) but you don't want it to start immediately. You want it to start only after a short delay (equivalent to a 90d phase). Therefore, you need to "gate" or prevent the output on this counter for that small delay period of time. The way you can do this is by using a second counter to create a delayed pulse. You would
connect the output of that counter to the gate of your pulse train function. That way, during the delay period of the pulse, you won't be outputing your pulse train yet. When the pulse (high-time) of your pulse reaches the gate, then your pulse train will start generating its pulse train (which is consequently delayed by the amount of delay used in the single delayed pulse counter). Since you don't want your pulse to go back low, you will have to turn off or clear your pulse counter while it is high. That way the signal on the gate will remain high forever.
Your better solution is to use a PCI-660x card to perform this action. You will have more counters which will give you a greater range of frequencies to choose from and you will have more accurate timing of the signals.
Anyway, hope that clears things up. Have a good day.
Ron -
How to generate a pulse train with different pulse width and delay?
How to generate a triggered pulse train with different pulse width. for example, after each trigger signal, let's say 2 ms, then the counter output a pulse with pulsewidth of 1 ms, and then after 3 ms delay after the first pulse, the second pulse was generated with a pulse width of 4 ms. Next cycle when the trigger signal comes, the same two pulses will be generated and so on. Is it possible to achieve this by using 6601 counter card? and if yes, how to achieve this? Thanks!
Unfortunately you can not create a hardware timed pulse train with different widths on each pulse from a counter. Whilst it can be changed on the fly using software, since you require a hardware triggered signal getting the software involved will not give a huge amount of accuracy when the pulse will actually change.
So in short you can't use your 6601 card (or a counter timer) to achieve this
There are three possible Alternative solutions
1 You could use a high speed digital IO device such as the (6533/34) to generate your variable signal which would require setting up the pulse train as a series of states based around the burst transmission mode where the clock would give you your specific timing.
2 A timed analogy output (for example on a MIO card with a clock (PCI-6220 / 62xx), i.e. Not the 6704 style static analogy output cards)
3 A high speed digital waveform card such as the (, 656x , 655x, 654x, 6534, 6533 (http://www.ni.com/modularinstruments/find_right.htm) ) this could then be scripted to work with your triggering and also there is a digital waveform editor which will enable you to set up the pattern you wish to generate (http://sine.ni.com/nips/cds/view/p/lang/en/nid/13555)
Hope that helps
Tim Matthews
NI (UK) -
How to generate a pulse with 9472?
I am trying to generate a single 8V pulse of 10ms duration on multiple channels of the 9472. The 9472 is in slot 4 of the 9172 compact daq chassis. To test my results, I have connected an oscilloscope to one channel of the 9472 (with no load attached). I tried modifying the Create Digital Waveform VI from the Write Dig Chan-Ext Clk example VI. In doing so, I generated a binary array with the first half of the array filled with all 0's and the second half of the array filled with all 1's. When I triggered my O'scope on a rising edge, I saw the channel turn on (also the LED was lit on the 9472). However, the channel stayed on even after the routine had completed (LEDs were lit solid). So to try to turn the channel off, I appended one 0 to the end of my array. Now the O'scope won't trigger and I see no sign of the LEDs on the 9472 blinking. Any ideas how I can solve this problem?
I was able to get a single pulse of the proper duration by setting up a task in MAX with the 9472 in slot 5. But in doing so, I was only able to generate the pulse on one channel. I need to be able to parallel multiple channels for my application.I am trying to generate a single 8V pulse of 10ms duration on multiple channels of the 9472. The 9472 is in slot 4 of the 9172 compact daq chassis. To test my results, I have connected an oscilloscope to one channel of the 9472 (with no load attached). I tried modifying the Create Digital Waveform VI from the Write Dig Chan-Ext Clk example VI. In doing so, I generated a binary array with the first half of the array filled with all 0's and the second half of the array filled with all 1's. When I triggered my O'scope on a rising edge, I saw the channel turn on (also the LED was lit on the 9472). However, the channel stayed on even after the routine had completed (LEDs were lit solid). So to try to turn the channel off, I appended one 0 to the end of my array. Now the O'scope won't trigger and I see no sign of the LEDs on the 9472 blinking. Any ideas how I can solve this problem?
I was able to get a single pulse of the proper duration by setting up a task in MAX with the 9472 in slot 5. But in doing so, I was only able to generate the pulse on one channel. I need to be able to parallel multiple channels for my application. -
How to generate a unique 8 byte number for a String in DES
Hi All,
Is there any way to generate a unique 8 byte number representation of String?
I know it can be done with DES encryption (while MD5 gives 16 bytes number). My requirement is:
Every time a String is passed - my static method should return the same unique number - all the time.
i.e A String "AAAAAA" will return same unique number all the time. How can I achieve this (8 byte number) by DES Encryption or any other encryption?
Thanking all in advance.Thanks for your reply. Won't there be any loss of data if I consider only first 8 bytes? Will Integrity be maintained.?
In some cases my Strings can be unusually long - having length of 400 to 500.
I want 8 bytes as I want to map the number with MySQL bigint field. -
How to Generate Synchronized pulses across two separate cards on a PXI system
Hey,
I'm trying to generate three pulses from my PXI System for triggering purposes. I have two cards (PXI 6259 and PXI 6115) , each with two counter/timers on them. The 6259 has 32 bit timers, and the 6115 has 24 bit timers.
Up until now, I only needed two pulses. One was 180us long at 20 Hz, and the other is 5us at 20 Hz, starting 150us after the beginning of the first pulse. I was able to achieve this by generating both pulses on my 6115 card by triggering the shorter pulse off of the rising digital edge of the longer pulse and giving the DAQmx Counter/Timer task an initial delay of 150us.
The third pulse needs to be identical to the short pulse, only it needs to occur 20us early (130us after the start of the wide pulse). I tried to generate it using the same technique as I used when generating the short pulse, only generating the pulse and reading in the rising digital edge trigger on my 6259 card instead of the 6115.
The result was that my pulse trains were asynchronous and the pulse generated on the 6259 card was constantly shifting to the left.
This puzzled me, so I wrote up a little dummy program to test generating triggered pulses. The results were that when I generated two pulses on the same card, they were always synchronized; however when I generated pulses on separate cards, one of the pulses always shifted.
I was hoping somebody could suggest a reason that the pulses across cards are asynchronous even though I'm reading in a digital trigger and hopefully a way to rectify the situation and synchronize all of my pulses.The problem, in a nutshell, is that the timebases on the two boards have manufacturing tolerances that will cause them to differ from one another. The accuracy error is a small fraction of a percent, but the effect on the phasing of your pulses will be cumulative. That's why you saw the one set of pulses "shifting to the left."
The solution is to make sure each board derives its pulse timing from a single common timebase. Fortunately, this is pretty easy to specify with DAQmx, just a little tricky to find. In the chain of VI's you call to configure the counter pulses, insert a DAQmx Channel property node. From memory, I *think* you should be looking under something similar to "Counter Output->General->Timebase->Timebase.Src"
Right click and create a constant or control to define the timebase source. You should get a dropdown list that includes a wide variety of choices. Among them are each of the boards' 20 MHz clocks. By default each task will use a timebase from its own board but this technique lets you route one board's timebase over the PXI backplane with that single property node setting. DAQmx does most of the dirty work behind the scenes.
-Kevin P -
Hi,
I need to make a stepper motor undergo rotary oscillation with a sinusoidal motion profile. As it nears the extreme points it should decelerate and finally slow down to zero velocity and then it should reverse direction and accelerate until it reaches the other extremity where it should slow down and stop and reverse direction and repeat this motion.
The hardware is NI DAQ 6229 and the stepper motor can be controlled using digital Hi-Low (1,0) pulses. For each high pulse(1's) the motor turns 1 step. I am able to generate a analog sine wave and convert it to digital data using Analog-to-Digital.vi But i am not able to convert the digital data to a stream of 1's and 0's in the correct sequence to get the sinusoidal profile with the amplitude and frequency i require.
The direction of rotation can be changed by giving a pulse to another input of the stepper motor. So only half cycle of sine wave needs to be generated and it can be replayed after changing the direction to get the full sinusoidal profile.
Any ways of making this approach work or any new approaches to this problem would be helpful. Thank You.
Regards,
Prabu.
Solved!
Go to Solution.Hi,
I finally figured out a way to do it. The analog sine wave is converted to digital and sampled. Consecutive values are compared and if the least significant bit(LSB) changes then a pulse is sent to the stepper motor to turn one step.
I have included the sub-VI's that accomplish it for the particular stepper motor and connector block i have. The front panel of both sub-VI's are quite messy but the block diagrams should be much clearer. The sub-VI's get their inputs from a third VI which i have not included. So take a look at the VI connector panel to figure it out. Hope this helps. Kinda messy but worked out fine in the end for my application.
Thanks again for all the help. I appreciate it very much.
Regards,
Prabu Sellappan
Graduate Student
Aerospace and Mechanical Enggineering
University of Southern California
Attachments:
start motor test waveform dtest.vi 73 KB
sine profile generation subVI.vi 41 KB -
HI
I want to generate a 5V -ve polarity pulse to trigger my IEEE 1394 camera using an PCI 6251 (scb68 pin E) device, furthermore I am reading a standard Vsync signal from a SVGA port which is 10 v.
Now I want to synchronise the image capture of an IEEE 1394 camera with the Vsync signal so that camera is triggered to capture at every 4th Vsync signal (which is 50HZ.). Presently I am able to read the Vsync signal and also generate the -5 v signal But the Daq board generates a continues -5v signal while I want a 1 ms pulse (for every 4th Vsync).
Also this 5 v signal is generated even if the vi is stopped running.
Can anybody guide me so this problem can be solved.
Thanks a lot in advance
ShriYou can use the Write function, that is you can use the 10 volt signal as a trigger for the task, and when you get this trigger, the task starts and generate (writes) a waveform you defined in an array ("data", in the example).
Something like this..
DAQmxCreateTask("",&taskHandle);
DAQmxCreateAOVoltageChan (taskHandle, clokSource, your_sampling_freq, -10.0, 10.0,
DAQmx_Val_Volts, "");
DAQmxCfgSampClkTiming (taskHandle, clockSource, SAMPLING_RATE,
DAQmx_Val_Rising, DAQmx_Val_FiniteSamps,
samp_to_read);
DAQmxCfgAnlgEdgeStartTrig (taskHandle, input_channel, DAQmx_Val_RisingSlope, 9.0);
DAQmxWriteAnalogF64 (taskHandle, 1000, 0, 10.0,
DAQmx_Val_GroupByChannel, data, //data contain a pulse
&samp_per_channel, 0);
DAQmxStartTask(taskHandle);
// and then you create a loop....
For example you can specify data to be like this:
data[0] = -5;
for(i=1;i<1000; i++){
data[i] = 0;
Tell me if you need more help.....
bye -
How generate real pulses in myRIO from pulse train function
Hi,
I need to generate modulated pulses for an experiment. I should be able to select the number of pulse for second and their frequency, variate the amplitude among then and produce them in myRIO. To build those pulses I used the tool pulse train; however, I am stuck about how to generate those pulse from the pulse train function in real pulses in myRIO. The PWM tool, aparently, doesn't allow to select and change the amplitude between the pulses. Does anyone knows how to produce them from pulse train or even another way to do so? Thanks.
Solved!
Go to Solution.I need that each pulse have the same amplitude in the same pulse train, but just in case I want to change to each pulse different I made this draft code where I can manipulate everything that I need and change with few adjusts to the second option. I can control also the gap time. The program is running fine so far, but I still have one more task to do that is struggling me. I need to generate numbers inside the range (max-min) according to the steps with no repeatition. In case of lack of option the number does not need to to follow the rule of 2up1down. After run all the numbers between the range I need to start all over again. This code should be attached probably after restrict the number to the steps. Any idea? The code is still not clean, which may cause confusion in some aspects. However, all I need to change is the beginning of the code to attach the non repeatition cicle. Thanks.
Attachments:
MonophasicGenerator.vi 36 KB -
How to generate random strings
Gday all,
So I have to create a simple guessing game where the user guesses a 3 letter string that is randomly generated:
"For each new game your program will generate three unique random numbers between 0 and 9
inclusive, and convert them into a String of three characters in the range A to J. This String will be an
input to a game, where the user tries to guess the correct letters in the correct order. Examples of valid
input Strings would be, �JAD�, �ABC�, �IBE� and �EFG�. Examples of some invalid input Strings could be
�abc�, �AAA�, �123�, �AdE� or �NME�."
Just wondering how to create this random string? I know how to generate a random 3 char number (num = (int) (Math.random() * 1000)) but I dont know how to convert this into a corresponding string, as the instructions say.
I know this is very basic, but any tips?I know how to generate a random 3 char number (num = (int) (Math.random() * 1000)) but I dont know how to convert this into a corresponding stringUse string concatenation (+ with one or two String operands).
int i = 42;
char ch1 = '*';
char ch2 = '!';
String str = "foo";
// the System.out.println() is not important
// in each case a string is being created and printed
System.out.println("" + i);
System.out.println("2 times i = " + (2 * i));
System.out.println(i + "*2=" + (2 * i));
System.out.println("" + ch1 + ch2); // hint, hint
System.out.println(1 + 2 + "???");
System.out.println("???" + 1 + 2); -
How do I generate a pulse with a user specified puse duration, down time and repitition, and then out put to a graph and then to daq ports?
I used lab view in engineering class, but that was the extent of my usage and after fiddling around in lab view and looking on the web looking for solution, I could not produce desired results. My professor wants me to produce something that will output a pulse for a specified duration, then downtime for another specified duration and then repeat the process a specified amount of times.
I am using labview version 7.1
Thanks in advance.Hello,
Are you using hardware (DAQ card) to generate this pulse or are you planning on doing this all in software. If you have a DAQ card in LabVIEW you can go to Help » Find Examples and then select Hardware Input and Output » DAQmx » Generating Digital Pulses » Gen Dig Pulse Train-Finite.vi. This will use a counter from your DAQ card to generate a finite number of pulses at a specified frequency and duty cycle. Give this a try, or let me know if you are not using hardware, and we can figure something else out.
Regards, -
How to generate new perner number using Abap Code in pa0002. what is the fu
how to generate new perner number using Abap Code in pa0002. what is the function Module used.
hi
define internal number ranges for ur implementation then when u run PA 40 do not input any employee number , system will generate the employee number automatically.
Regards
sameer
Maybe you are looking for
-
Multiple tables in a recordset.
Hi all, I have got a bit stuck with creating an advanced recordset that calls from multiple sub tables. I have created the SQL statement below (originally used inner joins but the code got too long and still didn't work). SELECT * FROM Main_Table, Ta
-
I am looking for an app for my iPhone and iPad, equivalent to Font Book on the iMac. I would like to be able to download a variation of fonts to use in Pages. Does this exist?
-
I bought an iPhone from etisalat and there is no FaceTime, how do I reinstall it?
-
"waiting" in itunes. the download does not start.
I have bought and paid for movies in itunes. Now is it just "waiting" in itunes. the download does not start. what do I do?
-
Displaypixels() not working
Hi all, I am developing a automation photoshop plugin on MAC OSX 10.5 using xcode 3.0. I want to display the currently opened document on photoshop to my dialog. I have execute the hidden filter and got all the pixels data of the image. After gett