Project

# Title Team Members TA Documents Sponsor
66 Self-playing Programmable Chromatic Harmonica
David Zhang
Robert Zhu
Sean Jasin
Wenjing Song design_document2.pdf
final_paper1.pdf
presentation1.pdf
proposal1.pdf
video
# Team Members:
-Sean Jasin (sjasi3@illinois.edu)

-Robert Zhu (robertz4@illinois.edu)

-David Zhang (dzhan6@illinois.edu)

# Problem:
The harmonica is a versatile, simple, yet technically difficult instrument to play. There is a need for the background music of a live instrument, yet it is difficult to master the harmonica. Some lack the time to practice and learn the harmonica. For others, they may no longer be able to physically play the harmonica, or do not have access to training or musical education. Existing musical devices exist for keyboard and string instruments, but not for wind instruments. There is a need for a self-playing harmonica that can produce melodies without requiring manual lip or breath control.

# Solution:
The solution is a device that is able to play the harmonica. The self playing harmonica consists of multiple subsystems. The power supply provides power at all required voltages for the MCU, air pumps, and electronic pneumatic valves. The harmonica-computer interface connects to both the harmonica and the MCU, and is responsible for controlling the flow of air through the harmonica. It consists of pneumatic tubes, air pumps, and electronic valves. The MCU is responsible for controlling the pumps and valves in the harmonica-computer interface, as well as taking a MIDI file and converting it into a sequence of pump and valve motions. Lastly, songs are uploaded to the MCU through WiFi. We will create a website where the user can upload a MIDI file and that file is then available to play on the device.

# Subsystems:

Power supply

Motor driver

MCU

Harmonica-computer interface

Website for uploading MIDI files

## Power supply (located on the pcb)
The power supply must be capable of supplying 3.3V, and 12V power to the device. The 3.3V power supply is for the MCU and the 12V power supply is used by the pneumatic valves. We will utilize an AL-12100 12V 120W power supply that plugs into a wall outlet. We will then convert the 12 power supply into the signal voltage, 3.3V, on the PCB.

## Motor driver (located on the pcb)
The motor driver will allow the ESP32 to control the DC motor because the output of the GPIO on the MCU cannot provide enough power (GPIO 3V3 @ low current, motor needs 12V). The output of the motor driver will be a 12V PWM signal.

## MCU
For the MCU, we will use an ESP32 for its WiFi capabilities. The MCU has 2 functions: mechanical control and MIDI upload. The mechanical control will take MIDI inputs and play the respective note on the harmonica. This will be controlled by several valves which will allow us to control the airflow into the harmonica.

## Harmonica-Computer Interface

Harmonica:
The harmonica that we will be using for the project will be a Conjurer-brand 10-hole chromatic harmonica. This harmonica was chosen due to its budget-friendliness, as well as its ability to play semitones without the requirement of “bending”, when one uses their tongue to play semitones.

Air pump:
We will use a Mini 555 Dongguang air pump to supply a constant and variable air flow. The airflow will be changed to control for volume, with a maximum of 15 LFM or 0.53 CFM. This should allow us to be able to play 10 notes simultaneously. The airflow of the output will be determined by PWM duty cycle, which will allow us to control the volume of the harmonica. The static pressure requirement of the pump is inconsequential, as harmonicas do not require significant air pressure to play.

Electronic valves:
The electronic valves will consist of 10 Laccimo 2V025-1/4 12V solenoid valves and one Airtac 4V110-08F 5/2 12V solenoid valve. This will allow air input and output from each hole of the harmonica, as well as switching action between blowing air and sucking air.

High-Torque Servo:
To operate the slider, a high-torque servo will be used. The DS3218MG has a sufficient control angle and has enough force (20kg) to operate the lever at a fast speed and in a precise manner.

## Website
Using the ESP32’s WiFi capabilities, the MCU will host a mini server on which a user can upload MIDI files. These MIDI files can then be processed by the MCU to be played by the harmonica.

# Criterion for Success:
The success of this project will be based upon these criteria:

Must be able to blow in and suck out air of all holes in a chromatic harmonica

Must be able to achieve the full range of airflow from 100 to 400 LFM. (equivalent to 0.009 CFM to 0.025 CFM given a 4mm x 10mm sized opening).

Ability to engage and disengage the slide of a chromatic harmonica.

Dynamics/volume control of each played note is accurate and successful.

A .MIDI file is able to be uploaded to the website of the self-playing harmonica system.

A .MIDI file is able to be transmitted to the MCU via WiFi and performed accurately by the self-playing harmonica system.

The system must be robust enough to play for 10 minutes continuously.

Digitizing the Restaurant with Network-Enabled Smart Tables

Andrew Chen, Eric Ong, Can Zhou

Featured Project

# Students

Andrew Chen - andrew6

Eric Ong - eong3

Can Zhou - czhou34

# Problem:

The restaurant industry relies on relatively archaic methods of management and customer service. Internal restaurant computer systems are limited and rely on staff members to monitor customer status. Restaurants lack contact-free transactions for clientele.

# Solution Overview:

Our solution to this problem is to develop a standalone LAN restaurant network system to manage customer status and occupancy for restaurants without the need for personnel to monitor it manually. Along with this, to accommodate for contact-free interactions, we propose a system for payment methods. To address customer preferences, we will provide height accommodation built into the table for different types of people.

# Solution Components:

[Self-adjusting Customer Height Accommodation] - The table will be held up with a linear actuator, thus allowing for the overall height to be adjustable. The table will adjust its height accordingly to the customers’ heights once they sit down. We plan to make the table adjust the table’s height by measuring the distance between the bottom of the table with the customer’s knees when they are sitting down using ultrasonic sensors.

[NFC Payment and Card Reader Payment] - The table will have NFC reader and magstripe reader for contactless delivery. The payment data will be sent to the centralized hub for processing and confirmation.

[Table Pressure Sensor] - The status of a table will be gauged based on the amount of weight on the physical table itself. An occupied (or even just an unoccupied and dirty table) will be marked as such since the weight of excess food, water, plates, and whatever else the customer may bring will be measured by this pressure sensor.

[Computer Mesh Network] - We plan to create a mesh network of raspberry pi’s to track the status of tables in a restaurant. This network will communicate via some form of wireless communication (Wi-FI, bluetooth, or Zigbee).

# Criterion for Success:

This project seeks to create a solution in which restaurants can minimize customer interaction with features that accommodate individual needs, such as the height of the table and payment methods. This project will be considered successful with a working prototype that includes features that may be included in an actual restaurant setting.

Project Videos