Hello Guest it is April 19, 2024, 08:18:58 AM

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - MrFixit

Pages: 1
1
Hello,
I have been trying to work out an issue when probing on my CNC mill. I have found that for preparatory moves where I want to use G31 in case the probe does make contact, but I'm not actually looking for a probe contact, Mach 4 is hanging. 

I originally found this issue when trying to use the 2 Surface Outside Centering script on the probing screen. In trying to troubleshoot my problem, i found that the same issue occurs on a very simple G31 MDI input when the probe is not triggered/contacted.

I'm not sure I understand the log correctly of who's/what's fault it is. I have included it below. 

When using G31 in the simplest sense, it works great. IE, machine starts to move, and it stops when the probe is triggered. 

When using G31 as a prep move where no probe contact happens is when the software is hanging on me.

Here is the error I see when I input the following in MDI, it is worth noting that the machine moves to the position X -1.000 correctly but the code hangs after the move.

G31 X-1.000 F20

Code: [Select]
2021-11-24 05:26:29.134 - API: mcCntlMdiExecute(inst = 0, commands = 'g31 x-1.000 F20') (unknown caller)
2021-11-24 05:26:29.243 - Attempt transition from "Idle" on event "MDI Start" controller.cpp:2364
2021-11-24 05:26:29.243 - Signal id 1127, (Jog Enabled), changed from HIGH to LOW.
2021-11-24 05:26:29.243 - S_IDLE_on_exit
2021-11-24 05:26:29.243 - Signal id 1172, (Machine Idle), changed from HIGH to LOW.
2021-11-24 05:26:29.243 - ACTION_start_mdi
2021-11-24 05:26:29.243 - SoftSync()! Clearing planner.
2021-11-24 05:26:29.274 - S_MDI_RUNNING_on_entry
2021-11-24 05:26:29.274 - SoftSync()! Clearing planner. stateinterface.cpp:1351
2021-11-24 05:26:29.274 - S_MDI_RUNNING2_on_entry
2021-11-24 05:26:29.274 - Signal id 1114, (Gcode Running), changed from LOW to HIGH.
2021-11-24 05:26:29.274 - Attempt transition from "MDI Running" on event "Probe" runcanon.cpp:536
2021-11-24 05:26:29.274 - S_MDI_RUNNING2_on_exit
2021-11-24 05:26:29.274 - Signal id 1114, (Gcode Running), changed from HIGH to LOW.
2021-11-24 05:26:29.274 - ACTION_start_probe
2021-11-24 05:26:29.274 - S_MDI_PROBING_on_entry
2021-11-24 05:26:29.274 - Signal id 1173, (Machine Probing), changed from LOW to HIGH.
2021-11-24 05:26:29.274 - Probing: Waiting on exit event... runcanon.cpp:267
2021-11-24 05:26:29.274 - Waiting on planner to drain before waiting on SetStill... runcanon.cpp:92
2021-11-24 05:26:31.383 - Waiting on SetStill...
2021-11-24 05:26:31.383 - Signal id 1180, (Feed Hold Disabled), changed from LOW to HIGH.
2021-11-24 05:26:31.383 - Controller::RunCanonBuffer called AddStopReportRequest() runcanon.cpp:101
2021-11-24 05:26:31.383 - Requesting a stopped report for axis 0 motors.
2021-11-24 05:26:31.383 - Requesting a stopped report for motor 0.
2021-11-24 05:26:31.383 - Requesting a stopped report for axis 1 motors.
2021-11-24 05:26:31.383 - Requesting a stopped report for motor 1.
2021-11-24 05:26:31.383 - Requesting a stopped report for axis 2 motors.
2021-11-24 05:26:31.383 - Requesting a stopped report for motor 2.

It just hangs here after the log line    Controller::RunCanonBuffer called AddStopReportRequest() runcanon.cpp:101
In case it is helpful, the machine just sits like this with the cycle time counting up until i toggle the enable button off.  The log file then continues as below

Code: [Select]
2021-11-24 05:28:33.223 - API: mcCntlEnable(inst = 0, FALSE) (Mach4GUI Button)
2021-11-24 05:28:33.239 - Signal id 1018, (Enable #0), changed from HIGH to LOW.
2021-11-24 05:28:33.239 - Signal id 1019, (Enable #1), changed from HIGH to LOW.
2021-11-24 05:28:33.239 - Signal id 1020, (Enable #2), changed from HIGH to LOW.
2021-11-24 05:28:33.239 - Attempt transition from "Probing" on event "Stop" controller.cpp:5235
2021-11-24 05:28:33.239 - S_FILE_PROBING_on_exit
2021-11-24 05:28:33.239 - Signal id 1173, (Machine Probing), changed from HIGH to LOW.
2021-11-24 05:28:33.239 - S_MDI_RUNNING_on_exit
2021-11-24 05:28:33.239 - ACTION_stop
2021-11-24 05:28:33.348 - S_IDLE_on_entry
2021-11-24 05:28:33.364 - Signal id 1172, (Machine Idle), changed from LOW to HIGH.
2021-11-24 05:28:33.364 - Waiting on SetStill is Done!
2021-11-24 05:28:33.364 - Signal id 1120, (Machine Enabled), changed from HIGH to LOW.
2021-11-24 05:28:33.364 - Probing: Exiting probe state because of end of move. gcodeexec.cpp:1552
2021-11-24 05:28:33.364 - Attempt transition from "Idle" on event "Probe Complete" gcodeexec.cpp:1574
2021-11-24 05:28:33.364 - Can't transition from "Idle" on event "Probe Complete" gcodeexec.cpp:1574
2021-11-24 05:28:33.379 - Signal id 1180, (Feed Hold Disabled), changed from HIGH to LOW.

For background, at the risk of making this post too long to be interesting, my probe is hooked up to Port 2 pin 5 of the AXBB-E. It is an NPN switching probe @5volts.  I have its output hooked up to i5- and 5VDC going to i5+.  I have it set up as active low in Mach4 config. It works perfectly and is very consistent.  I'm quite certain i don't have a hardware issue, but i wanted to give that context in case it mattered.

I have the most current AXBB-E plugin that i can find. It is listed as V 1.002 in Mach4.

If anyone has any ideas about how i can resolve this please let me know.

I have posted this over on CNCdrive's forum as well on the suspicion that it is a plugin issue but i wanted to ask here as well since i am uncertain. It is also quite possible that it is my fault. I'm hoping someone can point me in the right direction.

I found one other forum post there of another person struggling with this specific issue and Mach4 but it was over a year ago and they never got any replies to their post. https://www.forum.cncdrive.com/viewtopic.php?f=22&t=2600

I also read here on MachSupport about something similar happening to people with another vendors product (Ethernet Smooth Stepper), and they added functionality to their plug in to prevent it hanging in this situation from what i understand. I only include this for context of me suspecting it as a bug.

I have attached my Mach4 logfile and my ini files in case they are useful.

Please let me know if there is other information i can provide that would be helpful and i will get it to you. 

Thanks in advance for any help or clarity you can provide!

2
Hello,
I could use some help understanding what I dont know in order to learn more about it.

I have the start of a working Mach4 setup with an AXBB-E motion controller on a Bridgeport Boss CNC mill that I retrofitted. I still need to polish the installation some more.


I am migrating from my laptop to a dedicated computer for the mill.  I bought a Dell PC 5000 embedded computer.

The new computer has 16 GPIO (general purpose in/outputs) built into it.  I am short on inputs and I am hopeful that these are usable.

The Dell manual lists the pin mapping to CPU I/O addresses

I have searched thru this forum and the Mach4 scripting manual but haven't deciphered enough to understand what i might need to do to use these as additional in and outputs to Mach4. I read thru the scripting section on the signal library. It mentions that signals can be tied to external in/outs but it doesn't get into the logistics of adding new ones.  I have started looking at LUA scripting and Modbus, but I don't know if I'm barking up the right tree.

I don't understand the steps involved in this endeavor, and Id appreciate any guidance on what i need to learn more about to pull this off if it is feasible.

Id also be happy to hear opinions related to the matter.

Quote
Embedded Box PC 5000 GPIO module In/Out mapping
The GPIOs ports on the Embedded Box PC and Nuvoton NCT6793D uses index/data pair of CPU I/O addresses 2Eh/2Fh to access NCT6793D.
GPIO 8 Out pin# to NCT6793D pin# map:

0 to 121 (GP00)

1 to 122 (GP01)

2 to 123 (GP02)

3 to 2 (GP03)

4 to 3 (GP04)

5 to 4 (GP05)

6 to 5 (GP06)

7 to 6 (GP07)

8 is GND
GPIO 8 In pin# to NCT6793D pin# map:

0 to 50 (GP60)

1 to 49 (GP61)

2 to 48 (GP62)

3 to 47 (GP63)

4 to 45 (GP64)

5 to 44 (GP65)

6 to 43 (GP66)

7 to 42 (GP67)

8 is GND

Pages: 1