Author Topic: My robot playing drums  (Read 9062 times)

0 Members and 1 Guest are viewing this topic.

Offline fritslTopic starter

  • Full Member
  • ***
  • Posts: 67
  • Helpful? 0
  • letsmakerobots.com
My robot playing drums
« on: March 21, 2008, 05:15:54 PM »
http://letsmakerobots.com/node/112#robot_em_video

I am just finishing this, and I will post some more video soon with lots of "music".

What it does? Basically:

* Navigate around, collect some data, avoid obstacles, until it
* Finds something "worth playing on" (a single isolated object or a wide flat surface that it can find an angle onto)
* Snakes into place
* Plays some beats on what it have found, and samples this, checking it has a "good sound"
* Based on data collected in the area, and sample just made, then compose a little rhythm, and plays this along with the sample

Why? Well.. I was sitting thinking what I should do for my next robot, what it should do.. Listening to music.. making a rythm with some robot-parts.. Thought; "Hey, I will make a robot that drives around and plays on stuff" :)
 
« Last Edit: March 22, 2008, 04:49:21 PM by fritsl »

Offline fritslTopic starter

  • Full Member
  • ***
  • Posts: 67
  • Helpful? 0
  • letsmakerobots.com
Re: My robot playing drums
« Reply #1 on: March 22, 2008, 02:59:51 PM »
I have made a better video of it now. Can also be seen on

http://video.google.com/videoplay?docid=8393403029360051976
« Last Edit: March 23, 2008, 02:35:40 PM by fritsl »

Offline ed1380

  • Supreme Robot
  • *****
  • Posts: 1,478
  • Helpful? 3
Re: My robot playing drums
« Reply #2 on: March 22, 2008, 03:28:49 PM »
that thing is awesome.

was it dancing at some of the clips?
Problems making the $50 robot circuit board?
click here. http://www.societyofrobots.com/robotforum/index.php?topic=3292.msg25198#msg25198

Offline fritslTopic starter

  • Full Member
  • ***
  • Posts: 67
  • Helpful? 0
  • letsmakerobots.com
Re: My robot playing drums
« Reply #3 on: March 22, 2008, 03:46:28 PM »
Thanks :)

"Dancing" may be a little exaggerating ::)



Uh - by the way; if you see the video all to the very end (after the credits), there is a clip of a session where it almost is "dancing"!
« Last Edit: March 22, 2008, 05:06:01 PM by fritsl »

Offline fritslTopic starter

  • Full Member
  • ***
  • Posts: 67
  • Helpful? 0
  • letsmakerobots.com
Re: My robot playing drums
« Reply #4 on: March 24, 2008, 11:56:47 AM »
I have made a sing-along version:

http://video.google.com/videoplay?docid=-1229584477125883272&hl=en

Offline Rebelgium

  • Supreme Robot
  • *****
  • Posts: 638
  • Helpful? 0
  • It's called the future ... We like it here
Re: My robot playing drums
« Reply #5 on: March 24, 2008, 01:00:10 PM »
great idea, very original.
tnx for sharing :)
To relax after some hard work on robotics: A very fun free online text based MMORPG
orgcrime.net

Offline ed1380

  • Supreme Robot
  • *****
  • Posts: 1,478
  • Helpful? 3
Re: My robot playing drums
« Reply #6 on: March 24, 2008, 03:42:52 PM »
lol. i was talking abou the moving back and forward and scanning right left in the middle of playing
Problems making the $50 robot circuit board?
click here. http://www.societyofrobots.com/robotforum/index.php?topic=3292.msg25198#msg25198

Offline Trumpkin

  • Supreme Robot
  • *****
  • Posts: 1,177
  • Helpful? 5
Re: My robot playing drums
« Reply #7 on: March 24, 2008, 05:54:35 PM »
Dude that is awesome! But why don't you use servos?
Robots are awesome!

Offline airman00

  • Contest Winner
  • Supreme Robot
  • ****
  • Posts: 3,653
  • Helpful? 21
  • narobo.com
Re: My robot playing drums
« Reply #8 on: March 24, 2008, 06:26:53 PM »
Dude that is awesome! But why don't you use servos?

b/c servos cost more $$$ than motors
Check out the Roboduino, Arduino-compatible board!


Link: http://curiousinventor.com/kits/roboduino

www.Narobo.com

Offline fritslTopic starter

  • Full Member
  • ***
  • Posts: 67
  • Helpful? 0
  • letsmakerobots.com
Re: My robot playing drums
« Reply #9 on: March 25, 2008, 12:42:43 AM »
For the head it was just plane easier, now that the rest was with motors.

But for the sticks, I could never have done this with servos; I needed rapid action, the ability to make "double beats", hit harder or softer (longer or shorter pulses). And then there is speed, I do not think I could have gotten that with servos either.

Finally a servo is set to "go to a point" - the motors I could just take to max. That makes it a lot easier to "calculate" if we are hitting something.. well - no calculation needed :)

So.. to put it short; Head could be servo, but sticks; no way, would not know how to do it.

Offline TrickyNekro

  • Contest Winner
  • Supreme Robot
  • ****
  • Posts: 1,207
  • Helpful? 15
  • 1.6L Peugeot 307 tuner
Re: My robot playing drums
« Reply #10 on: March 25, 2008, 04:39:58 PM »
Man, it's awesome... it has rhythm!!!
And the songs on random???
For whom the interrupts toll...


P.S. I've been inactive for almost a year... Don't give promises but I'll try to complete my tutorials. I'll let you know when..

Cheers!

Offline fritslTopic starter

  • Full Member
  • ***
  • Posts: 67
  • Helpful? 0
  • letsmakerobots.com
Re: My robot playing drums
« Reply #11 on: March 26, 2008, 07:34:08 AM »
Hi TrickyNekro, thanks a bunch!

I got that question some times before (try doing a search on google on "Yellow Drum Machine", the video is displayed on several thousand sites now, had been most popular on Google in more versions, front of Make magazine, all sorts of geek-blogs etc etc), so please forgive me that I paste my answer:

***

RANDOM?? Sorry, but you are offending my religion here :) (http://letsmakerobots.com/node/67#comment-103)

Of course it is - as a resoult - random. But i do NOT use the "Random"-functions in the code, and i try NOT to just take "random numbers, such as "distance" etc.

I am getting deep now, if you have a life you can move on to something more interesting :)

 

 

I love the logic to be "perfect", I want the robot to do excactly the same again, if it was placed in excactly the same soroundings. And I want it to be so sensitive to itīs sorroundings that this never will happen.

That way - to me - the robot is some kind of a mirror to the situation it is in - as are we all in my belief.

So.. it should never be a matter of "when it was turned on", or "how far it got in the code", when a robot of mine should act autonomous. It should allways be a matter of the sorroundings, the data collected so far.

I want my robots to have "a will of their own", but I want this to be an excact resoult of the situation it was put in.

 

The beats are - however - semi-pre-made. Just as the navigation is semi-pre-thought; you decide that it should not just drive into a wall (unless it is for playing it), but you do not decide weather it should turn left or right when facing the wall. That descission is up to how things are looking to the left / right, and where we just came from, and where we are trying to get, and what we are doing now as well (are we reversing, for instance).

Same way with the beats; There are rules to what is "good behaviour", what makes a good beat. There are "examples", and there are setup to make everything play in sync. There is input; how does it sound when sampling, and there is such things as speed, shuffle and combinations, that are put together based upon inputs made when we got to this particular place to drum.

 

So.. basically and in reality it isjust completely random.. But I know "in my heart" that it is not; there are reasons - But I cannot predict what it will play.

 

When superman getīs drunk, bad things happen - and when someone asks me to something i feel for, I cannot stop, sorry, this post could get way looong :)

/ Frits

Offline TrickyNekro

  • Contest Winner
  • Supreme Robot
  • ****
  • Posts: 1,207
  • Helpful? 15
  • 1.6L Peugeot 307 tuner
Re: My robot playing drums
« Reply #12 on: March 27, 2008, 04:52:16 AM »
Man, I read what you said about the inputs... nice...
But can you explain how to mix 'em?

Thanks for the answer and also thanks in advance...

Lefteris
For whom the interrupts toll...


P.S. I've been inactive for almost a year... Don't give promises but I'll try to complete my tutorials. I'll let you know when..

Cheers!

Offline fritslTopic starter

  • Full Member
  • ***
  • Posts: 67
  • Helpful? 0
  • letsmakerobots.com
Re: My robot playing drums
« Reply #13 on: March 27, 2008, 05:46:03 AM »
"how to mix 'em?"

Wow - Perhaps best question on this project, I should think.. Noone else asked that.. Well - that and then I think the best question would be how on earth to make the sticks hit at same time (not same speed, not same length, should not be "fired" at the same time), AND the microcontroller to be on time, when it "stops" for every command, and not in every beat should all sticks and effects be used..


But, franky; These 2 questions is just impossible to answer without using half a day or more on making graphs, re-writing for better understanding etc..

To answer "how to mix 'em?", would take knowledge of how I in the first place make the Microprocessor do the impossible; act like a sequencer.

So.. sorry, I cannot give a good answer - If we ever met, I would love to explain etc :)

But.. Let us say that

A) A Basic pattern is chosen
B) In a such, the notes for each stick & effect is represented by black dots
C) The dots are not "black" for all hits; some are more grey than other
D) The lighter a dot, the less likely to be used / more rare incident is choosing it
E) Secondary and tertiary patterns are chosen
F) Over-all "notes" influence; We count to 4, 8, 16, 32, and have "into" -and "outro". These over-all-"notes" influence both the "grey" notes and then can initiate own patterns / basic patterns

There you go ;)

Sounds weird and perhaps complicated.. But to put it in another way;

Once you get the "sequencer-part" up and running (everything is in sync, same shuffle, sticks hit at right time etc - the other question that "someone should ask") - the rest - the part you ask about - is just funny playing around with variables: Rythm is extremely thankful; I am not sure at all if there are lots and lots of bugs in the code mixing patterns etc, but it does not matter, once the sequencer is done, we count to 4 etc - it is almost impossible to make an ugly or un-interesting pattern.

Sorry, loong answer again ;)

(Would you be building one or something like this? I will help as much as I can..)

/ fritsl

Offline TrickyNekro

  • Contest Winner
  • Supreme Robot
  • ****
  • Posts: 1,207
  • Helpful? 15
  • 1.6L Peugeot 307 tuner
Re: My robot playing drums
« Reply #14 on: March 27, 2008, 08:00:55 AM »
That was a nice answer... It seems you've been playing around with possibilities and statistics, based in a same "bit rate", if I can call it so!!! That's very nice!!!
Well I'm not building a music robot, although I loved yours, and would definitely love to build one, one day but, I'm building a free runner :P
And I liked that, you said about the environment, to make the robot to adapt to it and so on...
Making decisions based on temperature, light , obstacles, battery voltage and so on...
The mechanical part is ready, "you can see it at the link of my signy" but just building a coffee machine is what I like to avoid this time...
Make the robot to have it's own will...

Randomizing and possibilities is one thing, but how to implement that in a robot...
I don't mind coding just a simple flow chart, ( heh, "simple")...
You know... some basics...

And I would love to see your robot, live! The only problem is that I live in Greece and I'm 17... Have to wait for the new year...  :P


Thanks a lot for the reply... I understand why, you don't write more ::), it happens also to me... :D
And I'd love to see a nice tutorial here in SOR about your robot...


Cheers!
Lefteris, Greece
For whom the interrupts toll...


P.S. I've been inactive for almost a year... Don't give promises but I'll try to complete my tutorials. I'll let you know when..

Cheers!

Offline fritslTopic starter

  • Full Member
  • ***
  • Posts: 67
  • Helpful? 0
  • letsmakerobots.com
Re: My robot playing drums
« Reply #15 on: March 27, 2008, 03:15:17 PM »
I am 37, sounds scary even to me.. it just happened somehow? And from Denmark.

As I can understand you actually read my garble, you might want to read more;
http://letsmakerobots.com/node/226

Cheers,

Fritsl

Offline fritslTopic starter

  • Full Member
  • ***
  • Posts: 67
  • Helpful? 0
  • letsmakerobots.com
Re: My robot playing drums
« Reply #16 on: June 26, 2008, 05:34:14 AM »
If interested, I am making instructions on how to make a Yellow Drum Machine now:

http://letsmakerobots.com/node/1050

Offline AdvsNoob

  • Robot Overlord
  • ****
  • Posts: 156
  • Helpful? 0
  • Younge Inventer
Re: My robot playing drums
« Reply #17 on: November 24, 2008, 06:03:27 PM »
That was cool, you should make more then a drum line!

Offline HDL_CinC_Dragon

  • Supreme Robot
  • *****
  • Posts: 1,261
  • Helpful? 5
Re: My robot playing drums
« Reply #18 on: November 24, 2008, 09:21:34 PM »
Great work there fritsl! I couldnt help but smile ear to ear while watching both the original and the sing along version hahaha great stuff!

That robot has some serious potential. Now you just need to make it 15 times bigger, give it human detection, and send it into a war zone :P :D :D
United States Marine Corps
Infantry
Returns to society: 2014JAN11

Offline bryster

  • Beginner
  • *
  • Posts: 1
  • Helpful? 0
Re: My robot playing drums
« Reply #19 on: February 23, 2010, 11:28:55 PM »
pretty cool stuff

Offline parallax

  • Full Member
  • ***
  • Posts: 94
  • Helpful? 1
Re: My robot playing drums
« Reply #20 on: February 24, 2010, 01:41:04 PM »
But, franky; These 2 questions is just impossible to answer without using half a day or more on making graphs, re-writing for better understanding etc..

To answer "how to mix 'em?", would take knowledge of how I in the first place make the Microprocessor do the impossible; act like a sequencer.

I understand that explaining this would require a huge amount of work on your part, but it would make a wonderful tutorial  ;) Seriously, what you have accomplished here has so many applications outside of rhythm creation- were you to post more information upon this I'm sure many in the community would be able to expand and innovate what you have created. You have already posted a tutorial on how to build a YDM and a piece of sample code. Would you be willing to go into more detail on the details of this aspect?
"Less than a drop of blood in me remains that does not tremble;
I recognize the signals of the ancient flame"

Offline TK

  • Jr. Member
  • **
  • Posts: 36
  • Helpful? 0
Re: My robot playing drums
« Reply #21 on: February 25, 2010, 07:24:58 PM »
This is amazing great work man

Offline Swecylon

  • Beginner
  • *
  • Posts: 2
  • Helpful? 0
Re: My robot playing drums
« Reply #22 on: March 02, 2010, 05:35:40 AM »
Wow! thats impressive, you should make something like a band or something, does the bot have rythm or is it playing a pre-set tune ?

Regardless; impressive.


Offline Mike

  • Beginner
  • *
  • Posts: 1
  • Helpful? 0
Re: My robot playing drums
« Reply #23 on: March 02, 2010, 09:12:22 AM »
That's neat!

Offline CraftMaster25

  • Jr. Member
  • **
  • Posts: 11
  • Helpful? 0
Re: My robot playing drums
« Reply #24 on: April 11, 2010, 07:49:41 AM »
AWESOME Robot!  ;D

Offline fritslTopic starter

  • Full Member
  • ***
  • Posts: 67
  • Helpful? 0
  • letsmakerobots.com
Re: My robot playing drums
« Reply #25 on: August 04, 2010, 01:38:46 AM »
Dude that is awesome! But why don't you use servos?

b/c servos cost more $$$ than motors

Actually servos would not work. They are made to go to a position, and stay there. For drumming, you need a kick, and relaxing after that. This is why I use motors, with a mounted spring, to pull back in position when done.

This could not be done with servos, it is as simple as that, has nothing to do with cost.

Offline blackbeard

  • Supreme Robot
  • *****
  • Posts: 575
  • Helpful? 4
Re: My robot playing drums
« Reply #26 on: August 04, 2010, 07:36:56 AM »
that's awesome! you should submit that to hack-a-day
"sure, you can test your combat robot on kittens... But all your going to do is make kitten juice"

First step: Build androids with AI
Next step: Give them vaginas

 


Get Your Ad Here

data_list