Hello Guest it is April 26, 2024, 07:31:52 AM

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 - hyildiz

Pages: « 1 2 3 4 5 6 7 8 9 »
61
Mach4 General Discussion / Re: Mach4 Spindle At Speed, Spindle Zero Problem
« on: December 26, 2017, 03:02:00 PM »
Well Craig,

Once again u are right.

The thing is old spindle could not do steel, i installed it to test the positioning and machining accuracy of the machine on Aluminum but i couldnt stop my self since the machine body is strong i tried it on steel so spindle couldnt take it  ;D

so i had to change it with lowest cost possible, i sent it back to manufacturer and engineer in there is a good guy and he made me a new induction motor with 4 poles 400mhz 12000rpm specs. and i paid 50 bucks for that. As u know i had 4kw delta inverter so no need to change the inverter i already got the motor and tested it. Its better than the old one, bigger motor 130x130mm and i will use it to drive the CELLS spindle. So at the beginning i thought to go with Servo motor but it would be more expensive and as u know servo motor max. speed is about 3000rpm. I will use this induction motor with direct coupling to the belt driven spindle because my Zth axis has no space for belt setup.

As u say for now best way is to use the hall effect sensor with a small magnet on the output shaft, i think ESS PID should work with that as u suggested. Any programming needed to make it work?

Hakan

62
Mach4 General Discussion / Re: Mach4 Spindle At Speed, Spindle Zero Problem
« on: December 26, 2017, 02:26:27 PM »
Hi Craig,

I know its expensive but as u said for future implementations it will be ready, so as far as i understand i should ask to manufacturer that the encoder should provide an index pulse which is 1 pulse per revolution it will be usefull to zero the spindle like an axis. I will implement some other features which i can use that indexing function also so its a good idea, i am not sure if they provide it in incremental encoders but i will ask..

Hakan

63
Mach4 General Discussion / Re: Mach4 Spindle At Speed, Spindle Zero Problem
« on: December 26, 2017, 01:45:46 PM »
Hi Craig,

Yes i am using an ESS with my current setup, i installed the new plugin to test the backlash compensation and i saw some new boxes added to spindle tab, is that PID closed loop control function?

As far as i test it its backlash compensation does not work yet i dont know why but as the movement of the axis keeps longer the compensation gets bigger and it results an error on the axis isntead of fixing it. I have 0.003mm backlash because of the ballscrew on one of the axis and i coulnt be able to fix it with ess backlash compensation, this is another topic but i am not sure that spindle PID control works as u said it needs to be tested.

The reason i wanted to use this encoder: it is more suitable to my setup in means of assembling, it has 22mm bore so spindle motor shaft output is 22mm in diamater at the back of it, it will be more compact and professional looking in this way  ;)

Do u think encoder can be connected with ESS PID function and can be used in getting the exact rpm and also in threading type processes?

Hakan


64
Mach4 General Discussion / Re: Mach4 Spindle At Speed, Spindle Zero Problem
« on: December 26, 2017, 12:47:35 PM »
Hi Craig,

I am back  ;D

the spindle at speed function we(you) implemented to Mach4 works just fine machine acts more like a professional machine and now i decided to upgrade the spindle to more professional one i ordered one BT40 ATC belt driven spindle from CELLS.I remember u saying something like that i can add an encoder to the spindle, so that Mach4 will know the exact rpm of the spindle. This will also help in other functions like threading etc.

I searched some suppliers and found an encoder which has 12000rpm max. speed but 100ppr as resolution(u can see details in the attached document), i have couple questions to u since u know these technical stuff better than me;

- do u think this encoder is suffice for Mach4 in means of ppr?
- what output type(NPN, Voltage Output, etc) should i choose?
- what output phase(A, A+B, etc.) should i choose?

to make this work with Mach4, and i have PMDX126+ESS setup also using PMDX107 board for pwm spindle control.

Thanks in advance,

Hakan

65

I couldnt see that either Craig,

but we solved the problem anyway so its ok.

Regards,

Hakan

66
Hi Craig,

My VFD is also a Delta VFD-E series and it is sensorless vector control, i couldnt find DFM in the user manual but in my VFD it is called MO1 and MCM i guess, i am using that terminal to get the spindle at speed signal.

From your description i think they are basically the same thing right? VFD is guessing the rpm by the frequency so the result of your way and my way is same.

Regards,

Hakan

67
Hi Craig,

U know these programming things better than me so i trust your word on it ;)

Quote
whereas the other method reqired you program your VFD to produce a pulse output and have Mach use its inbuilt functions to read and act on it.

How did u program your VFD to produce pulse output?

Regards,

Hakan

68
Hi Craig,

The reason why we couldnt use ISIG_SPINDLE_AT_SPEED is because they assigned it to something but didnt complete the code for it.

Why do u assign a name to a function? because it does something, if it doesnt do anything then why did u assign a name to it? user can use any input(which we did, we used input62) to implement this function.

I assume that they had this idea to implement it to Mach4 but for some reason they didnt, and the extension Rob is talking about is a new version of Mach4 in which Spindle at speed is defined ;)

It has to be like this, when u select Spindle At Speed from the menu and assign it to a pin number, Mach should automatically see it and wait for that signal to turn HIGH after Cycle Start pressed and if not it should display a message which asks user if he/she wants to go on without spindle running.

I was saying this from the beginning and that is the reason why we couldnt use the ISIG_SPINDLE_AT_SPEED and ISIG_SPINDLE_AT_ZERO because they assigned to some function but function is not defined within Mach4 and software does not let user to define that function.

Spindle at speed signal is the best and cheapest way to make the machine know that spindle is at commanded speed, most of the VFDs providing this function, if u dont use it u have to buy a spindle which has encoder installed or u have to install a encoder or rpm sensor to the shaft of the spindle, first one is expensive and second one is dangerous so best and industrial way of knowing that the spindle is at commanded speed is using this function and it must be implemented to industrial version.

Regards,

Hakan


69
Hi Craig,

"Only a week or so ago you were convinced that you couldn't write or didn't want to write any Lua code now you're doing it on your own!"

Come on, u wrote the code i just added 2 lines in there and i took one from Daz's code ;)

I want to learn Lua and write scripts with it to program Mach4 also want to make the interface with it which has animated readouts etc. but Lua has very limited resources on the web. For example as a programmer those resources may be enough for you but for people like me it has to be more like the arduino resources, it has to be more detailed with much examples.

But the thing that u and Daz do in here, helping people for beginning in Lua is something very valuable, i really appreciate your help, thanks once again.

Today when i made the code work, i enjoyed watching the machine act more aware of whats happening, u know it listens an input, waits and when spindle gets to desired rpm it moves the machine, it acts more smart. Machines should not move blind or operator dependent, they can be more reliable with these kind of small add-ons.

M100 idea is a very good idea, it will be wise to make it write the all collected data to a file and make arduino keep the file or load it to restart sequence of the controller after the AC line restored..

Regards,

Hakan





70
Hi Craig,

I didn't fix the signal glitch problem from VFD but i changed the code as follows so it works for me like this;

Code: [Select]

function m3();
local inst=mc.mcGetInstance();
mc.mcSpindleSetDirection(inst,mc.MC_SPINDLE_FWD);
wx.wxSleep(1)
mc.mcCntlSetLastError(inst,"m3 waiting");
local returncode=mc.mcSignalWait(inst,mc.ISIG_INPUT62,mc.WAIT_MODE_HIGH,10);
    if (returncode==mc.MERROR_TIMED_OUT) then
        mc.mcSpindleSetDirection(inst,mc.MC_SPINDLE_OFF);
        mc.mcCntlSetLastError(inst,"spindle did not respond, cycle stop");
        mc.mcCntlCycleStop(inst, 0);
       
    else;
        mc.mcCntlSetLastError(inst,"m3 at speed");
    end;
end
if (mc.mcInEditor() == 1) then
    m3()
end


i am not sure if this "mc.mcCntlCycleStop(inst, 0);" is the correct usage of it but it works fine like this.

this code jumps over the glitch problem by waiting for a second or so before checking the input62 so when spindle reaches the commanded rpm vfd turns on the input62 and code says "m3 at speed" and goes on to gcode.

Also in case of missing input62 HIGH, it says "spindle did not respond, cycle stop" and stops the gcode.

Regards,

Hakan

Pages: « 1 2 3 4 5 6 7 8 9 »