Work Experience and Research with WSU

Using C++ and robot operating software (ROS) on a Linux based machine, I adapted the xArm6 for fused filament fabrication (FFF). The written code accepted both G-code and a text file as input and created a motion plan for the robot.

Planar Movement: A precursor to 3D printing

Beginning with Planar Movement

The research began by adapting the xArm6 for planar movement. Our approach was to use a G-code file or a .txt file as input, which would describe the points for an image. I created a holder using Fusion 360, that could hold a standard Expo marker. Multiple different sample images were created, including that of the WSU logo and Spiderman. This planar movement lended toward building up layers in the typical 3D, gantry based, printer philosophy.

Marker holder base

The base of the marker holder was designed to interface with the end of the xArm 6. The holes have an inset for the xArm 6 attachment bolts. A spring was attached to the base of the marker to apply pressure when at the paper surface.

Marker holder cap

The marker holder attachment was designed to allow just the tip of the Expo marker through the top opening. Screws at the base of the cap allow attachment to the holder base, while the holes on the side allowed centering and stabilization of the marker with screws.

Adaptation for Planar Printing

Planar printing was a straightforward adaptation of the planar movement with the marker described above. Mounting of the extruder to the robot and generation of the collision files began the process, while synchronization of the movement and extruder comprised the bulk of the work. Below are descriptions of the mounts for the extruder, images of the attachment, and descriptions of the process of printing the samples.

Extruder mounting holes

The holes on the side and at the base of the mount are meant for attaching the extruder and mounting to the end of the robot, using the minimum distances that would prevent direct interference.

Extruder cutouts

Cutouts of the mount were made, and the base thickened, to ensure enough clearance for both the wire connections that ran the stepper motors, and connection for the 1.75mm PLA filament.

Diagnosing problems and refining the printing solution

Refining Extrusion Consistency

Extrusion consistency is vital to making a cleanly printed part. This shows a mid stage where the the print width was inconsistent. I modified the calculation equations to improve quality and repeatability.

Developing better printing capabilities

On the left is an example of the very early print samples. There is a clear over extrusion that was flattened based on the height above the print bed. The right shows inclusion of an extrusion cross-section calculation and the side-by-side comparison to show the improvement.

Determining faults in printing

In the video, it can be seen that the base was not adhering to the previous layer. This required modification of how the gcode was being processed, as well as a reprocessing of the printing parameters within the slicer.

Printing Improvements

Solid-walled square

As a final proof-of-concept before moving toward printing on uneven surfaces, the hollow cube proved a dramatic increase in print consistency and accuracy. This allowed our group to work toward the next goal: printing onto a curved surface, which never reached a conclusion due to difficulty in solving the inverse kinematics for the robot.

Curved prints

Developing the code for overhang still provided challenges due to the extrusion lacking direct support underneath. As this was research, and developing planar printing was not the sole focus, the group decided that my focus should shift toward non-planar printing and working on control over orientation of the print head.

Further work completed consisted of quaternion based rotation and the inverse kinematic solvers to control the orientation of the extruder robotic arm. Due to limitations with the computation capabilities of available solvers, my work ended here as I had graduated and thus was unable to work within the school or the lab as an undergraduate researcher.

Professional Development within the Lab

Throughout my time working with the WSU MME M3 lab, I had a plethora of opportunities to develop my communication skills. I was able to discuss with potential sponsors regarding the work that our lab was doing, and explain this in a poster-like presentation. The image above shows this poster presentation, where the DIW work was being done by the graduate student Yiran Guo within the lab, and thus was not discussed here. Weekly meetings and progress updates allowed me to work on technical communication of the concepts and work that I handled throughout the week prior to meeting. A sample of slides prepared for weekly meetings is linked below. Rotating through all lab members, we would complete literature reviews of topics related to 3D printing. These would be in-depth discussions of what new technology was being developed in other labs, and how this could potentially be related to or aid in the research we were conducting. An example of this can be viewed below.

View weekly meeting slides, discussing rotation of print head and extrusion cross section calibration

View literature review