Hello Guest it is April 26, 2024, 01:42:49 PM

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.


Messages - stirling

821
With your new M1001, with a simple gcode( M3, G01 X100,G01 Y100) i press the probe during the movement but i only see the message when the program ends.

If i instead i assign the code to a button script i does show up in real time.

That's cos trigger macros are broken. I raised the problem a while back here and here but unfortunately didn't get anywhere - well apart from some grief from Terry for me asking Brian to fix it.  :P

Brian did TRY to fix it but unfortunately his fix didn't work - haven't heard anything since.

Ian

822
Hey guys - didn't you see the sign on the way in? - it says - "Please don't feed the trolls"

823
General Mach Discussion / Re: Changing step pulse waveform in Mach3?
« on: March 18, 2013, 06:55:04 AM »
I use the IDX 7505 stepper motor driver from Trinamic. For every step this driver needs just one edge for each step of the motor. But Mach3 generates for every step an impulse of a constant length, that means there are two edges for each step. So I need a step signal that changes from low to high for the first step, changes back to low for the second step, changes back to high for the third step...I hope you understand. Is there any posibility to change the waveform of the step signal in this way?

You sure you're not getting confused? According to your manual... Page 27...

Quote
A step is triggered by the positive going edge of the signal

Doesn't say anything about stepping on alternate edges as far as I can see.

824
General Mach Discussion / Re: What Ratio Do I use
« on: March 15, 2013, 11:33:56 AM »
Better resolution comes from using microstepping on the drivers.
Hmmmmm - let's just say - debateable  :)

Ian

825
General Mach Discussion / Re: Can Mach 3 do this ????
« on: March 14, 2013, 09:32:27 AM »
Hi Les - welcome

I'll take your points in reverse order.

Yes it has been discussed MANY times here.

Yes Mach can drive servos. Mach puts out step/dir signals - it neither knows nor cares what's attached. Note for servos the loop is closed at the drivers NOT at Mach.

No Mach does not have closed loop control - even if it did it would not work by sending out "extra" pulses.

That is NOT a problem with steppers it is the problem of a poorly designed or maintained or badly implemented system. On a well designed system where the steppers are sized and driven correctly they NEVER miss a step.

826
I don't know if this is helpful or obvious, but someone else has posted full source for a Win64 Parallel port driver:
http://www.logix4u.net/parallel-port/26-inpoutx64dll-for-win-xp-64-bit
Just in case this leads to mis-understandings.

This is a 64bit port of inpout32.dll which is designed to give user level software simple read/write access to the PP. There is a LOT more going on in Mach's PP driver than this. Loading this driver will NOT make Mach work with the PP on 64 bit systems.

Ian

827
Not sure what you're trying to do either but...

Code: [Select]
While IsMoving ( )
code " g4 p 1 "
Wend

is going to KILL the system in very short time. It's effectively saying to Mach - the busier you are, the more I'm going to give you to do. i.e. an infinite loop constantly adding more to Mach's gcode buffer.

828
I just cleaned this section, for my analness (is that really a word, lol)
;D When an engineer polishes out the tool marks on a milled engine block they're congratulated for their attention to detail.
When a luthier (Brett click here) brings a guitar to a highly polished finish they're congratulated for their craftmanship.
When a coder (spit!) finesses their work they're anal. "WTF - it works - well kinda anyway - who cares?"

Ah well - 'tis our lot. ;D

829
here you go - is fixted  ;D

Code: [Select]
Option Explicit

'define the strings we're looking for - add/change as you see fit
Dim needles(2) As String
needles(0)="M6"
needles(1)="M06"
needles(2)="M 6"

Dim currentLine As Integer
Dim thisLine As Integer
Dim fileSys As Object
Dim fileTxt As Object
Dim haystack As String
Dim needle As String
Dim matchFound As Boolean
Const forReading = 1

currentLine = GetOEMDRO(816) 'note where Mach currently is in the gcode file
matchFound = False

'open the file in cb
Set fileSys = CreateObject("scripting.fileSystemObject")
Set fileTxt = fileSys.openTextFile(fileName, forReading, true)

'no point in reading all the lines we're already past so skip 'em
For thisLine = 0 To currentLine
  fileTxt.skipLine
Next

'plough through the rest of the file looking for our needles in the haystack
'we'll either get to the end or we'll find our match
While Not fileTxt.atEndOfStream And Not matchFound
  haystack = UCase(fileTxt.readLine()) 'get the whole line
  If haystack <> "" Then 'check it's not empty if it is just skip it
    For Each needle In needles 'look through the line for our required strings
      If InStr(haystack, needle) Then
        SetOEMDRO 816,thisLine
        matchFound = true
        Exit For 'no point in checking the rest of the line
      End If
    Next
    thisLine = thisLine + 1
  End If
Wend

If matchFound Then
  MsgBox "File has been set to line:" & thisLine-1 & _
         "your Next toolchange position." & Chr(13) & Chr(10) & _
         "Your previous line was:" & currentLine
Else
  Dim msg As String
 
  For Each needle In needles
    msg=msg & needle & " "
  Next
  MsgBox "No " & msg & " found after line:" & currentLine
End If

fileTxt.Close
Set fileSys = Nothing
Set fileTxt = Nothing

Ian

830
Indeed you are correct sir - BUT - the only reason your code finds the next ones is because it doesn't actually do what it says on the tin - it actually stops on the line AFTER the toolchange. If you want mine to do that then I can soon unfix it  ;D
(or you could just scroll down to the line after the toolchange it's found in the gcode display and then hit the button)