Project

# Title Team Members TA Documents Sponsor
19 Cycloidal Hub motor with FOC driver
Michael Talapin
Nithin Durgam
Eric Tang design_document1.pdf
proposal1.pdf
# Title
Cycloidal Hub Motor With custom FOC Drivers

Team Members:
- Michael Talapin (talapin2)
- Nithin Durgam (ndurgam2)

# Problem

Many modern physical systems need motors that require high torque in a compact size with precise motion capable of heavier payloads.

# Solution

Describe your design at a high-level, how it solves the problem, and introduce the subsystems of your project.

The motor we are building out is an internal cycloidal hub motor with custom windings and a custom-milled frame along with a field-oriented control (FOC) custom motor driver. The internal cycloidal gear box solves the earlier stated problem due to two key components.One is the low backlash property, which allows for high precision motion. The second property is the ability to utilize the cycloidal gearbox to get higher gear ratios with smaller geometry, which gives the motor an ability to have high torque and in turn handle heavier payloads. A FOC driver comes into play for allowing direct torque control, speed control and position control (given an encoder/resolver) all while reducing resonances that come from the mechanical system.


# Solution Components

This problem is broken down into two major components, the custom motor aspect as well as the custom FOC Driver aspect. These components also break down into further respective subcomponents.

Explain what the subsystem does. Explicitly list what sensors/components you will use in this subsystem. Include part numbers.






## Subsystem 1 : Electromagnetic motor core

### Function
To generate torque efficiently while thinking about packaging constraints. The winding and laminations help set our motors kT/kV as well as torque ripple behavior. An additional useful feature here is to track the temperature of our stator to ensure thermal limitations.

### Key Components
**Stator Laminations + Slots :** Forms the magnetic circuit so the motor produces torque efficiently with no loss.
**Custom Windings** The insulated copper that carries current directly and defines what our torque constant,losses and thermal capability are.
**Rotor**: Provide the fixed magnetic field the stator pushes against to generate the torque.
**Insulation Systems:** Locks windings in place while improving reliability under vibration and thermal cycling.

### Sensors
**Stator Temperature Sensor : ** (Murata NCP18XH103F03RB NTC) Helps limit torque when the motor is heating up so the windings don't get damaged.


## Subsystem 2 : Cycloidal Reduction Gearbox

### Function
To multiply torque in the wheel while maintaining, compact volume, a low backlash and good shock tolerance. The gearbox here turns high motor speed into a low speed wheel torque. By utilizing the cycloidal geometry the motor can have a high reduction with size constraints while maintaining a low backlash plus high shock-load capability.

### Key Components
**Eccentric Input Shaft / Cam:** Creates eccentric motion that drives the cycloidal disk
**Cycloidal Discs :** The reducing element that converts eccentric motion into a slower high-torque output
**Ring Pins :** These pins provide the rolling contact interface that shares load and supports high torque with low backlash.
**Output Pins :** Collects the disc motion and outputs the reduced speed and amplified torque rotation to the hub.
**Bearings :** Carry the loads while keeping alignment stable so the gearbox does not bind or wear easily (part to be decided)
**Lubrication :** Reduces wear and heat to increase efficiency and lifetime.


## Subsystem 3: Hub Structure and Custom Milled Frame

### Function
In harsh environments we must integrate the wheel bearing and structure but ensure we keep the alignment stable, carry wheel loads, protect internals and provide a heat path.

### Key Components
**Custom-milled housing**
**Wheel mounting interface**
**Bearing seats**
**Seals**
**Fasteners and Dowel Pins**


## Subsystem 4: Bearings and sealing subsystem

### Function

This subsystem should ensure the motor supports radial,axial, and moment loads while maintaining alignment and preventing contamination.

### Key Components
**Main wheel bearing arrangement**
**Gearbox support Bearings**
**Seals:** O-rings, radial shaft seals, gaskets




## Subsystem 5: Motor Position Sensing

### Function
Since FOC requires rotor position, this subsystem is meant to provide rotor electrical angle.

### Sensors
**Absolute Encoder :** AS6057P, The purpose of this sensor is to get the absolute position of the rotor.













## Subsystem 6: DC Input and Power Conditioning

### Function
Since the motor driver will be a voltage source inverted that gets fed by a DC link, the goal here is to accept supplied power safely, reduce the EMI and stabilize the DC link that will feed the inverter.

### Key Components
**Input Connector and Relay:** SLPRB50CPSO, This should be a high-current connector to allow us to connect the battery without overheating and loosening in the field.
**Precharge Circuit:** Implemented with a resistor and a small relay, this is built to avoid a huge rush of current instantly slamming into the DC-link capacitors when we first are connected to power.
**EMI Filter:** Reduce the conducted noise so the drive does not interfere with the sensors, comms and other electronic components.
**DC Link Capacitors:** To stabilize the DC bus and supply the ripple current ripple current that the inverter creates.
**Dump Resistors:** These prevent the DC bus overvoltage during aggressive regen when the battery is not absorbing power fast enough.
### Sensors
**DC bus voltage sensor:** Use a resistor divider onto a MCU ADC. Lets our microcontroller detect undervoltage/overvoltage and scale our control commands.
**DC bus current sensor:** Use TI INA240A2. Helps measure input power and detect abnormal conditions.

















## Subsystem 7: 3-phase Converter

### Function
Since FOC measures phase currents and DC bus voltage with ADC sampling, we need to convert the DC bus into controlled 3-phase voltages/currents.

### Key Components
**6-switch bridge:** The main power switch that creates the 3-phase drive waveforms for the motor
**Current shunts:** Use WSL3637R0005FEA. These produce a tiny measurable voltage proportional to phase current to allow FOC to control torque precisely.
**Current sense amplifiers:** Amplifies the shunt signals and rejects PWM noise allowing our current control loop to stay stable.
**Thermal Path:** Removes heat from the power devices so that torque is sustainable with high power.
### Sensors
**Power device temperature sensor:** Use the NCP18XH103F03RB NTC.Derate before MOSFETs or PCBs get damaged.
**Phase current measurement:** Use shunts + INA240. provides the core feedback signal for our FOC loop.










## Subsystem 8: Gate Driver

### Function

To drive the high/low side switches correctly to survive different faults. The goal here is to handle undervoltage lockout, protect from short-circuit, and include active miller clamps.

### Key Components
**Gate driver IC:** Use TI DRV8353R. This will properly drive the high-side or low-side MOSFET gates with proper handling and built in fault handling.
**Gate resistors + Miller clamps:** Help tune switching speed to balance efficiency EMI and ringing.


## Subsystem 9: Sensing Front End

### Function
Provide Clean and accurate signals for the control loop, protection and derating.

### Key Signals
**Phase Currents**
**Bus Voltage**
**Rotor Position**
**Temperatures:** Stator,inverter, rotor and PCB ambient temperature
**Phase Voltages**


## Subsystem 10: Control Compute

### Function
The compute necessary for running the real time control loops and fault handling

### Key Components:
**Micro Controller:** STM32H755ZI this has enough compute to run the algorithms necessary for a high end motor
**Encoder/Hall Interfaces:**
**Communication Peripherals:** How others interface with our motor, in this case the motor will utilize CAN-FD due to low vulnerability to EMI and ability to handle longer runs
**Watchdog:**






## Subsystem 11: Firmware & Control Stack

### Function
Deliver stable torque,speed, position control, telemetry logs and debug abilities.

### Key Components:
**Sampling & Transforms:** Read the current and put through Clarke/Park transforms.
**Current control:** Regulate the Id,Iq.
**Modulation:** SVPWM.
**Estimator/ Position:** Use motors encoder for position.
**Control Loops:** PID Loop for Iq command and PID loop for position,speed and torque.
**Derating Logic:** Limit the Iq based on the temperature or bus voltage.
**Telemetry Interface:** - Way to keep track of temps,currents,bus voltages, faults and estimated torque/speed/position.

## Subsystem 12: Protection and Functional Safety Layer

### Function
Ensure the proper functions are in place for motor protection and safety during operation

### Key Components:
**Protect from fast overcurrent**
**Gate Driver UVLO**
**Over/undervoltage handling**
**Current/torque limiting**
**Thermal limiting**
**Fault state machine and latching behavior**
**Sensor Faults**



# Criterion For Success
Describe high-level goals that your project needs to achieve to be effective. These goals need to be clearly testable and not subjective.

** Continuous Torque: ** T_nm >= 4 Nm

** Peak Torque: ** T_nm >= 18 Nm

** Max Speed: ** rpm_max >= 120 rpm

** Backlash: ** our backlash <= 1 degree

Monitor for Dough and Sourdough Starter

Jake Hayes, Abhitya Krishnaraj, Alec Thompson

Monitor for Dough and Sourdough Starter

Featured Project

Team Members:

- Jake Hayes (jhayes)

- Abhitya Krishnaraj (abhitya2)

- Alec Thompson (alect3)

# Problem

Making bread at home, especially sourdough, has become very popular because it is an affordable way to get fresh-baked bread that's free of preservatives and other ingredients that many people are not comfortable with. Sourdough also has other health benefits such as a lower glycemic index and greater bioavailability of nutrients.

However, the bulk fermentation process (letting the dough rise) can be tricky and requires a lot of attention, which leads to many people giving up on making sourdough. Ideally, the dough should be kept at around 80 degrees F, which is warmer than most people keep their homes, so many people try to find a warm place in their home such as in an oven with a light on; but it's hard to know if the dough is kept at a good temperature. Other steps need to be taken when the dough has risen enough, but rise time varies greatly, so you can't just set a timer; and if you wait too long the dough can start to shrink again. In the case of activating dehydrated sourdough starter, this rise and fall is normal and must happen several times; and its peak volume is what tells you when it's ready to use.

# Solution

Our solution is to design a device with a distance sensor (probably ultrasonic) and a temperature sensor that can be attached to the underside of most types of lids, probably with magnets. The sensors would be controlled with a microcontroller; and a display (probably LCD) would show the minimum, current, and maximum heights of the dough along with the temperature. This way the user can see at a glance how much the dough has risen, whether it has already peaked and started to shrink, and whether the temperature is acceptable or not. There is no need to remove it from its warm place and uncover it, introducing cold air; and there is no need to puncture it to measure its height or use some other awkward method.

The device would require a PCB, microcontroller, sensors, display, and maybe some type of wireless communication. Other features could be added, such as an audible alarm or a graph of dough height and/or temperature over time.

# Solution Components

## Height and Temperature Sensors

Sensors would be placed on the part of the device that attaches to the underside of a lid. A temperature sensor would measure the ambient temperature near the dough to ensure the dough is kept at an acceptable temperature. A proximity sensor or sensors would first measure the height of the container, then begin measuring the height of the dough periodically. If we can achieve acceptable accuracy with one distance sensor, that would be ideal; otherwise we could use 2-4 sensors.

Possible temperature sensor: [Texas Instruments LM61BIZ/LFT3](https://www.digikey.com/en/products/detail/texas-instruments/LM61BIZ%252FLFT3/12324753)

Proximity sensors could be ultrasonic, infrared LED, or VCSEL.\

Ultrasonic: [Adafruit ULTRASONIC SENSOR SONAR DISTANCE 3942](https://www.digikey.com/en/products/detail/adafruit-industries-llc/3942/9658069)\

IR LED: [Vishay VCNL3020-GS18](https://www.mouser.com/ProductDetail/Vishay-Semiconductors/VCNL3020-GS18?qs=5csRq1wdUj612SFHAvx1XQ%3D%3D)\

VCSEL: [Vishay VCNL36826S](https://www.mouser.com/ProductDetail/Vishay-Semiconductors/VCNL36826S?qs=d0WKAl%252BL4KbhexPI0ncp8A%3D%3D)

## MCU

An MCU reads data from the sensors and displays it in an easily understandable format on the LCD display. It also reads input from the user interface and adjusts the operation and/or output accordingly. For example, when the user presses the button to reset the minimum dough height, the MCU sends a signal to the proximity sensor to measure the distance, then the MCU reads the data, calculates the height, and makes the display show it as the minimum height.

Possible MCU: [STM32F303K8T6TR](https://www.mouser.com/ProductDetail/STMicroelectronics/STM32F303K8T6TR?qs=sPbYRqrBIVk%252Bs3Q4t9a02w%3D%3D)

## Digital Display

- A [4x16 Character LCD](https://newhavendisplay.com/4x16-character-lcd-stn-blue-display-with-white-side-backlight/) would attach to the top of the lid and display the lowest height, current height, maximum height, and temperature.

## User Interface

The UI would attach to the top of the lid and consist of a number of simple switches and push buttons to control the device. For example, a switch to turn the device on and off, a button to measure the height of the container, a button to reset the minimum dough height, etc.

Possible switch: [E-Switch RA1113112R](https://www.digikey.com/en/products/detail/e-switch/RA1113112R/3778055)\

Possible button: [CUI Devices TS02-66-50-BK-160-LCR-D](https://www.digikey.com/en/products/detail/cui-devices/TS02-66-50-BK-160-LCR-D/15634352)

## Power

- Rechargeable Lithium Ion battery capable of staying on for a few rounds of dough ([2000 mAh](https://www.microcenter.com/product/503621/Lithium_Ion_Battery_-_37v_2000mAh) or more) along with a USB charging port and the necessary circuitry to charge the battery. The two halves of the device (top and underside of lid) would probably be wired together to share power and send and receive data.

## (stretch goal) Wireless Notification System

- Push notifications to a user’s phone whenever the dough has peaked. This would likely be an add-on achieved with a Raspberry Pi Zero, Gotify, and Tailscale.

# Criterion For Success

- Charge the battery and operate on battery power for at least 10 hours, but ideally a few days for wider use cases and convenience.

- Accurately read (within a centimeter) and store distance values, convert distance to dough height, and display the minimum, maximum, and current height values on a display.

- Accurately read and report the temperature to the display.

- (stretch goal) Inform the user when the dough has peaked (visual, audio, or app based).

Project Videos