6761
General Mach Discussion / Re: AC servomotor calibration problem
« on: September 03, 2017, 07:14:28 AM »
Hi,
if you require your spindle to do indexing operations then you need to use position control per section 6 in the manual. 'Position
with Following Error' is the right dynamics mode (sounds and vibes) and on the screen on page 6.3 the right choice is about 4000 pulse
per rev.
If you just want to get your spindle going and make some chips then you use section 7 Drive Control with Analogue Interface. On the screen on
page 7.2 you can set the voltage, offset and speed that you wish. Note that at no time do you need to set the 'pulse per rev' that's required
for position control not speed control.
Just as an aside this servo doesn't have an encoder at all, it has a resolver, a very VERY groovy technique from
analogue days, makes me come over all misty eyed! The pulse per rev setting is actually a programmatic setting for the 'Resolver to Digital' converter
in the drive. Thats how Bosch managed to achieve what is to all intents and purposes a programmable resolution encoder...CLEVER!
Anyway back to analogue speed control....with the settings made per 7.1 and 7.2 all that is now required is to enable the drive and apply a voltage.
To enable the drive (fig 10.56 page 10.54) apply +24VDC to pin 1 X4 with 0V pin 4 X4 and have your BoB or even a short bit of wire apply 24V to pin 3 X4.
Lets for the moment imagine that you selected 10V as max command value and 2000 rpm as max commanded speed. For the moment assume 0V offset.
If you apply 5V between pins 1 and 2 connector X3 per page 7.3 then the servo will run at half speed, ie 1000 rpm. Apply 1V and it will run at 1/10 full speed ie 200 rpm.
The voltage applied could come from PWM from Mach via a low pass filter on your Bob or even easier from a potentiometer hooked to your drive.
Some PWM don't actually quite get to 0V, some hang up about one diode drop above earth at 0.7V. If your PWM is like this use the offset of 700mV
to counteract it. A potentiometer should get to 0V so the offset can be 0mV.
Given how simple having a potentiometer is you should probably have a go just to prove to yourself that you can. On page 7.4 is a circuit diagram of the analogue
input. Note that it says a max of 15V input, DON'T exceed it or will blow it up. Ideally you would get a 10 or 12V regulated DC supply or if you want spindle to go
backwards a -12V, 0V, +12V supply. Why would you want to go backwards though? You'll need a potentiometer, anywhere between 1 kOhm to 10 kOhm will be
fine, 10 kOhm is a bit like an arsehole...everyones got one! Hook one of the outside pot terminals to +10V, the other outside terminal to 0V AND pin 1 X3. The centre
pot terminal to pin 2 X3 and the servo should run. If it seems to be going backwards swap the connections between pins 1&2.
Craig
if you require your spindle to do indexing operations then you need to use position control per section 6 in the manual. 'Position
with Following Error' is the right dynamics mode (sounds and vibes) and on the screen on page 6.3 the right choice is about 4000 pulse
per rev.
If you just want to get your spindle going and make some chips then you use section 7 Drive Control with Analogue Interface. On the screen on
page 7.2 you can set the voltage, offset and speed that you wish. Note that at no time do you need to set the 'pulse per rev' that's required
for position control not speed control.
Just as an aside this servo doesn't have an encoder at all, it has a resolver, a very VERY groovy technique from
analogue days, makes me come over all misty eyed! The pulse per rev setting is actually a programmatic setting for the 'Resolver to Digital' converter
in the drive. Thats how Bosch managed to achieve what is to all intents and purposes a programmable resolution encoder...CLEVER!
Anyway back to analogue speed control....with the settings made per 7.1 and 7.2 all that is now required is to enable the drive and apply a voltage.
To enable the drive (fig 10.56 page 10.54) apply +24VDC to pin 1 X4 with 0V pin 4 X4 and have your BoB or even a short bit of wire apply 24V to pin 3 X4.
Lets for the moment imagine that you selected 10V as max command value and 2000 rpm as max commanded speed. For the moment assume 0V offset.
If you apply 5V between pins 1 and 2 connector X3 per page 7.3 then the servo will run at half speed, ie 1000 rpm. Apply 1V and it will run at 1/10 full speed ie 200 rpm.
The voltage applied could come from PWM from Mach via a low pass filter on your Bob or even easier from a potentiometer hooked to your drive.
Some PWM don't actually quite get to 0V, some hang up about one diode drop above earth at 0.7V. If your PWM is like this use the offset of 700mV
to counteract it. A potentiometer should get to 0V so the offset can be 0mV.
Given how simple having a potentiometer is you should probably have a go just to prove to yourself that you can. On page 7.4 is a circuit diagram of the analogue
input. Note that it says a max of 15V input, DON'T exceed it or will blow it up. Ideally you would get a 10 or 12V regulated DC supply or if you want spindle to go
backwards a -12V, 0V, +12V supply. Why would you want to go backwards though? You'll need a potentiometer, anywhere between 1 kOhm to 10 kOhm will be
fine, 10 kOhm is a bit like an arsehole...everyones got one! Hook one of the outside pot terminals to +10V, the other outside terminal to 0V AND pin 1 X3. The centre
pot terminal to pin 2 X3 and the servo should run. If it seems to be going backwards swap the connections between pins 1&2.
Craig