Your SlideShare is downloading. ×
Ultrasonic touch guitar   nxt
Ultrasonic touch guitar   nxt
Ultrasonic touch guitar   nxt
Ultrasonic touch guitar   nxt
Ultrasonic touch guitar   nxt
Ultrasonic touch guitar   nxt
Ultrasonic touch guitar   nxt
Ultrasonic touch guitar   nxt
Ultrasonic touch guitar   nxt
Ultrasonic touch guitar   nxt
Ultrasonic touch guitar   nxt
Ultrasonic touch guitar   nxt
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Ultrasonic touch guitar nxt

400

Published on

NXT G Programing for a Ultra Sonic Touch Guitar ! Wonderful Program....

NXT G Programing for a Ultra Sonic Touch Guitar ! Wonderful Program....

Published in: Business, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
400
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Ultrasonic Touch Guitar ‐ NXT  Overview  Challenge   Using one ultrasonic sensor, two touch sensors, and the NXT buttons, build and  program a guitar with an NXT brick as its base element. Use the touch sensors to  raise and lower the sound one octave each, use the buttons on the NXT to  control the emission of sounds, and let the ultrasonic sensor control the pitch of  the sound created.  Age Range    15‐18  Topics    Buttons   Touch Sensors   Ultrasonic Sensors  Subjects   Math & Science  Music  Programming Themes    Logic   Mathematical Manipulation of Data   Loops   Switches, Nested Switches  Related Math & Science Concepts    Ultrasound   Sound Waves       
  • 2. Building and Programming  Materials   • NXT brick  • Touch Sensors x 2  • Ultrasonic Sensor  • NXT Ultrasonic Touch Guitar (see Ultrasonic_Touch_Guitar_Instructions.pdf)  Building Instructions   1. Build an Ultrasonic Touch Guitar   (See Ultrasonic_Touch_Guitar_Instructions.pdf)  2. Connect one touch sensor each to ports 1 and 4 of an NXT brick.  3. Connect one ultrasonic sensor to port 2 of the NXT brick.                              
  • 3. Programming Instructions   Using Mindstorms NXT‐G, program the guitar to play notes when the NXT brick’s  buttons are pressed (left, right, and enter, in any combination). The pitch of the note  emitted will be determined using the distance from the ultrasonic sensor to a  moving barrier on the fretboard of the guitar. This pitch can be shifted up an octave  (twice the frequency of the original note) by pressing one touch sensor, and down  an octave (half the frequency of the original note) by pressing the other touch  sensor.    1. Start with an infinite loop with a switch inside, set to be controlled by logic. Place  a “Sound” block on the switch’s false, or lower, path, set to stop all sound.                   
  • 4. 2. Add an “NXT Buttons” block, set to the Left button, when pressed. Add another  “NXT Buttons” block, set to Enter button, when pressed. Add a “Logic” block set  to Or, and wire in the true/false output of both “NXT Buttons” blocks to inputs A  and B of the logic block.     3. Insert a third “NXT Buttons” block after the logic block you just added. Set this  “NXT Buttons” block to the Right button, when pressed. Add another “Logic”  block after this “NXT Buttons” block, set to Or. Wire in the true/false output  from the Right button “NXT Buttons” block to input A on the “Logic” block. Wire  the result from the first “Logic” block to input B of the second “Logic” block.  Then, wire the result from the second “Logic” block to the switch’s input.    
  • 5. 4. On the switch’s true, or upper, beam, add a “Touch Sensor” block set to port 1,  when pushed. Add a second “Touch Sensor” block set to port 4, when pushed.  Add a “Logic” block set to Xor. Wire the true/false outputs of both “Touch  Sensor” blocks to inputs A and B of the Xor “Logic” block.                      
  • 6. 5. Add a logic switch after the Xor “Logic” block. This is the first nested switch. Wire  the result of the Xor “Logic” block to the nested switch’s input. On the nested  switch’s false, or lower, path, add an “Ultrasonic Sensor” block, set to port 2.,  with distance units of centimeters. Add a “Math” block, set to Multiplication  with value A = 160. Wire the distance output from the “Ultrasonic” block to input  B of the “Math” block. Add a “Sound” block after the “Math” block, set to play a  Tone, volume 75, for 0.5 seconds, with the Wait for Completion box unchecked.                
  • 7. 6. On the first nested switch’s true, or upper, path, place a touch sensor switch,  port 1, when pressed. This is the second nested switch. On the second nested  switch’s false path, place an “Ultrasonic Sensor” block, set to port 2, distance  measured in centimeters. Add a “Math” block, set to Multiplication, value A =  160. Wire the distance output of the “Ultrasonic Sensor” block to input B of the  “Math” block. Add another “Math” block, set to Multiplication, value B = 2. Wire  in the result of the first “Math” block to input A of the second “Math” block. (You  could combine the math blocks to one single block with a set input of 320, but  for clarity, the blocks were left separate.) Add a “Sound” block, set to play a tone  for 0.5 seconds, volume 75, with Wait for Completion unchecked.               
  • 8. 7. On the second nested switch’s true path, place an “Ultrasonic Sensor” block, set  to port 2, distance measured in centimeters. Add a “Math” block, set to  Multiplication, value A = 160. Wire the distance output of the “Ultrasonic  Sensor” block to input B of the “Math” block. Add another “Math” block, set to  Division, value B = 2. Wire in the result of the first “Math” block to input A of the  second “Math” block. (You could combine the math blocks to one single block  with a set input of 80, but for clarity, the blocks were left separate.) Add a  “Sound” block, set to play a tone for 0.5 seconds, volume 75, with Wait for  Completion unchecked.                   
  • 9. The final, overall schematic of the program is given below, for coherence:            
  • 10. In Action   Set up the instrument by holding the NXT brick in your left hand (or strumming guitar hand – if you’re left‐handed, you may wish to use your right hand for this part) and holding the moving platform on the “fretboard” in your other hand. Hold the moving platform with your fingers curled over the touch sensors for better control.  To play the instrument, sounds are triggered when one or more of the Left, Right, or Enter buttons on the NXT brick are pressed with the strumming hand. The pitch output by the instrument can be controlled by sliding the moving platform with the fretting hand up and down the “fretboard”. The buttons on the moving platform can be pressed and held, one at a time, to increase or decrease the pitch by an octave (a factor of 2), depending on which button is pressed. If both buttons are pressed, the net change in pitch is zero (since any number n x 2 / 2 = n, the original pitch generated).  For more variety, change the values in the “Math” blocks and change the duration of the sound in the playing “Sound” block. See if the sound can become smoother or more “stepped” sounding (i.e. there is a lot of “zipper noise” due to the quantization of pitch values and therefore the sound does not seem smooth to the ear). Change the octave buttons to increase or decrease by 2 octaves at a time (pitch value x 4 or pitch value / 4), or even allow for increase in octave by bumping a touch switch repeatedly (one bump up = pitch x 2, or 1 octave up; two bumps up = pitch x 4, or 2 octaves up, etc).  Resources/Help  Related Activities   • Ultrasonic Theremin  • Music Box  • LEGO RCX Piano  Building & Programming References   • The NXT  • Ultrasonic_Touch_Guitar.rbt  Knowledge Base   • What are some possible uses for the NXT touch sensor? How do I program it with  NXT‐G?  • What is the NXT‐G switch block for?  • How do I create a loop in NXT‐G so that I can repeat one sequence of events over  and over?  • Why would I need to use logic inputs and outputs in NXT‐G? What is an example  of a program that uses logic inputs and outputs? 
  • 11. Classroom Management  Procedure    1. Begin the lesson with a description of how ultrasonic and touch sensing works.  An introductory approach might be to explain that touch sensing with the NXT  sensor works based on whether or not the button is pressed, outputting a logical  0 or 1 depending on state (in NXT‐G, the true state is selected with radio buttons  on the “Touch Sensor” block – either when pressed, released, or bumped).  Ultrasonic sensing can be likened to the echolocating ability of bats and  submarines, merely a propogation of a waveform that is then reflected back to  the source. The time between the emission of the wave and its return yields the  distance. More advanced classes can be taught the electronics of resistors and  the physics of ultrasound – basically, that velocity of the wave emitted multiplied  by the time it took to reflect, when divided in half, yields the distance the object  is from the source:    [ velocity (m/s) × time elapsed (s) ] ÷ 2 = distance (m) to reflective surface    Electronic instruments, especially the electric guitar and bass, can also be  included in this introductory period, with the potential addition of how the  electronics in these instruments work. This is especially helpful for teaching  electromagnetic theory using various types of pickups in a guitar or bass as  examples. Perhaps a good activity to complete beforehand, or at the start of this  explanation, would be to build and describe the workings of en electromagnet,  as the pickups in an electric guitar or bass work essentially as reverse  electromagnets.    2. Each student or group of students should have an NXT brick with all parts  necessary to create an ultrasonic touch guitar as detailed in this course pack, as  well as two touch sensors, an ultrasonic sensor, and three connecting cords.    3. Each student or group of students should construct the ultrasonic touch guitar,  attach one touch sensor each to ports 1 and 4 of the NXT brick, and attach the  ultrasonic sensor to port 2 of the NXT brick.   4. Have each student or group of students program their NXT bricks either using  the instructions, or on their own if they are ready for the challenge.  (Alternatively, the NXT bricks can be pre‐loaded with the Ultrasonic Touch Guitar  program to save time, if programming equipment is not readily available, or to  accommodate younger classes.)   5. Have students experiment with the instrument, making changes to the program  as they go if possible. 
  • 12. 6. Collaborate as a class and compile a list of changes that might be helpful to the  program, changing the qualities of the sound emitted. For example, how can the  instrument be programmed to play only in musical half‐steps, whole steps, or  octaves? How can the smoothest sound gradient be obtained when moving the  platform across the “fretboard”? Does changing the surface of the moving  platform facing the ultrasonic sensor, perhaps by attaching paper, plastic, wood,  or metal, create more control over the pitch of the instrument? Is it easier to use  a hand in front of the ultrasonic sensor than to use the moving platform?    7. Try out some ideas if the class is motivated and able to, or wrap up by talking  about the activity and additional uses of ultrasonic‐ and touch‐sensing systems.  Electronic instruments and their design and usage can also be discussed and  explored further. Additional musical instrument‐building sessions can be held as  a means of progressive learning.  Worksheets & Handouts   1. Ultrasonic Touch Guitar Building Instructions  [Ultrasonic_Touch_Guitar_Instructions.pdf] 

×