Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

K8004 PWM kit how to make speed feedback loop?

Status
Not open for further replies.

smilem

Member
I have a problem with PWM controller.
original thread about it here: https://www.electro-tech-online.com/threads/need-help-with-pwm-mosfet.88471/

I use velleman K8004 PWM controller card to drive DC motor.
DC TO PULSE WIDTH MODULATOR

Manual:
https://www.electro-tech-online.com/custompdfs/2010/08/illustrated_assembly_manual_k8004_rev3.pdf

I have Canon Printer Carriage Motor QK1-1500
TN425813 12V DC.

**broken link removed**
**broken link removed**
**broken link removed**

I control the motor via 1K pot. I use internal reference voltage to control the motor speed. But as the load changes so does the motor speed.

How can I adjust the speed like I do now via POT but be able to lock it?

Please see manual page 8 for connection options.
I have the timing disc and 4 contact sensor (hall sensor?) from Canon printer that I could use. Or is there another easier way?

Thank you.
 
Last edited:
The controller does not have a provision for feedback for speed control.
 
Well the K8004 is just a motor driver PWM circuit. But I can adjust speed by connecting it like diagram A (Use separate control voltage). I mean it can be driven by another circuit board that adjusts voltage according to the motor speed.

So I need a schematic with Tachometer sensor that

1. would monitor motor speed
2. this schematic would allow me to adjust output voltage using POT (for setting initial speed I need)
3. Allow to lock speed using a push button.

How it would work:

I could adjust my motor speed with a POT on this new schematic as normal, if the push button is ON then the schematic would start to sense the motor speed via the sensor and adjust the voltage to keep the speed that is already set using POT.
 
Last edited:
I found this site but it's for 4wired fans **broken link removed**

Seems like simple IR detector **broken link removed**
 
Last edited:
speed control

Back emf might be the easiest. What frequency are you running the pwm?
Do you have a scope? I forgot the input range to your pwm. Is it 0 to 5 volts with 5 volts fastest? If you have a scope could you post pics of the motor voltage at various speeds so we can see the back emf constant? If not try measuring the dc value across the motor at various speeds.
 
Any of your ideas can be made to work. It is just a question of how to interface the tachometer to the motor. The higher the sample rate the better the speed control can be made.
 
The voltage from my PSU to the K8004 PWM kit is 12V
The motor is rated for 12V
The Amps on motor is unknown but I assume no more than 2-2.5Amps

When I adjust the resistor on K8004 PWM kit (configuration C internal reference voltage 1K POT) the voltage on motor changes.
At start there is 0V then 8.4V at Max speed. This is the same for forward and back spin direction.

To change the spin direction I use 3 position switch on K8004 PWM kit that just changes wire polarity connecting the kit to PSU.

The voltage on the 1K pot changes too, at start there is 0V - at Max speed 4.8V

IF it would be easier to design the circuit I think the lock switch can be omitted, I mean the circuit would be simpler with just a POT and it would auto adjust like for 4wired fans I posted above.

I think I need:

0. Circuit would be driven by 12V DC
1.IR Led detector
2.IC chip with A/D to interface the IR Led detector
3.Transistor tor control the voltage depending on speed of the motor detected by IR detector

Unfortunately my knowledge on electronics is limited so I'm hoping that fellow forum members will be able to help me.
 
Current Feedback

Well, I'm no servo engineer but no one else stepped up so here is something I think will work for you. This is current feedback as opposed to velocity feedback but the result should be stable speed with varied load. It measures current which will increase under load and increases the motor drive to compensate for the voltage drop of the motor.
You should be able to tap into your controllers +5 and +12 and ground to power it. Make sure the frequency pot is set to 5KHZ. There are 3 .22 ohm 5 watt resistors already on your board for current sense. One end of these goes to ground the other end to the FET. Put R6 to the FET side and R7 to the ground side. R2 and R3 represent a pot in the schematic with the wiper set to the midpoint. I just did this for the simulation. Any value between 10 and 50K is ok. I would leave the pot on your board until testing is complete, but ultimately the output of U1 goes to where the wiper of your speed control pot goes now. R8 should be a 100K pot. With this you can set the gain of the circuit to match the motor. Start with it set at about 20K or less. To test it set your speed pot to 2.5 volts and the pot for the new circuit at 2.5 volts. The output should be just slightly higher than 2.5 volts. If you apply a load to the motor (say with your finger) the output voltage should rise slightly (like the simulation). If you get to this point you can remove the pot from the controller and place the output of the circuit where the wiper was. Adjust R8 for best response to load change without oscillation.
 

Attachments

  • curfb.PNG
    curfb.PNG
    52.5 KB · Views: 783
  • bf1.PNG
    bf1.PNG
    35.3 KB · Views: 430
Well, I'm no servo engineer but no one else stepped up so here is something I think will work for you. This is current feedback as opposed to velocity feedback but the result should be stable speed with varied load. It measures current which will increase under load and increases the motor drive to compensate for the voltage drop of the motor.
Well i am...
You should be able to tap into your controllers +5 and +12 and ground to power it. Make sure the frequency pot is set to 5KHZ. There are 3 .22 ohm 5 watt resistors already on your board for current sense. One end of these goes to ground the other end to the FET. Put R6 to the FET side and R7 to the ground side. R2 and R3 represent a pot in the schematic with the wiper set to the midpoint. I just did this for the simulation. Any value between 10 and 50K is ok. I would leave the pot on your board until testing is complete, but ultimately the output of U1 goes to where the wiper of your speed control pot goes now. R8 should be a 100K pot. With this you can set the gain of the circuit to match the motor. Start with it set at about 20K or less. To test it set your speed pot to 2.5 volts and the pot for the new circuit at 2.5 volts. The output should be just slightly higher than 2.5 volts. If you apply a load to the motor (say with your finger) the output voltage should rise slightly (like the simulation). If you get to this point you can remove the pot from the controller and place the output of the circuit where the wiper was. Adjust R8 for best response to load change without oscillation.

that would be IR compensation (current*resistance)

i have gone this so MANY TIMES! IR compensation prevents most of the slow down under load. motor voltage is proportional to speed, luckily motor voltage is also proportional to supply voltage and duty cycle so you can control duty cycle with speed command, IR, and supply voltage. this gives you decent control but not the absolute accuracy of speed feedback.

Dan
 
Well, I'm no servo engineer but no one else stepped up so here is something I think will work for you. This is current feedback as opposed to velocity feedback but the result should be stable speed with varied load. It measures current which will increase under load and increases the motor drive to compensate for the voltage drop of the motor.
You should be able to tap into your controllers +5 and +12 and ground to power it. Make sure the frequency pot is set to 5KHZ.

Well I changed the frequency to inaudible range by forum member help. C3 was changed to 22nf. I have no means of measuring the exact frequency.

There are 3 .22 ohm 5 watt resistors already on your board for current sense. One end of these goes to ground the other end to the FET. Put R6 to the FET side and R7 to the ground side. R2 and R3 represent a pot in the schematic with the wiper set to the midpoint. I just did this for the simulation. Any value between 10 and 50K is ok. I would leave the pot on your board until testing is complete, but ultimately the output of U1 goes to where the wiper of your speed control pot goes now. R8 should be a 100K pot. With this you can set the gain of the circuit to match the motor. Start with it set at about 20K or less. To test it set your speed pot to 2.5 volts and the pot for the new circuit at 2.5 volts. The output should be just slightly higher than 2.5 volts. If you apply a load to the motor (say with your finger) the output voltage should rise slightly (like the simulation). If you get to this point you can remove the pot from the controller and place the output of the circuit where the wiper was. Adjust R8 for best response to load change without oscillation.

If I understood you right the speed will be controlled by measuring the polarity changes of motor armature?

Could you draw the required modifications on my attached circuit? I'm afraid I'm having difficulty following you :eek: I can't simulate this as parts are missing from my simulator and don't wan to damage already working PWM controller.

Thank you.
 

Attachments

  • k8004 circuit.png
    k8004 circuit.png
    35.5 KB · Views: 1,329
Last edited:
Well I changed the frequency to inaudible range by forum member help. C3 was changed to 22nf. I have no means of measuring the exact frequency.



If I understood you right the speed will be controlled by measuring the polarity changes of motor armature?

The speed will be controlled by sensing the current thru the motor. The current goes up when the load goes up(motor slows down) The circuit will speed it back up.

Could you draw the required modifications on my attached circuit? I'm afraid I'm having difficulty following you :eek: I can't simulate this as parts are missing from my simulator and don't wan to damage already working PWM controller.

Thank you.

I worry about this as well but if you decide to build the circuit maybe we can test it before you hook it up. Here is where the wires go.
 

Attachments

  • curfdbk.PNG
    curfdbk.PNG
    170.4 KB · Views: 336
Well I changed the frequency to inaudible range by forum member help. C3 was changed to 22nf. I have no means of measuring the exact frequency.



If I understood you right the speed will be controlled by measuring the polarity changes of motor armature?

Could you draw the required modifications on my attached circuit? I'm afraid I'm having difficulty following you :eek: I can't simulate this as parts are missing from my simulator and don't wan to damage already working PWM controller.

Thank you.
add opamp gain to R8 signal, peak detect, resistor to IC pin 2 (it is a summing junction)

increase feedback slowly until it works well enough - to much and it will run away to full speed as this is positive feedback!
 
Status
Not open for further replies.

Latest threads

Back
Top