Lapic error causing real time to stop.

More
10 years 9 months ago #68761 by Ozcnc
The problem is that I can't drive motors or activate the controller for motion.

Gigabyte P35 computer exact model I will get tonight when I get home.
Linuxcnc 2.7.0.
Latency 8000.
I did get the linuxcnc extract from the computer before I left this afternoon and I have attached it.

I have a High z zero3 controller which was built by Benezan Electronics but does not have any jumpers to disable watchdog.
The charge pump requires a 1kHz pure sine wave on pin 16.
For a current list of pin outs that I have loaded on the Mesa are attached in the archive Zero3.tar.gz

I have also attached the Hal and INI files.
I have disabled the spindle setup as this somehow got configure to run differently.

I have also attached grub, 10_linux, Dmesg, etc....

I have also loaded the parallel printer setup hal file for reference to the pin outs that work.
Let me know if there is anything else.

Please Log in to join the conversation.

More
10 years 9 months ago #68766 by andypugh

Ozcnc wrote: The charge pump requires a 1kHz pure sine wave on pin 16.

It isn't possible to generate a pure sine wave from a parallel port or from a Mesa card.

I have also loaded the parallel printer setup hal file for reference to the pin outs that work.
Let me know if there is anything else.


You may be able to use the HAL charge_pump component if the system will actually work with a 500Hz square wave.

linuxcnc.org/docs/2.7/html/man/man9/charge_pump.9.html

Please Log in to join the conversation.

More
10 years 9 months ago #68767 by ArcEye
What I would do if I were you, is just to jury rig it for now, to get it running

Connect up your BOB you used for the parport configuration to the parport and just use the charge_pump section of that config inside your new 5i25 config.
( You can mix the 2 quite happily, I do it on my mill because my pendant is DB25 wired for a parport connection, I just split the cable and spliced into one of the 5i25 encoders for the MPG so as to use a hardware encoder, the switches still go through the parport)

Connect the charge_pump output to your controller same as you did in the parport setup.

eg (cutting and pasting your 2 config hal files)
Code:
# Generated by PNCconf at Tue Jan 19 04:29:40 2016 # If you make changes to this file, they will be # overwritten when you run PNCconf again loadrt trivkins #### replace here ========> ## loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES #### with ===> loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES #(just make sure to specify base thread in ini file-example below) #[EMCMOT] #EMCMOT = motmod #COMM_TIMEOUT = 1.0 #COMM_WAIT = 0.010 #BASE_PERIOD = 25000 #SERVO_PERIOD = 1000000 ########################### loadrt hostmot2 loadrt hm2_pci config=" num_encoders=0 num_pwmgens=0 num_stepgens=5" #setp hm2_5i25.0.watchdog.timeout_ns 10000000 loadrt pid names=pid.x,pid.y,pid.z,pid.a,pid.s ## ====> inserted here loadrt hal_parport cfg="0x378 out" loadrt charge_pump net charge-pump <= charge-pump.out addf parport.0.write base-thread addf charge-pump base-thread net charge-pump => parport.0.pin-16-out ### addf hm2_5i25.0.read servo-thread addf motion-command-handler servo-thread addf motion-controller servo-thread addf pid.x.do-pid-calcs servo-thread addf pid.y.do-pid-calcs servo-thread addf pid.z.do-pid-calcs servo-thread addf pid.a.do-pid-calcs servo-thread addf pid.s.do-pid-calcs servo-thread addf hm2_5i25.0.write servo-thread

Once you get it running, it is down to you what solution you use for the charge_pump enable, stick with that and tidy up the cables or go for one generated from the 5i25

I have not tried running a base-thread with rtai and a 5i25, but do it all the time with rt-preempt and 5i25, because the cache effect of running a fast base-thread actually lowers the latency on the servo-thread.

regards

Please Log in to join the conversation.

More
10 years 9 months ago #68768 by andypugh
You forgot to add the parport write to the servo thread.

But if there is only a servo thread then there is no point using the parport, the charge_pump can just connect to the relevant 5i25 GPIO pin.

Please Log in to join the conversation.

More
10 years 9 months ago #68770 by ArcEye

andypugh wrote: You forgot to add the parport write to the servo thread.

But if there is only a servo thread then there is no point using the parport, the charge_pump can just connect to the relevant 5i25 GPIO pin.


Yes first draft, have amended now. :cheer:

My idea was solely to use the resources already available, because it already worked with a charge_pump component and then move to a more optimum solution once proved to work

I don't know if a charge_pump running on a servo thread would work.

Please Log in to join the conversation.

More
10 years 9 months ago #68773 by andypugh

ArcEye wrote: My idea was solely to use the resources already available, because it already worked with a charge_pump component and then move to a more optimum solution once proved to work
I don't know if a charge_pump running on a servo thread would work.


If a 500Hz charge-pump will work then a software one generated in HAL is possibly better than a hardware one generated in the FPGA. It provides an extra layer of confidence that everything is OK.

Please Log in to join the conversation.

More
10 years 9 months ago #68774 by Ozcnc
Hm,
I wasn't initially wanting to go parallel to pin 16 and the others from 5i25, but if it works I'll do it.

Servo thread should be worth a try.
I like the challenge, just don't have enough knowledge yet.

I will only be able to do this on the weekend but I will report back.

Oz

Please Log in to join the conversation.

More
10 years 9 months ago #68781 by Todd Zuercher
I'm pretty sure that you can drive GPIO pins on the 5i25 with software exactly the same way as you would pins on a parallel port.

Please Log in to join the conversation.

More
10 years 9 months ago #68800 by ArcEye
I have finally found a manual for what I believe is your controller, my previous searches kept coming up with gantry router machines not controllers

pdf.directindustry.com/pdf/cnc-step-ek-3...ts/64456-626911.html

I think the problem is that you are connecting the 5i25 direct to the DB25 plug on the controller as if it was a parallel port.

Because your controller is an 'all in one', 'our way or the highway' type, there is no BOB and no flexibility.

If you can confirm that is the controller, we will be able to get somewhere.

The simplest solution that springs to mind is to get a 7i76, connect it to the 5i25.
Then cut a DB25 parallel port cable in half, expose the wires and connect up to your controller using that wired into the 7i76.

There will be other solutions, including possibly a bit file similar to the G540 one I think exists.

regards

Please Log in to join the conversation.

More
10 years 9 months ago #68802 by Ozcnc
Hi,

Yes, this is the controller.

If I could use a 7i85 or 7i85s that would be my first choice as I want to add 3 encoders and 1 MPG.

oz

Please Log in to join the conversation.

Time to create page: 1.416 seconds
Powered by Kunena Forum