project_descriptionx

spiritualblurtedΤεχνίτη Νοημοσύνη και Ρομποτική

24 Νοε 2013 (πριν από 3 χρόνια και 10 μήνες)

82 εμφανίσεις







P
ROGRAMMABLE
MIDI

D
RUM
M
ACHINE

P
ROJECT
D
ESCRIPTION

A
UTHOR
:


Mac Gainor

D
ATE
:


December 2, 2012

P
ROFESSOR
:


Thomas Grad
y






























F
UNCTIONAL
D
ESCRIPTION



I
NTRODUCTION

This document represents a functional description for the

design of a programmable MIDI
drum machine.

The drum machine will provide an intuitive interface allowing users to compose
rhythmic patterns along a 16
-
step bar.

The device is intended for real
-
time rhythm compilation and
will offer the ability to save
projects or load and build upon existing projects.

Output from the drum
machine will consist of a standard MIDI signals that can be received by a synthesizer and output to a
speaker.

The MIDI protocol will ensure compatibility with most computer
-
based sy
nthesizing
software.


In addition to programmable rhythmic patterns, input controls will allow the composer to
modify sounds with variable digital filters and effects.

Line
-
in and microphone inputs will provide a
sound source from which individual drum p
ads can be programmed to output different sounds.

An
effects loop will offer audio filtering and effect capabilities.

The final product would provide a user
with an industry compatible rhythmic compilation device.



H
ARDWARE
C
OMPONENTS AND
D
IMENSIONS

Necessary hardware components consist of the following:



High Speed CPU with Digital Signal Processor

(225 MHz Bus Frequency)



AC/DC Power Adapter



4 x 20 Character LCD Display

(2.5” x 1.5”)



9 Piezoelectric Sensors

(1.5” x 1.5”)



4 Potentiometer Dials for Analog Filter/Effect Control



Analog to Digital Converters for Analog Input



Microphone and Line
-
In Jacks

(0.25”)



MIDI Output Connector




9 LED Indicators



4 GPIO Inputs



Wooden Encasement

(10” x 6” x 2”)

Midi Drum Machine Concept
Drawing

Figure 1



Figure 1 illustrates the MIDI Drum machine concept and does not show the power supply, ON/OFF
switch, LCD controls, LED indicators or power switch.

A more complete, scaled drawing is shown in
Figure 6.



DSP/M
ICROCONTROLLER
D
ESCRIPTION

In order to meet the high speed and algorithmic precision demands of digital signal
processing, the MIDI device will contain Texas Instrument’s TMS320C6713 DSK board.

The C6713
contains a powerful floating
-
point C67x DSP core.

The DSK contains two 16
-
bi
t analog to digital
converters which will be used for microphone line
-
in.

An AIC23 Codec used for encoding and
quantizing analog input signals.

A 10
-
input multiplexing ADC and 16 GPIO pins will be interfaced
with LCD display and filter/effect control.

The DSK contains a multiplexer which will receive input
states prior to signal processing.

The C6713 contains 256 KB data cache that can be used for signal
buffers or temporary storage.

512 KB non
-
volatile flash memory will be used in order to store
rhyt
hmic patterns after powering off the device.

The data DSP bus will operate at a frequency of
225 MHz.

An onboard 32
-
bit timer will be utilized for tempo and interrupt control.





Hardware Block Diagram

Figure 2



Figure 2 illustrates a simplified hard
ware flow.

A real
-
time kernel will manage inputs and outputs.




C6713 DSK Functional Block Diagram

Figure 3

Figure was taken from “A Quick Start to Texas Instruments TMS320C6713 DSK”.

The image illustrates the various modules included with TI’s C6713
DSK.

Source:

http://www.ti.com/ww/eu/university/Yeditepe_C6713_DSK_LAB_MANUAL_and_4.pdf



S
OFTWARE
D
ESCRIPTION

Software components will be written entirely with C and assembly programming languages.

Texas Instrument’s Code Composer Studio version 4.1 wil
l be utilized for an integrated
development environment.

TI’s CCS development environment interacts with the C6713 JTAG
hardware module to provide debugging tools such as software breakpoints, graphing tools, and
watch
-
windows that will enhance software d
evelopment.

The MIDI device will contain a few software modules that will work to provide an intuitive
user interface and real
-
time rhythmic interaction.

DSP/BIOS support will allow a real
-
time kernel.

The kernel will be utilized to continuously monitor
system inputs, update LCD display and provide
MIDI output signals.

A timer interrupt will interface with the AIC23 codec for consistent analog
input sampling at a frequency of 96 KHz.

An effect library will be written to provide pass
-
by
-
reference dynamic

filtering and effects.

The effects library will maintain coding standards
promoting sustainable production and library enhancement.



Software Flow Diagram

Figure 4



Figure 4 contains a general software flow that will be programmed into the MIDI Drum M
achine.

A
real
-
time kernel will be utilized to continuously monitor system inputs, update LCD display and
provide MIDI output signals.





P
OWER
R
EGULATION


120V RMS wall outlet will provide power for the MIDI device.

An AC/DC power adapter will
provide
+
-

12V DC regulation with a maximum of 6 Watts of power dissipation.

The power
regulation system will offer voltage rails at 3.3V and 1.2V.

The 3.3V voltage rail can be used to
power the LCD display as well as additional analog circuitry such as LED indi
cators and ADC’s.



Power Regulation

Figure 5

Figure 5 illustrates the power source and regulation system that will be used to power the MIDI
device.

The figure contains maximum voltage supply and current drain specifications.



U
SER
I
NTERFACE


Figure 1 illustrates the general design layout that will be used in order to achieve and
intuitive user interface.

The wood enclosure will house the DSK and provide a layout for user input.

An on/off switch will be added to toggle power to the device.

E
ach drum pad input will have a
corresponding LED that will flash when the pad is struck.

Potentiometer dials will allow the user to
adjust the attributes of signals and effects.

Switches will allow the user to activate or deactivate
filters and effects.

The LCD display will display information about active filters and effects.

Two or
three simple display controls will allow the user to navigate through saved sample files, project files,
and filters/effects.



Scaled Representation of MIDI Drum Machine
UI

Figure 6

Figure 6 illustrates user interface details that are not present in the Figure 1 concept drawing.




MIDI

S
TANDARDS
O
VERVIEW


Musical Instrument Digital Interface (MIDI) is a collection of digital music specifications that
has enabled communic
ation between industry standard electronic devices since 1985.

The MIDI
standard is maintained by the MIDI Manufacturers Association (MMA).

MIDI messages generally
consist of two to three bytes of serial data.

The data holds note on/off commands, pitch
values,
and velocity parameters.

Table 5 contains the MIDI 1.0 message specifications to which the drum
machine will adhere.



D
EVELOPMENT
P
LAN



T
IMELINE


In order to ensure that the final deadline is met, a timeline will be followed.

The project
timeline identifies landmark deliverables and their relative timeframe.




Weekly Project Deadlines



Week

Start Date

Deadline Information

1

12/9/202

-
Place order by necessary components including piezo
-
sensors, multiplexing
ADC, LCD display and input
controls

-
Research IIR filters and onboard function library corresponding to filters

2

12/16/2012

-
Acquire accurate analog input from piezo
-
sensors and filter controls to
c6713 DSP

-
Continue researching variable filters

3

12/23/2012

-
Break

4

12/30/2012

-
Expand filter/effects library to include variable high
-
pass, band
-
pass and
notch filters

5

1/6/2013

-
Finalize filter/effects library standards including pass
-
by
-
reference and
memory allocation specifications

6

1/13/2013

-
Research additional audio effect

algorithms

-
Acquire materials for wooden encasement

7

1/20/2013

-
Expand filter/effects library to include delay and panning capabilities

8

1/27/2013

-
Generate standard MIDI output messages with DSP

-
Acquire MIDI output connector

9

2/3/2013

-
Receive
MIDI messages with standard synthesizer

10

2/10/2013

-
Expand/debug filter/effects library

-
Begin building real
-
time kernel module

11

2/17/2013

-
Complete functional real
-
time kernel

12

2/24/2013

-
Interface analog inputs with real
-
time kernel

13

3/3/2013

-
Complete LCD Interface.

-
Begin building file system for saving and loading audio files

14

3/10/2013

-
Winter Finals

15

3/17/2013

-
Expand filter/effects library

16

3/24/2013

-
Complete wooden encasement

17

3/31/2013

-
Complete file
-
management module

18

4/7/2013

-
Complete user interface

19

4/14/2013

-
Begin software presentation.

Continue system debugging

-
Completely assemble prototype

20

4/21/2013

-
Continue system debugging

21

4/28/2013

-
Complete software presentation

22

5/5/2013

-
Continue software
debugging

23

5/12/2013

-
Code Review

-
Prepare for demonstration

24

5/19/2013

-
Prepare for demonstration

25

5/26/2013

Final Prototype Demonstration

26

6/2/2013

Spring Finals



Table 1

Table 1 contains landmark project deadlines listed on a weekly basis.



Project Timeline Overview

Figure 7

Figure 7 displays a project timeline overview with landmark deliverables and their relative
deadlines.


















N
ECESSARY
R
ESOURCES

Required Hardware Resources



Component

Source

Quantity

TMS320C6713 DSK
board

Texas Instruments

1

AC/DC Power Adapter

Texas Instruments

1

4 x 20 Character LCD Display

Texas Instruments

1

10 Input ADC Multiplexer

Texas Instruments

1

Piezoelectric Sensors

DigiKey Corporation

9

Potentiometer Dials

DigiKey Corporation

4

Microphone

DigiKey Corporation

1

MIDI Output Connector

DigiKey Corporation

1

LED

DigiKey Corporation

9

Push Button

DigiKey Corporation

4

On/Off Switch

DigiKey Corporation

1

Wood & Enclosure Materials

Home Depot

1

Table 2

Table 2 contains hardware
components required to build the MIDI Drum Machine prototype.



Required Development Resources



Software Development Tool

Source

CCS v4.1 IDE

Texas Instruments

Oscilloscope with Probes

WWU Electronics Lab

Function Generator

WWU Electronics Lab

Table 3

Table 3 contains tools required while developing the MIDI Drum Machine prototype.



D
EMONSTRATION
P
ROTOTYPE

The prototyped model will consist of a standalone unit bound by a wooden enclosure.

The
device will be functional for demonstration purposes.

The wooden enclosure will be constructed
using readily available materials from a hardware distributor.

A woode
n enclosure was chosen for a
prototype model to minimize cost and complexity of the design.

Analog and general purpose inputs
will be interfaced to the DSK using a small development board.


During the demonstration, project details will be posted on a po
ster
-
board display.

A laptop
computer will be available to display the project website.

The computer will also be available to
display midi output signals obtained from the drum machine.

Signals can be recorded and
displayed using open
-
source music sequ
encer software such as BRELS Midi Editor or
PianoRollComposer.

The project lab notebook will also be available to provide additional project
details and documentation.







E
LECTRICAL
S
PECIFICATIONS



P
ROJECT
S
PECIFICATIONS

The MIDI Drum Machine prototy
pe will be developed to adhere to the following electrical
specifications.

Specifications were obtained from datasheets corresponding to the required
hardware components.

Consideration of each component’s electrical specifications is critical for
constru
cting a functional prototype.



Electrical Specifications



TMS320C6713 Attribute

Specification

ADC Sampling Frequency

96 kHz

Detectable Analog Input Frequency (min)

200 Hz

Detectable Analog Input Frequency (max)

25 KHz

Output Latency (max)

10.4 ms

Microphone Input Voltage (max)

400mVp
-
p

Operating Temperature (min)

35° F

Operating Temperature (max)

105° F



Table 4

Table 4 contains relevant project specifications related to the TMS320C6713 DSK.



MIDI 1.0 Message Specifications



Status
Byte

Data
Bytes

Description

1000nnnn

0kkkkkkk

0vvvvvvv

Note Off event.

This message is sent when a note is released (ended). (kkkkkkk) is the
key (note) number. (vvvvvvv) is the velocity.

1001nnnn

0kkkkkkk

0vvvvvvv

Note On event.

This message is sent when a note

is depressed (start). (kkkkkkk) is the
key (note) number. (vvvvvvv) is the velocity.

1010nnnn

0kkkkkkk

0vvvvvvv

Polyphonic Key Pressure (Aftertouch).

This message is most often sent by pressing down on the key after it
"bottoms out". (kkkkkkk) is the
key (note) number. (vvvvvvv) is the
pressure value.

1011nnnn

0ccccccc

0vvvvvvv

Control Change.

This message is sent when a controller value changes. Controllers
include devices such as pedals and levers. Controller numbers 120
-
127 are reserved as
"Channel Mode Messages" (below). (ccccccc) is
the controller number (0
-
119). (vvvvvvv) is the controller value (0
-
127).

1100nnnn

0ppppppp

Program Change. This message sent when the patch number changes.
(ppppppp) is the new program number.

1101nnnn

0vvvv
vvv

Channel Pressure (After
-
touch). This message is most often sent by
pressing down on the key after it "bottoms out". This message is
different from polyphonic after
-
touch. Use this message to send the
single greatest pressure value (of all the current d
epressed keys).
(vvvvvvv) is the pressure value.

1110nnnn

0lllllll

0mmmmmmm

Pitch Wheel Change. 0mmmmmmm This message is sent to indicate a
change in the pitch wheel. The pitch wheel is measured by a fourteen
bit value. Center (no pitch change) is 2000H.
Sensitivity is a function
of the transmitter. (llllll) are the least significant 7 bits. (mmmmmm)
are the most significant 7 bits.



Table 5

Table 5 contains the MIDI 1.0 specifications to which the drum machine will adhere.

Data contained in Table5 as we
ll as additional MIDI standards information is located at MMA’s
website: http://www.midi.org/techspecs/index.php or
http://www.midi.org/techspecs/midimessages.php.



Power Requirements



Component

Supply Voltage (V)

Max Current Drain (A)

Max Power
Dissipation (W)

DSP Core

1.8

1

1.8

DSP I/O

3.3

150m

495m

ADC Multiplexer

3.3

Negligible

Negligible

12V to 3.3V Regulator

12

26μ

0.3m

LED Indicators (9)

2

15m

9 x 300m

LCD Display

3.3

50m

165m





TOTAL:

5.46



Table 6

Table 6 contains maximum
system power consumption specifications.

The functional prototype will
dissipate a maximum of 5.46 Watts
.




P
ROJECTED
P
ARTS
L
IST


Preliminary Parts List



Component

Distributor

Lead Time

Cost/Unit
($)

Quantity

Total Cost
($)

TMS320C6713 DSK

(includes
AC/DC Adapter)

Texas Instruments

2 weeks

200.00

1

200.00

4 x 20 Character LCD
Display

Texas Instruments

10 days

10.00

1

10.00

ADC Multiplexer

Texas Instruments

Immediate

1.99

1

1.99

Piezoelectric Sensors

DigiKey
Corporation

1 week

1.75

9

15.75

Potentiometer Dials

DigiKey
Corporation

Immediate

1.89

4

7.56

Microphone

DigiKey
Corporation

Immediate

6.00

1

6.00

MIDI Output Connector

DigiKey
1 week

7.00

1

7.00

Corporation

LED

DigiKey
Corporation

Immediate

0.65

9

5.85

Push Button

DigiKey

Corporation

Immediate

0.89

4

3.56

On/Off Switch

DigiKey
Corporation

Immediate

1.25

1

1.25

Wood & Enclosure
Materials

Home Depot

Immediate

15.00

1

15.00









TOTAL:

273.96



Table 7

Table 7 contains the preliminary parts list.

The table includes
components, distributor, lead time,
component quantities, and costs.

The total estimated cost of materials required to build the drum
machine prototype is $273.96.


























END OF DOCUMENT