I was just reading about JSD the other day after reading about KL divergence...seems like a nifty measurement device for things like sim-to-real evaluations in robots (the reason I was going down this rabbit hole.)
I think the appeal over raw KL is that JSD behaves a bit nicer when the simulated and real distributions don't perfectly overlap...which is basically always true in the real world!
I did some river/lake sailing as a kid on the East Coast but now the urge is calling to me! I remember the "righting the boat" test being the scariest/most fun part of the experience -- super glad I went through that and feel confident on a small boat.
Now...I used to remember all the knots we learned but that memory is mostly gone
mold making is also pretty complicated -- anything in the 1,000-1M parts produced will _probably_ be an aluminum mold (cheaper than steel) but they're still heavy and large to keep around.
I haven't met any injection molding shops in the US that do a huge amount of specialty parts like toys. The industry tries to get as many medical device jobs as possible.
This scratches a corner of my brain I didn't know I had. It's the start of the month and I'm writing investor updates, and seeing an author who...wants to treat writing a book like it's a startup and a book advance like a raise...neat!
Half of college I'd take the Crescent from Philadelphia to Atlanta, then back at the end.
It was great -- you could bring on as much as you could carry (I brought a beanbag chair my junior year) and the food was always good. You meet some incredible people on Amtrak.
Being in SF now I've wanted to check out the Amtrak scene to do some West Coast exploring!
That's another very, very interesting case we thought about tackling. That sounds like something that's ripe for transformer-based vision models to keep the overall size of the model down.
What kind of timescales do you get when measuring parts in an electron microscope case? Are these crankshafts whizzing by, or something like a ship propeller where people spend days making sure every inch is covered?
It's so incredibly frustrating when you're past final assembly of some system, and only then do you see a defect that requires a teardown! You touched upon a really fun piece of defect detection -- quality metrics are highly dependent upon the customer, but that makes it fun for us
Great paper links too, I really appreciate that! My French is a little rusty, but I love the comic at the start!!
Injection molding houses are heavily concentrated in LCOL areas -- but it's a massive market, so, so much of modern materials are plastic that there's a lot that's done in the US/Canada/Mexico, in North America, and Germany/Italy/Austria.
For just the automotive industry, there are 120 injection molding contractors in Michigan alone. Onshoring and reshoring are desired for really customer facing parts -- you spend a lot of weight on packaging to mitigate scratches when you produce abroad then assemble domestically.
Staying with automotive, electrification is driving the injection molding industry -- as your weight shifts to "big battery with a shell around it" more of the total components of a vehicle are injected.
Zooming out of automotive, biomedical device packaging is a huge injection molded business that's stayed in the US and is growing.
LLMs like GPT-4o have some pretty impressive image performance. It can actually pick up some of the more obvious defects on our buckets (Steph tested it out just now).
Two problems though with the OpenAI approach:
1. You'd need a cloud connection to send those images up to and get the answer back down so that's cost in terms of your round-trip latency, network infra, and the OpenAI account itself.
2. It doesn't do well with the very subtle defects - mild shape changes, loss of features from short shots, etc
It might be worth using in the offline pipeline for auto labeling though!
> Nice! I have so many questions.. How stable is the injection molding process once it's fully proven out, up and running? Is it a bathtub curve shape, do defects keep randomly popping up?
They tend to pop up randomly -- mold wear is a big one -- and that's a function of material selected for the mold itself (resin vs aluminum vs steel.)
> What do you use on your end to label the ejector pin locations, parting lines, etc? Does this process use Hexagon software inputs to make that easier?
Right now we have an in-house tool for this - but it's a bit painful on our end so we're always looking for good alternatives!
> If you're not relying so much on a skilled operator, would you be using a CMM for dimensional inspection anyways, and then would this be better solved with a CMM? How can you get quality parts if you don't have a skilled operator anyways to set up the machine correctly and correct the defects? Are you ever going to be able to replace a good machine operator? Or this just helps reduce the inspection toil and burden? Do they usually need 100% inspection, or just periodic with binning?
Injection molding is usually for mass manufacturing - think multiple parts coming in bursts every minute or so - which makes CMM a tough to integrate without way slowing down your line. There's also the case of big objects like bumpers and chairs that might not be easy to CMM. We're not shooting to replace machine operators - just make their lives easier. With injection molding our customers so far usually really want 100% inspection instead of sampling.
> Don't most of these machines have the parts just fall in a bin, with no robot arm? Doesn't this seem like instead of paying a good injection mold tech, now you're paying for an injection mold tech and a robotics tech, if you have to program the arm path for every part setup?
Depends on the shop! Some have automated packaging systems that someone has to stare at. Some are trying to add in automated packaging a build out a defect plan. Keep in mind you don't necessarily need a full robot to get bad parts off your line - a little shoving arm to just boot the bad parts off a conveyor works fine in some cases.
> How many defects are "dimensional" and how many are "cosmetic" ?
Varies wildly by design - but I'd say we see more cosmetic than dimensional. Maybe because the ratio of cosmetic surface to interface surface is fairly high.
> Can a defect detection model accept injection mold pressure curves as input? Isn't that a better data source for flash and underfilling?
I'll have to keep that in mind - it's a great idea. The hard part there is that you'll need a per-machine calibration and a lot of data collection. Could be good though!
> Is this supposed to get retrofit, or go on new machines?
Ideally both since it's a separate camera system, although I'd love to try to integrate with the machines themselves.
Making synthetic data from a 3D model is really nothing too special - it's just a tiny subset of what video game engine does. But there's one extra step required for defect detection: you need to think about where the defects occur (and where the non-defect witness marks occur) and simulate those. Like any startup our biggest advantage here over the big companies is we move fast and customers usually like us. Our second biggest advantage: defect detection just isn't sexy, so it's not top of mind for most folks.
I think yes there probably should be tariffs on Chinese EVs (we're pretty big on on-shore manufacturing) but that's essentially a crutch. We'll need a lot of automation and design work to push down US-made EV cost to be competitive. If we want electrification to increase and onshoring to occur we've gotta bring prices down to something folks can easily buy that solves their problems.
Regarding pricing: we we charge at a per-model basis -- so the workflow when you're ready to retool your line, send us the CAD and we'll send you the defect detector model and the bill. We're still working out if there's some sort of "enterprise tier" for folks like CMs who are flipping through molds almost as quickly as it takes to heat up/cool down a machine
Pricing is custom and is a dependent on a few key factors like what your quality tolerances are.
In, say, the disc golfing space, you can have wildly different acceptance rates for flashing around the rim of the disc at a manufacturer-by-manufacturer basis
You nailed it - when the part comes out of the mold, it slides down a chute onto a conveyor belt. From here, the arms themselves change depending on the supplier (Kuka/Fanuc/Universal Robotics/Yaskawa...there are a lot of players in the space,) but they're all used to hold the part in the air so we can take images on all sides -- then the arm moves the part to its correct spot (good bin/bad bin)
for computing the grasping position -- your mileage may vary depending on which axis/face matters the most for an object (in an automotive part, you want to grasp the side that's not customer-facing because people care less about a scratch there) but it's a real challenge.
Luckily EtherCAT + protobuf's adoption has helped keep the comms integration low -- even a few years ago we'd need to make a weird hop from camera --> PLC --> arm but things are slowly getting easier
I was just reading about JSD the other day after reading about KL divergence...seems like a nifty measurement device for things like sim-to-real evaluations in robots (the reason I was going down this rabbit hole.)
I think the appeal over raw KL is that JSD behaves a bit nicer when the simulated and real distributions don't perfectly overlap...which is basically always true in the real world!