Projects
| # | Title | Team Members | TA | Professor | Documents | Sponsor |
|---|---|---|---|---|---|---|
| 2 | Non-Shock Ultra-Wideband Virtual Boundary Pet Collar |
Peter Gao Shi Xian Chng Shi Yang Ng |
||||
| # Non-Shock Ultra-Wideband Virtual Boundary Pet Collar **Team Members:** - Yujia (Peter) Gao (peterg4) - Shi Xian Chng (schng2) - Shi Yang Ng (syng2) ## Problem Existing wireless pet fences are unreliable indoors: GPS gives 3–5 m error and RSSI 1–2 m, environment-dependent. There is a need for an indoor virtual boundary that people can walk through but pets are trained to avoid, without physical barriers or electric shock. ## Solution Wall-powered UWB anchors placed in a chain define virtual wall segments. A collar measures its distance to adjacent anchors via UWB two-way ranging, computes its distance to the nearest wall segment locally using anchor spacings, and gives progressive vibration → sound feedback as the pet approaches. No central controller, fail-safe on link loss or low battery, high precision. Anchor and collar share one custom PCB with different populations. Role and anchor ID are assigned at flash time, so any spare board can replace any node. # Solution Components ## Anchor System ### Ranging Subsystem - **Hardware:** Qorvo DWM3000 UWB module communicating via SPI, with a dedicated RF antenna keep-out zone along the board edge. - **Software:** responds to collar polls with timestamps for double-sided two-way ranging. Self-surveys neighbor distances at power-up, re-verifies periodically; spacings ride in response payloads, large changes trigger a fault state. Ranging frames double as the data channel. ### Control Subsystem - **Hardware:** Espressif ESP32-C3-MINI-1 microcontroller module, status indication LEDs, and test points/headers for USB-serial programming and debug. - **Software:** anchor state machine - respond to polls by ID, schedule surveys, manage faults. Debug logs over USB serial. ### Power Subsystem - **Hardware:** USB-C connector for 5 V wall power input, AP2112K-3.3TRG1 LDO linear voltage regulator (3.3 V, 600 mA output), input/output MLCC decoupling capacitors, and unpopulated footprints for battery charging/feedback circuitry. ## Collar System ### Ranging Subsystem - **Hardware:** Qorvo DWM3000 UWB module connected over SPI with matching antenna keep-out layout identical to the anchor design. - **Software:** polls each anchor by ID, computes time-of-flight; collects spacings and status from responses. ### Control Subsystem - **Hardware:** Espressif ESP32-C3-MINI-1 microcontroller module, system status LEDs, and programming/debug headers. - **Software:** computes distance to each wall segment from two anchor ranges and the segment length, takes the minimum, and runs the feedback state machine (safe → warning → boundary) with hysteresis. Fail-safe on link loss or low battery. BLE for debug telemetry and stretch-goal phone notifications. ### Feedback Subsystem - **Hardware:** Piezo buzzer (TDK PS1240P02BT or CEM-1203), coin vibration motor (Vybronics VC1030B028F / 2265 ERM), dedicated haptic motor driver (TI DRV2603) or discrete N-channel switching MOSFET, with a flyback protection diode. - **Software:** maps zone to output - vibration in warning, escalating to tone at boundary. ### Power Subsystem - **Hardware:** 3.7 V (150–500 mAh) Li-Po battery with JST connector, Microchip MCP73831 charge management controller, integrated battery protection circuit (DW01A protection IC + FS8205A dual N-channel MOSFET), AP2112K-3.3TRG1 LDO regulator, USB Type-C charging port, and charge status LEDs. - **Software:** battery monitoring for low-battery fail-safe; duty-cycled ranging for battery life. ## Criterion For Success 1. Collar to wall distance error ≤0.5 m (UWB achieves 0.1 m to 0.3 m of accuracy) at 10 tape-measured test points, including through a doorway and with obstacles. 2. Feedback within 50 ms of entering the warning zone, correct vibration→tone escalation. Cats/dogs can run at 13 m/s; assuming wall deterrent radius is 1 m, we need to detect it within at least 0.077 s to avoid sprint-throughs. 3. Stable output during 15 minutes stationary on the boundary between vibration and neutral zones. 4. Fail-safe within 10 seconds if the pet gets stuck in the deterrent zone. 5. ≥24 hr collar battery life (assuming no vibrations and sound). 6. Collar weight < 60 g. |
||||||
| 3 | Menstrual Product Bathroom Tracker |
Anna Wilkowski Erin Rothenbaum Sarah Lau |
||||
| # Menstrual Product Bathroom Tracker Team Members: - Anna Wilkowski (annaw7) - Erin Rothenbaum (eroth8) - Sarah Lau (lau29) # Problem Finding menstrual products on a college campus can be unexpectedly difficult. At UIUC, some bathrooms may have menstrual products available while others may be empty or not stocked at all. When someone unexpectedly needs a product, they may have to check multiple bathrooms or ask staff where products are located. This can be inconvenient, time-consuming, and especially frustrating when they are in a hurry. There is currently no centralized way for students to determine which campus bathrooms have menstrual products available and how much stock remains. # Solution We propose an IoT-based system that monitors menstrual-product availability in bathrooms across UIUC and makes this information accessible through an app. In boxes made specifically for the project, time-of-flight sensors would be installed on the inside of the lid; these sensors would bounce an IR light signal off the top of the period product stack, and use the time it takes for the signal to return to calculate the distance to the top of the stack from the lid. We can use the inverse of that, i.e. the distance from the top of stack to the bottom of the box (total height - distance from top of stack to lid), to measure the total height of the stack and divide by the individual height of a pad container, confirming the amount of products available. This sensor would periodically transmit its measurements to a centralized server. The mobile application would aggregate this information and display nearby bathrooms along with their estimated product availability. Users could quickly identify the closest bathroom with products rather than searching multiple locations. The system could also provide useful information to campus facilities staff. When a bathroom's supply falls below a predefined threshold, the system could automatically flag the location for restocking. # Solution Components ## Subsystem 1 - Menstrual Product Dispenser Box Description: This subsystem consists of a constructed box which holds the menstrual products. In a sense, it is meant to be a placeholder for the actual metal boxes used by the school to contain menstrual products, but can be its own standalone product. The bottom of the box may have a dispenser for products, or the lid will be removable. The lid of the box will have two Time-of-Flight sensors installed (for pads and tampons) on the underside to determine the height of the stack of menstrual items, and a transmission box installed on the side. Components: [Time-Of-Flight Sensor](https://www.digikey.com/en/products/detail/stmicroelectronics/VL53L4CDV0DH-1/16123816): VL53L4CDV0DH ([datasheet](https://www.st.com/resource/en/datasheet/vl53l4cd.pdf)) by STMicroelectronics - I2C interface: Up to 1 MHz (fast mode plus) serial bus, Address: 0x52 - Operating Voltage: 2.6 to 3.5 V - 4.4 x 2.4 x 1 mm size - Operating Temperature: -30 to 85°C - IR: 940 nm - Minimum detection distance: 0mm, Minimum ranging distance with linear response: 1mm - 90% detection rate at 450mm for low reflectance - Non-volatile memory ALSO: Status indicator LEDs, RESET button STRETCH: OLED display for showing the current projected number outside of the box ## Subsystem 2 - Transmission / Embedded System The transmission box will contain an internet-connected module (Likely via Wifi as there are no ethernet cables in the restrooms). ESP32 is needed to provide WiFi capabilities. The transmission box may also contain other components such as an SD card to track product usage information and/or the last time a box was stocked. [ESP32-S2](https://documentation.espressif.com/esp32-s2_datasheet_en.html) or [S3](https://documentation.espressif.com/esp32-s3_datasheet_en.html): - 2.4 GHz Wi-Fi 4 - BLE 5.0 (None if using S2) - 240 MHz CPU - 512 KB SRAM (320 if using S2) - Xtensa L7 - USB On-The-Go - DAC converter (only if using S2) ALSO: Battery-or-USB power circuits with protection and automatic switching, Status indicator LEDs (For Power, WiFi Connection, I2C Rx/Tx), RESET button, USB connection (firmware flash, power, data) STRETCH: SD card to save user analytics ## Subsystem 3 - Phone App The phone app will be able to display the location of restrooms with available menstrual products and the amount of pads and tampons available. The time of flight sensor will give an approximate estimation of the amount of products available. The mobile app would be created in Flutter or Android Studio. There will be a hard-coded address added at the node level and sent over wifi as the first information bit (appended to the front of the I2C data). This will allow for the app to use GPS to assign the location of the Data using the address and avoid too many WIFI protocols. # Criterion For Success - Measure menstrual product levels using compact low-power ToF sensors - Detect product usage and restocking - Wirelessly transmit sensor data - Store and organize inventory data for each bathroom - Display bathroom locations and product availability on a mobile app - Show when inventory was last updated - Allow users to report inaccurate information |
||||||
| 4 | Secure Chain-of-Custody Container |
Alp Oguz Selim Mamak Sena Tiryaki |
||||
| **Team Members:** - Selim Mamak (smamak2) - Serdar Alp Oguz (soguz2) - Sena Bahar Tiryaki (stiry2) ## Problem Confidential engineering prototypes may need to be transported between labs, offices, and authorized employees before they are publicly released. A standard locked case can restrict access, but it provides little information about who opened it, when it was opened, or whether someone attempted to bypass the lock or tamper with the enclosure. Paper custody logs depend on users recording every interaction and can be modified after the fact. Shipping data loggers may record events such as impact or temperature but generally do not control access, while electronic lockboxes primarily focus on restricting entry rather than maintaining a detailed physical tamper and custody history. A reusable system that combines controlled access, tamper detection, and persistent event logging could provide a more complete electronic chain-of-custody record. ## Solution Overview We will build a battery-powered secure container that opens only for authorized NFC credentials and records access and physical tamper events. An electronic latch will control access, while a lid sensor, conductive tamper loop, and accelerometer will monitor the enclosure for unauthorized opening, physical damage, and significant impact events. Each event will be time stamped and stored in nonvolatile memory. Event records will be hash-linked so that modification of previously stored records can be detected when the log is exported and verified. Low-power operation will be a major engineering focus of the project. Because the container may remain unused for long periods, the design will minimize standby consumption using low-power sensing components and power gating. Higher-power components such as the NFC reader and electronic latch circuit will normally remain disabled and will only be powered when needed. The complete system will be implemented using a custom PCB containing the microcontroller, power-management circuitry, sensor interfaces, storage, NFC interface, and latch-control circuitry. ## Solution Components ### 1. Power Subsystem The container will use a protected rechargeable Li-Po battery with USB-C charging. Low-quiescent-current regulation and power gating will be used to reduce standby power consumption. The NFC reader and electronic latch circuit will normally remain powered off. A low-power wake mechanism, such as a Hall-effect sensor or pushbutton, will activate the main system when a user wants to authenticate without requiring the NFC reader to continuously scan. Low-power sensors used for enclosure monitoring will remain active while the rest of the system is in standby. The firmware will control transitions between standby, wake, authentication, latch actuation, event logging, and return to standby. Battery voltage and current consumption will be measured so that standby and active-state power consumption can be experimentally characterized. ### 2. Access Control and Tamper Sensing Subsystem An NFC reader and enrolled credentials will identify authorized users. The exact NFC reader and credential pair will be selected through early compatibility testing. The design will use authenticated credentials rather than relying only on a card UID, which would provide weaker access control. An electronically controlled latch will remain mechanically locked when unpowered and will only consume significant power during lock or unlock actuation. A Hall-effect sensor will determine whether the container lid is open or closed. A conductive tamper loop routed through protected portions of the enclosure will detect interruption caused by cutting, drilling, or other physical penetration. A low-power accelerometer will detect significant impacts above a defined threshold. Tamper and lid events will wake the control system so that suspicious activity can be time stamped and recorded even while the system is normally operating in its low-power state. ### 3. Control, Logging, and Readout Subsystem A low-power microcontroller will coordinate access control, sensing, power management, latch control, and event logging. A real-time clock with backup power will maintain accurate timestamps if the main battery is disconnected or replaced. Nonvolatile FRAM will store event records containing the event type, timestamp, and user identity when applicable. The event records will be hash-linked so that altering a previously stored record can be detected when the history is verified. A USB-C connection will allow the event history to be transferred to a computer. A simple desktop program will display the stored chain-of-custody record and indicate whether the log passes its integrity check. ## Criterion for Success 1. **Authorized Access:** The container remains locked until an enrolled NFC credential is successfully authenticated. An authorized access is recorded with the user identity and timestamp, while an unenrolled credential is denied access. 2. **Tamper Detection:** Opening the lid without authorization, breaking the conductive tamper loop, and producing a predefined significant-impact event are individually detected and recorded with timestamps. 3. **Low-Power Operation:** The completed system achieves a measured standby current below **100 µA** while the NFC reader and latch circuitry are inactive. Standby, authentication, and latch-actuation current will be measured and documented. 4. **Reliable Locking:** The electronic latch performs at least **20 consecutive authorized lock/unlock cycles** without resetting or disrupting the control electronics. 5. **Persistent Event Logging:** Stored event records remain available after complete loss of the main battery, and modifying an existing stored record causes the log-integrity verification software to report an error. 6. **Timestamp Preservation:** The real-time clock continues to maintain time during a main-battery removal and provides correct timestamps after the main system is powered again. ## Alternatives A standard mechanical lockbox provides physical access restriction but does not automatically identify users or maintain an electronic record of access and tamper events. Electronic lockboxes can provide credential-based access control, but their primary purpose is generally controlling entry rather than monitoring multiple forms of physical tampering and maintaining a persistent chain-of-custody history. Shipping data loggers provide another alternative and can measure events such as shock or environmental conditions during transportation, but they generally do not physically control access to the protected contents. Our project combines **identity-linked access control, physical tamper detection, persistent timestamped logging, and low-power battery operation** in a single reusable container intended for maintaining the custody history of confidential engineering prototypes. |
||||||
| 5 | Adaptive Power Factor Correction Device |
Luke Kang Ryan Irvin Saadullah Ehsan |
||||
| # Adaptive PF Correction Team Members: - Ryan Irvin (ryanri2) - Luke Kang (lukejk2) - Saad Ehsan (sehsa2) # Problem Many electrical loads such as motors, transformers, and power supplies are inductive in nature, which causes current to lag behind voltage. This results in a low power factor, increased current draw, and inefficient use of electrical power within AC systems. Poor power factor leads to higher real power losses, reduced system capacity, and inefficient power delivery. Most power factor correction methods usually use fixed capacitor banks, which are not adaptive to changing loads or done at a large scale and are not achievable for small commercial tenants. As a result, they are unable to maintain an optimal power factor when loads vary over time. There is a need for a low-cost, real-time system that can measure power factor and automatically apply corrective compensation based on load conditions our project aims to achieve this with the goal of laying the foundation for a model that can be scaled up to a 480V 3phase commercial electrical panel. # Solution Our proposal is for the design and implementation of an adaptive power factor correction system that measures voltage and current waveforms in real time, computes power factor using digital signal processing, and switches capacitor banks to improve the power factor. The system operates at low-voltage AC for safety while prototyping and demo purposes while maintaining scalability for other real-world AC power systems. The system has three main subsystems: 1. Sensing (of the voltage and currents) 2. Microcontroller Unit (Processing and computation) 3. Switching stage (Switched capacitor banks for Q compensation) A microcontroller continuously samples voltage and current waveforms using ADC channels, computes real power and power factor, and determines the required capacitance for the desired PF. Capacitors are switched in discrete steps using controlled switching synchronized to the AC waveform. # Solution Components ## Subsystem 1: Sensing This subsystem measures the AC voltage and current waveforms and converts them into safe analog signals for the microcontroller. For the voltage sensing, the input is scaled down by a voltage divider and is biased to shift it into the Microcontroller’s ADC voltage range. - Components: - Resistive voltage divider components - Biasing network (mid-supply reference ~1.65V) - Potentially a filter for any signal noise For current sensing, the input would be fed into a current transformer to convert into appropriate voltage and then biased the same as the voltage for the ADC. - Components: - Current Transformer (CT), SCT-013-005 (5A:1V) The output of both sensing circuits would be a centered AC waveform with a 1-2 V peak biased around the midpoint of the MCU’s voltage range. ## Subsystem 2: MCU This subsystem processes digitized voltage and current signals to compute power factor and determine required compensation. ADC: It would first convert the signals into digital by sampling both the voltage and current at 5-10 kHz. Then, it would unbias the signals to recreate the original zero-centered waveforms. PF Calculation: After that, it would compute the rms voltage and currents then multiply them to get the apparent power (S = Vrms × Irms). Then, it would compute the real power (P = avg(v(t)*i(t))) and divide it by S to obtain the current power factor (PF = P/S). Capacitance Calculation: Once the current power factor is obtained, it would find the current reactive power Q = sqrt(S^2 - P^2). Then we find our desired apparent power by dividing the real power by our desired PF target of 0.95. Using the target apparent power, it calculates the target reactive power which is used to find the required capacitance value. We would implement a lower bound for the PF (~0.92) to prevent oscillation and rapid capacitor switching. - Components: Microcontroller (like STM32) Software for real-time sampling and computation ## Subsystem 3: Capacitive Switching This subsystem dynamically connects or disconnects capacitors to correct reactive power. The switching subsystem will take GPIO outputs from the microcontroller and safely add or remove parallel capacitance to the load to improve the power factor. To safely perform power factor correction, two major considerations must be addressed: zero-cross detection and inrush current. The switching path will be: GPIO Output -> Gate Driver -> Power Triac -> Inrush Resistor -> Capacitor The gate driver isolates the microcontroller from the AC portion of the circuit and provides the gate-trigger current needed to turn on the power triac. The power triac acts as a solid-state AC switch, connecting the capacitor to the AC circuit when triggered. The inrush resistor limits the initial current when the capacitor is switched on. We potentially may after a safe delay, have the resistor be bypassed to provide a nearly purely capacitive load in parallel for optimal power factor correction (the bypass is dependent on later calculations if it is not needed we may not implement it). A bleeder resistor is connected in parallel with the capacitor to safely discharge it after the microcontroller determines that the capacitor is no longer needed and switches it off. Components: - Capacitor bank (discrete stages, 1, 2, 4, 8… magnitude to be determined by general load size) - Power TRIACs (STMicroelectronics BTA16-600SW) - Optocoupler-based gate drivers (MOC3023 random-phase optotriac driver) - Inrush-limiting resistor (approximately 10–100 Ω, final value determined through testing) - Inrush resistor bypass switch to short inrush resistor (second TRIAC + MOC3023 driver) - Bleeder resistors (high-value resistors across each capacitor for safe discharge, while having limited effect on PF Correction) Function: - Switch capacitor stages in/out based on controller command - Safely synchronize switching with the AC waveform using zero-cross detection on the sensing subsystem and limit capacitor inrush current during initial connection - Safely discharge disconnected capacitors using bleeder resistors - Use multiple capacitor combinations to provide different levels of reactive power compensation # Criterion For Success For our project to be deemed successful we need to properly integrate all 3 subsystems and be able to demo it. This we be measurable if the following are successful: Accurate Measurements: The system can accurately measure voltage and current AC waveforms The microcontroller can accurately calculate the PF and required capacitance The microcontroller outputs are used to switch capacitive loads and dynamically adjust them. PF correction is seen on output display for user verification. Safe switching operation: Matching 0 crossings and adding hysteresis for safety of in rush Real time operation/Demo: 15V AC can be applied to a variable inductive load(potentiometer and inductor in series), and that load can be changed in real time by changing the resistive value to demonstrate real time PF correction as loads change. # Alternatives Commercial reactive power compensation systems already exist, but they are generally designed for larger installations, often above 75 kVA. Our project targets a smaller scale application, such as individual tenant electrical panels where a large commercial compensation system would not be practical. The prototype is designed as a single-phase system, but the architecture is intended to be scalable. The same sensing, control, and capacitor-switching structure could be applied independently to each phase for split-phase residential systems or 3 phase commercial tenant panels. For the ECE 445 prototype, the system will operate at approximately 15 V AC. This voltage allows the design to demonstrate the same power factor correction concepts while remaining manageable for safe laboratory development using standard bench equipment. |
||||||
| 6 | SMART GLASSES FOR HANDS-FREE DATASHEET RETRIEVAL |
Hridik Hingorani Preity Varanasi Shiv Bahl |
||||
| Team Members: Hridik Hingorani Shiv Bahl Preity Varanasi Problem When working with electronic hardware, engineers frequently need to stop what they are doing to identify a component, search for its datasheet, and locate specific information such as pinouts, voltage limits, timing specifications, or recommended operating conditions. This interrupts the workflow and is particularly inconvenient when the user is soldering, probing a circuit, or otherwise using both hands. Our goal is to reduce this interruption by creating a low-cost wearable system that can identify an electronic component being viewed by the user and automatically retrieve the corresponding datasheet. Solution We propose building a pair of smart glasses containing a camera and a custom embedded PCB. When the user looks at a component and activates the system, the camera will capture an image and send it wirelessly to a laptop. The laptop will use computer vision and OCR to extract identifying information such as the component's part number or package markings. Once the component has been identified, the laptop will locate the appropriate datasheet and process it so that important information can be retrieved quickly. The result will initially be displayed on the laptop. The system is intended primarily for clearly labeled electronic components such as integrated circuits, modules, sensors, and other devices whose identifying markings can be captured by the camera. High-Level System Smart Glasses Camera → Embedded PCB → Wi-Fi Communication ↓ Laptop Image Processing/OCR → Component Identification → Datasheet Retrieval → Datasheet Processing → User Output Hardware We will design a custom PCB mounted on or integrated into the glasses. The PCB will include: ESP32-based microcontroller Camera interface Wireless communication User input for triggering image capture Power regulation Battery/power management Necessary supporting circuitry The embedded system will be responsible for capturing images, managing the camera, handling user input, and wirelessly transmitting data to the laptop. The glasses themselves will be inexpensive commercially available frames modified to hold our electronics. Software The laptop-side software will: Receive the image from the glasses. Process the image to improve readability of component markings. Use OCR/computer vision to determine the component identifier. Search for and retrieve the correct datasheet. Parse the datasheet and make relevant specifications accessible to the user. Display the component identity, datasheet, and requested information on the laptop. The LLM will only answer questions using information retrieved from the identified component's datasheet rather than relying solely on its existing knowledge. Requirements For a successful final demonstration, the system should: Capture a usable image from the wearable camera. Wirelessly transfer the image from the glasses to the laptop. Correctly identify a predefined set of clearly marked electronic components. Retrieve the correct datasheet associated with the identified component. Extract and display relevant information from that datasheet. Operate using our custom PCB rather than a standalone commercial development board. Be wearable and operate without a wired connection between the glasses and laptop. We will create a test set of electronic components and quantitatively evaluate component-identification accuracy and end-to-end response time. Stretch Goal Our stretch goal is to make the system fully hands-free after component identification by adding voice interaction. The user would be able to ask questions such as: "What is the maximum supply voltage?" "What does pin 4 do?" "What value capacitor does the manufacturer recommend here?" The system would transcribe the question, search the retrieved datasheet, and provide an answer grounded specifically in that datasheet. Future Work A future version could integrate a small near-eye or AR display into the glasses so that information could be presented directly in the user's field of view. An AR display is not part of the scope of this semester's project. Complexity The project combines several independently testable hardware and software subsystems: Custom wearable PCB design Camera interfacing Battery and power-management circuitry Wireless embedded communication Image processing OCR/component identification Automated datasheet retrieval Datasheet parsing and information extraction Integration between the embedded hardware and laptop software A major technical challenge will be reliably extracting part markings from small electronic components under different viewing angles, distances, orientations, and lighting conditions. Uniqueness Existing smart glasses and visual assistants are generally designed for broad image recognition or general-purpose AI assistance. Our project is specifically designed around electronics work. Instead of simply describing what the camera sees, the system will identify a specific electronic component, locate its technical documentation, and provide information grounded in the manufacturer's datasheet. The project therefore combines a purpose-built wearable embedded platform with a specialized datasheet retrieval and processing pipeline. Scope The core project will focus on labeled electronic components and laptop-based output. We will not attempt to recognize every possible component or construct an AR display during this semester. Restricting the identification problem to a controlled but varied set of components allows us to quantitatively evaluate the system while still addressing the major technical challenges of wearable image acquisition, wireless communication, component identification, datasheet retrieval, and system integration. |
||||||
| 7 | Adaptive Light-Filtering Glasses |
Jahnavi Thejo Prakash Kewal Ghosalkar |
||||
| # Team Members: - Kewal Ghosalkar (kewalkg2) - Jahnavi Thejo Prakash (jahnavi7) # Problem People around the world struggle with photosensitive epilepsy, migraines, TBI, and other such photosensitive medical conditions that increase sensitivity to light. Intense flickering lights can worsen sensitivity and in some cases also lead to convulsions and seizures. Current solutions include remedies like avoiding triggers, or using tinted glasses. In unfamiliar situations, these passive solutions can prove to be unreliable since they cannot update dynamically. # Solution We propose adaptive smart glasses that can detect lighting conditions that may trigger such photosensitive conditions and adapt the tint on the lenses accordingly. The glasses can also provide warnings and possibly contain a system to detect seizures. # Solution Components ## Optical Attenuation Subsystem - LCD light valve attached to the lenses of the glasses. These can darken proportionally to the perceived level of risk. ## Sensor Subsystem - Set of 3 photodiodes for detecting the intensity of incoming light. - Wide FOV photodiode placed in the front for measuring ambient light brightness - Narrow FOV photodiode placed in front to measure light incident on the users eyes - Feedback photodiode placed behind the lenses to measure the actual light exposure on the user's eye. This provides feedback for a closed feedback loop to make adjustments based on the attenuation of the LCD light valve on the lenses. - Transimpedance amplifiers for each of the 3 photodiodes in the sensor subsystem to utilize the full range of the ADC ## Processing Subsystem - STM32L series microcontroller, with an internal ADC sampling rate of 1000 Hz, which is large enough to avoid aliasing within the Epilepsy ranges of 3-60Hz - Signal processing will first estimate and remove average brightness or DC component from each signal in the amplifier results. A band-pass filter will remove slower flicker changes caused by movements and noise. An FFT & modulation depth measurements will determine the frequency and strength of the dominating flicker. - Similarity flicker frequency checks will run for the two forward facing photodiodes over several sampling windows. If risk is detected, the lens will become more attenuated and adjustments will be made based off of the flicker magnitude on the behind-lens sensor with a close loop feedback system. ## Power Subsystem - Single LiPo to power the entire system. - Boost converter to step up 3.7V of the LiPo to 5V for the Light valve. - 3.3V LDO for the STM32, photodiodes and amplifiers. - USB C charging. - The Power subsystem will live on a separate hip mounted pack out of concerns for weight, space and safety. # Criterion For Success - Our solution can be considered successful if the glasses can: - Accurately detect epilepsy triggering frequencies around 3 to 60Hz with an accuracy of at least 80% - Accurately reject non-hazardous changes in light caused my sudden movements or environment changes with a false positive rate of less than 10% - Assign a replicable risk score to each situation and activate the optical attenuation system within 0.5s of hazardous inputs - Have a reasonable battery life for daily use of around >8 hours on a single charge. # Alternatives A paper titled “EpilepSee” from 2024 attempts to build a device very similar to ours, however there are a few improvements we are trying to make: - The sampling frequency in the paper was limited to 40Hz which can lead to aliasing at flicker frequencies above 20Hz leading to faults in signal processing. We plan on using a much higher sampling frequency at around 1 kHz to avoid aliasing. - The paper is measuring light inputs using a single sensor, we want to use multiple sensors to provide more data for signal processing. - The device in the paper is a prototype and is not very portable. We are attempting to make our design more portable, hence more comfortable for use. - The paper uses an open loop design. We are going to use a closed loop design which should allow for more precise attenuation The response time for the device in the paper is 1-1.5s, we plan on having a much faster response time of <0.5s # Extensions - The ability for the users to input the exact frequencies they are susceptible to. This can be done through Bluetooth or with an extra serial debugger module to input this data. - An IMU can monitor for seizure-like body movements and trigger a safety response, alerting the user’s emergency contact. - A display that provides a warning before any optical attenuation takes place and allows users the option for manual overriding. # Links - [EpilepSee Paper](https://ora.ox.ac.uk/objects/uuid%3Aabb3258d-264e-42e0-8967-40408397f96f/files/scj82k980j) - [Small Liquid Crystal Light Valve – The Pi Hut](https://thepihut.com/products/small-liquid-crystal-light-valve-controllable-shutter-glass) |
||||||
| 8 | Accurate Pick and Place Arm |
Ian Chan Michael Talapin Nithin Durgam |
||||
| # Accurate Pick And Place Robotic Arm Team Members: - ndurgam2 (Nithin Durgam) - ianchan2 (Ian Chan) - talapin2 (Michael Talapin) # Problem With the rapid growth of automation, robotic arms are becoming increasingly common in manufacturing facilities, research laboratories, and other environments that require precise and repeatable manipulation. Our goal is to design and build an accurate pick-and-place robotic arm and demonstrate its capabilities using a chessboard. A chessboard provides a challenging and intuitive test of the system’s precision. To reliably pick up and place individual chess pieces without disturbing the surrounding pieces, the arm’s end-effector must achieve approximately 1 mm of positional accuracy. Reaching this level of precision requires every part of the system (mechanical design, electrical components, computer vision pipeline, kinematics, and control algorithms) to work together accurately and consistently. Our primary demonstration will allow a user to select any chess piece or position on the board and specify a destination. The robotic arm will then identify the requested location, pick up the piece, and place it at the desired position while avoiding interference with nearby pieces. If time permits, we would like to extend the project by allowing the robotic arm to autonomously play a complete game of chess against a human opponent. This would add another layer of complexity by combining the arm’s existing perception and manipulation capabilities with board-state recognition, move planning, and a chess engine. Since accuracy is the goal and not speed, we will follow a 5+10 and 10 + 10 format. # Solution At a high level, our goal is to avoid the complexity and cost associated with traditional multi-joint robotic arms, where every additional degree of freedom requires another motor, sensor, and control system. Instead, we plan to use a simpler and more elegant mechanical architecture designed specifically around the requirements of the task. The arm will consist of two links that provide planar motion across the x-y plane, while the end-effector moves vertically along the z-axis to pick up and place chess pieces. On the electrical side, custom PCBs will integrate sensors such as magnetic encoders and Hall-effect sensors to accurately determine joint position and provide reliable feedback for the control system. The software stack will tie the entire system together. Closed-loop PID controllers will provide precise joint positioning, while a computer vision pipeline will identify chess pieces and determine their locations on the board. These positions will then be converted into robot coordinates and passed through the inverse kinematics system to determine the joint commands required to move the end-effector to the desired location. # Solution Components ## Mechanical Design The mechanical architecture of the robotic arm consists of three actuated joints: Joint 0, Joint 1, and the Z-axis joint. Joint 0 will use a NEMA 34 motor, Joint 1 will use a NEMA 23 motor, and the Z-axis joint will use a NEMA 14 motor. The overall goal of the mechanical subsystem is to provide a rigid, accurate, serviceable, and easily accessible structure while creating enough space for the electrical hardware, sensors, PCBs, and wiring required by the rest of the system. Because the electrical and software subsystems depend heavily on the physical geometry of the robot, mechanical accuracy and repeatability are critical. Joint 0 is located at the base of the arm and provides the first rotational axis. Because this joint must move the combined mass of the remaining arm, end-effector, motors, and payload, it will experience the largest torque requirements and will therefore use a NEMA 34 motor. The base will also contain the primary power distribution hardware for the system. Adequate space should be provided for power distribution, the PCBs, terminal blocks, protection circuitry, connectors, and cable routing. Communication and programming interfaces should also be externally accessible so that a computer can connect to the robot without requiring the enclosure to be opened. An overhead camera mount will extend from the rear of the base and position the camera above the chessboard. This structure must be rigid and accurately positioned because the computer vision system depends on a known transformation between the camera and robot coordinate frames. Movement or misalignment of the camera could introduce errors that propagate through the vision, inverse kinematics, and motion-control systems. The mount should therefore provide a repeatable camera position and allow for calibration when necessary. Joint 1 provides the second rotational axis required for planar x-y motion. This joint will use a NEMA 23 motor and must maintain high structural stiffness while minimizing backlash and mechanical play. The surrounding arm structure must provide enough internal space for encoders, Hall-effect sensors, and wiring. Cable routing should prevent wires from being pinched, excessively bent, or interfering with joint movement. Serviceability is also an important design requirement. Components located around Joint 0 and Joint 1 should be accessible through removable covers or panels so that faulty electronics or sensors can be replaced without significantly disassembling the arm or disturbing its alignment. Bearings should support the primary mechanical loads rather than relying entirely on the motor shafts. The Z-axis joint provides vertical motion for the end-effector and will use a NEMA 14 motor. A lead screw, linear rail, or similar mechanism can be used to provide controlled vertical movement while minimizing lateral play. The required travel distance should allow the end-effector to clear the tallest chess piece and safely move across the populated board. The end-effector should also provide some mechanical tolerance for small positioning errors produced elsewhere in the system. A wider capture range, tapered gripping surfaces, or compliant features could help guide slightly misaligned pieces into the gripper. Additional mechanical requirements that should be defined include joint ranges of motion, link lengths, payload capacity, allowable backlash, z-axis travel, mechanical end stops, cable strain relief, motor cooling, bearing selection, and clearly defined mechanical reference points. These specifications will directly affect motor sizing, forward and inverse kinematics, computer vision calibration, and the overall positioning accuracy of the robot. ## Electrical/PCB Design The electrical and PCB subsystem acts as the bridge between the robot’s mechanical hardware and software. Its two primary responsibilities are motor/joint control and power distribution. The overall goal is to provide the software with reliable sensing and communication interfaces while safely distributing power throughout the arm. For motor and joint control the current design will use NEMA 23 stepper motors paired with MKServo57D CAN motor drivers. CAN will serve as the primary communication bus across the robot, allowing the Jetson, custom PCBs, and motor drivers to communicate over a shared network. This reduces wiring complexity and provides a robust communication architecture that can be expanded as additional sensors or joints are added. Each joint will also require accurate position feedback. Magnetic encoders will be incorporated to measure joint position with sufficient resolution for precise end-effector positioning. Hall-effect sensors or limit switches will also provide known mechanical reference positions during startup and calibration. These reference sensors remain useful even when absolute encoders are used because certain encoders, such as the AS5047P, may require a known physical position when establishing or verifying their zero offset. The custom PCB in the arm will interface with these sensors, handle signal conditioning where necessary, and communicate sensor information to the Jetson over CAN. The electrical architecture should also include accessible debugging and programming interfaces to simplify testing and component replacement. The second major responsibility is power distribution. A central power-distribution system located within the base will take power from a single external source, a laboratory power supply, and distribute it to the different voltage domains required throughout the robot. The primary rails are expected to include 24 V for the stepper motors, **5 V for servos (if used) or sensors that require 5v, and 3.3 V for low-voltage sensors and PCB logic. The Jetson will utilize its own wall plug, since it will not be directly located in the arm and will just plug into the CAN interface. A small OLED status display may also be incorporated into the base to display information such as joint states, CAN connectivity, faults, and power status. Alternatively, these diagnostics may be presented through a locally hosted software dashboard. ## Software Subsystem The software subsystem is critical to the overall accuracy, reliability, and robustness of the robotic arm. It can be divided into three primary components: the state machine, the computer vision pipeline, and the joint control system. The goal of this subsystem is to coordinate the complete pick-and-place operation while minimizing positioning error and ensuring that the robot behaves predictably under different operating conditions. The state machine manages the sequence of actions required to move a chess piece. A typical operation begins by identifying the requested piece, either from a user command or, as a stretch goal, from a chess engine. The vision system determines the piece's position, after which inverse kinematics calculates the required Joint 0 and Joint 1 positions. The arm then moves above the piece, lowers the Z-axis end-effector, secures the piece, raises it to a safe clearance height, moves to the destination, lowers and releases the piece, and finally returns to a home position where the camera has an unobstructed view of the board. Each state will contain specific completion conditions and fault checks before transitioning to the next state. This structure keeps the software organized while making debugging and error recovery significantly easier. The computer vision pipeline is responsible for detecting and classifying chess pieces and determining their positions relative to the robot. An overhead camera will capture the chessboard, and a custom vision model will identify each piece and determine its location. Camera calibration and coordinate transformations will then convert image-space measurements into the robot's coordinate frame. If a stereo camera is used, depth information can provide additional distance measurements, although the known geometry of the chessboard may also be used to determine positions. These coordinates will then be passed through the inverse kinematics system to generate target joint positions. If the chess-playing stretch goal is implemented, the detected board state will also be provided to a chess engine, which will determine the desired move and detect game-ending conditions such as checkmate. Finally, the joint control system ensures that each commanded joint reaches and maintains its desired position within an acceptable error tolerance. Closed-loop PID controllers will use encoder feedback to continuously compare commanded and measured joint positions and correct deviations. A startup homing and zeroing procedure using Hall-effect sensors, limit switches, or encoder reference positions will establish a consistent robot coordinate frame each time the system powers on. Together, these components provide the perception, decision-making, and low-level control required for accurate and repeatable pick-and-place operation. # Criterion For Success * Achieve end-effector positioning accuracy within 1 millimeter. * Successfully pick and place chess pieces without collisions. * Correctly identify and localize all chessboard pieces. * Repeat commanded motions consistently across extended operations. * Establish accurate joint zero positions after every startup. * Complete pick-and-place sequences without manual intervention. |
||||||