Servo motor control using MCB2300 and Labview

Hello Everyone,
I have to drive servo motor using MCB2300 board and labview. I am new to LabView as well as MCB2300 board. I understand that I have to generate Pulse to control the servo motor. 
I have gone through some of the post but could not find something useful. 
I need to do it asap, a fast and eloborating answer is much appreciated. 
Thanks is advanced.

I don't know if this will help you, but think about this tip:
On the back of my (digital-) Servo package there was some data written (see attached image).
You've heard of PWM (Pulse Width Modulation)? If not look it up in
wikipedia / microcontroller.net / (if you speak german) http://www.rn-wissen.de/index.php/Servos or google
The description of the Servo says that I have to send every 200ms +/- 1ms a positive (+5V +/- 1V) signal with a length depending on the angle I want the Servo to be set. The Signal is coded in conjunction to time, which means, as longer the Signal as higher the angle is. The Signal range is in between 70 to 240 ms (with my servo and not exactly). The Signal must repeated every 200 ms like I said before. I don't know, if you understand C but here is a function I wrote, which works fine for me:
void set_Servo_0(uint8_t angle)
  DDRA |= 2; // Specific Port declaration for my µC (Atmel)
  uint8_t tick; // a var to count how often I send my Signal
  for(tick = 0; tick < 2; tick++) // loop to count -> send Signal three times
    if(getStopwatch1() > 200)  // getStopwatch is a libary specific function to measure time in ms steps
      PORTA |= 1;  // port high
      sleep(angle);  // angle comes from outside the function, it is a parameter for this function. Sleep for this time with port high = pos Signal
      PORTA &= ~1;  // then pull down
      setStopwatch1(0); // reset the timer 
  mSleep(250); // Finally I have to wait for this time (in ms) when I send different angle parameters one after another, to let the whole system
                      // (µC + Servo and rest of program) to settle down, else I will loose signal steps due to incorrect timing (not nice, but works).
This function gets the angle as Integer from 7 to 24 and puts the Servo in corresponding position one time.
Maybe You can adapt it, good luck.
Attachments:
Servo.jpg ‏207 KB

Similar Messages

  • Servo motor control using CRIO+FPGA and 9477 digital out module

    Hello experts,
    I have a futaba BLS551 brushless motor digital servo (3 wires-+,-, signal). i also have a CRIO+real-time+fpga and 9477 digital out module. how can i generate servo signals using this module
    please help...
    Thanks,

    freemason,
    In order to control your servo motor with the FPGA and or DIO module you will have to write drivers to control your motor and drive.  While this is possible is an extremely complicated and time consuming process.  I would highly recommend you consider using the NI 9514 with soft motion as it will provide full servo functionality and is relatively easy to use.
    Regards,
    Sam K
    Applications Engineer
    National Instruments

  • DC Motor Control - AKD Drive and LabVIEW Softmotion

    Dear all,
    I need to control a DC motor, which basicly has to rotate from -15 degrees to +15 degrees with changeable frequencies/time period.
    The motor is used for inducing vibrations, thus the frequency and positioning must be (easily) controlled in LabVIEW.
    My setup looks as follows:
    cRIO 9082, NI 9514 C-Module, AKD Servo drive and an AKD DC Brushless motor.
    Until this point i have used a "Contour move block - repetitive" for controlling the engine using a table, however, this doesn't allow me to configure velocity and acceleration etc. Furthermore, I don't know what units the block inputs are (radians, degrees, units/rotations whatsoever) - See pictures for details on diagram and setup.
    Also, i would like the possibility to actually see and/or control a PID-controller using the feedback option.
    So, i short, i basicly want to:
    - Control the positioning of my DC motor (from -15 to +15 degrees).
    - Control the motor using a PID controller (not necessarily needed, but i would like the possibilty)
    - Control the velocity, acceleration, deceleration and frequency/time period.
    Thanks in advance - looking forward to some good answers! 
    Have a great easter holiday.
    Best regards,
    Jzaulich
    Attachments:
    Motion and error.PNG ‏20 KB
    Project tree.PNG ‏22 KB

    Hi Anders,
    Thanks for your reply.
    I have the softmotion module installed and working - thats not the issue.
    However, at the moment i'm using the "countour move" example provided with the SoftMotion module.
    It works fine, however, it doesn't allow me to change the system too much and the unit of the input is not denoted anywhere (radians, degrees, revolutions etc.).
    As i am all new to both LabVIEW and SoftMotion there's obviously a lot of obstacles.
    I would like to model the motor control using a PID regulator with the position as input - is this possible, without making it too complex?
    Best regards,
    JZaulich.

  • Could someone tell me how to control a small dc motor by using labeled and a NI 6008 daq. The motor is adjustable by using a pot that ranges between 0-V if that is of any additional benefit

     Could someone tell me how to control a small dc motor by using labeled and a NI 6008 daq.  The motor is adjustable by using a pot  that ranges between 0-V if that is of any additional benefit.

    Read the second thread you have a link to. While both of these will produce PWM signals, the first one is a couple of orders of magnitude too slow to do anything useful in control the speed of a motor, what you would see would be the motor run at the full speed, then stop for a period, then run at full speed, rather than at the "average of on and off"  as the Pulse Widths will be very long relative to the motor's response. The second one has a better chance, IF all you want to do is run the motor. If there is any other calculations ...   Look at both and try and get an understanding of what they are doing. For PWM speed control of a motor you really need a pretty fast pulse width, and probably some filtering to smooth out the resulting "harsh" waveform, giving you the "average" voltage resulting from the PWM.
    Putnam
    Certified LabVIEW Developer
    Senior Test Engineer
    Currently using LV 6.1-LabVIEW 2012, RT8.5
    LabVIEW Champion

  • Dc motor control using myDAQ

    Hi,
    I'm building a DC motor control using myDAQ i have run into a couple of problem with the STOP button and the Max en Min speed. For some reason the waveform chart goes crazy i'm going to attach my  the VI file. 
    Project description:
    -An engine-ON-engine-OFF button
    -A control for faster / slower
    -A switch for left / right
    -A button once maximum speed (100)
    -A button once minimum speed (10)
    -An indicator of the instantaneous speed (0 - stop, 100 maximum)
    -An indicator for the direction
    Could anybody tell me why it happens and how to solve the problem?
    Thank you very much!
    Best,
    Istrael
    Solved!
    Go to Solution.
    Attachments:
    pulsgenerate Folder.zip ‏30 KB

    Hi iounathing i appreciate the reply it works better now i have fixed the start button issue and the crazy waveform chart.
    I think i'm missing something after falling edge and rising edge (if statement?) because when i turn the speedmeter to "0" or "100" the waveform chart keep sending low an high pulse. I wan't a high steady pulse by "100" and low steady pulse by "0" and in between low / high pulse.
    Regards
    Sorry for my bad english i'm from Aruba.
    Attachments:
    pulsgenerate Folder.zip ‏60 KB

  • I'm working on DC Motor control using DAQ. There is sufficient voltage output from DAQ but not current. What should i do so as to drive the motor

    I'm working on DC Motor control using DAQ. There is sufficient voltage output from DAQ but not current. What should i do so as to drive the motor. Could you suggest me appropriate driver IC using which this problem can be solved.
    Saravanan.T

    You really should use a DC motor controller to control a DC motor, look at the 754410 IC for a good example. You should be able to interface these to most DAQ devices.
    Alan

  • EMG based DC motor control using labview

    I have a project where i need to use my EMG data to control DC motor
    using labview.I've already got the EMG signal by using ADinstrument and
    import the signal to labview. The problem is i don't know how to connect
    the signal with DC motor. This motor will start to move when it detect
    the signal exceed certain value and stop when it less that value. I'm
    still new with labview and i'm using labview 8.0. Can someone help
    me?thanx

    Please check out our Biomedical User Group - there are similar project discussions going on there and links to the NI Biomedical Starter Kit - a free download for doing biomedical data acquisition, signal processing, and other tasks.
    Steve
    Visit the NI Biomedical User Group at:
    www.ni.com/biomedusers

  • FPGA programming for motor control using free downloadable IP cores for PWM and Quadrature encoder interfacing

    Hi,
    I have a cRIO-9014 with a NI9505 DC brushed servo drive module, and I would like to program the FPGA for PWM and Quadrature encoder interfacing using the intellectual property IP functions mentioned in the "CompactRIO Motor Control Basics Tutorial":
    Quadrature Encoder dX Method (FPGA, Use in SCTL).vi
    Pulse Width Modulation (FPGA, Use in SCTL).vi
    I made a search at ni.com/ipnet but I couldn't find them.
    Where can I find free downloadable IP cores for PWM and encoder blocks to include them in my FPGA interface program?
    Thanking you in advance,
    Manuel
    Solved!
    Go to Solution.

    Found by myself (google search!) at:
    https://lumen.ni.com/nicif/us/codepowelecguide/content.xhtml

  • Motor control using labview

    I'm new to Labview. I just installed a new labview system with analog output.
    What electrical component do I need so that I can power a decent size motor with labview output? The signal from Labview is only enough to power a tiny motor. Well, the only thing I know is to amplify its voltage using opamp, which doesn't do much since I need to increase its power.
    I don't have good electrical background, but I'm trying my best to learn.....
    Please help experts.

    MrCoolMan-
    This depends on several things.  I have a few questions about your application:
    1. What National Instruments Hardware are you using to control your motor?
    2. Are you using a Stepper or Servo Motor?
    3. How much power does your motor require?
    4. How are you planning on controlling your system?
    5. Does your motor require an analog or digital signal?
    The answers to these questions will be a good way to get started with your application.
    Regards,
    Mike S
    NI AE

  • A/C three Phase motor control using 1/4 bridge Load Cell output and a USB 9172 Daq

    NI Assistant,
    I am tasked with setting up a Motion Control using two each OMEGA LC712-100K, -50K and -10K load cells to monitor the cable tension on six A/C motor driven winches. I also need to Monitor and calculate a Moment as well as the load slope for Load verses Time.
    I have zero time to develop and I have searched your databases for existing Motor Controls to modify.
    Should I use Case Structures and then place them in a while loop?
    I setup a drawing in Word to visually define the task.
    Signed,
    Patrick Murphy
    Attachments:
    Layout for Testing Spars.docx ‏15 KB

    Hi Patrick,
    The reason why the Motion Control examples will not work for you is beacuse they are meant to be used with the NI Motion boards. Since you are using DAQ boards, the examples are probably not going to be able to help you too much. However, there is one example on the community that might be a place for you to start. 
    pmurphy wrote:  Should I use Case Structures and then place them in a while loop? 
    What exactly do you mean by this? What do you want in the case structure or while loop?

  • Servo motors, rpm measuremen​ts and accelerome​ters

    Hello reader,
    Please excuse my question if it seems trivial but I am an undergrad trying to make LabVIEW work! We are running LabVIEW 8 and plan to use USB-6009 to make the measurements. I have read that this device isn't the best for control tasks. Any suggestions?
    For our experiment, we wish to have six controllable spinning cylinders attached to servo motors or stepper motors, which ever works the best. Each cylinder will be spinning at a set rpm which we wish to measure the desired rpm versus actual at all times. If possible, we would like to have an accelerometer functioning as well.
    I was wondering if this is possible with LabVIEW. If so, does anyone have any suggestions on how one might do this?
    Thank you very much for your time!
    -I. Fritz

    ifritz,
    there are several  considerations for choosing a servo or a stepper:
    Inertia of the cylinders
    maximum rpm values
    maximum acceleration and deceleration values 
    The maximum velocity for stepper motors is typically 3000 rpm. At this velocity the torque that the motor can provide has decreased to a small fraction of the specified maximum torque.Stepper motors have very limited capabilities to compensate following errors, so you need to calculate carefully the required torque at a given velocity and compare these values with the motor specs. Additionally you need to make sure, that the ratio between the motor's inertia and the inertia of the load is not too low. To avoid torque reflections this value should be somewhere in the range of 1:1 and 1:5.
    If you find a stepper, that is a good match for your application, the difference between commanded speed and measured speed should be very close to zero (except potentially some micro-oscillations).
    If you need higher torque and/or velocities and dynamic following error compensation, a servo motor should be a better choice, but you will have to tune the system which makes it a bit harder to configure the system.
    In any case the USB-6008 is the wrong choice for the control task, as it's not fast enough and can't be used in real-time control applications.
    Depending on the type of your feedback signal, it might be used for your measurements, but I also doubt, that this is a good choice. According to your post, you need to compare commanded velocity and real velocity. This implies, that you have access to the data of the trajectory generator and that you can acquire these data at the same rate as your feedback signal. This requirement conflicts with most of the available motion control units in the market. The minimum system that could meet this requirement is a real-time system with one ore more PCI or PXI multifunction DAQ  plugin boards (depending on the number and type of output channels that you need to control the motors) and optionally (recommended) the NI SoftMotion Development Module.
    Depending on your accuracy and speed requirments there might be also other solutions, but with the USB-6008 you are definitely on the wrong track.
    Kind regards,
    Jochen Klier
    National Instruments

  • Communication with motor control using RS-232

    I need to use labview to communication with a stepper motor drive using the serial port RS-232. Could someone please get me started I'm not sure if a should use VISA or instrument I/O. And if I use one of those, how would I set it up?

    Hi Phil,
    Outside of LabView, how do you communicate with or control the motor drive?  If you are able to use software like HyperTerminal or Procomm, then using the VISA serial communication tools will be the simple way of implementing your solution.
    Here are some links which may provide clues on how to proceed.  You can also do a search on VISA Serial communication.
    Happy wiring!!
    JLV
    LINKS:
    Link 1: Although this one talks about an error, it does provide instructions on how to setup the VISA session:
    http://forums.ni.com/ni/board/message?board.id=170&message.id=99660&query.id=0#M99660
    Link 2: Here are some examples: (good starting point):
    http://forums.ni.com/ni/board/message?board.id=170&message.id=65873&query.id=0#M65873
    Link 3: more info:
    http://forums.ni.com/ni/board/message?board.id=170&message.id=86971&query.id=0#M86971

  • CRIO motor control using AMC Drive

    Hi
    I am trying to setup a simple DC motor control system with cRIO-9081, NI 9401 and AMC PWM servo drive 12A8.  Can someone please tell me if this AMC drive is compatible with my other NI products?  Do I need anything else to setup a simple closed loop speed control for a small DC motor?  Any advice or example is very much appreciated.
    Thanks

    Hi SunnyX,
    It seems like your servo drive is expecting an input of +/-10V analog.  Are you able to confirm this in the device manual?  If that is correct, you will not be able to generate the necessary signal with the 9401.  You will need another module that you can program to output this signal such as the 9263.  
    You could also consider using the modules designed specifically for motion control and the SoftMotion Module to simplify the motion control programming.  Please let me know if you have any additional questions or comments!  Thanks.
    Regards,
    Kira T

  • Servo Motor Control

    Hi all...
    I'm working with the AT-MIO-16E-10 Board,
    and I use its 2 counter (0 and 1) to control 2 servo motors, when I
    using them to generate continuous pulse, both motors can move
    continuous. But my problem is, when I generating a finite pulse train,
    only either 1 motor can move(ie. no of pulse=10000)...why and how can I
    control 2 servo motors by this board?

    sushma:
    You currently have 4 other threads asking help for control of a stepper, one of which you said you had a working solution. Now you are asking about servos which operate totally different from stepper motors. Please keep discussion on one thread and include what hardware you have to work with (motor driver, motor, DAQ card) so that others may help in an efficient and timely manner.
    Thanks
    ~~~~~~~~~~~~~~~~~~~~~~~~~~
    "It’s the questions that drive us.”
    ~~~~~~~~~~~~~~~~~~~~~~~~~~

  • Brushless DC motor control using NI PCI 6251

    am doing my project Speed control of a sensored Brushless DC motor. am using NI pCI 6251 daq. now my motor is running.but i dont know how to calculate the speed. in BLDC motor, hall sensor is attached. can you send me the sample program for calculating the speed and to give as a feedbackk

    Will you please sent me VI model of BLDC ?
    my mail id: [email protected]

Maybe you are looking for

  • How to loose a soccer game by breaking the rules all the time...

    Hi All, I have a requirement in which changes to Moving Average price ( MAP) needs to be send to another legacy system through custom MATMAS IDOC. Now when I make a change to MAP through MR21 or MM02 these changes are written in BDCP table and a chan

  • Error playing from iTunes on computer to Apple TV after updating to iOS 7

    I updated all of my devices (iPhone 5, iTunes on computer, iPad 3 and Apple TV 3rd generation) when iOS 7 was released last week. Since then I cannot play any media from iTunes on my computer to the Apple TV. The iPhone and iPad work great (music, vi

  • Approve PO & SC Split

    Hi SRM experts, I have two questions: 1. I have a role of administrator we are using ECS4.0,I want to approve the PO made by one of the requitioner but while using the SWIA transaction and Completing it manually it is not getting approved. But using

  • Count-parameter doesn't work

    Hi there, I'm currently developing against the ACS4 webservices andgot some problems with the count parameter. As you can see I added the element limit with start and count in the request-XML. "start" does exactly what it should do (acting as an offs

  • HCM processes & form- a line is displayed in portal instead of Adobe forms

    Dear FRIENDS, In HCM PROCESSES And FORMS , when we run a process, adobe form is not displayed. In place of that a single line is displayed. When  I  implemented the SAP note 1334453 it gave dump in portal saying ASSERTION CONDITION WAS VIOLATED. Then