After taking Physics 2, I was very interested in motors and learning how they worked. This led me to designing and building my own.
My initial design included 3 hall effect sensors, in an attempt to track the electrical rotations of the motor to be converted into mechanical rotations to calculate the RPM. I also believed that each sensor would require a pull up resistor to function, which led to a lot of frustrating soldering, as soldering directly to the resistor would melt the solder on the other end. This frustration would later be resolved with a custom PCB.
I also added an electronics speed controller (ESC) for it to be controlled by an Arduino
I wrote the code and assembled everything on a breadboard, and I was very happy with the result. The motor is not very efficient, as it produces a lot of heat with its non-conductive plastic core. I also noticed that the ESC was getting even hotter
This video highlights one of my main problems with this project, which is thermal runaway. Most of it occurs in the cheap ESC that I bought, which was expected, but it also occurs in the stator coils. This eventually leads to performance issues where the motor stalls and throttles down even when it should be accelerating.
Since I used a non-conductive plastic core, the motor is highly inefficient, as the magnetic fields that are induced are much weaker.
My initial design included 3 hall effect sensors, in an attempt to track the electrical rotations of the motor to be converted into mechanical rotations to calculate the RPM.
I soon found out how complex tracking electrical rotations was; it is basically supposed to repeat a cycle of states, without repeating any. I found out that it would be very difficult to keep track of the states, as I was getting many duplicated states. I am not sure if it was the spacing of the sensors, the angle they were mounted, or even their quality, but it would be too much effort to resolve it with the code. I eventually realized I could just skip the electrical rotations all together and only track the mechanical rotations with a single hall effect sensor. This greatly simplified the wiring, and I decided not to use a PCB at all in the project.