I agree with others, that this is a very unusual time, but it is great news that your order is coming your way. You are going to love your Super-PID. I've had mine for quite some time and love it for how well it works and for how well it is designed and built. I'm using mine with the appropriately modification of a Porter Cable 890 router, going on 10 years now.
Let us know how you like it.
airnocker
Everything depends on everything else
I am trying to set up my new SuperPID, but cannot seem to get the PWM speed control to work. I tried searching through this 120 page thread, but didn't find anything.
I am using GRBL 1.1 Mega-5x and have connected the spindle speed control to PortH-Pin4/D7 to an Arduino Mega 2560. D7 is a PWM out pin. That is wired to the PWM input on the SuperPID and the POT/VS inputs jumped together. GRBL variables are set to: $30 = 30000 and $31 = 0. For what its worth, INVERT_SPINDLE_ENABLE_PIN has been uncommented and is working as expected.
M3 will turn on the spindle, but at FULL SPEED. It ignores the S value.
A multimeter to the PWM speed pin confirms voltage. Likewise, if I set the speed to below the S5000 threshold, the router will not turn on. Above S5000 I get FULL SPEED regardless of the speed I set. The software appears to be altering the duty cycle as expected. For some reason the SuperPID does not seem to be regulating the output to the router.
Manual operation with the potentiometer works as expected.
Any suggestion as to what I could troubleshoot or what might be wrong?
Which version of SuperPID do you have? Version 1 or 2? It matters as they each have different connection requirements. For now I will assume you have version 2 since you refer to it as "my new SuperPID".
The attached images are from the Version 2 manual and are your three PWM options.
airnocker
Everything depends on everything else
In case anyone is interested I have a new, unused Super-PID with lots of extras for sale on Ebay.
https://www.ebay.com/itm/224023528306?ul_noapp=true
The Arduino is only a microprocessor, not a single board computer like a Pi. It functions more like the Gecko G540. The Arduino is powered by the +5v wire of the USB cable connected to a PC. It is grounded to the PC through the ground wire of the USB cable.
The SuperPID is powered by a Mean Well Switching Regulated Power Supply that is grounded to the ground pin of the mains power supply.
The SuperPID and the Arduino controller are not powered by the same source. I am not an electrical engineer, but I understand that attempting to connect multiple grounds can create problems. Are you suggesting that the COM from the Arduino should be connected to the GND of the SuperPID? Can you explain why you think that would create the problem of the SuperPID ignoring the duty cycle of the PWM and running the router at full speed?
Since the analog potentiometer seems to work in my set up, I am considering filtering the PWM signal with a DAC. It seems that the SuperPID was made with an analog input in mind, and I can't really find any references to other people successfully driving spindle speed with PWM.
Before I go down that route, I am wondering if anyone has managed to actually work the SuperPID with a PWM signal for spindle speed?
The DC side of Meanwell P.S. is isolated from ground.
The SuperPID just needs a 5v supply, apart from the mains supply.
There have been many previous posts as to grounding different parts of the system commons, two schools of thought exists, for what it's worth I have always grounded all P.S. to the common star point GND.
Never had a problem, for example, some make use of the PC 5v supply for non-isolated BOB's etc, this 5v common is connected to earth GND in the PC.
The best way if using a PWM signal is to set up an opamp PWM to analogue signal.
Al.
CNC, Mechatronics Integration and Custom Machine Design
“Logic will get you from A to B. Imagination will take you everywhere.”
Albert E.
I agree with Al_The_Man. The Arduino GND af it's 5V DC (and any other DC) supply should be connected to the DC or Signal GND of the SuperPID ...and let's be clear.... NOT in any way should any DC GND of anything be connected to the 110VAC earth safety ground of anything.
Does this easier to understand. Let us and we will endeavor to help you in any way we can.
All the best,
airnocker
Everything depends on everything else
Actually my post intended the opposite, where possible, supplies that are isolated from the mains power, SMPS etc, in my case have the common power terminals connected to the service earth GND where is enters the enclosure, these are taken to the star point ground.
As I said, there are two schools of though, For the last many decades I have opted for the earth grounding of commons side of the issue, rather than total isolation.
Your desktop/tower PC does it with it's power supply internally through the Mobo ground plane and input power conductor ground..
I should also note that I did CNC installations and retro-fits as part of my career, so it does not cover the odd one or two installations.
There are many previous posts here of posters complaining of spurious triggering of inputs etc, after carrying out the suggestion of earth grounding the commons, it invariably cleared the issue up
You can opt for either methods.
Al.
CNC, Mechatronics Integration and Custom Machine Design
“Logic will get you from A to B. Imagination will take you everywhere.”
Albert E.
For now, I have connected both the SPID's ground terminal and the DC- of the Means Well Power Supply to the Arduino's GND pin and the SPID is now behaving as expected with proper RPM's to the router. If I have any further issues I will look into a star point ground.
Thank you all for your help.
airnocker
Everything depends on everything else
I spoke too soon. It turns out the grounding I've done, at least so far, hasn't solved the problem. It appears that in my exhaustion trying to problem solve this I connected the SuperPID's PWM terminal to the - terminal of the Arduino/Ramps control board by mistake. I was so happy that it wasn't running at FULL RPM that I failed to notice it was running at an INVERTED rpm. Whatever speed is called for in my G code is SUBTRACTED from the top speed of 30,000rpm. Thus a S10000 results in 20000rpm and a S25000 results in 5000rmp. While that is better than nothing, I still would like to have this working properly.
One thing I noticed is that the PWM on the SuperPID is ENERGIZED with 5v. Without connecting the Arduino/RAMPS to the PWM terminal on the SuperPID I can measure +5V on the SuperPID's PWM terminal. Is that normal?
It certainly isn't what the Arduino/RAMPS is expecting. The Arduino is ENERGIZING a 5v circuit according to the duty cycle. I can confirm with a multi-meter connected to the PWM+/- terminals that I get 66% duty cycle for S20000 and 33% at S10000, so the problem doesn't seem to be with the control board. Why would the PWM terminal on the SuperPID already have a load?
Anyhow, does this INVERTED rpm give anyone a hint as to what is wrong?
Super-PID V1 and V2 expects a positive going PWM pulse train between 0v-5v., where if the pulse train duty-cycle is close to 100% positive will result in the router running at its fastest speed.
It is NOT expecting any kind of RAMP voltage. If you want to provide the Super-PID with a varying voltage value that ramps up from 0v to 5v you need to make the connection to the Super-PID terminals as the instructions indicate where the wiper of a potentiometer would be connected to the terminal block.
Here's a novel idea, why don't you post a schematic for how you are connecting your device signal and the type of signal you are sending to the Super-PID, i.e. ramp vs PWM, etc. from your Arduino, and to which Super-PID terminals your connections are being made.
If you are sending a PWM signal from your Arduino to the Super-PID, are you employing any router shaft encoding speed signal feedback to your Arduino? If so, your connections should look like that shown on page 23 of the Super-PID V2 Instruction PDF.
airnocker
Everything depends on everything else
Thank you, but It is called a RAMPS 1.4 shield for the Arduino. That is short for “Rerap Arduino Mega Pololu Shield”. It is actually quite a popular and established controller. It is used on literally millions of machines, primarily in 3D printing and laser cutters, but also for popular CNC machines like the ShapeOKO. It is NOT a ramping voltage.
The controller is outputting 0-5v PWM signal from 0% to 100% duty cycle. In fact, Arduinos are incapable of producing an analog output.
I can’t explain what an Arduino is here, but more information can be found here:
https://reprap.org/wiki/Arduino_Mega_Pololu_Shield
Perhaps someone with a better idea of what an Arduino/grbl setup is has an idea? I am especially confused as to why the PWM input pin on the SuperPID has a positive voltage when not connected to anything.
I’ve tried to be very precise as to what my setup is, but they say a picture is worth a thousand words. The arrow I drew appears to point to the PG terminal, but I mean the PWM terminal. That’s where I’m getting an unexpected voltage.
Sent from my iPhone using Tapatalk Pro
The control input for the SuperPID is an analog signal and in the simple version it is a pot using +5v - input - gnd.
So there will obviously be a voltage required to feed the Pot, in the case of an external analog signal, this only needs to be from GND and Input, the 5v is left unconnected.
Same for the PWM
Al.
CNC, Mechatronics Integration and Custom Machine Design
“Logic will get you from A to B. Imagination will take you everywhere.”
Albert E.
The VS and POT are jumpered together, per the instructions. There is nothing connected to the P5 terminal. I still read a voltage on the PWM terminal.
Are you suggesting the VS and POT should NOT be jumpered together?
Sent from my iPhone using Tapatalk Pro