I need to design fuzzy controller with pid control .

hi ,
I need to design fuzzy controller with pid control . to control   Dc servo motor i have NI DAQ PCI 6251 anyone help me??

ssaara,
Along with the shipping examples, here is a link to the PID Control Toolkit User Manual. Fuzzy Logic control is discussed in Part II of the manual, Chapters 5 and 8 are good starting points.
--Michelle
Instrument Control R&D
National Instruments
Instrument Control
Machine Vision

Similar Messages

  • Fuzzy controller with 5 inputs

    Dear
    I have two questions:
    1. Is there anyway to load or open the files of .fis using matlab in labview?
    2. I have fuzzy controllers with 5 inputs but why the fuzzy controller in labview is limited to only four inputs? Is there anyway to build a fuzzy controler with 4 inputs?
    Thanks

    Hey Eng.Ahmad
    I think it is possible to employ a 5th input for the fuzzy controller (or any number for that matter). It requires editing the (Fuzzy Controller.vi) and (Inferenz4.vi) In the second one the job is not very simple but I think it can be done. You have to add case5 to the case structure that creates all the 4 inputs (and it shall create 5 inputs after editing), you also have to make the big For Loop run 5 times instead of 5 etc... In the Fuzzy Controller.vi you only have to add one set of inputs similar to others. 
    I am sorry but I have to admit straight from here that I have not tried to do this as I still do not know how to use this whole "fuzzy business". But if you attempt to do this, please post a reply with the result. 
    Message Edited by RafalM on 05-06-2009 10:08 AM

  • Level Control with PID Control & Pulse-Width Modulation

    Hi all,
          I have attached my program which I'm having trouble wiring up in the block diagram.... I'm fairly new to labview, but basically I have a level control project with an analog input cistern arm turning a pot for my test tank (configured as DAQ assistant voltage analog i/p) and a pump working off a reservoir (configured as DAQ assistant voltage digital o/p). My electrical side of things is working correctly and I have tested both DAQ assistants I/O's successfully off a basic program, minus the PID & PWM... I found a simple PID control subvi which I think I have wired up correctly, apart from the output variable... I also found a bit of code for PWM using the square waveform vi (far right side of the program) which I have tried to include in the program, but I've been unsuccessful with that. The ideal operation i'm looking for with this project is to be able to enter different values for the setpoint, for the PID to kick in to find that setpoint each time using the PWM to drive the pump, which has a flow rate of 13L/min. I have a manual valve to release water from my test tank which I can set accordingly.
    My questions are;
    - How do I connect the 'output variable' of the PID subvi to my DAQ assistant digital output(both DAQ assistants are set at 1 sample on demand)?
    I have a 'number to boolean array' function, but this gives an error saying that the number of tasks generated are not the same...
    - How do I wire up the PWM bit of code? Do I need to include the 'error in & out' tabs?
    -Am I on the right track with this program or am I way off the mark?!
    Any feedback on this would be greatly appreciated. Thanks for your time,
    Richie
    Attachments:
    PID-RichLevelControl.vi ‏91 KB

    Rich-MechatronicsStudent wrote:My questions are;
    - How do I connect the 'output variable' of the PID subvi to my DAQ assistant digital output(both DAQ assistants are set at 1 sample on demand)?
    I have a 'number to boolean array' function, but this gives an error saying that the number of tasks generated are not the same...
    - How do I wire up the PWM bit of code? Do I need to include the 'error in & out' tabs?
    -Am I on the right track with this program or am I way off the mark?!
    You're a bit off track.  You need the output of the PID to go into the PWM generator, and the output of the PWM to be written to the digital output.  Right now you have the output of the PID connected directly to the Digital Output in a way that won't work, and the PWM generator hanging off the side not really connected to anything.  Also, the PWM generator isn't really going to work since you're generating it at the same frequency as your PID loop runs.  Try a simpler algorithm such as on/off control first and see if that works for your system.

  • Need BPEL Designer to integrate with jDEV 11g

    I am using jDeveloper 11g:
    Oracle JDeveloper 11g 11.1.1.0.0
    Studio Edition Version 11.1.1.0.0
    I have BPEL Process manager 10.1.3.1 but it did not come bundled with BPEL Designer. I am unable to use jDev 11g as the designer for BPEL Process Manager. I tried to install this extension: Update for the Oracle BPEL Designer and related Integration Tier components. Build:
    PCBPEL_MAIN_GENERIC_070328.0800. But the install errors out:
    oracle.bam
    Error: Not loaded: Missing dependencies: oracle.bpm.modeler
    oracle.bpm.ess
    Warning: Classpath entry C:\Oracle\Middleware\jdeveloper\lib\xmlparserv2.jar not found.
    Warning: Classpath entry C:\Oracle\Middleware\jdeveloper\j2ee\home\lib\scheduler.jar not found.
    oracle.bpm.modeler
    Error: Not loaded: Missing dependencies: oracle.sca.modeler
    oracle.bpm.rules
    Warning: Classpath entry C:\Oracle\Middleware\jdeveloper\lib\java\api\jaxb-api.jar not found.
    and so on.
    How do I go about sucessfully loading BPEL Designer on jDEV 11g?
    Please provide your input. Thanks.

    Are you an Oracle Employee using internal JDeveloper MAIN builds? If so please use the internal forums and not the external ones.
    http://myforums.oracle.com/

  • Need help Designing a Query -with RKFs and CKF or alternate

    Hi,
    Trying to create a query off a HR Headcount IC - to display number of top performing employees (based on appraisal attribute) by region and by function. The format is as follows:
    Created 3 RKF's in column structure where
    1RKF is KF "Employee Numbers" for characteristics restrictions of date range1, appraisal rating=1,2, employee status =active etc.
    2RKF is KF "Employee Numbers" for characteristics restrictions of date range1, appraisal rating=#, employee status =active etc.
    3RKF is KF "Employee Numbers" for characteristics restrictions of date range2, appraisal rating=1,2, employee status =active etc.
    1CKF is Boolean result of (1RKF OR (2RKF AND 3RKF)
    Was able to display correctly all top performing employees in the following format. When "Employee" was selected to row.
    Top Performer (CKF)
    Employee 1----
    1
    Employee 2----
    1
    Employee 3----
    1
    Employee 4----
    1
    Employee 5----
    1
    Employee 6----
    1
    Employee 7----
    1
    When tried to display the same by Region by Function or even by only Region (Row Char) it doesn’t work. Data is non-sensical.
    # of Top performers
    Region 1 -
    FunctionA----
    5
    Region 1 -
    FunctionB----
    2
    Region 1 -
    FunctionC----
    3
    Region 2 -
    FunctionA----
    4
    Region 2 -
    FunctionB----
    0
    Region 2 -
    FunctionC----
    7
    Region 2 -
    FunctionD----
    5
    Understand that the Boolean CKF is not working correctly. What am I doing wrong ? Please advice fix or alternates.
    Thanks.

    Hi Pradeep,
    not possible to use ranking since Appraisal rating is a characterstics not a key figure value. Any other suggestions..
    Thanks
    Arun

  • Control three interdependent things with pid control?

    I have 3 things (they are valves) that I need to control to set flows... but adjusting one of the three valves will affect how the others behave... basically they are all 4-20mA controls, but if one is moved the others will read something different.
    My question, I'm having a hard time thinking about how to control these three things, I need to be able to tell any of the three to go to a certain flow regardless of where the others are... is PID the answer?  If so, I need to tune them one at a time, and I don't know what to set the other 2 vlaves while I tune 1... does it matter? cause, whatever PID constants I get from tuning will be dependent on what the other 2 valves are at... or is there another way?
    much thanks!

    Hi Fibo,
    I've linked an article you can read through for a quick intro to MIMO control.
    Can I simulate MIMO models in LabVIEW?
    However, I wonder if this necessarily needs a MIMO model.  Regardless of how one valve affects the other, if you've got a sensor on each of your valves and implement PID separately on each one, then the relationship between the 3 valves is eliminated, is it not?  We've now got 3 single-input single-output systems.
    Message Edited by Tejinder G. on 03-29-2010 01:05 PM
    Tejinder Gill
    National Instruments
    Applications Engineer
    Visit ni.com/gettingstarted for step-by-step help in setting up your system.

  • Peltier control with PID

    Hello,
    I have a Keithley 2400 source-meter, and a Keithley 2010 multimeter. I measure temperature of a water loop with a RTD, and I measure its 4W resisitivity with the K2010.
    I can cool and also heat this water loop via a Peltier heat-pump. The applicable range is -1Amp < current < +1 Amp. So I use the Keithley source-meter to drive the Peltier in this range. Negative current cools the water, positive current heats.
    I have the PID tool-kit with LabView 2011.
    My only question is that, if I give  +-1 as range input to the PID.vi, is it a proper way to implement this task?
    Thanks!
    Solved!
    Go to Solution.

    Hi blokk,
    "ok. so this is not implemented in the Pid toolkit. So when the PID vi using negative output, I have to set the Kc to negative. ... Because it should change the sign of Kc as early as it switches range polarity continuously."
    You don't need to change anything, when the PID control is running. You have to set the Kc once to the correct value, that's it! Kc is describing the PID behaviour in terms of "higher output results in heating up and lower output means cooling mode"...
    "Should I alter the pid.vi inside?"
    Never ever change vi.lib VIs! If you really want to change them (that isn't needed here!), make a copy of the VI and change the copy!
    Best regards,
    GerdW
    CLAD, using 2009SP1 + LV2011SP1 + LV2014SP1 on WinXP+Win7+cRIO
    Kudos are welcome

  • PID Control motor DC 12v

    Hi everyone,
    I wanna control a 12v DC motor using PID control toolkit 8.2.
    - a close loop control system
    - using a DAQ model: NI USB-6008
    - how do make a DC motor speed control 12v with PID control
    Im stuck at getting pid.vi and i wanted to know what is the problem.
    pls help me on my problem, if can pls make an example VI for me
    Thanks !
    Solved!
    Go to Solution.

    Well there are a lot of things you need to do this, LabVIEW software being only a part. Firstly, most DAQ cards will not source sufficient current to actually power a motor, particularly a USB6008, so you will need some form of amplifier/power driver. For closed loop you will need some feedback to tell you what the motor rotation is, usually a slotted wheel with a LED and sensor (if this is a project for school or hobby one source you might look at is an old wheeled mouse). So with these two you have a way to drive the motor and then detect its motion. Then you can get to the idea of doing PID, which is taking the feedback (from whatever sensor you end up using) scaling it to match whatever you are using, and apply it to one of the PID equations to get it to match the target value.
    Putnam
    Certified LabVIEW Developer
    Senior Test Engineer
    Currently using LV 6.1-LabVIEW 2012, RT8.5
    LabVIEW Champion

  • RT Host VI does not communicate with FPGA VI with PID Discrete controller

    Hi. I am using LV 7.1 RT with PXI 7831R. While developing an application with a PID controller in the FPGA vi, I have run into the following problem:
    1.   After a successful FPGA compile, the code runs directly on the FPGA device and the PID controller works fine.
    2. After I switch to the RT and run the host vi, it shows no activity from the FPGA vi. I look at the while loop count of the FPGA (indicator named 'FPGA-count' in the snaps below)) and it shows 'zero'. I have refreshed the FPGA vi reference but to no avail.
    3. If i take out the PID related stuff from the FPGA vi, then the Host vi to FPGA communication works.
    I have attached snaps of a simplified version of the fpga and RT vi's. If anyone can help, that would be greatly appreciated.
    I also read that the PID control toolkit needs to be installed. It is installed on the host computer and shows in Automation explorer under LV 7.1. Does it need to be installed on the remote machine that is the RT controller as well. if so, then how to do that.
    Thanks
    Attachments:
    RT-frt panel.JPG ‏38 KB
    fpga-block.jpg ‏39 KB
    RT-block.JPG ‏35 KB

    It seems like the FPGA is not running for some reason when you are running the RT VI. Without having the actual VIs to look at I can only make a few guesses why.
    On the Open FPGA VI Reference make sure the option is set to Open and Run, not just Open. Right click on the node to check this option.
    On the RT VI, make sure that stop-FPGA is False before you start.
    On the FPGA VI, make sure that the default value for stop-FPGA is set to False.
    In the RT VI check the error cluster passed to the loop to make sure that there are not errors and the FPGA VI is actually running.
    If you are using the PID function on the FPGA, you do not need any additional SW installed on the RT controller. If you are using the PID function in LV RT then you do need to install the PID toolkit on the RT controller. This is done from MAX (Measurement and Automation Explorer) using the Install Software option for the controller.
    Christian Loew, CLA
    Principal Systems Engineer, National Instruments
    Please tip your answer providers with kudos.
    Any attached Code is provided As Is. It has not been tested or validated as a product, for use in a deployed application or system,
    or for use in hazardous environments. You assume all risks for use of the Code and use of the Code is subject
    to the Sample Code License Terms which can be found at: http://ni.com/samplecodelicense

  • Controlling a digital PWM output with a PID control - Need ideas

    Here is the scenario.
    Am using LV 8.6 to run a test stand.  I special product needs to be tested at certain levels of [brushless] motor power consumption (watts).
    The power consumption is manipulated by adjusting the PWM of the onboard controller using a pulsed logic signal. (using a counter/timer @ 20kHz tuning to between ~20 to 100% duty cycle)
    I then read the current from the primary power supply and calculate the motor power consumption. Then feed this into a PID function and I use the ouput value to adjust the PWM input up or down.  I am running the output through some math to get an adjustment that isn't severe so it doesn't just reciprocate the level from high end to low end.
    I am using the advanced PID function to try and tweak the control to be smooth and accurate.  It seems that even tiny changes in the PID values, specially the integral and derivative have a huge impact on the output.
    Another option I have used before and am likely to have to use on this is to be able to select a different set of PID (and perhaps other) values dependent on the wattage range I am trying to achieve. This may go further and also be dependent on the driving voltage.  I am using this technique to select PID values for a third party pressure regulator (Tescom ER3000) and it works very well. Depending on the pressure range I need to achieve, I use different PID values to optimize the response.
    Anyhow, I have attached the code and am just looking for any thoughts or ideas from anyone who has experience with the PID functions that might shorten my development time some.
    I could upgrade to the latest version if there is a justifiable reason that would help me with this particular condition but as it would be a change on the test system, I would have to perform some level of re-validation and I don't want to spend time doing that if I don't have to.
     Thanks for any assistance
    Doug
    Doug
    "My only wish is that I am capable of learning each and every day until my last breath."
    Attachments:
    Wattage Control Loop Trial.vi ‏20 KB

    OK, I decided to regroup a little on this.  I started by reviewing the basic approach of the Ziegler-Nichols formulas and found a short tutorial that in layman terms, gave me a process for the tuning.  I did indeed start out with no integral or derivative values and adjusted the proportional value up and down until I got a smooth change with virtually no oscillation.
    It seemed at this point, making adjustments to the Int. or Der. actually worsened my response. Even miniscule values in the range of .0001 - .0005 would have a detrimental effect.
    I also went through and did an iteration modifying the input to a percentage and the output from a percentage and it really ended up doing about the same thing as entering the set point directly and using my little math sequence to manipulate the output.
    Back to the root of things, by using just the Pro., I can get a relatively smooth, albeit slower than desired, transition to the desired set point.  This is as long as the motor [air pump] is under no loading.  As soon as I start to add load, I get significant oscillation at the beginning and it is much slower in finally leveling out.  Because I have to start and stop the pump as we3ll as open and close valves during the test sequence, there is a lot of load changing that occurs during the sequence and if my set point response for this variable is too slow, it affects the results of my other readings during the test (air flow, back pressure, etc.)
    I have not tried the built in auto tuning sequence yet but my gut tells me this will not work since I am intentionally modifying my process and conditions throughout the test.
    You mentioned that perhaps PID was not my best option.  I’m not sure what other options are available unless I create my own pseudo PID routine.  I could certainly do this but am not sure it would be as efficient as the built in PID functions.
    Making slow progress but still accepting ideas…..
    Thanks
    Doug
    Doug
    "My only wish is that I am capable of learning each and every day until my last breath."

  • PID Temperature Controller with myRIO

    I am interested in implementing the LabVIEW PID VI to create a temperature controller using the myRIO for a sous vide cooking apparatus similiar to this: https://learn.adafruit.com/sous-vide-powered-by-arduino-the-sous-viduino/sous-vide. I will be using a slow-cooker as the heating element; for the temperature measurements, I am using the DS18B20 one-wire temperature sensor; and to alter the temperature I am using a relay connected to the slow cooker.
    I have had success getting temperature measurements from the DS18B20 with the myRIO following the guidance of this thread: https://decibel.ni.com/content/docs/DOC-41626#comment-44403, however, I am having difficulty finding a starting place to learn how to use the PID VIs for the rest of the project. In a new VI file, I used the program I had used for the temperature readings as a subVI, and tried to connect its output containing the live numerical temperature measurements into the PID VI, but the live temperature measurements as well as the PID VI output are not being transmitted after running the program.
    Here are a few more specific questions:
    Are there any preliminary steps for creating a PID program to accept live measurements from a myRIO target (should the program be enclosed in a loop for continuous updating of myRIO measurements)?
    What information is transmitted at the "output" terminal of the PID VI?
    Is autotuning recommended for this type of application?
    How does the "PID Autotuning" VI differ from the "PID Autotuning (Temperature)" VI?
    I have attached the files I am currently working with: ("1-wire interface.lvproj" is the project file, "RT Main.vi" is the temperature reading program, "PID_Test" is the new PID VI file I am experimenting with).
    If the content in this post is not appropriate to what is expected to be asked in the forums (not specific enough, etc.), please let me know and I apologize in advance. Thank you for your time and assistance!

    Hello dpull,
    There shouldn’t be any particular configuration that needs to be done, for the PID vi to start using the PID VIs, and if you desire to continously acquire the data from the myRIO, then this within a loop might be appropriate.
    The output terminal transmits the control signal of the PID controller, so basically the action that would have to take place to take the desired value to the setpoint.
    As far as recommending autotuning, it mostly  depends on your application and the precision you need, it would always be better to determine the parameters yourself, but if you don’t require super high accuracy, then autotunning should be sufficient.
    The PID autotunning (Temperature) VI is used for processes that include a dead time, since it’s incorporated into that model, the other one is better suited for processes that don’t have dead time.
    As far as resources go for learning to use this toolkit, I’d recommend sticking to the examples you can find in LabVIEW and maybe the following manual.
    http://www.ni.com/pdf/manuals/372192d.pdf

  • Hi i need to design a notch filter for eliminating ECG hum..i am working with NI ELVIS work station...and LABVIE 8.0

    hi i need to design a notch filter for eliminating ECG hum..i am working with NI ELVIS work station...and LABVIEW 8.0. Unfortunately it needs an addon software "Digital filter design toolkit", which i dont have. Its urgent..can some 1 plzz help me out.

    Hi and Happy Halloween,
    Depending on the license you have for LabVIEW and the toolsets you have installed, you may be able to have a "notch" filter. I would search your pallet for "Bandstop" because a notch is a type of Bandstop filter. Or, you can make a notch out of a high-pass and a low-pass or you can use the filter express VI. If these VIs are not on your pallet than you probably only have the LabVIEW Base and thus, cannot use these options.
    Charlie M. CLD

  • Can fuzzy logic based controller be designed in FPGA of NI? The fuzzy controller is designed for controllin​g shell and tube heat exchanger.

    Please provide me some guidance for configuring FPGA with Fuzzy controller .Later with the same control algorithm dumped inside the FPGA will ber interfaced with the SHELL and Tube Heat exchanger.Thanks in advance!!

    Swg0101
    Thanks for sharing your details - it seems like we should focus on recovery of your system at this point.
    I've sent you a PM - I'll look for your private message response with your contact information and case details so we can look into this and get you some help.
    Best regards,
    Mark
    ThinkPads: S30, T43, X60t, X1, W700ds, IdeaPad Y710, IdeaCentre: A300, IdeaPad K1
    Mark Hopkins
    Program Manager, Lenovo Social Media (Services)
    twitter @lenovoforums
    English Community   Deutsche Community   Comunidad en Español   Русскоязычное Сообщество

  • I'm a Graphic Designer and Animator with a Mid 2012 15" MBP...Programs slowing need up grade

    Hey everyoe,
    I'm a Graphic Designer and Animator with a Mid 2012 15" MBP. My programs get REALLY SLOW, ToonBoom Harmony and Sometimes Illustrator, HELP! I upgraded my Ram to 16GB LONG time ago and it's made a big difference but still the stuff I make is semi complicated/detailed I can't imagine this is the strength of my MBP I refuse to accept that. WIth that said HELP ME PLZ!!! I have deadlines and I dont know what else to do! Steve Jobs my life is your hands right now man...

    Maz0327,
    if you boot into Safe mode, log in, and run your graphic design and animation apps, do they run just as slowly then?

  • Chromalox 6040 and 6050 temperature controller with RS485

    Hi,
     I have a Chromalox heater and the Tempererature controllers (6040 and 6050).  Both controllers has the RS485 hook-up.  I would like to know how to communicate with these devices.  The devices themselves can function as an stand alone units with PID controller installed. These devices can be used with automatic or manual control.  I would like to set it on automatic and control it from Labview.  I am currenlty using the Fieldpoints modules with Labview 2009. I have several questions: 1. can I wire the RS485 2-wire connector directly to the field point module?  2.  if I need an RS 485 converter, I will use the RS485 to USB.  Would I then just use the RS232 visa? 3.  there are two connection on the controller for the RS485, I am not sure how to wire that together as twisted wire.  I have looked at the forum on the subjects and find bits and pieces of info..  I would like more directions.
    Thank you,

    Sorry, I believe I convoluted the issue here at hand.  Let me retract my earlier statement and say this.  Your FieldPoint module has the RS232 port on it, where you can write serial commands out to the device (I mentioned using Optomux earlier, while this is possible, upon second thought it is unnecessary).  You can then have the RS485 port write out to your temperature controllers.  Is this what you are trying to accomplish?  You should be able to wire the connections directly to the FieldPoint module.  Sorry for convoluting the issue earlier.  Does this answer your question more closely?  You mentioned using an RS485 to USB converter, where does that come into play?  I understood that you wanted to go from the FieldPoint RS485 port to an RS485 port onthe temperature controller?
    Regards,
    Shane C
    Applications Engineer
    National Instruments

Maybe you are looking for

  • How can I delete all double verisons of my pix in iPhoto ?

    all my pix in the iPhoto albums are stored double or even more times. Why does iPhoto not recognize this and how can I delete these hundreds of pix without clicking each one separately? Thanx. Message was edited by: Nelcestmoi

  • Purchase efficiency and processing time in purchasing

    Hi friends, here purchase efficiency they want to find out, please suggest me any report and please do let me know use of  processing time in purchasing Thanks and regards, Balakrishna R.V

  • Harman Kardon isub issues

    On my wk imac (g4, flat panel) I have a wierd isub problem...sometimes it'll just kick in really loud, sometimes not at all until I kick the sound up a hair, then all of a sudden it comes on. Sometimes nothing until I unplug the USB and plug it back

  • Outages from BT (owing to ongoing issues and cable...

    Latest outages from BT (updated): Due to suspected Cable Thefts & damage caused by 3rd parties, a small number of our customers in the below areas, may experience a loss of telephone and/or broadband services. We hope to have service restored as quic

  • Diagnosing output PDF-for-Web problems?

    Where I work, we accept PDFs from clients (most using InDesign) and do a conversion so their magazines are accessible via devices like the iPad. Since our software converts pages to images, all layout is preserved. Our online reader allows magazine v