GearHeads Corner
May 22, 2019, 01:57:52 AM *
Welcome, Guest. Please login or register.

Login with username, password and session length
 
   Home   Help Search Login Register  
Pages: [1] 2 3 ... 10
 1 
 on: May 21, 2019, 09:09:03 PM 
Started by gburk - Last post by ArtF
Gary:

  Great!, sounds like your about there. Spindle should be fine.

  >>Is the spindle index, i'm not sure how you would connect it up with auggie  the pokeys doc's say it on pin 13 of the ultra fast encoder.. .

  Are you looking to use the index for speed calculati ons? Mach4 may use it for constant speed PID
loop or something, but other than perhaps a speed indicatio n Im not so sure its usefull in
Auggie. I think the pokeys has a hi-speed counter or a high speed encoder input you could use
and sample it periodica lly for a count, divide by time passed and youd get a fairly accurate
indicatio n of speed.
   I havent used any index in the pokeys , I havent had a use for it, but if you can figure
out how to count it on the pokeys, you can likely get the informati on by script. Your right
about the index being too fast for Auggie to do anything with , it only converses with
the pokeys a hundred times a second or so.
  Spindle feedback, unless its for pid correctio n I never saw as being very usefull for
my own use. Let me know if you need any methods to read a count or anything, Im
pretty sure their all there though perhaps not doc'ed..

Glad to see things are coming along..ju st remember, use caution, I havent used the
program for much cnc , just laser. Your cutting new ground,but it was designed
to run near anything really..


Art

 2 
 on: May 21, 2019, 07:22:19 PM 
Started by gburk - Last post by gburk
>> You have the right idea, but the wrong parameter s. The "SpindleCo ntrol" is just a
>>hook to the Pokeys, so thats correct. But the call is actually. .

>>SpindleCo ntrol.Set PWM( channel,  dutycycle );

Yes figured that out and had removed it...

>>global SpindleSp eed = function( speed )
>>{
>>   /*power is automatic in laser spindle mode..
 >>    no need to specify, in laser mode, spindle
>>     power is a function of augmentat ion */
 >> //but in CNC , we need to set the dutycycle to proper speed.

 
>>percent = (speed / 20000) * 100; //0-100% linearize d to 0 - 100%
>>SpindleCo ntrol.Set PWM( channel,  percent );

Yes already have this working also..
I have a setting for max spindle speed and replace the / 20000 with / MaxSpindl eSpeed that's in a dro I placed on the screen

haven't tried it on the mill yet but the voltage does go form 0 to 8.5 volt depending on the percent values...

so I think it will work I will try it on the mill in the next couple of days its been hotter that heck here weather people are talking about reaching 100 this week...

My next and hopefully the last function to get working, endless I find other problems along the way..
Is the spindle index, i'm not sure how you would connect it up with auggie  the pokeys doc's say it on pin 13 of the ultra fast encoder.. .
So I am not sure if a script would be fast enough for the index,  kind of like the probe routine i'm thinking, and it would have to be accessed Constantl y to update the rpm dro…

With mach4 I have it connected with the smoothste pper and I am using a c3 I think that's the board from cnc4pc maybe a c6 and just to a pin on the BOB I think i'm using pin 15.
Would I need the index board for pokeys also, it doesn't sound it from the docs but if that would make it easier then that's what I will do..

Thanks gary
 

 3 
 on: May 21, 2019, 12:44:10 PM 
Started by gburk - Last post by ArtF
Gary:

>>SpindleCo ntrol.Set PWM( channel, spindleax is);

 You have the right idea, but the wrong parameter s. The "SpindleCo ntrol" is just a
hook to the Pokeys, so thats correct. But the call is actually. .

SpindleCo ntrol.Set PWM( channel,  dutycycle );

  So if you set 100, youll get full voltage, if you set 0, youll get 0vdc.
So, in the call you can do a

commandsp eed = GlobalGet("SpindleSp eed"); //this will be the Gcode commanded last speed
percent = (commandsp eed / 20000) * 100;
SpindleCo ntrol.Set PWM( channel,  percent );

  Add a function so that S calls are handled as in..

global SpindleSp eed = function( speed )
{
   /*power is automatic in laser spindle mode..
     no need to specify, in laser mode, spindle
     power is a function of augmentat ion */
  //but in CNC , we need to set the dutycycle to proper speed.

 
percent = (speed / 20000) * 100; //0-100% linearize d to 0 - 100%
SpindleCo ntrol.Set PWM( channel,  percent );

}; 

  Thats about all you need to make a spindle go, though you can be more
complex in its speed command, putting low limits and linearizi ng just
from min to the max.. many ways to do that I think.

Art



 4 
 on: May 20, 2019, 11:28:41 AM 
Started by gburk - Last post by gburk
Art

I think you mat have me on the right track here is the script

I called it with
SetSpindl eState (0); this changed the voltage from .222 to .442
SetSpindl eState (1); changed the voltage to 8.5 I think that's the max I seem to be able to output can't reach 10v even with mach4 and my pokeys has no trim pot so can't make any hardware adjustmen ts

Think i'm on the right track?

don't know if the axis is suppose to move like in your laser scripts but it doesn't...

global channel = 5;
global spindleax is = 5;
global speedduty cycle = 100;
global SpindleCo ntrol = Motion();
 
global SetSpindl eState = function(state)
{
  if ( state == 0)
  {
  SpindleCo ntrol.Set PWM( channel, spindleax is);
  }
  if (state == 1)
  {
  SpindleCo ntrol.Set PWM( channel , speedduty cycle);
  }
};

Thanks gary

 5 
 on: May 20, 2019, 10:27:31 AM 
Started by gburk - Last post by gburk
Art

Thanks will start over and shut down all my scripts to test spindle only i'm not totally sure but in the pokeys configura tion it show pin 17 pwm 5

so I assume I have to set the axis to 5 or 6 or 7 or 8 whichever I choose and the channel to 5, will start here... anyway.

guess I was steering you in the wrong direction ... sorry

Thanks art

 6 
 on: May 20, 2019, 07:14:47 AM 
Started by gburk - Last post by ArtF
Gary:

 Lets back this up a touch. I havent used the 0-10 volt myself, I use only the
PWM signals themselve s. You wont want to use the LaserSpin dle library, the
rtSpindle stuff ( Real-Time-Spindle) is a very fast PWM controlle r for a laser, it
modifies every ms, so its not good for spindle cnc use. We'll use a totally
different control for a cnc spindle.

  So lets first get the 0-10 volts working properly. If you have the correct
PWM channel, then changing its output from 0 - 100% in the Pokeys
software in its PWM config will change the voltage from 0 -10 volts?
 Does that much work?  We need to start at a point where we know
that the Pokeys is controlli ng the 0-10 volts. Then we need
to get to the point where a single script call in the script
window can change that voltage with SetPWM functions . From there
the spindle will not be hard.

You dont need to call any spindle function for that, as I
say we need to ignore the rtLaserSp indle, its a special internal
control and you wont use it.

  When SetSpindl eState( state ) is called, you dont need to call
SpindleOn() or SpindleOf f(), instead you need to simple call a
function that sets a pwm to the channel controlli ng the 0-10 volts.
   
inside SetSpindl eState( state )
{

  if ( state == 0): SetPwmDut y( channel, 0);
if (state == 1): SetPwmDut y( channel , properspe eddutycyc le);
 }

   So get the pokeys so you know the right channel is controlli ng the
0-10 volts.. and once thats definite, Ill guide you to finding what
number is the proper speed and how to send it to the pokeys
at the right time. But igfnore the LaserSpin dle library, you will
be turning that off and simply recoding its calls as a general cnc instead
of photo laser engraver.

Art

 7 
 on: May 19, 2019, 08:54:24 AM 
Started by gburk - Last post by gburk
Art

I have all my scripts turned off and your default screen running.
and only the script spindleli b-laser turned on the profile for this setup shows axis 8 channel 4 how would I wire that to check output voltage when FIRE Held down?
tried the pins for OC4 + - and also the 0-10v pins... no power change

Now if I run my profile it show's axis 5 channel 5, I have the default laser screen loaded with myprofile and the same scripts loaded as your default screen that has the globals set for axis to 8 and channel to 4, but never changes form axis 5 channel 5 back to axis 8 channel 4.. do I have to save the screen for this... it doesn't change even if I run the script...

With both profiles the correct free axis show dro movement when I use SpindleOn();
But the M3 S has no effect, only using the command SpindleOn(); in the script window...

I had a feeling this was going to be a hard one for me to figure out..

Thanks gary


 8 
 on: May 18, 2019, 05:34:18 PM 
Started by gburk - Last post by ArtF
Gary:

 In my laser spindle script, I have

p = Profile("rtPWM");
global LaserAxis = p.GetInt("Axis",8);
global LaserMaxP ower = 100;  //max power = 100%
global LaserPWMP eriod = p.GetFloa t("Period",.0002); //for 5khz tickle 
global LaserPWMC hannel = p.GetInt("Channel",4);
//get a pokeys link for the spindle
global SpindleCo ntrol = Motion();

    This means the system starts up with getting these data items from
the profile under the heading rtPWM. The declarati on as in

global LaserAxis = p.GetInt("Axis",8);


  Means to set the LaserAxis to whatever is stored in the profile,  and
to use 8 as the axis is nothing has ever been set. The 8 is just a
default though. To change it it this type of use you can
simply change my declarati ons to

LaserAxis = 8; for example. It may be in your profile its stored as
a 5 and so doesnt use the 8 as default. Same thing with Channel
and such, they have defaults, but if set in the profile they can differ.

(You can open your profile, its just text and see if there are entries
for those variables unless you intend to use your own globals.).

Art



 9 
 on: May 18, 2019, 04:16:23 PM 
Started by gburk - Last post by gburk
Art

When I turn on the spindle I get the message channel 5 axis 5, this is confusing as far as I can see in your scripts its set to channel 4 axis 8..

and axis 5 starts running I don't see anywhere in the laser scripts that has this print message, so not sure where this channel and axis are being set I don't seem to be able to change it...

Gary

 10 
 on: May 17, 2019, 08:35:52 PM 
Started by Boman33 - Last post by Boman33
Neat!
You always come up with interesti ng and amazing programs.
Have a great weekend.

Pages: [1] 2 3 ... 10
Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006-2009, Simple Machines LLC Valid XHTML 1.0! Valid CSS!