Hello Guest it is March 28, 2024, 07:32:27 AM

Author Topic: homing my rotational axis  (Read 20204 times)

0 Members and 1 Guest are viewing this topic.

Offline poppabear

*
  • *
  •  2,235 2,235
  • Briceville, TN, USA
    • View Profile
Re: homing my rotational axis
« Reply #20 on: June 21, 2008, 12:55:23 PM »
BTW:

    I am NOT Offended at ALL, my skin is much, much, much Thicker than that, I AM Married after all................
If I came across as Grouchy, I am sorry, I am not always good at communicating well, with writing.

What I meant to say, is, my way made sense to me, given his question, and if it was my problem that is how I would have handled it.
But, my solution is only one of I am sure, "Many" other ways to do it, probably many are better as well.

Don't be in Awe of me, by any means, I am a user just like you, the TRUE Giants of VB are: Brian Barker, Sterling, German Bravo, John Prentice (C++ as well), and a few others.
I will put my self up toward the top, but not at the top. I have stood on the shoulders of the above Giants and looked out...........

It is the Same with Flash, I stood on Jason's Giant Shoulders and look out as well............

For most stuff, I am good at Eating, and pluggin up the Toilet.............
I have also been told, I am REALLY Good at converting Oxygen to Carbon Dioxide!!
Also, have a Second Income as a Professional Door stop.

hehehe,

Scott
« Last Edit: June 21, 2008, 12:57:42 PM by poppabear »
fun times

Offline Hood

*
  •  25,835 25,835
  • Carnoustie, Scotland
    • View Profile
Re: homing my rotational axis
« Reply #21 on: June 21, 2008, 01:27:26 PM »
Quote
Hood:

Tick "Persistant DROs" under General config. That way (Unless you manually move the machine while the control is off), its last position will be the position it comes up in. I dont move my machine other than Mach, so it is a non-issue.

And my point is proven, it is dangerous to assume, much better to write the safety into the VB rather than rely on users to adhere to it.
Not picking at you Scott, just dont want to see anyone get hurt or wreck their machine if it could easily be prevented.
 You know much more about VB than I do but seems to me it would be straightforward to look at the LED states and choose whether to do a conventional homing or your rapid move/home procedure.

Hood

Offline poppabear

*
  • *
  •  2,235 2,235
  • Briceville, TN, USA
    • View Profile
Re: homing my rotational axis
« Reply #22 on: June 21, 2008, 01:35:30 PM »
The "Look at the Homing condition code" can easily be added as a conditional on the X, Y, and Z axis.........

NOTE: the Current code ONLY does the fast home move on the "A" axis, if you look at the code, you will see that I did NOT, put that same code in there to also do Fast Prehoming moves.  I only suggested to him, that you "Could" also put a Fast Homing code for the X, Y, and Z axis as well, more to show the potiential and versitillity of Mach.

IF he would have asked for, that to be included then I would have put a conditional on the X, Y, Z that first time home when machine would power up, would do standard homing, after that, then rapid homing............

I already use that above on my own machines (with homing condition logic in the code), and have for years, with out any issues what so ever.

Again I ask, (and not being a smart ass so dont take it that way), if you have another solution, please provide it.

scott
fun times

Offline Chip

*
  • *
  •  2,055 2,055
  • Gainesville Florida USA
    • View Profile
Re: homing my rotational axis
« Reply #23 on: June 21, 2008, 10:47:33 PM »
Hi, Scott

Would you post the code for your homing routine or an example of one liner axis with the "homing condition logic".

My Oxygen to Carbon Dioxide ratios get All out of whack with VB learning curve hear.

Mastered the others long-time-ago.

Thanks, Chip

Offline Hood

*
  •  25,835 25,835
  • Carnoustie, Scotland
    • View Profile
Re: homing my rotational axis
« Reply #24 on: June 22, 2008, 05:15:18 AM »
Scott as I said previously I am a relative beginner at VB so it would take me weeks of trial and error to come up with something like your solution. As yours seems to work very well there is no point. The part I was worried about , and the only part that I referred  to, was your "NOTE2" as I felt it could have been dangerous to implement, that is why I suggested that it may be better to look at the LED states to decide on what to do.
  It seems from your last post that you indeed feel its an important safety issue and you have indeed implemented it for your own machine.
Glad we both agree now :)
Hood

Offline poppabear

*
  • *
  •  2,235 2,235
  • Briceville, TN, USA
    • View Profile
Re: homing my rotational axis
« Reply #25 on: June 22, 2008, 08:41:01 AM »
Hood: Lets quit the pissing contest of I right, your wrong, etc.,  k?
Chip: Here is the Rapid, WITH home check code, modify it to suite YOUR machine set up, this is my machine.


HomeRapidPointX = 0.5 'Assumes machine x=0, and X+ moves away from home switch
HomeRapidPointY = 0.5 'Assumes machine y=0, and y+ moves away from home switch
HomeRapidPointZ = -0.5 'Assumes machine z=0, and z- moves down toward table from home switch
HomeRapidPointA = 5.0  'this is the degree location to stop above move.

CurrentPosA = GetOEMDRO(86) 'current location of A axis prior to homing move

If (GetOemLed(807) Or GetOemLed(808) Or GetOemLed(809)) Then 'Check xyz axes referenced
                Message("Standard Home routine 1st")
                DoButton( 24 ) 'home z
   DoButton( 23 ) 'home y
   DoButton( 22 ) 'home x
Else
   Code "G90"
   Code "G0 G53 Z" & HomeRapidPointZ
   While IsMoving()
   Wend
   DoButton( 24 ) 'home z
   
   Code "G0 G53 Y" & HomeRapidPointY
   While IsMoving()
   Wend
   DoButton( 23 ) 'home y
   
   Code "G0 G53 X" & HomeRapidPointX
   While IsMoving()
   Wend
   DoButton( 22 ) 'home x
   
   MoveDistA = HomeRapidPointA - CurrentPosA   'Calc the move distance       
      If Abs(MoveDistA) >180 Then         'Find the shortest path         
             If MoveDistA < 0 Then           
                MoveDistA = 360 + MoveDistA         
             Else           
                MoveDistA = MoveDistA - 360         
             End If       
      End If       
                Code "G00 G91 A" & MoveDistA  'Move the A axis in Incermental the move distance         
                While IsMoving ()         
                Wend
   Code "G90"           'Put back to absolute mode

   DoButton( 25 ) 'home a from the 5 degree point it will move back
                       'at homing speed to find your home 0 switch.
             
   'DoButton( 26 ) 'home b
   'DoButton( 27 ) 'home c
   
End If

'Let me know what ya, think?
'Scott
fun times

Offline Hood

*
  •  25,835 25,835
  • Carnoustie, Scotland
    • View Profile
Re: homing my rotational axis
« Reply #26 on: June 22, 2008, 08:45:29 AM »
Scott you on Skype?

Hood

Offline poppabear

*
  • *
  •  2,235 2,235
  • Briceville, TN, USA
    • View Profile
Re: homing my rotational axis
« Reply #27 on: June 22, 2008, 09:08:21 AM »
Hood

yes

name: poppabear1000

it is in my profile section.........
you must be own now, it is 0915 est time us here. add me to you list, I got to go pick up my son should be back in about 1.5 hours.

scott
fun times
Re: homing my rotational axis
« Reply #28 on: June 22, 2008, 09:40:18 AM »
Hello DannyA,
  Didn't mean to hijack your thread, I was just anxious to try the same thing you are.
I modified my screen like Scott mentioned, creating a homing button for the A axis alone and emulated the home switch with a hotkey.
It works perfectly in simulation.
Again....THANKS for the topic and SORRY for the hijack,
RC

vmax549

*
Re: homing my rotational axis
« Reply #29 on: June 22, 2008, 10:10:58 AM »
HI Danny, I hope they answered your question. Keep in mind that you can only "home" the A axis in one direction. Pick a direction and that is what you will have to use every time. The switch offset changes when you switch directions(;-).

The best option is to insure that your system does NOT loose or gain steps. That will eliminate the NEED to rehome between cycles. You should be able to run all day without rehoming and still be accurate. The only real time to home is at startup to establish the home reference points.

Hope that helps, (;-) TP