Welcome! Log In Create A New Profile

Advanced

Background queistion: why RS485 + stepper signals?

Posted by floe 
Background queistion: why RS485 + stepper signals?
July 26, 2010 09:16AM
Hi everybody,

I have a background question: why does the mainboard use RS485 AND 2 dedicated logic signals
for talking to the extruder driver? I've had some problems with my extruder driver because I've left
the 2 inputs (D9 & D10) floating accidentially. But why not handle all of this via RS485 in the first place?

Florian
Re: Background queistion: why RS485 + stepper signals?
July 26, 2010 10:34AM
So you can replace the funny two DC motor bridge with a Pololu stepper driver since D9 and D10 are the step and dir signals that you need to drive a stepper controller.


Bob Morrison
Wörth am Rhein, Germany
"Luke, use the source!"
BLOG - PHOTOS - Thingiverse
Re: Background queistion: why RS485 + stepper signals?
July 26, 2010 10:35AM
Good question!

I do all my extruder control through a serial link and get good results. Adrian uses a 5D Bresenham algorithm run on the main micro, so the steps are generated at the wrong end of the serial link. I don't use anything that complicated.


[www.hydraraptor.blogspot.com]
Re: Background queistion: why RS485 + stepper signals?
July 26, 2010 06:56PM
Quote
So you can replace the funny two DC motor bridge with a Pololu stepper driver since D9 and D10 are the step and dir signals that you need to drive a stepper controller.

Yes I believe so. It will probably need a fan though.


[www.hydraraptor.blogspot.com]
Re: Background queistion: why RS485 + stepper signals?
July 27, 2010 01:58AM
nophead Wrote:
-------------------------------------------------------
> Yes I believe so. It will probably need a fan though.
But couldn't you just connect a Pololu driver to the D9 and D10 headers by using them as outputs?

My main point is that it seems quite unnecessary to have this nice robust RS485 link from mainboard to extruder and then add two rickety wires to actually drive the stepper. I think I'll have a closer look at the firmware, most of the code for driving the extruder without those inputs seems to be already present. The GCode interpreter on the mainboard might also need some minor changes, though.

Florian
Re: Background queistion: why RS485 + stepper signals?
July 27, 2010 09:49AM
floe Wrote:
> But couldn't you just connect a Pololu driver to
> the D9 and D10 headers by using them as outputs?

Yes that is what I meant. They are just step and direction signals. The extruder controller is programmed to emulate a stepper controller, which it does very badly.
>
> My main point is that it seems quite unnecessary
> to have this nice robust RS485 link from mainboard
> to extruder and then add two rickety wires to
> actually drive the stepper.

I couldn't agree more, no consideration to noise immunity. The reason it ended up in this mess is that electronics were designed by Zach, who prefers to use a DC motor for the extruder, and the RepRap firmware is written by Adrian who is wedded to the idea that the extruder must be controlled by a 5D Bresenham loop, where it is locked in step with the axis motors.

I don't believe such close coupling is necessary. I have only a 100Kbit serial link to my extruder and only 3D Bresenham code for my axes, and it works at least as well.


[www.hydraraptor.blogspot.com]
Re: Background queistion: why RS485 + stepper signals?
August 03, 2010 06:52AM
Ah!
Thanks all in this thread!
I am just setting up a system with an existing mini cnc mill, a stepper driven extruder and V3 electronics and had just started to test the stepper motor with much confusion. I used the 5D firmware and the reprap host software, but found strange behaviour with inconsistent and slow steps when I hit the EXTRUDE button, and the stepper still moving even after I turn off the extrude button. I haven't really delved into the depths of the software parameters yet, apart from finding the PWM duty cycle setting so I don't destroy the A3949's, so I'm not really ready to ask for help with that problem yet. But your info here really gives me some background.

So the leads from the MB SDA and SCL to D9/D10 are not I2C at all and just step/dir?? What if you want to run multiple extruders - I thought the idea was to multidrop slaves off the I2C. Thinking as I type (probably never a good idea) I suppose you only run one extruder at a time and the RS485 coms enables each extruder as required.

Well, I suppose that makes it much simpler to replace with whatever stepper driver (possibly micro stepping) you want. The PWM setting would not function, but current limiting or whatever control method was used would now be the job of the drop in replacement stepper driver.

Nophead: I've seen the parts your machines produce, and they are fantastic (truly well done), so I'll give your blog a good read to glean what I can of your control methods / software.
Re: Background queistion: why RS485 + stepper signals?
August 03, 2010 07:57AM
The current Gen3 Motherboard can drive up to four extruders using four sets of RS485 connections and four sets of Step/Dir connections.


Bob Morrison
Wörth am Rhein, Germany
"Luke, use the source!"
BLOG - PHOTOS - Thingiverse
Re: Background queistion: why RS485 + stepper signals?
August 05, 2010 07:55PM
Bob,
How do you get the four sets of Step/Dir connections as although I can see 4 RS485 connections, I only see 1 set of Step/Dir connection on the Motherboard.

David
Re: Background queistion: why RS485 + stepper signals?
August 06, 2010 04:01AM
@David: That is a problem since the Step/Dir signals are actually the I2C connections with SDA/SCL there are three other sets of connectors but it is the same SDA/SCL signals since I2C is an addressable bus system. So there you have it, the way it is currently setup you have four RS485 connections but only one set of Step/Dir signals. Difficult to use a second extruder this way. eye rolling smiley


Bob Morrison
Wörth am Rhein, Germany
"Luke, use the source!"
BLOG - PHOTOS - Thingiverse
Re: Background queistion: why RS485 + stepper signals?
August 06, 2010 07:23AM
You can support multiple extruders as long as you don't run them at the same time, they can share the step / dir connections and the RS485 can be used to enable them. Still a crazy scheme though.


[www.hydraraptor.blogspot.com]
Re: Background queistion: why RS485 + stepper signals?
August 06, 2010 09:00AM
True. And since you normally wouldn't use them at the same time it should work fine if we ASS-U-ME that the enable pins are being properly enabled/disabled.


Bob Morrison
Wörth am Rhein, Germany
"Luke, use the source!"
BLOG - PHOTOS - Thingiverse
Re: Background queistion: why RS485 + stepper signals?
August 25, 2010 04:05PM
I'm having a problem with communication in the same setup as well. If I dry run with the stepper extruder disconnected including D9 D10 I will get no errors. The moment I try to actually extrude during production I get a checksum error. It seems the RS485 and the 2 inputs are colliding. Is there a work-around for this?
Re: Background queistion: why RS485 + stepper signals?
August 25, 2010 05:31PM
Have you got a good ground connection between your boards? The most likely cause is ground noise.


[www.hydraraptor.blogspot.com]
Re: Background queistion: why RS485 + stepper signals?
August 29, 2010 03:26PM
I think the RS485 not nesersary with the configuration used in Mendel, the distance between the two processor boards is < 10mm. The extruder serial TX and RX pins are within 15mm of the mother board a straight serial connection would be quite adequate. In fact the TX and RX signals travel further on the extruder PCB to get to the RS485 chip than they need to go for a direct connection to the motherboard. The RS485 however is nesersary for the Makerbot configuration where there is a greater distance between the boards.

If you take a close look at any of the USB serial leads used to connect the computer to the Motherboard.

The USB interface chip is hidden in the USB plug so the TX and RX signals from the CPU run in a 1m long unsheilded cable without any significant problems.


Bodge It [reprap.org]
=======================================

BIQ Sanguinololu SD LCD board BIQ Stepcon BIQ Opto Endstop
BIQ Heater Block PCB BIQ Extruder Peek clamp replacement BIQ Huxley Seedling
BIQ Sanguinololu mounting BIQ standalone Sanguinololu or Ramps mounting Print It Stick It Cut it


My rep strap: [repstrapbertha.blogspot.com]

Buy the bits from B&Q pipestrap [diyrepstrap.blogspot.com]
How to Build a Darwin without any Rep Rap Parts [repstrapdarwin.blogspot.com]
Web Site [www.takeaway3dtech.com]
Sorry, only registered users may post in this forum.

Click here to login