Difference between revisions of "CNC Bender General Application Errors"

From ATTWiki
Jump to: navigation, search
(Diagnosis with Show Bug Report)
(Other Pages)
 
(51 intermediate revisions by one user not shown)
Line 1: Line 1:
 
CNC Bender uses a powerful error reporting system that logs the details of the system and details about the error  the moment they occur.
 
CNC Bender uses a powerful error reporting system that logs the details of the system and details about the error  the moment they occur.
  
This is an actual picture of the error dialog:<br>
 
  
[[image:cncbender_generalerror.jpg|450px]]
+
==General Application Error Dialog==
 +
 
 +
[[image:cncbender_generalerror.jpg|250px|thumb|Error Dialog]]
  
 
When the dialog displays, you can choose to do one of several steps:
 
When the dialog displays, you can choose to do one of several steps:
Line 14: Line 15:
 
* Close the application
 
* Close the application
  
==Diagnosis with Show Bug Report==
+
<br><br>
 +
 
 +
==Diagnosing Problems with the Bug Report Menu==
 +
 
 +
[[image:cncbender_showbugreport.jpg|thumb|Show Bug Report|250px]]
 +
 
 +
The "show bug report" button is very helpful in diagnosing errors because you can get more information about the nature of the error. We induced an error to demonstrate how this error dialog can help diagnose problems.  Then we clicked on the Show Bug Report button. 
 +
 
 +
===STEP 1: Look at the bottom of the GENERAL Tab in the Bug Report===
 +
 
 +
When we click on "Show Bug Report", the first tab menu to display is "general".
 +
<br><br>
 +
 
 +
[[image:cncbender_showbugreport_generaltab.jpg|450px]]
 +
<br><br>
 +
 
 +
The last two lines of the general bug report give immediate clues regarding the problem you are experiencing with the software.
 +
 
 +
[[image:cncbender_showbugreport1.jpg|450px]]
 +
<br><br>
 +
 
 +
In this case, the error has to do with "range", which is developer-speak for "a number is too big or too small somewhere."  So this gives the first clue.
 +
<br>
 +
 
 +
[[image:cncbender_exampleexceptionmessage.jpg]]
 +
 
 +
 
 +
 
 +
===STEP 2: Look at the top of the CALL STACKS Tab menu in the Bug Report===
 +
 
 +
Next, we click on CALL STACKS tab:
 +
<br><br>
 +
 
 +
[[image:cncbender_showbugreport_callstackstab.jpg|450px]]
 +
<br><br>
 +
 
 +
The CALL STACK sounds a bit scary to non-programmers.  But it's not so bad really: This is a detailed map of which procedure inside our code the error occurred.  The last column called "function" and the first line shows the actual procedure that the software was running when the error occurred.  Look at this example:
 +
<br><br>
 +
 
 +
[[image:cncbender_showbugreport_callstacks_toprowfunction.jpg|450px]]
 +
 
 +
In this case, the error occurred inside the function UUPositionToUW.  If you share this with one of the programmers from Advanced Tubular, then we will have the information necessary to track the problem.  (In this case, the error is that one of the floating point values is NEGATIVE when it should not be.  UUPositionToUW converts a floating point number to an integer value that MUST be positive.)
 +
<br><br>
 +
 
 +
But what give you the most helpful information is the second row's function. 
 +
 
 +
[[image:cncbender_showbugreport_callstacks_closeupfunction.jpg|450px]]
 +
 
 +
The function name is "CompileProcessList".  This means that there must be a negative number in a processlist.  Since the only processlist that changes regularly in CNC Bender is the user processlist, we can search through the process to find a negative parameter trying to be placed in a command.
 +
<br><br>
 +
Looking through the user1.cncprocesslist in the c:\cnc\config\processlist folder, we find this line:
 +
<br><br>
 +
<pre>
 +
FeedBend = pos0:-2.00787826, vel0:46.54793115, ump0:1, adp0:3, pos1:6.10000000, vel1:140.00000000, ump1:1, cto:60000
 +
</pre>
 +
 
 +
The pos0: value is negative - which is NEVER allowed for any parameter values in a CNC Bender processlist.  Looking through the FRB bending page, we discover this line:
 +
 
 +
[[image:cncbender_zerobend_negativeadjust.jpg|250px|thumb]]
 +
[[image:cncbender_zerobend_negativeadjust_closeup.jpg]]
 +
 
 +
The negative adjustment in a zero degree bend angle tried to calculate the Feed motion during bending, and came up with an arc length of -2.0078 millimeters.
 +
<br><br>
 +
With this information, we can track and solve the problem by automatically checking for this possibility in the future and not allowing it.  (In this case, we will just make all negative numbers to reset to zero inside the UUpositionToUW for the next revision of CNC Bender.)
 +
 
 +
===STEP 3: Send the Bug Report to Us from the Logs Folder===
 +
 
 +
[[image:cncbender_logfiles.jpg|250px]]<br><br>
 +
 
 +
If you send the log file of the bug report to us, we can find the same information.  All bug reports are found in the c:\cnc\logs folder.  Just compress all the log files to zip file and send them to either an OEM technician or directly to us, and we will open and check the bug report.  (Note: This bug report was saved in ''bugreport_cncbender.log'' file in the c:\cnc\logs folder.)
 +
<br><br>
  
The "show bug report" button is very helpful in diagnosing errors because you can get more information about the nature of the error.
+
===ALTERNATIVE Idea For Diagnosing: We Can Login to the Workstation===
  
We induced an error to demonstrate how this error dialog can help diagnose problems:
+
[[image:Logmeinrescue_logo.jpg]]
  
[[image:cncbender_showbugreport.jpg]]
+
Using our LogMeIn Rescue service, we can login remotely to your computer if it is attached to the internet.  Read more about the service. See [[LogMeIn Rescue]] for more information.
 +
<br><br>
  
 
==Other Pages==
 
==Other Pages==
  
*See back to [[CNC Bender Technical Notes]]
+
*Back to [[CNC Bender Technical Notes]]

Latest revision as of 17:42, 23 July 2010

CNC Bender uses a powerful error reporting system that logs the details of the system and details about the error the moment they occur.


Contents

General Application Error Dialog

Error Dialog

When the dialog displays, you can choose to do one of several steps:

  • Send a bug report to us (requires an internet connection from the operator station)
  • Print a bug report (if a printer is attached to the operator station)
  • Show a bug report on the screen
  • Continue to run the application
  • Restart the application
  • Close the application



Diagnosing Problems with the Bug Report Menu

Show Bug Report

The "show bug report" button is very helpful in diagnosing errors because you can get more information about the nature of the error. We induced an error to demonstrate how this error dialog can help diagnose problems. Then we clicked on the Show Bug Report button.

STEP 1: Look at the bottom of the GENERAL Tab in the Bug Report

When we click on "Show Bug Report", the first tab menu to display is "general".

Cncbender showbugreport generaltab.jpg

The last two lines of the general bug report give immediate clues regarding the problem you are experiencing with the software.

Cncbender showbugreport1.jpg

In this case, the error has to do with "range", which is developer-speak for "a number is too big or too small somewhere." So this gives the first clue.

Cncbender exampleexceptionmessage.jpg


STEP 2: Look at the top of the CALL STACKS Tab menu in the Bug Report

Next, we click on CALL STACKS tab:

Cncbender showbugreport callstackstab.jpg

The CALL STACK sounds a bit scary to non-programmers. But it's not so bad really: This is a detailed map of which procedure inside our code the error occurred. The last column called "function" and the first line shows the actual procedure that the software was running when the error occurred. Look at this example:

Cncbender showbugreport callstacks toprowfunction.jpg

In this case, the error occurred inside the function UUPositionToUW. If you share this with one of the programmers from Advanced Tubular, then we will have the information necessary to track the problem. (In this case, the error is that one of the floating point values is NEGATIVE when it should not be. UUPositionToUW converts a floating point number to an integer value that MUST be positive.)

But what give you the most helpful information is the second row's function.

Cncbender showbugreport callstacks closeupfunction.jpg

The function name is "CompileProcessList". This means that there must be a negative number in a processlist. Since the only processlist that changes regularly in CNC Bender is the user processlist, we can search through the process to find a negative parameter trying to be placed in a command.

Looking through the user1.cncprocesslist in the c:\cnc\config\processlist folder, we find this line:

FeedBend = pos0:-2.00787826, vel0:46.54793115, ump0:1, adp0:3, pos1:6.10000000, vel1:140.00000000, ump1:1, cto:60000

The pos0: value is negative - which is NEVER allowed for any parameter values in a CNC Bender processlist. Looking through the FRB bending page, we discover this line:

Cncbender zerobend negativeadjust.jpg

Cncbender zerobend negativeadjust closeup.jpg

The negative adjustment in a zero degree bend angle tried to calculate the Feed motion during bending, and came up with an arc length of -2.0078 millimeters.

With this information, we can track and solve the problem by automatically checking for this possibility in the future and not allowing it. (In this case, we will just make all negative numbers to reset to zero inside the UUpositionToUW for the next revision of CNC Bender.)

STEP 3: Send the Bug Report to Us from the Logs Folder

Cncbender logfiles.jpg

If you send the log file of the bug report to us, we can find the same information. All bug reports are found in the c:\cnc\logs folder. Just compress all the log files to zip file and send them to either an OEM technician or directly to us, and we will open and check the bug report. (Note: This bug report was saved in bugreport_cncbender.log file in the c:\cnc\logs folder.)

ALTERNATIVE Idea For Diagnosing: We Can Login to the Workstation

Logmeinrescue logo.jpg

Using our LogMeIn Rescue service, we can login remotely to your computer if it is attached to the internet. Read more about the service. See LogMeIn Rescue for more information.

Other Pages