If you actually go back to the first post, you will see the initial reason for making a blog.
I was angry.
Simple as that - I was fuming at the stupidity of BT, or as I put it a lot "our favourite telco". There were so many things that wound me up. I was posting comments about this on the company status pages at the time, and that seemed rather unprofessional for the company to be doing. It is a sign that the company was growing up that I felt that way, and we are now 20 years old next month - definitely old enough to buy alcohol for the party. I called it RevK's Rants for that very reason.
What I have found is the the blog is a perfect medium for parking emotional issues. In general, I am not that emotional - well - I say that, but what I mean is that I am not the sort of person to burst in to tears over almost anything. I do get emotional - cross - angry - over anything I see as wrong or injustice - but crying my eyes out is not me... Or so I would have said.
What I found is that if I put my issues in a blog and told that small portion of the world that bothered to read my blog, I would feel I had "dealt" with the issue enough to calm down. Until I had a blog I would lose sleep over things, and now I do not (as much). If anyone needs therapy - I would suggest a blog. I suspect in times gone by it would have been a diary people would suggest, which is just a blog that nobody else reads!
Over time I found it also gave me a chance to show off some of the things I was doing. The 3D printing stuff is a lot of showing off. That was also therapeutic!
But I have also had the chance to be educational. That I find really rewarding, when I can explain something on the blog and people appreciate that I have done so.
Occasionally I can be controversial, and the comments can be very useful to help me understand what other people think. It works both ways.
Over all, the blog has been beneficial to my mood in many ways, and benefited some others too. I hope to continue to blog for years to come.
But today I find myself in a new state of mind, one I have not had before I do not think, one of extreme sadness. My eyes are sore from crying all day. And I wonder if posting this blog post will make even a small dent for me. It may not, but it is worth a try, and I hope it does. I hope it does not make my readers too sad. I am really sad for my daughter and her partner. This is where I am usually the last to have any empathy, but today I can think of little else.
Everyone we know, and the whole family have been very supportive of her.
It is all over this little man...
Thomas Arthur, born yesterday morning. He was doing well - a healthy baby boy until last night when he and his mum were rushed to another hospital in London. Doctors worked all night, and this morning he died.
A stillbirth would have been devastating, but this seems so much worse for all of us, and especially my daughter. There is nothing I can say and nothing I can do to make anything better for her. Only time can help, and then only so much. I am so proud of her.
He will be remembered, even though I never got to meet him myself.
Apologies for typos - but proof reading when you cannot see through tears is not easy.
P.S. Thank you all for messages via various media, I have not replied to them all as I don't know what to say, but thank you. It is the next day, and it was not just a bad dream, and I am at a loss as to what to do now.
2017-03-12
2017-03-11
Gearing up!
I really must stop looking at wikipedia - I read up on involute gears.
This time I did look on thingiverse first and there are loads of people that have published tools to make gears, but still, I really do feel the best way to learn is to do it yourself. It is not about re-inventing wheels (or gears) which I do a lot anyway, it is more about the process of understanding it by doing it. Published on thingiverse...
I ended up making a simple library to make the shape for involute gears. It is pretty simple, the shape of the gear is like the shape that would be made if you had a bit if string attached to the circle and unwound it. There it a great animation on that wikipedia site.
I had to take it further, of course. A general purpose gear module with loads of options...
A simple gear...
A chamfered edge - makes it easier to print...
Helical....
Double helix - herringbone/chevron (keeps gears aligned)...
With a hole...
With a recess for a hex bolt head (and a hole)...
With spokes...
Hollowed out with a base...
With a spindle in the middle...
Or pretty much any combination of the above.
But I did not stop there - I made a nice gear example module. Allowing some interlocking gear examples...
Why stop at 2? (I went up to 4 as it happens)...
And they work!
So more toys for my grandson to play with...
This time I did look on thingiverse first and there are loads of people that have published tools to make gears, but still, I really do feel the best way to learn is to do it yourself. It is not about re-inventing wheels (or gears) which I do a lot anyway, it is more about the process of understanding it by doing it. Published on thingiverse...
I ended up making a simple library to make the shape for involute gears. It is pretty simple, the shape of the gear is like the shape that would be made if you had a bit if string attached to the circle and unwound it. There it a great animation on that wikipedia site.
I had to take it further, of course. A general purpose gear module with loads of options...
A simple gear...
A chamfered edge - makes it easier to print...
Helical....
Double helix - herringbone/chevron (keeps gears aligned)...
With a recess for a hex bolt head (and a hole)...
With spokes...
Hollowed out with a base...
With a spindle in the middle...
Or pretty much any combination of the above.
But I did not stop there - I made a nice gear example module. Allowing some interlocking gear examples...
Why stop at 2? (I went up to 4 as it happens)...
And they work!
So more toys for my grandson to play with...
2017-03-08
Getting screwed
For some reason I looked up the wikipedia page on screw threads, well, technically bolt threads, (here). As one may expect this led me to have some fun with 3D models Monday night. It was very educational.
I have made screw threads before on OpenSCAD - it is very powerful. The simple way to make a screw thread is to use the linear_extrude function to extrude a slightly offset circle with a twist setting.
The end result works well enough as a screw thread. For the internal thread in a nut you simply make the circle slightly bigger to give some clearance. However there are a few issues with this.
One is that the cross section of the thread is a sine wave. This is not really a problem, but it is far from conventional. Do look at the wiki page and see the difference. As I say, it works, and is very simple.
But I thought I would have a go at making a standard thread instead. My first idea was that instead of rotating a circle I would create a 2D shape that matches the cross section of a standard thread, and linear_extrude/twist that.
That, in itself, was not easy, I ended up using a lookup function to linear interpolate the radius for each angle: an arc at the higher radius; then an arc linearly reducing to the lower radius; then an arc at the lower radius; then a final arc linearly increasing back to the higher radius. Using lookup and a loop to create a set of 2D points for the polygon function I was able to create the correct shape, and use it with linear_extrude/twist, and it looked fine and worked.
However, I realised another problem with the whole idea of using linear_extrude. It comes down to how it works. It makes a number of slices (you can say how many) and each slice takes the 2D shape, and then a small increment above it, and twisted accordingly, the same shape, and it creates the sides to join them together, like this.
As you see, the triangles are used to make the edge between the two slices.
The issue is when the twist between two slices is large, like this, and each of the side triangles ends up stretched across a chord which cuts off the edge of the circle (or whatever) creating this sort of squeezed middle between the layers.
If you slice exactly at the layer height you are printing and it is all aligned, then this may not matter, but it does not make for a very general purpose model - even slightly off and you will print very different shapes and dimensions. So the only answer is to have a lot of slices so that the twist between each slice is small. When you realise that for a 1mm pitch screw thread that is 360 degrees per 1mm, you need a hell of a lot of slices. You also need a lot of points on the circle simply to ensure the rotation works. Millions of faces for a simple screw thread.
So I started again. I created a set of 3D points of the helix that is the bottom of the outer edge of the thread, then the next edge above it, and then the bottom of the inner edge, and then the top of the inner edge (I did not round the inside of the thread, as that is optional). I added a point for the centre top and bottom, and then used loops to create the triangles for the polyhedron function.
First the bottom, joining the centre to each point at the bottom of the thread.
But as you can see it is not joined to a solid face, so 4 more triangles needed.
Then the side, I need two triangles for each square(ish) section, so they are done in separate loops.
Then the second part of the squares.
Two more loops for the next part of the thread.
The next.
And then finally.
Now the top.
But we still have a hole, so 4 more triangles to seal it up and we have a fully contained solid shape.
And if you want a longer thread... Just keep going.
As you can see, this uses far fewer faces to make the shape, and can be sliced at any spacing you like. It is much quicker to create and makes for a smaller file.
Of course you need the internal thread too, within a nut, for example. In this case I take a clearance value to add extra spacing so that the model will work when 3D printed.
And there you have it, some complicated OpenSCAD, published on thingiverse.
P.S. As someone has commented, there are thread libraries on thingiverse, including some very odd ones, but this was more about education - learning how exactly to use OpenSCAD and the polygon and polyhedron functions like this.
I have made screw threads before on OpenSCAD - it is very powerful. The simple way to make a screw thread is to use the linear_extrude function to extrude a slightly offset circle with a twist setting.The end result works well enough as a screw thread. For the internal thread in a nut you simply make the circle slightly bigger to give some clearance. However there are a few issues with this.
One is that the cross section of the thread is a sine wave. This is not really a problem, but it is far from conventional. Do look at the wiki page and see the difference. As I say, it works, and is very simple.
But I thought I would have a go at making a standard thread instead. My first idea was that instead of rotating a circle I would create a 2D shape that matches the cross section of a standard thread, and linear_extrude/twist that.
That, in itself, was not easy, I ended up using a lookup function to linear interpolate the radius for each angle: an arc at the higher radius; then an arc linearly reducing to the lower radius; then an arc at the lower radius; then a final arc linearly increasing back to the higher radius. Using lookup and a loop to create a set of 2D points for the polygon function I was able to create the correct shape, and use it with linear_extrude/twist, and it looked fine and worked.
However, I realised another problem with the whole idea of using linear_extrude. It comes down to how it works. It makes a number of slices (you can say how many) and each slice takes the 2D shape, and then a small increment above it, and twisted accordingly, the same shape, and it creates the sides to join them together, like this.
As you see, the triangles are used to make the edge between the two slices.
The issue is when the twist between two slices is large, like this, and each of the side triangles ends up stretched across a chord which cuts off the edge of the circle (or whatever) creating this sort of squeezed middle between the layers.
If you slice exactly at the layer height you are printing and it is all aligned, then this may not matter, but it does not make for a very general purpose model - even slightly off and you will print very different shapes and dimensions. So the only answer is to have a lot of slices so that the twist between each slice is small. When you realise that for a 1mm pitch screw thread that is 360 degrees per 1mm, you need a hell of a lot of slices. You also need a lot of points on the circle simply to ensure the rotation works. Millions of faces for a simple screw thread.
So I started again. I created a set of 3D points of the helix that is the bottom of the outer edge of the thread, then the next edge above it, and then the bottom of the inner edge, and then the top of the inner edge (I did not round the inside of the thread, as that is optional). I added a point for the centre top and bottom, and then used loops to create the triangles for the polyhedron function.
First the bottom, joining the centre to each point at the bottom of the thread.
But as you can see it is not joined to a solid face, so 4 more triangles needed.
Then the side, I need two triangles for each square(ish) section, so they are done in separate loops.
Two more loops for the next part of the thread.
The next.
Now the top.
But we still have a hole, so 4 more triangles to seal it up and we have a fully contained solid shape.
And if you want a longer thread... Just keep going.
As you can see, this uses far fewer faces to make the shape, and can be sliced at any spacing you like. It is much quicker to create and makes for a smaller file.
Of course you need the internal thread too, within a nut, for example. In this case I take a clearance value to add extra spacing so that the model will work when 3D printed.
P.S. As someone has commented, there are thread libraries on thingiverse, including some very odd ones, but this was more about education - learning how exactly to use OpenSCAD and the polygon and polyhedron functions like this.
2017-03-04
Today's work
My achievement for the day is this small plastic clip...
It involved many iterations, probably at least 10. But finally it is a small plastic clip that attaches to the spool reels for ColorFabb plastic and allows me to "park" the filament when stored.
I find it amazing how much detail one can include in something so simple and small.
But at the end of the day it does the job and I have printed dozens now to sort the various reels of plastic I have. Such a small thing but it is today's achievement.
It involved many iterations, probably at least 10. But finally it is a small plastic clip that attaches to the spool reels for ColorFabb plastic and allows me to "park" the filament when stored.
I find it amazing how much detail one can include in something so simple and small.
But at the end of the day it does the job and I have printed dozens now to sort the various reels of plastic I have. Such a small thing but it is today's achievement.
2017-03-03
Meet your ISP
We are doing a thing, again, on 2nd April at our offices in Bracknell. We will be 20 years old on 1st April this year.
There will be food - there will be a BBQ.
There will be drink.
It will be fun.
Eventbrite tickets.
There will be food - there will be a BBQ.
There will be drink.
It will be fun.
Eventbrite tickets.
2017-03-02
Resistance is futile
I mentioned previously that I designed some stacking number blocks for my grandson (on thingiverse here). He loves them, and knows the numbers and the order now. Technically you can sort of stack the 10 on top of the 6 instead of the 9, but not the right way up or even remotely "square", but otherwise it works very well - you can only stack in the right order, which is the idea!
Now I have some new plastic, I have been able to print them in the proper colours: Black, Brown, Red, Orange, Yellow, Green, Blue, Violet, Grey, and White.
Let the learning begin :-)
Now I have some new plastic, I have been able to print them in the proper colours: Black, Brown, Red, Orange, Yellow, Green, Blue, Violet, Grey, and White.
Let the learning begin :-)
2017-03-01
Buying plastic
I have mentioned several of the different materials used in 3D printing, but where do you go to get them?
Well, until recently we dealt with a company called RoboSavvy. They are pretty good and have some of their own PLA (Monsterfil) in large reels. However, I found they were not that good with having ColorFabb in stock.
Having hunted around on the net I was pleased to find a company called Creat3D. The good news is they are local (Reading) and even have a shop we could go to if we needed something urgent. They have been very helpful, had everything I wanted in stock and shipped promptly for next day with no problems. They even cope with paying by BACS rather than card if we want.
So, stocked up...
Well, until recently we dealt with a company called RoboSavvy. They are pretty good and have some of their own PLA (Monsterfil) in large reels. However, I found they were not that good with having ColorFabb in stock.
Having hunted around on the net I was pleased to find a company called Creat3D. The good news is they are local (Reading) and even have a shop we could go to if we needed something urgent. They have been very helpful, had everything I wanted in stock and shipped promptly for next day with no problems. They even cope with paying by BACS rather than card if we want.
So, stocked up...
Subscribe to:
Posts (Atom)
Wallot inspector
What is fun with a nice UV ink jet printer is on what you can print... One thing is a bank card. This is now my Monzo card, oops. Yeh, I can...
-
Broadband services are a wonderful innovation of our time, using multiple frequency bands (hence the name) to carry signals over wires (us...
-
For many years I used a small stand-alone air-conditioning unit in my study (the box room in the house) and I even had a hole in the wall fo...
-
This is an appeal for (sensible) comments. I am working on revised A&A tariffs for broadband. For those that are not sure how they wor...

































