Robotics: Adaptive Control and Vision
Our robot arm is learning to control itself from optical feedback alone! We connected the Lagadic’s visual servoing platform (ViSP), OpenCVs robust homography estimator and University of Edinburgh’s Locally Weighted Projection Regression (LWPR) adaptive control to create a software stack for a cheap USB robot arm toy and a webcam. The hardware cost about £48, and it took us 6 weekends to connect up cutting edge open source research software. Yes! All this software is free! It’s been paid for already. I hope this article will guide people towards making use of these valuable public domain resources. We used an adaptive control scheme so at no point was robotic geometry measured, and instead the software *learnt* how to move the robot from experience alone.
Motivation
To recap (here and here), our goal is to build high precision robot systems using cheap components, and now we have actually tried a control installation. The existing approach to precision machinery is to spend lots of money on precision steel components and more or less control the machine open loop (without feedback). CNCs are a good example of this where the lead screws are *really* expensive. This approach made sense when we did not have cheap methods of precision feedback, but now we have cheap cameras and cheap computation (thanks smart phones), an alternative method for obtaining precision could be to just to use dodgy mechanics and closed loop control (feedback). Visual feedback is particularly attractive because: its easy to install; it is contactless (so does not affect the motion of the thing you want to control) and it doesn’t wear. With vision you can just slap markers on a mechanical part and off you go (with the appropriate software).
PCB ordering
Janek “hand soldered BGAs” Mann has just published his extensive PCB prototyping buying experience.
[Addition by Al] And Hacklab member Peter Jackson (@greenhac, not the Lord of the Rings guy) is documenting his experiences with laying out his first board and ordering prototypes from Seeed Studio on his blog.
Easy Version Control: Git on Dropbox
The problem: you need to share files with people on an ad hoc basis for a project.
One choice is sharing files with Dropbox. On the plus side of Dropbox is it’s ease of use, however, there is a drawback that if you work on the same files you get “My conflicted copy of x” spawning everywhere and making a mess. If you are coding you will trip over other author’ changes.
To work around that problem you need version control. But that can come with baggage. You’ll need a server to run a git/svn/cvs (infrastructure), or a project on GitHub/sourceforge/google code (open source requirement, or pro account). Some projects don’t have these resources or freedoms, so they do without version control, but there is another way…
You can run the best version control software from inside a Dropbox folder! (or Google Drive) Running git from a Dropbox folder does not require spending money, having a server or open sourcing files. Because git compresses its repositories, it also reduces your Dropbox quota usage. Awesome! And it is easy to install. In this article I will show you how to set everything up properly, and give you a quick user guide to git incase you (or your collaborators) have not used it before. By the end you should be able to setup and use git like a true intermediate.
Read the full article »
Edinburgh Hacklab @ EMFCamp
The first UK hacker camp in many years was taking place in Milton Keynes, hackers, makers and other interested people were going to be there from across the UK and beyond. It was an opportunity that couldn’t be missed. After a early start the “hackbus” (a hired 9 seat mini-bus) was making good progress and we arrived by mid-afternoon in time to put up our tents and connect to the supper-fast Internet connection before the first talk started….
There were several other hack spaces, including NottingHack that had brought a gazebo village complete with laser cutter. Our “village” was slightly more modest a few straw bales with cooking equipment spread out nearby. A borrowed sail provided the only means of identification and protection from rain, that fortunately didn’t occur in any significant quantity.
What is Code & Coffee all about
Why on earth would you like to spend an evening on a laptop after you most likely have been sitting on an computer for the last 8h? Because its cool, right?!
Code & Coffee is a software night that I host at the Edinburgh Hacklab. It is my pet project, to give me an hour or two every week to work on an ideas I fancy. As with every pet I do get attached to what I am making. Which is great, because it allows me to continue even if I am frustrated about my progress so far.
I am not a programmer by daylight. And here is a the secrete: most answers are on the interwebs and mailing list archives anyway. Here is an other one: 99% of the code I write and sketches that I draw are ending up in this cupboard folder called “Desktop2012″.
I don’t care.
I do care that there is once a week a space in my calendar where I am speaking with the other people about ideas and ways on how to solve problems than most likely, I didn’t know exist before. I do care that there is a welcoming atmosphere where people feel encouraged to talk about the design and coding traps they are facing and listen how people found a way around them. It has often a bit a campfire feeling, but don’t get me wrong: learning is something I have to do myself. There is nobody that designs and codes for me, but their is a Hacklab community out there that, inspires me.
Feel free to come along: Thursday 9th Aug 2012 7:30ish.
Hacklab inspired “QuickRota” out now!
www.quickrota.com is a site that allows a group of people to co-manage a regular rota. Participants of an active rota are emailed one-at-a-time to indicate when “its their turn”. Tom Joyce and I developed this over the last 3 months in response to a problem we see in my jobs, flats and in Edinburgh Hacklab.
There are some tasks no-one likes doing. In a shared flat it’s the bins. In academia it’s update the website, or organise the weekly seminar. In the Hacklab it’s post a wordpress article (although I like doing it). In these contexts no-one is really professionally compelled to do these things, so everyone understands its best to just take turns doing them. In practice though, a rota needs a dragon to enforce it, because once the rota gets derailed, that’s the end of that.
The dragon of a rota hates being the dragon though. They still have to do the unpleasant task AND they have to nag everyone else, *every week*. So that was the inspiration for quickrota, I am truly sick of nagging people to do things. Lets make the computer do the nagging!
Its like an email list, except that only one person is emailed on the list regularly. We made it super easy to setup a new rota, because organisations like hacklab should be able to create project groups and tear them down really fast. Furthermore, everyone in a rota is an “admin”, anyone can add/remove other participants from the rota, it is designed for tasks with no single point of failure.
I have been playing with QuickRota in my personal life for a few months now. My favourite rota was one I set up with my girlfriend to demo how it worked. I created a rota called “its your turn to be nice” which fires once a week. I was not serious about it, it was just an example. But the following week after, I had totally forgotten about it, and I was in a bad mood. Anyway, that morning I received an email to be nice (from myself in the past) and it made me think twice and get over my grumpiness. Since then my girlfriend and I have taken “be nice day” really seriously and it has turned out to be brilliant fun every Sunday.
So I hope you enjoy www.quickrota.com, its free. Experiment with rotas, I genuinely think this is an awesome way of living/working but maybe because I am part robot :p Send me your feedback!
Tom
PIs and Eyes
So after much waiting the first Raspberry Pis to arrive put in an appearance at last Tuesdays open night. After no small task of finding a USB keyboard and mouse and doing an HDMI monitor bodge we were ready to go. So what is the first thing to do with the Raspberry Pi, lets play some sound. Oh, the media player app can’t recognise the sound device, someone else must of had the problem, yets look it up. Out came several iPads to help look up the solution and best part an hour later we had sound, yah!
On the back of the sound success we thought it might be a good idea to try playing a game, because after all the programmers of the future can’t hack python all day can they? How about a bit of ExtermeTuxRacer? A few aptitude commands later it was installed and ready to go. After a bit of a delay the sound track started playing so we knew we had well and truly nailed that particular issue. Graphics performance was sluggish to say the least, a few frames a minute was the best we managed to get and it never made it into the level properly before we gave up and pulled the power out. We suspect the graphics drivers wern’t making use of hardware acceleration built into the Pi and was doing all the rendering painfully in software.
So in summary if you do sensible things with the Raspberry Pi is just works. The driver setup needs a bit of work but this will likely be fixed in future releases of the software.
Whilst the Raspberry PI was stuggling on TuxRacer Garry got his rather large collection (5?!) of One Laptop Per Child machines out of his bag for everybody to play with.
The Eyeborg guys where also using the lab working on their most recent iteration of the Eye. This involved curing something interesting in a microwave, doing some precise dremeling in the bathroom and soldering some tiny components together.
Another interesting and busy Tuesday night. If you have a project you would like some advice on maybe you are just interesting to watch and listen then you are very welcome to come along. See our events page for more information.
Clementines (Coffee) & Code
The hacklab will be open tonight (Thursday 29th March) from 7:30pm for the weekly Software night. Bit later
than usual to give everyone a chance to enjoy the sunshine.
Why Clementines? If it’s still warm then refreshing fruit may be just
the thing for a night of code hacking. Don’t worry we still have
Coffee!
Everybody welcome. Hope to see you there.
Learn to program – Code Year
Computers are the most flexible tool in the engineers toolbox. When I grew up I think I was lucky to be born into the start of the home computer boom of the 80s. Computers like the BBC micro and spectrum were very easy to program, and because computers were so novel, our expectations of what could be achieved were easily within the reach of single programmer. Now were in the millennium, and PCs do so much more, the methods we use to program them are much more complicated. Learning to program has become very difficult on standard computing kit found in the home. So how should the next generation learn how to program?
30 Years of BBC Micro
On a wet and windy night when anybody sensible would be staying inside, a few hardy individuals ventured out to the Hacklab to celebrate 30 years of the BBC Micro.
Several BBCs, now in Martin’s possession, had made the trip north and after a bit of swapping of keyboards etc one was ready to go. The power switch was flicked followed by the classic bleep from the speaker.
Attempts to use a real floppy drive resulted in “funny noises” so a floppy disk emulator board with a 2GB SD card (probably enough to store every BBC title many times over) was used for storage. It didn’t take long for classic titles such as Elite, Repton and Stryker’s Run to be loaded up and played with enthusiasm.
Many British children of the 80s and early 90s grew up around a BBC either at school or home if you were fortunate enough to have one. I remember school teachers’ children (and often large group of friends!) would spend many hours on the BBC that had been brought home from school for the summer holidays.
The computing landscape has changed massively since the BBC was king. Raw computing power many magnitudes more powerful than a “Beeb” are now available for a fraction of the cost. However arguably computing has become less accessible with the complexity of many modern systems making it hard for a fledgling hacker to start their path. Products such as Raspberry-Pi aim to encourage such learning but the fact remains that there won’t be anything quite like a BBC again.



