Here is a list of all the postings Joseph Noci 1 has made in our forums. Click on a thread name to jump to the thread.
|Thread: What Did You Do Today 2019|
Engraving Circuit boards again - this time for a direct-conversion VHF SSB/CW receiver I am building ( for tracking animal Radio Collars). The current one I use, also a diy unit, is a bit large and unwieldy while trekking in the desert mountains searching for the Lions...Trying to make one that fits in a shirt pocket...
The current receiver: front is 150mm x 60mm - trying to get to 100mm x 35mm..
Am getting really good results with the small CNC Engraver - the IC in the middle is a microprocessor, with pins spaced 0.5mm apart. Circuit board material is FR4 35um copper clad fibreglass laminate, 1.6mm thick. Cutter is a 30deg D type carbide bit @ 30,000 RPM, and constant depth assured with the floating engraving head. Depth is around 45um
All for a prototype to test before committing to actual PCB...
This board is the control and microprocessor module - RF/AF module to follow..
The engraving bit and floating head;
The floating foot:
Posted by Boiler Bri on 08/06/2019 05:21:44:
I made a start on the hydrostatic lubrication today.
New tanks made from 316stst.
Forgive my ignorance...What are those tanks used for?
You said :
Yep all tig welded.
I am sure my boiler inspector will have something to say!
Are the tanks boilers? If not boilers, are you saying they have have hot water in them somehow?
Interested to know how you tigged them. Did you fill/purge with Argon when welding?
Maybe you are coded in SS welding, but if not , there are many pitfalls in welding stainless that is exposed to hot water. The tanks must be back-filled with gas, and weld temps must be very well controlled to prevent carbon precipitation. Else those become rust focus points, and the tank turns becomes a sieve..Ask how I know..
|Thread: The Workshop Progress Thread 2019|
But....It looks Painted..??
|Thread: Electronic Indexers - How Is Cumulative Error Avoided?|
John Haine said:
Mach 3 doesn't work quite like that................
............. It depends on the initial acceleration being fast enough to get to the right speed before reaching the work and always following the same profile so the tool is always starting the cut at the same point. This means using an acceleration which is well within the maximum capability of the Z drive and allowing sufficient lead-in
In essence wot I said...!
Sorry, I did not respond to your second issue...
I presume you mean when surfacing with carriage feed applied.This is in effect threading, but the constraints are hugely relaxed - Thread start has no meaning, and all you really want is a constant feed for good finish. I ditched the concept of syncing the carriage to spindle rate, and all I do is have a POT that sets feed rate, ie, stepper pulse frequency, from 0 to 5mm/s. That feed can work with spindle on or off, so reversing the carriage under feed to cut one direction only is possible. Also, changing feed rate while cutting to see if an improved finish can be got is easy. The spindle encoder pulses are not used.
If you sync the two rates, then to change feed speed you have to stop the machine, and change what is effectively a thread pitch...the same as you would do if you had to fiddle with changes gears or the Norton Box..This way it's just a turn of a knob..
I am still in pain from my 40 lashes, so am wary of leading up to another 40....
However my understanding of Mach3 (very limited indeed) says that it has one pulse per spindle rev. Does this mean it is doing time interpolation?
You are perfectly correct Duncan. Mach assumes the spindle speed is constant from thread pitch to pitch, which works most of the time. Generally the machines inertia helps that be so, but where problems arise are at the start of threading. The single index fixes the start of the thread, and that must remain fixed in time and axis space, else you cut threads with mutliple helixes. Consider the threading process:
Setup the tool near the workpiece, set DOC, spindle speed, etc, and turn on the spindle. Now, if yor machine has no VFD, and the motor speeds the spindle up very rapidly, the stepper has to keep pace with the spindle on the next thread, ie, the stepper acceleration must ensure the tool arrives at thread start co-incident with the spindle index pulse. The stepper has to accelerate the carriage, and all its inertia, carriage and leadscrew nut friction, etc, sufficiently fast to ensure the spindle speed and carriage position remain coupled, as though they were 'geared'.
Should the stepper not keep up, and lose steps, you have to insert an acceleration curve into the stepper pulse rate ramp to prevent said problem. However... you know have no way of knowing where you are in relation to the SINGLE index pulse from the spindle...and so you lose sync and cut multiple threads..
The problem is made worse with an increase in spindle RPM and/or thread pitch. Mostly, with the sort of hobby threading we do, especially at rpm below say 200, and pitches around 'maybe' 15TPI min, we can get away with one index pulse, on most of the smaller machines. Machine with powerful motors get up to speed quicker, and the problem appears sooner..If you have a VFD you can all but eliminate the issue by accelerating the spindle more slowly. But, the type of implementaion as in Mach, has a problem with that - since it computes spindle RPM from index pulse period, and since it has to start the stepper pulse synced to the index pulse, Mach has no real way of knowing when the spindle is at speed, especially if the spindle accelerates more slowly. It cannot wait a while till the spindle is at speed before sending step pulses, as Mach would have to then accelerate the stepper to speed almost instantly , or at least within one spindle rotation. A very dodgy implementation..
What I did in my ELS implementation was - use a spindle encoder with 4096 edges per ev for inter pitch interpolation to generate stepper pulses. Use the single spindle index pulse to determine thread start and keep that cast in concrete for that thread cutting session. Then at thread start I count encoder pulses while generating accelerating step pulses to get the carriage up to speed. But, because the carriage is lagging behind in position ( due to stepper accelaration) , I will not get to the thread start point , in time. So, we accelerate the stepper faster, beyond the speed needed to cut the current pitch, to recover the lost pulses, and hence the lost time spent accelerating. The pulse count to the stepper, and the pulse count form the encoder both feed a software up/down counter. When the Spindle RPM has reached constant speed, we then look at our up/down counter, decrementing the stepper pulse rate, until the counters are equal ( delta is zero) , and we know we are at the correct thread start point.
All this requires that we start the spindle for threading, with the tool at least two thread pitches away from the work piece, for the acceleration catchup. I am able to thread at 1500 RPM for a 0.5mm pitch thread , and at 400RPM for a 5mm pitch..The latter being rather scary...carriage moving at 33mm/s. Obviously those are insane and undesired speeds - I regularly cut 1mm pitch threads at 500RPM though, with nice clean threads in Stainless.
I have added a feature that allows me to set the start of thread and the end of thread (right or left handed) and when thread endpoint is reached, the ELS stops the VFD 'dead' ( withing a turn or so..). This allows distracted (!) threading with no crashes...even up to a shoulder. But this is only practical at lower spindle RPM ( sub 2 or 300RPM) since the resulting mechanical stress at high inertial speeds worries me..DONT DO THIS WITH SCREW ON CHUCKS!!
That fear resulted in adding another feature , letting the spindle continue running (akin to snapping the half-nut open at thread end), but stopping the leadscrew drive stepper. Press rewind to get the tool back to thread start, and press thread to continue. And it is precisely here where we need the stepper acceleration process explained above, as the spindle is already at cutting RPM, and the stepper would have to accelerate instantly to get the tool in place at the start of thread, synced to the spindle single index pulse...
Linux CNC 'tries' to implement this same process, but the clan missed the boat.. It has warts and can bite you in the backside if not careful. I did raise the issue with the devs, who said thanks , we will look into it, but the latest but one release still has the issue...It works ok, 99.9% of the time, but you can crash a machine..
What a long story...
Well Duncan, if Ye seek sympathy from me for you New-Tech Adventure......Have Fun!
I too just get older, but all that does is make me try even more new stuff every day - Technology development has been exponential while the years left to me to play with that tech are still only linear, and I have a LOT to learn, do and experience.
Edited By Joseph Noci 1 on 02/06/2019 21:24:49
Dave, I will ask my good Wife to dig out the roots of the compiler we use - also a free download, and let you have that info as well. I believe I still have your email so will continue discussion via that route, when required..
I agree totally re Brain Exercise. I firmly believe it is one of the best defences against Alzheimer's.
I suppose all I am trying to say is, find new ways of exercising that muscle, rather than staying stuck in Ye Olde Wold...
I find its more interesting to place my own limits on how I might perform a task, rather than let the hardware limit me from the start..And that is no less taxing on the brain!
Dave, the Nucleo stuff is MBED compatible, so your compiler choice is great. We use a free compiler that is just a compiler, as we code from the ground up, ie, not in the MBED world and we do not use an IDE , which allows us greater freedom, but that does tax a newbie's patience when learning..
You choice of Nucleo is Ok, although if you can, try for the F446RE - has has lot more capability, more memory, more uarts, Video capability, blah, blah...In other words, unlikely that you would overtax the board ever..
As RS components UK the '446 is half a pound more than the '401 at farnell, also, the '401 at RS is half a pound less than the '401 at Farnell..( Farnell does not seem to have the '446 in stock).
The programmer is part of the Nucleo board, and you just download and install ST-LINK ( the latest one) from the STM web site. Use a USB cable to your PC and program..
Having TOTALLY stolen the thread that started all this, I crawl off into my corner and apply 40 lashes. I did EXACTLY what I have ranted about others should not do - divert a thread into oblivion...
In the end, you do what you are comfortable with, but I was never happy staying in a comfort zone for long..
True, but surely after a while the challenge is overcome - A cryptic crossword is tossed in the bin when done, unlike an indexer project...
If your challenge is purely of intellectual academic nature, then any means of meeting the challenge satisfactorily is the right one..However, I would say that your intellect would still be challenged maybe in new dimensions, by a faster tool..
If all you wish to do is play Tic-Tac-To, with the fewest assembly code instructions, limiting yourself only to AND and XOR operations ( I did this on an 8bit, 8pin PIC processor running at 50hz..) and not using more than 100 bytes, then that is a great challenge. It had me going for months. But when it was 'done' the point was lost - Tic-Tac-To is quite boring, so the culmination of the exercise was of little value - all it was was a mind challenge.
And if you used a 140MHz 32bit Nucleo Arduino lookalike, you could have done the same exercise, but maybe had 500 Tic-Tac-To games running together, and maybe add a random number generator to ensure no two game have the same strategy at any point in time...Challenges are what the mind makes of them!
This forum topic is supposed to result in a functional indexer for the fellow asking about it!
He may also be happy to 'buy a solution' if the concept and price is right!
Sorry for this post in that is goes a little of-topic, but the posters have goaded me into it..Just because we are used to old-style processor, assembly programming, and squeezing the last electron out of that 8MHz Arduino module, does not mean we should not embrace the later, CHEAP ( and INEXPENSIVE) processors available. Some of us may be 'old' as well ( me a little too - post 60's...), but that does not mean we cannot apply our minds to modern thinking. I understand the challenge of getting the almost impossible to work on a small, slow, integer machine, but it has to be different strokes for folks - It does not mean that one applies a 'lazy' mind when using more capable hardware, and doing the job with 'brute force' - you will find Bressenhams just as intriguing and interesting as fighting integer arithmetic!
At any rate, It all depends what you are trying to do. As Dave said:
In the rotary table application the performance of long integers versus floats happens to be almost irrelevant because the calculation is only done once per-step and the computer spends an eternity waiting for the motor to turn the table and has plenty of spare time for sums!
So even a steam driven processor would work just fine in a basic indexing application.
However, try use that rotary table as the gear blank drive in a gear hobbing process on your mill, or as an ELS system, cutting 3mm pitch thread at 300RPM. I can hear most shouting that is silly anyway, but a half decent ELS system can easily do that! The benifit is a very clean, quality thread and if using a VFD on the lathe, you can let the ELS stop the spindle dead at the end of the thread, making threading to a shoulder a doddle..
BUT, all that takes a bit more than steam drive...
Hobbing a 10mm diameter MOD 0.8 gear :
Assume the hob turns at 400RPM, with a 1000PPR encoder on the spindle. The gear blank turns at 40RPM. Assume a 40:1 ration between stepper and blank ( the rotary able ratio..) - and Stepper drive set to 800steps/rev. For blank @ 40RPM, the stepper RPM-1600, so stepper pulse rate = 21KHz, ie, approx every 47us. The encoder pulse rate ( 1pulse gives 4 edges, to get good resolution in gear blank positioning) @ 400RPM = 2.666KHz = 375us between edges. So do whatever pulse rate generation calculations you need , receiving encoder interrupts every 47us, sending stepper pulses every 375us, and whatever housekeeping needs doing, and see how far a stem processor goes...Of course, cutting a 127tooth MOD 0.8 gear, everything slows down a lot...
Likewise for an ELS ;
Assume a 1000PPR encoder on the spindle, a 3mm Leadscrew pitch, threading @ 300RPM, and cutting a 3mm pitch ( just cause the sums are easier in the head if leadscrew pitch = pitch of thread to cut..) Also a 2:1 ratio between stepper and leadscrew, with stepper set to 800steps/s.
In this case we have 50uS between encoder edges, the stepper turns twice for one thread pitch = 1600 stepper pulses, giving a step pulse rate of 8KHz, ie, a pulse very 125us.
And you can do all this because... MIPS are cheap, FLOATING POINT is cheap, and you can spend the effort in adding useful features ( spindle stop at thread end..) rather than chasing the lost instruction pointer that was destroyed by the last POP of the STACK because memory is low, or you could not keep up with interrupt rates so the STACK overflowed, etc...
Bressenham is all very well for clever people who have blindingly fast processors which can do floating point arithmetic quickly. Mere mortals like me just start at zero steps, work out how many steps it should have taken from zero to the next position as an integer, subtract the actual number of steps to the present position (it keeps track), subtract one from the other and move by that number of steps.
Duncan, I warrant that if you understand what you have done, you will just as easily understand Bressenhams!
My rant done...
Edited By Joseph Noci 1 on 02/06/2019 08:50:11
|Thread: Feeds and Speeds! 0.4mm milling cutters...|
Hi Steve. I am not really advocating specific included cutter angles at all - My approach is to use the largest angle possible, in keeping with the complexity of the board to be engraved. If your flavour is 0.1" pin spacing with one track between pins, then a 45deg cutter will do fine. The advantage of wider angle cutters is the robustness of the tip improves, and wear is less. Control over width of engraving does suffer though. A 45deg cutter will cut a much wider groove for smaller depth increase than will a 10 degree cutter. So a lot depends on how well you can control cutting depth, how rigid the machine is, etc. A floating head controls depth just fine, assuming a good vacuum system for chip removal so that the float rides on clean BURR FREE (!) PCB.
RT6035HTC is a Rogers laminate. It is still quite flexible, ie, it is not like a ceramic kitchen tile....The ceramic is added not really to increase heat resistance but to increase the dielectric constant, so that strip-line lengths are reduced, ie, wavelength of RF propagation reduces, so stripline dimension reduce ( Wavelength = Wavelength in free space / Sq Root of the dielectric constant). PTFE already has a constant around 4 ( effectively halving the propagation wavelength)or so, and the ceramic can take this up to 7 or 8 quite easily.
Engraving this material is in fact a lot easier than normal FR4...The laminate is not glass hard as the ceramic powder is embedded in PTFE, so the cutter penetrates and cuts quite easily - easier than in fibreglass. The problem with RF circuits on this type of laminate is that you normally remove large areas of copper, ie, it is not just track isolation as in normal digital or analogue circuitry. Striplines that form the inductors and capacitors in uWave RF PCB circuitry have very critical dimension tolerances and proximity to other conducting surfaces, worsening with increase in frequency..
And removing large copper areas on a laminate with even a 90deg cutter is tedious as best...You would need to use carbide flat end mills for that, and depth control is critical if you wish to maintain your stripline size computations...
One of my Career Lives was in uWave RF design - up to 76GHz, so experience has burnt many of my fingers...
PS - I presume this is for a radio Amateur application? 300 watts in the 2.4GHz ISM band may otherwise land you in none-to-tepid water...
As said, rather use a D engraving bit. I have great success with them. I built this CNC engraver specifically for PCB Isolation routing. The spindle motor is an RC Outrunner, turning at about 30.000rpm.
The cutter penetrates about 40 to 45um( the copper is around 35um on my FR4 PCB).
The trick with these engraving cutters is that the PCB has to be flat, and co-planar, else the tapered cutter cuts different widths as it penetrates the copper more or less. I gave up on trying to engrave with PCB just mounted 'flat' on the table - it was never flat or co-planar. Some cad packages can do auto-leveling, and you may have success that way. I made a floating head for my machine - floating on a teflon foot, with vacuum cleaning away the cuttings inside the foot, to ensure it always rides on the copper.
I also tried a vacuum table, but the PCB still is never flat enough - 20um makes a huge difference, and 20um is very small...
The PCB in the photo below has a pad spacing of 0.5mm. Tracks are 0.3mm wide, with 0.1mm isolation cut away.
The engraved finish is very good - no burrs, with some cleanup required of fine slivers sometimes left isolated between tracks.
Forgot to add - feed is straight down into the material ( only 45um into copper..) @ 400mm/min and cutting @ 600mm/min in X and Y. I can achieve those speeds as the machine is small, and VERY rigid. You would probably have to go down to around 40 to 80mm/min with a spindle speed around 6000rpm...
Cutter geometry is VERY critical. The cutting edge and cutter relief makes the difference between a terrible burred edge, and a clean smooth cut. Cutter relief at the very tip of a 10degree engraving cutter is not a trivial exercise to achieve, so get quality cutters if you can. I bought many 10's of cutters from banggood - 10 in a pack, and typically get 3 to 5 in a psck that work well - the rest vary from useless to 'good enough' for rough boards. Then I grind them again on my small T&C grinder, and after 2 or three grind attempts, I have another good set..
I use cutters with included angles from 10deg up to 45deg - they all do the job. For very fine tracks and pad spacing you would need the 10deg cutters. I have done down to 0.25mm pad spacing, with tracks of 0.12mm width..
Floating head lowered
And Raised a few mm
Edited By Joseph Noci 1 on 30/05/2019 23:42:06
|Thread: Electronic Indexers - How Is Cumulative Error Avoided?|
Precisely what I did with my ELS implementation and Electronic gear hobber - both sort of described in my various posts on MEW ( How I link to them is anyone's guess, or maybe Neil's...)
Bresenham takes care of it all with the smallest errors possible, and I used the Nucleo range of STM processor modules - Arduino lookalike/workalike, only MUCH faster , 140MHz, floating point, and US$15.00 for a board, with its programmer module..As Andrew said, whats not to like???
Mips/floating point, etc, are all VERY inexpensive today and while it's great to obfiscuricate software skills in retro-capability processors, why bother...
Bresenhams works very well in ALL these applications.
But, this is all intellectual masturbation if the OP just simply wants a system that he can apply and get to work, especially if he is not that able in the software space. In which case, I would suggest obtaining one of the mentioned systems that already work, and are more a diy assembly project than an adventure...
|Thread: Threading plastics|
As has been said a few times.The wire needs to be un-insulated, so no varnish, etc. For the screwdriver antenna the windings NEED to be in a cut thread as there is a wiper that is in very firm contact with the coil periphery and slides from one end to the other. Any movement of the wire may cause a short to an adjacent winding with useless consequences...shorted turns = poor Q factor, moving windings = inductance variation, etc. The simple delta in temp coefficient between the copper wire and the plastic tube in a variable environment makes the turns sometimes slack, sometimes taut, so no amount of pulling and tugging on the wire whilst winding will keep the windings from sliding around post the process. It needs a thread to locate them.
One could try to dribble epoxy over the wound assembly while it still rotates in the lathe, giving an even coating to all, and then when cured use sandpaper held against the coil outer while spinning in the lathe, to expose the wires again - but that is just a heck of a lot more work than cutting a neat thread. And you would need to be sure that the varnish/epoxy or whatever does not perform poorly under high RF exposure..
Edited By Joseph Noci 1 on 25/05/2019 12:27:04
This should give an idea of the intent...Although this one progressed a little beyond the screwdriver concept..
The screwdriver antenna inductor is normally uninsulated copper wire - the principle is that the antenna rod or whip is generally to short for the operating frequency ( <30MHz, typically)and so presents capacitively. To counter this in an attempt to get the antenna to resonate, we add a series inductor, the value of which will then vary with operating frequency. The Screwdriver antenna ( its name from the use of a battery powered screwdriver to drive the coil or shorting strip) has a coil of many turns, and for the higher frequencies, the coil is progressively shorted out, leave a resonating inductance value. This is normal done by have the RF entry to the coil via a movable contact on the coil periphery, able to move linearly from the start of the coil to the end, driven by a leadscrew or similar.
I have made a 'few' of those 'screwdriver jobs for mobile use - I used a 100mm schedule 4 PVC tube - had a wall thickness of 6mm. Is was light grey in colour, and To be sure of it's dielectric suitability I placed a 100mm section in the microwave, on high power, with a cup of water, for 10 minutes. It was mildly warm and worked ok in the application. Other tubes I tried - 100mm underground PVC drain pipe, a cream colour before the uWave test, dark brown and HOT after 4 minutes, a 75mm gutter down pipe, white, which also passed the test. I would have used that, but the wall thickness was onlt 2 or 3mm, difficult to cut the thread. I also made one using 40mm schedule 4 PVC tube that passed the uWave test - beware the typical house-hold 40mm PVC grain pipe - that stuff is very lossy.
I then made another using a solid 40mm x 300mm long Polyprop bar, and silver coated wire, with a roller contact - the bar rotated in bearings on a Polyprop through-shaft..It was a work of art, and the Hustler beat it..Was nice yo be able to change bands from the drives seat, but lost too many weak contacts - also, it was very difficult to eliminate the commutator brush noise on the bands - the motor is right neat the coil...
GPR is not good - the glass is fine, but the (general purpose ) resin is not. Is has high losses and used as a former in an HF amplifier tank coil, @150watts RMS, it got hot and softened. Polyester resins are worse..
Not sure how you intend making the sliding contact on the coil, but I used some of that berryllium finger strip, like on the peripheral inside of RF shielding cabinet doors, wound in a circle around the coil - that worked well.
I gave up on the antenna in the end - it was far more work that is gave back in performance - the good old hustler worked far better!
|Thread: What Did You Do Today 2019|
Bill, you are too literal. Yes, - .-. --- -... . .-. - --.---.. .-. .--. .. means 'Robert G8RPI.' , but how do you send the picigram in morse...
Not sure how you would send that in morse...
Want the latest issue of Model Engineer or Model Engineers' Workshop? Use our magazine locator links to find your nearest stockist!
You can contact us by phone, mail or email about the magazines including becoming a contributor, submitting reader's letters or making queries about articles. You can also get in touch about this website, advertising or other general issues.
Click THIS LINK for full contact details.
For subscription issues please see THIS LINK.