I am in the process of makeing a Mantis 9.1 [makeyourbot.org]. They already have a Wiki, but honestly it doesn't look like the type they want you altering that much (sort of like the Makerbot Wiki, WAY too clean).
I plan on Making 3 versions of this Machine.
1 a straight up copy of their design for the Mantis 9.1 (I need a good mill for PC
2. a modification to allow for Belts and an extruder mounted on the Z axis as a RepStrap
3. a printable copy of the Mantis 9.1 to allow for RepRap to have a dedicated mill. (This design is 1/2 printed now, but I desided to build the wooden one because my axis are not sturdy enough yet)
Is it ok if I document this stuff into the Wiki, or should I document it over on their site? (I would prefer here, because we have a much more lively dev community than they do).
BTW I am going hope to be driving it with my Arduino Mega and 4 Pololu A4983 stepper drivers [www.pololu.com] per the instructions over at Instructables [www.instructables.com] . Do you think this will work?
How do you get the dimensions off the DXF file? I'd like to work on one of these myself, but I've not had time to dig into learning a CAD program.
Do you think shaping the plywood by powertools, laying out the cuts by hand is feasible? I don't have reasonable access to a CNC router or a laser cutter, but I could make accurate cuts with a RA saw or a circular saw, and I do have access to a drill press.
This one claims only simple tools. Using the match drilling that he mentions takes care of the most critical measurements. This does indeed look like a simple, easy to build small CNC mill. I also want one for making PCBs, and in particular, to drill the through holes. I think my work list just got longer!
I've watched quite a few assembly videos, it looks like he sent out kits at one point. I remember uploading the DXF file to one of the lasercutter sites for a quote, but the file was not in a valid format for some reason. Then I used apt-get to get a CAD program, and started learning the program. Then my Reprap parts started to arrive.
I'd really like to build one of these too, at some point.
I looked more closely at the parts list, and now I am back to wondering about the total build cost. There is plywood (fine, thin multi-layer marine or model grade plywood) used in the construction, but not listed in the parts list. Also no stepper motor drivers or control electronics. I suspect that the gen2onaboard will work for controlling this, and the firmware would only take some tweaking and additions to control a mill head rather than a stepper. But these are important parts of the build before you can start milling pc boards, and should have been in the list.
I finally found the wiki. Yes, it looks like it is only written to by one person. It gives bits and pieces of the rest of the build. A low end system that runs off the parallel port of a computer to drive the stepper controller, rather than a stand alone microprocessor with a serial interface to receive G-code. I think we can upgrade that using any common reprap electronics. The major change would be the tool head using an on-off MOSFET rather than a stepper driver. Plus changing the tool chain he has for converting gerber or png files to isolation well milled PCBs.
You aren't going to "upgrade" a PC parallel port system like EMC2 or Mach3 by using RepRap electronics. For useful milling you need far more in terms of motion control, acceleration, and trajectory planning. G02 and G03 would be a good start. Without the capability to mill arcs using interpolated movement rather than sequences of tiny lines, you really limit what you can do for making good parts.
EMC will run on lots of different hardware, you can find PC's that will run this well for dirt cheap, so will Mach3 which is not open source if that matters to you.
There are many of these kind of DIY projects (including mine somewhere) on www.cnczone.com and discussion of various control software.
-Sebastien, RepRap.org library gnome.
Remember, you're all RepRap developers (once you've joined the super-secret developer mailing list), and the wiki, RepRap.org, [reprap.org] is for everyone and everything!
Good points. I had not thought about arcs and other non linear shapes. I also did not think that a PC could have the same degree of timing control that a microcontroller can have. With very fast response time to internal or external interrupts, and built in 8 bit and 16 bit timers running off crystal controlled clocks I would have thought the stepping control would be more solid. But I admit that I do not know g-code, and so do not know what its limitations are. But even the ATMegas that we use can run floating (in software) to compute arcs on the fly, or even moderate resolution lookup tables for sin and cosine. The question is more which makes the better platform. If a PC based machine with a built in MMU, but no built in timer/counters, and with more overhead for even an assembly level interrupt response is better than a microcontroller with slow clock speed and integer arithmatic but more consistent timing, then I was going down the wrong path.
My next question would be, what about adding more digital I/O bits to handle opto switches or more than just 4 motors, and analog inputs expand its range in that direction? Or is it to much work to interface more stuff to a PC using the PCI-E slots then it is worth?
Also, I have regsitered on cnczone, but I am having trouble navigating around there. The web pages are very cluttered, and I am having trouble finding the EMC forum. I looked at one or two conversion kits for my Enco lathe mill drill, and they all cost more than the machine did!
Although you might use a separate controller to actually generate pulses (I use a board with an fpga for this) you still need trajectory planning. Both EMC and Mach3 do this and keep tool speed constant. This becomes important when trying to get cutting tools to work right.
They also have several levels of hardware interrupt for various things like limit switches, spindle control, coolant or control pendants. Both are highly configurable and can be customized for different machines. Put it simply, they can do things you cannot do with an ardunio.
I think there is a wonderful appeal to the simple reprap electronics, they are cheap and function well with the mechanics. They also make a lot of sense for a distributed project like this. But I don't think they are the best choice. If you are into these kind of robots, it might be worth investigating some of the programs i've mentioned. I'll be using one of the two to control my printer, several people have documented using EMC2.
Cnczone is what it is, I'm not a huge fan of the site itself, but there is a lot of info in old posts there worth reading. I believe I got the most out of the bench top machines section, that's where the thread on my machine is. I'd also say look at the videos and mannals on Mach3 . Good info on how these things work too.
Watching this thread for a while, I think I want to chime in here. Using a full fledged PC also has the cost to require a lot of energy, e.g. for hard disks, monitor, you name it. Also there isn't much a PC can do for a Mendel-type machine an Arduino can't.
Insisting on G02/G03 curved movements is - sorry for that - just irrelevant. As a side note, the FiveD firmware actually has G02/G03 implemented. However, G02/G03 is for constant radius curves only, so you'd at least have to implement something like NURBS movements. Even if you had this, approximating a curve with a sufficient number of straight lines will always give you a result indistinguishable from "real" NURBS. There is only so much resolution a machine has and trying to be more precise is a waste.
Also consider EMC & friends requires installation in the inner heart of the operating system. No way to hook up a RepRap machine on Windows today and a friend's Mac OS X tomorrow with this. Plus, some hardware is just incapable of running high precision timing, mostly because there are so many other thingies requiring precious time: graphics card, PCI bus, etc. Standard PCs are simply not made with precision realtime in mind, it's more a lucky coincidence this works.
Next topic would be I/O lines. RepRap needs between 12 and 25 pins, some of them with analog converters. Crafting a board which makes so many pins accessible for generic PCs is most likely just as expensive as a self-sufficient controller. Remember, an ATmega chip costs just $5.
Last not least, there's a wide gap between PCs and the Arduino and there's hardware which fills this gap. How about an embedded 32-bit processor like AVR32 or ARM Cortex? They're almost as cheap as an Arduino and if you can demonstrate the benefits, people will use this.
So I'd suggest ... no, I won't suggest anything. I've said what I had on my chest, so please proceed
> Watching this thread for a while, I think I want
> to chime in here. Using a full fledged PC also has
> the cost to require a lot of energy, e.g. for hard
> disks, monitor, you name it. Also there isn't much
> a PC can do for a Mendel-type machine an Arduino
> Insisting on G02/G03 curved movements is - sorry
> for that - just irrelevant. As a side note, the
> FiveD firmware actually has G02/G03 implemented.
> However, G02/G03 is for constant radius curves
> only, so you'd at least have to implement
> something like NURBS movements. Even if you had
> this, approximating a curve with a sufficient
> number of straight lines will always give you a
> result indistinguishable from "real" NURBS. There
> is only so much resolution a machine has and
> trying to be more precise is a waste.
> Also consider EMC & friends requires installation
> in the inner heart of the operating system. No way
> to hook up a RepRap machine on Windows today and a
> friend's Mac OS X tomorrow with this. Plus, some
> hardware is just incapable of running high
> precision timing, mostly because there are so many
> other thingies requiring precious time: graphics
> card, PCI bus, etc. Standard PCs are simply not
> made with precision realtime in mind, it's more a
> lucky coincidence this works.
> Next topic would be I/O lines. RepRap needs
> between 12 and 25 pins, some of them with analog
> converters. Crafting a board which makes so many
> pins accessible for generic PCs is most likely
> just as expensive as a self-sufficient controller.
> Remember, an ATmega chip costs just $5.
> Last not least, there's a wide gap between PCs and
> the Arduino and there's hardware which fills this
> gap. How about an embedded 32-bit processor like
> AVR32 or ARM Cortex? They're almost as cheap as an
> Arduino and if you can demonstrate the benefits,
> people will use this.
> So I'd suggest ... no, I won't suggest anything.
> I've said what I had on my chest, so please
Well first off the subject of the post is a milling machine, and not RepRap. Every machine tool manufacturer I know of seems to think that G02/03 are needed, I agree, but what do I know, I just make parts every day that use these codes...
I'm not saying that you can't have a degree of motion control with the boards mentioned, but the person I was replying too made a statement that one could "upgrade" a PC control with RepRap's electronics. This is simply not the case. I've worked with both, there is no "upgrade" to a control like this. Is it fit for purpose? In many cases yes, but why forcibly look the other way when there are other solutions out there?
I'm not suggesting that everyone abandon their ardunios, but there are better performing systems currently available. If you have an old PC lying around they are free, and they recycle the machine instead of sending it to China to be ripped apart and "recycled" into a landfil.
... i'm thinking to 'upgrade' my CNC-mill by replacing the Isel-interface-card by a BOB with an Arduino Mega.
So i can switch easily between milling, lasercutting/-sintering or 3D-printing.
For milling i'll use the Isel-card and software as usual, for laser and extruder/dispenser i'll use either Arduino with "FiveD on Arduino", a toolchain with Skeinforge for generating paths or an own script for laser-sintering.
This can be an interesting variant for people owning CNC-mills or planning to buy or build something similar.
Maybe we'll offer a kit with BOB's and interfacing variants ...
I'm interested in building a mantis 9.1 as well. I haven't gotten very far other than trying to read documentation, particularly any electronics details (plus I don't have a drill press available). A printed version sounds super and I'd love to contribute if it goes up on the wiki. I like the instructibles link on using an arduino duemilanova (I have most of those parts from sparkfun). Is there a reason to use a Mega instead? I assume there were concerns originally which lead to sanguino dev, etc. If this is used as a PCB mill at lower speeds is that still an issue?
.. the Mega has simply more RAM and more IO-pins, so you have more capabilities than with the smaller Arduinos ... but i'm working with Atmega168 and -328 (MySmartcontrol168, Arduino Nano Pro and Boarduino) too ...
Ryanp, the arduino duemilanova IS an ATMega168, so the choice is more one of packaging and programming. The arduino duemilanova is already on a board, with voltage regulator, I/O pins on connectors, and a built in boot loader. The ATMega needs a board to mount it on, connectors for I/O, voltage regulator, crystal, etc.
I have been researching a bit the gap between the Arduinos and ATMegas and the PC based systems. There are, as Traumflug pointed out, 32bit embedded processors. There are also a wide range of single board computers (SBC), ranging from the mostly embedded world of PC/104, up through the EPIC and EX sized pentium based machines with card slots, and larger. You can pick a configuration/performance level ranging from no OS with lots of digital and analog I/O and timers to something that can run Windows or full Linux. Possibly a future step for use to use a more powerful SBC that is still easily tied in to the real world digital, analog, and timing of a fully embedded system, while still having a ethernet port and an HTTP server to provide control and feedback to any networked computer with a web browser.
But for now, the reprap don't yet need that much horsepower, and the SBCs can be come a large fraction of the total price. When image analysis, 3D scanning, CNC style milling, drilling, or lathe turning that needs the more precise tool speed as well as path control, then we should be prepared to find an inexpensive SBC to base the more advanced and demanding systems on.
I have also taken a look at the EMC2 websight. It is more impressive so far than the cnczone. But I suffer from too many projects, too little time and money. And the competition rules and game scenario for next years under water robotcs competition is going to be announce in just a few weeks (Halloween), and I still don't have a working joystick interface to control my ROV! So much other work that I need to do that I can't jump into this one right now, as well.