I'm trying to design and build an "open source" radar system. The premise is that while we have the hacked Neato and the RoboPeak system, I've not found anything for outdoor use. So I've built this scanner pictured below.
The parts list so far is
1) Hobbypower BGM5208-200T-12 HS Brushless Gimbal Motor
2) AlexMos 8 bit controller
3) Arduino Uno
4) Sparkfun Line follower (as a simple rotary encoder)
5) 12vdc power supply
The design criteria is that no special tools (lathe, mill, tap & die) are required. All parts shall be easily available from reputable sources. From this I hope more people will build one and begin to give real sight to their AV.
My question is how to best promote this project and share files like these two versions for the Lightware SF02 and Lidar Light units I made with Solidworks.
I'm a real NOOB with Github and blogs, so any suggestions would be helpful.
Almost forgot.. Parts also include a 12 channel slip ring that slips nicely thru the hollow shaft gimbal motor.
Nice work and a great project!
Great project Bill!
I think a few people wrote about such thing in the past.
I would think putting the code and a readme file with components on github.com might be the next step. Then other people might be able to have a look and fork the code if they want to tinker with it / contribute back.
For spreading the project you could update this blogpost and even spread the idea on several other hacker pages like hackaday.com and such alike.
Hopefully those "other folks" will see this post and show me how & where I can share my files which would include the Solidworks assembly drawings, arduino/processing sketches and AlexMos configuration. Again, I'm absolutely clueless about Git/fork stuff.
I'm also waiting to purchase the Lidar Lite. The SF02 is great, but its refresh rate is only 12Hz while the Lidar Lite is 50Hz.
An important SF02 note... watch out for voltages. The SF02 doesn't like any signal input of more than 3.3 vdc. Since I'm using an Uno, I put in a 470K resister to drop the voltage down. Sure, I could use a 5-3.3 converter, but the resister appears to work fine.
I'll soon be testing outside... I'm waiting for the very much needed rain to stop.
Here is another pic showing my crude but simple rotary encoder. and IMU. The AlexMos setup drives the gimbal motor very smoothly at about 20 degrees per second. I realize that's kinda slow. When I speed it up to 90 degrees per second, the readings become too scattered. .. so hopefully the LIDAR Lite will allow a faster speed.
Really impressed Bill, I'm going to be looking at something similar and am beginning to wonder if I could do it cheaper than an RPLidar. Does the SF02 rotate through 360 in one direction and then the other direction or is the slip ring good enough to keep on turning in one direction? This is food for thought!
Yes the SF02 rotates continuously. So far I've had no issue with the 12 channel slip ring. I did add a ferrite core just for giggles.... (again easily obtainable from Amazon.com). I've had the speed up to 15 RPM and the readings/repeatability are getting better.... mostly because of my son's Arduino/Processing coding.
My current hassle is improving the absolute rotary encoding. The nail polish - line follower guessing system I'm currently using doesn't work that well. This is especially true at speeds closer to 30 RPM. I'm waiting for two more IMU's, one will be mounted next to the laser and one on the base. Then with some Arduino code help from my son, I hope to be able to improve the reliability of determining the sweep angle. I had hoped to read the "compass" off the BaseCam IMU, but I've had no luck finding the code. The BaseCam specs are just too complicated and I've not yet gotten any help/response on their forum (probably because its Xmas/Nyears).
I'm also starting to look at ROS for its localization and mapping. UGH!
Thanks for the Friend Request Bill - I thought I'd reply here for everyone's info. After my last message I spent some time looking around at what other people are doing, and what other sources of Laser units there are out there. People are hacking laser rangefinders with some success, but they don't seem useful in the high sample rate application you need for practical implementations.
I can get an SF02 unit in the UK for £360, and whilst this is more than the cost of a whole RPLidar unit in the UK, the range and potential for outdoor use makes it essential. I think I'll go in a slightly different direction to you. I'd like to try mounting the unit at an angle on a rotating baseplate. Mounting at an angle allows you to scan with some vertical resolution rather than in a plane, and sweeping through a fairly small angle (say 30 deg?) puts a lot of beams in that volume. The rotating plate will then be able to rotate 360 or any amount of 360 so you can do whole scans or intense scans in certain sectors only. I'll use two angular encoders (or motors with encoders included) one for each rotation axis. I'll tie all of this to a pyboard (http://micropython.org/static/resources/pybv10-pinout.jpg) and see if I can make it all work together!
I have an arduino mega but would rather try and see how compact I can make this as the pyboard is about the size of two big stamps. I'll have my rapid prototyper up and running again in the next couple of days so I can make a housing and so on. This is one of a few projects I've got on the go so I'll keep this updated as and when I can.
ROS is an area I've just jumped in to. I realised that ROS can do exactly what I wanted in terms of moving data around in my system architecture so am going to learn to use that rather than reinvent the wheel.
Dennis Thanks for the shipping update and WOW 100Hz to 2K! That faster rate should fill in the gaps with even faster sweep speeds. Can't wait to hook it up.
Phil Good luck with ROS. I'm already stuck with rosserial Hello World... but I'm a real beginner with the programming part so progress is slow... plus its so darn cold in my shop!.
Fortunately, I negotiated a room in the house for this fun stuff (mainly by filling the garage with car stuff!) so it's a good environment for sitting and figuring stuff out! It sounds like ROS might become prominent in the 3DR world with work being done to integrate mavlink and pixhawk so I hope there'll be some guys more familiar with it to help us along as needed.
Dennis - I'm keeping an eye on LIDAR-Lite, and I'd like to use it when I can get one in the UK (shipping is nearly as much as the sensor at the moment!).
I think the key to success of this scanner must be the adaptability to drones. If we can "standardize" the design, maybe robot vendors will begin to sell the packaged off-the-shelf-parts... then the pixhawk programmers will begin to include code for this scanner.... especially for your very cool 2d system.
BTW, Have you seen the Erle Brain at http://erlerobotics.gitbooks.io/erle-robotics-erle-brain-a-linux-br...? It sounds like a pixhawk and ROS system.