-
Fry-a-Part then Fix-a-Part, Small Upgrades Begin, & Misc Notes
07/25/2016 at 12:16 • 7 commentsRemember this: the A2SHB MOSFET for the hotend fan Google's out to the H&M Semi HM2302A which is possibly a knockoff of the Vishay Si2302DS. While trying to probe the fan leads/pin header, I invoked the powers that be and I saw glowing red and Magic Smoke.
- That MOSFET only likes 1 W of power dissipation at 25 °C and it downrates sharply from there. An improved part, SQ2310ES, and itts RDSon is about half or better, the max junction temp is better, and the max power dissipation is about 1.4 W @ 70 °C vs 0.8 W @ 70°C.
- An even better MOSFET that's less expensive and have less Rdson is the PMV16XNR by NXP, fwiw.
- The stock 30 mm fan on the hotend is a 1 W fan while the Noctua I mentioned draws about nearly 50% the current.
- The power resistors and and replacement caps showed up.
- The 12.3 V from the brick isn't as clean as it could be and that is dirtying ground with up to 500 mV of noise. There is a spike I wish to remove.
- The thermistors have no less than 500 mV of noise on them; partially conducted through the chassis. I twisted the hotend thermistor's wires yesterday and that seemed to halve this noise to +/- 0.25 ˚C @ 190 ˚C. There is an un-populated resistor at the base of each thermistor hookup, but I didn't have a chance to check to see how it's traced on the PCB. I've not checked what the caps, C3 & C13 are valued at.
- I sampled the response of the x-axis switch, easiest to toggle with a finger, and determined that the time constant is about ~3.56 ms. or about ~0.14 mm @ the rated 40 mm/s travel speed. The caps in-line for debouncing are C25, C27, & C11. I didn't check their values at this time.
- The 8 MHz crystal isn't populated with capacitors for the STM32. This was the case for Benchoof's Select Mini and mine as well. The datasheet calls for 24-30 pF, which I don't have in hand at 0603 imperial sizing.
- Noticed this off of my UTC171C's frequency counter & duty cycle mode and verified it with my scope, but when both the heated bed and the hotend are powered up, the max frequency for the MOSFETs is ~147 Hz, about half of the previously noted 300 Hz. I've made some preliminary PID settings that undershoot quite a bit, but remain within 1-1.5 ˚C within 30 seconds of touching their setpoint.
- Despite the hotend being rated up to 250 ˚C, I'm noticing control issues at and beyond 230 ˚C. I need to trace back how the thermistors are hooked up the the ADC pins on the driver board, but I believe this is a limitation unintentionally induced by the hardware design for reading the thermistors.
- That MOSFET only likes 1 W of power dissipation at 25 °C and it downrates sharply from there. An improved part, SQ2310ES, and itts RDSon is about half or better, the max junction temp is better, and the max power dissipation is about 1.4 W @ 70 °C vs 0.8 W @ 70°C.
-
Misc Electrical & Mechanical Notes
07/22/2016 at 02:48 • 0 commentsFirst off, some have mentioned thread lock already. I know how to torque down a bolt, but the bottom panel had 3 screws come loose from the printing I've done so far. If you never plan on opening your Select Mini in the near future, blue thread lock is needed on these bottom 6 bolts
Though not the precise model, this motor is from the same family as the NEMA-17 x-axis and y-axis motors. Scroll down for specs. I'll call it close enough since I was trying to get a finite answer on what the stepping resolution was on these guys.
The z-stepper is unmarked as far as I can tell.
The Kapton-insulator wrap that was on the hotend is primarily there to help prevent thermal transfer to the feed tube and provide a better thermal break, FYI. Guess how many prints it took to figure that out ;)
As for the motors, you may note that during a print that lasts 30 min or more, that you have a few pixels on your LCD. Consider these flipped bits because the entire screen isn't redrawn when there is an update. I've not sure if these are caused by EMI from the Z or Y axis motors. The screen itself is shielded, but it's ribbon cables, nor the ones from the driver board, are not.
There is a vent for a 80 mm fan on the bottom panel. There are no mounting holes for a 80 mm fan though. Either I drill 4 holes, I make/print a bracket, or put a 60 mm fan in.
The PCB's dimensions were not specified in the review, iirc, nor the bolt pattern holding it down. You have 43.2 mm center to center and 92.2 mm center to center, +/- 0.1 mm.
The thermistors for the hotend and heated bed do seem to be the 100K NTC with a Beta value of 3950 cause I plug the other ones in and I get an appropriate room temp reading. I've messed with thermistors before.
My Select Mini isn't entirely "complete". It only has 3 of the plastic rings identifying what cables are what, unlike the Benchoff review, fwiw. Things aren't that difficult to discern, though.
-
Preliminary PID Results
07/21/2016 at 01:41 • 0 commentsSo, I'm about 95% done with the hotend/extruder PID tuning. I have 1 overshoot or undershoot with heating/cooling or other set point temperature change when the delta is > 10 ˚C. Following that, I get 2 or 3 undulations in current draw before the temperature is technically stable. I say technically because the average varies no more than 1 ˚C, aka +/- 0.5 ˚C. For the TL;DL folks, enter in this command using your preferred method of entry:
M301 P115 I0.28 D675 C0.03 L1
Use these at your own risk. Turns out that when under load, the PID control system doesn't play nice. I'm going to have to redo this a bit. Methinks that a really low P, a high I, and a D at or under 250-275 is required with the existing hardware.
- Pick a high an low temperature setting that you print at. Tuning should begin with the lowest temperature: I used 190 °C and 220 °C.
- A high temporal resolution method of monitoring average voltage or current over a long period of time is best. For example:
- I used a 65 second window is used on my Rigol DS2072 and a Hantek CC-65 current probe since I didn't need direct contact with any traces/leads.
- My scope was set to Roll mode, 5 seconds/div, and high resolution sampling mode was used.
- By default, the 300 Hz switching frequency of the MOSFET(s) is then 'averaged' making it easier to monitor changes you're making.
- Repetier-Host was used to monitor temperatures and pass GCODE commands.
- The goal is to have a stable temperature within 1 minute of the primary overshoot.
- Tune your lowest temperature first. Due to the lower current draw, creating instability at lower temperatures.
- The hotend has a time constant of ~1 second, thus there is about a 5 second delay between the heating element working and the thermistor showing the entire result. This is a function of the thermal gradient and te thermistor's TC.
- PID disables the current draw 5 °C before the target temperature but you *will* overshoot by ~3-5 ˚C due to the thermal gradients, time constants of thermistor, and temperature control.
- If off, the MOSFET will turn on once the thermistor reads 1-1.5 °C above the setpoint when cooling.
- If fully on, the MOSFET will turn off, once the thermistor reads 5 °C below the setpoint when heating.
- If trying to stabilize, the MOSFET will turn off if you exceed 1.5 ˚C above the setpoint, assuming your parameters are sane.
- Once your 'D' parameter is above ~250, the switching signal for teh MOSFET becomes a combination of PWM & PFM.
Now, some advice given the characteristics of the system:
- Tune it "live" but after you've made significant adjustments, say 3-5 parameter tweaks, turn the hot end off to create at least a 10 °C differential and then turn it back on to test stability. Or switch between both of your max and min temperatures.
- As for adjusting 'P', 'I', & 'D':
- Incriment 'P' in intervals no larger than 10.
- Decrement 'P' in intervals no larger than 5.
- Increment 'I' in intervals no larger than 0.03.
- Decrement 'I' in intervals no larger than 0.02.
- Increment 'D' in intervals no larger than 50.
- Decrement 'D' in intervals no larger than 25.
- Steady state peak-to-peak needs to be noisy otherwise temperature control will suffer once disturbed. This is due to the noise in the thermistor readout.
- Honestly, I'm not sure what the 'C' and 'L' parameters are... specifically.
- They do seem related to overshoot, switching frequency of the MOSFET, and overall duty cycle of the MOSFET. Effectively, they seem to be fine tune variables for overall stability.
- It appears that electronics nomeclature of 'C' for capacitance and 'L' for inductance is loosely associated with these variables.
- No significant difference were found at higher values, but an impact was discernible, barely amongst the noise, once these were reduced to their lower limits.
- The average frequency of the MOSFET increased as these were lowered and better over/under-shooting behavior was observed.
- 'C' is able to go from 0 to 10,000 with a resolution of 0.01.
- 'L' is able to go from 0 to 50 with a resolution of 1
- When I was working on fine tuning the parameters, I noticed some better characteristic behavior the closer to 300 Hz the MOSFET frequency was at. For a little while I tried to keep the frequency around this range, affected by 'D' mostly, but upon testing transient temperature changes, 190->220 & 220->190, and tweaking the PID for better responsiveness, the switching frequency of the MOSFET preferenced staying further away from 300 Hz.
Due to the slow cooling of the hotend as a result of the insulator on it, I opted to cut mine off in order to let it cool faster and let PID oscillate faster, thus allowing faster control. I'm going to do some additional testing to see if I can have the power cut or taper to the heating element before the "setpoint - 5 ˚C" mark. If this can be done, then it will be possible to eliminate overshoot with the stock hotend.
-
Parts on Order
07/19/2016 at 12:51 • 0 commentsPlaced an order for some goodies:
- Additional extruder
- Already have the adapter printed
- Cheap nozzles to play around with
- 1/4" OD x 15.88 mm long, 350 °C-rated, 3 ohm @ 3% wirewound resistors
- Shouldn't draw more than about 4.1 watts.
- Overkill? Yes.
- Bump 250 °C extruder temp to 350 °C? Sure.
- 100 mm x 100 mm silicone heating pad
- Top end temp is reportedly 120 °C
- Draws no more than 6.5 watts
- 40mm Noctua fan
- Additional cooling power never hurt, though the firmware doesn't let the fan turn off currently, but I've not tried direct GCODE commands.
- MOSFETS to play with for the heater bed & hotend
- Higher temperature rated power cap for the driver board
- For every 10 °C lower temp than the max rated, you double the life of the cap.
- Low ESL replacement caps for the remaining 3
Side note, found 2 of the 'stock' hotends on Amazon while browsing around:
I realize that I'll be pushing the provided power brick to its limit, however, I'll only be testing one upgrade at a time. Initially, I will be hooking up my scope and current probe(s) to monitor current draw in order to correctly tune the *stock* heater and heated bed. Based on the current observations from the printing I've done, it appears that I'll have to build in some rapid (2-5 Hz), low amplitude oscillations in order to compensate for the thermistor noise that produces inherent instability.
- Additional extruder
-
Limit Switches and Current Limits
07/18/2016 at 19:39 • 0 commentsHaving experienced a jam already along with noting that the limit switches only apply to 0, 0, 0, I'm now interested in looking at running specific tests to determine max current draw of the steppers and see what can be adjusted by the stepper drivers or in/with GCODE. Calibrating the extruder, monitoring current consumption to fine tune PID properly, et al is on my list of to-dos.
-
Initial Thoughts
07/15/2016 at 04:57 • 1 commentI've done some exploration of the MP Select Mini in the past 24 hrs. Nothing is perfected yet and this is just a "notes" entry as my thoughts and findings coalesce.
Electrical & Electronics end:
- The "12V 10A" power brick measures 12.3 V nominal at the control board. Measured with a UT171C.
- Standby current with the printer powered on and idle is ~140 mA. In-rush current is > 1 amp as the steppers kick when the board powers up. Measured with UT210E multiple times.
- Power lines are 16 AWG and with up to 10 A of current draw, will drop to no lower than ~12.25V.
- Upon using the "Home Axis" function to bring the printer to 0, 0, 0 while maintaining a hotend temp of 210 °C & bed temp of 60 °C, I measured no more than ~6.6 amps using the UT210E.
- The power transistors for the hotend and heated bed are AOD484, 30V N-Channel MOSFETS with 15 mOhm RDSon resistance.
- Despite the lower current draw of ~2-2.25 amps of the hotend and bed, individually and not cumulative, these still warm up a bit.
- I'm curious how the NXP PSMNR90-30BL will behave in place ot the AOD484.
- The display/LCD is a TM032PD204 and apparently a fairly common part.
- The USB-A to Micro-B cable provided is *unshielded*. Replace as soon as possible with a sheilded one. A house fan I used for temperature PID testing clued me into this detail.
- The thermistors are naturally noisy with a +/-0.5 °C spread at room temperature.
- Repetier-Host has no problem connecting and talking at 1,500,000 baud
- The stock 256 MB card tops out at 40.87 KB/sec for writing files to the SD card via Repetier-Host, regardless of the connection baud rate.
- Using an 8 GB SanDisk Ultra microSD card
- The updated M301 PID settings of P=10, I=0.02, D=304.5 work okay and do produce a stable temp, but when observing warmup, it is apparent that I is too low as the temperature undershoots.
- Given that there is a temperature gradient, between the element and the nozzle and the thermistor, I'd advise an initial temperature overshoot to ensure everything got up to temp appropriately and quickly.
- Adapted settings I've tested, but still take too long to stabilize, ~60 seconds, for my tastes are P=23, I=0.04, D=1500.
- However, the aforementioned settings take ~120 seconds to stabilize.
Mechanical end:
- The 10, M3x0.5mm, stainless button head screws that hold the side panels on are olvaled for thread forming. This means that despite the tapped threads in the sheet steel, the screws then roll the rest of the thread when they are installed.
- This is extremely beneficial for the "fine" pitch, though it is considered the standard pitch for this size shank.
- The Phillips screws are a #2 size and have a bolstered head to accommodate higher fastening torque.
- These are a triagle shapped shank for rolled thread forming as well
- A small split-lock washer accopanies each of these
- The set screws for the hotend are 1.5 mm hex
- The allen key provided is a 2 mm hex
- The additional support screws for the 5 mm shafts on the z-axis are a 2.5 mm hex fitting and are also M3.
- The hotend has the following details
- The hex fitting on the nozzle is 7 mm with a M6x1.25 mm thread.
- The ID of the nozzle is ~1.9 mm.
- The nozzle is made of brass.
- The guide tube is also threaded M6x1.25mm
- The opened is flared to 4.75 mm and constricts down to ~2.25 mm
- The bottom end *is* lined with PTFE for about the last centimeter and this further constructs to a 2.05-2.1 mm ID.
- It is lightly magnetic and is stainless steel.
- Together, the threaded sections amount to ~1 cm, which is also the thickness of the heater block.
- The heatsink has a 1/4" ID bore for the guide tube.
- There is a 6 mm OD x 4 mm ID x 8.5 mm tall PTFE bushing between the push-to-connect bowden tube coupling and the guide tube.
- The coupling is just a smidge under 3 mm ID, ~2.95-2.98 mm,
- The hex fitting on the nozzle is 7 mm with a M6x1.25 mm thread.
- The bowden tube is 29 cm, end to end. You can trim this to 28 cm, 27.5 cm minimum is you really want to, though I wouldn't recommend it.
- It is ~4 mm OD nominal and 2.1-2.25 mm ID.
- My hotend clogged once already and did so in the guide tube at the PTFE transition. Analysis of this failure mode suggested 2 things.
- Prolonged temperatures of ~210 °C for PLA with the stock fan are too high as a thermal equilibrium will make the PLA too soft.
- The heatsink for cooling the guide pipe is insufficient. Duh.
- Instead of threading in the nozzle and guide tube equidistant into the heater block, the nozzle should be threaded deeper and the guide tube thereafter to reduce thermal transfer.