Replacing Advanced Motion Controls "brush type 12A8 with "Axcent" amplifier

More
10 Nov 2020 19:49 - 10 Nov 2020 19:51 #188907 by Todd Zuercher
When you first power up your machine, the drive should be disabled. (the motors should turn freely by hand and create no movement on their own.) At this time pin #9 on the AB15A100 should not be pulled to ground. (Assuming SW1-5 OFF)

When you first start Linuxcnc they should still be disabled.

When you take Linuxcnc out of E-stop, (press F1), motors should still be disabled

When you press the Machine ON button (press F2), now the drive should become enabled (pin #9 on the AB15A100 should now be pulled to ground) motors should now be powered, and may run away or do something, or maybe not do anything. But there should probably be some resistance to turning them by hand. If this isn't the case then you need to fix what's going on with your drive enable signal.

At all times when Linuxcnc is running the DROs should be tracking the position of the motors.

Once all of the above are true, at this point you will be ready to start trying to tune the servo, which may include having to reverse the direction of the encoder feedback either to the drive, Linuxcnc or both.
Last edit: 10 Nov 2020 19:51 by Todd Zuercher.
The following user(s) said Thank You: new2linux

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

More
10 Nov 2020 20:18 #188909 by Todd Zuercher
When Linuxcnc is running with machine off (F2 not pressed),
the Hal pin "hm2_5i25.0.7i77.0.1.analogena" should be false.
When the machine is on (F2 pressed), then "hm2_5i25.0.7i77.0.1.analogena" should be true.

When "hm2_5i25.0.7i77.0.1.analogena" is false, the drive enable pin (7i77 TB5, pin2 to pin1) should be open (no connection). When "hm2_5i25.0.7i77.0.1.analogena" is true connecting a positive voltage on pin2 should pass through to pin1. If pin2 to pin1 is either always open or (more likely) always closed, then you have damaged that enable chip, probably by connecting a positive voltage to pin1 relative to pin2.
The following user(s) said Thank You: new2linux

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

More
10 Nov 2020 20:36 #188911 by new2linux
Todd, Many, many thanks! I have set SW1-5 OFF, only (SW-1-6 is on). When first powered up machine and release e-stop. The motors turn freely by hand and create no movement on their own. DRO works, (F1 still down); press F1 (up now)- no change, DRO works; Press F2 motor may move or oscillate, if apply hand pressure to stop motion of motor and Joint following error will appear.

I have read your next reply and will work that in the morning.

As per Todd's 2nd post: " If pin2 to pin1 is either always open or (more likely) always closed, then you have damaged that enable chip, probably by connecting a positive voltage to pin1 relative to pin2."

This is a new 7i77 card, unless I am not following completely or worse.

many thanks

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

More
10 Nov 2020 20:51 #188913 by new2linux
Todd, many thanks. I tracked the address you provided, included in the "show", found the brown/red circle changed as per your suggestion to yellow in the Hal configuration tab.

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

More
11 Nov 2020 02:55 #188951 by Todd Zuercher
From your last description it sounds like the enable is working correctly. Now you need to work on confirming the correct encoder feedback direction for the drive, tune the drive, and then tune the pid loop in linuxcnc.
The following user(s) said Thank You: new2linux

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

More
11 Nov 2020 13:19 - 11 Nov 2020 20:51 #188989 by new2linux
Todd, Many thanks! The direction of DRO is from operator's POV is the x axis DRO is positive when table moves to the left, and y axis DRO is positive when table moves closer/toward the operator (the operator in out in front of machine). From machine POV table is moving positive DRO when its going away from column of mill in y axis, and table moving to right for the x axis. I believe this is correct. Currently red LEDs are ON when the drives are powered up, looks to be blinking ever so slightly. I tried to adj POT (on x axis only) starting full CCW, did not help with oscillating, started with full CCW, oscillating when powered up, but only after F2 is down, will display "joint following error" if allowed to run.

Many thanks!

I removed leads from TB3 2 (/QAO) & 5 (/QBO) & (7 & 8 nothing was there anyway), because the encoder end had nothing hooked up on that end & the ground (at encoder) was the cable shield.
Last edit: 11 Nov 2020 20:51 by new2linux. Reason: Question:

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

More
12 Nov 2020 18:20 - 12 Nov 2020 18:26 #189140 by new2linux
To all the forum members & moderators, Many, many thanks for the opportunity to learn and all of the continued support. I have been in contact with A-M-C's Engineers (the best support ever) and was asked to test the drive with the following settings.

Here is a very simple test you can do to make sure the drives are working okay.
First of all, disconnect everything from the drive. For this test all you need is power and ground connected to P2 to start.

Start with the drive powered off, the LED should not be on, then follow these steps:
1) Set the switches as follows SW1-1 ON, SW1-2 OFF, SW1-3 OFF, SW1-4 ON, SW1-5 ON, SW1-6 ON.
2) Turn potentiometer #4 clockwise 14 turns. Then turn it back counter clockwise 7 turns to make sure it's in the middle of its adjustment range.
3) Power up the drive and verify that the LED is green. If the LED is green, continue. If the LED is red, double check that SW1-2 is OFF and if it's still red, let me know.
4) Power down the drive, once again the LED should be off.
5) Connect the motor leads to MA and MB.
6) Power on the drive and make sure the LED is still green.
7) Start to adjust potentiometer 4 in either direction. As you do this, the motor should start to move. Turn the potentiometer the other way to make sure it moves in both directions and that the LED stays green the entire time.

It was good news that all is good with the drives. I have tested each lead from the TB3 to each encoder plug at the encoder to insure the lead is going where its suppose to be going. Now if the linux mint is running and e-stop is released and linuxcnc is started to run F1 is down, both DRO works correctly, including direction; F1 up now, worked just as before, both DRO works correctly, including direction; click F2 (is down) x axis motor oscillates until "joint 1 following error" appears, the DRO work. If you click F2 again. immediately motor oscillates again.

I will attach the current debug file pic, the .ini & .hal that I am working with.

Many thanks!

Edit: Current settings per A-M-C are as follows:
Just to be clear, to reset the drives for encoder velocity mode and to work with the inhibit/enable signal, set the switches as follows:

SW1-1 OFF
SW1-2 OFF
SW1-3 OFF
SW1-4 OFF
SW1-5 OFF
SW1-6 ON**

Also, set Potentiometer 4 back to the middle of the adjustment range. This means going 14 turns in one direction and then going back 7 turns in the opposite direction

**SW1-6 sets the velocity feedback polarity. Once you have the motors running you might need to switch this to the OFF position if you have a runaway condition.

Many thanks
Attachments:
Last edit: 12 Nov 2020 18:26 by new2linux. Reason: spelling & current settings

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

More
12 Nov 2020 19:23 #189144 by Todd Zuercher
You now need to follow the steps for tuning the PID loop in Linuxcnc. The X-axis oscillates and shuts down because you have a un-tuned values for your PID for the x-axis. Sart with a very low value for P and gradually increase it until you begin to see instability, then reduce it by 10% or until the oscillation stops. Look up and follow one of the tuning tutorials out there. (This is a decent one gnipsel.com/linuxcnc/tuning/servo.html )
The following user(s) said Thank You: new2linux

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

More
13 Nov 2020 16:30 #189219 by new2linux
Todd, Many thanks! While tuning I see there are different pins as the source of the signals displayed on Hal oscilloscope. There are the ones shown in the link to JT's servo tuning guide, does not have "hm2_5i25.0.encoder.00.velocity" or "pid.x.output". While tuning the drives the red LED is on (steady, both drives), as soon as F2 is down the red led goes to green until F2 is clicked again or joint following error appears. The tuning requires the motor to have the actual load applied (the belt is on). So far (by no means complete) it appears that with the feed set at 7"/min the P=.849 & FF1=.0255 & FF2=.00425, has good resistance to turning even at the low value. If P start at 2000, will oscillate (I started at 2000, went higher, at first) then all the way down. Use the reference on JTs of the values of FF1 & ("FF2 about 0.005% of P") and "FF1about 0.03% of P". My concern is the red LED and what pins to monitor?

many thanks

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

More
13 Nov 2020 17:26 #189225 by Todd Zuercher
To make his tutorial more generic JT didn't use hardware specific pins in his examples. (Not everyone uses a Mesa card for their machine connection.)

If you post some screen shots of Halscope for a short move, we might be able to make tuning suggestions.

While tuning it is often helpful to temporarily set the following error limits (both min and max) to larger values in the ini file. But not so large they won't stop a runaway. Something like an inch or a couple cm. Once you are finished tuning don't forget to reset the f-error limits to sane values.
The following user(s) said Thank You: new2linux

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

Moderators: piasdom
Time to create page: 0.123 seconds
Powered by Kunena Forum