Tool-head controller
December 08, 2008 11:08PM
I'm thinking of designing my own electronics for reprap, mostly because I have a few boards kicking around that are really well suited to it (well, overkill, really).

I want to be able to use exchangeable tool heads. By my count, I need three: Thermoplastic, conductor, and support. I can see possibilities for using 4 or 5 toolheads. This makes the need for a automatic head-changing system pretty obvious. I'm not sure about the mechanism for the toolhead swapping. I want to get the basic reprap hardware working before I worry too much about that, since I'll likely need a reprap to make the parts for the swappable extruders.
With all this in mind, I've been thinking about a toolhead controller.


My toolhead controller needs to handle:
- 1 Thermocouple input
- 1 quadrature input (to calculate extrusion speed)
- 1 PWM or DAC output
- 1 UART (RS-485)
- 1 docked/undocked signal
- Optionally, a valve controller: 1 Thermocouple, 1 PWM or DAC, might need 1 quadrature or 2 endstops, depending on solenoid vs. valve control

I have two controllers in mind for two reasons. I could use small AVR's for this; I already have the debug/programming hardware, but I would have to add AD595 thermocouple amplifiers, which adds $15 to each toolhead, call it $20 with the AVR. I could also use Cypress PSoC's. These come in various grades, but the ones useable for the functions I've listed run between $5 and $11, and I would need an ambient temperature reference (about $2) and I don't have the programmer/debug tool ($30). The big advantage with the PSoC is that the thermocouple measurement can be embedded right into the micro, and it will give 12-bit resolution.

I'm not sure which route to go. Both have available C compilers which will do the job. Both come in DIP.

I'm also interested in which will do the most good for the reprap community. I believe that the best option for toolhead controllers, now that we're running a monolithic control system using arduino/sanguino, is one controller per toolhead and a hot-dock with power and RS-485 provided. I'm flogging RS-485 because it is a multi-drop (bus) architecture, but it has good noise immunity. I also have a great idea for the cabling. RS-485 is two differential pairs, just like serial ATA cables, so it makes sense to me to use a SATA cable to run the data to the toolhead.

Any thoughts, comments, suggestions on which micro to use?
Re: Tool-head controller
December 09, 2008 12:17PM
I've found a really cheap alternative to the PSoC programming tool, so that $30 cost is removed, if that changes the landscape at all.
Re: Tool-head controller
December 10, 2008 05:57AM
A few thoughts I had about the head interface requirements were:

Hot Plugging -
If we are going to have automated head swapping then some form of bus isolation or hot plugging will be needed.
RS-485 transceivers that support hot plugging are available.
For other buses a combination of an enable line for the tool and bus isolators would be needed to ensure power on transients didn't cause problems. A sense line isn't necessary as we know when a head is being added or removed.

Power/Control of Idle heads -
The extruder head and the conductor head both have to heat up.
Leaving the heaters on constantly could save time if multiple head swaps are needed, but wastes energy.
A method to control the heaters while the head is off would be best as the heaters could be adjusted by the print controller to optimise speed and or power use.

Connector -
If automatic head changing were to be used then some form of self aligning low force connector would be needed.

Does anyone know of a suitable cheap but reliable connector for 6+(Ground,Power,RS 485) lines and potentially 4 Amps(heater + motor + fan + solenoid)
VDX
Re: Tool-head controller
December 10, 2008 06:09AM
... what's worth some brainstorming are magnetically supported plugs with 'wet' connectors.

The magnets press the connectors together and some sort of fluid metal (e.g. Galinstan: - [www.geratherm.com] ) ensures proper contact and support for high curents ...

Viktor
sid
Re: Tool-head controller
December 10, 2008 08:36AM
What about those zero force connectors (what's they called in english? we call them Nullkraft) we just have to think of a way to move the lever..

the lever can be cached and moved be the toolhead, in that case the connector (head side) should be springloaded, so that it's connected before the lever is catched, and is still connected if the lever is released again.

But what's wrong with the current design?
Anything that doesn't work?

'sid
VDX
Re: Tool-head controller
December 10, 2008 09:38AM
Hi sid,

... i think this is some brainstorming for a multi-head-toolchanger.

Imagine a battery of 5 to 10 different toolheads and a gripping/connecting bay for high-ratio changing and currents of some amperes per connector (heating and motors) - here the normal ZIF(zero-insertion-force)-socket isn't stable enough ...

Viktor
sid
Re: Tool-head controller
December 10, 2008 09:58AM
Hi Viktor,

but we already have a toolchanger mechanism, don't we?
(at least I do have on my old bfb moulded parts)

True I don't have the toolhead bay for new heads;
but I have the "slide in" clamp and a connector on the toolhead, similar to the one Adrian posted in his mendel preview Jul 16th 07.

So, why start from scratch again... ?

And you're right, a ZIF Dip Socket won't stand the amps,
but there are cable connectors, interboard connections and so on with a zero insertion force too;
so maybe we find one of those that is capable of withstanding 2 amps (we don't have anything more than 2amps atm, do we?)

fyi: Right now it's a sub D serial (9 pin) connector.

'sid
Re: Tool-head controller
December 10, 2008 10:07AM
These connectors are excellent for the job. 5A per pin and there's only a connector on one side. The other side will line up with a piece of veroboard or lands at .1" (2.54mm) spacing [samtec.com]

Any thoughts on the controller?
VDX
Re: Tool-head controller
December 10, 2008 10:19AM
... there are two directions for tool-changing.

1. manual change: - here you can use any connector-type you want.

2. automated change - this is very tricky and most comercial systems use highly sophisticated and expensive components.

If you want to fab a complex part over some hours to days then an automated (cheap'n'easy) tool-changer would be very welcome winking smiley

Viktor
Re: Tool-head controller
December 10, 2008 06:16PM
The tool changer is something that I will be spending some time on once I have a reprap running.

For now, I need to get the beginnings of the electronics going so that I can start work on building my reprap. I know that I want to use a micro right on the tool-head so that each toolhead has the ability to do maintenance and preheat when not in use. e.g. if we're using a hot filler and hot plastic, you don't necessarily want the filler staying hot while fabing a whole plastic section or vice versa, but it would be functional to have the system controller give a docked toolhead controller instructions to start a warmup cycle.

Which brings me back to the original problem: I need to choose a micro.

It needs to be DIP and it needs onboard A/D and PWM or DAC (more on that another time)

The PSoC should save a bundle by using an onboard instrumentation amp + filter + A/D instead of the external AD595 for thermocouple reading.

The AVR has better support and is already in use by the project. Overall, I think the PSoC is a better option, but if it's going to be fundamentally incompatible with the rest of the project, I won't go that route.
Re: Tool-head controller / PSOC
December 10, 2008 06:26PM
Annirak,

I've looked at Cypress' PSOCs a few years back, but wasn't impressed with their CPU. Are the current PSOC offerings something one can program in a HLL, with either free or low-cost tools? Similarly, are the analog components in PSOCs sufficiently stable (with time and temperature) to do a good job with the low-level thermocouple signal? (Do they include either a stable voltage reference or an accurate temperature reference, so one can do the cold-junction compensation correctly?

-- Larry
Re: Tool-head controller
December 10, 2008 06:54PM
Hi Larry,
I don't know how stable the analog blocks are. What I have is an appnote from cypress on how to measure a j-type thermocouple (with notes for how to modify for other types). It requires an LM335 as a stable temperature reference for cold-junction compensation.

I am likewise not impressed with the CPU, but the surrounding programmable analog hardware certainly does impress me. Hi-Tech offers a C compiler for the processor (with certain minor limitations, of course) for free. Code size is not one of the limitations.

The avr route is a guaranteed success. It seems like the PSoC has more room for development down the road but, in fact, the components needed for doing thermocouple measurement use up nearly all of the analog blocks. Maybe there's a third option in the form of an AVR with an external sigma-delta ADC that has a built-in temperature reference and preamplifier.

--Brendan
jbb
Re: Tool-head controller
December 10, 2008 10:08PM
Hi guys.

I haven't had any real PSoC experience but the people I know who have say they're pretty good but a little hard to program.

On the thermocouple front, I have seen app notes which suggest using a good, high precision ADC to measure the voltage across a thermocouple directly - either with an internal preamplifier and moderate resolution (16 bits?) or a really high precision (say 24 bit) converter where you dump the most significant bits. You'd need an external ambient temp sensor to correct to absolute values but as I recall some people have been thinking that we might need to know the ambient temperature during the build anyway.

Many of these converters have multiple channels can connect with SPI or I2C as well, so they won't soak up huge amounts of I/O resources.

Something like the AD7705 from Analog Devices would probably be suitable, but is a little expensive at $16NZ. You'll also need an external voltage ref. and temp sensor.
[www.analog.com]

Analog also offer a range of digital temp. references which provide a nice, easy solution via SPI or I2C comms. Or you could use a linear one and an ADC inside the AVR, but I'm not sure what accuracy you'd end up with.

I haven't seen any suitable SAR ADCs with inbuilt temperature measurement (of course I could just be blind...), but the AD7817 has a 4 channel ADC and on chip voltage and temperature references - maybe one could use an external precision amplifier to boost the signal level?
[www.analog.com]

jbb
Re: Tool-head controller
December 11, 2008 02:56AM
Well, I've got three ADC's to choose from. Each have advantages and disadvantages.

Analog's AD7705: 1 channel, 16-bit, built-in PGA, DIP, $11.19
TI's ADS1232: 2 channel, 24-bit, built-in PGA, built-in temp sensor, TSSOP, $10.35
Linear's LTC2486: 4-channel, 24-bit, built-in PGA, built-in temp sensor, DFN (with power pad), $6.41

I like the linear one the best. But I think I/we will be going with the ADS1232 unless there are adaptors out there.

Brendan
VDX
Re: Tool-head controller
December 11, 2008 03:12AM
... i used the C8051F330 ( [www.silabs.com] ) in a "Radio-stamp"-configuration for some wireless sensing and steering.

It's only 10bit ADC/DAC but enough for most tasks - i built wireless multi-node-networks and even microstepping stepper-controllers driving the lenses for active laser-focussing and video-microscopy.

Viktor
Re: Tool-head controller
December 11, 2008 11:29AM
Hi Viktor, you're right, all that's needed is a 10-bit A/D, an instrumentation amplifier and a temperature sensor. 10-bit A/D should give about a .5C resolution with the right gain on the instrumentation amp. Those 8051's would work nicely in that respect. However, I was going to try to stick to AVR's as that seems to be what the project is leaning towards. (I'd go for ARM, but those are not available in DIP)

Given that, we need a temperature sensor and an instrumentation amplifier at the minimum. The LTC2486 puts those both in the same package and gives you a 16-bit ADC for roughly the same price. (the $6.41 is in single-unit quantities. At 25, they're $4.56, and at 100 units, they're $3.7559)

I'm talking to a LTC rep about possible solutions for mounting.
Sorry, only registered users may post in this forum.

Click here to login