For UPenn's mechatronics class we were split into groups and tasked with designing and constructing a set of autonomous hockey playing robots. These robots had to be able to receive wireless instructions, find an IR emitting puck, and localize themselves on the field using a set of lights on the ceiling to find the goal. In our team of three people, one person handled the mechanical design and abstracted code base while the remaining partner and I handled the electrical design and experimented with the PCB etching process.
Having developed a firm knowledge base about the design of mechatronic systems from the hemoglobetrotter project we decided to use this class to develop a deeper understanding of H-bridge designs and test out a homebrew pcb development process. This was not part of the class as most people bought H-bridges and a select few outsourced custom pcbs. With one of the partners on my team, I co-designed a lock anti-phase drive system. We chose this model due to its simple control scheme. The only variable in our drive code would be the duty cycle of the PWM passed to the FET gates. At 50% duty the average voltage across the motor terminals would be zero resulting in no motion. 100% duty was therefore full speed forward while a 0% duty would cause us to reverse. We designed our own boards in the EAGLE ECAD environment. As seen below this included a breakout board for the provided M2 microcontroller, our custom H-bridge, and a sensor input board for the IR transistors. Because our boards could only contain one layer of routing we decided upon an Arduino shield like setup with a stack of boards to keep our work modular and organized.
Once designed, we printed the circuits onto clear transparency. We opted for the photoresist method to transfer the pattern to the presensitized copper, removing the exposed areas with photo developer. The boards were then finished off by removing the excess copper in a solution of hydrogen peroxide and hydrochloric acid.
We were extremely pleased by the results of this process as the boards worked better than intended. The modular design eased the necessary debugging process for any custom circuit as well as allowed us to keep working when something went wrong. For example, we had a 5 volt regulator short on one of the M2 boards while testing the code base and within seconds we were able to swap out the top board with a working one and continue progressing while the regulator was replaced. We also became much more acquainted with pcb design as it was required for us to be very mindful of how limited we were when routing on a single layer. Below are multiple images showing the boards before and after soldering as well as the circuit stack on one of our robots.