AT &; T U-Verse Configuration Code
I recently had a program for my business forward port when we came across a big bump with our new router from apple. U verse often requires a 10-digit key to set up and implement an IP port.
I TRIED THE FOLLOWING THINGS
-J' used the password, admin, default, public and private
-J' tried my WP address and shared password wifi
Here is the screen explaining the instructions
(This is the screen of "reset" explaining what would be the password)
Computer: mid-2011 to iMac 21.5 inch
Router: Airport Extreme (tour) (directly connected to the computer with the ethernet cable)
ALL OTHER ROUTERS HAVE AS SHOWN IN THIS ILLUSTRATION:
AirPort Extreme would have been put in place to work with ATT Uverse bridge bridge mode. In Bridge Mode, all ports are open, so no additional configuration is necessary on the AirPort Extreme at all.
I checked again, but did not find a question in your message. If you have questions about AirPort Extreme, what would it be?
If you try to configure the ATT gateway, it would be a good idea to connect your computer directly to one of the <>- on the U-verse product LAN ports.
Tags: Wireless
Similar Questions
-
Local configuration files - mxmlc compiler
I am baffled by the inability to replace the configuration variables in a local configuration file (for example, myApp - config.Xml) who made default in flex - config.Xml. For example, I have a unit test runner application where I want "verbose-stacktraces" set to true, but given that this is set by default in flex - config.xml, I get an error that the variable "verbose-stacktraces" must be established once. The livedocs lead you to believe that you can replace any variable. Is this as expected or a bug?Excellent grip. Looks like there is a problem in the configuration code. As soon as you set a configuration option with append it = "true" attribute, it "seems" that he will try to add ALL of the following nodes. So if you have options that are NOT reproducible after the "="true"append", the compiler will return the error you see. I entered a bug for this.
Thank you
-brent -
Dear all,
I have a problem with my acquisition of data PCI-6132. I need
to acquire the signal with a finished sample. Data acquisition signal of early acquisition of
Digital edge of the trigger of the beginning, start signal to the spesified collection
quantity of the sample were acquired. Its beginning to collect a finished sample
Yet once when another trigger of early digital dashboard detected.Therefore,.
I put the attribute trigger digital beginning as retrigerable. But when I
called DAQmxErrChk (DAQmxSetStartTrigRetriggerable (taskHandle, true)), it
who says:DAQmx error: the specified property is not supported by the device or is not applicable to the task.
Property: DAQmx_StartTrig_RetriggerableTask name: _unnamedTask<0>
State code:-200452
End of the program, press the Enter key to exit0>
First of all,
I think that the DAQmx_StartTrig_Retriggerable property is not supported by
My DAQ (PCI-6132). But when I read Help reference C-NOR-DAQmx, suite
Well supported by heading device, redeclenchables start is one of OR
PCI-6132 taken in charge the property. Why this error eccur?My code
is the same as ContAcq-IntClk-DigStart - Retrig.cInt32 = 0 error;
TaskHandle taskHandle = 0;
tank errBuff [2048] = {'\0'};/*********************************************/
DAQmx Configure Code
/*********************************************/
DAQmxErrChk (DAQmxCreateTask("",&taskHandle));
DAQmxErrChk (DAQmxCreateAIVoltageChan(taskHandle,"Dev1/ai0","",DAQmx_Val_Cfg_Default,-10.0,10.0,DAQmx_Val_Volts,NULL));
DAQmxErrChk (DAQmxCfgSampClkTiming(taskHandle,"",1000.0,DAQmx_Val_Rising,DAQmx_Val_FiniteSamps,100));
DAQmxErrChk (DAQmxCfgDigEdgeStartTrig(taskHandle,"/Dev1/PFI1",DAQmx_Val_Rising));
DAQmxErrChk (DAQmxSetStartTrigRetriggerable (taskHandle, true));DAQmxErrChk (DAQmxRegisterEveryNSamplesEvent (taskHandle, DAQmx_Val_Acquired_Into_Buffer, 100, 0, EveryNCallback, NULL));
DAQmxErrChk (DAQmxRegisterDoneEvent(taskHandle,0,DoneCallback,));/*********************************************/
Starting code DAQmx
/*********************************************/
DAQmxErrChk (DAQmxStartTask (taskHandle));printf ("absorbent samples continuously. Press Enter to interrupt\n ");
GetChar ();Error:
If (DAQmxFailed (error))
DAQmxGetExtendedErrorInfo (errBuff, 2048);
If (taskHandle! = 0) {}
/*********************************************/
Stop DAQmx code
/*********************************************/
DAQmxStopTask (taskHandle);
DAQmxClearTask (taskHandle);
}
If (DAQmxFailed (error))
printf ("error DAQmx: %s\n",errBuff); ")
YouHi oktanto,
I simulated the device, but I was not able to run a redeclenchables VI of analog input. It seems that this property is not supported by the 6132. There may be a workaround is possible: you may be interested by the following code example. Although it is a little older, he should probably still work for you
-
Someone has had experience in the programming of the NOR-6520 with CVI relay Board? I use CVI 2013 with DAQ 15.0.
NOR-MAX shows the card installed and can access them through the Test Panel.
I just need simple command lines to change the relay.
As promised. A simple set of routines to control the 6520 under Win7, CVI 2013, NI - DAQmx 15.5
Required include files:
#include
#include/ * declare global task Session * /.
public static TaskHandle taskHandle = 0;/ * main function calls Init6520Sesn to get taskHandle and start the task of acquiring data * /.
int Init6520Sesn)
{
Int32 rtnStatus = 0;
Chan Char [256];
/ * MAX NOR address location for 6520 shows as Dev1,.
* port0 controls sensors, status of relay for the controls port1
* line0:7 covers 8 relays on the map
*/
sprintf(Chan,"dev1/PORT1/line0:7");
/*********************************************/
DAQmx Configure Code
/*********************************************/
rtnStatus = DAQmxCreateTask("",&taskHandle);
rtnStatus = DAQmxCreateDOChan (taskHandle, chan, "", DAQmx_Val_ChanForAllLines);
/*********************************************/
Starting code DAQmx
/*********************************************/
rtnStatus = DAQmxStartTask (taskHandle);
/ * put error handling code here * /.
return 0;
}Sub Switch6520Relays (int nRelayState)
{
uInt32 data;
char errBuff [2048] = {'\0'};
Int32 wrote;
Int32 rtnStatus = 0;
/*********************************************/
DAQmx write code
/*********************************************/
data = nRelayState; convert int to UINT32
rtnStatus = DAQmxWriteDigitalU32(taskHandle,1,1,10.0,DAQmx_Val_GroupByChannel,&data,&written,);
If (rtnStatus! = 0)
{
DAQmxGetExtendedErrorInfo (errBuff, 2048);
MessagePopup ("DAQmx Error", errBuff);
}
}
Functions of 6520/ * Add calls to stop when the session is more necessary, in this case the application is closed * /.
CVICALLBACK int panelCB (int Panel, int event, void * callbackData,)
int eventData1, int eventData2)
{
If (event is EVENT_CLOSE)
{
DAQmxStopTask (taskHandle);
DAQmxClearTask (taskHandle);
QuitUserInterface (0);
}
return 0;
} -
Hello
I'm new to LabWindows, and now I have a question.
I would like to generate the same signal on two analog outputs (SCB-68). My Code is this:
/*********************************************/
DAQmx Configure Code
/*********************************************/
Channel 1
DAQmxCreateTask("",&taskHandleCH1);
DAQmxCreateAOVoltageChan(taskHandleCH1,"Dev1/ao0","",-10.0,10.0,DAQmx_Val_Volts,NULL);
DAQmxCfgSampClkTiming(taskHandleCH1,"",1000.0,DAQmx_Val_Rising,DAQmx_Val_ContSamps,1000);
Channel 2
DAQmxCreateTask("",&taskHandleCH2);
DAQmxCreateAOVoltageChan (taskHandleCH2, ' Dev1/ao1', ' ',-10,0, 10.0, DAQmx_Val_Volts, NULL);
DAQmxCfgSampClkTiming(taskHandleCH2,"",1000.0,DAQmx_Val_Rising,DAQmx_Val_ContSamps,1000);/*********************************************/
DAQmx write code
/*********************************************/
Channel 1
DAQmxWriteAnalogF64 (taskHandleCH1, totalPulseSizeCH1, 0, 10.0, DAQmx_Val_GroupByChannel,)
PulsePatternCH1, NULL, NULL);
Channel 2
DAQmxWriteAnalogF64 (taskHandleCH2, totalPulseSizeCH2, 0, 10.0, DAQmx_Val_GroupByChannel,)
PulsePatternCH2, NULL, NULL); * //*********************************************/
Starting code DAQmx
/*********************************************/
DAQmxStartTask (taskHandleCH1);
DAQmxStartTask (taskHandleCH2);But the program did not run. I got the failure:
NO MORTALS RUN - TIME ERROR: "Test.c", line 175, col 13, id 0 x thread 00001328: DAQmxWriteAnalogF64 function: (return is 50103 value [0xffff3c49]). The specified resource is reserved. The operation could not be performed as indicated. Task name: _unnamedTask<1> Code of State:-50103
I think the default is 'DAQmx_Val_GroupByChannel', I mean that both write controls use the DAQmx_Val_GroupByChannel at the same time so I can't use the second write command because one uses alreay. But I don't know if it's okay.
Can sombody help me please to solve the problem?
Best regards
It is correct to double the buffer and fill it with the appropriate model. DAQmx reads the buffer and splits between the channes trends according to the layout of data in DAQmxWriteAnalogF64 () setting. If this parameter is set to channel group, samples for a channel are stored consecutively, followed by samples for the following string and so on, as you did so far; If number of sweep of groups, the samples are stored interlaced, i.e. (assuming N and M samples per channel channels): Channel1Sample1, Channel2Sample1... ChannelNSample1, Channel1Sample2... ChannelNSample2... Channel1SampleM... ChannelNSampleM.
If you want to have Different patterns on the channels, please fill the buffer with different data tables.
1> -
NOR-DAQmx 8.0.1 undefined reference
Hello
I'm new with NOR-DAQmx on Linux. After reading the posts in this forum, I was able to successfully install OR-DAQmx 8.0.1 on OpenSUSE 11.0. When you run "nilsdev", I get the following list of features:
OR PXI-6255: "Dev4.
OR PXI-6733: "Dev3.
OR PXI-6733: "Dev2.
OR PXI-6713: "Dev1".What is correct. However, when you try to compile the following program example, using "gcc main.c:
#include "NIDAQmx.h".
#include
#define DAQmxErrChk (functionCall) if (DAQmxFailed (error = (functionCall))) goto error; on the other
int main (void) {}
error int = 0;
TaskHandle taskHandle = 0;
char errBuff [2048] = {'\0'};
float64 data [3] = {1.0,2.0,3.0};
/*********************************************/
DAQmx Configure Code
/*********************************************/
DAQmxErrChk (DAQmxCreateTask("",&taskHandle));
DAQmxErrChk (DAQmxCreateAOVoltageChan(taskHandle,"PXI1Slot4/ao0:2","",-10.0,10.0,DAQmx_Val_Volts,""));)
/*********************************************/
Starting code DAQmx
/*********************************************/
DAQmxErrChk (DAQmxStartTask (taskHandle));
/*********************************************/
DAQmx write code
/*********************************************/
DAQmxErrChk (DAQmxWriteAnalogF64(taskHandle,1,1,10.0,DAQmx_Val_GroupByScanNumber,data,,));
Error:
If (DAQmxFailed (error))
DAQmxGetExtendedErrorInfo (errBuff, 2048);
If (taskHandle! = 0) {}
/*********************************************/
Stop DAQmx code
/*********************************************/
DAQmxStopTask (taskHandle);
DAQmxClearTask (taskHandle);
}
If (DAQmxFailed (error))
printf ("Error");
GetChar ();
return 0;
}I get several errors about undefined references:
main.c.text + 0 x 90): refers to 'DAQmxCreateTask' the undefined
main.c.text + 0xdc): refers to 'DAQmxCreateAOVoltageChan' the undefined
main.c.text + 0xf0): refers to 'DAQmxStartTask' the undefined
main.c.text + 0 x 140): refers to 'DAQmxWriteAnalogF64' the undefined
main.c.text + 0x15f): refers to 'DAQmxGetExtendedErrorInfo' the undefined
main.c.text + 0 x 171): refers to 'DAQmxStopTask' the undefined
main.c.text + 0x17c): refers to 'DAQmxClearTask' the undefinedI have already installed OR DAQmx on a Windows XP computer and got the same errors, but could (using this post) to create the libraries needed to link against. However, I have found no information similar to that in Linux (this message seemed to understand this problem, but unfortunately, the author does not share its solution). So far, I tried various options of connection with no success '-ldl ' etc. Obviously, I'm not bind properly.
Any help would be greatly appreciated.
Thank you
Grine
I solved step connects. (Why answers always come when you almost gave up? )
As I suspected, a liaison simple number. Compilation with 'gcc /usr/local/lib/libnidaqmx.so o main main.c', did the trick.
I have still some errors during execution of the program, but I can probably solve these on my own.
-
DAQmxReadAnalogF64 gives unexpected results with 9239 of Ni - DAQmx
Hi all
I use a NI 9239 with a laser sensor, and I would like to acquire some pressure readings of the probe which measures the height. It works very well with Ni Max, but not in C + c++ / MFC app I am developing. I get something that looks like amplidied noise:
1 reading scale doesn't seem fair (pressure readings I get from range - 2E9 to 2E9)
2 changes in what the sensor is supposed to measure does not appear in my measurements at all, there is nothing other than the noise (as if I were acquires bad chain - this I double checked)
I would like to get the same result as in Ni Max, but may not know what wrong with my code (below).Thanks for your help,
Ben
DAQmx Configure Code
DAQmxErrChk (DAQmxCreateTask ("LaserReading", & taskHandle));
DAQmxErrChk (DAQmxCreateAIVoltageChan(taskHandle,"cDAQ1Mod1/ai0","",DAQmx_Val_Diff,-10,10,DAQmx_Val_Volts,));
DAQmxErrChk (DAQmxCfgSampClkTiming(taskHandle,,10000,DAQmx_Val_Rising,DAQmx_Val_FiniteSamps,5000));Starting code DAQmx
DAQmxErrChk (DAQmxStartTask (taskHandle));Reading DAQmx code
DAQmxErrChk (DAQmxReadAnalogF64(taskHandle,NUM,-1,DAQmx_Val_GroupByChannel,data,5000,&read,));TRACE sends the readings to the debug output
TRACE ('%d points\n acquis', read);
for (i = 0; i<5000;>5000;>
{
TRACE("%d\n",data[i]);
}DAQmxStopTask (taskHandle);
DAQmxClearTask (taskHandle);Found the answer to this problem, the problem was in the function TRACE which data acquired to the debugger output. %D %f for the float to TRACE("%f\n",data[i values changed]) - things are great now.
Thank you
Ben
-
I followed this code example, ContGen - IntClk.c.
#include
#include#define DAQmxErrChk (functionCall) if( DAQmxFailed(error = (functionCall)) ) goto Error; else
#define PI 3.1415926535
#define DAQmxFailed(error) ((error)<>int32 CVICALLBACK DoneCallback (TaskHandle taskHandle, int32 status, void *callbackData);
int main(void)
{
int32 error = 0;
TaskHandle taskHandle = 0;
float64 data [1000];
char errBuff [2048] = {'\0'};
int i = 0;for (; i < 1000;="" i++)="" data="" [i]="9.95" *="" sin(="" (double)="" i="" *="" 2.0="" *="" pi="">
/*********************************************/
// DAQmx Configure Code
/*********************************************/
DAQmxErrChk (DAQmxCreateTask ("",&taskHandle) );
DAQmxErrChk (DAQmxCreateAOVoltageChan (taskHandle,"Dev1/ao0","",-10.0,10.0,DAQmx_Val_Volts,NULL) );
DAQmxErrChk (DAQmxCfgSampClkTiming (taskHandle,"",1000.0,DAQmx_Val_Rising,DAQmx_Val_ContSamps,1000) );
DAQmxErrChk (DAQmxRegisterDoneEvent (taskHandle,0,DoneCallback,NULL) );/*********************************************/
// DAQmx Write Code
/*********************************************/
DAQmxErrChk (DAQmxWriteAnalogF64 (taskHandle,1000,0,10.0,DAQmx_Val_GroupByChannel,data,NULL,NULL) );/*********************************************/
// DAQmx Start Code
/*********************************************/
DAQmxErrChk (DAQmxStartTask(taskHandle));printf ("Generating voltage continuously. Press Enter to interrupt\n");
getchar ();Error:
if ( DAQmxFailed (error) )
DAQmxGetExtendedErrorInfo (errBuff,2048);if ( taskHandle != 0 )
{
/*********************************************/
// DAQmx Stop Code
/*********************************************/
DAQmxStopTask (taskHandle);
DAQmxClearTask (taskHandle);
}if ( DAQmxFailed(error) )
printf ("DAQmx Error: %s\n",errBuff);printf ("End of program, press Enter key to quit\n");
getchar ();return 0;
}int32 CVICALLBACK DoneCallback (TaskHandle taskHandle, int32 status, void *callbackData)
{
int32 error = 0;
char errBuff [2048] = {'\0'};// Check to see if an error stopped the task.
DAQmxErrChk (status);Error:
if( DAQmxFailed (error) )
{
DAQmxGetExtendedErrorInfo (errBuff,2048);
DAQmxClearTask (taskHandle);
printf ("DAQmx Error: %s\n", errBuff);
}return 0;
}I would ask what generates the DoneCallback() function call. Thank you.
It is easy to find by yourself
The code for the name of the search function and you will see that this recall is due to DAQmxRegisterDoneEvent, then the callback function is executed when the task of acquiring stop.
-
Problem in ANSI C for example - error TDMS-ContAcq-IntClk 200877
Hello
I tried the examples in the 'ANSI C examples' folder and ran into a snag with the example in:
"" \DAQmx ANSI C\Analog In\Measure Voltage\Acq TDMS-Cont-Int Clk".
When I run it as it is, I get the following error:
DAQmx error: requested each interval of N samples event is not supported for the given the mechanism of transfer of data and the buffer size. To keep the DMA or USB in bulk as the data transfer mechanism, change the size of the buffer or the interval of event Every N samples so the size of the buffer is a multipleof even interval event Every N samples. To keep the same each event interval of N samples and the size of the buffer, modify the mechanism for transfer of data interruptions if taken in charge. Property: DAQmx_Every N samples CQI event IntervalRequested value buffer: size 1000Buffer: 12288Task name: _unnamedTask<0>State :-200877End of the program Code, press the Enter key to exit
0>
As I was typing this, I did a quick test. I tried to comment this line in the code:
/ / * / / PDM DAQmx Configure Code / * / DAQmxErrChk (DAQmxConfigureLogging(taskHandle,"C:\\example.tdms",DAQmx_Val_LogAndRead,"GroupName",DAQmx_Val_OpenOrCreate));)
and it worked, as I suspected.
My gut feeling is that the DAQmxConfigureLogging function expects a block of 12 288 bytes, and in the rest of the code, the number of samples is set to 1000, with a sampling frequency of 10000.
In any case, I fixed it by changing from 1000 to 1024 (1024 because * 12 = 12288) anywhere in the code, so solve the original problem.
I don't have a few new questions now:
1. is this an error in the example, or am I missing something?
2. How do you change the default size 12288 DAQmxConfigureLogging() waiting for let say 5000?
Thank you.
Hall
Hey Bob,
In fact, it is a bug with this example. It comes with the value 1000 for the wrong sampling interval since it is an example of logging. When logging is enabled on a task, default buffer sizes are slightly different from the default values without connecting. This is because the default buffer sizes are powers of 10, while hard drives prefer to powers of 2. It is a maneuver of performance as we listen to disc directly from the buffer DAQmx.
I think you should be able to use 1024 as your sampling instead of 1000 interval in this example. In this example, the default value will change so that it is not immediately error (Corrective Action Request #177199).
-
Auto-trouvez modules SCXI (in the slot machines) with DAQmx
I have a client with an older SCXI system that I'm upgrading. While replacing the traditional DAQ options, I would like a routine without configuration code for them (or as close to zero as possible).
I can find SCXI modules using the properties of the DEVICE, but I can't identify exactly which locations, they are in. I have aliases are in alphabetical order, it works, but if they do not mess with them.
Any ideas? MAX seems to know...
Hi Jed,
You attempt to convert a traditional DAQ MAX configuration programmatically in a configuration DAQmx MAX or something else? The DAQmx API does not expose the ability to query a SXCI module slot number. I suggest you take a look at the API of the System Configuration OR (http://joule.ni.com/nidu/cds/view/p/id/2613/lang/en). The 'Material' of the System Configuration API class property node contains a number of Slot property that should return the number of appropriate housing.
-
Hi all
I made the attached program to use the wheel for USB6211 ctr0.
It works well after execution the finite number of loops for and it shows the rotation angle in real time.
However, if I stopped running (loop for) by pressing CTRL + C, the system crashed and the blue screen appears with the following message.
STOP 0 x 00000050 (0XAF7B1AF4, 0 x...)
nimxdfk.dll
PAGE_FAULT_IN_NO_PAGED_AREA
..
..
..
nimxdfk.dll
Address DB3C96F0F base at B3C7C000,
Datestamp 4e0e2d19...This is the bug of daqmx?
I use
Windows XP SP3
Visual C++ 2010
NOR-DAQmx Device Driver 9.4.0f1
DAQmx ver 5.0Thank you for your help...
----
#define DAQmxErrChk (functionCall) if (DAQmxFailed (error = (functionCall))) goto error; on the other
Sub testencoder()
{
error int = 0;
TaskHandle taskHandle = 0;
Int32 read;
float64 data [1000];
char errBuff [2048] = {'\0'};
int ix;/*********************************************/
DAQmx Configure Code
/*********************************************/
DAQmxErrChk (DAQmxCreateTask("",&taskHandle));
DAQmxErrChk (DAQmxCreateCIAngEncoderChan (taskHandle, "Dev3/ctr0","", DAQmx_Val_X4, 0, 0.0, ""))
DAQmx_Val_AHighBHigh, DAQmx_Val_Degrees, 24, 0,0,' '));
DAQmxErrChk (DAQmxCfgSampClkTiming(taskHandle,"/Dev1/PFI9",1000.0,DAQmx_Val_Rising,DAQmx_Val_ContSamps,1000));/*********************************************/
Starting code DAQmx
/*********************************************/
DAQmxErrChk (DAQmxStartTask (taskHandle));printf ("keep reading. Press Ctrl + C to interrupt\n");
for (ix = 0; ix<1000;ix++) >1000;ix++) >
/*********************************************/
Reading DAQmx code
/*********************************************/
DAQmxErrChk (DAQmxReadCounterScalarF64 (taskHandle, 10.0, data, NULL));
printf ("%f \n data", data [0]);
}
Error:
If (DAQmxFailed (error))
DAQmxGetExtendedErrorInfo (errBuff, 2048);
If (taskHandle! = 0) {}
DAQmxStopTask (taskHandle);
DAQmxClearTask (taskHandle);
}
If (DAQmxFailed (error))
printf ("error DAQmx: %s\n",errBuff); ")
printf ("end of the program, press the Enter key to quit\n");
GetChar ();
return;
}Hello once more,.
After some research, this seems to be the same problem that has been identified in this post: http://forums.ni.com/t5/Multifunction-DAQ/Re-nimxdfk-dll-causes-blue-screen/td-p/1752434. BradK, another R & D developer, identified of the possible workarounds. After you have deployed one of the mentioned workaround ("net start nicdcck" in an administrator command prompt), I wasn't able to reproduce the problem after a few attempts.
I hope this helps!
-
Genral how do synchronized encoders work with a PCI-6602
Well, here is the work routine for syncronous data two encoders, and it seems to work very well.
I have this working with my two 2000 encoders of CPR, let's see how it works when I get the CPR 500 000 encoders later.
The three major problems that caused it does not work have been:
(1) argument to the task of createCOpulsechanfreq must be between 0 and 1 of the cycle Theduty. I had ' 50.0 ' before, it works when it is "0.5".
(2) the time base sample that I used (ctr7) necessary must be started before one of my two angle encoder tasks have been created
(3) the string "dev/PFI8" should be replaced by ' / dev/PFI8 ". I don't really understand why, but it was what seemed to fix it.
If this question has been answered... Now I have a different problem when playing 8 values PWM both with the Semiperiodcounter, which I'll post in a new a different thread.
Thank you!
"' Working code here
Public Sub Aquireposition(samples As Long, data0() As Double, data1() As Double)
Protected BaseTaskHandle as long
Dim encoder0TaskHandle As Long
Dim encoder1TaskHandle As Long
Dim TaskIsRunning As Boolean
Dim ReadCount as long
Dim strCounterString As StringOn Error GoTo ErrorHandler
DAQmxErrChk DAQmxCreateTask ("base", BaseTaskHandle)
DAQmxErrChk DAQmxCreateCOPulseChanFreq(BaseTaskHandle, "/Dev1/ctr7", "base", DAQmx_Val_FrequencyUnits2_Hz, DAQmx_Val_Level1_Low, 0#, 200#, 0.5)
"Specify the continuous time
DAQmxErrChk DAQmxCfgImplicitTiming(BaseTaskHandle, DAQmx_Val_AcquisitionType_ContSamps, 200)
"Startup DAQmx code."
DAQmxErrChk DAQmxStartTask (BaseTaskHandle)
"DAQmx Configure Code
DAQmxErrChk DAQmxCreateTask ("encoder", encoder0TaskHandle)
TaskIsRunning = True
DAQmxErrChk DAQmxCreateCIAngEncoderChan(encoder0TaskHandle, "/Dev1/ctr0", "", DAQmx_Val_EncoderType2_X4, 0, 0#, DAQmx_Val_EncoderZIndexPhase1_AHighBHigh, DAQmx_Val_AngleUnits2_Degrees, 500, 0#, "")
DAQmxErrChk DAQmxCfgSampClkTiming(encoder0TaskHandle, "/Dev1/PFI8", 1, DAQmx_Val_Rising, DAQmx_Val_AcquisitionType_FiniteSamps, samples)
"second encoder.
DAQmxErrChk DAQmxCreateTask ("encoder1", encoder1TaskHandle)
TaskIsRunning = True
DAQmxErrChk DAQmxCreateCIAngEncoderChan(encoder1TaskHandle, "/Dev1/ctr1", "", DAQmx_Val_EncoderType2_X4, 0, 0#, DAQmx_Val_EncoderZIndexPhase1_AHighBHigh, DAQmx_Val_AngleUnits2_Degrees, 500, 0#, "")
DAQmxErrChk DAQmxCfgSampClkTiming(encoder1TaskHandle, "/Dev1/PFI8", 1, DAQmx_Val_Rising, DAQmx_Val_AcquisitionType_FiniteSamps, samples)"Startup DAQmx code."
DAQmxErrChk DAQmxStartTask (encoder0TaskHandle)
DAQmxErrChk DAQmxStartTask (encoder1TaskHandle)
"DAQmx Code reading
DAQmxErrChk DAQmxReadCounterF64 (encoder0TaskHandle-1, 0.05 * samples, data0 (0), samples, ReadCount, ByVal 0 &)
DAQmxErrChk DAQmxReadCounterF64 (encoder1TaskHandle-1, 0.05 * samples, data1 (0), samples, ReadCount, ByVal 0 &)
"Everything is done! StopTask
' DAQmxErrChk DAQmxStopTask (TaskHandle)
"Work stoppage is not necessary because the clear task also stops task"
DAQmxErrChk DAQmxClearTask (encoder0TaskHandle)
DAQmxErrChk DAQmxClearTask (encoder1TaskHandle)
DAQmxErrChk DAQmxClearTask (BaseTaskHandle)Exit Sub
ErrorHandler:
' MsgBox "error:" & Err.Number & ""& Err.Description, "Error".
' mlngPWM_ErrorCount (lngChannel) = (lngChannel) + 1 mlngPWM_ErrorCount
"MainForm.PWMErrorCount =" errors ("& lngChannel &"): "" & mlngPWM_ErrorCount (lngChannel)
Next summaryEnd Sub
-
Tensions of reading in a USB6210 with CVI
I had this card works fine until I connected to other devices.
the first 3 entries are connected to load cell amps, and the fourth to measure the power of the load of appling machine test for load cells.
Its when I conect on the test machine, the tensions are going in all directions.
I have the inputs wired in differential mode.
I'm entered in panels of Test and differential selected and then run the program and then selected create a task so that I could choose four starters and all channels read ok.
So what I think I need is a way to configure my code to set the USB6210 to be in differential mode.
I tried the examples OR and can not find an example.
This is the code I use to set up the USB6210
Int32 error = 0;
TaskHandle taskHandle = 0;
Chan Char [256];
float64 min =-10.0, max = 10.0, rate is 10000.
uInt32 sampsPerChan = 100;
Seek_set Int32, a;
uInt32 numChannels.
float64 * data = NULL;
The int journal;
char errBuff [2048] = {'\0'};
uInt32 i;
float Floatnum;
NumString char [30];/*********************************************/
DAQmx Configure Code
/*********************************************/
DAQmxErrChk (DAQmxCreateTask("",&taskHandle));
DAQmxErrChk (DAQmxCreateAIVoltageChan(taskHandle,"Dev1/ai1,Dev1/ai2,Dev1/ai3,Dev1/ai4","",DAQmx_Val_Cfg_Default,min,max,DAQmx_Val_Volts,));
DAQmxErrChk (DAQmxCfgSampClkTiming (taskHandle",", rate, DAQmx_Val_Rising, DAQmx_Val_FiniteSamps, sampsPerChan));
DAQmxErrChk (DAQmxGetTaskAttribute (taskHandle, DAQmx_Task_NumChans, & numChannels));If ((data = malloc (sampsPerChan * numChannels * sizeof (float64))) == NULL)
{
MessagePopup ("error", "not enough memory");
GoTo error;
}
/*********************************************/
Starting code DAQmx
/*********************************************/
DAQmxErrChk (DAQmxStartTask (taskHandle));You will need to use:
DAQmxSetChanAttribute (taskHandle, "", DAQmx_AI_TermCfg, DAQmx_Val_Diff, 0);
This will have an impact on all channels in the task.
-
USB-2009, Task.Timing.ConfigureSampleClock fails
I work with a USB-2009 and want to write a byte array to the digital output using DigitalSingleChannelWriter.WriteMultiSamplePort. The following c# code illustrates what I'm trying to do. An error occurs when ' task. Timing.ConfigureSampleClock' is performed and the message below.
I read the documentation of NOR-DAQmx .NET. It does not specify what are the classes and/or function should not be called on the USB-2009 so I don't know whether or not the "ConfigureSampleClock" can even be used in this situation.
Can someone tell me or provide me with sample code that shows how a byte array can be sent to the digital output on the USB-2009? If the USB-2009 is not designed for that, then that would also be helpful to know. If your example is only for analog output, then I think it would be just as good. I am able to output a successful single byte, one at a time, on the line of digital output... but not a byte array.
Thank you
Ian
===============================
Code example
Note the following object instances:
"Simulator" simulates a wave with an amplitude of 255 square
"deviceID" manages the the string ID of the USB-2009
int x = - 1;
Byte [] waveData = new Byte [Simulator. Count];
{foreach (Double sample in the Simulator)
waveData [++ x] = Convert.ToByte (sample);
}using (task task = new task ("myTask")) {}
task. () DOChannels.CreateChannel
deviceID + "/ port0."
"myPort."
ChannelLineGrouping.OneChannelForAllLines
);task. Timing.SampleTimingType = SampleTimingType.OnDemand;
task. () Timing.ConfigureSampleClock
String.Empty,
samplingRate,
SampleClockActiveEdge.Rising,
SampleQuantityMode.FiniteSamples,
Simulator. County
);
task. Control (TaskAction.Verify);DigitalSingleChannelWriter writer = new DigitalSingleChannelWriter (task. Stream);
writer. WriteMultiSamplePort (waveData, true);} / / using (task task = new Task()) {}
===============================
Error message generated by executing the line "task. Timing.ConfigureSampleClock':
NationalInstruments.DAQmx.DaqException: The requested value is not supported for this property value.
Property: NationalInstruments.DAQmx.Timing.SampleTimingType
You asked: NationalInstruments.DAQmx.SampleTimingType.SampleClock
You can select: NationalInstruments.DAQmx.SampleTimingType.OnDemandTask name: myTask
State code:-200077
to nNIMSSAIL100.StatusObserverT<><>otNetApi > >. CheckWithName (StatusObserverT<><>otNetApi > *, tCaseInsensitiveBasicString
\,_STL::allocator \,nNIDMXS100::tLocaleConsideringWideStringComparitor\,nNIDMXS100::tLocaleConsideringWideStringCaseForcer>* pName) at NationalInstruments.DAQmx.Timing.set_SampleTimingType (SampleTimingType value)
at NationalInstruments.DAQmx.Timing.ConfigureSampleClock (String signalSource, Double rate, SampleClockActiveEdge activeEdge, SampleQuantityMode sampleMode, Int32 samplesPerChannel)
at Test.MainForm.testNINetLibrary_Click (Object sender, EventArgs e) in C:\Users\XXXXXl\Documents\Visual Studio\Projects\Digital IO - test\MainForm.cs:line 197
Hello Ian,
The error you see is because you try to cinfigure a sample clock that is not actually present. The USB-6009 case is completely timed software (which means that the values are updated based on your loop rates and the speed at which your computer can change). It seems that you are calling the right to property, the error message seems a bit misleading. We can consider the issue to see if it's something that needs to be corrected. Normally, the timed SW just requests do not configure a sample clock. Here's an exit code only once, so do not hesitate to repeat just update you need.
int main (void)
{
error int = 0;
TaskHandle taskHandle = 0;
data uInt32 = 0xffffffff;
char errBuff [2048] = {'\0'};
Int32 wrote;/*********************************************/
DAQmx Configure Code
/*********************************************/
DAQmxErrChk (DAQmxCreateTask("",&taskHandle));
DAQmxErrChk (DAQmxCreateDOChan (taskHandle, "port0/Dev1", "", DAQmx_Val_ChanForAllLines));/*********************************************/
Starting code DAQmx
/*********************************************/
DAQmxErrChk (DAQmxStartTask (taskHandle));/*********************************************/
DAQmx write code
/*********************************************/
DAQmxErrChk (DAQmxWriteDigitalU32(taskHandle,1,1,10.0,DAQmx_Val_GroupByChannel,&data,&written,));Error:
If (DAQmxFailed (error))
DAQmxGetExtendedErrorInfo (errBuff, 2048);
If (taskHandle! = 0) {}
/*********************************************/
Stop DAQmx code
/*********************************************/
DAQmxStopTask (taskHandle);
DAQmxClearTask (taskHandle);
}
If (DAQmxFailed (error))
printf ("error DAQmx: %s\n",errBuff); ")
printf ("end of the program, press the Enter key to quit\n");
GetChar ();
return 0;
} -
How to sample multiple sensors in a vital task?
I need to a thermocouple sensor and voltage sensor in a vital task of the sample. My hardware configuration includes a cDAQ-9172 chassis with a NI9211 TC module and a NI9221 voltage input module.
I started with the example C code for thermocouple measurement found here:
Instruments\NI-national DAQ\Examples\DAQmx C\Analog In\Measure Temperature\Cont Thrmcpl samples-Int Clk\ContThrmcplSamps ANSI - IntClk.c
I then added a few lines of code for the measurement of additional tension.
The task runs for about 20 seconds, until the buffer overflow with the error 200279.
I can run task, thermocouple or voltage, indefinitely. It's only when I include them both in the same task as the buffer overflow.
I have tried many combinations of sampling rate, the size of the buffer and DAQmxRegisterEveryNSamplesEvent nSample size.
Below is the code I'm running. Changes to the original file are marked in bold. I've attached a screenshot of the output of command line.
Can anyone offer a C program example showing how to sample multpile sensors permanently in a task?
#include
#include #define DAQmxErrChk(functionCall) if( DAQmxFailed(error=(functionCall)) ) goto Error; else int32 CVICALLBACK EveryNCallback(TaskHandle taskHandle, int32 everyNsamplesEventType, uInt32 nSamples, void *callbackData); int32 CVICALLBACK DoneCallback(TaskHandle taskHandle, int32 status, void *callbackData); int main(void) { int32 error=0; TaskHandle taskHandle=0; char errBuff[2048]={'\0'}; /*********************************************/ // DAQmx Configure Code /*********************************************/ DAQmxErrChk (DAQmxCreateTask("",&taskHandle)); DAQmxErrChk (DAQmxCreateAIThrmcplChan(taskHandle,"cDAQ1Mod1/ai0","",0.0,100.0,DAQmx_Val_DegC,DAQmx_Val_K_Type_TC,DAQmx_Val_BuiltIn,25.0,"")); DAQmxErrChk (DAQmxCreateAIVoltageChan(taskHandle,"cDAQ1Mod4/ai0","",DAQmx_Val_Cfg_Default,-60.0,60.0,DAQmx_Val_Volts,NULL)); DAQmxErrChk (DAQmxCfgSampClkTiming(taskHandle,"",1000.0,DAQmx_Val_Rising,DAQmx_Val_ContSamps,1000)); DAQmxErrChk (DAQmxRegisterEveryNSamplesEvent(taskHandle,DAQmx_Val_Acquired_Into_Buffer,1000,0,EveryNCallback,NULL)); DAQmxErrChk (DAQmxRegisterDoneEvent(taskHandle,0,DoneCallback,NULL)); /*********************************************/ // DAQmx Start Code /*********************************************/ DAQmxErrChk (DAQmxStartTask(taskHandle)); printf("Acquiring samples continuously. Press Enter to interrupt\n"); getchar(); Error: if( DAQmxFailed(error) ) DAQmxGetExtendedErrorInfo(errBuff,2048); if( taskHandle!=0 ) { /*********************************************/ // DAQmx Stop Code /*********************************************/ DAQmxStopTask(taskHandle); DAQmxClearTask(taskHandle); } if( DAQmxFailed(error) ) printf("DAQmx Error: %s\n",errBuff); printf("End of program, press Enter key to quit\n"); getchar(); return 0; } int32 CVICALLBACK EveryNCallback(TaskHandle taskHandle, int32 everyNsamplesEventType, uInt32 nSamples, void *callbackData) { int32 error=0; char errBuff[2048]={'\0'}; static int totalRead=0; int32 read=0; float64 data[1000]; uInt32 i; /*********************************************/ // DAQmx Read Code /*********************************************/ DAQmxErrChk (DAQmxReadAnalogF64(taskHandle,-1,10.0,DAQmx_Val_GroupByScanNumber,data,1000,&read,NULL)); if( read>0 ) { for (i = 0 ; i < 2*read ; i++ ) { printf("%.5f\n", data[i]); } printf("Acquired %d samples. Total %d\r",read,totalRead+=read); fflush(stdout); } Error: if( DAQmxFailed(error) ) { DAQmxGetExtendedErrorInfo(errBuff,2048); /*********************************************/ // DAQmx Stop Code /*********************************************/ DAQmxStopTask(taskHandle); DAQmxClearTask(taskHandle); printf("DAQmx Error: %s\n",errBuff); } return 0; } int32 CVICALLBACK DoneCallback(TaskHandle taskHandle, int32 status, void *callbackData) { int32 error=0; char errBuff[2048]={'\0'}; // Check to see if an error stopped the task. DAQmxErrChk (status); Error: if( DAQmxFailed(error) ) { DAQmxGetExtendedErrorInfo(errBuff,2048); DAQmxClearTask(taskHandle); printf("DAQmx Error: %s\n",errBuff); } return 0; } One more thing I've noticed is that the size of the data [] has not be increased to include additional channels. Wear in 2000 and also to increase arraySizeInSamps (parameter 5) and 2000 to the DAQmxReadAnalogF64 function call. Given that it was only the value 1000 samples, it will get only 500 samples per channel causing the overflow.
Maybe you are looking for
-
I've never had to enter a security code of base before emails... it's beyond frustrating; I find them really hard to decipher (they are the kind that look as if they are scribbled on) and had to register more than 10 a few times beofre I understand..
-
I bought this PC in July 2011 and it is out of warranty. After that of being harassed at level to Windows 10 months I decided to do it, but rather than the upgrade, I did a clean install from the laptop was malfunctioning. I read on the Microsoft s
-
I received a player NSZ - GT1 Internet TV & Blu - ray for Christmas and put in place today. Everything works fine, except for Netflix. When I run the Netflix app, the splash screen appears, but the application goes no further. After some time, disapp
-
Why are they not my optusnet emails that arrive in my outlook Inbox?
I installed Outlook swith my e-mail address optusnet which is * address email is removed from the privacy * but the mail is not debited in my Outlook Inbox. The error tells me is POP3 - please explain.
-
An alternative to a double click on the time when you need to consult a calendar
Sometimes, I need to look at a calendar for some reason any. I usually double-click the clock to browse a. However, I am on a computer not my own where I limited access privileges. When I double-click on the clock, I get a message "you don't have the