Sensorless control DC motor based on mathematic​al model

Hi,
I have DC motor, I put together mathematical model and transfer function of torque, speed and position PI control too.
Can someone help me to implement it to real process? I need control real DC motor with H-bridge with sensorless method based on mathematical model. (using LW card 6211)
Thank you veru much.
Attachments:
servo_control.JPG ‏52 KB

Dear Džon,
First of all, welcome to the NI Forums!
In order to actually implement a control system, you will either need Control Design and Simulation Toolkit  ( http://sine.ni.com/nips/cds/view/p/lang/hu/nid/138​54 )
or you will have to calculate the inverse Laplace of your resulting function and implement the numerical model. 
By implementation I mean that you will most likely have to use numerical Integration.
How you should do it is the following:
Get the highest order of the outputs derivate to the left side of you equation -->      a_n * Y^(n) = ....
where a_n is your coefficient resulted to Y^(n), then divide by a_n so you have something like: Y^(n) = ...
after this you must integrate n times in respect to time. So you will have the y(t) resulting function in time domain.
From there you must implement the equation on the right hand side with numerical methods. At the end you will most likely have a DAQmx task or an Express VI to actually output your control signal. (for that please refer to the examples of analog output / PWM)
However, if you have access to Control Design and Simulation Toolkit. You may realise your system in a simulation loop as replicate your block diagram structure. (Please check examples installed with the toolkit) 
If you have a specific question then please feel free to ask, and provide as much detail as possible.
Best regards,
Peter
Peter L.
National Instruments Hungary
Applications Engineer

Similar Messages

  • Controlling Stepper Motor

    Hi All.
    I am pretty new to Labview, and am looking for some advice in controlling a set of two stepper motors.  I have some experience with controlling stepper motors, but previously I used Matlab to create a binary script that was read into Labview to create a motion that I desired for the two motors.  Now I am hoping to control the motors using coordinates read in from another system (not an encoder, but a completely different system).  I basically just want the motors to follow the X and Y coordinates as they are read into Labview from the other system.  Any ideas are appreciated.
    Thanks!
    Jacob

    By LabVIEW driver I'm ssuming you mean the DAQ drivers and I'm also assuming since you're using a DAQ to control the motors you don't have an actual motor controller which means you will have to write the code to perform the function of a physical motor controller.
    Since it sounds like you're starting with a pretty low-level interface, I would say the next step is to write a wrapper that lets you input a) Step Direction and b) No of Steps to make in the direction
    Then you could use that function within what will ultimately be your "motor controller" which will keep track of where the motor currently is based on previous steps, and use that to enable the use of an absolute position your high level input.

  • How to control the measure based on the related dimension.

    Hi Experts,
    In order to improve performance, I have created three kinds of time tables in DB,such as Year .Month, Day.
    Then import them into the physical layer in RPD, and combine them into one dimension in BMM.
    Actually, it has three level fact related with three time tables,so they are also dragged into one fact in BMM,and one column will be corresponding with three column derived from different Fact table in physical layer.
    So I want to know how to control the measure based on the related dimension.
    For example:
    when users drag the Year,Sales column, it will come from Year Dimension and Year Fact Table.
    when users drag the Month,Sales column, it will come from Month Dimension and Month Fact Table.
    when users drag the Day,Sales column, it will come from Day Dimension and Day Fact Table.

    Hi,
    Create a dimension Hierarchy, with Year >> Month >> Day Levels and
    Next Double click on Year Table LTS >> click on Ocntetnt Tab >> set as Year
    same way for Month LTS and Day LTS.
    So now when you select year column then server canknow which LTS to hit and Hits Year LTS.
    Mark If Helpfu/correct
    Thanks.

  • How do you control the motor in the continuous mode ?

    I use the NI 7334, I would like to create the program to control the motor in the continuous mode. please help me.
    Thank you very mich.

    Hellow water2006,
    Thank you for using our discussion forums.  In regards to continuous mode, are you referring to a constant velocity motion?  There are several examples on our website which will give you a good start on setting this up.  In particular the "Constant Velocity Move" example which is found at http://zone.ni.com/devzone/cda/epd/p/id/1206
    I hope this helps.
    Regards,
    Vu D
    Applications Engineer

  • How to use sinewave to controll my motor run automatically.

    Hello
    I am now tring to use a waveform(sinwave ) to control my motor run automatically .I am using  labview2010 and EPOS50/5. Is there anyone can give me your suggestion? Thanks in advance.The attachment is the program for my epos.
    Attachments:
    epos and sinewaveform.vi ‏34 KB

    PS: My program for epos can work, but I don not know how to combine the sinewave program with the epos program to make motor run automatically.
    Thanks your suggestion in advance.

  • How do I control the motors in a third party usb toy with LabVIEW?

    Any suggestions?

    Hi, if you are only wanting to control motors than you have a lot of options. Use the parallel port with a current driver, use the serial port and a micro to control the motor. If you want to interface the USB device than this is where to get started.
    http://digital.ni.com/public.nsf/allkb/42B604435E3F9604862565E20043CD30
    http://zone.ni.com/devzone/cda/tut/p/id/4478
    LabVIEW 8.2,8.6,2009...still learning

  • Assigning digital port to control stepping motor

    Hi
    I want to control optical encoder, DC motor, Digital camera, Stepping motor, Electric lamp using LabVIEW and Data aquisition card. I am
    facing problem in interfacing stepping motor to DAQ device and configuring the digital output port using measurement and automation explorer.
    I am attaching the document showing configuration of measurment and automation explorer. I want to assign four line digital port for controling
    stepping motor. I want to assign DIO0,DIO1,DIO2,DIO3 for stepping motor. But the signal is going to other ports as well. Please somebody help me
    out of this problem.
    Jayaprakash.
    Attachments:
    Measurment and automation explorer.doc ‏99 KB

    Answered on your other post.

  • Control analog output based on analog input

    Dear forumers,
    I am pretty new to the labview programming so excuse me if this was posted before.
    I use: Labview 8.5 + PCI 6229
    I want to create a real time feedback: to control analog output based on analog input. The task is very simple - if the ai1 (analog input 1) voltage is larger than a constant, then decrease the voltage of the ao1 (analog output 1) by a constant. Otherwise increase the voltage of ao1 by the same constant.
    All should work for 10 seconds.
    I have tried to implement this using 2 daq asistants and various methods. The problem is that I get the whole signal recorded from the ai1 ( 10 seconds) and then modified and released to the output (another 10 seconds). The execution takes 20 seconds instead of 10 and it is not realtime at all.
    Is it a must to make vi in "run continuous" mode to make it work ?
    Please help :}.
    I am attaching 2 examples.
    1. Main idea what I am trying to accomplish
    2. Very simple example that still does not work in real time simultaneously.
    Attachments:
    example-main.vi ‏180 KB
    example-simple.vi ‏147 KB

    nooto wrote:
    Thank you for your suggestion.
    I understand the simple arithmetic you are talking about. However I do not understand why it takes 20 seconds instead of 10 to complete the task. In other way to say - why it reads the whole input first (10 seconds) then write the output ( 10 seconds).
    Why doesn't ir read and write simultaneously?
    If I use Elapsed Time function - what feedback response time can I expect ? Is it good to use Elapsed Time if i need fast response time? In my application i would I need about 1 milisecond response time. Currently in the example the rate is 50 Hz, later I would like to change the rate to 1000.
    You simply don't understand the underlying paradigm of LabVIEW -
    dataflow. You have a dependency between the first DAQ Assistant and the
    second. The second simply will not start until the first finishes. There
    is no way around that given your condition that the output depends on
    what you read.
    If you want 1 millisecond response time then you will have to swithc to a real-time OS. Windows does not have that kind of resolution and there is way to much jitter.

  • How to control DC motor in a simulation loop??

    Hi,
    I am Xiaofei, a beginner of LV. We plan to use feedback control on 2 DC motors using Simulation loop. Now the question is: i am not quite sure if the simulation loop is only a virtual simulation of the system, or it can be used to control the real system. We will use 2 encoders to detect the actual postion of the motor shafts, and the decoding code works well in a while loop, as the attached VI. But we don't know how to make it work in a simulation loop. Whenever we put it in a simulation loop and click "run", there's no response  no matter what we do on the system. So if you know, could you tell me if the simulation loop is suitable for our application and what we can do to run the encoders in it? Thanks a million!! 
    Xiaofei

    Hi Xiaofei,
    Thanks for posting on the NI forums!  Can you tell me a little more about your setup?  What do you mean by Simulation loop?  Do you mean Simulation Module or Simulation Interface Toolkit?  What hardware are you using to control the motors and read the encoder feedback?  What kind of motors do you have?  Can you read the encoder inputs in LabVIEW when you turn the motors by hand?
    Thanks,
    Maclean G.
    National Instruments
    Applications Engineer

  • Control DC motor position

    Dear member
    I dont know how to control the position of motor, if inputing the Motor Driver Voltage into PWMA, I can only control the velocity of the motor, what should I do?

    Could you please provide some information on your hardware setup? Make, model number, required inputs etc.
    Also, could you please expland on what you mean by inputting driver voltage to PWMA? If you're having trouble controlling the motor, I recommend viewing the manufacturer's datasheet to understand the specifications of the drive/motor's input signals.
    Finally, could you please post the VI itself rather than screenshots.
    -Mike
    Applications Engineer
    National Instuments

  • How to use waveform to control the motor(EPOS2)

    Hello
    I am now tring to use a waveform(sinwave ) to control my motor in labview2010, I am using the EPOS50/5. Is there anyone can give me your suggeation? Thanks in advance.

    need more detail on the hardware (motor and data card) you are using. also What do you mean by using sine wave to control motor? 
    Kudos are (always) welcome for the good post. :-)

  • Using BNC2110 DAQ In Order to Control Stepper Motor

    So basically my goal here is to use LabView to control the direction and the steps of the stepper motor.
    I have BNC 2110 (connected to PC), Lin Engineering's 4218M-54P-04 Stepper Motor, and Lin Engineering's R701 Stepper Motor Driver.
    The specification documentations are attached.
    I know that the driver and the stepper motor are compatible.
    Is it possible to control the motor through Labview(PC) < - -> BNC2110 < - -> R701 Driver < - -> Stepper Motor, without the motor's own controller?
    An example of a controller for this particular motor would be on this website.
    I would much appreciate your support.
    Thank you.
    Attachments:
    4LeadBipolarSteppingDriver-linengineering--4218m-54p-04.pdf ‏652 KB
    DriverR701.pdf ‏379 KB

    Hi jhprks,
    It would appear that the stepper motor controller that you list communicates via RS-232 or RS-485.  You can make serial calls in LabVIEW using the Serial or VISA commands.  It could be something to look into.
    Further, we do have a multitude of ways to accomplish this with our hardware; here are a few resources to take a look at, with the first being an example of how to do this with a multifunction DAQ device:
    Using Software Timed Digital IO to control a stepper motor with DAQmx:
    http://decibel.ni.com/content/docs/DOC-6385
    Stepper motor control via Parallel port:
    http://zone.ni.com/devzone/cda/epd/p/id/3611
    High Performance Stepper/Servo control:
    http://sine.ni.com/nips/cds/view/p/lang/en/nid/10026
    Stepper Motor Theory of Operation:
    http://zone.ni.com/devzone/cda/ph/p/id/248
    Stepper motor Drives:
    http://sine.ni.com/nips/cds/view/p/lang/en/nid/3308
    Adam
    Academic Product Manager
    National Intruments

  • Powders dosing machine? Direct control of motors?

    Hi Everyone,
    I hope this was not posted below but I begin my worki with nxt and labviev and have some problem.
    I want to build a powder doser which consists of two powder feeders (driven by motors) and laboratory weight controlled by RS232.
    The aim is to be able to make precise mixtures in a way that weigh weights empty box, make tare, then one feeder adds some powder (A) weight checks how much was given- if not enough adds some more etc..etc.. then proceeds with powder 2 and make mixture ..
    The problem is that I know that I can write NXT program on labview to run NXT brick, but this would be quite complicated to use - the best way would be to take direct control over motor via NXT- so when I want motor to move few degrees it doesnt have to start program in nxt brick, just do it from LAbview program level... IS it possible ? Can I use NXT brick as a motor controller itself?
    Thanks
    Marek
    Solved!
    Go to Solution.

    Marek,
    This is possible both in the NXT Module 2009 and earlier NXT toolkits.  In 2009 you simply need to write your NXT code in a VI that is not target to the NXT (e.g. it is targeted to My Computer/Main Application Instance).  The NXT VI's know when they are targeted to the computer and automatically send Direct Commands to the NXT brick via USB or Bluetooth.  
    In earlier versions of the NXT toolkit you will have to use the NXT Direct VIs to accomplish the same task, which isn't as seamless as the new method but works just the same.  Please let us know if you have questions as to how to implement this.
    Cheers,  
    Mark
    LabVIEW R&D

  • Can I pass parameters from a dashboard via a dashboard prompt and presentation variable to publisher report based on a data model with select statements in OBIEE 11g ?

    I have a publisher 11g (v 11.1.1.7)  report with a single parameter. The report is based on a data model not a subject area.  I created a dashboard put a dashboard prompt and link to the report in separate section on the same page.  The dashboard prompt sets a presentation variable named the same as the parameter in the report. 
    The problem was when I created the dashboard prompt, it forced me to select a subject area which I did (though did not want to) and then I created both a column and variable prompts. But clicking on the
    report link completely ignored the value that I thought would be passed in the presentation variable to the report.
    Side note :  My report uses a pdf template for its layout where I have mapped the columns names from my data model to the form fields on the pdf form.  I noticed that if I create a publisher report based on a subject area, then I do not have the choice to choose a PDF as a template type for my layout.  (I only see BI Publisher Template as a choice). 
    I see some documentation online that suggest it could be done in 10g.
    Thanks
    M. Jamal

    Ok,
    I just tried that and it still doesn't pass anything to the prompt.
    I changed the prompt to an edit field and I made the following weblink but when i click the link from an account it doesn't put anything in the prompt and all data for all accounts is shown.
    This is the URL maybe I messed something up...
    https://secure-ausomx###.crmondemand.com/OnDemand/user/Dashboard?OMTHD=ShowDashboard&OMTGT=ReportIFrame&SelDashboardFrm.Dashboard Type=%2fshared%2fCompany_########_Shared_Folder%2f_portal%2f360+Report&Option=rfd&Action=Navigate&P0=1&P1=eq&P2=Account."Account Name"&P3=%%%Name%%%
    thanks

  • Function based indexes in Data Modeler 3.0

    Trying to create a function based index in DATA MODELER 3.0 but cannot find a way to do it. When I reverse engineer (import from DATA DICTIONNARY) an existing table that contains such an object, the index appears in the physical model as a regular index. I guess this functionnality is not yet available...
    Thanks.

    Hi,
    You can create a function-based Index by going to the Properties dialog for the Index in the Relational model (not the Physical model). If you select the Index Expression tick box, you can then enter the expression into the Expression text area.
    David

Maybe you are looking for

  • Issue with server startup - no errors, the logging just stops

    Hello, we are seeing the following logs in our second node instance of Weblogic. I have Wily and can see that the second instance (jvm) never comes up. Below is the log in it's entirety and as you can see, there is nothing after the line: <Dec 17, 20

  • Report Execution in background at user command.

    Hi, I want my program to run in background when the user selects a checkbox to run the program in background. can you please tell how to execute the program in background? regards, ravi.

  • Where can I find Geometry Invoke Node?

    Hi everyone I am trying to import or load an .stl format 3D image onto LabVIEW. I have found an example on how to do it and the link is https://decibel.ni.com/content/docs/DOC-6033. I try to do the same thing on my VI. However, I cannot find the Geom

  • InDesign CS6: "find" function doesn't work in "Open a file" dialog box

    in InDesign CS6, "find" function in "Open" dialog box doesn't work. Help?

  • Photoshop 8 vs Windows 7

    we are running photoshop 8 in a windows 7 environment, and are experiencing daily hangups, slow save and output times, and software crashs....are there any patches or hotfix downloads avail?  or maybe just tweaking?  I've search thru the "help" secti