Initial setup - rough/jerky/slow/skipping steppers
10 Feb 2011 21:38 #7115
by acklenx
Initial setup - rough/jerky/slow/skipping steppers was created by acklenx
I have a Hobby CNC Pro 4 channel pro board and kit ( www.hobbycnc.com/products/hobbycnc-pro-driver-board-packages/ ) with 3 of the 305 steppers (#23-305-DS8A).
I gave the driver and steppers a test run attached to a friends computer running emc2 (steppers not attached to a table, just spinning free) and it worked great. I even got imperial march to play. This was using the Hobby CNC Pro Chopper defaults with the following exceptions (same on both computers):
That all worked great on my friends computer. But on my computer it was horrible. I'm running the 10.04 LinuxCNC build with EMC2 (same as the test computer) and everything is setup the same with EMC, but the motors are not working correctly. They have a lot of torque and not a lot of movement. It's like they're skipping commands (not necessarily steps). Just pressing the jog key it takes about 3 seconds for one revolution! And it's very jerky the whole time (but always jerking only in the correct direction). Running on the test computer I'm hard pressed to let go of the job key before it's done several complete buttery smooth rotations.
I really believe the only thing different is the computer. I checked the parallel port mode. It was initially set to PS/2. I've since tried every other setting - EPP, ECP, AT, and OFF. When I select ECP I also have the option of selection the DMA. That didn't seem to matter for the few values I tried. I'll try them all shortly, but I thought I see if anything rang a bell for anyone out there.
Knowing nothing about EMC, to me it seems that the signals aren't being sent continuously. Even in the jerky sort of motion it's random how long the motor is off and then on. Like the pins are wrong perhaps (except that it ran on another machine with the same cables and pinouts). My computer appears to be a bit faster than the other computer (just from observing how long it takes emc load or reload an ngc file and other basic operations).
The max jitter on my computer is (after putting it through it's paces for about two minutes) was 19,838, but even when I set the jitter to the EMC max value of 50k i still get the same behavior. There was a wiki post about known hardware issues - hobbycnc is the only thing listed (wiki.linuxcnc.org/cgi-bin/emcinfo.pl?HobbyCNC and also this cnczone.com/forums/joes_cnc_model_2006/4...obbycnc_-_mach3.html ), and it sounds similar except that my board only runs rough on my computer and it never gets better and it's like that before even before it idles the first time. Even changing the max speed and max acceleration don't fix the problem (they barely diminish it)
The hobby cnc forum punted (groups.yahoo.com/group/HobbyCNC/message/24331) and said it's a software and/or computer issue. And computer certainly seems the likely culprit since it works elsewhere, but hopefully there is some I can do to _any_ of the three components - software, driver board, computer that will get it working (on the computer that I have available).
I gave the driver and steppers a test run attached to a friends computer running emc2 (steppers not attached to a table, just spinning free) and it worked great. I even got imperial march to play. This was using the Hobby CNC Pro Chopper defaults with the following exceptions (same on both computers):
-
-the pins assigned for direction and step on each axis were swapped
-all other pins were set to "unused"
-quarter microstepping was set (with a value of "4")
-travel/table size was set to -20/20 for each axis (again not actually connected to a table)
That all worked great on my friends computer. But on my computer it was horrible. I'm running the 10.04 LinuxCNC build with EMC2 (same as the test computer) and everything is setup the same with EMC, but the motors are not working correctly. They have a lot of torque and not a lot of movement. It's like they're skipping commands (not necessarily steps). Just pressing the jog key it takes about 3 seconds for one revolution! And it's very jerky the whole time (but always jerking only in the correct direction). Running on the test computer I'm hard pressed to let go of the job key before it's done several complete buttery smooth rotations.
I really believe the only thing different is the computer. I checked the parallel port mode. It was initially set to PS/2. I've since tried every other setting - EPP, ECP, AT, and OFF. When I select ECP I also have the option of selection the DMA. That didn't seem to matter for the few values I tried. I'll try them all shortly, but I thought I see if anything rang a bell for anyone out there.
Knowing nothing about EMC, to me it seems that the signals aren't being sent continuously. Even in the jerky sort of motion it's random how long the motor is off and then on. Like the pins are wrong perhaps (except that it ran on another machine with the same cables and pinouts). My computer appears to be a bit faster than the other computer (just from observing how long it takes emc load or reload an ngc file and other basic operations).
The max jitter on my computer is (after putting it through it's paces for about two minutes) was 19,838, but even when I set the jitter to the EMC max value of 50k i still get the same behavior. There was a wiki post about known hardware issues - hobbycnc is the only thing listed (wiki.linuxcnc.org/cgi-bin/emcinfo.pl?HobbyCNC and also this cnczone.com/forums/joes_cnc_model_2006/4...obbycnc_-_mach3.html ), and it sounds similar except that my board only runs rough on my computer and it never gets better and it's like that before even before it idles the first time. Even changing the max speed and max acceleration don't fix the problem (they barely diminish it)
The hobby cnc forum punted (groups.yahoo.com/group/HobbyCNC/message/24331) and said it's a software and/or computer issue. And computer certainly seems the likely culprit since it works elsewhere, but hopefully there is some I can do to _any_ of the three components - software, driver board, computer that will get it working (on the computer that I have available).
Please Log in or Create an account to join the conversation.
11 Feb 2011 08:15 #7134
by andypugh
Replied by andypugh on topic Re:Initial setup - rough/jerky/slow/skipping steppers
Can you go back to the first computer? It is possible that something has gone wrong on a hardware level coincident with the swap of computers.
Trying it back on the "good" PC will definitively isolate the PC as the problem.
I am tempted to suggest that a Mesa 7i43 might be a good investment. It will free you from the 17 pin IO limit of the parallel port, but mainly moves step generation into hardware. However, at $80 it isn't a cost-free solution and it would be annoying if that didn't work either.
Trying it back on the "good" PC will definitively isolate the PC as the problem.
I am tempted to suggest that a Mesa 7i43 might be a good investment. It will free you from the 17 pin IO limit of the parallel port, but mainly moves step generation into hardware. However, at $80 it isn't a cost-free solution and it would be annoying if that didn't work either.
Please Log in or Create an account to join the conversation.
- Kirk_Wallace
- Offline
- Senior Member
Less
More
- Posts: 64
- Thank you received: 4
11 Feb 2011 21:26 #7145
by Kirk_Wallace
Replied by Kirk_Wallace on topic Re:Initial setup - rough/jerky/slow/skipping steppers
The first thing that comes to my mind is that the second PC parallel port might be a 3 Volt port. This might cause the controller board to miss signals. This is more likely if you are using a laptop or motherboard parallel port. A PCI parallel port card (check for 5 Volt operation) should fix it.
Parallel ports can also be different in how they switch their pins. Some will sink or source a fair amount of current, some won't source any current and sink around 3 mA. The safer assumption is to expect sink only. This means the controller board will need a pull-up resistor on each pin (usually a jumper option) to pull up the pins to 5 Volts. When the parallel port pin switches it switches to ground, which sinks the 5 Volts to ground and brings the signal to 0 Volts. When the parallel port pin switches back, the switch opens and the pull-up pulls the signal back up to 5 Volts.The controller documentation should cover this option.
If you are using hal_parport in your .hal file and using the hal_parport pins to drive the controller board, the BIOS setting will have no effect. hal_parport uses SPP which controls the setting of the pins with software. EPP and ECP write to different registers and have the parallel port's firmware do the transfere.
www.beyondlogic.org/spp/parallel.htm
So, just set the BIOS to SPP (or PS/2), or just leave it alone.
--
Kirk Wallace
www.wallacecompany.com/machine_shop/
www.wallacecompany.com/E45/index.html
California, USA
Parallel ports can also be different in how they switch their pins. Some will sink or source a fair amount of current, some won't source any current and sink around 3 mA. The safer assumption is to expect sink only. This means the controller board will need a pull-up resistor on each pin (usually a jumper option) to pull up the pins to 5 Volts. When the parallel port pin switches it switches to ground, which sinks the 5 Volts to ground and brings the signal to 0 Volts. When the parallel port pin switches back, the switch opens and the pull-up pulls the signal back up to 5 Volts.The controller documentation should cover this option.
If you are using hal_parport in your .hal file and using the hal_parport pins to drive the controller board, the BIOS setting will have no effect. hal_parport uses SPP which controls the setting of the pins with software. EPP and ECP write to different registers and have the parallel port's firmware do the transfere.
www.beyondlogic.org/spp/parallel.htm
So, just set the BIOS to SPP (or PS/2), or just leave it alone.
--
Kirk Wallace
www.wallacecompany.com/machine_shop/
www.wallacecompany.com/E45/index.html
California, USA
Please Log in or Create an account to join the conversation.
14 Feb 2011 15:04 #7183
by acklenx
Replied by acklenx on topic Re:Initial setup - rough/jerky/slow/skipping steppers
I hooked it up to the good computer again, and it worked just fine.
Please Log in or Create an account to join the conversation.
14 Feb 2011 16:00 #7185
by PCW
Replied by PCW on topic Re:Initial setup - rough/jerky/slow/skipping stepp
Sounds like you cannot use the "bad" parallel port directly with your drives, likely because its signal levels are not large enough for your drives. What are the specifications of the input to your step drives? If they have OPTO isolators returned to +5V, a 3.3V parallel port will not drive them directly and you will get the type of flaky behavior you are seeing.
Possible solutions:
Get an add-in 5V PCI parallel card
Add pullup resistors from the parallel port outputs to +5V (say 2.2K)
Possible solutions:
Get an add-in 5V PCI parallel card
Add pullup resistors from the parallel port outputs to +5V (say 2.2K)
Please Log in or Create an account to join the conversation.
Time to create page: 0.087 seconds