LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

i am using NI PCI 6251 for closed loop control of dc drive.(separately excited d

i am using NI PCI 6251 for closed loop control of dc drive.(separately excited dc motor,220v, 0.5HP, 2.5A rated, 1500RPM)
the dc motor is fed from a bidirectional dc-dc converter. this converter works in boost mode(forword motoring) and buck mode(braking mode/battery charging)
the converter is built using mitsubishi IGBT module. at low voltage side of the converter a battery bank of 48V is connected and high voltage side the motor is connected.
An IR sensor is developed to measure the speed of the motor and a hall current sensor is used to sense the converter current.
in the control part i have an inner current control loop(PI current controller) and a outer speed control loop. to measure the speed i have used counter of the DAQ assistant, then frequency. then this frequency is converted to RPM using labview. when the converter operates in boost mode, at nearly zero duty cycle the speed sensor showing accurate speed(low speed), but when the duty ratio is increased, the speed sensor showing wrong speed(randomly some speed 20000rpm/40000rpm like that) . so under variable duty cycle the speed sensor is not working. the 5v dc supply to the speed sensor circuit is given from the pci 6251(pin 14 and 15). the frequency is sensed from pin 3(PFI 9). right now to control the duty cycle of the igbt a hardware circuit is used, which i have to generate from the closed loop operation in labview(the output of the current control loop will be the switching signal). the switching frequency of the converter is 20KHz.    
 this speed sensor is working properly when the motor is fed from a uncontrolled diode bridge rectifier, the armature voltage is  varied through  a auto transformer.(field voltage is constant)
so pl help me to measure the motor speed when the dc dc boost converter duty cycle is varied and closed loop operation of the dc drive.

thanking you.

 

 

0 Kudos
Message 1 of 10
(3,681 Views)

You know that there are dedicated Motion Controller available for such requirements?

 

Norbert 

Norbert
----------------------------------------------------------------------------------------------------
CEO: What exactly is stopping us from doing this?
Expert: Geometry
Marketing Manager: Just ignore it.
0 Kudos
Message 2 of 10
(3,678 Views)

we do not have any dedicated motion controller for controlling the dc drive. only i can use NI PCI 6251. with this available DAQ is it possible to use in drive control?

0 Kudos
Message 3 of 10
(3,667 Views)

@premananda wrote:

[..] with this available DAQ is it possible to use in drive control?



You wont have a closed loop running deterministic and fast. Using a real time system would give you determinism, but maybe not the required closed loop loop rate (how high is it?).

Motion controller devices are running the control loop in FPGA and therefore are way more performant than using X-Series devices.

 

That being said, you have to implement a controller loop and run it in your PC. Please keep a close eye on the performance.

 

Norbert 

Norbert
----------------------------------------------------------------------------------------------------
CEO: What exactly is stopping us from doing this?
Expert: Geometry
Marketing Manager: Just ignore it.
0 Kudos
Message 4 of 10
(3,659 Views)

dear sir

 

my simple question is that, how to measure the speed of the dc motor when it is fed from a dc dc boost converter(switching frequency is 20Khz) using labview.

i have used PCI 6251 for data aquisition.i have used counter to measure the frequency.

 

i am getting correct speed mesurement when the same system is fed from diode rectifier which is not my objective. i have to use dc-dc boost converter.

 

pl suggest me.

 

 

0 Kudos
Message 5 of 10
(3,648 Views)

Check if the signal of your boost converter is really a digital signal. It is possible, that noise is introduced at such level, that the 6251 cannot identify the edges.

Use a scope to compare the signal of the boos converter and your diode rectifier. I'd expect quite a big difference.

 

Norbert 

Norbert
----------------------------------------------------------------------------------------------------
CEO: What exactly is stopping us from doing this?
Expert: Geometry
Marketing Manager: Just ignore it.
0 Kudos
Message 6 of 10
(3,633 Views)

Hi Premenanda,

Are you using different power supplies for the controlling circuitary and the sensors?If you are not, then I would recommend you to do so. Please use a constant DC power supply for the IR sensor.

Secondly, the rate at which sensor data is being read is also dependent on the way it is programmed in labview.

so I suggest you to keep the sensor data aquisition in a parallel loop so that the delays introduced by the control algorith do not affect sensor data aquisition.

could you post your vi here?It would help me a lot to solve your problem.

Thanks.

0 Kudos
Message 7 of 10
(3,623 Views)

dear sir

good morning.

thank you for your reply.

i have attached the labview program of speed calculation and closed loop control of dc drive.

 

according to your suggestion i tried with separate 5v dc supply for speedsensor circuit but still this problem in sensing the speed is persisting.

 

pl help me.

 

thank you

Download All
0 Kudos
Message 8 of 10
(3,601 Views)

Hi Premenanda

 

The freq data receiverd from the daq assistant has the units of Hz, or in terms of motor speed, rps (rotations per second). I can see that you are trying to convert that to rpm (rotation per minute). which can be done by dividing the rps speed by 60. Instead, you are multiplying it by 60 and also comparing with 2000. the resultant multiplied value is displayed in your program only if it is smaller than 2000.which is causing the problem here.( as seen in file 'original code.png)

 

I have attached a file named 'modified code.png' that shows how the conversion from rps to rpm is done. Please do the required changes in your code and let me know if it works.

 

Download All
0 Kudos
Message 9 of 10
(3,597 Views)

dear sir

 

here is the formula which i have used to convert rps to rpm

 

w=2*pi*f=(2*pi*N)/60;

so N= f*60;

how  can we divide by 60 to get RPM.

i think proper setting of values in side the DAQ assistant is required.

how to keep the sensor data aquisition in a parallel loop ?

so pl suggest me about the setting of values inside the DAQ assistant or if you have any other solution.

 

thank you.

0 Kudos
Message 10 of 10
(3,588 Views)