CB CNC Part 15 – PWM to Potentiometer Speed Toggle Switch

In this video I am going to assign some functions to some of the pins on the variable frequency drive, which should allow me to add an emergency stop, use a potentiometer, and a few other things I’ve got planned. I’d like to connect the pump which will cool the spindle to the VFD via some kind of relay, or time relay in fact, so that it turns on when the spindle turns on and remains on for possibly five to ten minutes after a job is completed.

This is a NFlixin variable frequency drive. There isn’t much information about it online apart from a video I made explaining the process in which I problem solved setting up the machine to turn on the spindle on for the first time.

The manual is very complicated but there’s a lot of typos, and interesting use of language which isn’t necessarily what you want from a manual. But I got this for free and that is the price I have to pay. The first thing I’ve done is assigned the XI terminal a function which is as an emergency stop. So I should be able to connect this to the Estop and turn the machine off. I’m just going to turn this on now. Now if I turn the VFD/spindle on, this is what I would see on the panel if the spindle was running and when I press this switch it goes to zero. This is a momentary switch but Estop would be a latching one so it would turn this off, and the power going to the controller. So hopefully that would stop the machine from running even when I reset the controller.

So every VFD will be a little different in terms of how the parameters are set. In this case if I go to page 21-22 of the manual, and 23 I’ve got the explanation of the control circuit terminals. X1, X2, X3, X4, X5 and X6 have different parameters I can then go to and then set the functionality. And depending on what these are they might be the parameter set in terms of time, on/off, or in these cases, 99 different kinds of multi function inputs which is a big number. So I’ve done the first one and I’m just going to now change multi function digital input setting for X2 and that’s function number / programme number 42. And I just need to decide what to set that to. I think that for the VFD to be controlled by the controller I need to change a particular setting which is the source of speed and control order change over. But what I’d like to do is set that onto a switch so I can set the speed in the software, with Gcode, and in case something goes wrong I can press a button and have access to a potentiometer and that would be quite useful. I need to go to… and  when you’re doing something like this obviously be careful and not to touch any lives wires. I’ve tire to keep this as neat as possible but obviously there’s certain things I could electrocute myself on so I’m going to try be sensible. I need to go to parameter which is what PR stands for, I’m going to go to 42, and press the ok button which is RDWT button. It’s set to zero at the moment which is no any action null. And X1 I set to 1 which is the emergency stopping, lol. And err, there’s lots of things here. Inches and fault reset, I’m not sure what flip flop stands for (mumbling to self). So anyway I’m going to set zero to source of speed and control change over (90). And to set that to memory I press CLT. I’ll just turn this off. Really you should leave this for five to ten minutes before poking around but I feel a little bit cocky. I’ll move that over to X2 connecting X2 and digital common ground. What I thin will happen is when I press this button I wont be able to use the potentiometer. It’s dropped down to zero and the potentiometer is not doing anything. That’s not doing anything. Let go off the button and it’s gone back to particular functionality.

But I want this to work the opposite way. I want to have the PWM as the main source of speed control and to only change to the potentiometer when I switch over. I also don’t know if I’d even assigned the PWM because I don’t have that signal coming in which I can check.

Now what I want to do, is find the function which I’d original set some time ago, to allow me to use the potentiometer and set it back to whatever the input is for the PWM and spindle enable.

So I‘ve got about 50 minutes of footage where I attempt to assign various functions to the X2 digital input with varying success. But instead of showing all that trial and error, I’ll jump to what I did which eventually made that switchover work. In an order I would advise to do it. To run the spindle from the controller you are going to need a PWM signal and a spindle enable signal. The spindle enable signal goes to the X5 digital input pin, which is assigned value 73 as a factory pre-set via parameter 45 to run the spindle in forward. The X5 terminal would normally go to the control board but for now I put a piece of wire from it to the Dcom – or digital common ground terminal, which means when the VFD is turned on it automatically enables the spindle in a forward direction.

I’m going to take a little bit of wire and jump between the ground and the X5. So this (spindle) should just turn on automatically when I turn the VFD on.

To set the speed I use AI1 which is an analogue input interface. Again, this would normally come from the controller with the speed set in Gcode. The signal from my controller is 0-10v, although other controllers may be vary. That voltage will adjust the frequency driving the spindle which in my case goes between 0 and 400Hz. So a signal of 10v means 400Hz goes to the spindles, which is 100% of the rpm speed. I have connected the AI1 pin to the the DC voltage output on the soldering station to act like a false PWM signal. Providing I don’t go over 10v this will work fine.

This is acting like the PWM – pulse width modulation. So I should be able to turn that on and change the speed based on the voltage which I send into the VFD. 

You can set a minimum voltage in case you are using an air-cooled spindle, which wouldn’t have sufficient cooling if the spindles doesn’t spin above a certain RPM. I am using a water-cooled spindle so this is set from zero.

I then assign the function of the X2 pin, via Parameter 42 to 88 which is Speed Command Switchover. Now on page 67 you will find subsection 6.3 – The way of set operational frequency which I think means how to set operational frequency. It seems you can set two function either side of a decimal place. And here you can set two function which will act in a do this first, until that happens (which is now x2 being triggered) and then do something else.

I set this via F040, firstly to 1, which is by AI1 0-10v PWM input, then after the decimal point I put the number 25 which means the frequency is decided by input of AI3 i.e keyboard potentiometer.

So now the spindle is on but I need to I need to turn on the (faux) PWM, which will set… (I pressed the button)it’s gone to the potentiometer. OMG it fooking works. If I want to go back I let go of the button and it goes to the speed set by that thing over there.

So that’s acting like as the PWM signal coming in from the controller board, and when I press my button I have access to the potentiometer. Now I’ve not seen anyone do that on any of the controller build using variable frequency drives so I feel pretty chuffed with myself right now.  And obviously to turn it off that still relying on the signal to X5. Amazing. Off. Boom.

Clearly I need to make sure whatever this button is it is a latching one, as I don’t particularly want to keep my finger on the button. What I can also do as well is either pull the panel up onto the top of the controller here so I have access to it, or connect a potentiometer to the AI3 pin. Anyway I think I’m going to leave this video on a high, and in the next video – properly wire everything up to the VFD and controller. I had a few goes at connecting a relay for the spindle cooling pump, but wasn’t getting the results I was expecting – so will come back to that in a future video. Anyway thanks again for watching and see you next time.

Leave a Reply