Kalman estimation - Thermocouple
Hello
The attached VI is a trial to estimate a correction for a thermocouple measurements. The reference transfer function is converted to a state-space model to use it for the estimation of the actual temperature.
My problem is in the last block, the linear simulation VI, as I could not get the expected output. Could you please advice on how to configure the inputs to this VI.
Thank you
Attachments:
Estimation.zip 24 KB
Thanks Simyfren
The model is simple, as you see in the VI, it was converted by by a built-in VI from a known transfer function. Moreover, it works in the discrete Kalman filter VI. So, I guess the problem might be in how the inputs excite the model in the linear simulation.
Similar Messages
-
How is the Kalman filter estimator implemented in an MPC?
I have a physical process with 2 inputs, 4 states and 2 outputs. Two of the states are
measured while the other two needs to be estimated using kalman filter.I have
developed the controller (2 i/p-2 o/p) with an MPC. I can see the 4 states in the implemented
MPC, but how do I implement a K.filter required to estimate the states of the 2 unmeasured
states in the physical process. ...help help help...
Attached is the implemented MPC.vi for comments.
Attachments:
MPC controller.zip 116 KBHi Vicky,
I dont have Labview installed on this laptop, but I have implemented the Labview MPC on a distillation column. You have 2 blocks that are necessary for the MPC, one outside the loop and one inside. You can connect all the necesary settings, like the model, the control horizon, the kalman filter settings,... to the block outside the loop. I think the control for Kalman is called estimation parameters. There you select between no estimation, pole placement and Kalman filter. For the Kalman filter you have to give the controller 3 matrices, that define your Kalman filter, N, Q and R. These matrices are related to your noise model, I don't know the exact theory unfortunately.
regards
KF -
Needs help in using Discrete Extended Kalman Filter.vi
Dear fellow members,
Currently I am working on a research estimating tremor parameter from patients using Discrete Extended Kalman Filter.
I am from Nanyang Technological Univeristy Singapore.
Now, I face a problem in running the Kalman Filter. The error board keep saying that my E(v) has wrong dimension although I have checked my code several times but not find any mistakes in dimension.
Please advice.
Thank you.
Attachments:
kalman filter.vi 23 KB
SIM Discrete Nonlinear Plant Model.vi 35 KB
acc_emg.vi 41 KBThe related vi(s) were attached
-
i want to implement a kalman filter to my project but i'm not sure how to do it..
i have the code in c but i wasn't able to use it..
can anybody help..?
Thanks..
this is the code:
typedef struct {
double q; //process noise covariance
double r; //measurement noise covariance
double x; //value
double p; //estimation error covariance
double k; //kalman gain
} kalman_state;
initialization routine:
kalman_state kalman_init(double q, double r, double p, double intial_value)
kalman_state result;
result.q = q;
result.r = r;
result.p = p;
result.x = intial_value;
return result;
the main recursive routine:
void kalman_update(kalman_state* state, double measurement)
//prediction update
//omit x = x
state->p = state->p + state->q;
//measurement update
state->k = state->p / (state->p + state->r);
state->x = state->x + state->k * (measurement - state->x);
state->p = (1 - state->k) * state->p;karpa wrote:
yes thats correct!
i tried to use the Code Interface Node but no luck..
although i found a solution by using the code with dll i have two issues..
the first is how to use the Code Interface Node (if i need it again.. )
the second is that if i use two vi's with the kalman filter(called from dll) the values are mixing together..
e.g the input from the first vi is affecting the output of the second vi, although they have no connection between them..
does the two vi's using the same memory?
how to make them behave as expected,i.e independent between them?
Nihil wrote:
hello karpa, i dint fully understand, so the question is how to implement C code in labview?
You are using a different state for each function?? The C code has no globals or statics inside so there is no influence between the two and LabVIEW definitely does not share data between VIs unless you use some specific means to share that data. So you must be doing something.
As to using code Interface Nodes: don't! They are legacy technology not anymore supported on all platforms that LabVIEW supports (namely 64 bit versions for now). The cross platform way of doing external code business nowadays is shared libraries/DLLs using the Call Library Node.
The code in question looks very simple to implement and there is really no reason to use an exernal code for it. To get a fairly good idea of what you might be wanting to do for this, take a look at vi.lib\Utility\MD5Checksum.llb\MD5Checksum string.vi. It's not the same but it should give some idea how to handle that. You can also combine all the state information into one cluster instead of wiring its elements around independantly.
Message Edited by rolfk on 03-09-2010 08:05 AM
Rolf Kalbermatter
CIT Engineering Netherlands
a division of Test & Measurement Solutions -
Bonjour,
Je travaille actuellement sur un projet de contrôle de vitesse dans un système de transport utilisant un filtre de Kalman. J'essaie d'implémenter l'algorithme utilisé dans le logiciel mais je ne suis pas parvenu à utiliser correctement les boucles de rétroaction pour rendre compte de la récursivité de l'algorithme.
Voici l'algorithme:
Pas_est = Pas_cycle
Vit_est = Vit_Pred_prec + K21*(Pas_est - Pas_Pred_prec)
Acc_est=Acc_Pred_prec + K31*(Pas_est - Pas_Pred_prec)
Pas_Pred=Vit_est*temps_cycle + 0.5*Acc_est*(temps_cycle)²
Vit_Pred=Vit_est + Acc_est*temps_cycle
Acc_Pred=Acc_Est
avec:
Pas_est=pas estimé
Pas_Pred=pas prédit
Pas_Pred_prec= pas prédit précédent
Pas_cycle=pas du cycle
Vit_est=vitesse estimée
Acc_est= accélération estimée
Acc_Pred_prec=accélération prédite précédente
Vit_Pred_prec=vitesse prédite précédente
temps_cycle=0.05
K21 et K31 sont les coefficents du filtre utilisés
La valeur en entrée est le pas_cycle et les valeur Acc_Pred_prec,Vit_Pred_prec,Pas_Pred_prec sont initialisées à 0
Comment gérer la récursivité du filtre?
Merci d'avance,
hasharinSi j'étais toi, je récupérerais uniquement la partie de code qui gère ton filtrage. Utilise l'indicateurpas estimé comme référence (qui doit être rempli après une exécution, et change le en commande (et enregistre les valeurs actuelles comme défaut) ou en constante, ainsi tu auras une source pour ton algorithme sans avoir à recharger ton fichier à chaque fois.
Ensuite, es-tu sûr de la mise en forme de ton tableau pas_est? Est-ce bien nécessaire d'avoir un tableau 2D? J'ai l'impression que tu n'as qu'une colonne dans ce tableau. En plus, lorsque tu viens indexé ton tableau avec le tunnel auto-indexé en entrée de la boucle for, tu récupère une ligne du tableau d'entrée pour chaque itération (et chaque ligne ne contient qu'un élément si je ne m'abuse) du coup, tu fais des calculs sur des tableaux qui en fait ne contiennent qu'un seul élément.
N'hésites pas à utiliser des sondes ou l'animation de l'exécution pour bien voir les données qui passent et le déroulement de l'algorithme!
Makflai, voici un snippet:
Olivier L. | Certified LabVIEW Developer -
I'm using NI-DAQmx 7.5, Labview 7.0, and a USB-6009.
I'm trying to get a more accurate reading from my j-type thermocouple. It is now distorted with noise and jumps rapidly +/- 20 degrees around room temp without any heat being applied. When heat is applied, it climbs as it should but with the same variation. I haven't moved to the labview side of it yet, I'm still trying to get a usable reading in MAX. I have it wired as a differential input with a floating signal source. I've installed 10k ohm resistors for bias current return as instructed. Installing the resistors helped but still leaves me with the readings shown in the attached pic. I've also tried grounding my USB 6009 with no results. Please help. john
Attachments:
thermocouple reading.jpg 41 KBHi John,
What you are running into is a problem with the actual voltage resolution of your USB-6009. This device has 14-bits of resolution over a minimum range of +/- 1V. That means that the voltage resolution is (1 - (-1))V / (2^14) = 2V / (16384) = 122uV. While this is an excellent resolution for such a low cost USB device, you will still notice problems when trying to make a thermocouple measurement. The reason for that is that Thermocouples make a very small output voltage (see image below).
Common thermocouple types have the following response:
K type: 41 microVolts per degree Celsius
J type: 56 microVolts per degree Celsius
T type: 52 microVolts per degree Celsius
There are a few options for ways to get around this limitation.
Good: You could read the signal in as a voltage and then manually convert that voltage into a temperature. This would be the least accurate method, but it should allow you to average out your signal and then use the Convert Thermocouple Reading.vi to show the voltage as a temperature.
Better: If you want to keep using the USB-6009 to measure thermocouple, what you really need to do is first amplify your signal before you connect it with your device. This should increase your resolution of the thermocouple allowing you to get more accurate temperature specs. This will require some more complex programming to properly scale your measurements, but it will give you more accurate readings for relatively little cost.
Best: Opt for getting a USB device that is designed for taking temperature measurements such as the USB-9211A. This device would give you a voltage resolution of 160mV/2^24 = 9.54 nV! That's over 12500x the resolution of the USB-6009 that you currently have.
Hopefully the above information helps you better understand what is going on and why. If you have any other questions feel free to post them here.
Message Edited by Otis [DE] on 01-13-2006 11:37 AM
Message Edited by Otis [DE] on 01-13-2006 11:38 AM
Otis
Training and Certification
Product Support Engineer
National Instruments
Attachments:
761029-Thermocouple_Voltages.GIF 10 KB -
Cardinality estimator 2014 is off with OR in where clause
Here is my test setup on SQL Server 2014.
-- Create big table
CREATE TABLE [dbo].[Store](
Id int IDENTITY(1,1) NOT NULL,
City int NOT NULL,
Size int NOT NULL,
Name varchar(max) NULL,
CONSTRAINT [PK_Store] PRIMARY KEY CLUSTERED ([Id] ASC)
GO
CREATE NONCLUSTERED INDEX [IX_Store] ON [dbo].[Store] (City ASC, Size ASC)
GO
-- Fill with 100k rows
INSERT Store
SELECT i % 101, i % 11, 'Store ' + CAST(i AS VARCHAR)
FROM
(SELECT TOP 100000 ROW_NUMBER() OVER (ORDER BY s1.[object_id]) AS i
FROM sys.all_objects s1, sys.all_objects s2) numbers
GO
-- Create small table
CREATE TABLE #StoreRequest (City int NOT NULL, Size int NOT NULL)
GO
INSERT #StoreRequest values (55, 1)
INSERT #StoreRequest values (66, 2)
Now I execute the following query (I force the index to show statistics estimates)
SELECT s.City
FROM #StoreRequest AS r
INNER JOIN Store AS s WITH(INDEX(IX_Store), FORCESEEK)
ON s.City = r.City AND s.Size = r.Size
WHERE s.Size <> 1 OR r.City <> 55
Here are the estimates that I get (I'm not allowed to upload pictures):
Index Seek IX_Store
Actual Number of Rows: 90
Estimated Number of Rows: 50000
Fixing WHERE clause to use one table not two makes the estimate perfect:
SELECT s.City
FROM #StoreRequest AS r
INNER JOIN Store AS s WITH(INDEX(IX_Store), FORCESEEK)
ON s.City = r.City AND s.Size = r.Size
WHERE s.Size <> 1 OR s.City <> 55
Index Seek IX_Store
Actual Number of Rows: 90
Estimated Number of Rows: 89.74
Switching to 2012 compatibility mode gives estimate of 1 in both cases:
Index Seek IX_Store
Actual Number of Rows: 90
Estimated Number of Rows: 1
Could anyone explain the first result? I'm a bit worried about it. The fix in this case is trivial, but this problem gave us quite some headache in more complex real life queries with multiple joins.
Thank you!But not full statistics on a field basis, just sometimes some default stats like total row count that some plans will build. Even your StoreRequest table only has one two-field index that will have a full histogram.
But I've seen SQL Server make massively bad plans on two-field indexes.
I've seen SQL Server go wrong one-column indexes, so that is not a very relevant point.
Temp tables or not, the estimate here is clearly incorrect. SQL Server knows the density of Size and City. It knows the cardinality of the temp table. The density information gives how many rows the the join will produce. The WHERE clause will then remove
a certain number of rows. With no statistics for the temp table, it does not now how many, but it will apply some standard guess.
50000 is a completely bogus number, because the join cannot produce that many rows, and SQL Server is able to compute the join with out the WHERE clause decently. (Well, it estimates 90, when the number is 180.) No, this is obviously a case of the cardinality
estimator giving up completely.
It is worth noting that both these WHERE clauses gives reasonable estimates:
WHERE r.Size <> 11 OR r.City <> 550
WHERE s.Size <> 11 OR s.City <> 550
Whereas these two gives the spooky 50000:
WHERE s.Size <> 11 OR r.City <> 550
WHERE r.Size <> 11 OR s.City <> 550
Erland Sommarskog, SQL Server MVP, [email protected] -
I created an iCloud account and also had to get more space so after I have made the purchase, I am unable to backup my phone! I have a stable wifi connection at home and all I see for hours and hours is "Backing Up .. Estimating time remaining"!!!!! Plz help I'm unable to make the backup as I need to transfer all my data on my new iPhone 5S
This may be caused by a corrupt existing backup that needs to be deleted, or by data on your device that is causing the backup to fail. To troubleshoot these, try deleting your last iCloud backup (if you have one) by turning off iCloud Backup in Settings>iCloud>Storage & Backup, then tap Manage Storage, tap your device under Backups, then tap Delete Backup. Then go back and turn iCloud Backup back on and try backing up again.
If it still won't back up, you may have an app or something in your camera roll that is causing the backup to fail. To locate which one, go to Settings>iCloud>Storage & Backup>Manage Storage, tap the name of your device under Backups, under Backup Options tap Show All Apps, then turn them all to Off (including camera roll) and try backing up again. If the backup is successful, then the camera roll and/or one of your apps is causing the backup to fail and you'll have to located by process of elimination. Turn the camera roll On and try backing up again. If it succeeds, turn some of your apps to On and try backing up again. If it succeeds again, turn some more apps to On then try again; repeat this process until it fails. Eventually you'll be able to locate the problem app and exclude it from your backup.
In the meantime you can back up your phone to your computer by connect it, opening iTunes and going to File>Devices>Back Up. Also be sure to transfer your purchases (File>Devices>Transfer Purchases). Then set up your new phone and when given the option, choose Restore from iTunes Backup and follow the prompts to restore this backup to your new phone. This will be much faster than using iCloud anyway. -
Standard report(for open PO order items) with estimated Delivery dates
hi friends
i would like to know if there is any standard report(for open PO order items) with estimated Delivery dates on it.
thanks
alahariME2M (by material)
ME2L (by vendor)
ME2N (by number)
Use selection parameter WE101 for open GR
and scope of list EINT (scheduling lines) -
Estimated costs from PM order in PS report
Hi,
In PS we have configured a reports stating. budget (wbs), planned cost (PM order), actual (Pm order). Due to the fact that the PM order is linked to the WBS code, we can see all values. Some are on WBS level, some on PM order level.
A user is requesting to have another collum stating the estimated costs that can be entered in a PM order (header level). In CJE5 you can configure the report, but can anyone of you tell me how i can configure a collum showing estimated costs on the PM order.
Thanks in advance for your help.
Kind regards,
PeterHi,
If you do an F1 on the estimated costs field in the order it says that this cannot be evaluated in reports and also the availability control is also not possible. So not sure whetehr you can bring this in CJE5. On the other hand the value in this fields is stored in AUFK table. So if you are using any custom reports, then you can think of pulling in this data there.
Regards
Sreekanth -
I installed Yosemite and since then the system has been running slow. I chose to use FileVault and it says it's encrypting but keeps saying estimating time remaining. I've tried repair permission and restarting my computer. Saw some other threads with similar problem and ran diskutil cs list which showed 80% the first time and now says failed. I also did an Entre Check and here are the results.
Problem description:
Mac running slow after installing Yosemite
EtreCheck version: 2.0.6 (91)
Report generated October 26, 2014 at 12:18:37 AM PDT
Hardware Information: ℹ️
MacBook Pro (15-inch, Early 2011) (Verified)
MacBook Pro - model: MacBookPro8,2
1 2 GHz Intel Core i7 CPU: 4-core
4 GB RAM Upgradeable
BANK 0/DIMM0
2 GB DDR3 1333 MHz ok
BANK 1/DIMM0
2 GB DDR3 1333 MHz ok
Bluetooth: Old - Handoff/Airdrop2 not supported
Wireless: en1: 802.11 a/b/g/n
Video Information: ℹ️
Intel HD Graphics 3000 - VRAM: 384 MB
AMD Radeon HD 6490M - VRAM: 256 MB
Color LCD 1440 x 900
System Software: ℹ️
OS X 10.10 (14A389) - Uptime: 2 days 2:31:27
Disk Information: ℹ️
ST9500325ASG disk0 : (500.11 GB)
S.M.A.R.T. Status: Verified
EFI (disk0s1) <not mounted> : 210 MB
Recovery HD (disk0s3) <not mounted> [Recovery]: 650 MB
Macintosh HD (disk1) / [Startup]: 498.88 GB (360.91 GB free)
Encrypted AES-XTS UnlockedFailed
Core Storage: disk0s2 499.25 GB Online
MATSHITADVD-R UJ-898 disk2 : (510.3 MB)
S.M.A.R.T. Status: Verified
disk2s1 (disk2s1) <not mounted> : 11 MB
disk2s2 (disk2s2) <not mounted> : 15 MB
disk2s3 (disk2s3) <not mounted> : 11 MB
disk2s4 (disk2s4) <not mounted> : 12 MB
disk2s5 (disk2s5) <not mounted> : 8 MB
disk2s6 (disk2s6) <not mounted> : 11 MB
disk2s7 (disk2s7) <not mounted> : 13 MB
disk2s8 (disk2s8) <not mounted> : 14 MB
disk2s9 (disk2s9) <not mounted> : 14 MB
disk2s10 (disk2s10) <not mounted> : 15 MB
disk2s11 (disk2s11) <not mounted> : 8 MB
disk2s12 (disk2s12) <not mounted> : 9 MB
disk2s13 (disk2s13) <not mounted> : 27 MB
disk2s14 (disk2s14) <not mounted> : 16 MB
disk2s15 (disk2s15) <not mounted> : 23 MB
disk2s16 (disk2s16) <not mounted> : 12 MB
disk2s17 (disk2s17) <not mounted> : 11 MB
disk2s18 (disk2s18) <not mounted> : 24 MB
disk2s19 (disk2s19) <not mounted> : 14 MB
disk2s20 (disk2s20) <not mounted> : 18 MB
disk2s21 (disk2s21) <not mounted> : 10 MB
disk2s22 (disk2s22) <not mounted> : 36 MB
disk2s23 (disk2s23) <not mounted> : 17 MB
disk2s24 (disk2s24) <not mounted> : 20 MB
disk2s25 (disk2s25) <not mounted> : 18 MB
disk2s26 (disk2s26) <not mounted> : 42 MB
disk2s27 (disk2s27) <not mounted> : 33 MB
disk2s28 (disk2s28) <not mounted> : 29 MB
disk2s29 (disk2s29) <not mounted> : 12 MB
disk2s30 (disk2s30) <not mounted> : 6 MB
USB Information: ℹ️
Apple Inc. FaceTime HD Camera (Built-in)
Apple Inc. BRCM2070 Hub
Apple Inc. Bluetooth USB Host Controller
Apple Inc. Apple Internal Keyboard / Trackpad
Apple Computer, Inc. IR Receiver
Thunderbolt Information: ℹ️
Apple Inc. thunderbolt_bus
Gatekeeper: ℹ️
Mac App Store and identified developers
Kernel Extensions: ℹ️
/Library/Application Support/MacKeeper/AntiVirus.app
[not loaded] net.kromtech.kext.AVKauth (2.3.7 - SDK 10.9) Support
[not loaded] net.kromtech.kext.Firewall (2.3.7 - SDK 10.9) Support
/System/Library/Extensions
[loaded] com.Cycling74.driver.Soundflower (1.5.1) Support
Problem System Launch Agents: ℹ️
[failed] com.apple.AirPlayUIAgent.plist
[failed] com.apple.CallHistoryPluginHelper.plist
[failed] com.apple.CallHistorySyncHelper.plist
[failed] com.apple.cloudd.plist
[failed] com.apple.coreservices.appleid.authentication.plist
[failed] com.apple.EscrowSecurityAlert.plist
[failed] com.apple.icloud.fmfd.plist
[failed] com.apple.nsurlsessiond.plist
[failed] com.apple.printtool.agent.plist
[failed] com.apple.recentsd.plist
[failed] com.apple.scopedbookmarkagent.xpc.plist
[failed] com.apple.secd.plist
[failed] com.apple.security.cloudkeychainproxy.plist
[failed] com.apple.spindump_agent.plist
[failed] com.apple.telephonyutilities.callservicesd.plist
Problem System Launch Daemons: ℹ️
[failed] com.apple.AssetCacheLocatorService.plist
[failed] com.apple.awdd.plist
[failed] com.apple.corestorage.corestoragehelperd.plist
[failed] com.apple.ctkd.plist
[failed] com.apple.GSSCred.plist
[failed] com.apple.icloud.findmydeviced.plist
[failed] com.apple.ifdreader.plist
[failed] com.apple.nehelper.plist
[failed] com.apple.nsurlsessiond.plist
[failed] com.apple.periodic-daily.plist
[failed] com.apple.softwareupdate_download_service.plist
[failed] com.apple.systemstats.analysis.plist
[failed] com.apple.wdhelper.plist
[failed] com.apple.xpc.smd.plist
Launch Agents: ℹ️
[invalid?] com.sophos.uiserver.plist Support
Launch Daemons: ℹ️
[loaded] com.adobe.fpsaud.plist Support
[invalid?] com.sophos.intercheck.plist Support
[invalid?] com.sophos.notification.plist Support
[running] com.zeobit.MacKeeper.AntiVirus.plist Support
[running] com.zeobit.MacKeeper.plugin.AntiTheft.daemon.plist Support
User Launch Agents: ℹ️
[loaded] com.adobe.ARM.[...].plist Support
[loaded] com.google.keystone.agent.plist Support
[running] com.plexapp.helper.plist Support
[running] com.zeobit.MacKeeper.Helper.plist Support
User Login Items: ℹ️
iTunesHelper UNKNOWNHidden (missing value)
Microsoft AU Daemon Application (/Applications/Microsoft AutoUpdate.app/Contents/MacOS/Microsoft AU Daemon.app)
Canon IJ Network Scanner Selector2 ApplicationHidden (/Library/Printers/Canon/IJScanner/Utilities/Canon IJ Network Scanner Selector2.app)
Canon IJ Network Scan Utility Application (/Library/Printers/Canon/BJPrinter/Utilities/Canon IJ Network Scan Utility.app)
AdobeResourceSynchronizer ApplicationHidden (/Applications/Adobe Reader.app/Contents/Support/AdobeResourceSynchronizer.app)
Internet Plug-ins: ℹ️
JavaAppletPlugin: Version: 15.0.0 - SDK 10.10 Check version
FlashPlayer-10.6: Version: 15.0.0.189 - SDK 10.6 Support
Default Browser: Version: 600 - SDK 10.10
AdobePDFViewerNPAPI: Version: 11.0.09 - SDK 10.6 Support
AdobePDFViewer: Version: 11.0.09 - SDK 10.6 Support
Flash Player: Version: 15.0.0.189 - SDK 10.6 Support
QuickTime Plugin: Version: 7.7.3
Silverlight: Version: 5.1.10411.0 - SDK 10.6 Support
iPhotoPhotocast: Version: 7.0 - SDK 10.8
User Internet Plug-ins: ℹ️
Move_Media_Player: Version: npmnqmp 071505000006 Support
3rd Party Preference Panes: ℹ️
Flash Player Support
Time Machine: ℹ️
Skip System Files: NO
Mobile backups: ON
Auto backup: YES
Destinations:
GoFlex Home Backup [Network]
Total size: 3 TB
Total number of backups: 70
Oldest backup: 2013-07-21 16:39:58 +0000
Last backup: 2014-10-17 01:49:13 +0000
Size of backup disk: Excellent
Backup size 3 TB > (Disk size 0 B X 3)
Top Processes by CPU: ℹ️
5% WindowServer
1% diskimages-helper
0% backupd
0% AppleSpell
0% fontd
Top Processes by Memory: ℹ️
172 MB com.apple.WebKit.WebContent
116 MB backupd
77 MB Dock
52 MB Finder
47 MB com.apple.WebKit.Networking
Virtual Memory Information: ℹ️
48 MB Free RAM
1.08 GB Active RAM
1.04 GB Inactive RAM
1.19 GB Wired RAM
33.41 GB Page-ins
1.26 GB Page-outsPlease answer as many of the following questions as you can. You may already have answered some of them; in that case, there's no need to repeat the answers.
Restart the router and the broadband device, if they're separate. Any change?
Run Software Update and install all available updates for OS X or the computer's firmware. Any change?
Are you connected to Ethernet as well as Wi-Fi? If so, disconnect the Ethernet cable or adapter and test.
If possible, connect to the router with an Ethernet cable and turn off Wi-Fi. Any difference?
If you can connect to more than one network, are they all the same?
Are all network applications affected, or only some? If only some, which ones?
Is networking always the same, or is the problem intermittent?
Disconnect all other devices from the network. Any change?
If you're running a MacBook with the lid closed, open the lid. Any difference?
Start up in safe mode and test. Any difference?
Start up in Recovery mode. From the OS X Utilities screen, select Get Help Online. A clean copy of Safari will launch. No plugins, such as Flash, will be available. Any difference?
If possible, turn off Bluetooth and disconnect any USB 3 devices. Any difference? -
How do I use AI Temperature with multiple thermocouple types?
Hi,
I am trying to read temperatures from thermocouples. I have the PXI-1112 module. I have 3 thermocouple types. Is there a way to use the AI temperature VI to process all thermocouples with a single wire connection? The VI has an input for thermocouple type, but does not accept arrays. How can I assign a different thermocouple type to each channel?
ThanksHello Villalro,
Are you using the DAQmx Create Virtual Channel.vi in your
application? Below is a great example of
how to measure three different types of thermocouples all in the same task. If you are still not able to create the task
correctly, you might try building it in a DAQ Assistant. Once you are able to create the task
correctly in the DAQ Assistant, you can convert it into DAQmx code. Right-click on the DAQ Assistant and then select
Generate NI-DAQmx Code.
Message Edited by Robert F on 08-08-2007 09:40 PM
Respectfully,
Rob F
Test Engineer
Condition Measurements
National Instruments
Attachments:
temp_forums.JPG 65 KB -
How can I get the program to recognize two different types of thermocouples?
I am using a PCI-4351 card with a TBX-68T terminal block. I was having trouble writing and finding a program that would give me more than one reading/sec. I found a program on the NI website called "435x_logger_triggering", and so far it is the only program that I have found that will actually collect data at 60 Hz. Unfortunately, this program only lets you specify one mode for your thermocouples. This is a problem because we are using two thermocouples, one is type K and the other is a type R, so we get bad readings from one of the thermocouples depending on which mode it is set on. I would like to know how I can program in a seperate mode for each channel in this program. Un
fortunately, some of the sub VI's in this program are password protected, so I don't know if this is possible. Everything is entered correctly in the Measurement and Automation explorer, so that isn't the problem. I will attach a copy of the program that I am using. I have modified it slightly from the one I got off the NI website, so that the thermocouple readings have a time stamp and are saved to disk. Any assistance you could give me would be greatly appreciated.
Thanks,
Jordan
Attachments:
Forest_Fire_Thermocouple.vi 140 KB
435xlogger_triggering.vi 110 KBJordan,
You should be able to sample two different thermocouples in the example that ships with the 435x driver called "Getting Started with multiple tranducers Continous". Simply put each type of thermocouple in a different index . Each index of the Transducer Group Array can have a different type and specify the channels that correspond to that type.
One way that you can speed this VI up is to place a wait inside of the while loop. This will reduce the number of times the software polls the card if it has available data(increasing the overhead). I would suggest about 500 ms. The data that you receive will all have the same delta t because the sampling clock is hardware driven not software, so it does matter when the data is polled.
You will not be
able to get 60 samples per second when you are measuring multiple channels anyway. The sample rate for multiple channels is about 9/(# channels). This is explained in the 435x Users Manual.
I looked at your code and noticed that you tried to change some of the enumeration controls. Unfortunately you will not be able to change these because they are password protected on the low level subVIs, which is where they are defined.
The way you select if you want the notch filter is in the 435x Config you specify fast or slow. If it is slow then it will select 10Hz as the nitch filter. If you select fast the it will select either 50 or 60Hz You would then use the function "435x Set power line frequency"
Good luck,
Mike -
How do I use traditional NI-DAQ to find a temperature using a thermocouple?
I have seen examples using scxi modules and NI-DAQmx programming to find temperature using a thermocouple. For my application, I do not have a scxi module and my programming is in traditional NI-DAQ. I tried copy and pasting a NI-DAQmx application into my program and it did not work due to the traditional and mx conflict. My question now is how can I measure temperature using a thermocouple with Traditional NI-DAQ programming on a PCI6025E? Thank you.
I believe I posted a response for the same question here:
http://forums.ni.com/ni/board/message?board.id=250&message.id=8836
Thanks,
LA -
How to Optimize SCXI 1600 for speed with Thermocouples
I'm working on a data acquisition system for my engineering firm and I'm trying to find a way to use our new thermocouple system as fast as possible.
The requirements for the DAQ process are:
Read 32 voltage channels from a PCI-6071E card
Read 32 thermocouple channels from a SCXI-1600 with an 1102C accessory
Complete the entire operation in under 5ms (this is so other parts of the program can respond to the incoming data quickly and trigger safety protocols if necessary)
Using LabVIEW 7.1 and MAX 4.4, I've got the voltage channels working to my satisfaction (with traditional DAQ VIs) and the rep rates I measure when I run the program are around 1ms (I do this by putting the DAQ code in a loop and reading the millisecond timer every time through that loop, then calculating the average time between loop executions). I have been trying to get similar performance from the thermocouple channels using DAQ Assistant and DAQmx. Some of the problems I've encountered are:
Very slow rep rates with 1-sample and N-sample acquisition modes (300-500ms)
Good rep rates when I switch to continuous mode, but then I get buffer overflow error -200279.
When I attempted to correct that error by setting the DAQmx buffer to overwrite unread data and only read the most recent sample, the calculated sample rate went to 20ms. It was around 8ms when I left the error unhandled and continued acquisition.
At this point I'm out of ideas and am just looking for something to try and optimize the DAQ process for speed, as much as is possible.
Thank you for any help.I guess I would be interested in checking out your code to see if there is anything I can recommend on changing. However, I do have a few general Ideas of how to improve your performance. These recommendations are purely based on what you could be doing to slow down the speed of the program because I am not sure how exactly you have everything set up.
-Are you setting up the task and closing the task each time that you read from your daq card? the way to get around this is to only have the DAQmx read vi in the while loop so you do not have time alloted for opening and closing the task each time.
-Try using a Producer/Consumer architecture. This architecture uses queues and splits the aquisition with the post processing. Here is a link to how to set up this architecture and some information on when to use it.
Application Design Patterns: Producer/Consumer
http://zone.ni.com/devzone/cda/tut/p/id/3023
Message Edited by Jordan F on 02-06-2009 04:35 PM
Regards,
Jordan F
National Instruments
Maybe you are looking for
-
Help analyzing GPU-Panic log on MacBook Pro 15" mid 2010
Hi! Looks lite I go the defect Invidia discrete graphic or? Referred here http://support.apple.com/kb/TS4088 I get GPU-panic for ex when I browse iPhoto (latest verison in Mavericks) Events, scrolling down with the track pad. Walking up from s
-
Migrating from CUCM 8.6 to CUCM 10.0 - Do I have to upgrade presence as well?
Hello Raees, I've got a question regarding the Migration from CUCM 8.6 to 1.0, I went through the below "Ask the Expert" article. https://supportforums.cisco.com/discussion/12103966/ask-expert-cisco-unified-communications-manager-cucm-version-100 My
-
Statements to validate about BPM and WorkFlow
Hi is it possible for experts here to validate, 1. SAP Business Workflow is primarily used to develop workflow mechanisms for SAP based systems 2. Components of a Business Process Execution Language (BPEL) like the compensation handlers, exception ha
-
Incorrect syncing from iCal to mobile phone
When entering events on my SE Z530i, all events are perfectly synced with iCal. When entering data in iCal, the events are badly synced: the data is correct, but the time and duration is wrong. For instance: 17:00 - 18:30 changes into 10:00 - 11:00
-
I can't seem to manipulate this transition to work properly - Although I set it to 'peel' from one still image clip (A) to another still image clip (B), it is only revealing the very same clip (A) underneath until about a quarter of the way through t