- SSD 631 servo drive - programming
-
Registered
SSD 631 servo drive - programming
Hello everyone,
I wonder if any of You have ever worked with SSD 631 servo drive. This topic is brand new for me, so sorry for silly questions. I'm a student and my task is to create a program, which enables motion of this servo. This should be made in BIAS language in EASYRIDER program. I wanted to make a program, in which the speed will be increasing in specific way. For example firstly speed of 500 rpm will be set, after one minute the speed will be increased to 1000 rpm and then, after another one minute the speed will be increased to 1500 rpm.
For my first time, I have written such program:
PROG_START
0 Actual position 1=0
1 Acceleration = 3000 rpm/s
2 Speed = 200 rpm
3 Position = 50000 INCR
4 Start axis
5 Move position, axis no.= 0, target = 0
6 Wait for "position reached"
8 Position = 100000 INCR
9 Speed = 400 rmp
10 Start axis
11 Move incremental, axis no.= 0, target = 0
12 Wait for "position reached"
14 Position = 1500 INCR
15 Speed = 600 rmp
16 Start axis
17 Move incremental, axis no.= 0, target = 0
18 Wait for "position reached"
20 Deceleration = 300 rpm/s
21 Position = 152000 INCR
22 Speed = ....... rmp
23 Start axis
24 Move incremental, axis no.= 0, target = 0
25 Wait for "position reached"
26 End of program, mode 0
But this programm has a big problem - before every "position reached" servo was stopping, and then, it starts its' movement once again, from zero velocity. I was searching for solutions, but I cannot find any way, to make the speed increase smoothly.
Have anyone made such thing?
PS. Sorry for my all mistakes in English, I'm polish student
Similar Threads:
-
-
Community Moderator
Re: SSD 631 servo drive - programming
I think you want to do something like this. I think you want to start the move then at some positions change the speed. If I understand the manual correctly, this may work.
PROG_START
0 Actual position 1=0
1 Acceleration = 3000 rpm/s
2 Speed = 200 rpm
3 Position = 303500 INCR (final position)
4 Start axis
5 Move position, axis no.= 0, target = 0
6 Wait for "position reached"
8 Position = 100000
9 Speed = 400 rpm
10
11
12 Wait for "position reached"
14 Position = 150000
15 Speed = 600 rpm
16
17 Move incremental, axis no.= 0, target = 0
18 Wait for "position reached"
20 Deceleration = 300 rpm/s
21 Position = 151500
22 Speed = ....... rmp
23
24
25 Wait for "position reached"
26 End of program, mode 0
-
Registered
Re: SSD 631 servo drive - programming
Thank you for your comment. I spent last days in laboratoty and it cames out, that the problem was realy trivial. I have divided program into steps and use another command. Right now the formula looks like this:
PROG_START
0 Actual position 1=0
1 Acceleration = 1500 rpm/s
2 Speed =500 rpm
3 Start axis
4 Move infinite positive; axis no. = 0, target = 0
5 If actual pos. 1 < 2500000 incr then jump 5
6 Acceleration = 1500 rpm/s
7 Speed =1000 rpm
8 Start axis
9 Move infinite positive; axis no. = 0, target = 0
10 If actual pos. 1 < 5000000 incr then jump 10
11 Acceleration = 1500 rpm/s
12 Speed =1500 rpm
13 Start axis
14 Move infinite positive; axis no. = 0, target = 0
15 If actual pos. 1 < 7500000 incr then jump 15
16 Acceleration = 1500 rpm/s
17 Speed =2000 rpm
18 Start axis
19 Move infinite positive; axis no. = 0, target = 0
20 If actual pos. 1 < 10000000 incr then jump 20
21 Wait time 10000 ms
22 Stop axis; mode = 1 a- = 300 rpm/s
23 End of program, mode 1PROG_START
-
Community Moderator
Re: SSD 631 servo drive - programming
Happy to hear you figured it out. What you have there makes sense.
- SSD 631 servo drive - programming
Tags for this Thread
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules