For Halloween, I'd like to build a spider that drops from the ceiling when it detects motion and then rewinds itself back up to scare the next kids. I already have a lightweight foamish spider from Hobby Lobby that I'd like to use, but I need help adding the smarts to it to scare the kids.

Ideally, it'd be able to detect how tall/far away the kid is to drop to a custom height each time, but I'd settle for a standard dropping height if that's too much. I even had an idea of having a motion sensor and having it shoot Silly String webs in front of people.

I have a very technical background, but I'm a total noob when it comes to robotics, so ideas as to what components and considerations I'd need would be greatly appreciated!


Take a look at a kids "spincast" fishing reel and rod.
Spincast reel

We built one in 2008 (still works, rain, snow and all!) using a automobile door lock solenoid to operate the "thumb release" and an automobile power window motor (PWM & MOSFET) via rubber hose driveline to operate the retract. Choice of MCU is yours, but we've since added spooky lights, MP3 with speaker, "beam break" and IR detectors just to "juice it up."


| improve this answer | |
  • $\begingroup$ The idea of the fishing rod is great. What did you use for the power window motor? Where can I get cheap motors for winding the spool back (and cheap solenoids for that matter). Like I said, I'm a newbie, so what is the Hall Sensor/"Ring Magnet" and double weight setup for? Are you using it to somehow tell that the spider is back to its original position? $\endgroup$ – user1146334 Jul 10 '13 at 19:00
  • $\begingroup$ All of the junk parts I probably had laying around. Any ol' window motor will do, I'm sure I picked it up cheap from the auto junk yard. (It's good to have mechanic friends too!) Door lock solenoids are very inexpensive too, just ask the counter folks for the cheapest one they have laying around. {Eventually, the salvage parts people will recognize you and suggest parts for tinkering!} The Hall Sensor is used to detect when the window motor has cranked up the fishing line far enough, you could use a reed switch and magnet. $\endgroup$ – JoeFromOzarks Jul 10 '13 at 19:28
  • $\begingroup$ The "double weight" is used to hold the "ring magnet" in place on the line. The weights are regular ol' fishing line weights, one of my other activities. :) $\endgroup$ – JoeFromOzarks Jul 10 '13 at 20:52
  • $\begingroup$ Assuming that I don't have the time/access to a junk yard, what components would you suggest for the motors and solenoids? I know of places like adafruit and sparkfun that sell stuff; are there any other good/reputable resources out there? $\endgroup$ – user1146334 Jul 25 '13 at 2:15
  • $\begingroup$ Your best bet is an automobile salvage yard, honest. I didn’t see a location in your profile, if you’re in the U.S. most junk yards will ship parts right to your door and there are plenty on the interweb. I cannot recommend any, in this part of the country (U.S.) salvage yards are plentiful. Next best might be your local auto parts retailer if you wish to spend for new. Finally, do not forget to check with your mechanic. Where do you live? As you get closer to building this, I’ll help you all I can with the details. $\endgroup$ – JoeFromOzarks Jul 25 '13 at 3:24

If you want to detect how tall your target is and tailor the drop height to suit, then you are going to need more precise sensors and control than the other (excellent) answers here.

One option might be to use a Sonar Range Finder as suggested in this answer to What is the cheapest / easiest way of detecting a person? (Thanks Ian)

Basic idea

While the SRF is detecting a distance of more than your maximum drop distance, the 'spider' would lie in wait. If the SRF detects anything closer, you immediately start the motor unspooling the cord and the spider will start dropping.

As the spider is dropping you continue monitoring the SRF and stop unspooling when the length of cord you've unspooled is approximately the same as the minimum distance measured by the SRF since it started dropping. This should place the spider right at eye level of the tallest person there, for maximum effect.

Finally, after a short delay, start the motor slowly returning to it's rest position by spooling the cord back in and resetting for the next attack.


You will need to be careful about the weight of the spider. It needs to be heavy enough that drag (air resistance) does not significantly impede it's acceleration due to gravity, but not so heavy that it could harm anyone or overload your motor.

Even if your spider isn't too heavy, you will want to make sure that there is 1.5 to 2" of foam between the heavy centre and anything that might touch anyone. You will also need to make sure that there are no stiffening wires or springs which can end up protruding out of the spider as it wears. All basic health and safety stuff really.

If the spider is dropping into the SRF sensor beam area, then obviously you will not be able to improve your initial estimate of drop distance, and will just have to drop to that first range measured. This might mean that you end up dropping to teh height of someone's hand rather than to the level of their head though.

If you want to be clever, you can arrange your drop trajectory to be controlled so that you never have too much loose cord, this will minimise the risk of the cord getting tangled and snagging on anything. In this case you will want to ramp up the speed of the motor such that the cord is being spooled out at the same rate as the acceleration of the spider due to gravity, i.e. $9.8 ms^{-2}$.

You may or may not also want to control the deceleration rate as you approach the desired drop length. The faster you stop it, the more dramatically the spider will bounce and jump around, but the more stress you will put your system under.

Finally, you will want to size your motor such that it can move relatively quickly under light load (when dropping) but still have the torque to stop the spider at the end of travel (and winch the spider back up).

Some calculations

The formulae for uniform acceleration is $s=ut+\frac{1}{2}at^2$ where $s$ is displacement, $u$ is initial velocity (zero in our case), $a$ is uniform acceleration and $t$ is time.

Assuming that you have a spool of 10cm in circumference, and want to drop the spider at most 2m then $s=2$, $u=0$, $a=9.8$ and $t$ is unknown: $t=\sqrt{\frac{2}{\frac{9.8}{2}}}=0.638$. To spool 2m in that time seconds would require the spool to turn at almost 2000 rpm on average ($200/10/0.638*60=1881$).

This seems a little unreasonable, so doubling the spool to 20cm circumference would drop the motor speed to under 1000rpm on average, but we are now looking at quite a bulky bit of mechanics.


If you get the design right, you might even be able to fit all of the components needed (spider, spool, motor, drive electronics, control electronics, sensor and power supply) into something which you can screw into a light fitting and thus hide in a (large) lamp shade.

| improve this answer | |
  • $\begingroup$ If anyone could check my maths, I would appreciate it. Thanks, $\endgroup$ – Mark Booth Jul 10 '13 at 17:14

It sounds like you want some sort of winch that moves faster in one direction (for the release) than the other. There are heavy-duty winches that accomplish this by having a clutch in addition to the winch motor, so that when the clutch is disengaged the cable can unspool freely. EDIT: Fishing reels are a more appropriate example (+1 JoeFromOzarks).

To achieve custom drop distance with such a setup, you'd have to rely on disengaging the clutch for a very specific interval -- you should be able to find the relationship between drop time and drop distance (considering gravity, spool momentum, and string friction).

When rewinding, you'd need a sensor to detect when the string is all the way back in. There are several ways you might do this, from electrical measurement of the motor load to physical measurements on the string/spider position.

You may want to check out this other question for a list of ways to detect motion: What is the cheapest / easiest way of detecting a person?

| improve this answer | |

I did this exact same project 6 years back. I used two servos. The first was a continuous rotation servo with a spool the pull the spider up. The spool did not have an end on it so that when the spool turned parallel to the string it all came loose and the spider fell. It was simple and effective, although the CR servo that I used was under powered.

I have a write up in this thread on the Parallax forums.

hardware picture

| improve this answer | |
  • $\begingroup$ Did you ever figure out how much torque would be needed to raise the spider up in a reasonable manner? What's the difference between a continuous rotation servo and stepper motors and DC motors? $\endgroup$ – user1146334 Jul 25 '13 at 2:12
  • $\begingroup$ The torque is dependent on the weight of the spider, the diameter of the spool, the acceleration (up) required, and the various losses in the system. I didn't (and wouldn't) calculate it. Instead, just try out a servo and go to a bigger one if needed. Your second question should be asked as a question instead of in a comment. $\endgroup$ – srlm Jul 25 '13 at 2:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.