What’s taking so long (ION)?

Lately in Finland there has been plenty of rainy days good for programming and certainly lots of progress has been made! Regardless of that, there’s not much to demonstrate yet. This is beacause major code refractoring is being done when writing the firmware to ION drive. Lots of original C languace code is being ported to C++11.

Re-structuring of code is made such way that finally it should be much simpler to run multiple servo drive instances within one CPU. This means we could one day see a model that drives two or more motors on a single board. It’s not same as VSD-E’s DualDC mode with reduced capabilities – the new implementation should allow running multiple drive instances without any feature limitations.

ION development status & further plans

Just a quick update of ION servo drive development: all hardware peripherals are now programmed and functioning properly and all hardware “typos” are corrected in the schematics & PCB layout. This is important milestone as now we can preparing the first production batch of hardware even when firmware is not fully complete. Firmware development will continue on prototype while we wait hardware from fabrication.

Meanwhile, I have been pondering how to make the higher power version of ION. Some options are:

  • ION with 84 pin card edge connector (now 64 pin) and larger power stage. This can yield approx 10 A 90 VDC capability (limited by card edge connector).
  • Add external power connector to ION. This eliminates card edge connector current & voltage but might would look weird and impractical. Also fitting large power stage on the board could be difficult.
  • Get rid of card edge connector and replace all with wire terminals. This would easily give highest voltage & current rating but would not get benefit of ION motherboards, so wiring work would increase significantly. This option would look like updated VSD-E.

Which one sounds preferable to you? Leave a reply in comments :)

Something completely different – Laser diode driver!

Along motor controllers, we have been designing a laser diode driver. Laser diode driver, or LDD, is basically a current regulator that is used to drive constant or pulsed current to a semiconductor diode that emits laser light.

Intensify Nx50 laser diode driver delivers continuous current of 50 A at exceptional 95% efficiency.

Intensify Nx50 laser diode driver delivers continuous current of 50 A at exceptional 95% efficiency.

The story behind this is the fact that I have been working close to laser diode industry where I get understanding of how laser diodes are utilized and controlled, as well as expertise of precision current control from motor drives. Combining these two makes it almost trivial to make a new kind of LDD that has never seen before.

Intenisify Nx50 laser diode driver delivers up to 150 A continuous current when three boards are connected parallel by stacking

Three Nx50’s stacked forming a 0 – 150 A driver.

The product is now finished and it’s called Intensify Nx50. It has unique ability to be stacked to increase output rating. Single board outputs current between 0 – 50 A and voltage between 0.8 – 5.0 V. Two of them output 0 – 100 A / 0.8 – 5.0 V and three 0 -150 / A 0.8 – 5.0 V etc.

Funny observation from testing of 150 A driver in pulsed mode is that the thick cables tend to physically move due to magnetic force generated by flowing current. When current flows in parallel conductors in opposite directions, cables repel each other. It takes hefty amount of current to feel and see it :)

ION development progress

ION development has been very active in the last 2 weeks. Last achievements are the implementation of ADC readouts and power stage control. Both were discovered to have some schematics & layout errors, but that’s why people make prototypes.

Ion development rig as it exists today

Ion development rig as it exists today. Tiny jump wires on ION board have appeared.

After fixing the issues by PCB trace cuts and jump wires, the drive seems fully healthy. ADC readout of phase currents seems to perform well with extremely low noise and power stage seems to exceed the initial capability calculations. At the moment power stage temperature is 63 degrees Celsius while it outputs 8 A continuous current to the stepper. Some air flow is present from the fan behind the motor.

The very first ION servo drive

Good news! The very first fully assembled ION servo drive boards have arrived. I jumped straight to programming the thing. Few parts of code have been already ported from Argon and everything has worked flawlessly so far.

The very first ION board fully assembled in its creator's hand

The very first ION board fully assembled in its creator’s hand

The drive is equipped with ARM Cortex M4 processor with hardware floating point unit (FPU). I ran small test of FPU performance and found out that simple floating point arithmetic operations execute 20-30 times faster compared to non-FPU code. This means, all control code can be written with floating point math yielding ultimate precision and dynamic range without sacrificing servo bandwidth.

AC servo motor quick commissioning guide

I made an quick installation guide for the new AC servo motors to the Wiki. The site includes also pre-made drive configuration files so motors will operate straight out of the box once connections are made and file loaded to the drive. Remaining job for user is to adjust servo motor position or velocity control gain parameters because those depend on mechanical load properties and cannot be pre-configured without having the actual machine present.

All motor & power wires plugged to drive and ready to go. Installation is really fast and simple operation compared to the earlier VSD series drives.

All motor & power wires plugged to drive and ready to go. Installation is really fast and simple operation compared to the earlier VSD series drives.

 

New AC servo motors have arrived

The first batch of new servo motors are here! The stocked selection includes 400 W and 950 W rated of low inertia AC servo motors. Both models come with 2 500 PPR (10 000 counts/rev) encoders and pre-assembled 4 meter long cables that plug straight to the Argon drive saving from the hassle and chance of error.

New 400W and 950W motors. Motors come with pre-made 4 meter cables that plug straight to Argon servo drive.

New 400W and 950W motors. The new servos are notably lighter and smaller than equivalent motors from few years back. They weight approximately 1/3 less than equal power Sanyo P5’s.

Servos will will appear in the web shop during the next days. Detailed specifications of motors are already online at the Wiki. The specification PDF lists all available models from 30 W to 950 W which are available on order. All sizes are optionally available with a holding brake.

I’m excited to see the first machines running with these beasts :)

Development motherboard for ION

While first IONs are being assembled, I have been making development mother board for ION. The development board has only place for one axis drive but it has handy ways of toggling input states and monitoring outputs from LEDs or through measurement hook points.

Single axis development motherboard for Ion (work in progress)

Single axis development motherboard for Ion (work in progress)

The final design of mother boards will have more finished look, better connector placements and more axis.

I wish happy Easter weekend for all of our readers! :)

Servo drive internal construction

For those who are interested to see how servo drive internals are constructed, see the new Wiki article: Signal path of servo motor drive. The diagrams presented in the article are useful when designing systems where servo drives are part of the system.

Signal path from setpoint source (user interface) to internal setpoint (fed to actual servo control)

Signal path from setpoint source (user interface) to internal setpoint (fed to actual servo control)

Drive block diagram that applies to all GD drives starting from VSD-E

Drive block diagram that applies to all GD drives starting from VSD-E

The diagrams are also useful when designing custom code to Argon open source I/O side firmware. The I/O side microcontroller acts as provider of User setpoint as well as position and velocity feedbacks referred in the images. Rest of the illustrated logic lies inside the GraniteCore.

The new beginning!

Today the first prototype PCB’s of upcoming Ion servo drives have arrived! Ion will fill the void in the smaller drive range and will lead to cost efficient solution for sub-400 W power class. Ion exhibits 64 pin PCI-Express card edge connector (not electrically PCI-e) allowing design of multi-axis “motion motherboard” with easily interfaced connectors.

The first Ion model has been designed for 5-55 VDC supply voltage and 5 A continuous current. Ion has four power lanes which makes it possible to drive also stepping motors.

The very first Ion servo drive circuit boards

The very first Ion servo drive circuit boards waiting to be equipped

Random Ion PCB facts:

  • 6 signal layers
  • Trace/space 6 mils
  • 526 drilled holes, smallest 0.15 mm
  • 139 surface mount components (double sided assembly)
  • 600+ solder joints
  • Size 71×36 mm