2015-16 PHYS 2P32 Final Projects
Final presentations, Wednesday, April 13, 9:30-15:00, in H300
All students are expected to attend all presentations. Click on to see the abstracts of presentations.
-
9:30-10:00 Gabrielle gd13vz
A Self-Calibrating Flow Meter by Gabrielle Di Bacco
A self-calibrating microprocessor-based flow meter performs two measurements of the flow-rate of water, an instantaneous one using a rotating paddle wheel and an average one using a periodically-self-emptying measuring volume. The average measurement is used to periodically re-calibrate for the instantaneous measurement sensor. The design is based on the standard PiCLab board used in PHYS 2P32.
At one end of a plastic tank, water is introduced through an input tube. The water entering the tank turns a water wheel attached to an incremental optical rotary encoder. The number of rotations of the wheel are a direct measure of the instantaneous flow-rate. The water exits the tank through a syphon tube that empties the tank completely when the level reaches a pre-determined height, triggering an optical beam interrupt. The total volume is known and the time between interrupts is measured, providing a reliable calibrated average flow rate reading. This is used to calibrate a translation between the pulse count from the incremental rotary encoder and the displayed instantaneous flow rate. The display alternates between the two readings. The calibration data is stored in EEPPROM and is maintained through the power-cycling of the PiCLab board.
- 10:00-10:30 Thomas th15hf
PIN lock by Thomas Henrion
This project is a PIN lock, based on the PiCLab board.
The code is entered with a usual keyboard composed of twelve keys, and a message is displayed on an LCD display, which replaces the 7-segment LEDs. The user enters a new code at first, then unlocks and relocks using the correct PIN right code. Entering a wrong code will reset the input. After too many wrong codes are entered, the device disables the input for a certain amount of time. A keypad taken from an old phone is used as a digital input device to complement the five buttons Cavailable on the standard PiCLab board.
- 10:30-11:00 Ashley am12px
Chaos Driven Nonlinear Oscillator, by Ashley Mazurkiewicz
The laws of motion are used to describe motions of systems and how they interact. In a predictable dynamical system the state of the system at one moment determines the state of the system in the following moment. When a condition changes that alters the sensitivity of the system, the system can become unpredictable- chaotic. The purpose of this project is to observe the chaotic behaviour of a driven nonlinear oscillator. The chaotic motion is expected to appear as a pause at various moments and stick randomly to one side of the oscillation before continuing its motion.
The system is in a vertical orientation and consists of a point mass attached to a rotating disc with an absolute optical encoder. A string with two springs attached at either end is placed on the disc. One end of the string is driven by an actuator at various frequencies and the other end is fixed. Due to the extra gravitational force from the point mass, nonlinearity occurs. The absolute optical encoder will measure the values of the angular position of the disc. The PIC board is attached to the encoder which will then send the data to a computer for further analysis to obtain angular velocity. A phase diagram of angular velocity versus angle can be plotted to observe the chaotic motion of the system.
- 11:00-11:30 Caio cr15pe
Microscope image analyzer, by Caio Rondon Botelho de Carvalho
The idea behind this project is to help researches that make use of microscope as their working tool. To do so, this microscope image analyzer project will try to implement a combination of software and hardware capable of automate some of the manual labor behind microscope image analysis. The first part to be implemented will be the controller; this element will use the PIC with two optical driven knobs and some push-buttons attached. The second part of this project aim to implement a software capable of measure elements in a frame (size, angle, etc) captured by a live stream fed by a microscope or a locally stored video. With the controller, the user can then control the software by rotating the grid, changing the width of a variable size grid and then perform some measurements. Timing permitting, some of this calculations will be also performed by the software through image processing.
- 11:30-12:00 Alex as12yq
Self-Regulated Greenhouse, by Alex Schnurr
The purpose of this project is to create a scale model of a self-regulating greenhouse. The regulation of both internal temperature and water disruption will be controlled by the rear mounted pic board that has been programmed to maintain specific conditions. The implementation of this system to an actual size greenhouse will allow the people that own it to have less daily duties, which is cost affective in the greater picture.
The internal temperature will be monitored by a temperature sensor that has been mounted on one of the supporting beams. When the temperature inside reaches a preset temperature the pic board will turn on a fan that pushes cool, external air inwards lowering the temperature. In the case that the external air temperature is greater than the internal air temperate a second internal sensor that set higher than the first will turn off the fan. This is a fail safe to overheating which could potentially be harmful to plant life.
The watering system is ceiling mounted with 3 head that will disrupt water in a 360-degree area. This system will be controlled by a clock cycle that will only turn the external water pump on after a preset number of minutes/ hours. This system will over water the plant every time it turns on but with the use of an irrigation system this will not cause harm to the plant. The temperature of the water used will be negligible due to the fact that it will be at room temperature and the plant has internal systems to combat warmer water if temperatures are higher.
- 12:00-13:00 Lunch
- 13:00-13:30 Danielle ds13fn
Electrical Keyboard, by Danielle Safieh
The purpose of this project is to create a simple electronic keyboard that one can play music on. The keyboard I will be making will be 1 octave, allowing me to be able to play a simple song on the paper keyboard. In order to do this, I will be using an Arduino board and a midi transmitter to transfer the signals from the keyboard onto the computer. To ensure that the signals get read properly, I will need to download Midi computer software and develop a code system that can read the signals from the keyboard. Since the keyboard will have 1 octave, the software code will need to be programed to interpret 12 different signals (i.e. 12 different notes). The keyboard that I will be making will have to be drawn and coloured in using pencil. This is because pencils are made of graphite, which allow them to conduct electricity.
A potential problem that could arise when constructing my device is that the Midi program may not be compatible with my computer, as well as storing the output from the circuit. Another potential problem is that the graphite between each key could smudge together, causing inaccurate readings of the circuit. One potential solution for this problem is to use a different material like aluminum foil.
Why Arduino Board? I have chosen to use an Arduino board because the software required to interpret the Arduino is compatible with my computer (Mac), as well as is able to transfer the inputs to MIDI compatible software. The Arduino is capable of reading inputs and transferring them into outputs.
The Keyboard The keyboard will be able to send signals to the Arduino, and then the computer by using capacitive sensing. Given that a human finger has a different dielectric (i.e. material that can transmit electric force with an absence of conduction) than air, the capacitive sensors will be able to detect this. When a person presses on a key (allowing capacitive sensing), the signals being sent to each receiving pin will be delayed, allowing the capacitive sensor to identify this and respond through code. This can be seen in Figure 1.
Software This project will require the use of Max patch in order for the signals from the Arduino to be converted to MIDI. The second software that is required is Arduino sketch. Arduino sketch is vital for this project because it will be able to send MIDI messages through sensing capacitance of the circuit.
Back-up Plan If I notice that the keys are not generating proper signals to the computer, and the project does not seem to be working as planned, I will consider a new project hat I could construct. My back-up plan will be to create a MIDI interpreter. I will do this by using a Pic board and some LEDs that will light up depending on the signals from the MIDI.
PHYS 3P92 students will also present their projects as a part of this project day:
- 13:30-14:15 Doug dh13ez
MIDI controller for the air-horn organ by Doug Hicks
The purpose of this project is to build a device which can interface with a midi
stream and provide feedback via a led interface, and turn on a relay that will activate
a solenoid to play an air horn. There will be several parts to this project, first a midi
decoder, a display that reads from data lines, a data buffer that holds notes until
released, a relay bank that connects to data lines and fires corresponding relays, a
switch to select the midi input from A or B, thus allowing to have a second device
on stand-by should you want to switch, and finally transpose buttons, which allow
the user to shift up or down the note that they are playing, this will be reflected on
the display as well.
- 14:15-15:00 Richard rr13cz
Wireless control of a robotic arm by Richard Roepke
The purpose of this project is to use an existing robotic armature and control system
and develop an wireless connection so that the two systems can be operated independently
of each other. The control system will consist of multiple potentiometers to measure the
angle between several joints in a human arm and this data will be used to control the
robotic armature so that it mirrors the position of the arm being measured and mimics
its movements. Two PIC microcontrollers will be used in this project. One of them will
control the robotic arm and its movements and be powered by a USB connection, while
the other will be powered by a battery and receive input from the control system to send
to the other microcontroller. The wireless connection between the two microcontrollers
will be done using a Bluetooth system. The PIC microcontroller operating the robotic
armature will implement a PID controller to move the joints according to the input it
receives wirelessly from its Bluetooth connection. The PID controller will keep track of
the previous positions of the several joints in the arm, comparing this information to the
desired position of the joint so that it can use a feedback loop for smooth motion between
the current angle of the joint and the desired angle. Any oscillations can could develop
in the arm will be dampened by the PID microcontroller using the same feedback loop,
ensuring that the joints remain still when they reaches their desired positions.
The project will be conducted and tested in three different stages. The first stage will
involve connecting the robotic armature and control system to a single microcontroller
with a wired connection, and the two system will be extensively tested to ensure that they
both are operating as expected. Additionally the PID controller will be implemented at
this stage so that it can be tested with a minimum of other system interfering with its
operation to ensure efficient operation. After the PID controller has been fully tested and
the robotic arm is correctly following the inputs from the control system, then a wireless
connection using Bluetooth modules will be established two microcontrollers. The arm
and control system will be not be included in this stage, so that their operation does not
interfere with the testing of the Bluetooth connection. Once the connection between two
microcontrollers has been fully developed and data is being transmitted reliably from one
micrcontroller to the other, then the two stages of the project will be combined. One
microcontroller will operate the robotic armature with the PID controller developed in
the first stage of the project while the other receives inputs from the control system, with
the two microcontrollers communicating using the Bluetooth connection developed in the
second stage.
The wireless connection between the two microcontrollers will most likely be the largest
source of difficulties while developing this project. The connection must operate effectively
in real time, otherwise the operator will experience a noticeable delay in the response
time of the arm. Additionally a slow wireless connection may result in jerky movement
from the arm, as the PID controller is constantly interrupted from its task so that the
microcontroller may deal with wireless input and output. If this problem occurs then the
algorithm to wirelessly communicate between the two microcontrollers must be improved
or altered to ensure rapid communication so that it does not interfere noticeably with
the operation of the PID controller. Additionally the wireless connection may result in
a loss of data while it is being transferred between the two microcontrollers. If the lost
of data interferes significantly with the correct operation of the arm, then an algorithm
must be developed to check for an compensate for lost inputs. Another source of difficulty
for this project would involve accurately mirroring the motions of the control system with
the robotic arm. The joints of the robotic arm must be monitored to ensure that they
are in the correct positions or are moving to the correct positions so that an operator can
accurately control the entire system. Inaccuracies in the expected position of the joints and
their actual positions will make it difficult to perform tasks with the arm and thus must
be detected and eliminated whenever possible. Additionally the wireless connection could
offer difficulties in accurately controlling the robotic arm, since the control system outputs
10 bits worth of data while the Bluetooth can send only 8 bits of data at once. Thus the
speed at which the system must operate may put a limit on how accurate the motions of
the robotic arm can be, since the input might be needed to be truncated to allow its rapid
communication between the microcontrollers.
|