Part One - Robot Control Unit (RCU)
- Design and implement a PCB that has closed-loop control over 2 DC motors
- Monitors and saves data about itself and the environment it is in:
- Current flowing though the motors
- Ambient temperature
- Ambient light
- Humidity
- Orientation (or just the tilt angle, TBD)
- Possess Bluetooth communication
- Entire system is powered by a 9V-12V battery
- Can connect to computer via USB2 2.0 to load the data saved on the PCB
Planning on powering entire device from 9V battery (unregulated supply), motor drive unit needs a 6V regulator
Encoder operating voltage is 4.5 to 7.5V
***Even though STM32G0B1CE has 5V tolerant pins that are used for encoder input, the output voltage of the encoder will likely match the operating voltage
Will either use level shifters IC's or voltage dividers resistors, leaning towards the latter
Since motor is rated for 6V and that is within encoder operating voltage, will use the same IC to power both
LM2576S-Adj, I_MAX = 3A
Has tips on picking out all the external circuitry and lays out a design procedure as well
Made a "worst case scenario" power budget, this was made on July 29th,
Absolute max current draw by microcontroller is 100mA, but typical supply current is under 10mA, and adding peripherals only adds a 10s of uA
This is important because the efficiency of the buck converter under different current loads is dependent on the Inductor value, large loads -> small inductor, small loads -> large inductor
Therefore, want to figure out "typical" current draw before deciding on inductor values for regulators
TA0357: Overview of USB Type C and Power Deliver Tech.
2 Configuration channels (CC) for the discovery, configuration and management of USB Type C Power delivery features
A sink must assert Rd pull-down resistors on both CC pins
USB 2.0: Nominal voltage of 5V, max current of 500mA
AN4878: Introduction to USB hardware and PCB Guidelines for STM32
Protection against ESD and EMI:
The "HBM" require that USB pins of component device be tolerant p to 2kV of discharge
Low Price: USBLC6-2SC6 (+ ESDA7P60-1U1M for VBUS)
Low Area: USBLC6-2P6 ((+ ESDA7P60-1U1M for VBUS)
VBUS Sensing:
A USB device must have VBUS sensing detection based on the USB specification
When the device detects the host's presence it connects its pull-up resistor to either a D+ or D- data signal line, this allows the host to detect the device presence on the bus
1) If the USB device is bus powered, USB sensing isn't mandatory (USB is always connected with device is powered)
2) Device is self powered - VBUS sensing is mandatory
************* Not all STM32 microcontrollers that have USB peripherals have dedicated sensing pins
If they do, it is usually - PA9 additional functions: OTG_FS_VBUS
************* The embedded pull up resistor on D+ pin in STM32G0B1CE is used for USB device detection