Plotting amplitude of one spectral peak over time
Hi,
I am trying to create a VI where the DAQ continually aquires, plots and saves a waveform in millisecond timeframe (which is already done in this instance), then takes that waveform, finds a specific peak (most likely the first one), and plots the amplitude of that peak over time (30+ minutes, one point every scan that is obtained). Essentially, I have a very fast detector attached to a Gas Chromatograph, and I want to select a single ion and monitor the amplitude of that ion. I can plot the waveforms over time and do this in post processing, but what I would like to do is have the "slow" plot continuously update and display as it moves through time. Attached is the VI this will go into, using IMS Software V1.3.vi, the subsection is the "GC Mode" it seems like I should be using the "peak detect.vi.", but I am unfamiliar with how this works, and so I do not know how to show a continuously updating graph or pull the amplitudes out and plot them. Thank you for your help,
<>< Eric
Solved!
Go to Solution.
Attachments:
IMS Software v1.llb 612 KB
Eric-WSU wrote:
i get an amplitude over time plot, but it does not appear until after all of the iterations have stopped
I have not looked at your VI (because I am in a previous version of LabVIEW), but this is probably because your graph is outside of the loop.
Here is how you can get a graph of the peaks (all of the peaks, per iteration):
Or if you only wanted a certain peak (and how that peak changes over many iterations):
Message Edited by Cory K on 01-21-2009 05:51 PM
Cory K
Attachments:
simple.PNG 3 KB
pick peak.PNG 7 KB
Similar Messages
-
How do you update an intensity plot one element at a time?
I would like to use an intensity plot (or other control) to plot data collected from A/D channels. How do you get the Intensity plot to update one element at a time vs. row by row? Tips and suggestions greatly appreciated!
> I would like to use an intensity plot (or other control) to plot data
> collected from A/D channels. How do you get the Intensity plot to
> update one element at a time vs. row by row? Tips and suggestions
> greatly appreciated!
>
You will need to use the intensity graph and keep the buffer yourself.
Init the data with background values and start filling then in using
Replace Array subset. Presumably you are in a loop. Recirculate the
data in a shift register adding new data each iteration and plotting the
array to the intensity graph.
Once you get to the horizontal edge, you need to decide if you split the
data to get rid of the first row and append a new background row to the
end making a strip chart, or do you clear the array and start over from
the initial edge again making a scope chart, or do you mod the index
with the buffer size and erase a row at a time in advance making a sweep
chart.
To update the scales, you don't have to change the data. Just write to
the Offset property each time you scroll and it will relabel the data
with 0 mapping to the offset value.
Greg McKaskle -
I ended up with 3 Apple IDs over time. How can I get it down to one account?
I ended up with 3 Apple IDs over time. When I sink my iPad, some apps won't sync because the app was purchased under a different account?
How can I get it down to one account and be able to sync all of my iTunes purchases (apps, music, etc.) on my iPad and iPhone?
This is driving me crazy! grrrr. :-)
I have .me; .mac and .icloud accounts.
- Dave
Running OS X 10.8.5 (Mountain Lion) on iMac, using iPad 4 (64GB) and iPhone 5.Thanks. I was afraid of that. Darn Apple....we use Apple products because they are elegant and easy to use, why can't apple simplify the ID issues??? :-)
Thanks for the reply. -
How do I update a waveform chart with multiple plots one point at a time?
Hi,
I am updating multiple plots one point at a time. That is, every time I update the chart I have a value for one of the plots. If I put in a cluster with NaN for each of the charts except the one with the data I can only get individual points on the chart. I would rather have them connected.
Any clues? The only thing I can think of is to delay the update and do interpolation between samples - too complicated for me.
ThanksAre the points within a given plot equally spaced in time? If so, perhaps you need to maintain your own history of the data and used a waveform graph rewriting the history data to the graph each time. If the points are unequally spaced, then you will need to do it as an XY graph.
-
Utility to send text file over GPIB, one line at a time?
We are developing instrumentation that receives data and commmands over GPIB as plain text, and returns them as well. I'd like to create GPIB "batch" files and send them over the bus, one line at a time, so I can debug the instruments' behavior. I'd also like to be able to read back responses, one line at a time.
Is there such a utility? I've got our programmer working on something like this, but I'd hate to have him re-invent an existing wheel.
Thanks!Apart from NI-SPY, I have not heard of such a utility. This may be simple to implement using proper termination. If the instrument is capable of sending line feeds or carriage return, you should be able to easily create a document. Also, using IBWRTF, you could write the ASCII file (containing the termination characters) to the bus. Depending on how you have your timeouts specified, this may be ideal.
Alternately, if you read a static amount of data, you could IBRD chunks of data. the result may need editing for broken words at the end of a line but would achieve such a result.
Ryan Mosley
National Instruments, Applications Engineer
http://www.ni.com/exchange -
I'm currently recovering files (using Disk Warrior) from a failing hard drive, but when OS X hits a corrupted file ("Error -36"), it cancels the entire transfer, rather than skipping over it. Basically, I have to transfer one file at a time, which, on a 2TB hard drive, is going to be insanely tedious, so I was wondering if there's an automation that can transfer one file at a time, or some other way to transfer files that won't stop mid-process?
in my experience, people who know enough unix to understand what you suggested rarely ask questions about automator. Auto-mechanics don't generally need advice on choosing an auto repair shop.
Applescript is probably the easiest way to go with this. I don't know what the file structure of the recovered documents is, but in general you'd run something like this:
set sourceFolderPath to "/path/to/recovered items folder/"
set destinationFolderPath to "/path/to/destination folder/"
tell application "System Events"
set theFiles to files of folder sourceFolderPath
repeat with thisFile in theFiles
try
-- move files one-by-one in an error block
move thisFile to folder sourceFolderPath
on error
-- you can put something here to log the skipped files or display a dialog, if you like
end try
end repeat
end tell -
after this new itunes and ios7 update all my music is off my ipod touch unless i download them one artist at a time, i have over 3500 songs in there. really? is there no easier way to get my music back into my ipod? like a download all button? thanks.
thanks for the reply. guess i'll have to do that. apple, not really happy with what you've done with this latest update. have not been able to enjoy my music in my car since the update. most of us dont mind changes that progress timely, but this was much more than just a progression. this was a complete change. and not a good one, at all. thanks to the two people that replied. appreciate it.
-
I am trying to activate my program into my new computer (the old one was run over by a car) and it says I have exceeded my installations. It's Adobe Audition 3 (you can see I've been using it a long time) and I rely on it for work everyday. Please advise.
The activation server for Audition 3 was shut down by Adobe several years ago.
You now need to download the non-activation version provided by Adobe here
Error: Activation Server Unavailable | CS2, Acrobat 7, Audition 3
Install then enter the new serial number provided by Adobe at that link. Your existing serial number will no longer work. -
Hey guys, i have a one year old Mac desktop which has become incredibly slow over time. Strange thing is that I have not downloaded anything save for install Windows for Mac. Storage wise the bulk of my info is stored on hard external drives. Can someow
Hardware Information:
iMac - model: iMac11,2
1 3.2 GHz Intel Core i3 CPU: 2 cores
4 GB RAM
Video Information:
ATI Radeon HD 5670 - VRAM: 512 MB
System Software:
Mac OS X 10.6.8 (10K549) - Uptime: up 0:2:53:43
Disk Information:
WDC WD1001FALS-40Y6A0 disk0 : (931,51 GB)
(null) (disk0s1) <not mounted>: 200 MB
Macintosh HD (disk0s2) /: 931,19 GB (894,98 GB free)
OPTIARC DVD RW AD-5680H
USB Information:
Apple Inc. iPad
Apple Internal Memory Card Reader
Apple Inc. BRCM2046 Hub
Apple Inc. Bluetooth USB Host Controller
Apple, Inc. Keyboard Hub
Apple, Inc Apple Keyboard
Apple Computer, Inc. IR Receiver
Apple Inc. Built-in iSight
FireWire Information:
Kernel Extensions:
Problem System Launch Daemons:
[failed] com.apple.suhelperd.plist
[not loaded] org.samba.winbindd.plist
Problem System Launch Agents:
[failed] com.apple.Kerberos.renew.plist
Launch Daemons:
[loaded] com.adobe.fpsaud.plist
[loaded] com.microsoft.office.licensing.helper.plist
[loaded] com.rim.BBDaemon.plist
[loaded] com.zeobit.MacKeeper.AntiVirus.plist
Launch Agents:
[loaded] com.rim.BBAlbumArtCacher.plist
[loaded] com.rim.BBLaunchAgent.plist
User Launch Agents:
[loaded] com.adobe.ARM.202f4087f2bbde52e3ac2df389f53a4f123223c9cc56a8fd83a6f7ae.plist
[loaded] com.zeobit.MacKeeper.Helper.plist
User Login Items:
iTunesHelper
BlackBerry Desktop Software
Bluetooth File Exchange
Garmin ANT Agent
Dropbox
3rd Party Preference Panes:
Flash Player
Internet Plug-ins:
AdobePDFViewer.plugin
AdobePDFViewerNPAPI.plugin
Flash Player.plugin
FlashPlayer-10.6.plugin
GarminGpsControl.plugin
iPhotoPhotocast.plugin
JavaAppletPlugin.plugin
QuickTime Plugin.plugin
SharePointBrowserPlugin.plugin
User Internet Plug-ins:
Bad Fonts:
None
Top Processes by CPU:
Top Processes by Memory: -
my mom somehow ended up with two totally different iTunes accounts, based on an old (dead) email address and a newer one as well. She's bought a lot of music on both accounts over time... is there some way to merge the old account into her newer one?
No. If one of those accounts is inaccessible, click here and request assistance.
(82012) -
Plotting boolean digital signals over postion (angle degrees) not over time
Hello all,
I would like to plot two boolean signals over position (angle degrees) and not over time. Any pointers on how to do this? The two digital signals are coming from a VI on my FPGA code (running cRIO - 9014), and the location in degrees is also generated by the same VI on my FPGA code.
I tried to use "Boolean Array to Digital.vi" and a "Digital Waveform Graph", but it will only plot my 2 digital signals over time and I need to plot it over position. I took that vi from example "Digital Waveform DT Graph Demo".
Another issue with plotting it against time is the sampling rate. I'm plotting cam and crank signals over engine position (crank angle degrees), how do I plot these signals in position intervals of 720 degrees. Could I tweak the sampling somehow that I would be able to see stills of these intervals? The position date is continously running from 0 to 720, when it reaches 720 it starts again in 0.
Thanks!You'd have to use an XY graph so you can define your own x-axis, in your case it would be degrees.
-
Using chart to track changes over time
Hi, I'm monitoring the progress of recovery from injury and need to analyse changes in grip strength over time. I would like to use a chart with grip strength on the Y axis and time along the X axis.
Unfortunately, the records were not taken at regular intervals, so the chart resulting from my data gives a misleading visual of progress. For example, my dates are sometimes one week apart, sometimes two, sometimes four.
Is there a way to get the time intervals to scale properly? That is, at the moment each date is at an equal point along the X axis, regardless of how long between the two dates (3 April, 14 April, 28 May and so on). What I want is for those dates to be separated along the X axis in equivalent proportions to their relationship in time (thus 3 April would be much closer to 14 April, than 14 April is to 28 May).
My only thought is to manually extrapolate the "missing" dates and guess the grip strength on those dates. Unfortunately this will defeat the purpose of the exercise. Any help most gratefully accepted, thank you!An XY scatter plot (third from the bottom) will preserve proportions on both axes. Connect the points with (straight) lines for a broken line graph.
Regards,
Barry -
Hi everyone,
I have the following problem...
I am trying to plot some Light Intesity values over time out of a real time video. But I don't know how to create my VI ...
Therefore I have attached the VI I have until now. It first asks for a region of Interest by pushing the Setup-Button and after that the Measurement of the Intensity begins, shown in the second tab called "real time video"... the values are also shown in the box beside!
Now I don't know how to measure the time und how to write the time and intensity values in an array to plot it...
It would be best to capture the time value for every frame and consequently every intensity value...
Any ideas ???
I am using LV 8.0 ...I don't have a higher version
Message Edited by Portisblaed on 12-29-2007 07:03 AM
Attachments:
ROI-Button-sequence II.vi 106 KBHi,
I have one more question about the waveform chart...
When I play an AVI file with about 50 seconds time, and I plot the Intensity over time with the waveform chart, this plots shows me a timescale which doesn't fit to the time fro m the video! For example my 50 second video is played in a time of 20 seconds! What's the reason for that? Do I have to change the time settings somehow?
And the examples don't really help me to fourier transform the signal I got, because I don't know the time of the measurement! Just the x-scale of the wavefrom chart like you suggested it before...
Thanks for help!
Message Edited by Portisblaed on 01-08-2008 09:50 AM -
One core peaking after 10.9.3....annoying clipping sounds
Using a 12 core mid 2010 32GB RAM. This is what my core reader looks like when I'm doing nothing....on a blank session (screenshot). If I start auditioning string samples (Spitfire, 8W Black, Symphobia ect...)that one core peaks causing very annoying clipping sounds. I didn't have this issue on 10.9.2 and after the awesome Logic X update that spread the load across the cores (finally).
Please look into this as I'm sure Im not the only one with this issue. My computer and using Logic X is how i make a living. Freezing every track is the only work around this, for now....Just to follow up: I started looking for things on my MacBook that could have had an impact on this behavior. I could think of three: App Nap, and two third-party products I run, App Tamer and Little Snitch. I turned all three off, and the problem went away. So you'd think I'd found the source of the problem. Well ... over the next couple of days, I turn them back on one at a time, They have all been back on for almost a week now ... and the problem has not recurred.
Meanwhile, my other MacBook - which displayed the same problem, though less frequently - also no longer displays it. (I don't run either of the third-party programs on the other MacBook, and I never changed the App Nap settings. Oh, and it's my work machine and on a completely different network provider I have AT&T at home, it's Verizon at work - so in terms of network connections, the commonality is "The Internet".)
So this has vanished completely as mysteriously as it arrived.
-- Jerry -
Reading a string one character at a time
Hi,
I'm hoping you use SmallBasic for year 10 exam students at my school. But, I have found a problem I cannot solve.
I need to be able to read one character at a time from a string (txt file) and convert each char to its ACSII code.
How do to I read one char at a time from a string to enable processing?
Thanks for your help.
BazHere is an over the top solution that will display the Hex value of the character codes of every character in the file.
TextWindow.Write("Enter full file name: ")
filnam = TextWindow.Read()
contents = File.ReadContents(filnam) 'read the entire file
TextWindow.Clear()
TextWindow.WriteLine("File Name: " + filnam)
TextWindow.WriteLine("Offset: 0")
col = 0
row = 5
TextWindow.CursorLeft = col
TextWindow.CursorTop = row
For i= 1 To Text.GetLength(contents)
ch = Text.GetSubText(contents, i,1)
chVal = Text.GetCharacterCode(ch)
ConvertToHex()
TextWindow.CursorLeft = col
If chVal < 32 Then
TextWindow.Write(".")
Else
TextWindow.Write(ch)
EndIf
TextWindow.CursorLeft = 20 + 2 + (col * 3)
TextWindow.Write(Text.GetSubText(hexstr,1,2))
col = col + 1
If col = 8 Then
col = col + 1
EndIf
If col > 16 Then
col = 0
row = row + 1
If row > 20 then
TextWindow.CursorTop = 23
TextWindow.CursorLeft = 25
TextWindow.Write("< < < Press ENTER to Continue > > >")
TextWindow.Read()
TextWindow.Clear()
TextWindow.WriteLine("File Name: " + filnam)
TextWindow.WriteLine("Offset: " + i)
row = 5
EndIf
TextWindow.CursorTop = row
EndIf
EndFor
TextWindow.WriteLine("")
TextWindow.WriteLine("")
Sub ConvertToHex
HexValue[0] = "0"
HexValue[1] = "1"
HexValue[2] = "2"
HexValue[3] = "3"
HexValue[4] = "4"
HexValue[5] = "5"
HexValue[6] = "6"
HexValue[7] = "7"
HexValue[8] = "8"
HexValue[9] = "9"
HexValue[11] = "A"
HexValue[12] = "B"
HexValue[13] = "C"
HexValue[14] = "D"
HexValue[15] = "E"
val = chVal
hexstr = "h" 'Need to force Small basic to concatenate rather than add
While val > 0
hexPos = Math.Remainder(val, 16)
hexstr = HexValue[hexPos] + hexstr
val = Math.Floor(val / 16)
EndWhile
For hi = Text.GetLength(hexstr) To 2
hexstr = "0" + hexstr
EndFor
EndSub
Enjoy!
Maybe you are looking for
-
Problem with non iPhone users receiving my text sent pictures. Can I make them smaller files? I know that is possible for email sent pics.
-
Monitoring failover - Data Guard Broker
Hi, I work on a Oracle 10.2.0.4 database on Solaris 10. It is a 2 node RAC database with a physical standby configured. I want to monitor (send a mail) to myself when failover occurs (which will be triggered by data guard broker ) , I think so I can
-
Motion 4 render quality from FCP
I do not appear to get the same quality rendering .motn on the FCP timeline as I do exporting .mov out of Motion 4, and so far a I can tell I have set my FCP sequence to do "best" quality. I'm using the 4444 codec. I'm evaluating by exporting .mov fr
-
I am having difficulties with iPhoto slideshow. It crashes in the middle of the presentation and I have to power off and restart my computer to get it running again.
-
Aaa authentication using tacacs+ for LAP
WIth Autonomous AP, you can configure aaa authtentication using Tacacs+. In lightweight AP, do u have similar function where u authenticate using tacacs+ when u telnet/ssh into the LAP after it is registered to the WLC? Rgds Eng Wee