03-22-2012 08:25 AM
Bonjour,
Je rencontre un problème sur une carte PCI6713 lorsque que je crée un profile de signal particulier, alors que sur une carte de type PCI6711 avec le même profile je n'ai pas de problème.
J'utilise des drivers DAQmx en version 9.3.5 (avec la version 8.8 j'ai le même problème).
Pour créer la tâche de gestion de la carte PCI6713 j'utilise la fonction suivante :
int32 NI6713_CreateTask(TaskHandle *taskOut1, char *line, float64 rate, int32 sampleMode, uInt64 sampsPerChanToAcquire, float64 *dataTab)
{
int32 DAQmxError = 0;
TaskHandle taskOut;
int32 written;
DAQmxErrChk(DAQmxCreateTask("", &taskOut));
DAQmxErrChk(DAQmxCreateAOVoltageChan(taskOut, line,"TensionSortie", -10, 10, DAQmx_Val_Volts, ""));
DAQmxErrChk(DAQmxCfgSampClkTiming(taskOut,"",rate,DAQmx_Val_Rising,sampleMode,sampsPerChanToAcquire));
DAQmxErrChk(DAQmxWriteAnalogF64(taskOut,sampsPerChanToAcquire,0,10.0,DAQmx_Val_GroupByChannel,dataTab,&written,NULL));
*taskOut1 = taskOut;
Error:
return DAQmxError;
}
L'appel de la fonction avec les paramètres suivants sort avec une erreur :
line = "Dev1/ao0"
rate = 10000 ou rate = 1000
sampleMode = DAQmx_Val_FiniteSamps
sampsPerChanToAcquire = 11
double dataTab[11] = {0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,10.0}
La fonction "DAQmxWriteAnalogF64" sort avec l'erreur : -200692
L'appel de la fonction avec les paramètres suivants sort sans erreur :
line = "Dev1/ao0"
rate = 10000
sampleMode = DAQmx_Val_FiniteSamps
sampsPerChanToAcquire = 10
double dataTab[11] = {0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,10.0}
Quelle est la différence entre les cartes PCI 6711 et 6713 qui expliquerait pourquoi je sort en erreur sur la carte 6713 ?
Merci,
Nicolas Covela Rodriguez
Solved! Go to Solution.
03-23-2012 06:23 AM
Bonjour Nicolas,
Merci d'avoir posté sur le forum National Instrument.
Il existe effectivement une différence entre les deux cartes. En effet certaines cartes (comme la PXI-6713) de la série S acceptent uniquement un nombre d'échantillons pair. Il existe des documents qui expliquent ceci un peu plus en détails:
Error -10010 When Using Odd Buffer Sizes With Certain S Series and Analog Output DAQ Devices
Bien cordialement,
Audrey_P
National Instruments France
03-23-2012 07:11 AM
Bonjour,
Merci pour la réponse, cela explique effectivement bien mon problème.
Je vais donc passer par défaut le nombre d'échantillons en valeur pair.
Salutations,
Nicolas Covela Rodriguez