This project will encompass the work of multiple students who are actively working on the hardware/electrical side of the Mars Rover Team at McMaster University
The designs are completely open source so you can find them on our team github under Electrical Designs.
The bare PCBs of this project are sponsored by JLCPCB and they continue to provide quality boards at a fraction of the price.
Unfortunately we did not document the making of the Arm/Stepper Motor Control (SMC) and Drive Motor Control (DMC) boards, but they are simple boards that was our first stint into PCB making and therefore contained a LOT of problems that we seek to fix with this rev.2
Just to provide a brief summary of our initial boards, they were good in concept, but we fumbled the rest. Both boards are simply just breakout the STM32 Blackpill with the correct connectors so it was to our surprise that when we looked back at the design, we realized a lot could be improved.
For the drive motor control boards, we are simply breaking out the IO to the motor drivers and the connector simply gets PWM. The accompanying connector next to each motor PWM signal is the quadrature encoder signals that provide positional feedback from the motors. The board also supports connection to the battery monitoring system, and also provides a header for IO that are currently unused.
For the SMC, we realized that the initial design was a wiring nightmare, but the new revision does not look any better. Not all of the connectors on the board will be used, but we specifically provided as many as possible just in-case we decided to switch drivers at any point. After the first revision, we realized that the drivers we were using required 5V logic, so we also ensured that all the IO provided to the step and dir pins for the stepper motor drivers are 5V signals.
We are excited to finalize the review process and finalize the new boards to eventually solidify our control boards.
There are plans in the work for new boards such as the OBC which will be implemented into our new architecture that will feature team-made BLDC drivers based on VESC and stepper drivers based on Mechaduino provided with full CAN support for easier wiring.
The team has decided to showcase the efforts made in development of the arm power supply. In simple terms, we would like to operate the stepper motors on the arm at 24V to be able to achieve the specific torques at the speeds we desire.
This was the first project of building power supplies on the team based on the tons of wonderful knowledge from TI guides, datasheet recommendations, and more. There was a LOT of simulations beforehand and checking what types of filtering was desired on the output -- we decided to keep it a simple pi filter to reduce the switching noise. The drivers for the steppers are the TB6600s and they appear to be pretty robust and steppers aren't fussy with their power so it was a low risk project.
We had decided to make two different versions based on some interesting ideas, the first was a guided ground plane where the bottom was specifically cut to provide the most appropriate return paths and the second was to just a flooded ground plane. You can find out at the end what was the results.
The actual design encompassed the use of the LM5122 by TI and was specified to provide up to 15A due to the multiple stepper motors that would be eventually be connected to the output of each power supply module. This was also the first design where we had learned how to build our own boards with and without using stencils and a toaster oven. As a side note: I hope we get a reflow oven, but one can dream.
And once we placed the components on the board and eventually threw it in our amazing toaster oven we eventually got this as the end result
Through testing it was determine that the full ground plane version provided 24.2V on the output which over by 200mV , but the design with the ground plane cut-up resulted in 24.75V which is a 750mV increase which was pretty insane. There was some interesting discussions regarding how we decided to cut-up the ground plane after.
We plan to continue to improve this project to provide additional features such as power monitors, input protection, and more.
The battery monitoring system is a gateway project to test a discrete method to keeping track of cell voltages based on only using course knowledge to eventually creating a battery management system which is currently in design.
The battery monitoring system has the main goal of monitoring voltage of the LiPo battery systems during use and also used for checking battery packs that are discharged. The main idea was to provide connectivity to the JST balance charge connectors on the LiPo which feeds into a buffer and differential amplifier to find the voltage of each cell in the battery pack. The specific voltage of each cell will be fed into a Schmidt trigger which will then warn the user if the cell voltage is too low beyond a set reference voltage.
Through testing we found that the design worked surprisingly well, but it stands to argue that there is a lot more to be done. We plan to rework the project from the ground up introducing more integrated solutions that can provide many more battery protections such as over current, over voltage, over temp, etc and more features.
We have developed and tested the power supply for the Jetson TX2 (which will be used as the brains of the rover).
This supply is designed to take in 12V to supply 19V on the output at 3A max. The Jetson TX2 typically runs on 15W due to it's high efficiency, so the supply is overkill and not going to act as efficient, but does the job well. We are currently using the LM5122, due to it's high power capability and since most of the designs can be reused for the power supply of our stepper motors.
It will be beneficial if they complete the review process and the new boards in order to solidify the control boards. The goal is to get the model onto a flat surface. I hope they have plans to continue to develop this project by adding features like power monitors, input protection, and other things. We will be waiting for the release of this project and gonna check it in the market if it is available. But for now I have pet games online for free and Ninja Warrior: Legend of Adventure Games. It is free to play and download.
It will be beneficial if they complete the review process and the new boards in order to solidify the control boards. The goal is to get the model onto a flat surface. I hope they have plans to continue to develop this project by adding features like power monitors, input protection, and other things. We will be waiting for the release of this project and gonna check it in the market if it is available. But for now I have pet games online for free and Ninja Warrior: Legend of Adventure Games. It is free to play and download.