- Posts: 119
- Thank you received: 0
joint 0 on limit switch error
Trying to get a used Smithy CNC1240 running again. I say again as the table was full of chips when I purchased the machine.
I get a lot of "joint 0 on limit switch error" messages under the following circumstances...
1) Issuing an M03 spindle command. Motor moves briefly and "joint 0 on limit switch error".
2) Running a program with all spindle commands removed. The program ran initially to completion after ten minutes. Then I restarted the same program and it ran about seven minutes, then..."joint 0 on limit switch error". (By the way, I have the spindle control signal cable disconnected from the machine to get the program to run.)
3) I reset the VFD control to manual mode and when the machine is "stone cold", that is sitting unpowered in my shop overnight, I can get the spindle to start and turning the potentiometer knob the RPM goes up and down. Once the machine has been powered up for, say, an hour, pressing the start button on the VFD shuts the machine down with the "joint 0 on limit switch error".
I have determined that all three Axis sensors are connected in parallel for power. However, when I place a metal screwdriver over the X, Y, or Z sensor I get the same message... "joint 0 on limit switch error".
The power to the spindle is via the CNC control box. I have not connected the VFD direct to the 220V supply as I do not think the VFD is faulty. I suspect the problem lies within the inductance sensor connections.
For reference,
The Breakout board and Spindle Control are combined into one. It is a PMDX-110
The VFD control is a Sunfar C300-2S0022, Model 2
Software is LinuxCNC 2.5.4
I have had this machine for three months and no chips. Hopefully someone will come to my aid.
With kind regards,
David
Please Log in to join the conversation.
What type of sensors are they?
The problem sounds to be noise on the limits signal line, quite a common problem.
The easiest and quickest possible solution is to insert a debounce component in your hal file.
This will force the signal state to be maintained over XX thread cycles, normally enough to cope with momentary noise spikes on the line.
www.linuxcnc.org/docs/devel/html/man/man9/debounce.9.html
I can post an example later if you are not sure what to do
regards
Please Log in to join the conversation.
Please Log in to join the conversation.
Many thanks to responding to my request.
The three sensors are inductive-sensing. 12mm diameter, NPN NO
Which HAL file and in what section of the file do I place the "debounce"?
Do I merely cut and paste your text?
I have attached the INI and HAL files currently in use.
With kind regards,
Dave
Attachment not found
Attachment not found
Attachment not found
Attachment not found
Please Log in to join the conversation.
Sorry for the delay, Bank Holiday stuff.
You have a hugely convoluted limit and home setup.
There are no limit switches, just 3 NO sensors, presumably in parallel, coming in to one signal then through a match8 component and a mind twisting logic,
dependent upon whether any axes are flagged as homing.
This is all because you have a 4th axis and some other spindle stuff which does not leave many pins.
If it were me, I would fit another PCI parport and have proper limits and home switches.
Or at least use pins 12, 13 and 15 (13 and 15 are unused) for a shared limit / home switch for each axis and split the sensor outputs to the three pins.
However if you stick with what you have got, the only place it makes sense to have a debounce component is where the signal comes in
So line 69 ish of 1240gecko.hal insert this and it should do it
regards
Please Log in to join the conversation.
ArcEye wrote: There are no limit switches, just 3 NO sensors, presumably in parallel, coming in to one signal then through a match8 component and a mind twisting logic,
dependent upon whether any axes are flagged as homing.
That is an interesting use of match8, but it shouldn't actually be necessary if the INI is configured with HOME_IS_SHARED and HOME_IGNORE_LIMITS
Please Log in to join the conversation.
I inserted the text you suggested and the machine booted with no errors.
Sadly, when I give a spindle command, S1000M03, nothing happens. The upper left of the Axis screen does show the programmed value.
Moving to the F3 Manual side of Axis, the Spindle radio buttons stay at "1" no matter how many times I press the + or - button. Again, no spindle movement.
I used the HAL meter to look at "pwmgen.0.curr-dc" and the value changes with different S commands and with M04 the values go negative. An M05 brings the value to 0.01.
When I set the parameters on the VFD for manual use, powering up the unit shuts off the machine with the "joint 0 on limit switch error".
Oddly, the prior functions did work several weeks ago; although, the machine shut down after about ten minutes with the "joint 0 on limit switch error".
My next effort is to "hot wire" the VFD directly to the electrical source bypassing the CNC control box to see if it will run.
I am learning a lot about LinuxCNC and machine hardware; however, it does become disheartening when little progress is made.
Please Log in to join the conversation.
Update on the dead machine.
I disconnected all the wires to the VFD and connected an extension cord directly from the socket on the wall to terminals L1 and L2. The VFD powers up and the spindle turns forward, backward, and the speed varies via the potentiometer.
The MDI side of Axis accepts M03 commands and with my voltmeter, the spindle portion of the break out board shows voltage changes with the S command. At S4500 the voltage was just short of 10V DC. All this was done with the wires to the VFD disconnected.
Cheers,
Dave
Please Log in to join the conversation.
You have the spindle PWM on pin 16 and the spindle enable on pin 14, which seems to match the PMDX pinout. I suppose that the next question is whether there is a variable voltage on the spindle-speed output of the PMDX board.fc60 wrote: I used the HAL meter to look at "pwmgen.0.curr-dc" and the value changes with different S commands and with M04 the values go negative. An M05 brings the value to 0.01.
I notice that your PWM frequency is 5Hz and that is right on the lower limit of what the PMDX 106 board expects:
www.pmdx.com/Doc/PMDX-106_Manual_03.pdf
The notes for the 110 board suggests 25 Hz frequency, so I would certainly suggest increasing to 25Hz to see if that helps.
The 106 manual also lists a number of DIP switches that need to be set to enable PWM control mode rather than potentiometer control.
The debounce component ought to stop the VFD tripping the limit switches. But it might also be worthwhile to add an input filter to the VFD.
(Search eBay for "Rasmi")
Please Log in to join the conversation.
Thanks for the reply.
" I suppose that the next question is whether there is a variable voltage on the spindle-speed output of the PMDX board."
I placed a voltmeter on the BOB spindle connection and I do get voltages that increase/decrease with an SxxxxM03 command. The range was from 0-10 VDC, which I believe is correct for the VFD input.
"The notes for the 110 board suggests 25 Hz frequency, so I would certainly suggest increasing to 25Hz to see if that helps."
Where do I change the frequency value from 5 Hz to 25 Hz? By the way, what does the frequency do?
"The debounce component ought to stop the VFD tripping the limit switches. But it might also be worthwhile to add an input filter to the VFD."
I searched eBay and found too many Rasmi devices. Perhaps you could kindly quote a model number for me?
Cheers,
Dave
Please Log in to join the conversation.
