le 03-28-2012 10:49 AM
Bonjour,
j'uitlise une carte PCIe 6341 pour générer une rampe de potentiel envoyée à un appareil et je récupère un potentiel au retour. Pour cela, j'ai un module en VB6 qui génère la rampe de potentiel (TH_volta) et récupère le potentiel (TH_lecturecourant). La forme de la rampe est stockée auparavant dans le tableau_E et le signal est récupéré dans le tableau_I.
Ca marche sans message d'erreur. Mon probleme est que lorsque la frequence augmente les deux signaux se désynchronisent. En gros, les points du tableau_E ne correspondent plus à ceux du tableau_i.
Avez-vous une idée ?
Merci. Cordialement !
'----------------- GENERATION SIGNAL EN SORTIE-----------------
DaqmxErr = DAQmxCreateTask("", TH_volta) 'tache génération du signal triangulaire
DaqmxErr = DAQmxCreateAOVoltageChan(TH_volta, DAQmx_device & "/" & DAQmx_output_channel, "Uin", _
-1 * gammeV, gammeV, DAQmx_Val_VoltageUnits2_Volts, "")
DaqmxErr = DAQmxCfgSampClkTiming(TH_volta, "OnboardClock", frequence, DAQmx_Val_Rising, _
DAQmx_Val_AcquisitionType_FiniteSamps, nb_points * nb_cycles)
DaqmxErr = DAQmxWriteAnalogF64(TH_volta, nb_points * nb_cycles, True, -1, _
DAQmx_Val_GroupByScanNumber, tableau_Eeff(0), nb_sample_ecrit, ByVal 0&)
'---------------- MESURE DE LA VOIE i ------------------------
DaqmxErr = DAQmxCreateTask("", TH_lecturecourant) ' tache récupération du courant (sous forme d'un potentiel)
DaqmxErr = DAQmxCreateAIVoltageChan(TH_lecturecourant, DAQmx_device & "/" & DAQmx_inputY_channel, _
"Courant", DAQmx_Val_InputTermCfg_RSE, -1 * gammeI, gammeI, _
DAQmx_Val_VoltageUnits2_Volts, "")
DaqmxErr = DAQmxCfgSampClkTiming(TH_lecturecourant, "OnboardClock", frequence, DAQmx_Val_Rising, _
DAQmx_Val_AcquisitionType_HWTimedSinglePoint, _
nb_points * nb_cycles)
DaqmxErr = DAQmxReadAnalogF64(TH_lecturecourant, nb_points * nb_cycles, -1, _
DAQmx_Val_GroupByScanNumber, tableau_i(0), nb_points * nb_cycles, _
1, ByVal 0&)
DaqmxErr = DAQmxStartTask(TH_lecturecourant)