5i25 + 7i85s +....

More
9 years 10 months ago #84802 by Emanresu
Replied by Emanresu on topic 5i25 + 7i85s +....
Check!

So... the following should be my final signal setup for one axis. But two things:

For my understanding the arrows of x-output lead in the wrong direktion. Im right? (Made by PNCconf)
Otherwise i dont see, where PID talks to 5i25.

PNCconf missed to hookup x-vel-fb back to pid.x.feedback-deriv.
On the other Hand... is there really need for this or is it just waste of cycle time?
net x-pos-fb should do all the Work.

Code:
net x-enable <= axis.0.amp-enable-out net x-enable => hm2_5i25.0.stepgen.00.enable net x-enable => pid.x.enable net x-enable => parport.0.pin-2-out net x-pos-cmd <= axis.0.motor-pos-cmd net x-pos-cmd => pid.x.command net x-vel-cmd <= axis.0.joint-vel-cmd net x-vel-cmd => pid.x.command-deriv net x-output <= hm2_5i25.0.stepgen.00.velocity-cmd net x-output => pid.x.output net x-pos-fb <= hm2_5i25.0.encoder.00.position net x-pos-fb => pid.x.feedback net x-vel-fb <= hm2_5i25.0.encoder.00.velocity net x-vel-fb => pid.x.feedback-deriv net x-index-enable <=> pid.x.index-enable net x-index-enable axis.0.index-enable <=> hm2_5i25.0.encoder.00.index-enable

Im still looking into manuals about the index stuff.

Please Log in or Create an account to join the conversation.

More
9 years 10 months ago - 9 years 10 months ago #84806 by PCW
Replied by PCW on topic 5i25 + 7i85s +....
net x-output <= hm2_5i25.0.stepgen.00.velocity-cmd
net x-output => pid.x.output

The arrows here are both backwards (but it does not matter since the arrows are ignored)



net x-vel-fb <= hm2_5i25.0.encoder.00.velocity
net x-vel-fb => pid.x.feedback-deriv

is not necessary but will result in better control ( this is because the encoders velocity estimation is better than
the PID comps velocity estimation via D/DT of position )
Last edit: 9 years 10 months ago by PCW.
The following user(s) said Thank You: Emanresu

Please Log in or Create an account to join the conversation.

More
9 years 10 months ago #84808 by Emanresu
Replied by Emanresu on topic 5i25 + 7i85s +....
Yep, i know about the arrows. Like a wire in RL has no direktion too.
I start to like HAL!

Nice Information about hm2_5i25.0.encoder.00.velocity! didnt expect that!

Why are...

- addf hm2_5i25.0.read
- addf motion-command-handler
- addf motion-controller
- addf pid.x.do-pid-calcs
- addf pid.y.do-pid-calcs
- addf pid.z.do-pid-calcs
- addf hm2_5i25.0.write

...in the slower servo-threat instead of base-threat? Since i have no software-stepgen runnung.

Please Log in or Create an account to join the conversation.

More
9 years 10 months ago #84809 by PCW
Replied by PCW on topic 5i25 + 7i85s +....
If you are not doing software stepgens or software encoder counters
you dont need (or want) a high speed thread so only a servo thread is needed

(effectively the base thread = high speed functions are running in the FPGA)
The following user(s) said Thank You: Emanresu

Please Log in or Create an account to join the conversation.

More
9 years 10 months ago #84810 by Emanresu
Replied by Emanresu on topic 5i25 + 7i85s +....
Shouldn't the PID work as fast as possible?
Or is the System more stable in servo-threat?

Please Log in or Create an account to join the conversation.

More
9 years 10 months ago - 9 years 10 months ago #84811 by PCW
Replied by PCW on topic 5i25 + 7i85s +....
A couple of things

1. The base thread cannot do floating point

2. You can run the servo thread as fast as your hardware and PC will function
_But_ there is no advantage to running it faster than about 10 times as fast as the
controlled systems bandwidth (and for CNC systems a few hundred HZ is about as
fast as the position bandwidth loop gets) Running the loop faster just wastes CPU time
Last edit: 9 years 10 months ago by PCW.
The following user(s) said Thank You: Emanresu

Please Log in or Create an account to join the conversation.

Moderators: cmorley
Time to create page: 0.153 seconds
Powered by Kunena Forum