Welcome! Log In Create A New Profile

Advanced

repstrap electronics

Posted by tbskinner 
repstrap electronics
May 16, 2013 02:12PM
So I'v build myself a repstrap. I was about to hook up my stepper motors when I realized I'm not really sure how to. So I came here for help. My stepper motor and driver are from Stepperworld and I have got them spinning before. Then I ordered a hot end from qu-bd.

I'm wondering how I get them all working together? I do have an arduino laying around and a bunch of 10A mosfets and other random chips if that helps any. I was thinking maybe I could use the arduino to control the temp and stepping of the hot end and maybe send the commands to the XYZ board.

Any help would be great!

T

Edited 1 time(s). Last edit at 05/16/2013 04:15PM by tbskinner.
Re: repstrap electronics
May 16, 2013 04:17PM
Cant find exact words on that website, but from the looks of it that board seems unipolar and those motors have 6 wires so can be wired in unipolar configuration. But the motor from extruder is certainly bipolar coz it has only 4 wires. To connect it as unipolar you would need 2 more wires which are middle taps of coils, and that motor doesnt have them. So either use a bipolar driver with that bipolar-only motor, or try replace motor with another nema 17 with 6 wires which can be hooked unipolar. Reprap uses only bipolar drivers, thats why extruder came like that, so its not seller's fault or something.
Re: repstrap electronics
May 16, 2013 04:24PM
Wow.. Parallel cable, Qbasic in the software section, link to a geocities site in the links section.

Is this 1992?

I can't seem to find any info on how that stepper driver receives commands on that website.

Without that, you are going to have a bad time.

EDIT: Actually, best bet. Take that Stepper Driver and throw it out the window and forget about it. It's too old.
Looking at the picture, it only supports 1/2 stepping anyway.

You better off picking up 3 new individual stepper drivers that support TTL logic and 8 to 16 microstepping.

Edited 2 time(s). Last edit at 05/16/2013 04:31PM by ShadowRam.
Re: repstrap electronics
May 16, 2013 04:32PM
I got this driver like 5 years ago for a cnc project I was trying to build and don't really want to buy something new.

Would something like this work?

[builders.reprap.org]
Re: repstrap electronics
May 16, 2013 04:34PM
I got 200 steps/ revolution out of the thing the last time I used it. However I cant find a pc that has a parallel port on it. LOL
Re: repstrap electronics
May 16, 2013 05:00PM
Not sure, but perhaps it can still be used, you may want to investigate that instead.
But otherwise yes its old and not really suitable for reprap these days.
Re: repstrap electronics
May 16, 2013 05:25PM
Yeah, I'm starting to think i should have just gone with a reprap kit instead of trying to piece something together from around the house. Its starting to really frustrate me. I was just trying to get this thing working so I could print out some ideas I had for a new type of reprap.
Re: repstrap electronics
May 16, 2013 06:06PM
I found some documentation that came with the board. Do you think I could hook it directly to an arduino and put values in like it was a serial out? I'm not really sure how serial communication works.

Quote
Russell Laidman
Interface Information

A PC Parallel port has 4 bytes associated with it. The first byte is located at the Parallel Port Base Address. (For example 3BC) The exact address varies from machine to machine. You can find your parallel port address from Windows - Start -> Settings -> Control Panel -> System -> Device Manager Tab -> Ports -> Printer Port -> Resources -> Input/Output Range. (For example 3BC thru 3BF)

The first byte, called D, located at the base address (3BC for example) contains 8 data bits.
The second byte, called S, located at base address + 1 (3BD for example) contains various inputs
The third byte, called C, located at base address + 2 (3BE for example) contains additional outputs

(Note that the data bits ( C1 and C3 ) are inverted by hardware)


SP-3/FET-3 Stepper Parallel Port Pin Assignments (DB25 Connector)

Pin [Bit] addr I/O Function
2- [D0] bs OUTPUT X axis direction
3- [D1] bs OUTPUT X axis step
4- [D2] bs OUTPUT Y axis direction
5- [D3] bs OUTPUT Y axis step
6- [D4] bs OUTPUT Z axis direction
7- [D5] bs OUTPUT Z axis step
8- [D6] bs OUTPUT Aux Out (d6)
9- [D7] bs OUTPUT Aux Out (d7)
10- [S6] bs+1 INPUT Z switch detect
12- [S5] bs+1 INPUT Y switch detect
13- [S4] bs+1 INPUT X switch detect
14- [C1] bs+2 OUTPUT X axis *Enable (active LO)
16- [C2] bs+2 OUTPUT Y axis *Enable (active LO)
17- [C3] bs+2 OUTPUT Z axis *Enable (active LO)
18- Gnd
25- Gnd
Re: repstrap electronics
May 16, 2013 06:18PM
Download the cd from stepperworld, interface.doc gives you the pin assignments, connect the arduino to the parallel socket and you should be able to drive this thing easily enough. Parallel ports used TTL voltage levels, as do all arduino's before the Due, so there won't be any problems there. You should be able to use any modern reprap firmware with appropriate modifications to the pin assignments.

EDIT] Thats what I get for posting while eating.

Edited 1 time(s). Last edit at 05/16/2013 06:20PM by Andrew Smith.
Re: repstrap electronics
May 17, 2013 09:43AM
Pin [Bit] addr I/O Function
2- [D0] bs OUTPUT X axis direction
3- [D1] bs OUTPUT X axis step
4- [D2] bs OUTPUT Y axis direction
5- [D3] bs OUTPUT Y axis step
6- [D4] bs OUTPUT Z axis direction
7- [D5] bs OUTPUT Z axis step
8- [D6] bs OUTPUT Aux Out (d6)
9- [D7] bs OUTPUT Aux Out (d7)
10- [S6] bs+1 INPUT Z switch detect
12- [S5] bs+1 INPUT Y switch detect
13- [S4] bs+1 INPUT X switch detect
14- [C1] bs+2 OUTPUT X axis *Enable (active LO)
16- [C2] bs+2 OUTPUT Y axis *Enable (active LO)
17- [C3] bs+2 OUTPUT Z axis *Enable (active LO)
18- Gnd
25- Gnd


PERFECT!!!!

Grab a RAMPS 1.4 setup with only 1 driver (for the extruder)

Wire up a few of these


And connect those to a DB25 connector.

Check out the RAMPS 1.4 Schematic and match up

X-Axis Direction
X-Axis Step
X-Axis Enable
Y-Axis Direction
Y-Axis Step
Y-Axis Enable
Z-Axis Direction
Z-Axis Step
Z-Axis Enable

and make sure there's a common ground between your servo driver and the RAMPS board.
Re: repstrap electronics
May 17, 2013 12:45PM
Do you think I could use an Arduino diecimila with some shift registers (74HC165N) to increase the outputs. Maybe a diy board for the extruder? I have a bunch of spare parts laying around like voltage regulators, mosfets, transistors, and the capability to etch boards. I'm just curious because that's what I have on hand. What would be a good firmware for this type of application. Teacup?

If not what exactly am I going to need to order?

Also sorry if these are kinda noob questions I'v never done anything with steppers or anything with add on boards.
Re: repstrap electronics
May 17, 2013 01:24PM
tbskinner Wrote:
-------------------------------------------------------
> Do you think I could use an Arduino diecimila with
> some shift registers (74HC165N) to increase the
> outputs. Maybe a diy board for the extruder? I
> have a bunch of spare parts laying around like
> voltage regulators, mosfets, transistors, and the
> capability to etch boards. I'm just curious
> because that's what I have on hand. What would be
> a good firmware for this type of application.
> Teacup?
>
> If not what exactly am I going to need to order?
>
> Also sorry if these are kinda noob questions I'v
> never done anything with steppers or anything with
> add on boards.

You could try the shift register idea to expand IO, but I would be worried about timing/delays/speed depending on what you are mapping through the expanded IO. Also to do that, you'll have to do some serious firmware modification.

I'm not sure how comfortable you are with modding the Arduino Code.

But considering you are asking the questions you've been asking, I'd recommend just buying the components you need.

1x Arduino Mega 2560 (Loaded with Marlin which allows good configuration options for your Stepper Driver)
1x RAMPS 1.4 Board
1x Pololu Stepper

But again, although you could get this stepper driver to work, it looks like it only supports 1/2 stepping. It's going to be one shaky mess.

Edited 1 time(s). Last edit at 05/17/2013 01:26PM by ShadowRam.
Re: repstrap electronics
May 18, 2013 08:07AM
Quote

You could try the shift register idea to expand IO, but I would be worried about timing/delays/speed depending on what you are mapping through the expanded IO.

Just the Step signal is very time critical. Enable and Dir are less so, they change once per move, only.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
Re: repstrap electronics
May 22, 2013 05:25PM
So I found an old PC with a parallel port at my parents house over the weekend. I hooked it up and tested out the board to get it working. Next I took an LED at touched the pins on the parallel cable to see what type of output they are running. It seems like most of them are just high/low and the step is just a pulse. I'm hooking up two shift registers to see if I can get it stepping with the Arduino.

I'm not really sure how all this stuff works so I'm just winging it. what makes the steps time sensitive? Is it because you are running 4 steppers at the same time? Could I just run the steps off separate I/O pins and have everything else on shift registers?
Re: repstrap electronics
May 23, 2013 07:07AM
Quote

what makes the steps time sensitive?

They give the stepper motors speed. Above some base speed, you can't change speed deliberately, not even on stepper motors. You have to accelerate and decelerate properly. Accordingly, gaps in the step pin timing lead to step losses.

That said, shift registers can be very quick. You can fill them at 10 MHz, or all 8 bits in less than one microsecond. Step rates are in the 20 ... 100 microsecond range at top speed, so there's some allowance.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
Re: repstrap electronics
May 23, 2013 09:59AM
Stepping AND Direction pins need to be closely timed.

If the Arduino spits out a direction high and stepping signals, and there's a delay of the direction pin, there will be a few counts by the Arduino assumed in the wrong direction.

Seriously, you already saved yourself stepper motors and stepper drivers, just get a proper Arduino with more IO.

The few bucks you spend on it will save you so many headaches.

You will have enough to do calibrating the printer to print and calibrating steps/flows/temperature,
You don't want to me messing around with shift registers, and modifying the firmwares as well.
Re: repstrap electronics
May 23, 2013 02:14PM
I have a lot of time... so I'm going to give the shift registers a try. At least I'll find out if it works or not. I'm leaning on the side that it will have to be slowed down so much so it doesn't loose steps that it won't be worth it.
Re: repstrap electronics
June 02, 2013 11:05AM
Update: I ditched the Arduino shift register idea. I just couldn't seem to get anything to happen. So I picked up a parallel port pci card off Amazon, put it in my desktop and installed LinuxCNC. It seems to be running very well. I found out my stepper board does half step micro stepping, its running smooth and I've tuned my Z axis down to 0.008-0.025 inch. I think this will be good enough for now. I'm going to start working on the x and y. I'm still not sure what I'm going to get to run my extruder.
Re: repstrap electronics
July 09, 2013 05:45PM
Update: I got my electronic all hooked up and running. I ordered a stepper motor driver for the hot end and it should be here today. I'm hoping I can get it to work on the out put of the fet-3 driver. I ran the test file with the program to see how it would work out.
Re: repstrap electronics
July 10, 2013 05:52PM
So hooking up the extruder stepper was super easy! I got a easydriver stepper motor driver from sparkfun. Then I soldered The step and direction to the aux input of my fet 3 board, and added it as another axis in em2. Now I think I'm going to use my arduino to control the hot end and start printing.
Re: repstrap electronics
July 27, 2013 03:03PM
I also use linux CNC to drive my 3D printer, it works very well and have some cool features like manual control with a joypad, easily move the print on different areas of the build platform, ability to measure the height with a switch to properly level the bed.

The only drawback is that you have to drive the bed and extruder heaters externally.
Re: repstrap electronics
August 02, 2013 01:55PM
Petrus what did you use to control the heat? I'm making a PID controller with my arduino. Its coming along nicely, but very slowly because my coding skills are severely lacking. So far I have my temperature reading out on a screen, and the back light is color coordinated if it will burn you or not.

Hopefully it will be done in a few weeks.
Re: repstrap electronics
August 06, 2013 01:07PM
I made a custom board based on a 40 pin atmel atmega 1284, it has a total of 6 PWM channels, 2 for the extruders, 2 for the fans, 1 for the bed and one more that I don't use right now (maybe for a fume extractor in the future).
You can see the board and the complete electronic box here : [forums.reprap.org]

The shematics & PCBs files are here : [reprap.org]
Re: repstrap electronics
August 14, 2013 04:50PM
That looks a lot like the board I'm making. I have only 2 pwm outputs though. One for the heater and one for the bed. maybe ill add more later its still on a prototype breadboard.
Sorry, only registered users may post in this forum.

Click here to login