LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Control stepper motor with coordinates

I am a graduate student in University of Peireus in Greece , my teacher want to create a project with 3 controlling stepper motors (3 axis x,y,z ) to  get airborne measurement of an air tunnel  , also he want to control the steppers motors with labview specifically with coordinates x , y , z . I have no idea about the programming for this kind , so I want your help because I am helpless in this project . If I success in this project I will get my degree.

 

I have x3 stepper motors 4-wire , x3 usb-6009 .

 

I want help about the programming , I have no idea to programming in Labview .

 

I know how to connect the electrical parts but I dont know to programming this project , If you have any idea I want it .

 

I upload the vi , I imagine like this the block diagram .

0 Kudos
Message 1 of 11
(9,580 Views)
OK, the first step is to learn about LabVIEW. There are many tutorials available online.

Next, in your list of hardware there was no mention of any specialized motor control hardware, so you are going to be stepping the motors by manipulation digital outputs from the 6009. This isn't hard but the digital outs will not be able to drive the motors directly, so you will need to construct a driver board. With that done you will be ready to start trying to move the motors.

Stepping the motors will.require sequencing the bits in a particular order.

Mike...

Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion

"... after all, He's not a tame lion..."

For help with grief and grieving.
0 Kudos
Message 2 of 11
(9,550 Views)

@mikedimou424 wrote:

I am a graduate student in University of Peireus in Greece , my teacher want to create a project with 3 controlling stepper motors (3 axis x,y,z ) to  get airborne measurement of an air tunnel  , also he want to control the steppers motors with labview specifically with coordinates x , y , z . I have no idea about the programming for this kind , so I want your help because I am helpless in this project . If I success in this project I will get my degree.


 

Great.  So you need to learn a skill (LabVIEW) in order to get your degree.  So start learning.

 

At the end of this post, there are links to a number of excellent on-line tutorials and videos on LabVIEW.  I also assume that if your professor specifically wants you to learn/use LabVIEW, that there are probably people at your University who know/use it.

 

Here are my suggestions:

 

  1. Get a recent version of LabVIEW installed on your laptop or desktop.  See your professor for help if you don't have the DVDs available.  Don't try to install everything -- install "basic" LabVIEW, DAQmx, and Device Drivers (do the drivers last).
  2. Once you have LabVIEW available to you (so you can try out the steps mentioned in the Tutorial material), start viewing the Tutorials and trying to do some of the things that they demonstrate.  For this, it might be helpful to have two computers, one to view the videos, and another (your laptop?) to work along with the tutorial.
  3. Once you've done the basics and feel a little familiar with LabVIEW, plug a USB-6009 into one of your USB ports, open MAX, and play around with it.  Try outputting an analog voltage, try toggling a digital output line, try reading a digital input line (you can run a wire to +5v for a high or to Gnd for a low).
  4. Once you've done all of that, start thinking about how you might use what you know about LabVIEW to solve your problem.

Your Professor is doing you a service -- getting you to learn a very useful skill, as a competent LabVIEW programmer can be of value to engineering and design firms.  However, you need the skill in order to be employed as a LabVIEW programmer, so don't skip the steps of learning it on your own.  Get help from your teachers and fellow students, and if they get "stuck", feel free to come back here and ask questions (but have a specific question, and show us what you've done).

 

Bob Schor

0 Kudos
Message 3 of 11
(9,541 Views)

Thank you for your prompt replies , I am so happy  .

 

I know to programming to Labview but I am not expert for this project , because previous project is only virtual or mathematical applications . Sorry for the wrong wording .

 

So I want some explanations about DAQmx  functions , what I will need to create a virtual channel , I see "task in " , "lines" , "line grouping"  can you give me an explanation about τhis

0 Kudos
Message 4 of 11
(9,525 Views)

I have create this vi with tutorial and I see examples for DAQ , I understand until now , but how I could connect the x , y, z  (coordinates in cm ) with "DAQmx Write" function ?

0 Kudos
Message 5 of 11
(9,515 Views)
0 Kudos
Message 6 of 11
(9,494 Views)
The point you just made is why it is so critical that you build this is a systematic way. When you have figured out how to make the thing move, you need to be able to define distances of movement in a real-world unit like cm. To do that you need to measure or calculate how many steps you need to make to get the end point to move one cm. If you know the number of steps per revolution of the motor, and the drive gear ratio you can calculate an expected conversion value that you can then test.

Say the motor you're using has 360 steps per revolution, and the linkage you are using requires 100 revolutions to move 1cm, you would expect that you would need to step the motor 36000 times for each cm of movement.

So say you have a value along one of the axes of 4.5 (cm). Starting from home position, to get to that position you would have to step 36000 x 4.5, or 162,000, times. If the professor want to specify X, Y and Z in something other than cm, you will need to include that conversion in the calculation as well.

If I were building this system I would encapsulate the calculation in a subVI that accepts an input in distance and outputs a number of steps.

Mike...

Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion

"... after all, He's not a tame lion..."

For help with grief and grieving.
0 Kudos
Message 7 of 11
(9,488 Views)

It's also unclear whether you are specifying a move of so many centimetres or an absolute location. Location requires some sort of feedback. It would be much simpler of you had an actual motion controller instead of the inexpensive 6009 where you will have to do much more programming of your own.

0 Kudos
Message 8 of 11
(9,481 Views)

For higher level questions on how to structure your application as a whole, check out this link.

 

Mike...


Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion

"... after all, He's not a tame lion..."

For help with grief and grieving.
0 Kudos
Message 9 of 11
(9,479 Views)

stepper motor is bipolar 1,8 degrees

 

The stepper motor move 6 mm for 360 steps  , so maybe need to connect an array with true or false in data of  DAQmx write .vi 

but how can I check if my position is right ?

0 Kudos
Message 10 of 11
(9,429 Views)