If kernel panic happens after like a few hours I would guess there are some 
kind of timing involved. It might be some kind of shared resource not properly 
locked or similar. If data is sent with high frequency some errors are less 
likely because they would happen very fast. I think I have seen the behavior 
for Mesa Hostmot driver to buffer network access then other end does not reply 
and send them in a fast burst then connecting again, to throw away old outdated 
accesses would be better in this case, it may eat up the memory.

I am very interested in the main ideas of this component is that pass the 
interpolation data to pulsecard via Ethernet , pulsecard  generate the pulse 
according to the count of pulses get form Ethernet  every interpolation cycle 
and  then drive the motor.

I have modified the Mesa Hostmot driver to send positions instead of velocity 
for stepper. The difference here is you use pulse while I use position. I 
implemented calculation of average receive time filter and interpolation in 
receiving end. Even though there is a stepper in receiving end right now 
protocol should work equally with a servo motor. Number of step decimal point 
is also useful to place position changes withing servo period or there will be 
quite a lot of jitter around servo period frequency.


Now we are two who think interpolation at receiving end is a good idea, are 
there more of us?


On Sun, 26 Jun 2016 13:58:16 +0800
"其实" <[email protected]> wrote:

> hi everyone 
> 
> 
> I had spend about several months for building a component which is used for 
> communicate with a pulsecard by ethernet.
> 
> 
> The component is build as rt component ,now it can be talk with pulsecard 
> successfully.But several hours later,there will be a kernel panic happened.  
> Since I am not familiar with RTAI and Linux kernel modules ,So I want to know 
> what would you do  when you meet this kind of question. What should I do ?
> 
> 
> If someone is interest with my project and Know how to solve this problem , 
> Please contact me,I am very eager to have a like-minded partners.
> 
> 
> The main ideas of this component is that pass the interpolation data to 
> pulsecard via Ethernet , pulsecard  generate the pulse according to the count 
> of pulses get form Ethernet  every interpolation cycle and  then drive the 
> motor.
> 
> 
> 
> The pulsecard code is in the mail attachment. Add component function 
> "update_pos" to servo thread with thread period 1000000ns.  Link the computer 
> wiht another one which with software "Wireshark" or other software 
> function-like installed by ethernet and ethernet switch. You will receive the 
> Mac frame by wireshark.
> 
> 
> In my test, the kernel will enter into panic after several hours.But I can't 
> find the reasion.So help me~
> 
> 
> In addition ,if someone is interest  in or need the component,Email me~,we 
> can develop  it with each other~
> 
> 
> Thanks~
> 
> 
> best recards
> paul

------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
Emc-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to