A PC running the Microsoft Windows™ operating system is used to develop and test the application programs which co-ordinate all the required motion and machine functions using Trio’s Motion Perfect software. Motion Perfect provides all editing and debugging functionality needed to write and debug applications written in Trio Programming Language. The completed application does not require the PC in order to run.
One of the many strengths of Trio Programming Language is that a program written for an entry level Motion Coordinator can be run, with only minimal modification on the highest performance Motion Coordinator. This portability extends even to users requiring upgrades for older Motion Coordinators where the core functions of a program written in TrioBASIC over a decade ago will still run on the latest hardware platforms.
All standard program constructs are provided; variables, loops, input/output, maths and conditions. Extensions to this basic instruction set exists to permit a wide variety of motion control facilities, such as single axis moves, synchronised multi-axis moves and unsynchronised multi-axis moves as well as the control of the digital I/O.
All Trio controllers feature Trio Programming Language. Multiple programs can be constructed and run simultaneously to make programming of complex applications much easier.
An example of Trio Programming Language is MOVELINK which can be used in synchronization of conveyors, flying
shears, thread chasing and taping and coil winding.
In this example, a flying shear cuts a
long sheet of paper into cards every 150mm whilst moving at the speed of the material. The shear
is able to travel up to 1.2 metres of which 1m is used in this example. The paper distance is
measured by an encoder, the unit conversion factor being set to give units of metres on both
axes.
(Note that axis 7 is the link axis (master axis))
The program for this example is:
WHILE IN(2)=ON MOVELINK(0,150,0,0,7) 'dwell (no movement) for 150mm MOVELINK(0.3,0.6,0.6,0,7) 'accelerate to paper speed MOVELINK(0.7,1.0,0,0.6,7) 'track the paper then decelerate WAIT LOADED 'wait until acceleration movelink is finished OP(8,ON) 'activate cutter MOVELINK(-1.0,8.4,0.5,0.5,7) 'retract cutter back to start WAIT LOADED OP(8,OFF) 'deactivate cutter at end of outward stroke WEND