开云体育

ctrl + shift + ? for shortcuts
© 2025 开云体育
Date

Re: Release of Mach2Mill manual Rev A4.5

Mark Tucker
 

--- In mach1mach2cnc@..., "John Prentice" <john@c...>
wrote:
Hi everyone

I have uploaded the latest revision (A4-5) of the Mach2Mill manual
to the files section of this Group. This refers to Mach2 release
4.00.

The changes are outlined on the revision history page.

I am afraid that it is becoming rather untidy. Partly because I
have been having some eye trouble but mainly (in the customisation
section) because of the new features and methods of working that are
available to us.

However, as always, please do let me have your corrections and
suggestions - big and small.

Art's recent posting on "the way forward" shows that the split
into user manals and a customisation manual will have to come next
to do justice to Mach2 Release 5. This is something to look forward
to as a chance to tidy things up.

Best wishes

John Prentice
John

I think the manual is excellent,How you keep up with Art's Work rate
i do not know.
I know you are always looking for feedback so here is a small
point,I can not find any reference in the manual to the verify
function or button.Maybe i'm just not looking.

Keep up the great work.
I think without your manual a good few of us would be in the dark.

Regards
Mark


Re: Release of Mach2Mill manual Rev A4.5

 

--- In mach1mach2cnc@..., "John Prentice" <john@c...>
wrote:
Hi everyone

I have uploaded the latest revision (A4-5) of the Mach2Mill manual
to the files section of this Group. This refers to Mach2 release 4.00.

John

Your documentation is first class.
Unfortunately in trying to download the most recent .pdf in the files
section I get "you do not have permission..." when I click on the
file. Is it in the file or on my end? I run win2k.
Thanks
Jim K


Re: VB scripts

Daniel Maioli Padua
 

--- In mach1mach2cnc@..., Art <fenerty@a...> wrote:
Hi Daniel:

Did you try

Call DoButton (1)

While IsMoving()
Wend

Question ("A")
Call DeActivateSignal(7)


Art
www.artofcnc.ca
Yep, with the machine running a job, hitting this button, the
controller stays in the while routine until resume is pressed. And
Question and deactivation is not performed until job is conclused or
stopped or find the next G4.

Daniel


Re: Screen designer??

Art
 

Mike:

Sunday... (Thank god..)
Art
www.artofcnc.ca


Re: VB scripts

Art
 

Hi Daniel:

Did you try

Call DoButton (1)

While IsMoving()
Wend

Question ("A")
Call DeActivateSignal(7)


Art
www.artofcnc.ca

----- Original Message -----
From: "Daniel Maioli Padua" <dmpadua@...>
To: <mach1mach2cnc@...>
Sent: Tuesday, March 02, 2004 10:40 AM
Subject: [mach1mach2cnc] VB scripts


Hi Art,

I get something strange here..

When the Pause is pressed, itll deacellerate and stop movement,
right?

Ok, I wrote this lines in VB on the Pause button:

Call DoButton (1)
Question ("A")
Call DeActivateSignal(7)

The problem find is that the pause command doesnt retain the focus
until it stops. Let me explain better, command question apper while
the machine is deacellerating, then machine stop. And worse, after
answering the question, the machine moves and stop again. At the
end, plasma is turned off.

Could you make the command Pause retain its focus until machine
stops? Or itll be a problem for the next command: Resume?

Well, I'am trying to Pause and after it stops, turn plasma off.
Then I'll need to turn plasma on, wait a few seconds and resume.

The command Code "G4P1" is not working...

Please, I need your help again... :(

Regards,
Daniel.





Yahoo! Groups Links


Re: VB and the OCX

Art
 

Hi Ron:

The license will activate the ocx aslong as its in the working directory
of the ocx and application. If your app, the ocx and license are all in the
one directory, you should be fine.

Once you set the profile name, you need to reset the control before you
can do movement. You can either design a screen with only a button on it and
load that into a form window of some sort, or simply call the Reset Routine
in the OCX. Enlcosed is a list of the OCX calls....

[id(1)] boolean InitEngine();

[id(2)] void ConfigEngine();

[id(3)] boolean StartEngine();

[id(4)] boolean StopEngine();

[id(5)] void StartTimeFill();

[id(6)] void SetupMotor();

[id(7)] void SetupUnits();

[id(8)] boolean LoadLayout(BSTR *FileName);

[id(9)] void CalibrateEncoders();

[id(10)] void AxisChangeColor(short Axis, long Color);

[id(11)] void EncoderSetABSCount(short Encoder, long newCount);

[id(12)] void EncoderSetINCCount(short Encoder, long newCount);

[id(13)] void EncoderSetColor(short Encoder, long Color);

[id(14)] void EncoderZeroABS(short Encoder);

[id(15)] void EncoderZeroINC(short Encoder);

[id(16)] void EncoderSetMemory(short Encoder, short Memory, long Value);

[id(17)] void EncoderUseMemory(short Encoder, short Memory);

[id(18)] long EncoderGetABS(short Encoder);

[id(19)] long EncoderGetINC(short Encoder);

[id(20)] short EncoderGetActiveMemory(short Encoder);

[id(21)] double EncoderGetABSmms(short Encoder);

[id(22)] double EncoderGetINCmms(short Encoder);

[id(23)] double EncoderGetABSinches(short Encoder);

[id(24)] double EncoderGetINCinches(short Encoder);

[id(25)] boolean OutputActivate(short Signal);

[id(26)] boolean OutputDeActivate(short Signal);

[id(27)] boolean OutputGetCondition(short Signal);

[id(28)] void SetWindowHandle(long HWnd);

[id(29)] void SetHotKeys();

[id(30)] boolean LoadGCode();

[id(31)] void CloseFile();

[id(32)] void SetConstantVel();

[id(33)] void SetBlockStop();

[id(34)] void ConfReverse();

[id(35)] void SetFeedRate(double FeedRate);

[id(36)] void StraightTraverse(double x, double y, double z, double a,
double b, double c);

[id(37)] void StraightFeed(double x, double y, double z, double a, double b,
double c);

[id(38)] void ArcFeed(double first_end, double second_end, double
first_axis, double second_axis, short rotation, double endpoint, double
enda, double endb, double endc);

[id(39)] void FeedMove(double x, double y, double z, double a, double b,
double c, double FeedRate);

[id(40)] boolean IsMoving();

[id(41)] void SetInches();

[id(42)] void SetMetric();

[id(43)] double Where(short Axis);

[id(44)] boolean Reset(); // you need to call this to perform a EStop
reset...

[id(45)] void ConfigOutDevices();

[id(46)] boolean LoadDXF();

[id(47)] void ConfigReference();

[id(48)] void SetBackLash();

[id(49)] short GetQueueDepth();

[id(50)] void ConfToolTable();

[id(51)] void Help();

[id(52)] void SaveProfile();

[id(53)] void LoadProfile();

[id(54)] void Close();

[id(55)] void Lock(BOOL Lock);

[id(56)] void SetSlave();

[id(57)] void CallLogic();

[id(58)] void CallState();

[id(59)] void ToolTable();

[id(60)] void Fixtures();

[id(61)] void Macros();

[id(62)] void ConfigSoftLimits();

[id(63)] long GetBackgoundColor();

[id(64)] void WizDig();

[id(65)] void RewindFile();

[id(66)] void ResumeFile();

[id(67)] void InitPlanner();

[id(68)] void CycleStop();

[id(69)] void Pause();

[id(70)] void ZeroAll();

[id(71)] void ZeroAxis(short axis);

[id(72)] void CycleStart();

[id(73)] void SingleStep();

[id(74)] void DisplayMessage(BSTR Message);

[id(75)] void EditFile();

[id(76)] void RunFileFrom(short Line);

[id(77)] void JogAxis(short axis, short direction);

[id(78)] void JogOff(short axis);

[id(79)] void ProgramReset();

[id(80)] void MistToggle();

[id(81)] void FloodToggle();

[id(82)] void SpindleToggle();

[id(83)] void GoToZeros();

[id(84)] void GotoToolChange();

[id(85)] void StopSpindle();

[id(86)] void SpindleCW();

[id(87)] void SpindleCCW();

[id(88)] boolean ExecuteGCode(BSTR Command);

[id(89)] void SetHotKeysOn();

[id(90)] void SetHotKeysOff();

[id(91)] void HookKeys();

[id(92)] void UnHookKeys();

[id(93)] void VBExecuteGCode(BSTR* Code);

[id(94)] void SafeEnd();

[id(95)] void SetProfileName(BSTR Profile);

[id(96)] void ImportDXF();

[id(97)] void LoadRun(BSTR name);

[id(98)] double WhereRel(short axis);

[id(99)] boolean IsReset(); //check to see if EStop is active..

[id(100)] void SetExternal();

[id(101)] boolean KeysHooked();



You'll see comments on the two lines you need (IsReset tells you if the
EStop is active or not, and Reset() will toggle that condition...

You may want to design one screen for debugging and loadLayout that screen
set just for development so you can see input and output conditions while
your coding. If you find you need more hooks, let me know.



Thanks, Good luck,

Art
www.artofcnc.ca


Re: A axis acceleration

barker806
 

--- In mach1mach2cnc@..., "dchristal2" <dchristal@e...>
wrote:
Thanks Brian,

That's a great idea. Sometimes ya gotta think outside the box.
Hmm... I wonder if you could just set up the A axis as linear.....
Gonna have to test that.

Save your time I did that an it did not work...

Happy cutting
Brian


Re: VB scripts - More

Daniel Maioli Padua
 

Hi Art,

I am trying to resume by differnt ways, one is using a button using
a predefined tag: resume (this works) the other way is using other
button with a single line at VB sript: Call DoButton (5) (this does
not work).

Am I doing something wrong??

Daniel.


Re: Screen designer??

 

Duhhh..I really did go to school but I guess not enough:). I have
been there several times trying to learn but I kept seeing the posts
refering to screen designer and though I had something missing. Turns
ourt I do!!

Art when are you leaving to go bake er..bask in the sun?

Mike


--- In mach1mach2cnc@..., Art <fenerty@a...> wrote:
Mike:

Mach2Screen.exe IS the designer. Open that program and select
file/open ,
then select the 1024.set file from the Mach2 folder and the screens
will
open fopr you to modify, be sure to save any changes..

Thanks,
Art
www.artofcnc.ca


Re: Softlimit issue

Daniel Maioli Padua
 

--- In mach1mach2cnc@..., Art <fenerty@a...> wrote:
Hi:

Softlimit is repaired for next release...

I ?m hiting 3, 4 times at RefAll to get
machine referenced.

This sounds like noise on the inputs from the switches. Try
setting a
debounbce on the logic config, it usually fixes this trouble..

Art
www.artofcnc.ca

Nope, my english needs some improvement...;)

The machine goes to reference when I hit RefAll every time, but when
hits x-- machine stops both movements, then I hit RefAll again, same
thing, sometimes it finds x-- switch and leave the switch and
continuos looking for the y-- switch.

This is what I was trying to say.

Thanks for the quick solution, and I going look for a new english
teacher ;-)

BTW, it was activating the softlimits, right?

Daniel.


Re: A axis acceleration

dchristal2
 

Thanks Brian,

That's a great idea. Sometimes ya gotta think outside the box.
Hmm... I wonder if you could just set up the A axis as linear.....
Gonna have to test that.


--- In mach1mach2cnc@..., "barker806" <brian_barker@u...>
wrote:
--- In mach1mach2cnc@..., "dchristal2" <dchristal@e...>
wrote:
I continue to have big trouble with A axis acceleration. In
motor
tuning, the acceleration ramp looks like a pyramid and the
velocity
is about 75% of the failure point. Jogging is silky smooth.
The code below will usually work, but there is NO hint of ramped
acceleration.
f5
g1 x1 a360
g1 x0 a0

If I try to add a zero:
g1 x1 a3600
g1 x0 a0

The a-axis will not budge. It will only squeal.

I have fiddled with feed rate and rotation diameter until I'm
blue
in
the face. They affect it, but don't CORRECT it.

Is anyone enjoying smooth dependable X-A axis travel?

David Christal
Art is working on this. I am havinf the same trouble...
If you NEED to get something cut set the A axis up as the Y and run
your part (This works great!!)


Brian


Re: Vb6/OCX - Motor tuning ?

rainnea
 

I was thinking of trying C# with the ocx as a step up from VB6, does
anyone here use C# ?

Rab

--- In mach1mach2cnc@..., "Digital audio Pro"
<digitalaudiopro@w...> wrote:
Mark, if i were you i would use Visual C++ or borland C++. vb6 is a
bugged
shit from microsoft, they sell it saying "can do all what you want"
since
many years, but is always not reliable and slow, specialy for
screen redraw.

See the problems we have to debug VB script in mach2 ...

Each time i saw VB programs, i saw strange problems with them, even
if they
were programmed by good programmers.

I'm not a programmer, but the small experience i have from C and VB
confirm
the superiority of C or C++. I didn't find C more difficult than
VB. Just a
bit different. more VB tends to leave the possibility to be too
lax, not a
good school for me.



Olivier.





Re: Softlimit issue

Art
 

Hi:

Softlimit is repaired for next release...

I m hiting 3, 4 times at RefAll to get
machine referenced.

This sounds like noise on the inputs from the switches. Try setting a
debounbce on the logic config, it usually fixes this trouble..

Art
www.artofcnc.ca


Re: Softlimit issue

Art
 

Matt:

Thanks, a bug crept in, fixed for next release..

Art
www.artofcnc.ca

----- Original Message -----


Re: A axis acceleration

barker806
 

--- In mach1mach2cnc@..., "dchristal2" <dchristal@e...>
wrote:
I continue to have big trouble with A axis acceleration. In motor
tuning, the acceleration ramp looks like a pyramid and the velocity
is about 75% of the failure point. Jogging is silky smooth.
The code below will usually work, but there is NO hint of ramped
acceleration.
f5
g1 x1 a360
g1 x0 a0

If I try to add a zero:
g1 x1 a3600
g1 x0 a0

The a-axis will not budge. It will only squeal.

I have fiddled with feed rate and rotation diameter until I'm blue
in
the face. They affect it, but don't CORRECT it.

Is anyone enjoying smooth dependable X-A axis travel?

David Christal
Art is working on this. I am havinf the same trouble...
If you NEED to get something cut set the A axis up as the Y and run
your part (This works great!!)


Brian


VB scripts

Daniel Maioli Padua
 

Hi Art,

I get something strange here..

When the Pause is pressed, it?ll deacellerate and stop movement,
right?

Ok, I wrote this lines in VB on the Pause button:

Call DoButton (1)
Question ("A")
Call DeActivateSignal(7)

The problem find is that the pause command doesn?t retain the focus
until it stops. Let me explain better, command question apper while
the machine is deacellerating, then machine stop. And worse, after
answering the question, the machine moves and stop again. At the
end, plasma is turned off.

Could you make the command Pause retain its focus until machine
stops? Or it?ll be a problem for the next command: Resume?

Well, I'am trying to Pause and after it stops, turn plasma off.
Then I'll need to turn plasma on, wait a few seconds and resume.

The command Code "G4P1" is not working...

Please, I need your help again... :(

Regards,
Daniel.


Re: Softlimit issue

Art
 

Matt:

I have found a bug there, hold on a few minutes...

Art
www.artofcnc.ca


Re: g-code using indexing for a threading project

Art
 

John:

You shoudl probably play with the "G32" commands first to get used to
indexed movement.
Format is

G32 Xnn Znn for the end position of the move. This will do a threaded run as
long as the feedback active led is lit on the MDI page and the feed mode is
feed/rev (also on the MDI page).

Art
www.artofcnc.ca


Re: Screen designer??

Art
 

Mike:

Mach2Screen.exe IS the designer. Open that program and select file/open ,
then select the 1024.set file from the Mach2 folder and the screens will
open fopr you to modify, be sure to save any changes..

Thanks,
Art
www.artofcnc.ca


Re: Next Development Version and Legacy Issues. + Pendent Issues

Art
 

Hi Peter:


>
I presume I can have a keyboard shortcut that calls a macro I write? say
My_Spindle_CW
All you need to do is drop a button on the screen with designer, and then
enter the script into that buttons scipt box, then set a hot key to it.

Then, in my macro, call the "Spindle CW" function, then read the status of
the "Spindle CW LED" and send it out the serial port?
Yes, quite possible.



Maybe what I need to do now is built the pendent controller. That will
take
a while, Then try it and go from there.

I'm thinking of using a USB I/F that has both a keyboard and a serial port
in it.

are you planning on supporting more than 1 serial port?
Probably not. Usually when sending to multiple devices serially, the
devices have an addressable feature that allows sending a message of the
format "Dev1, SPINDLEON" as a stream or some such arrangement.

Thanks,
Art

Cheers,


Peter Homann
mailto:Peter.Homann@...
Adacel Technologies Limited,
250 Bay St, BRIGHTON, 3186, AUSTRALIA
<>
Telephone +61 (3) 8530 7777, Facsimile +61 (3) 9596 2960
Mobile 0421-601 665


-----Original Message-----
From: Art [mailto:fenerty@...]
Sent: Tuesday, 2 March 2004 1:07 PM
To: mach1mach2cnc@...
Subject: Re: [mach1mach2cnc] Next Development Version and Legacy Issues.
+ Pendent Issues


Hi Peter:

Does each function in Mach2 have an OEM code?

YEs, at least all the fucntion you currently can call as a user.

Does a keyboard shortcut invoke an OEM code?

It can, this is set in the screen designer..

Is each function invoked by an OEM code written as a macro and able to
be
changed?

No, most are internal functions.

Can all of the variables that hold state, Spindle speed, MPG jog
increment,
MPG selected axis, etc be read and written to via macros?

No, some can, but the list is very long indeed of all the variables. I
haven't found a good way to pass them to the user or I would.....


On possible method for what I want to do may be to invoke the OEM
functions
via the serial port. That would mean that Mach2 would have to monitor
the
port and process a command set. This command set could be very similar
to
the existing OEM codes?

This is on the list, but may be awhile. Serial RX is not
available yet. TX
is no problem, but implementing rx is a problem due to lack of protocol.
Some woudl like string message, some just numerical constants,
hard to tell
the best method, and thats why its been on hold for awhile.

Also, it would be necessary to output the value of any states changes
invoked out through the serial port.

This isn't a problem , Mach2 can transmit now, simple hook to
make it send
packets, but I worry about the overhead, untested as to how much
would slow
everything down, this is all on the list but a bit low in priority. Like
I
said before though, when I return from vacation, I will list the
list as it
now stands and everyone here can set priorities on some of this. Perhaps
someone bored can create a list on the database section of yahoo and
everyoine could put their wish lists there so it can all be cooridnated
somewhat..

Thanks,
Art

Art
www.artofcnc.ca






Yahoo! Groups Links








Yahoo! Groups Links