Secondary Menu

Bedfellow Robot Bed

About: My name is Randy and I am a Community Manager in these here parts. In a previous life I had founded and run the Instructables Design Studio (RIP) @ Autodesk's Pier 9 Technology Center.
I'm also the author ...
More About randofo »

Bedfellow is an autonomous robot bed which seeks out new engagements. In other words, I have robotized my personal bed to socialize and share itself with others.

Perhaps a little bit more of an explanation is in order. A bedfellow can be defined as a “person who shares a bed with another.” While it is typically assumed that bedfellows are in a mutually exclusive relationship, this sometimes is not the case. On occasion a bedfellow may go off and share your bed with a plurality of others aside from yourself. With this anomaly in mind, I have created the Bedfellow robotic bed as a potential solution. My intent in doing this was to functionally replace any wandering bedfellows. With a bed capable of sharing itself with whoever else it may chance upon, there is no need to keep someone else around to perform this function for you.

On a practical note -- Okay -- Perhaps not a practical note -- But on the technical front... This is basically an autonomous self-driving electric vehicle. Whereas companies like Google have spent millions of dollars and tasked teams of people with producing such a contraption, I did the same thing myself for a fraction of the cost. Granted, this bed is perhaps not as streetworthy as a normal automobile, but if one were to think of a car less as something to get from point-A to point-B and more as an expression of individuality -- well then -- this vehicle is much more unique and way better for picking up potential partners. No one can pass up going for a ride in my bed.

At the very least, this is probably the most elaborate IKEA hack ever created.

Step 1: About the Design

In making Bedfellow, I basically converted my personal Queen bed into an autonomous self-driving electric vehicle. Don't let its furniture-ness fool you. There is a bit of umph behind this. The bed is capable of driving with a sustained 8 horsepower of force and is capable of peaking up to 25 horsepower for a limited time. The current top speed is unknown, but it is assuredly faster than any bed should go. There is also a lot of torque behind it. It has carried up to at least 12 people at once and has not shown any noticeable signs of slowing down.

The bed was designed to support up to 3,000 pounds worth of weight, and is built around a wooden torsion box frame. The central drive column is capable of supporting the entire 3,000 pounds in its own right. I did this in case the bed encountered a highly uneven surface and all four outer casters found themselves off the ground.

The outer casters have springs to absorb some of the shock and account for uneven surfaces. However, there is no real suspension to speak of, so it is not exactly a road vehicle. A pothole might be potentially devestating. This bed was largely designed for indoor domestic use.

The two drive wheels are centrally located underneath the bed. With this wheel arrangement, the bed is capable of turning on point like a tank by rotating the wheels opposite from one another. This makes it able to move around fairly competently in tight spaces. The motors are connected to the drive wheels by way of a 20:1 gear reduction. Without this, the whole thing would move very - very - fast. This gear reducer is basically a giant worm drive mechanism that reduces the bed's movement to gallery-friendly speeds.

There are two high-powered DC motors being controlled by two Alltrax motor controllers. These controllers are typically used in golfcarts and other electric vehicles. My specific model is capable of handling up to 400 amps. In the motor control circuit there is also a solenoid for engaging the power, and a reverse contactor for reversing motor direction. Each motor has its own seperate drive circuit and battery bank. Currently the drive system is operating at 24V, but I can be boosted to 48v for increased speed. However, traveling any faster than it is currently capable is likely not a good idea. There are also two chargers for each battery bank onboard.

The whole system is being controlled by an Arduino Mega which is reading 12 ultraonic sensors and interfacing the Alltrax motor controllers. The logic is rather simple. It is basically picking a random direction to move, checking to see if there is anything very close by in that direction, and then if all is clear - it moves. If there is something in the way, it picks another direction randomly and tries again. There are four safety bumpers which are connected to the Arduino using interrupts. If they are hit, the bed immediately stops moving and restarts its routine.

This may seem simple and arbitrary, but people interface with it as though it has intelligence and is purposefully considering them. Since this robot is rather large, people approach it as an equal and it creates a relationship between person and machine that none of my other smaller robots have ever really seemed to capture.

As already mentioned, the entire system was built around my personal Queen-sized bedframe and incorporated my actual mattress. The frame itself was a standard Ikea box frame. The aspects of the bed frame that were maintained are no longer particularly structural, but rather aesthetic. It is a bit like tearing down an entire building, but keeping the facade.

Step 2: Yeah Yeah... I Get It...

Before you flood a thousand discussion boards talking about how pointless these instructions are, I just want to point out that I get it. No one is likely ever going to recreate this and, even if they wanted to, they probably don't have access to all of the tools necessary to easily do so. This project uses a ton of expensive parts, is designed around a discontinued Ikea bed frame, takes forever to make, is largely cost prohibitive, and does not make sense to many highly rational individuals.

So - why even share it? Let alone - why share it in such painstaking detail?

For the last ten years I have strived to make all of my art 'open source.' While open source software is by and large a solved problem, 'open source' hardware is still in its early stages. Beyond that, 'open source' art is basically a little explored frontier on the borders of Imagination Land, making it even more problematic. While I can write extensively on the shortcomings of making 'open source' art, I'd prefer to briefly focus on some of the benefits of the practice.

1) Sharing Means CaringSharing process and technique -- even if the project is not directly replicated -- is generally useful. It shows others how I accomplished various aspects of this project. Even if someone does not build a robot bed, they might find the instructions I posted on interfacing an Arduino to a 8HP electric motor useful. Or -- perhaps -- they always wondered where to source 12" diameter non-marking wheel capable of supporting a 3000 pound load. Now after reading my project, they know. I solved that problem, and now someone else does not have to re-invent the wheel so-to-speak. Sharing my accomplishments helps other people move forward more easily with their own.

2) Motivational SpeakingSomeone may see the amount of effort some random guy on the internet put into bring their vision into the world and be inspired to take on a project of their own design. That is not to say that a robotic bed is going to get someone off their couch in their basement and have them suddenly work day and night to find a cure for cancer. However, it might get them off the couch to do something. And the more people who get inspired to proactively take steps to re-shape the world as they see fit -- no matter how silly -- the better off I feel that we will be.

3) Entertainment ValueBy now I have created hundreds of online step-by-step tutorials. Some are easily accessible to the average person and some require a degree of advanced skill and/or knowledge. I would say that across the board very few actually get directly replicated. Considering that these projects collectively have millions upon millions of page views, I would venture to guess that the majority of people who look at them are simply curious about the thing itself or the process I used to ge there. It is the same reason people watch How It's Made on TV. It is not that they are researching to open a factory producing consumer goods, but rather simply have an innate desire to better understand the world. People are generally curious.

Of course, I could list out probably a half a dozen more reasons for why I share my work in this manner. However, I think I primarily hit on the key points. Hopefully that helps to clear things up.

Step 4: Cut the Drive Assembly Plates

Use the attached bracket templates to cut out motor mount brackets out of 1/2" aluminum.

To do this I used a water jet. However, the shapes are not remarkably complicated and you could feasibly accomplish the same using a manual mill such as a bridgeport. With enough patience, you may also even be able to use a drill press and band saw.

Also note, throughout this project I use the water jet and a 400W laser cutter. Yes, I know that you likely don't have one. However, most of these parts are simple and can be produced using a host of techniques and tools. That said - this will be the last time I am going to address this here.

Attachments

Step 5: Countersink the Motor Plate

Countersink the eight holes around the perimeter of the small square of the motor mount plate that mates with the gear box.

Remember that the heads of the bolts need to be flush with the gear boxes, and there is both a right and left hand side. In other words, the motor mount plates should not be identical but mirror each other.

Step 6: Remove the Bolts

Remove the bolts fastening down the metal retaining plates for the input shaft of the gear reduction boxes.

Step 7: Attach the Motor Plate

Place the motor drive plate on top of the existing plate encasing the gearbox's output shaft.

Firmly fasten both plates in place using the four mounting bolts. These bolts need to be fairly tight to keep the gearbox from leaking oil.

Repeat for other motor assembly.

Step 8: Attach the Bearing

Attach the bearing to the other motor assembly plate.

Repeat for the other motor assembly.

Step 9: Wheel Standoffs

Cut the 1" tube into eight 7" sections.

Step 10: Wheel Cage

Pass 9" x 1/2-13 bolts through the bearing motor plate, 1" tube, and finally the gearbox motor plate. Firmly secure them in place using nylon lock nuts to complete the wheel cage.

Repeat for the second assembly.

Step 11: Slotted Lock Rings

Cut two slotted lock rings using the attached file. These are meant to keep the key from sliding out of place when the gearbox shaft rotates at high speeds.

To elaborate - The quick-release bushing has enough bite to grab the input shaft, but the lock nut misses the key. So, there is nothing holding the key in place and when it begins to rotate, the key will likely slide out. While the bushing might have enough bite to just keep the pulley in place without slipping, I am not about to chance it. I made these to keep the key in place and prevent the pulley from coming loose.

Step 12: Attach the Gearbox Pulley

Insert four 5/16-18 x 2" bolts throught the cover plate and slide split ring washers onto them. Slide the cover plate over the ends of the flat head bolts such that there is a 1/2" gap between the cover plate and the input shaft plate.

Insert the mounting bolts in the quick disconnect bushing and slide it onto the input shaft.

Mount the keyed lock ring right in front of the quick disconnect bushing such that it is flush with the end of the drive shaft.

Slide the pulley onto the quick disconnect bushing and slip a wrench between the crack in the plates to tighten the bolts. This will require cycling through all three bolts to tighten each a little at a time until the pulley is locked firmly in place.

Repeat for the other assembly.

Step 13: Attach the Motor Pulley

Pass the motor shaft through the center hole of the motor mounting plate

Slide the quick disconnect bushing onto the motor shaft. Slide the pulley on and lock both in place by tightening the mounting screws with a wrench.

Step 20: Tap the Mounting Holes

Step 21: Countersink the Plates

Step 22: Repeat

Turn the assembly on its side and sse the alignment guide and the second plate to center punch the opposite side of the cylinder.

Drill and tap this side of the cylinder the same as the opposite end.

Repeat this process for all four posts.

Step 23: Attach the Plates

Use 1/2-13 x 1" flat head bolts to attach the plates to both sides of all of the cylinders.

There should now be 4 overly engineered spacing posts.

Step 24: Start the Torsion Box

I built a torsion box that was 60" x 80". This was precisely the inside measurement of my bedframe.

The inside frame of the torsion box consists of two maple 1 x 2's running the outer length, and maple 1 x 1's connecting these every 10" from center leaving out the beam at the 40" mark.

To connect them I laid everything out, drilled pilot holes, applied glue and then screwed it all together. I then waited for the glue to set.

Step 25: Plywood Panels

Once the inner frame was dry, I laid out 1/4" plywood panels over top of the frame. Since standard sectional lumber is typically only 4' wide and they apparently have stopped manufacturing 5' wide over-sized 1/4" plywood, I had to use two sheets - a 12" x 80" sheet and a 48" x 80" sheet.

To affix the plywood, I applied a generous amount of glue and then tacked the sheets to the frame using a nail gun.

Step 26: Caster Plywood Insert Mounts

Cut out four caster plywood insert mounts using the attach file.

These will sit inside the frame between the two sheets of plywood and be used to mount the caster spacing posts.

Attachments

Step 32: Glue the Battery Inserts

Use the wooden alignment panel and some spare 1/2-13 bolts to make sure the plates are aligned.

Once the alignment is good, lift the panels, apply a generous amount of glue underneath, lower them back down, and then realign them.

Place a fair amount of weight on top of these panels - I used the batteries - and wait for them to dry.

Step 33: Drill Holes

Once all of the plywood inserts are in place, I drilled out all of the mounting holes through the top plywood panel.

Step 34: Insulation Foam

Insert pink insulation foam into the gaps in the frame. This will help prevent creaking and echoing noises when it is later put to use.

Step 35: Second Side

Finally, I glued on the second layer of plywood to complete the box. I alternated the side on which I placed the thin strip so that there was not a seam running down one side of the box.

Once dry this side was dry, I routed out the two rectangular wheel channels. I also drilled the rest of the mounting holes all the way through the box. However, I did both of these in a bit of a rush and forgot to get pictures.

Step 36: Clean the Edges

Use a router to trim away any over-hanging plywood edges and ensure the the frame is square.

Remove any lingering screws used in the initial construction of the frame.

Step 37: Cut the Wheel Shaft

Cut the wheel shaft into two 4.5" sections.

Step 38: Wheel

When building the bed, I had a number of constraints on the wheels. Foremost, the gallery I was placing the bed in required non-marking wheels. Thus, I had to specifically find non-marking polyurethan wheels.

I also had to find wheels which were low-profile and 12" or less.

It also had to fit on the 1.375" output shaft of the gearbox.

Finally, and perhaps most importantly, the wheels needed to be able to support the weight of the entire assembly plus the weight of up to a dozen riders. The reason for this was that if there was an uneven floor, there could be a case in which all of the weight was bearing down upon the drive assembly.

My wheel options were obviously very limited and the likelihood of finding an off-the-shelf solution was rather unlikely. Thus, I had to have the wheel custom made. I eventually found a place that were able to make 12" polyurethan wheels with a 1.375" keyed bore, and a cast iron core capable of supporting around 3,000 pounds a piece. As you can imagine - like most everything else in this project - they did not come cheaply or quickly.

When they did finally arrive, they were beautiful and quite happy-making.

Step 39: Mount the Wheels

Loosen the wheel cage bolts and remove the bearing plate.

Slide a shaft collar onto the gearbox output shaft, and lock it in place about 1/2" from the aluminum plate.

Mount the 4.5" keyed shaft in the bearing assembly. Slide a shaft collar onto the shaft, but don't tighten it down yet.

Slide the wheel onto the gearbox shaft and insert a 5/16" steel key that is the legnth of the wheel bore.

Insert the key shaft in the bearing into the wheel and reassemble the wheel cage.

Finally, tighten the set screws on the wheel and the remaining shaft collar. The wheel should not be positioned snuggly between the shaft collars and locked firmly in place.

Step 40: Mount the Casters

Step 41: Bolt on the Drive Assemblies

Position the drive assemblies under the torsion fram such that the mounting holes from the 1" square stock brackets align with the appropriate holes in the torsion box.

The assemblies will be lopsided to begin with and lifting the torsion box off the ground. This is okay.

Insert 1/2-13 x 3" bolts with fender washers down through the frame and into the square stock holes as best you can. This is largely for alignment.

Once everything is roughly in place, use ratchet straps wrapped around the frame to lift the assemblies off the ground and make them flush with the torsion box. It is always wise to put a metal block under the lifted corner to prevent it from crushing you in case the strap breaks.

Push all the bolts all the way through now, and fasten them very tightly with nylon insert lock nuts. If you need to knock a few bolts through with a hammer, that is okay. Hammering is an important aspect of robotics.

Once they are bolted to the frame, use fender washers and 7/16-14 x 1-3/4" bolts to fasten the gear box to the top of the torsion box.

The drive assemblies should now be firmly locked in place and the bed is now not going anywhere (for a little while at least). The whole thing should now weigh about 300-400 poounds and since the gearbox uses a worm gear assembly, the wheels won't spin unless the motor is engaged. Thus, this thing is not really getting pushed around or lifted.

Step 42: Drill the Bumper Rails

Drill 1/8" holes through the aluminum mounting channels every 10" on center from either edge.

Step 43: Drill the Bed Frame

Use the aluminum channels to mark drilling holes along the bottom edge of the bed frame panels.

Drill through these holes with an 1/8" drill bit.

Step 44: Mount the Bumpers

Bolt the aluminum channels to the outer base of the bed frame.

Once they are firmly attached, insert the rubber bumpers into the channel.

Step 45: Drill Sensor Holes

On one panel of the bed frame, use a hole saw or spade bit to drill two 1" holes 3-1/2" from each outer edge and one on center.

Repeat for the other three panels. You should be drilling 12 holes in total.

Step 46: Fuse Cables

Create two 12" red cables with wire lugs connectors, and two more 36" red cables with wire lug connectors.

Use nuts and bolts to attach a fuse between the 12" cable and the 36" cable for both sets.

Step 47: Insulate

Place shrink tube around both of the fuse's exposed wire terminals while leaving exposed the viewing window on the fuse.

Use a heat gun to shrink it into place.

Step 48: Kill Switch Box

Cut a hole for the power kill switch in one of the aluminum boxes using the attached template.

Attachments

Step 59: Attach the Bottom Plate

Attach the bottom drive circuit plate by placing it on a sheet of cardboard and sliding it under the bed.

Once roughly in position, lift it up onto blocks and bolt the front to the underside of the gear box using 7/16-14 x 3/4" bolts.

Secure the back side of the plate in place by insert 1/2-13 x 12" bolts down through, fender washers, the torsion box, aluminum tubes, and finally the plate itself. Finally, lock the bolts in place with nylon insert nuts.

Step 60: Wire the Motors

Wire the red wire from the reverse contactor to the leftmost terminal on the left motor.

Wire the black ground wire from the motor controller to the right terminal on the left motor.

Repeat this process for the right motor.

Step 61: Drive Circuit Interface

Build the drive circuit interface boards as outlined in the attached schematic. It is advised to use screw terminals for all of the connection points.

To explain what is going on, the SPST relay is being used to turn on and off the motor controller and the SPDT relay is being used to engage the reverse contactor and change directions. When the direction is about to be changed, the SPST relay cuts the power and then the SPDT relay changes direction. This is important to do to keep the circuit from breaking.

The 6A diode and fuse are largely just there to prevent voltage and/or current spikes.

The other set of diodes is being used to connect the reverse relay to the ignition terminal without crossing wires between forward and backwards.

Step 62: The Remaining Circuit

Build the rest of the circuit as specified in the schematic above.

Step 63: Code

Okay - so - when working with code it is ideal to use something like Github to keep track of revisions. I don't do this. Thus, I accidentally wrote over the most current working version of the code. I do have the last saved version, but I am not certain how complete it is. It is likely a little buggy.

Novertheless, since none of you will likely build this thing any which way, and the bed is currently in pieces and not operational, I am just going to post what I have.

I am also sharing test code for manually controlling the motors. If you are looking at this project for interfacing an Arduino to very large motors through an Alltrax motor controller, this code will be more useful to you anyhow.

Attachments

Step 65: Testing!

Plug everything in an test all of the circuitry before mounting it underneath the bed.

I cannot stress how important it is to make sure evrything works before really installing it. This will make life much easier.

Step 66: Install the Circuit Board

Once certain everything works, mount the circuit board to the underside of the bed using 1/4" inner diameter by 2" acrylic tubes and 1/4-20 x 4" nuts, bolts and washers.

Step 67: Plug in the Sensors

Plug all of the sensors into their respective sockets on the circuit (if you have not done so already).

Finally, clean up all of the cables using zip ties to keep things nice and tidy.

Step 68: Strap in the Batteries

Strap the batteries to the battery plate using ratchet straps. Make certain that the ratchet mechanisms are on the sides of the batteries and not the tops (of it won't mount to the underside of the bed).

Neatly coil the remaining strap once done.

Step 69: Bolt the Batteries

Bolting the batteries to the underside of the bed is a pain in the neck since each set weighs about 140 pounds.

That said, it is fairly easy if you have a pallet jack. You can just roll them under and lift them a few inches off the ground until they are high enough to pass bolts through.

Without that, I found that putting the batteries on two 8' 2x4s and slowly propping up each end until you catch the bolt also works.

Insert 1/2-13 x 10" bolts down through a fender washer, the wooden torsion box frame, a 7-1/2" aluminum spacing tube and finally the battery mounting plate. Firmly lock the bolt in place with a nylon insert nut.

Step 70: Charger Box

Plug both of the battery chargers into the charger junction box.

When they start running low, plug the charger junction box into the wall.

Step 71: Put the Mattress On

Lift the mattress back onto the bedframe.

Step 72: Make the Bed

When you make the bed, be sure to tuck the sheets under the mattress. You would not want to leave them dangling and risk having them get sucked into the wheels. That could be bad.

Optics Contest

Make it Glow Contest 2018

Plastics Contest

47 Discussions

The power specs of this bed are incredible!! Should have been really fun working on it. My motorcycle has ~5 kW and it goes 50 mph, this bed can probably go at highway speeds if the aerodynamics and overall frame stability at high speeds are taken care of!

This is pleasure to watch... and i used to think lnstructable with great magnitude is hard for anyone to replicate. But now i see you point about simply the joy of seeing how things are made encourages me!!

You can get an old electric wheelchair for pennies off Craigslist (or similar). Typically they just need new batteries. Wiring into an electric wheelchair controller with an Arduino is a little bit tricky, but not impossible.

Nice bed but it wouldn't fit in my room. However, the chair with the red cushions in the corner looks nice. Did you make it yourself? Can you please post more detailed photos of it? That would fit nicely in my room. I may even make it robotic.

I started to read each step without having looked at the # of steps. ... then got to step 15, and wondered ... WOW! 74 Steps - and the List of Materials! Then I scrolled to see the comments - CONFIRMED. This is def qualified for the Mad Science Over-Engineered Award. Bravo!

Ah! This is totally incredible. It's exciting to see industrial strength hardware interfacing with logic-level circuitry. I really enjoyed seeing the thoroughness that you addressed the various safety considerations.

Question: I'm looking to learn more about high-level design considerations and low-level machining/CAD/CAM. Unfortunately, I don't live near a space with lots of fancy tools. Where would be a good place (book knowledge) to start acquainting myself with this kind of thing? I studied sculpture and CS at my small liberal arts college and regret not having the opportunity for more engineering in my life.

Also, I found a minor typo in Step 65:

".... I cannot stress how important it is to make sur eevrything works before really installing it. ...."

Wow. Thoughtful. Very cool too. This robot bed is a great accomplishment. Just imagining it seems pretty exceptionally creative to me but to go the next step and build it...Well, that's just inspirational in its accomplishment.