Wednesday, 3 June 2026

Cover plate for GA500 VFD

Having mounted the keypad for the GA500 on the outside of the control cabinet for the CNC Bantam, I'm left with a hole in the cover of the main VFD. This isn't ideal, leaving the control circuitry exposed (albeit within an enclosure) and at the very least looks pretty crap.


But all is not lost. Yaskawa make the CAD models available for all their drives and related accessories, so it's a fairly simply matter of downloading the step file and printing it out:


This I did, directly from the STP file download into the Orca slicer. 


Looks nice, if you can ignore those ripples on the front face.


But there's a catch. That was the first time I've printed a part directly from a downloaded STP file. However, it turns out that it's actually an assembly of 3 components, including 2 covers - one for the USB cable and the other for the RJ45 cable (to the remote operator). 

Trying to remove the 2 covers doesn't end well. I got one off but the other is truly "as one" with the main body.


And when you look at the assembly, it's clear that they actually intersect. Or to put it another way, they are well and truly fused together. Damn. I should have imported them into Fusion to check them first. 


So, simple solution - hide the 2 covers and re-export the cover.

That worked out ok in the end. In another stroke of luck, I found a baby short ethernet cable (25cm or so) that was just perfect for the remote operator.

Final touch - I replaced the phase and ground cables from the VFD to the 16A receptable. They aren't screened but at least they won't burst into flame if subjected to the rated 15A phase current. I probably won't ever do the full 4kW but for low speed high torque conditions (eg tapping?), I may need to generate some high currents. Just visible in the last photo.

Wiring up the Yaskawa GA50 - mounting the remote operator on the cabinet

I need to remove the original Xtravert VFD remote operator keypad from the cabinet and replace it with the Yaskawa one. Like the Xtravert panel, the Yaskawa one simply unclips from the front of the main VFD and can be mounted on the outside of the cabinet where it can report parameters such as the output frequency, current, power etc.

Unfortunately, although they provide 3D CAD models for most of their drives and accessories, the Remote Keypad Mounting Kit for GA500 ZPBA-GA500 isn't included. They suggest that as this is a simple part, you could easily make it yourself from the 2D PDF drawings provided. 


This is what it looks like:


Hmm. Not a lot of use. However, all is not lost. I downloaded the relevant CAD assembly (STP file) from Yaskawa website It was then "just" a matter of perhaps 2 hours buggering about in Fusion to isolate just the main cover, then chop off the majority of the features, then tidy it up.

This is the complete assembly:


It's surprisingy complete, although clearly doesn't include PCBAs, caps etc.


This is the remote operator bit. I want to create a part that mates with and accommodates it:







And this is what I ended up with. All the mating edges, clips, supports etc are inherited. They would have taken me days to replicate.



Turned out OK:





Now that I seem to have got that working, the final step is to create a mounting flange. As well as providing some additional mechanical support, it also covers the nasty screw holes that were inherited from the original Xtravert keypad.


Printed it out:

Looks good to me.


I need to open up the previous cable hole so that I can get the RJ45 connector through - without showering the VFD and other electronics with steel swarf.


Deburr and fit, then vacuum up the swarf:


Looks almost workmanlike. This is what you will see when looking down on the cabinet when it is finally fastened to the end of the lathe:


That will do for now.

Sunday, 31 May 2026

Setting up the GA500 parameters using the Drivewizard app

Now that the GA500 VFD is installed and wired up, it's time to configure it. Previously I used the Windows / USB version of the Yaskawa Drivewizard to set up a couple of GA500s on the Tree CNC lathe. I recall trying to use the Android app over USB but failing to get a connection. This time I seem to have had better luck. Presumably the intern software engineers fiddled with it in the interim and got it working.

Here's what you get upon connection. 

Usefully, you don't need to power up the main drive from mains to talk to it, as the high level controller resides in the user panel, rather than the low level DSP / FPGA. Simply plugging in your USB host gets it talking.

Speaking of which - why have they persisted with Mini USB, when we have moved from Mini to Micro to USB C? Luckily, against all odds, I found a suitable data cable with Mini USB at one end and USB C at the other - what were the chances of that? Of course, they offer a Bluetooth interface as an alternative but for that you need to cough up over £100 for the Bluetooth Remote Operator (= user keypad), which I won't be doing any time soon.

The signal wiring is done. Not tidied up yet but let's get it working before getting too clever on that front. 


The monitor page shows headline values and VFD status:


You can dive into the parameters and change settings live - but not while the output is enabled of course.


Set up for 2-wire operation using inputs S1 & S2.


The configurable (relay) outputs will show fault and spindle-at-speed status:


Motor parameters:


You can show which parameters have changed from the default:



I also ran the auto tuning and KEB tuning (aka regen braking). These sort of optimise the transient and accel / decel parameters to some degree.

Linuxcnc spindle control:

The actual spindle speed didn't correlate well with the commanded speed. I can see the actual speed displayed in the GUI. This comes from the spindle encoder, so is a good measure of what's actually happening.

You need to set the scale factor and speed range in the .ini file to correspond to the gearing in the machine and the frequency range specified in the VFD. So, with 0-80Hz configured and a 4-pole motor, I can achieve around 2400rpm at the motor which is ~1280rpm at the spindle. Ideally this would have been a 4-pole motor (3000rpm instead of 1500rpm) but this is all I've got to hand. On the upside it's a 5.5kW motor, so even at reduced torque above base speed, it should hopefully be of some use. Generally, when running at high speeds, you tend to be using less power anyway.

Accounting for the gear ratio (1000rpm at the spindle with the motor at 40Hz /1200 rpm at motor) and a max VFD frequency set to 80Hz, I should get a "scale factor" just over 2000 around 1200. Something like that.

Actual values (accounting for actual gear ratios etc):

MAX_OUTPUT = 1600
ENCODER_SCALE = 2400
OUTPUT_SCALE = 2100
OUTPUT_MIN_LIMIT = 0
OUTPUT_MAX_LIMIT = 1600

This gives a max spindle speed of 1600rpm and a good correlation between set speed and actual - without any closed loop action.


Slight issue noticed now - the door won't close due to the 12V MeanWell PSU clashing with the (taller) Yaskawa VFD. Simple to fix, though - I no longer needed it (it was used to power the original ASrock mini-ITX PC), so was able to remove it and it's job done.

Thursday, 28 May 2026

Swap out VFD on the LinuxCNC Bantam - Xtravert to Yaskawa

Just when it was looking as if I'd almost finished messing with this machine, I've decided to go a step further. 

This machine has always had a problem with the spindle speed being very noisy. I took a short video of it a couple of weeks ago before making some attempts to fix it:


As you can see on the pocket scope, there are some pretty energetic noise bursts going on there which are being picked up by the analogue control voltage (0-10V) input. Or perhaps they are being generated ironically by a common mode voltage across the barrier within the VFD. Either way, the fitting of a lossy (ie Chinesium) electrolytic cap across the analogue voltage input, multiple ferrite clamps and grounding the analogue island make absolutely sod all difference. 

This current VFD is an ancient Xtravert brand that I inherited about 25 years ago and have used on a couple of machines during that time. One of its USPs is the fact that it is a single phase 230V input - but rated at 5.5kW. Generally, you are lucky to find anything much above 3kW for that voltage input, as you are expected to move to 3-phase above that.

I like to use "proper" industrial VFDs where possible, as they are not only more robust and simpler to use but they also come with EMC filters, either in-built or with a piggy back filter box that you mount the VFD on top of.

Despite expectations to the contrary, Yaskawa VFDs are not much more expensive than their Chinesium copycat cousins. The current model range is the G500, which supersedes the V1000 family. And interestingly, they do a 4kW version in 230V input - Yaskawa GA500 - GA50CB018ABA.


It's the same family I used on the Tree lathe. The Bridgeport and Shizuoka used the previous generation aka V1000.

Furthermore to the power rating, the price is pretty snappy, at £293 plus vat and delivery. That price includes a Schaffner EMC filter, which will presumably help to achieve something near to Class A (ie industrial) conducted RFI compliance. That's not necessary of course but it's all part of getting a system that behaves itself and doesn't upset the neighbours. By the time we add VAT and carriage, it comes in at £370.73

Yes, I could get a Chinesium thing for almost exactly half that price, plus EMC filter but that's not how I want to end my days.

Before it arrives - and before disconnecting the Xtravert, let's note the connections. Here are the control inputs:


And conveniently, there's a connection diagram on the back of the terminal cover:

So the connections appear to be as follows:

  1. Blank - NO contact, RLY1 (unused)
  2. Yellow jumper - COM contact, RLY1 connected to T4 (signal GND?)
  3. Blue - NC contact, RLY1
  4. Orange - NO contact, RLY2
  5. Green - NO contact, RLY2
  6. Brown - MFI1
  7. Black - MFI2
  8. +24V MFI3 (held high)
  9. +24V MFI4 (held high)
  10. +24V Ext. trip (held high)
  11. +24V supply for inputs
  12. GND
  13. +10V (expecting a 1k pot) - Speed
  14. 0-10V Analogue input 1 - Speed
  15. GND - Speed
  16. Analogue input 2 (unused)
  17. GND
  18. Analogue output (unused)

The bold connections are the only ones that seem to be doing anything.

What are the relays used for? Presumably Spindle At Speed and/or VFD Fault. What functions do MFI3 and MFI4 do? Presumably FWD/REV and STOP/START. Let's find out....





Here's how the multifunction inputs are set up:

So:

  • MFI1 (T6, Brown) is STR/STP. Pull up to +24V to enable output.
  • MFI2 (T7, Black) is INV DIRN. Pull up to +24V to enable reverse direction.
  • O/P relay 1 = 02; Energised = No fault. This is NC to GND ie defaults to FAULT when off.
  • O/P relay 2 = 12; Energised when spindle at speed +/-0.5Hz. NO. Closes to GND when at speed. 

Now that's reasonably clear, let's see if Claude or his Google mate can tell me which terminals and parameters I need to set. I want the same "2-wire with direction and analogue control" scheme as before, to avoid changing anything for no reason. Here's its response:

In the industrial automation industry, using one wire to start/stop and another wire to control direction is known as 2-Wire Control (Sequence 2).
To clarify how this works with just two switches and your analog speed signal, here are the parameters and exact operations:
1. Parameters to Set
  • b1-01 (Speed Source): Set to 1 (Analog Input A1 for your 0-10V signal).
  • b1-02 (Run Source): Set to 1 (Digital Input Terminals).
  • H1-01 (Input S1 Function): Set to 40 (Forward Run / Stop).
  • H1-02 (Input S2 Function): Set to 41 (Reverse Run / Stop).
  • H3-01 (A1 Signal Type): Set to 0 (0 to 10 Vdc).
2. How the Two Wires Control the Drive
  • Wire 1 (Terminal S1) = Start / Stop:
    • Turn this switch ON to start the motor.
    • Turn this switch OFF to stop the motor.
  • Wire 2 (Terminal S2) = Direction:
    • Leave this switch OFF for Forward rotation.
    • Turn this switch ON for Reverse rotation.
(Note: The Start/Stop switch on S1 must be turned ON for the motor to run in either direction. If S1 is ON and you flip S2, the motor will safely ramp down, change direction, and ramp back up).
3. Wiring Diagram
text
  [ GA500 Control Terminals ]
   +-----+---------------------------------------------+

   |  SN | --- (Common for Digital Inputs)             |
   +-----+      |                 |                    |

   |  S1 | --- [ Start/Stop Switch ] ------------------+  <-- Wire 1
   +-----+

   |  S2 | --- [ Forward/Reverse Switch ] -------------+  <-- Wire 2
   +-----+

   |  A1 | --- Analog Positive (+) 0-10V Signal
   +-----+

   |  AC | --- Analog Common (-) / Shield
   +-----+

Obvs I also need to set up the motor nameplate parameters, max frequency, number of poles etc. And I should use the relay outputs to communicate FAULT and "spindle at speed" status.

I want to use the output relays to indicate "inverter fault" and "motor at speed".
To configure the GA500 output relays for "Fault" and "Speed Agree" (motor at speed), you will use the physical relay terminals MA/MB/MC (Output 1) and M1/M2 (Output 2).
1. Parameters to Set
Set the following parameters to assign the correct functions to the relay outputs:
  • H2-01 (Terminal MA/MB/MC Function): Set to E (Fault).
    • By default, this relay is energized when power is on and no fault exists, making it a "fail-safe" loop.
  • H2-02 (Terminal M1/M2 Function): Set to 2 (Speed Agree).
    • This relay closes its contacts when the actual motor speed matches your analog 0–10V reference signal.
2. Output Relay Wiring Diagram
text
       [ GA500 Relay Terminals ]
      +----+

      | MA | --- [ Normally Open (NO) Contact ]   --> Closes during a FAULT
      +----+

      | MB | --- [ Normally Closed (NC) Contact ] --> Opens during a FAULT
      +----+

      | MC | --- [ Common (C) for Fault Relay ]
      +----+
      
      +----+

      | M1 | --- [ Relay Contact Terminal 1 ]     --> Closes when MOTOR IS AT SPEED
      +----+

      | M2 | --- [ Relay Contact Terminal 2 ]
      +----+
3. Understanding the Contact Behavior
  • Fault Relay (MA/MB/MC): Because parameter E operates as fail-safe logic, MA-MC is closed during normal operation and opens when a fault occurs or when the drive loses power. If you want the contact to close only when a fault occurs, use the MB-MC contacts instead.
  • Speed Agree Relay (M1/M2): The M1-M2 contacts are normally open. They will automatically click shut once the motor ramps up and successfully reaches the speed requested by your 0–10V analog voltage.


Would you like to adjust the Speed Agree Detection Width (L4-02) to change how close to the target speed the motor needs to be before the relay trips, or do you need help setting up automatic fault restarting?
 Yes
1. Speed Agree Detection Width (L4-02)
By default, the "Speed Agree" relay (M1/M2) only closes when the motor is within 2.0 Hz of your target 0–10V speed command. If your analog signal fluctuates or you want the relay to trigger earlier during the ramp-up, you can change this window.
  • Parameter L4-02 (Speed Agree Detection Width): Adjust this value (Default: 2.0 Hz, Range: 0.0 to 20.0 Hz).
  • Example: Setting L4-02 = 5.0 means the relay will close as soon as the motor comes within 5 Hz of your target speed.
2. Automatic Fault Restart (L5 Group)
If the drive trips on a minor nuisance fault (like a temporary overvoltage or overcurrent from a sudden load spike), you can configure the GA500 to automatically reset the fault and restart the motor without human intervention.
  • L5-01 (Number of Restart Attempts): Set the maximum number of times the drive can try to reset itself (Default: 0 [Disabled], Range: 0 to 10). Setting this to 3 or 5 is common.
  • L5-02 (Auto-Restart Allowed Faults): Set to 0 (Default) to only restart on minor faults like overcurrent and overvoltage. Set to 1 to include a wider range of faults.
  • L5-05 (Fault Reset Wait Time): Set how many seconds the drive waits after a fault occurs before it clears it and restarts the motor (Default: 10.0 seconds).
I want to use current injection braking, as I don't have a braking resistor
To stop your motor quickly without a braking resistor, you can use DC Injection Braking at Stop. Instead of dissipating the regenerative energy into a resistor, the GA500 will inject a direct current (DC) into the motor windings when you open your Start/Stop switch, creating a powerful magnetic braking force to halt the motor.
1. Parameters to Set
Modify these parameters in the b2 (DC Injection Braking) group to enable and fine-tune your stopping force:
  • b1-03 (Stopping Method Selection): Set to 0 (Ramp to Stop). The drive must ramp down close to zero speed before the DC injection kicks in.
  • b2-01 (DC Injection Braking Start Frequency): Set to 0.5 Hz (or leave at factory default). This is the speed at which the drive stops outputting AC and starts injecting DC.
  • b2-02 (DC Injection Braking Current): Set between 50% and 100% (Factory default is 50%). This determines the braking strength.
    • Note: Higher percentages provide more stopping power but generate heat in the motor.
  • b2-04 (DC Injection Braking Time at Stop): Set the duration of the braking force in seconds (e.g., 1.0 to 2.0 s). Increase this if the motor is still drifting or coasting after the braking cycle ends.
2. Fine-Tuning the Braking Force
If your load has high inertia and the motor takes too long to stop, adjust the parameters in this specific order:
  1. First, decrease your deceleration time (C1-02) as low as possible without triggering an ov (Overvoltage) fault on the drive keypad.
  2. If the motor still coasts at the very end of the ramp, increase the braking time (b2-04) to keep the brake applied longer.
  3. If the motor does not stop fast enough during that final moment, increase the braking current (b2-02) in small 5% increments.
⚠ Important Motor Thermal Warning
DC Injection Braking causes rapid heat buildup inside the motor because the energy is dissipated directly through the motor windings rather than an external resistor. Do not use high current percentages (b2-02 > 100%) or long braking times (b2-04 > 5.0 s) if the motor starts and stops frequently.


Would you like to know how to configure Overvoltage Suppression (L3-04) to help prevent the drive from tripping while it ramps down, or do you need assistance checking the motor temperature or drive load monitors on the keypad?
 Yes
To manage deceleration without a braking resistor and check your system diagnostics, use the L3 (Stall Prevention) parameters and the U (Monitor) menus. [1]
1. Overvoltage Suppression (Stall Prevention during Decel) [1]
When braking without a resistor, a fast deceleration ramp can cause regeneration that spikes the drive's internal DC bus voltage, causing an ov (Overvoltage) fault. You can enable Stall Prevention to make the drive automatically manage this. [1, 2]
  • L3-04 (Stall Prevention during Deceleration): Set to 1 (General-Purpose Stall Prevention - Default) or 2 (Intelligent Deceleration).
    • How it works: If you set L3-04 = 1, the GA500 will pause or stretch out your deceleration time (C1-02) automatically if it senses the DC bus voltage getting dangerously high. It resumes slowing down once the internal voltage stabilizes.
    • Alternative (L3-04 = 2): This lets the drive dynamically calculate the absolute fastest safe deceleration rate based on the current load inertia without tripping. [1]
I want to display the % of max load or phase current that the motor is taking.
To display the percentage of motor load or the exact output phase current, you can look at the live monitors in the U1 (Operation Monitors) group on the drive keypad.
You can also customize the drive's home screen so that one of these values is permanently displayed.
1. Which Monitors to Look For
Navigate to the U1 menu to view these specific parameters:
  • U1-03 (Output Current): Displays the actual, live motor phase current in Amperes (A).
  • U1-09 (Torque Reference): Displays the estimated motor load as a percentage (%) of the motor's rated torque/load.
  • U1-14 (Motor Utilization): Displays the motor load as a percentage (%) of the drive's rated output current.
2. How to Read Them on the Keypad
  1. Press the Home or Menu key until you see Mon (Monitor), then press Enter.
  2. Scroll to the U1 group and press Enter.
  3. Use the up and down arrows to scroll to U1-03 (for Amps) or U1-09 / U1-14 (for %).
3. Shortcut: How to Show This on the Main Screen Permanently
Instead of digging into the menus every time, you can change the default home screen parameter (o1-01) so the drive shows your motor load % or Amps automatically when it turns on.
  • To show Amps on the home screen: Set parameter o1-01 = 3 (Monitors U1-03).
  • To show Load % on the home screen: Set parameter o1-01 = 9 (Monitors U1-09).


Got that? Looks about right - but at least it shows me what parameters to look at. The full user manual is extremely comprehensive and runs to 790 pages and I can recall spending many moments rifling through it...



Cover plate for GA500 VFD

Having mounted the keypad for the GA500 on the outside of the control cabinet for the CNC Bantam, I'm left with a hole in the cover of t...