servo motor - which times are important to set?
- t1m0n
- Offline
- Junior Member
Less
More
- Posts: 34
- Thank you received: 0
13 Nov 2012 05:54 #26516
by t1m0n
servo motor - which times are important to set? was created by t1m0n
Hi, I read something about base_period und servo_period in the wiki and the help but I don't understand the main different.
In my case I want to controll a servo motor with linuxcnc by the shared memory with an own driver.
I read that these two parameters are important for step generator but I think I don't use step generator.
wiki.linuxcnc.org/cgi-bin/wiki.pl?IniFile
wiki.linuxcnc.org/cgi-bin/wiki.pl?Tweaki...ose_your_BASE_PERIOD
www.linuxcnc.org/docs/devel/html/config/emc2hal.html
What are good parameters in my case and where is a good definition?
In my case I want to controll a servo motor with linuxcnc by the shared memory with an own driver.
I read that these two parameters are important for step generator but I think I don't use step generator.
wiki.linuxcnc.org/cgi-bin/wiki.pl?IniFile
wiki.linuxcnc.org/cgi-bin/wiki.pl?Tweaki...ose_your_BASE_PERIOD
www.linuxcnc.org/docs/devel/html/config/emc2hal.html
What are good parameters in my case and where is a good definition?
Please Log in or Create an account to join the conversation.
- PCW
- Away
- Moderator
Less
More
- Posts: 17899
- Thank you received: 4774
13 Nov 2012 06:08 #26517
by PCW
Replied by PCW on topic servo motor - which times are important to set?
Normally only the servo thread is needed for servo drives
For most systems the default 1 KHz servo thread rate is suitable
Exceptions would be where encoders are read directly
from a parallel port or other GPIO so a faster (base) thread is needed.
If PWM is generated in software, a base thread would also be needed.
If your hardware takes care of the high speed logic,
you should not need a base thread.
For most systems the default 1 KHz servo thread rate is suitable
Exceptions would be where encoders are read directly
from a parallel port or other GPIO so a faster (base) thread is needed.
If PWM is generated in software, a base thread would also be needed.
If your hardware takes care of the high speed logic,
you should not need a base thread.
Please Log in or Create an account to join the conversation.
- t1m0n
- Offline
- Junior Member
Less
More
- Posts: 34
- Thank you received: 0
13 Nov 2012 16:38 - 13 Nov 2012 16:40 #26523
by t1m0n
Replied by t1m0n on topic servo motor - which times are important to set?
I use a servo motor with own controll. I only send the desired value to the servo. Its not the job of LinuxCNC to controll the position and correct them.
Last edit: 13 Nov 2012 16:40 by t1m0n.
Please Log in or Create an account to join the conversation.
- Todd Zuercher
- Offline
- Platinum Member
Less
More
- Posts: 5009
- Thank you received: 1443
13 Nov 2012 20:15 #26530
by Todd Zuercher
Replied by Todd Zuercher on topic servo motor - which times are important to set?
If you are doing software step generation you will need a base thread. It all depends on how you have it set up. Tells us more about what you plan to use.
Please Log in or Create an account to join the conversation.
- t1m0n
- Offline
- Junior Member
Less
More
- Posts: 34
- Thank you received: 0
14 Nov 2012 00:35 #26537
by t1m0n
Replied by t1m0n on topic servo motor - which times are important to set?
I want to use the shared memory patch from Michael Abel: bitmuster.org/projects/emc.html.
It enable to get the positions (for x,y,z) in a 3rd. party programm.
This 3rd. party programm is my project. It use a special API to communicate with the servo motor over sercos III (real time ethernet).
For real time I use PREEMPT_RT instead of RTAI. This works nice!
But now I want to optimize the INI-Files. I can set there times like "base_period" and "servo_period".
But I'am not sure which times are important for my case because linuxcnc has not to controll the motor directly (no servo card, no parallel port).
The motor is controlled by the external servo drive which is a part of the motor.
I only have to send the positions to the servo drive and it controlls the servo motor.
My meaning is that I am independent from step generator.
Only the time which is needed to generate the positions from nc code is important because it affects the cycle time of the real time ethernet sercos III.
But which are the times I have to set with cycle time of my real time ethernet and which time I have to set with zero (0).
I know that its a special case and this is the reason how i didn't find anything about it in wiki, forum or manual.
It enable to get the positions (for x,y,z) in a 3rd. party programm.
This 3rd. party programm is my project. It use a special API to communicate with the servo motor over sercos III (real time ethernet).
For real time I use PREEMPT_RT instead of RTAI. This works nice!
But now I want to optimize the INI-Files. I can set there times like "base_period" and "servo_period".
But I'am not sure which times are important for my case because linuxcnc has not to controll the motor directly (no servo card, no parallel port).
The motor is controlled by the external servo drive which is a part of the motor.
I only have to send the positions to the servo drive and it controlls the servo motor.
My meaning is that I am independent from step generator.
Only the time which is needed to generate the positions from nc code is important because it affects the cycle time of the real time ethernet sercos III.
But which are the times I have to set with cycle time of my real time ethernet and which time I have to set with zero (0).
I know that its a special case and this is the reason how i didn't find anything about it in wiki, forum or manual.
Please Log in or Create an account to join the conversation.
- PCW
- Away
- Moderator
Less
More
- Posts: 17899
- Thank you received: 4774
14 Nov 2012 01:08 #26538
by PCW
Replied by PCW on topic servo motor - which times are important to set?
If you are only sending positions to a remote device you don't need a base thread
Please Log in or Create an account to join the conversation.
- t1m0n
- Offline
- Junior Member
Less
More
- Posts: 34
- Thank you received: 0
14 Nov 2012 01:12 - 14 Nov 2012 01:14 #26539
by t1m0n
But what is with?
What is the different between these period times?
Do you have a link to a good definition which explain the differences?
Replied by t1m0n on topic servo motor - which times are important to set?
No base thread meansIf you are only sending positions to a remote device you don't need a base thread
BASE_PERIOD = 0
SERVO_PERIOD = ...........
What is the different between these period times?
Do you have a link to a good definition which explain the differences?
Last edit: 14 Nov 2012 01:14 by t1m0n.
Please Log in or Create an account to join the conversation.
- BigJohnT
- Offline
- Administrator
Less
More
- Posts: 7330
- Thank you received: 1177
14 Nov 2012 01:35 #26541
by BigJohnT
Replied by BigJohnT on topic servo motor - which times are important to set?
They are used by the motion component...
linuxcnc.org/docs/html/man/man9/motion.9.html
linuxcnc.org/docs/html/hal/tutorial.html#_stepgen_example
linuxcnc.org/docs/html/man/man9/threads.9.html
John
linuxcnc.org/docs/html/man/man9/motion.9.html
linuxcnc.org/docs/html/hal/tutorial.html#_stepgen_example
linuxcnc.org/docs/html/man/man9/threads.9.html
John
Please Log in or Create an account to join the conversation.
- andypugh
- Offline
- Moderator
Less
More
- Posts: 23558
- Thank you received: 4858
14 Nov 2012 04:22 #26550
by andypugh
There is now a complete repository of LinuxCNC that can be built for RTAI, Xenomai or RT-PREEMPT.
thread.gmane.org/gmane.linux.distributions.emc.devel/8147
You might want to begin with that.
Replied by andypugh on topic servo motor - which times are important to set?
I want to use the shared memory patch from Michael Abel: bitmuster.org/projects/emc.html.
There is now a complete repository of LinuxCNC that can be built for RTAI, Xenomai or RT-PREEMPT.
thread.gmane.org/gmane.linux.distributions.emc.devel/8147
You might want to begin with that.
Please Log in or Create an account to join the conversation.
- t1m0n
- Offline
- Junior Member
Less
More
- Posts: 34
- Thank you received: 0
14 Nov 2012 05:42 - 14 Nov 2012 05:58 #26556
by t1m0n
Is the Shared Memory a official part of the mainbranch from linuxcnc now???
I tried to download it with git clone git://git.linuxcnc.org/git/emc2.git emc2-dev but I don't find the integrated sharedmemory.
Replied by t1m0n on topic servo motor - which times are important to set?
Very nice! Good job! But I use 3.4.9-rt17 with ubuntu 10.04 and it works
There is now a complete repository of LinuxCNC that can be built for RTAI, Xenomai or RT-PREEMPT.I want to use the shared memory patch from Michael Abel: bitmuster.org/projects/emc.html.
thread.gmane.org/gmane.linux.distributions.emc.devel/8147
You might want to begin with that.
Is the Shared Memory a official part of the mainbranch from linuxcnc now???
I tried to download it with git clone git://git.linuxcnc.org/git/emc2.git emc2-dev but I don't find the integrated sharedmemory.
These links doen't given an answer for my questionThey are used by the motion component...
linuxcnc.org/docs/html/man/man9/motion.9.html
linuxcnc.org/docs/html/hal/tutorial.html#_stepgen_example
linuxcnc.org/docs/html/man/man9/threads.9.html
John
Last edit: 14 Nov 2012 05:58 by t1m0n.
Please Log in or Create an account to join the conversation.
Moderators: PCW, jmelson
Time to create page: 0.118 seconds