PID -Hardware needed for a software fix

Dang, I didn’t even think about it, we have 12V from the current power supply already. There is plenty of juice left in that. I need to try and figure out total current draw, That should actually be easy. As soon as I get back from the post office. Thanks Heffe.

That board might work but the OLED is tiny, I suppose there is a way to enlarge the font? The price comes out to about the price of a nano and an OLED, but then buttons would need to be added still.

I was really hoping for $50 or under including a little for myself with a diy kit…

Feel kinda dumb not thinking about the PS that is already there, especially since I am actually using one.

I have some tiny qrd1114 sensors coming from digikey, Might be the answer to the sensor issue. Tiny, tuned, not a sketchy import, real data sheets.

 

1 Like

Looks like 0.3A with the big LCD…Perfect no worries. I dropped it on a nano shield I had from the otto bots makes it real easy to wire up.

Looks like this.

 

Definitely tiny. But also high contrast. You can change the font size to whatever, but it doesnt make the screen better. The api also supports simple progress bars too. I have one on my laundry machine. There is one button, but they moved it to the back for some reason.

[attachment file=58623]

Dont judge me by the dirt, its in the basement.

I am not an electoral engineer so I do know if this would work or not but could you use the Hall Effect on the AC load to get to RPM?

Check out this link

http://www.bristolwatch.com/hall_effect/ac_hall_effect.htm

http://www.instructables.com/id/How-to-Measure-AC-Current-using-Hall-Effect-Sensor/

Remember I am not an Electrical Engineer

 

WHoa!!! I need to read through that and take some notes, I’m no EE myself. How freaking cool would that be! Nice find Todd.

That would give you the current, which is proportional to the power, but not the RPM. When the tool is under load, it requires more current to keep the RPM constant. Adjustable current is what the dimmer switch we used to use provided.

Unless there was some ripples in the power dues to the rpms, I dont see how that could be used for constant speed control. Good idea though.

I hound this lastnight.

Looks like it can be done, but need to figure out the equipment needed.

“In the VFD world, “encoderless” speed detection for the purpose of achieving Sensorless Vector Control is done with highly sensitive current detection systems that monitor and filter the stator current flow signals looking for the anomalies that represent the rotor bars passing through the stator magnetic fields and count them to determine the actual rotor speed. You cannot use that for absolute position (i.e. when stopped), but with enough processing power in the drive, it can be highly accurate, as in .001%”

Check out this site.

https://www.nktechnologies.com/engineering-resources/current-sensing-theory/

 

Yeah, ok. Measuring the ripple makes sense to me. Any idea what order of magnitude hall effect sensor or ADC we would need for 30kRPM?

Been putting some serious thought into this thing. What is the point of the screen?

We already have a screen, and new menu items seem to be easy enough to add to now. So why not just use the current screen? Do you really need to watch some speedo? Manual control should be easy enough to add to the current menu and it would only lag behind by a few lines of code (buffer). Maybe add a button for RPM wobble, like press a button and the arduino varies the current set RPM by ±500 RPM (whatever works, hard coded). Heck maybe add a menu option for that as well, we could map it to counterclockwise since we don’t use it. We have PWM control of M3 and M4 built in.

Just add a nano (or whatever), sensor, and the AC controller. ~$40

 

[attachment file=58800]
New sensor set top left, the other two are relatively huge…

What kind of sensor is that?

We could always add in a screen if you were technically inclined, and had one lying around, or you were willing to pay for it.

You could also see what the current RPMS are by buying a cheap harbor freight tachometer. I’d get more comfy feelings with that independent measurement anyway.

For the wobblies, you’re saying we can attach a wire from Marlin on the spindle direction pin, and connect to some input on the MPPID (:D) to determine if it’s going to add the wobble? You could also wire in a switch between ground and high on the MPPID to do the same thing.

qrd1114

 

Seems like a legit path correct? If you want one, add one. It simplifies the crap out of the coding (basically its done).

 

Dang…more names forgot about this. V1PID?

 

Like that name for sure.

 

We have 3 wires, clockwise PWM - M3 S(), counterclockwise PWM - M4 S(), Enable M5 (high low I think). Currently using M3 and M5, but maybe just using a menu item to send M4 S255 could trigger wobblies, a hardware button or switch kinda seems better for this?

Are you sure M4 is pwm on another pin? I thought it was more of a speed pin (PWM) and a dir pin(0/1).

SPINDLE_DIR_PIN?

Either way still works, just a trigger right?. Have the wobble hard coded, percentage of current speed or a set number.

Yep. The nano is even easier to reprogram. So if someone doesn’t like how you do it, they can change the value and reprogram.

Yeah, less and less likely to make good business sense but super cheap, work with any pwm, super tweak-able. Sounds awesome other than the money aspect I think.

Adding all sorts of special complicated stuff means a bigger profit, but I am only willing if it actually adds value other than aesthetics.

Uhhhhggg.

I suck at business, but not at making things. - New company slogan.

I’m not sure the encoderless speed detection would work for the DW660. Looking at the literature, the dimmer does not produce a clean sine wave and even if it did, the DW660 is a DC motor with a rectifier on the input, making it harder to accurately sense the stator slot passing distortions. You’d probably have to dive into the internals of the DW660 to monitor the armature current directly and then cross-calibrate it to a speed vs. torque curve. Ryan’s approach appears to be the better of the options.
One thought I had would be to build your own dimmer as part of the project, which could include using the MPCNC to etch/mill the PCB for the circuit and the MP3DP to print the case for it. Would require some soldering, but the basic circuit is available at least as an instructable.

1 Like

Thanks for looking into this.

The new sensor is super nice. Perhaps too sensitive. I get really solid analog readings of ~1k down to just about 0. It picks up everything though, even felt. It still gives a clear high and low with a white spot on various materials so that should work.

Feel a bit like AvE, opening a brand new 660 box ("… and time!") and not even plugging it in before completely taking it apart.

Tried sharpie black vs whiteout, two very common materials right? Using those on the end of the shaft 50%black/50%white I can get a 300-500 difference in signal pretty easy. I think that was much better than the previous LED’s, not nearly as good as the encoder. I will mount it up and give it a go asap. I tried with felt and half painted white also, not as good as the sharpie.

Again, I know mounting it externally near the collet is the easiest, but I foresee too many issues with debris happening changing the RPM value erroneously. The fan could build up dust on the sensor. Inside it is very safe clean and can be mounted securely.

If I custom print a new top for the 660 do you think it is too electrically noisy to tuck the two boards in there? Maybe a foil shield to ground? Just think, three wires (ribbon) to the control board and the power cord being the only two things sticking out.

Swapped to a larger resistor (1k) to dim the emitter a bit and it works much better.

Even better maybe just a different height sticker, object, whatever. It seems to detect distance way better than color. Maybe even 3d printed.