|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> I'd almost consider trying to track down some software like this - if it
> wasn't for the fact that I keep hearing that it costs a fortune and
> crashes routinely...
There used to be a really good free version of Pro/Engineer called
Pro/Desktop, but unfortunately they stopped supporting it and I think you
needed to get some registration key before it would work on your machine.
Shame, because it was really nice and there really is no other decent free
CAD software out there, and as you pointed out the commerical software is
really expensive so not really suitable for home tinkering.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
>> Damn. That process must take some designing!
>
> Yes, that's why the tools have ridiculous prices, usually with 6 or even
> sometimes 7 figures! And then you realise why the guy gets annoyed when
> you ask for +/-0.1mm tolerance between two specific points :-)
actually. :-} I imagine the inside of one of those is somewhat more
complicated than a flat metal bracket.
>> Heh. How thick is the metal??
>
> Usually 0.3 - 0.6 mm depending on how big it is.
How strong is the metal? And how heavy? I mean, I guess it varies by
which particular alloy you use... Presumably somebody has already
tabulated this data? I imagine for a sufficiently small part, you can't
physically apply enough torque to it to actually bend it. (In normal
circumstances, at least.) I guess that's why small twigs sometimes seem
"stronger" than large branches...
> The tools are quite
> beefy though, see attached (that is just stage 4 out of 7), all the
> intricate detail in the middle is what actually makes the cuts and
> folds, the inner working of each stage can be quite complex with spring
> loaded plates and levers etc to do the bending correctly as the two
> halfs come together.
Hmm. And now I'm wondering... how do you manufacture the tool you use to
manufacture the thing you actually wanted to make in the first place? :-D
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
>> I'd almost consider trying to track down some software like this - if
>> it wasn't for the fact that I keep hearing that it costs a fortune and
>> crashes routinely...
>
> There used to be a really good free version of Pro/Engineer called
> Pro/Desktop, but unfortunately they stopped supporting it and I think
> you needed to get some registration key before it would work on your
> machine. Shame, because it was really nice and there really is no other
> decent free CAD software out there,
Mmm. Pitty.
I suppose notionally if I knew how it works, I could write something
myself. OTOH, I have yet to write a working Tic-Tac-Toe program, so...
maybe not. :-/
> and as you pointed out the
> commerical software is really expensive so not really suitable for home
> tinkering.
I guess they figure that if you're going to spent 7 figures *per tool*
to make your multi-part item, a few extra digits for a CAD package is
nothing... ;-)
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> I suppose notionally if I knew how it works, I could write something
> myself.
I often thought about this too, this is usually what is used internally to
represent the shapes:
http://en.wikipedia.org/wiki/Boundary_representation
But it just gets too complicated too quickly when you have to calculate CSG
operations, adding rounds to edges etc, it's much harder than raytracing
CSG!
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> How strong is the metal? And how heavy? I mean, I guess it varies by which
> particular alloy you use... Presumably somebody has already tabulated this
> data?
Of course.
> I imagine for a sufficiently small part, you can't physically apply enough
> torque to it to actually bend it. (In normal circumstances, at least.)
Why not? What is going to limit how much torque you can apply, you just get
a machine with a beefier tool and press attached.
> I guess that's why small twigs sometimes seem "stronger" than large
> branches...
That's probably just because you can't get a good grip of the twig to apply
enough torque, sandwich it between two huge steel plates, both with a step
in them, then apply 10 tons of force and I think you will see that the twig
can bend :-)
> Hmm. And now I'm wondering... how do you manufacture the tool you use to
> manufacture the thing you actually wanted to make in the first place? :-D
Some guy sitting at a computerised milling machine I would imagine.
And yes, how do you make that, etc etc I think at the beginning someone had
to make something with their bare hands :-)
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
>> How strong is the metal? And how heavy? I mean, I guess it varies by
>> which particular alloy you use... Presumably somebody has already
>> tabulated this data?
>
> Of course.
Heh. Or do you look that up from the spec sheet of the guys selling you
the metal? ;-)
>> I imagine for a sufficiently small part, you can't physically apply
>> enough torque to it to actually bend it. (In normal circumstances, at
>> least.)
>
> Why not? What is going to limit how much torque you can apply, you just
> get a machine with a beefier tool and press attached.
Sure. I'm thinking about when the part is in normal use. When you're
manufacturing it, you can use all kinds of machines to apply multiple
tonnes of force to it. But once you've bolted it to the car, somebody
isn't going to put 20 tonnes through it with their bare hands. You'd cut
your fingers for one.
But, if the part was larger, it might be easier to bend it with your
bare hands. And that's kind of what I'm getting at: does the thickness
of metal "necessary" to make a part "strong enough" for everyday use
depend on how large the part is?
>> Hmm. And now I'm wondering... how do you manufacture the tool you use
>> to manufacture the thing you actually wanted to make in the first
>> place? :-D
>
> Some guy sitting at a computerised milling machine I would imagine.
>
> And yes, how do you make that, etc etc I think at the beginning someone
> had to make something with their bare hands :-)
Sounds like bootstrapping a compiler.
Haskell's compiler is written in Haskell, so how do you compile it? ;-)
[I realise nobody gives a **** what the answer to that one is, but I'm
going to tell you anyway.]
To compile GHC, first you need a working Haskell compiler.
Realistically, a working copy of GHC itself, since the source code uses
so many GHC-specific features. But it is guaranteed to work with
anything newer than GHC 6.6, which is pretty old. (Apparently, the very
first GHC was written in ML.)
Anyway, you need *something* that can compile Haskell source code. This
is the "stage-0" compiler.
You then take the source code for GHC, compile it using the stage-0
compiler, and the result is called "stage-1".
This compiler, however, is linked against whatever Haskell libraries
your stage-0 compiler has. So the next thing you do is recompile all the
Haskell standard libraries using the stage-1 compiler. (This takes
drastically longer than compiling the compiler itself!)
You then compiler GHC all over again, using the stage-1 compiler and the
newly compiled libraries. This produces the "stage-2" compiler, which is
the final product.
[Optionally, as a stress test, you can recompile GHC using stage-2
yielding a stage-3 compiler. But the only purpose of this is to check
that stage-2 is working properly; you don't *use* stage-3 for anything.]
It should also be noted that stage-1 has a bunch of features disabled.
Stage-2 has everything enabled, because it's the "final" compiler.
Why not just compile the libraries with stage-0, compile GHC with
stage-0, and be done with it? Well, because libraries compiled with
different versions of the compiler are incompatible. So a library
compiled with stage-0 (which might be, say, GHC 6.6) won't be compatible
with stage-1 (which would be GHC 6.10.x). That's why you have to compile
stage-1, compile the libraries with stage-1, and then compile stage-2
with those libraries.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> Heh. Or do you look that up from the spec sheet of the guys selling you
> the metal? ;-)
Well there are standard steel and aluminium alloys that have well documented
properties, when a supplier sells you one of these types you know what you
are getting, and if it's not within the official standard then you can get
your money back etc.
> Sure. I'm thinking about when the part is in normal use.
Ah I see, you mean if a part is designed to have some force applied during
normal use, like a door handle or a key or something. Well yes, obviously
then you figure out what is the maximum force likely to be applied during
normal use and simulate/test that it will not break under that load.
> Anyway, you need *something* that can compile Haskell source code. This is
> the "stage-0" compiler.
But who wrote the stage 0 compiler? Was it written in machine code?
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
>> Heh. Or do you look that up from the spec sheet of the guys selling
>> you the metal? ;-)
>
> Well there are standard steel and aluminium alloys that have well
> documented properties, when a supplier sells you one of these types you
> know what you are getting, and if it's not within the official standard
> then you can get your money back etc.
Ah, I see.
>> Sure. I'm thinking about when the part is in normal use.
>
> Ah I see, you mean if a part is designed to have some force applied
> during normal use, like a door handle or a key or something. Well yes,
> obviously then you figure out what is the maximum force likely to be
> applied during normal use and simulate/test that it will not break under
> that load.
If you're making something like an LCD mounting bracket, do you actually
do a detailed simulation for that component? Or do you just do "OK, well
we're using 0.3 mm steel for the rest of the frame, so let's use 0.3 mm
steel"? (And change it if it turns out to be too weak...)
>> Anyway, you need *something* that can compile Haskell source code.
>> This is the "stage-0" compiler.
>
> But who wrote the stage 0 compiler? Was it written in machine code?
As I say, the "original" GHC was written in ML. (I have no idea what the
ML interpretter was written in...) These days, the stage-0 compiler will
just be an older version of GHC which is already compiled.
The fun thing is if you want to ran GHC on an unsupported platform. This
apparently involves asking GHC to compile itself into ANSI C, and then
using a suitable C compiler for the target platform to produce a working
binary. Apparently some nutter used this to get GHC to work on a mobile
phone powered by an ARM CPU or something random like that...
Aside from GHC, there are a few other Haskell compilers. AFAIK, Hugs is
written in plain C. NHC98, YHC, JHC, LHC and EHC/UHC are all written in
Haskell. Most of these are "experimental" compilers that can't be used
for production use. Only GHC is really "production-ready", and hence
when people say "Haskell compiler" they almost always mean GHC.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> If you're making something like an LCD mounting bracket, do you actually
> do a detailed simulation for that component?
Only if it's in a place where someone could grab hold of it and tug it.
Best example is when it's mounted sticking up from the top of the dashboard
like this:
http://image.motortrend.com/f/9217160/112_0611_03z+2005_bmw_x3+interior_dash.jpg
It has to be able to withstand somebody grabbing hold of it and pulling to
help themselves out of the car, in that case the metal is much thicker and
we run finite element simulations to check. It's further complicated
because during an accident if someone hits the display it must collapse
backwards and not be rigid, so you kind of need 1-way strength :-)
> Or do you just do "OK, well we're using 0.3 mm steel for the rest of the
> frame, so let's use 0.3 mm steel"? (And change it if it turns out to be
> too weak...)
For most other things, yes, or just based on our experience from the 100
other LCDs we've made over the last 10 years. On a recent project we had to
change from 0.3 to 0.4 mm metal after some clips that were designed by the
customer were not strong enough. Nobody tested for this or simulated it,
but to be honest there is no need as things like that always show up in the
early samples before we get anywhere near making the mass production tools.
> The fun thing is if you want to ran GHC on an unsupported platform. This
> apparently involves asking GHC to compile itself into ANSI C, and then
> using a suitable C compiler for the target platform to produce a working
> binary.
And I guess the C compiler can be cross-compiled on a pre-existing platform.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
>> If you're making something like an LCD mounting bracket, do you
>> actually do a detailed simulation for that component?
>
> Only if it's in a place where someone could grab hold of it and tug it.
Figures.
> It has to be able to withstand somebody grabbing hold of it and pulling
> to help themselves out of the car, in that case the metal is much
> thicker and we run finite element simulations to check.
How long does it take to do a computer simulation to check that
something won't break? How complicated is the process, and how much
computer time does it take?
> It's further
> complicated because during an accident if someone hits the display it
> must collapse backwards and not be rigid, so you kind of need 1-way
> strength :-)
So... corrugated? Or something.
>> Or do you just do "OK, well we're using 0.3 mm steel for the rest of
>> the frame, so let's use 0.3 mm steel"? (And change it if it turns out
>> to be too weak...)
>
> For most other things, yes, or just based on our experience from the 100
> other LCDs we've made over the last 10 years.
Heh, yeah. I guess if you've made something similar before it helps a
lot. ;-) I was just thinking, I imagine for "most" manufactured items,
the designers probably have a basic intuition about roughly what
thickness of metal is required. I don't suppose they do an exhaustive
mathematical derrivation of optimal thickness for every single component
ever designed.
> On a recent project we
> had to change from 0.3 to 0.4 mm metal after some clips that were
> designed by the customer were not strong enough. Nobody tested for this
> or simulated it, but to be honest there is no need as things like that
> always show up in the early samples before we get anywhere near making
> the mass production tools.
Right. So you take an educated guess, and if the prototypes fall apart,
you figure out which bit broke?
>> The fun thing is if you want to ran GHC on an unsupported platform.
>> This apparently involves asking GHC to compile itself into ANSI C, and
>> then using a suitable C compiler for the target platform to produce a
>> working binary.
>
> And I guess the C compiler can be cross-compiled on a pre-existing
> platform.
Almost every platform known to man already has a C compiler - even if it
has nothing else. The C compiler is typically the very first thing that
gets built. ;-)
Itanium? Yep, that has a C compiler. UltraSPARC? Yeah, C compiler.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
|
|