This week I created a simple test program for my final project. This user interface makes it easy to quickly test both coils and coil driver boards.
Individual boards listen on serial ports. In the final project a central arbiter directs messages. This architecture makes it easy to test individual boards in isolation, and it means that the boards are interchangeable later.
The user interface is written in LabVIEW. Here is the front panel:
The left hand side configures the communication.
The right hand side is what the user spends the majority of the time working with. It has three basic modes: Manual, Forward, Back.
Manual allows for control of individual coils. The coils are selected, and then the fire button activates them.
Forward and Back fire groups of coils. If a coil is wired backwards this becomes very easy to diagnose.
The left hand initializes communication. It then enters an event loop. Each frame of the event structure handles the logic for a different button.