AC servo running slow at 0V analog
17 Sep 2018 02:18 #117635
by thang
AC servo running slow at 0V analog was created by thang
My AC servo is MRJ3, i'm using analog speed mode to control position, my AC servo still running at 0VDC(because of mV). I tried using automatic offset function but it doesnt help much. this problem happen to all over AC servos that are running by analog speed, How do you guys solve this when you use AC servo at analog speed mode? Here is mrj3 manual: dl.mitsubishielectric.com/dl/fa/document...030038/sh030038l.pdf
Please Log in or Create an account to join the conversation.
17 Sep 2018 03:04 #117639
by PCW
Replied by PCW on topic AC servo running slow at 0V analog
The drives should not be enabled unless LinuxCNC is running and the feedback loop is operating. When the PID feedback loop is running the drive cannot drift.
This is really the first thing that should be done when setting up s servo drive (giving linuxcnc control of the drive enable)
The drives enable should be controlled by LinuxCNC/motions joint.N.amp-enable-out pin
(2.8) or axis.N.amp-enable-out (2.7). This is a safety issue.
This is really the first thing that should be done when setting up s servo drive (giving linuxcnc control of the drive enable)
The drives enable should be controlled by LinuxCNC/motions joint.N.amp-enable-out pin
(2.8) or axis.N.amp-enable-out (2.7). This is a safety issue.
The following user(s) said Thank You: thang
Please Log in or Create an account to join the conversation.
17 Sep 2018 03:57 #117640
by thang
Replied by thang on topic AC servo running slow at 0V analog
I just realize this problem is solved by PID loop itself. I set up wrong side of encoder that make my motor go uncorrect. Thank for your answer anyway.
Please Log in or Create an account to join the conversation.
17 Sep 2018 09:19 - 17 Sep 2018 10:31 #117645
by thang
Replied by thang on topic AC servo running slow at 0V analog
how do we control speed and acc in this type system? I cant find out where "MAX_VEL" and "MAX_ACC" should be used in this system.
more detail:
+ Servo motor is running at 3000r/m at 10 V.
+ Analog min/max output is +-10V.
and this is my config:
I guess i have to compute something like OUTPUT_SCALE, OFFSET... but i'm not understand
more detail:
+ Servo motor is running at 3000r/m at 10 V.
+ Analog min/max output is +-10V.
and this is my config:
I guess i have to compute something like OUTPUT_SCALE, OFFSET... but i'm not understand
Last edit: 17 Sep 2018 10:31 by thang. Reason: adding more information
Please Log in or Create an account to join the conversation.
17 Sep 2018 14:02 #117656
by PCW
Replied by PCW on topic AC servo running slow at 0V analog
The velocity and acceleration setting are specified in the ini file:
linuxcnc.org/docs/devel/html/config/ini-config.html
linuxcnc.org/docs/devel/html/config/ini-config.html
Please Log in or Create an account to join the conversation.
18 Sep 2018 08:01 #117698
by thang
Replied by thang on topic AC servo running slow at 0V analog
After many hours read document this is what i tried :
System infor:
+ AC servo run with 3000 r/m at +-10V
+ Encoder_input for linuxcnc: 4000 ppr
+ Joint type: angular with max_velocity 95 deg/s
+ gear_ratio: 10
My config:
+ I setup my driver become 95*gear_ratio*60/360 = 158 r/m at +-10V
+ Input_scale = 4000*gear_ratio/360 = 111.1111
+ MAX_OUTPUT = 10
+ OUTPUT_SCALE = 95/10V =9.5
+ OUTPUT_OFFSET = 0
result:
+ Analog voltage cmd from linuxcnc is around 9.4V, my servo shows 9.8V
+ Velocity in linuxcnc show 95-100 deg/s
Are they all right? Is there anything more i have to do for this system except tuning PID? I also recommend we should put some examples in document, it's really unclear for users
System infor:
+ AC servo run with 3000 r/m at +-10V
+ Encoder_input for linuxcnc: 4000 ppr
+ Joint type: angular with max_velocity 95 deg/s
+ gear_ratio: 10
My config:
+ I setup my driver become 95*gear_ratio*60/360 = 158 r/m at +-10V
+ Input_scale = 4000*gear_ratio/360 = 111.1111
+ MAX_OUTPUT = 10
+ OUTPUT_SCALE = 95/10V =9.5
+ OUTPUT_OFFSET = 0
result:
+ Analog voltage cmd from linuxcnc is around 9.4V, my servo shows 9.8V
+ Velocity in linuxcnc show 95-100 deg/s
Are they all right? Is there anything more i have to do for this system except tuning PID? I also recommend we should put some examples in document, it's really unclear for users
Please Log in or Create an account to join the conversation.
18 Sep 2018 14:27 - 18 Sep 2018 14:28 #117719
by PCW
Replied by PCW on topic AC servo running slow at 0V analog
You dont actually have to change those settings at all (PID tuning will compensate for the scaling), however,
you can simplify initial tuning of velocity mode drives by setting the OUTPUT_SCALE to machine units per second at 10V.
(how fast the machine moves with 10V applied)
If you do this (normalize the units) the PID output= velocity command will be in machine units per second.
This means you know that FF1 = 1.00 so the main part of PID tuning is done.
For smart serial devices you must also set the MAX_LIMIT and MIN_LIMIT numbers to
+OUTPUT_SCALE and -OUTPUT_SCALE
you can simplify initial tuning of velocity mode drives by setting the OUTPUT_SCALE to machine units per second at 10V.
(how fast the machine moves with 10V applied)
If you do this (normalize the units) the PID output= velocity command will be in machine units per second.
This means you know that FF1 = 1.00 so the main part of PID tuning is done.
For smart serial devices you must also set the MAX_LIMIT and MIN_LIMIT numbers to
+OUTPUT_SCALE and -OUTPUT_SCALE
Last edit: 18 Sep 2018 14:28 by PCW.
The following user(s) said Thank You: thang
Please Log in or Create an account to join the conversation.
04 Oct 2018 10:02 #118435
by thang
Replied by thang on topic AC servo running slow at 0V analog
There are somethings i disturbance when i use velocity mode:
+ Should i use auto tuning function of AC servo driver as 1st close loop?
+ Using max velocity to tuning ?
About tuning PID, first i increased maximum P without oscilation, then i set FF1 but this is the best result i got ( i was using auto tuning inside driver). Any recommend for me to increase accuracy?
+ Should i use auto tuning function of AC servo driver as 1st close loop?
+ Using max velocity to tuning ?
About tuning PID, first i increased maximum P without oscilation, then i set FF1 but this is the best result i got ( i was using auto tuning inside driver). Any recommend for me to increase accuracy?
Please Log in or Create an account to join the conversation.
05 Oct 2018 12:32 #118471
by andypugh
Replied by andypugh on topic AC servo running slow at 0V analog
A little bit of D might kill that oscillation. (and I mean a tiny bit, start with 0.0000001 and take out the zeros one by one)
Otherwise it looks like the P is too high.
Otherwise it looks like the P is too high.
Please Log in or Create an account to join the conversation.
05 Oct 2018 15:17 #118475
by thang
Replied by thang on topic AC servo running slow at 0V analog
After decreasing servo-thread from 1ms to 250us, making some changes, i got better result but i'm still not satisfied. I will try your recommend in tomorrow.
But i still want to refer your experience, should i use auto tuning inside AC servo driver for 1st close loop? I use this for tuning torque then i use 2nd close loop on linuxcnc to control position, I dont want to manual tuning torque because i cant estimate it, my machine is an arm robot
But i still want to refer your experience, should i use auto tuning inside AC servo driver for 1st close loop? I use this for tuning torque then i use 2nd close loop on linuxcnc to control position, I dont want to manual tuning torque because i cant estimate it, my machine is an arm robot
Please Log in or Create an account to join the conversation.
Time to create page: 0.425 seconds