Discussion:
digital generation with NI 9485 and cDAQ chassis 9172
(too old to reply)
caz
2008-01-03 22:10:08 UTC
Permalink
I am doing a temp control scheme using two 9485 solid state relays for pulse width modulation of the power flowing through some resistive heaters. I've attached a first cut of my code and it contains 2 tasks, one for the analog tempeature measurement and one for the digital generation to the relays. The problem is with the digital generation. I've tried a test vi that simply writes an array of U32s to a single port of one of the relays and the behavior I see on an external scope is not what I am expecting. I would like to know how to simply have a single line output an arbitrary pattern of 1 and 0s using hardware timing. I not really sure which clock to use but I have been using the 20MHz clock as my source. This may be the problem. Otherwise, it has to do with how the data is written.
 
The other issue I've been wresting with deals with the continuous generation. I use a queue to pass data from my temp read loop to the digitial update loop. How do I confirm that previous write is completed before it starts using the new data?  Any help would be appreciated.
 
Thanks
DC


TDM_temp_control_queue_rev0.vi:
http://forums.ni.com/attachments/ni/70/7984/1/TDM_temp_control_queue_rev0.vi


PWM_digital_data.vi:
http://forums.ni.com/attachments/ni/70/7984/2/PWM_digital_data.vi
caz
2008-01-03 22:40:07 UTC
Permalink
Oops, 1 more thing;
LabVIEW 8.5
DAQmx 8.6.1f0
caz
2008-01-04 15:40:08 UTC
Permalink
Thanks for the prompt response Wilfried. I am currently implementing an equivalent software timed code. The hardware timing route would have been an easier code job for doing PWM on multiple channels. Now I have to have N parallel loops for each line. My main concern was according to all the documentation I found, these devices are capable of hardware or correlated digital IO when used in the proper slot in the cDAQ 9172 expansion chassis. I never could get this to work in the simplest of scenarios. Perhaps, my confusion lies in what hardware timing is actually supported, single sample or multiple sample generations? When feeding a waveform the last point is the one that seems to get generated. Seems like it supports only single sample generations.
cazMessage Edited by caz on 01-04-2008 09:27 AMMessage Edited by caz on 01-04-2008 09:28 AM
caz
2008-01-04 17:10:09 UTC
Permalink
Oh yeah, one more thing;
I still have my armfloats on in the digital pool.

Loading...