09-18-2013 12:17 PM
Hi;
I'm using NIDAQmx, v9.8, to create a task (inputTask as New DAQmx.Task) that combines all of the input channels together for an aquisition system. When I do this, I get an error that I can't figure out.
The system comprises:
NIDAQmx v9.8
VISA drivers v5.4
PXI-1033 connected via PCI-to-PCI bus interface - MIXI, I think.
PXI4461 in Slot 2
PXI4498 in Slot 3
Using NIDAQmx, I can see both devices,
device = DAQmx.DaqSystem.Local.LoadDevice(DAQmx.DaqSystem.Local.Devices(index))
It may be important to note that, when I read the 'device.PxiSlotNumber' value, it's coming back as a huge number! Nothing like '2', or '3' which I would have expected from this call.
After the devices have been found, their respective input channels are added using,
inputTask.AIChannels.CreateVoltageChannel(...)
After the input channels are added, the timeing for the acquisition is setup using,
_inputTask.Timing.SampleTimingType = DAQmx.SampleTimingType.SampleClock
_inputTask.Timing.ConfigureSampleClock(String.Empty, Me.MeasurementSettings.Frequencies.SelectedItem.SamplingFreq, DAQmx.SampleClockActiveEdge.Rising, _
DAQmx.SampleQuantityMode.FiniteSamples, Me.MeasurementSettings.SampleCount)
And then verified,
_inputTask.Control(DAQmx.TaskAction.Verify)
When '.Verify' runs, I get the error,
-----------------------
?ex
{Error=Expression expected. Message="One or more devices from a multiple-device
task are in an unidentified PXI chassis, which is not supported. Identify the
PXI chassis in MAX.
Device: Dev4461, Dev4498
Task Name: InputTask
Status Code: -200862"}
NationalInstruments.DAQmx.DaqException: {Error=Expression expected.
Message="One or more devices from a multiple-device task are in an unidentified
PXI chassis, which is not supported. Identify the PXI chassis in MAX.
Device: Dev4461, Dev4498
Task Name: InputTask
Status Code: -200862"}
-----------------------
I've used this same idea previously to assemble input channels together, and to slave them to a common sample clock. I am not sure why I am getting this error now.
09-19-2013 12:53 PM
Hi PatMcHargue,
Does your PXI chassis show up in MAX? It sounds like there may be an issue with the PXI configuration file. You may find this article helpful.
09-20-2013 11:34 AM
Thanks for replying.
09-20-2013 11:46 AM
Thanks for replying. System keeps eating my responses.
The chassis shows up in AMX as "PXI0::1::BACKPLANE" Both the 4461 & 4498 show up as "NI PXI-4461" and "NI PXI-4498"
The first time opening a VISA test panel for "PXI0::1::BACKPLANE" yields an error,
-------------
Error opening resource:
PXI0::1::BACKPLANE
VISA: (Hex 0xBFFF0011) Insufficient location information or the device or resource is not present in the system.
-------------
The second time opening a VISA test panel for "PXI0::1::BACKPLANE" yields an error on the 'View Attributes' tab,
'Attribute' = ""Timeout", 'VISA Attribute Name' = VI_ATTR_TMO_VALUE', ''Current Value' = "Invalid Property"
I do have a PXISYS.INI file in the \Windows\ directory, and I can read/write it. It shows,
--------------------
[Version]
Major = 2
Minor = 1
[System]
ChassisList = "1"
[PXI System]
ChassisList = "1"
[Chassis1]
Model = "NI PXI-1033"
Vendor = "National Instruments"
PCIBusSegmentList = "1"
SlotList = "1,2,3,4,5,6"
TriggerBusList = "1"
StarTriggerList = "1"
[Chassis1PCIBusSegment1]
SlotList = "1,2,3,4,5,6"
[Chassis1TriggerBus1]
SlotList = "1,2,3,4,5,6"
[Chassis1StarTrigger1]
ControllerSlot = 2
PXI_STAR0 = 3
PXI_STAR1 = 4
PXI_STAR2 = 5
PXI_STAR3 = 6
[Chassis1Slot1]
PCISlotPath = "None"
PCIBusNumber = "None"
PCIDeviceNumber = "None"
LocalBusLeft = "None"
LocalBusRight = "None"
ExternalBackplaneInterface = "None"
[Chassis1Slot2]
PCISlotPathRootBus = 0
PCISlotPath = "78,F0"
PCIBusNumber = 14
PCIDeviceNumber = 15
LocalBusLeft = "StarTrigger1"
LocalBusRight = "Slot3"
ExternalBackplaneInterface = "None"
[Chassis1Slot3]
PCISlotPathRootBus = 0
PCISlotPath = "70,F0"
PCIBusNumber = 14
PCIDeviceNumber = 14
LocalBusLeft = "Slot2"
LocalBusRight = "Slot4"
ExternalBackplaneInterface = "None"
[Chassis1Slot4]
PCISlotPathRootBus = 0
PCISlotPath = "68,F0"
PCIBusNumber = 14
PCIDeviceNumber = 13
LocalBusLeft = "Slot3"
LocalBusRight = "Slot5"
ExternalBackplaneInterface = "None"
[Chassis1Slot5]
PCISlotPathRootBus = 0
PCISlotPath = "60,F0"
PCIBusNumber = 14
PCIDeviceNumber = 12
LocalBusLeft = "Slot4"
LocalBusRight = "Slot6"
ExternalBackplaneInterface = "None"
[Chassis1Slot6]
PCISlotPathRootBus = 0
PCISlotPath = "58,F0"
PCIBusNumber = 14
PCIDeviceNumber = 11
LocalBusLeft = "Slot5"
LocalBusRight = "None"
ExternalBackplaneInterface = "None"
[Slot6]
IDSEL = 27
SecondaryBusNumber = 0
PCIBusNumber = 14
PCIDeviceNumber = 11
ExternalBackplaneInterface = "None"
[Slot5]
IDSEL = 28
SecondaryBusNumber = 0
PCIBusNumber = 14
PCIDeviceNumber = 12
ExternalBackplaneInterface = "None"
[Slot4]
IDSEL = 29
SecondaryBusNumber = 0
PCIBusNumber = 14
PCIDeviceNumber = 13
ExternalBackplaneInterface = "None"
[Slot3]
IDSEL = 30
SecondaryBusNumber = 0
PCIBusNumber = 14
PCIDeviceNumber = 14
ExternalBackplaneInterface = "None"
[Slot2]
IDSEL = 31
SecondaryBusNumber = 0
PCIBusNumber = 14
PCIDeviceNumber = 15
ExternalBackplaneInterface = "None"
[Slot1]
IDSEL = "None"
SecondaryBusNumber = 0
ExternalBackplaneInterface = "None"
PCIBusNumber = "None"
PCIDeviceNumber = "None"
--------------------
09-23-2013 11:00 AM
Hi,
It looks like the PXI chassis is not being identified. Can you take that pxi ini out of the folder so it forces it to make a new one? Also try reseting the configuration file in max. Below is a link on how to do this.
http://digital.ni.com/public.nsf/allkb/86256F0E001DA9FF86256FFD005B827C
10-08-2013 04:00 PM
Thank you for responding.
I've done this a few times, with the same result. The PXI-1033 is not recodnized. While the boards that are carried in the chassis are seen, when two boards are in the chassis at the same time, and I try to concatenate & use the input channels from eash, the resources of the PXI-1033 don't seem to be available for use in coordinating the timing between the boards.
Pat
10-09-2013 08:46 AM
In MAX, it is sometimes necessary to manually identify the PXI chassis by right-clicking on the chassis/backplane listed under Devices and Interfaces, then selecting the chassis model through the Identify As option.
Have you tried that already?
10-15-2013 01:53 PM
I think that I tried this before. However, do you have directions on how I should do this?
When I right-click on 'My System | Devices and Interfaces', and select 'Create New...' I am shown a dialog. I assume I'm to use the 'NI-DAQmx SCXI Chassis', yes? When I expand that list, I do not see the 'PXI-1033' listed there.
Is this the correct set of steps? If the 'PXI-1033' is supposed to be in that list, how do I get it to be displayed?
Is there some way to passte pictures nto this message to you so that you can follow what I'm seeing on my end?
Another entry on the 'Create New...' dialog is the one 'PXI Chassis'. Selecting that, and clicking the 'Next' button, another dialog is shown that allow me to select a controller. Under 'I am using a National Instrumnents Embedded Controller', I do not see a 'PXI-1033' listed there. Under 'I am using a National Instrumnents RemoteController', I do not see a 'PXI-1033' listed there. Finally, there is a selection, 'I am using a controller from another vendor'.
Which of these selections should I use?
10-16-2013 08:43 AM
We shouldn't need to create anything new, since the chassis is already seen (though not identified) by MAX. If you right-click on the unidentified chassis itself (i.e. "PXI0::1::BACKPLANE"), you should see the options shown in the image below. Try selecting NI PXI-1033 from the Identify As list.
10-21-2013 05:28 PM
Matt, or NIsupport, managed to help me find that one of the services wass not running on my system, and that I needed to register that service.
The steps were,
'1. Close all National Instruments software, including executables that may be using the run-time engine.
'2. In the Start Menu search bar, type "cmd" without quotations. Right-click "cmd.exe" and select Run as Administrator.
'3. Enter one of the following commands that corresponds to the version of Windows you have (32-bit or 64-bit):
'In 64-bit Windows:
'sc create NiSvcLoc binPath= "C:\Program Files (x86)\National Instruments\Shared\niSvcLoc\nisvcloc.exe -s" start= auto DisplayName= "NI Service Locator"
'In 32-bit Windows:
'sc create NiSvcLoc binPath= "C:\Program Files\National Instruments\Shared\niSvcLoc\nisvcloc.exe -s" start= auto DisplayName= "NI Service Locator"
'You should receive a confirmation dialogue pop-up notification.
'4. Reboot your computer and see if the affected services are now started correctly.
So, MAX sees the devices now. Onto other problems!