![]() | |
| Home Page | Mark Forums Read | Today's Posts | My Replies | Classifieds | Reviews | Photo Gallery | Web Links | Share Files | Advertise With Us | Ad List |
| |||||||
| General Electronics Discussion Discuss basic electronics, power supplies and anything else electronic related here. |
| This forum is sponsored by: |
![]() |
| | LinkBack | Thread Tools | Search this Thread | Display Modes |
|
#1
| |||
| |||
I posted this at the end of my long thread in the "DIY CNC Wood Routers", but maybe that isn't really the right forum. So here it is again - hoping for some comments: --- I've been doing some work on my controller card. But I wonder a bit, what inputs and outputs are useful? The card will be set up and controlled via RS232. It will be run with step/dir signals from the parallell port. In normal "run" mode it will listen for step/dir signals and encoder signals and make sure they agree by telling the motors how fast to spin. It will also monitor for positive and negative overtravel and disable the servos in case those signals are hit. It will send out error count over RS232 so that one can see how well the actual position coincides with commanded position, and it will map overtravel and home signals to the parallell port somehow - please help me out here to what's practical, I mean, there's four (five?) inputs on the port and three signals per axis that want out... ![]() There will also be a "home" mode where one can home and reset the counters for the individual axes via commands over RS232. This mode will use limit switches and the encoder index pulse to find a reliable home for each axis. Will this be compatible with the different controller programs (i.e. is it possible to just zero their counter after an "external" homing has been performed?) ![]() I will also put in a "set-up" mode that will hopefully help set the parameters for the PID controller - here the motors will be run open loop so that one can watch their step response. So all in all, the inputs and outputs to the card will be: * A, B, Z encoder inputs for each axis * pos, neg overtravel inputs for each axis * a home switch input for each axis (if one would like to home with the parallell port controller program without the aid of index pulses - or for Z maybe this could be used for a 0 plate?) * +/-10V motor speed outputs for each axis * One Servo Enable output that will be active as long as there is no fault condition (will be tripped by encoder errors, excessive position errors, overtravel - anything else? )Sorry for another one of my long posts... and please comment! What would you be missing if this were your controller card? Arvid |
|
#2
| ||||
| ||||
Phil |
|
#3
| |||
| |||
| Nah, it will use both parallel port and RS-232; the parallel port for the actual position control and RS-232 for configuration and reporting position tracking error. The thing is, I have servo drivers that only accept +/-10 V speed reference. And since most hobby level (i.e. inexpensive) controller programs (like EMC) use the parallel port, I wanted a card to interpret the step/dir signals from the parallel port and translate to a speed reference signal for the servo drivers. So the PC will be the controller, and my card will close the position servo loop. Is there a standard (and open source or otherwise inexpensive computer programs that support it) for sending commands to a controller card via RS-232? Arvid |
|
#5
| ||||
| ||||
| rutex makes the r990 series ic which you can use to make a +/-10v system with limited external parts. the chip is $34 and not much else is needed. an example is in the data sheet. or you could use the r991 which is a +/-10v system board for $98. |
| Sponsored Links |
|
#6
| |||
| |||
But yes, I have some experience from temperature PI controllers, and I have managed to write a large part of the VHDL code for my card already - and it actually seems to output sane values during simulation !Arvid |
|
#7
| |||
| |||
| lt paul, The Rutex site is interesting. The R991H card is almost exactly what I'm building, except it seems there are no position error feedback from the card, and you set the PID parameters with pots. The IC's they sell don't seem to support what I want to do; the R990 is for driving a DC brush motor (it has PWM outputs for connection to a H-brigde, it seems). The R510A card and the RT900 STEPEX IC are interesting since they are controlled by RS-232 only. Unfortunately the command format seems to be supported only by Rutex own pCut software? It would be great to find a standardised set of commands that were supported by a few different software programs, then I could throw out the parallel interface... Arvid |
|
#8
| ||||
| ||||
| Arvid, Sorry, just had to ask. I'm sure you understand that there are plenty of hobbiests out there that just because they can hook a few components together.... didn't want some body headed down an over simplistic path and not have the technical knowledge to understand. Phil
__________________ Phil, Still too many interests, too many projects, and not enough time!!!!!!!! Vist my websites - http://pminmo.com & http://millpcbs.com |
|
#11
| |||
| |||
| Dave, before I read your message I didn't know what the G2002 was. I have spent a couple of hours since then browsing the geckodrive group at Yahoo to try to get an idea of what it is. It seems kindof advanced, being able to function as a g-code interpreter in "smart" mode (?), and with USB/Ethernet interface. (I'm not sure how much if this is actually working already though). But in "dumb" mode I think it performs about the same tasks as I had planned for my card. It (the G2002 protocol) also don't seem to be finalized in any way. Perhaps I should write a simple g-code interpreter software for Windows and use my own protocol via RS232 to send instructions like "move this axis at this speed for this time" (for linear moves) or "move this axis sinusoidally from angle a to b at this speed for this time" (for circular moves)? This would let me skip the parallel interface, and bring the added benefits of moving the time critical parts from the PC, while keeping as much as possible of the heavy math stuff where the processing power is (i.e. the PC). The bad part is of course all the programming I would have to do... would this ever get finished? How is non-linear and non-circular moves descibed in g-code? A parabolic move for instance? Broken up in lots of circular and/or linear moves? Arvid |
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | Search this Thread |
| Display Modes | |
| |
Similar Threads | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| controller card | swiftden | Stepper Motors and Drives | 4 | 06-09-2007 07:48 PM |
| Taig Mill, US Digital MS23, Controller??? | marjamar | Taig Mills & Lathes | 3 | 02-07-2007 09:16 AM |
| Open Source CNC Controller Specification | gregmary | DIY-CNC Router Table Machines | 28 | 12-04-2005 09:58 PM |
| Help to find controller card & step motors... | Mikael | CNC Wire Foam Cutter Machines | 2 | 09-11-2004 05:05 PM |
| hobby cnc controller card | sixpence | DIY-CNC Router Table Machines | 11 | 02-23-2004 02:52 PM |