in data 01-27-2016 12:09 PM
Salve, sono nuovo in questo forum! Utilizzo una scheda NI USB-6210 e ho bisogno di campionare un input analogico in corrispondenza di un segnale di trigger digitale che la mia scheda supporta. Io non utilizzo LABVIEW, ho un programma in C in cui ho configurato tutto quello che mi serve solo che il mio problema è come creare questo segnale digitale. Qualcuno sa aiutarmi? Ho cercato nel forum ma ho trovato solo esempi con LABVIEW. Grazie in anticipo.
in data 01-28-2016 04:36 AM
Ciao ObiNap,
per fare quello che chiedi potresti utilizzare le funzioni C predefinite per comunicare col dispositivo USB 6210.
Puoi trovarle nel NI DAQmx C Reference Help che verrà installato nel momento in cui installi i driver DAQmx per comunicare con la tua scheda.
All'interno di questo help trovi le funzioni di configurazione e creazione del task e le funzioni di scrittura/lettura digitale.
Quindi dovresti innanzitutto includere la libreria e poi utilizzare le funzioni per scrivere su un canale di output un impulso digitale (0,1,0) e leggerlo da un canale che può fare da trigger per la tua acquisizione analogica (PFI0..3).
Ti allego il link dove scaricare i driver nel caso tu non lo avessi già fatto:
http://www.ni.com/download/ni-daqmx-15.0.1/5353/en/
Spero di esserti stato d'aiuto,
ciao.
Pep
in data 01-28-2016 09:21 AM
Ah grazie! Io ho già scritto il programma configurando i canali che mi servivano ma pensavo di dover creare un trigger esterno e poi mandarlo. Quindi, se ho capito bene, dovrei configurare, oltre il canale di input analogico e di input digitale per il trigger, anche un output digitale che generi il trigger che mando all'input digitale? Non so se mi sono spiegata Correggimi se sbaglio. Grazie ancora!
in data 01-28-2016 09:46 AM
Molto più semplicemente: a te serve un trigger digitale per iniziare l'acquisizione analogica, dunque prima generi il segnale di output digitale e poi lo connetti fisicamente con un input digitale che userai come trigger per la tua acquisizione analogica. Non devi configurare il task di input digitale perché comunque quel segnale fungerà solamente da trigger per il tuo canale analogico, che imposterai nel momento in cui andrai a creare il task per l'acquisizione analogica.
in data 01-28-2016 09:56 AM
Ho capito, grazie mille!! Se posso approfittare ancora della tua disponibilità, vorrei chiederti come faccio ad impostare un impulso rettangolare come digital output. Stavo vedendo DAQmxCreateDOChan ma non capisco come fare. Grazie per la disponibilità!
in data 01-28-2016 10:07 AM
Io ti consiglierei di fare una cosa del tipo:
funzione_scrittura_DO(nomeoutput,0)
wait(nsec)
funzione_scrittura_DO(nomeoutput,1)
wait(nsec)
funzione_scrittura_DO(nomeoutput,0)
stile microcontrollore.
Le funzioni di scrittura sono sempre tra quelle che trovi nel NI DAQmx C Reference.
in data 01-28-2016 10:27 AM
Ah okay quindi prima configuro il digital output poi uso il tuo suggerimento. Grazie, poi provo a scriverlo, se ho problemi ti farò altre domande. Intanto ti ringrazio molto!!
in data 01-28-2016 10:34 AM
Va bene.. Intanto, se ti va, Kudos 😄
E se ti è comunque chiaro puoi marcare la soluzione come accettabile, almeno gli utenti futuri sapranno che questa può essere una soluzione accettabile.
Fammi sapere,
Ciao.
in data 01-28-2016 11:13 AM
Si infatti appena risolvo accetto la soluzione Comunque volevo chiederti riguardo alla configurazione, okay che non configuro l'input digitale però lo start e reference trigger li devo configurare, giusto? Grazie
in data 01-28-2016 12:16 PM
Scusa ma che differenza c'è tra la porta digitale e il canale? Grazie