Semi-Automated Nozzle Testing Bench

Project Objective

Need a way to efficiently quality control proprietary nozzle assemblies 

This was an internship project so some details are excluded to maintain confidentiality

Early CAD render of the Test Bench

Current status of the unit with panel-mounted connections and brackets

Patented Nozzle

Project Background

The nozzle interfaces with a sprayer machine to uniformly spray matrix on mass spectrometer samples using a heating element, temperature sensor, nitrogen, and spray solvent. Before a nozzle is shipped, the electrical elements and spraying capabilities must be thoroughly checked, typically done through a series of tests using an existing product. This process is time-consuming and requires user input at each step. Automating this multi-step process would save employee time and allow for a greater number of nozzles to be processed and sold. 

Design Inputs

Initial Ideation

My first thoughts were to make a device similar to the existing sprayer box, except with linear motion in only one axis for multiple nozzles. My idea was to use a belt, gantry, and stepper motor to achieve the desired linear motion. 

Side view of the motor system displaying belt and gantry

Though I thought interfacing with several motors might be a fun challenge, seeing the spray pattern on a rotating reflective surface while keeping the nozzle in a fixed spot seemed like a simpler design that would accomplish the same goal while minimizing moving parts.

Electronics: Hardware

Hardware Selection

I chose to use RaspberryPi as the microcontroller for this project due to the depth of documentation and attachments available. I knew I would be interfacing with an industry-standard PID temperature controller, motor, and LCD screen so I knew the number of pins on the Pi would be sufficient. Since the motor would only need to rotate an object at a certain speed, I chose a simple stepper and motor driver. For measuring electrical values, female banana plugs were the best option.  

Power delivery schematic

Power Delivery

My goal was to use a wall power supply to power the CAL, RPi, Screen, and Nozzle. I also needed a power switch and several toggle switches to separate certain elements from the larger circuit for resistance readings. I repurposed some sprayer boards which helped for powering the CAL & Nozzle components. I used a 24V to 5V DC-DC converter to step down the wall voltage to power the Pi, Motor, and Screen. 

The schematic translates to many wires, solder/crimp connections, and splitters

Electronics: Software

Learning how to control the CAL3300 Temp Controller through Python involved lots of research on communication protocols and product documentation. Eventually, I figured out how to send and receive temperature values from the Pi. This carried over into the GUI, which I created using the PyQt5 Python package. The GUI is able to start/stop the motor, set new temperature values for the controller/nozzle, and read the current nozzle temperature in real-time. 

Box Construction

PVC boards were chosen as the board material, with rubber feet. For the top panel, I decided to use acrylic for ease of laser cutting holes in order to panel-mount the numerous components. 

Front View: All structural components in place featuring a larger front panel 

Side View: Most electrical connections in place with updated motor mount design

Front View: Front panel with all critical components for one nozzle panel-mounted

Challenges

Problem: Needed to supply power to many elements simultaneously off of one power supply

Solution: Examined existing product wiring and circuit schematics and repurposed an existing circuit board to handle the power delivery

Problem: Creating a linear motion system similar to existing products would be difficult to implement with desired accuracy

Solution: Switched from a moving nozzle to a simple moving platform - a rotating CD - which has the same desired output of visualizing the spray pattern 

Problem: Needed to conduct electrical testing without removing the nozzle

Solution: Implemented toggle switches to allow for direct resistance and continuity measurements