Web Camera Gantry
For an upcoming talk, I need to show a Raspberry Pi and an Arduino on camera. I experimented with hanging the camera off the front of the monitor and although this worked the monitor was also visible. So I needed some kind of gantry for the camera to attach to.
I looked through my scraps box and found a selection of aluminium extrusion that had previously supported some blinds. The was enough to build a frame but I needed some way of joining the corners. I did think of bolting them but realised that I could slot some 3D printed parts into the ends of the frame. I designed two different shapes, a T-piece for supporting the uprights and an L for connecting the uprights to the cross beam. I also had added a stiffener for the T-pieces but didn’t need it in the end. It was a long print lasting nearly 12 hours, but the parts came out well and are pretty rugged with 40% infill.
I drilled some holes for the T-pieces and bolted them to the feet. I used some self-tapping screws to fix these into the uprights. The top L-pieces I did not screw so that that frame can easily be packed away, the push-fit seems secure but it may loosen with use.
The webcam just clips to the cross beam, I found I needed to lift up the parts so that they filled most of the camera image. I found that the choice of camera was important too, the first one distorted quite badly at this short-range with the edges of the image being curved. The second was better and also had manual focus which meant that I got a nice crisp image.
As you can see from the image the frame needs to be away from the main room light otherwise the cross beam casts a shadow. This shouldn’t be a problem in practice as I only move the frame into the middle to take a nice photo. It would also be possible to fix some lights to the crossbeam, I would recommend something with good diffusion to avoid strong shadows.
The frame is pretty sturdy, perhaps I’ll add some corner braces to give it a bit more rigitidty if I find it moves in use. Got a test this week so we’ll see how that goes.