Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

Controlling a Stepper motor driver with USB 6009

Hello,
I have been looking at the USB 6009 DAQ to control my stepper motor drivers (2 of them) as well as pseudo-simultaneously acquire an analog signal. Before buying I would like to see if anyone could help me figure out if the 6009 will work or not for my application.
 
Application - I need the 6009 to: (a) control two stepper motor drivers for a motorized xy stage; the motion I need to achieve/program is incrementally stepping forward and then incrementally stepping in reverse along the x-axis. Then once returned to the beginning of this line, I need to step down one step along the y-axis. (b) This tracing will repeat to give a square grid... at each point of the grid I need to measure (with the 6009) the voltage from a sensor. In this way, I would like to get two "images": one corresponding to measurements made in the forward and one for measurements in the reverse direction. I drew an image below of the raster pattern if I was confusing. (c) display the acquired data (forward and reverse data seperately) on the screen during acquisition.  
 
The first and foremost is whether the 6009 is even compatible with my stepper drivers. According to the specs from the manufacturer of the stepper driver I need a TTL compatible controller that:
 
- can supply +5V  to the optoisolated LEDs (pg 6 of their manual; can I use the +5V output of the 6009 which is rated to 200ma??????) 
- can sink 5ma per input - there are a total of three inputs that will be used (step, direction, enable)
 
Can the 6009 do this....If it can't sink the 5ma the 6009s manual says to install an external pull-up resistor....I don't  have an ammeter to determine the proper resistance and don't even know where to get one!  Any suggestions????
 
For the really curious & HELPFUL!, here is a link to the stepper driver manual from the manufacturer: http://www.applied-motion.com/ampinfo/manuals/3540m.pdf
 
I will appreciate any help!
 
thanks in advance
James
0 Kudos
Message 1 of 15
(7,798 Views)
James,
After looking at the datasheet you attached, I think this would work.

The DIO lines default to open drain mode, which can source less than 1mA, but can sink much more.  The 6009 can sink the 5mA needed to control this stepper motor.  The 6009 +5V line can source 200mA, which is enough for the two stepper drivers you would use (2x15mA).  This should satisfy the requirements described on page 6 of stepper driver datasheet.

I tried something similar using an h-bridge IC to control very small stepper motors with a 6009, but I think your approach is easier.

I don't think you'll need an ammeter for this project, but they are useful to have around.  Most people use digital multimeters (DMMs) to measure current.  You can get cheap, less accurate ones at Radio Shack for <$20, or NI makes very accurate DMMs like the PXI-4070.  In a pinch, you can use a resister and measure the voltage drop across it with the 6009 you already have.

Tim







Message 2 of 15
(7,779 Views)

Tim,

thanks for the info.....I'm feeling more confident that I'm not going to blow anything up!

so do you think it would be safe just to plug the inputs in and give it a go or are there any pre-cautions I should take prior to this?

Also, when I set this up would I use the default open drain mode for the digital out to the step/direction/enable inputs?

As you can tell I'm not very familiar with this type of work, but worth the effort notheless!

thanks again,

James

0 Kudos
Message 3 of 15
(7,764 Views)

Dear James,

Based on what Tim said, it sounds safe to plug the inputs in and use the default open drain mode. Have a great day!

Sincerely,

Marni S.

Message 4 of 15
(7,720 Views)

James,

Can you tell me more about your motion requirements?  For the X axis, what sort of velocity will you be trying to go at?

One thing to consider is that a step motor will "slip" if the commanded velocity has too large of a change or exceeds the maximum rate for the motor.

Will you be using microstepping?  If using whole or half stepping, the motor may require a minimum velocity before it will start to move.

Rodger S.

0 Kudos
Message 5 of 15
(7,689 Views)

Hi James,

Or anyone that can help.  I read your comment in the discussion forum about controlling a stepper motor.  I'm not nearly as advance as you are in creating such code.  I was wondering if you could help me get started in writing a code through labView to control a stepper motor using the USB6009 interface.  I just need a simple code such as; controlling the degree of steps or direction of rotation, and velocity.  If you could email some advice or the procedure in doing this I would really appreciate it very much. I can be reached at koa2a@mtsu.edu.

 

Thank You,

Olay

0 Kudos
Message 6 of 15
(7,594 Views)

Hi,

I am using USB 6009 for generation of the of clock through DIO. Will you pl. tell me upto what speed the pulses(Frequency) are generated.

Looking forward.

 

With regards,

Tram

0 Kudos
Message 7 of 15
(7,391 Views)

Hello,

the fastest digital output that I have been able to get is ~500Hz (1ms to write a 0 and 1 ms to write a 1) using the software timed 1 kHz clock.....

Without the clock I'm getting only ~50Hz.

hope this helps

best,

James

 

 

0 Kudos
Message 8 of 15
(7,374 Views)

Dear James and Tram,

Since the digital lines on the USB-6009 are software timed, the output speed is system dependent and will depend on your computer.

Sincerely,

Marni S.

0 Kudos
Message 9 of 15
(7,364 Views)

Hye,

I am new here. Now i am waiting my USB DAQ 6009. so i need to control 2 stepping motor and also a brushless motor and one solenoid valve.

both stepping motor, i need to control the rotation by angles that i have set it (i.e: 15,20,25,30,35,40, and 45 degree.) on the front panel of LabView. these motor have drivers and the power suppy is 24Vdc.

here i need to know the wiring to the DAQ card and also the sample program that can control the motor rotate to the angle that i have set it. from the motor datasheet, the motor driver can accept pulse which is 1 pulse = 0.72 degree.

for the brushless motor, i have a speed controller motor and also a motor driver. so how the wiring connection to the DAQ card and it can be work if i am do like this?..because i will control the the speed of motor by using the external motor controller. this motor also 24Vdc.

I am really need help from you guys to complete my project.

thanx :manhappy:

0 Kudos
Message 10 of 15
(6,525 Views)