Brushless Motor Commutation using cRIO 9076

I need some help as I trying to find a way to do motor commutation.
I am developing a closed loop control system that consists of an applimotion motor (UTH-100-A-25-A-x-000) and AMC Digital Drive (DPRALTE-020B080) on CompactRIO 9076 FPGA Real Time Controller.  The motor does not have hall sensors.  Any suggestion on how to do motor commutation using this FPGA device is appreciated.
Thanks

How difficult it will be will depend on how complex those interfaces are.
If the encoder interface is simple, for example a clock and data pin that returns only the position, then writing the code to talk to it will be pretty straight forward.
Some absolute encoders use very complex protocols. I can't tell you exactly how hard it will be because I don't know this encoder.
I would expect that writing the analog position feedback to the drive will be easier but I don't know exactly what the drive is expecting either. You wrote earlier that the drive manufacturer told you specifically that the drive would work with analog position feedback and no hall sensors. I don't see how that would de done from the datasheet. You need to be sure that this is true because otherwise this approach will be impossible.
You should start by tackling just the encoder half of the problem. Hook up the encoder to your DIO module and start trying to query it. I hope you have more information about its interface than what is found in the datasheet- otherwise you would either need to contact the manufacturer or do some experimentation.
Give it a try and if you run into specific obstacles then we can help you with those.
BTW- The easier solution is to throw money at the problem and buy motors, encoders, and drives that are compatible with each other. For example, NI sells motors and cRIO modules that can drive them, including brushless. At that point the software is just opening an example and adding your own position setpoints.

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

  • Problem in data acquisition for cRIO-9076 wth c series drive interface module 9516

    I am using LabVIEW for my project i.e., the speed control (using PID) of a motor and want to create a vi for the same.
    The specifications of the products being used are as follows:
    1) Motor: AKM24F (dc motor)
    2) CompactRIO: cRIO-9076
    3) C Series Servo Drive Interface: NI-9516
    I am facing problem regarding the real time interface between the motor and PID block in labVIEW i.e. in the data acquisition part to be specific. Please suggest a way in which I can successfully acquire the analog data(speed) from the motor and vice versa in the vi.

    What is the priority of the VI you're running?  I'd be concerned that maybe you've starved out the ethernet transmit thread or something.
    -Danny

  • 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]

  • Need some info about Brushless Motor control

    Hi
       I am new to motion control and I am planning to control a Brushless Servo Motor. What I understand from  the motion control tutorials is that I need to use a high performance controller with a third party drive to control a brushless servo motor. Can anyone let me know if thats right and also help me out in finding some more information about Brushless Servo motors and how to control its motion.
    Thanks,
    Sada

    Sada,
    "Do u know where I can find some detailed information about controlling a brushless motor so that I can decide which of the two options to follow?"
    Servomotors
    The NI-Motion users manual has a section on brushless servo motors...
    NI-Motion User Manual
    The 7350 help file (the only Motion boards that can provide internal commutation) has a section on brushless servo motors.
    NI 7350 User Manual
    In almost everycase I am aware of, you will need to buy a UMI to interface with a brushless motor drive (the only case in which this wouldn't be true is if the Drive manufacturer created a drive specifically to cable directly to an NI Motion board).
    Feel free to ask more questions,
    Lorne Hengst
    Application Engineer
    National Instruments

  • How to make a NI PCI-7352 Controller to drive a DC Brushless Motor

    Hi everybody,
    I want to control a DC Brushless Motors.
    I understood that I have to use a NI PCI-7352 Controller and one of the following interfaces- NI UMI-7772, NI UMI-7774, NI UMI-7764 Series.
    Can anybody tell me what kind of a third party driver I have to use to control a DC Brushless Motor?
    Thanks,
    Vassil

    Vassil,
    Brian's answer describes the recommended way to drive brushless motors with a 7350 board. Still, some types of brushless drives require external commutation. The 7350 also can provide commutated control signals. For more information please refer to this document.
    Best regards,
    Jochen Klier
    National Instruments

  • Simple straight line motion control with brushless motor and encoder/mi​croswitch

    I want to go build a motion control system/program using labview. I have a brushless motor and a controller and a National instrument DAC (NI USB-6009). This is how my system looks like: receive an input signal 4-20mA, this should be converted to 0-5V for the controller for speed, controller should move motor till it hits micro switch. The micro switch/encoder should generate a signal (5V) back to shut the controller. I want to record the position of the motor in labview. How do I do this? How do I set the system up? Thank you in advance

    Controller from anaheimautomation: MDC151-050301
    Motor:BLWSG234D-36V-4000-R3     
    Controller and motor go together.
    The input signal for the system will be 4-20mA. Using this signal I will correlate it to a specific voltage which will drive the speed of the motor. This will displace the lead screw linearly. I will have a microswitch that will be triggered by screw and will relay a signal to shut the motor. I want find a way to record the position of the shaft/leadscrew at that specific point. I want to identify a home position, halfway position and full length travel position. I will use 3 swiches or 1 switch in three positions to identify all these points.
    My end result should be whwn I turn on the system or start the program It should detect whether it is at the home position, if not travel to home then respond accordigly given an input signal(4-20mA).
    How will I program such on labview...finding all the right icons to record the data is such a mess for me since i'm a beginner.
    Thanks

  • Continuous Data Logging with NI 9236 an cRIO 9076 with FPGA

    Hey all,
    i'm a beginner in LabVIEW/FPGA. My goal is it to
    continuous acquire and log data. I've a 9236, CH0 is
    connected to a strain gauge and the cRIO 9076.
    I've written a code and I see the incoming data on the FPGA.vi.
    On the Host.vi there is no outcoming data out of the FIFO.
    There is no error messages or an error during the compilation.
    Do I have a timing problem? Where ist the big mistake
    Thank you!
    Attachments:
    1.jpg ‏98 KB
    2.jpg ‏71 KB
    4.jpg ‏337 KB

    In your first image one problem is that you are starting the module on each iteration of the loop.  I can't tell how your FIFO is configured, but take a look at the example "Hardware Input and Output->CompactRIO->Module Specific IO->Analog Input->NI 923x Continuous DMA.pvproj.  I don't know which LabVIEW version you are using but I found this example in 2012.

  • New to NI cRIO 9076

    Hello everyone!
    i am completely new to interfacing NI modules with labview. i interfaced cRIO 9076 through ethernet, installed all the softwares (NI RIO, NI RT etc). it is getting detected in NI MAX. but  all it shows is "cRIO is in safe mode( no softwares installed)" and status LED blinks two times indicating trouble with software. 
    how do i configure the device. what are the things to be done to use cRIO.?
    PS:i also have gone through the getting started guide from this link
    http://www.ni.com/gettingstarted/setuphardware/compactrio/
    Thank you!

    i have installed everything from the LabVIEW evaluation CD. i have also checked that all the necessary cRIO softwares are installed. 
    i use 2013 version of FPGA,NI MAX and RIO
    OS is Windows 7
    when i check the NI distributed system it says i have attached modules at port 1&4(in screenshot). so i guess there is no problems with the cRIO.
    Attachments:
    Distributed system.JPG ‏67 KB
    national instruments softwares.JPG ‏123 KB

  • Combine cRIO 9076 and cRIO 9081

    I have two FPGA real time controllers: cRIO 9076 and cRIO 9081.  Due to not having the latest version of LabVIEW (2011), I am unable to use cRIO 9081.  Since cRIO 9076 has only 4 slots for the modules, I am thinking of using cRIO 9081 as a slave just to add more modules on its slots.  Will this work?  If so, how can I connect cRIO 9081 to cRIO 9076. Any suggestion is appreciated.
    Solved!
    Go to Solution.

    Hello ExcelX,
    Unfortunately, there is no meaningful way to interface with the 9081 without having the correct versions of LabVIEW (at least 2011) and NI-RIO (at least 4.0). It does run windows, so you could in theory boot it up in Windows and attach a monitor to it, but you wouldn't be able to run any code on it.
    You could download the trial version of LabVIEW 2011 and use it with your 9081 for thirty days. But I recommend just upgrading to LabVIEW 2011 - the 9081 is a powerful (and expensive) CompactRIO.
    Colden

  • CRIO 9076 AI Sampling Problem

    Hi,
    I have a question about the NI 9223 samping rate in our cRIO 9076 system.
    Since we are hoping to samping at a rate up to 500K or 1M,  we are now using the user controlled I/O sampling.
    Right now, we are sampling at 500K (2us). But I got a tick count of 99 ticks (around 2.5us) for the sampling node only.
    Should I be expecting so many ticks for the sampling block? Did I do anything wrong?
    Thank you so much!
    Solved!
    Go to Solution.
    Attachments:
    problem.JPG ‏399 KB

    Hi hang-up,
    It looks like you are specifying the loop rate for the entire while loop you are in, and not just that one specific part of code.  Because you have your loop timer controlled by an front panel object, it is possible that the code compiled, but if you change the loop time to a low value, the code cannot complete in time.  I would suggest that you isolate the acquisition you are trying to do in it's own loop so that it can run at full speed.
    Additionally, in order to get the full MS/s acquisition, you are going to need to architect your acquisition.  I would encourage you to check out the example code in our Example Finder for the NI 9223 User Controlled II Compositionally for the best way to get these maximum acquisition rates.  Additionally, depending on how you are going to be exporting this data from the FPGA, your ART controller may not be able to handle a sustained MS/s throughput.
    To explicitly answer your question, I suspect that because you are trying to complete a large loop in a short amount of time, the FPGA cannot complete the task in time, so it defaults to a rate that can be better handled.  For the control you are looking for, I would encourage you to move your application over to the architecture found in the example project to get the behavior you are looking for.
    Ben N.
    Applications Engineering
    Certified LabVIEW Developer

  • CRIO 9076 disconnect​ing

    I am attempting to use a cRIO-9076 with the NI 9512 and the NI P70530 stepper driver. However, I am having difficulties keeping the 9076 connected to my host PC. I've read the forums on this problem before, but those answers did not help solve my problem. The cRIO will connect when first powered on or reset, and will be visible in MAX, but when I try to view the attached devices in MAX (e.g. NI-9512 module), the cRIO will disconnect. 
    I also cannot connect to the device in LabVIEW at any point.
    I am using LabVIEW Real-Time 11.0.1 on the cRIO, and also Real-TIme 11.0.1 on the host PC (LabVIEW 2011 SP1 f2).
    Any suggestions are appreciated.
    Thank you,
    Enan

    Hey Enan, 
    Thanks for posting on our boards. You posted on the LabVIEW boards which is good, but I think you will probably get more responses if you post on the boards that are for the cRIO and RealTime stuff. 
    Here is that Board: Real-Time Measurement and Control [cRIO, R Series, FlexRIO, sbRIO, GPIC]
    That board is frequented by more people that interact with the cRIO and RT more than just the LabVIEW board.
    When you post there, I would also add what your OS is and what bit OS you are using. It might be helpful!
    Thanks for posting!
    Douglas C.
    Applications Engineer
    National Instruments

  • DC motor control using NI 9401 and DC motor driver

     i am using cRIO 9073 ,NI 9401,DC motor and motor Driver, I have attached my VI , i am acquiring  two signals which i represented with  1 and 2 in my attached block and caluclating their amplitudes and comparing them individually with a set threshold.
    1)when signal 1 condition is true DI0 and DI1 should be true and false respectively so that motor rotates clockwise if the condition is false no movement that is DIo and DI1 should be 0 and 0
    2)coming to signal  2 when its condition is true DI0 and DI1 should be false and true so that motor rotates anticlock wise direction if the condition is false
    no motor movement i.e DI0 and DI1 should be 0 and 0
     Plese give me some  solution i made two case structures for the two different signals but my motor is rotating only in one direction and it is just vibrating.
    Solved!
    Go to Solution.
    Attachments:
    case structure.JPG ‏43 KB
    case structure.JPG ‏43 KB

    sir its working now
    Regarding oscilation 
    i am acquiring two signals at a rate of 1800 samples per second i.e signal 1 and signal 2, i am caluclating RMS for both the signals for every  1800 sample length ,when  signal 1 RMS value is greater than threshold it should give 1 and 0 for DI0 and DI1 same thing for signal 2 but  0 and 1 for DI0 and DI1.both cases true not possible as i mentioned earlier.
    the problem is  if RMS is constant and satisfies the condition the motor rotates perfectly without disturbance but  my RMS value keeps changing as i am acquiring the signal continuously and the signal also has a no constant amplitude  . that time my motor just rotates with disturbance.
    (how can i terminate the single case execution which you have mentioned earlier) 
    Attachments:
    code.JPG ‏71 KB

  • Labview brushless motors

    I'm developping a system with brushless motors. I'd like to know where I can find libraries with function for this control? Do you know some company that sell these motors and they have a good performance with Labview?

    You will most likely need an interface between the computer and the motor. From my experience, which is fairly limited, these brushless motors are either driven with an analog signal or a PWM signal. The voltage input and driving current requirements can be quite different. If you can drive this motor with a analog signal then a multifunction DAQ card would probably work. The current that most DAQ cards can push is very small (around 20 mA max). If you need to drive it with a PWM signal you will need a couter board of some form like a NI 6602. There are also motor controller out there that are easy to use. If you use a DAQ board, the LabVIEW VI you would use would be the NI-DAQ VIs. I would do the following:
    1.Spec out the motors that you want to use
    (input type and power requirements).
    2. Once you nail down your specs give a call to one of the NI Sales people (http://sine.ni.com/apps/we/nicc.call_me?p_action=country&p_lang_id=US). They will be able to tell you what type of offering NI will have to drive this motor.
    As far as companies that sell brushless motors. I don't have any opinions. Maybe other in the forum will.

  • I can not find NI cRIO-9076 in Remote System

    I can not find NI cRIO-9076 in Remote System. How can i deal with it? The Status LED is on every couple seconds.

    It must be activated before Apple's tracking system will recognize it. I just tried your SN and that was the message I got from https://selfsolve.apple.com/wcResults.do.
    I suggest editing your post and removing the identifying information in it, as millions of people can read these forums and not all of them are completely honest.

Maybe you are looking for

  • POP-UP AD ISSUES whenever I access a new Safari page/tab. The usual blue links have turned green with a double underline. Safari is now annoying the S**T out of me, please help.

    Was trying to download a torrent app and somehow accidentally installed an app that allows pop up windows to appear whenever I open a new window or tab in Safari. The usual blue links have all turned green with a double underline and whenever I hover

  • Is FF 3.6.13 a 32 or 64 bit browser?

    I have Windows 7 64 bit. I cannot play AVI videos now. Some suggestions were to convert the AVI to WMV format, or to fix the problem with FF 32 bit for Windows. I can't seem to find that information. I read that FF doesn't have a true 64 bit browser

  • Blocking certain cost center in MIGO/MB1A

    Experts- We have one cost center defined specially for transactions going through MM interface. We are using 201/202/161/101/122 movement types in interface. We donu2019t want this Cost center to be used for goods issue in MB1A, MIGO etc. Are there a

  • Errors being used by a bean in wls8.1

    i have many ss ejbs running in wls 6.1 under domain1. i have one ss ejb (called Submit) running in wls 6.1 under domain2 which makes calls to the beans in domain1. this is working fine. i'm migrating domain2 to use wls8.1, and am getting all kinds of

  • Things Missing in C2-02

    Bought this phone,is reasonably good for its price,could be better if the following issues were taken care of. 1)Touch Screen- While messaging there is no option to write with the on-screen keypad. 2)Brightness cannot be changed, 3)Music player. no o