Better R200 Mounting option for the Turtlebot 3:
The current Turtlebot 3 build instructions have the R200 mounted in front of the robot on a couple of relatively fragile plastic brackets. Unfortunately, the first time you run into something with the robot those brackets are liable to break. Also, this mounting approach means the camera will vibrate during motion of the robot, blurring the image.
A better option is to use the same brackets but mount the camera on TOP of the robot, just back from the edge. In the position shown, the camera still has a full field of view. In addition, the beam of the LDS still clears the top of the camera (just) and is not blocked. I also recommend pushing the camera as far to the left as it will go to give it a standard position for URDF modeling.
This should also work if you want to upgrade a Burger TB3 to a Joule/R200 combo. If you want a Joule/ZR300 combo instead, read on...
NOTE: This may get updated in the official release docs, but I thought I would document it here, just in case.
ZR300 Mount for the Turtlebot 3
I wanted to mount a ZR300 on my Turtlebot 3, so I created a laser-cut mount. See images below. You will need a "camera mount" bolt for the magnetic mounting block included in the ZR300 dev kit. That alone gives you a snap-on snap-off mount, but if you want to lock the camera down completely you can add a pair of M2.6 x 6mm bolts as shown. You also need four M4 x 12mm bolts and locknuts to attach the plate to the robot frame. Get cap-heads, as these need to fit in the hollow spaces under the frame. The nuts go on top. Note: I used 10mm bolts in my pictures but they are a bit short for locknuts. And trust me, you want to use locknuts. Robots vibrate; regular nuts work themselves loose with alarming regularity.
You will note in this pic that the ZR300 is shown on the lower deck. This does require moving the battery to the back. In later posts you will see that I repositioned the camera mount to the middle deck but this requires some internal reorganization. You may also need to add a powered USB 3.0 hub.
I'm trying to figure out how to distribute my laser-cut file. I can't post it here as it seems vector-graphics file formats are not supported.
Internal Reorg of Turtlebot 3 to Support Powered Hub
Here is a picture of my internal reorganization of the Turtlebot 3 to support a powered USB hub. You can get either 5V or 12V off the OpenCR board. I also kept the original unpowered hub. I rotated the OpenCR 90 degrees as well so that the power switch and power connections are accessible even after I moved the mount for the ZR300 to the middle deck. Other things I recommend doing: use Velcro tape rather than rivets or double-sided tape to attach things to the robot, like (for example) the LDS interface board.
Finally, note the fan on the Joule. It's not strictly necessary but does help boost performance. I had to swap out the upper standoffs for 50mm ones to get the fan to fit, though. Eventually there should be better active cooling options with lower profiles.
A multiple-camera configuration I am experimenting with. This configuration gives almost-but-not-quite overlapping fields of view for each camera. Three cameras can be run from a single Joule if you lower the frame rate to 30Hz. In my experiments, however, 60Hz only works for two cameras at once. Also, this configuration does block a small part of the field of view of the LDS. This could be fixed by putting the LDS up on standoffs. On the other hand, software could edit out the data from those segments without too much loss (and the R200's can see in those directions anyhow...).
A powered USB 3.0 hub is essential for this configuration. Close-ups of the mount setup is provided below. You need to add a M2.5 x 12 bolt and nut to hold the top bracket in the right orientation. The top bracket is bolted to the camera with two bolts. The bottom bracket is attached to the camera with the stick-on metal plate that comes with the camera. The USB cables for the R200's loop around from under the robot. Cable ties can be used to secure these cables to the underneath of the robot.
Since I took this picture I replaced the bolts on top with some M3 x 12 bolts and lock nuts, with the head on the outside. This both looks cleaner and makes it easier to remove the cameras when transporting the robot (with the cameras off it fits in a Pelican case, but not with them mounted). Sorry I don't have better closeups, I will need to make more. Note the mounts are slightly asymmetrical due to the asymmetrical placement of the mounting slot in the camera.
How to Transport a Turtlebot 3
Get a Pelican case (I will have to dig up the exact part number...). This works with the modified R200 mount (and also with a front-mounted ZR300), but not with the "official" R200 mount. If you use three cameras, you will have to unmount the two vertical R200's first. I also stick the extra bags of peanuts on top of the robot and the other spare bits before closing the top. I'ts not very clear in the picture but there are some spare bits of foam crammed down around the edges and corners to fill in the space that the wheels need.