Controlling Test Automation - The Easy Way
Manufacturing test in the automotive industry is mostly automated to remove any ambiguity resulting from human intervention and contamination during product handling. The automated handler systems involve pneumatics press and motorized mechanical actions which are potentially pinch hazards for the users. There are many handler systems in the market today and are typically “closed” systems which do not allow much control from external applications apart from the start and stop actions.
Every handler system has some built-in fail safe and safety interlocks. This is to safeguard the operator from injuries and prevent damage to the hardware. Handler systems also undergo safety regulatory tests on their programmable logic controllers(PLC) or firmware to certify that the operations conform to safety standards. Therefore, most handler systems do not allow any external intervention into their operating sequence.
"Closed" PLC System
The handler’s PLC is rigid and built only to perform the operation it is intended for. There isn’t much flexibility to allow for user customization on its operation. Typically, a change in the handler’s operation will mean a change to the handler’s PLC or firmware itself.
Now, how about a handler system that is flexible enough to allow user’s application to manage its operations, and maintains the high level of operational integrity and safety interlocks? Ranging from in-circuit tests to flash programming, and functional testing, what if the user can control these handler operations to suit different applications?
Engineers at Keysight created a flexible handler to enable their automotive electronics customers to do just that. The Keysight FlexiCore handler provides a software interface layer called the Handler Control Panel which allows the handler to interact with external applications.
Handler Control Panel interface layer
What the Handler Control Panel offers is an interface layer between the user’s testplan and the handler firmware. The firmware fully controls the main operation sequence, and the sequence is split into several smaller sections that the user can selectively call out to execute. By doing so, it allows the user to have better control of the handler system and integrate their own test operations easily.
The testplan is a sequence of test operation steps defined by the user. It can be developed on any software platforms that supports TCP/IP socket connections. From the testplan, the user can connect with the handler and send commands/queries to control the handler’s operating sequences.
Handler Operation Stages
FlexiCore’s handler operation can be sectioned into four stages. Each stage consists of a set of operation sequence which is internally managed by the handler and protected from external intervention. This allows the handler system to uphold the operation integrity and still allow the user to manage its overall operation. The user application can send commands to trigger the start of any operation in the handler and query the state of the handler to determine if an operation is successfully completed, or if an error event has occurred.
Basic Handler Operation Commands
With just four commands, the user has control of the entire handler’s operation. Each of the commands triggers the execution of its operation stage. The handler still maintains the overall control of the operation and will intervene when required conditions are not met. A typical operation flow begins with the Initialization of the handler to return all mechanics to their home state. Once the Input stage starts, the handler goes into a pre-defined loop which consist of the Input, Test and Output stage. At each stage, the user can have the control to check the state of the handler and then determine if the following stage should be executed. When the handler completes the Output stage, it automatically returns itself to the Input stage for the next operation cycle.
Give me a ping if you are interested to know more. I’ll share more features of the Handler Control Panel and FlexiCore handler system in future posts. Stay tuned!