KStep Axis issue

Moderators: TomKerekes, dynomotion

Post Reply
jerryn
Posts: 6
Joined: Tue Mar 21, 2023 4:02 pm

KStep Axis issue

Post by jerryn » Thu Apr 13, 2023 10:55 am

New KFlop and KStep. Using supplied KStep 4 Axis programmed supplied in the download, all 4 axis motors work independently with no issues. Using supplied KStep 3Axis with slave Axis, slave Axis does not work. Channel 1 is slaved to Channel 0. Using Step Response to move Channel 0 will move motor. Using Step Response to move Channel 1 moves the same motor, not the slaved motor. Downloaded the KStep 4 Axis and 3 Axis with slave again to make sure I was not missing anything, got the same results. Before this issue, my C Program was running my motors with no problem, than I Channel 0 Axis failed. So I replaced the KStep board with a spare and still had a problem. So I ordered a new Kflop board and my program would not work to drive the slave axis. This is when I loaded in the canned KStep 4 Axis and 3 Axis slaved to troubleshoot. I have no idea what is wrong. BTW, each time I made a change, I shut down all power to the system and restarted.

User avatar
TomKerekes
Posts: 2676
Joined: Mon Dec 04, 2017 1:49 am

Re: KStep Axis issue

Post by TomKerekes » Thu Apr 13, 2023 12:34 pm

Hi Jerry,. S

Please post your C Initialization file. Make sure your screen parameters are synced with the Initialization file. You might read this.
Regards,

Tom Kerekes
Dynomotion, Inc.

jerryn
Posts: 6
Joined: Tue Mar 21, 2023 4:02 pm

Re: KStep Axis issue

Post by jerryn » Thu Apr 13, 2023 10:02 pm

Tom,
Thanks for your assistance. Please see attached files.

Thanks,
Jerry
Attachments
InitKStep4Axis.c
(5.77 KiB) Downloaded 85 times
InitKStep3AxisSlave.c
(5.23 KiB) Downloaded 84 times

User avatar
TomKerekes
Posts: 2676
Joined: Mon Dec 04, 2017 1:49 am

Re: KStep Axis issue

Post by TomKerekes » Thu Apr 13, 2023 11:25 pm

Hi Jerry,

Which file are you using? What are the results? How many axes do you have?

Did you read the link?
Regards,

Tom Kerekes
Dynomotion, Inc.

jerryn
Posts: 6
Joined: Tue Mar 21, 2023 4:02 pm

Re: KStep Axis issue

Post by jerryn » Thu Apr 13, 2023 11:58 pm

Tom,

Here is my program that I was using before my KStep CH0 quit working. I replaced the KStep board with no success with getting CH0 to work, so I replaced the KFlop board too. Now I am running again with your KStep 4 axis program but not my program nor your KStep 3 axis slave. Before I had KStep CH0 failure, I was running all motors on my program. The two programs I sent you were the ones I used to test with. The attached program is the one I have a problem with (along with the KStep 3 axis and slave I attached earlier).

Here are the problems I am experiencing with my program. Step response will run the same motor on whether set to CH0 or CH1 (just different steps since both CH0 and CH1 are set to different steps.).

My program is running 3 axis with CH1 slaved to CH0. I can use my MPG to run Y and Z axis but cannot get the MPG to run X and X slave.

I did read the document.

Thanks for your assistance.

Jerry
Attachments
Kmotion_Int_File _4.2.2023.c
(24.36 KiB) Downloaded 106 times

User avatar
TomKerekes
Posts: 2676
Joined: Mon Dec 04, 2017 1:49 am

Re: KStep Axis issue

Post by TomKerekes » Mon Apr 17, 2023 6:59 pm

Hi Jerry,

Sorry for the late response.

It still isn't clear if the screens are synchronized with the C Program values. The Step Response Move button sets the screen values to KFLOP. If those are incorrect then of course things won't work properly. You can import the C Program to the Screen to make sure they are the same. Please respond in a way that is clear you understand this.

I don't see anything wrong in the C Program.
Step response will run the same motor on whether set to CH0 or CH1
I think that indicates your CH0 axis is not working. Since CH1 is slaved to CH0 moving CH0 should move both axes. You only see CH1 move so CH0 doesn't seem to be working. Moving CH1 (which you really shouldn't do when it is slaved to CH0) will move it only.

Maybe you have a bad motor, or wiring, or maybe the connector is bad. Does CH0 motor have holding torque?

With power off, try switching the motor connectors between CH0 and CH1. What happens then?
just different steps since both CH0 and CH1 are set to different steps
I don't understand what you are referring to? The size of Move?
Regards,

Tom Kerekes
Dynomotion, Inc.

jerryn
Posts: 6
Joined: Tue Mar 21, 2023 4:02 pm

Re: KStep Axis issue

Post by jerryn » Tue Apr 18, 2023 4:32 pm

I was trying to look at this from an aerial view, keeping in mind that I had a working system that suddenly quit. I should have been more specific.

It still isn't clear if the screens are synchronized with the C Program values. The Step Response Move button sets the screen values to KFLOP. If those are incorrect then of course things won't work properly. You can import the C Program to the Screen to make sure they are the same. Please respond in a way that is clear you understand this. I did import the C Program to the Screen to make sure they were the same.

I think that indicates your CH0 axis is not working. Since CH1 is slaved to CH0 moving CH0 should move both axes. You only see CH1 move so CH0 doesn't seem to be working. Moving CH1 (which you really shouldn't do when it is slaved to CH0) will move it only. I verified CH0 was functional by using a separate program where CH1 was not slaved to CH0.

Maybe you have a bad motor, or wiring, or maybe the connector is bad. Does CH0 motor have holding torque? Did not hold torque when in my init program but using a separate KStep 4 Axis program it held torque and CH0 and CH1 worked independently. Not a hardware issue.

I don't understand what you are referring to? The size of Move? Size of move, this way I could differentiate between channels in Step Response.

I uninstalled KMotion and reinstalled with multiple versions with no success. Next, I reinstalled Windows 10 Pro and KMotion and using the exact same ini C program, everything now works fine. Keep in mind after my last try and failure, I did not touch any of the hardware, wiring, connections or cable. I opened the same ini C program that failed before. I went from a machine just suddenly stop working to a machine working again with the only change that worked was reinstalling Windows 10 Pro. I do not get why. Thanks for your time.

User avatar
TomKerekes
Posts: 2676
Joined: Mon Dec 04, 2017 1:49 am

Re: KStep Axis issue

Post by TomKerekes » Tue Apr 18, 2023 11:55 pm

Hi Jerry,

Strange.

I agree your tests show the hardware was working.

Of course re-installing should make no difference unless something was set differently.
Did not hold torque when in my init program
I think this might be a big clue. If DRIVEENABLE (bit 45) is set high the motors should have holding torque regardless of everything else. So if you run your Init program and the motors don't have holding torque then you might check the Digital IO screen and check bit 45. It seems bit 45 must have been off for some reason.

With this information I see the ESTOP code affects bit 45. And it looks odd and suspicious to me.

Code: Select all

		// Handle ESTOP Button
		result = Debounce(ReadBit(ESTOP),&estopcount,&estoplast,&estoplastsolid);
		if  (result == 0)
		{
			
			SetBit(DRIVEENABLE);
			WaitNextTimeSlice();
			if (ch0->Enable) DisableAxis(0);  // axis still enabled?  - Disable it
			if (ch1->Enable) DisableAxis(1);  // axis still enabled?  - Disable it
			if (ch2->Enable) DisableAxis(2);  // axis still enabled?  - Disable it
			if (ch3->Enable) DisableAxis(3);  // axis still enabled?  - Disable it
			if (ch4->Enable) DisableAxis(4);  // axis still enabled?  - Disable it
			
			DoPC(PC_COMM_ESTOP);
		}
		if  (result == 1)
		{
			ClearBit(DRIVEENABLE);
			WaitNextTimeSlice();
		}
It seems ESTOP Logic 0 is considered the ESTOP condition where the Axes are disabled, KMotionCNC is commanded EStop, but then KStep is enabled?

And if EStop transitions to Logic 1, out from EStop, the Drives are then Disabled

Isn't this backwards?

It's not clear to me how this ever works at all. I would think running your Init program would enable KStep, but then after a debounce time of ESTOP KStep would be disabled.

Does any of this make sense to you?
Regards,

Tom Kerekes
Dynomotion, Inc.

Post Reply