Soft-exoskeleton Part 3: Starting Mid-Term Project (Fagprojekt)

…Continuing from a great 3-week course, this is where the actual mid-term project starts and the team assembles for the first time to start the actual project.

There is literally an incredible amount of stuff that has happened since we started this project. I cannot include them all but I will try to give an insight for those so inclined.

First of all, by random coincidence one of my friends saw a posting for a competition in wearable electronics and forwarded it to me:
While it was a competition targeting electronic/software engineers, the suggested topics hit our project right on the nail so we thought we’d give it a go anyway. They required a team of maximum 5, which we were. I sent them the application while mentioning that we were all mechanical engineering students intending to build an exoskeleton. All seemed good and we got accepted as contestants.

eFactor 2014 - Competition in Wearable Electronics

eFactor 2014 – Competition in Wearable Electronics

The contest revolved around a development kit that all teams were given. The kit included an Arduino Uno and a bunch of other electronics gear which we weren’t quite sure how to include in our project. Nonetheless, we went to the introduction meeting where all the teams were supposed to present themselves, their experience and introducing their project before being handed the kit. The rules for the competition did mention something about 1 of the contestants being allowed to not have prior experience with embedded systems, but having written in the initial e-mail that I was the only one with actual electronics and programming experience and having heard no shouting or other comments on that part, I hoped that they wouldn’t mind.
The meeting was setup with a Skype call to 3 other Universities with teams participating as well. I think we were probably team number 7 in line to introduce ourselves so we had a little time to to enjoy the show. This mainly meant realising how much more experience everyone else had, leaving us increasingly uncomfortable about our presentation.
When we finally went in front of the camera I started by introducing the team, my former experience, that I was a mechanical engineering student but had played around with arduinoes before. However, when the next in line simply said that he was a mech student with no prior embedded systems experience, followed by two more saying the same, the situation got a little tense. When the last guy on our team proclaimed the exact same lack of experience in embedded system the organizer, who was also handing out the dev kits, looked rather confused. None the less he said that he really hoped that some of us had at least a slight idea about what we were doing before handing over the kit. We later heard that many of the other teams watching, had been quite amused by the awkward moment.

Eventually everything was ok though when we spoke to him after the presentation. The competition was about learning electronics and seeing the potential of wearable electronics in particular, so as long as we learned something, he was happy.

That was the signup to eFactor. The finals were on the 5th of April given us about 3 months to come up with something to show, on a project based on a concept that none of us had working with before. Let the fun times begin!

Moving on the the actual mid-term course. As mentioned earlier, the project also included a course in project management. In theory we weren’t really supposed to have a team yet, as we should spend the first couple of lessons analysing our Belbin roles and make our teams based on them. However, as we had locked down our team by signing up to eFactor we were excempt. As it turned out, after analysing our Belbin roles, our team was a completely unintended perfect match. Well done subconcious! or luck… or whatever.. but the fact was that we had a perfect team, in theory. I should mention that we hadn’t at that time worked together all 5 and the team was made based initially on social compatibility and friendship, so it seemed it could work 🙂

– I see that this will be quite a long post. However, I quite enjoy writing it and I don’t even know if anyone is going to read it, so I will continue like this. Sorry in advance if you have reached this point but feel super tired by all the insignificant and boring details that I am providing and just want to find the results. I will not stop…

Anyway. Done with the Belbin stuff, done with the eFactor signup. Moving on the getting some hands dirty. I must admit that I cannot remember everything that happened and when and why and stuff but suddenly we had an office. David Johan Christensen happened to be part of a department at DTU that had moved into a new building, waiting for the old one to be renovated. With him as a superviser we were then allowed to occupy one of the rooms in their old building, as it wouldn’t be renovated before summer. We got a huge room with accompanying solder station and sound studio. Perfect!

The team had many meetings about how to approach the project and given my epxerience from the 3-week couse I started out as project manager. Eventually I would be replaced by someone else more suitable for the role so that everyone would do what they were good at.

Introducing the team:

The team - eFactor team Filosoma

The team – eFactor team Filosoma

  • Andreas Körkel: Former carpenter. Good experience in the professional life. Great at quality control and getting things finished as well as talking to people.
  • Peter Hybertz: Great engineering problemsolver with a very analytical and organized approach.
  • Lauge Kongstad: Super organized. Overview of what needs to be done when and an interest in project management (Guess who got to take the project manager role after me?), and good at a range og engineering subjects.
  • Frank Olsen: Former blacksmith and great technical engineering problemsolver
  • Me: I guess my strength is probably in a broad but shallow experience in many subjects touching on both electronics, programming, mechanics, 3D design, professional life / teamwork and idea generation. Also I seem to have a more cowboy-style chaotic approach to rapid prototyping and developent than the rest of the team. We compliment each other very well 🙂

Beyond the mentioned strengths, this obviously isn’t an exhaustive list of talents. Everyone is a super capable engineering student way above my analytical and science skills, so I must say I’m more than happy about the coincidence that brought us together!

Having the funding at hand from Glostrup Hospital we started ordering stock of braided tubing, nuts, bolts, wood, pneumatic components and other misc requirements. Furthermore, having wanted to get a compressor and a 3D printer for myself for quite a while I decided to buy both of them now and dedicating them to the project initially. Justification approved and I could finally get my hands on both…
Andreas put together a huge wooded armature for testing the different muscle designs and shoulder mechanics and we got hold of a bunch of sensors from DTU, giving us a nice little test setup.

Wooden armature with mounted penumatic muscle and sensors

Wooden armature with mounted penumatic muscle and sensors

Given the fairly hacked-together armature it proved impossible to attach the rotation-sensor exactly concentric to the shoulder axis. Oldham couples and a 3D-printer to the rescue and all was good again

Oldham couple connecting the shoulder joint with the rotation sensor

Oldham couple connecting the shoulder joint with the rotation sensor

With everything finally set up for testing, we started out gathering data on a lot of different muscle designs. However, with no emergency relief valve installed yet, we initially had to take several saftety measures when opening the valves:

Initial safety measure

Initial safety measure

However, realising we had a soundstudio just next door, we decided to abuse the situation and perform a few explosion-tests in there. This gave us a better sense of maximum pressure and allowed us to control the flow so that it would never go beyond. Having the sound studio just next door also gave a few benefits in muffling the sound of the compressor a little. Eventually the office looked a little like this:

Despite the late hour Andreas is not sleeping but rather working on a new muscle prototype

Despite the late hour Andreas is not sleeping but rather working on a new muscle prototype. To the left is a makeshift silicone mold made out of cardboard, tape and soap

Workbench art

Workbench art

Starting out with no knowledge whatsoever on pneumatic systems, putting the first bit together was a bit of a struggle. It seemed that pneumatic automation at DTU was no longer an active topic. Despite the plentiful specialists in analytical pneumatics we didn’t manage to find anyone who could tell us anything about the practical application and starting from scratch on that field could get expensive very quickly if we had to buy everything. With a bit of searching about, however, we did manage to find an assistant professor, Casper, who had known the previous professor in pneumatics. The professor had retired but left behind a whole cabinet full of pneumatic elements in the custody of Casper. He then arranged for us to have access to this cabinet and allowed us to use it freely. This was an amazing help! Despite the complete lack of knowledge we now no longer needed to buy everything simply for the sake of testing just to realise that it didnt work anyway. It was like lego. We all digged in and started looking for components matching each other and matching the different ends that we wanted to connect.

One of many boxes of random pneumatic components

One of many boxes of random pneumatic components

When we eventually found some of the needed bricks in the puzzle, we were able to attach the muscle to the first armature (my first test armature from the 3-week course) and test whether it could lift anything.. seems like it worked 🙂


This may look strange and wrong in a few different ways… we know… but it works and that’s just great 🙂

In the masses of pneumatic antiques we also found a few solenoid valves which got the honour of being our first control valves for the system. Following this little victory and the experience it had given us, we could finally sit down and discuss which other components we needed and order them.

From a previous project of mine I had already played around with an EMG-sensor – Namely the Advancer Technologies Muscle Sensor V3. During the meeting with Glostrup Hospital I had been asking around for anyone knowledgable about emg-signals and found that one of the guys at the meeting was a Ph.D in how you can use these signals (Probably wasn’t the official title, but that’s what I remember). Once again it was perfect. He told me that EMG would be an obvious choice for controlling our system and that many other existing exoskeletons were using the technology. With that in mind it seemed that controlling our system with such a sensor would be a solid choice, despite none of us being proficient in the area. It seemed that if ever we got stuck, there would be a huge knowledgebase within our reach, where we could find specialists and get help.
However, as I had previously documented how easily I could control a motor by muscle contractions, we should be able to get something out of it.


Putting together the Arduino Uno from our Dev Kit, EMG sensor (We were allowed to buy additional sensors for eFactor for a predefined sum) and the solenoid valves we managed to get our first muscle controlled muscle to lift a wooden arm, controlled by muscle contraction:


The theory of this definitely worked. The EMG signal in this case was still raw input with a simple threshold  allowing the apply pressure to different degrees. The reason for it relaxing again inbetween applying pressure is in this case due to leakage. None the less I felt like I had pretty good control of when I crossed the threshold and to what degree.
However, the sound of the solinoids was anything but pleasent and they didn’t seem to allow for faster PWM, giving a very uneven flow. After performing this test we starting researching other types of solenoids in the hopes that there would be a less noisy alternative. It seemed though, that solenoids could be the wrong way to go as we found a an article on the subject proposing instead servo actuated valves for more fluent control (Here).

However, after heading back to the cabinet with pneumatics, now looking for an alternative to the solenoid valves, we discovered a manual Festo front panel valve. This valve had a little mounting hole for whatever is normally used actuate it and a little rod in the middle that you push down to change the state. By design the valve was only meant as 2-way, but we realised that by pushing the rod down halfway, you could close all connections at the same time. This was exactly what we were looking for and with the mounting hole being fairly easy to measure we hoped to be able to construct our own mount.

With this all figured out it was merely a matter of playing around in Solidworks for a bit, an encouter with a 3D printer and puff, a servo-controlled valve was made.

3D-printed servo mount for a Festo push-valve

3D-printed servo mount for a Festo push-valve

Figuring out the mapping from servo-position to valve states was then a matter of applying pressure, moving it slightly while listening and then marking the points where it changed from pressure to hold to exhaust.

With all the components for the system now made and tested individually, we could finally put it all together and test the EMG control of pressure/hold/exhaust.


Bam, it was actually working fairly smooth! Next step was to calibrate the EMG-signal from the muscle and map it to the appropriate servo/valve positions for the most intuitive control.

To be continued in Part 4…


Muscle-triggered dancing crab: Biometrics, hell yeah!

A few days ago I finally received a muscle sensor which I’ve been wanting to buy since forever – this one: 4 days seemed like an infinity to wait playing around with it but tonight I finally got the chance.

What I found the most exciting was reliability of the signal. How hard it would be to measure the tension of a muscle and whether I’d need a whole bunch of filters to get anything sensible out of it. I had no idea what to expect when I bought it apart from having seen a few examples of it’s use online.

Turned out that it was really quite easy to control. I added a moving average filter with 10 samples and instantly had a signal I could use to control… in this case a servo with a crab on top.

I applied the electrodes on the flexor pollicis brevis – the muscle that pulls your thump towards your pinky -, set up a few conditions for the signal on the Arduino and BAM! The crab was dancing 🙂
By pushing my thump agains the other fingers, I tense the muscle and depending on the amount of tension I can make it rotate slower or faster. As for the conditions I set up a minimum signal threshold after which it would start moving. Each time It’d go beyond that threshold it would go in one direction, speeding up depending on the tension. When the signal goes below the threshold it reverses direction, so it’d go the other way when I tighten again.
The fact that the crab may seem to follow my hand at certain points, could be a bit misleading as I’m merely playing around and aiming it by tensing/relaxing the muscle accordingly. All motion is muscle-controlled 🙂

Oh, and sorry about the sound. I happened to be listening to Radiohead while recording and now Youtube recognized it and claimed that it was copyrighted, so they offered a way of removing only the song from the video. Didn’t really work, but as long as it keeps my back clear I’m good.

[In case somebody is wondering about the thing attached to the servo, it is a crab made of chestnuts:]

Kindly donated by Rebekka

Kindly donated by Rebekka

Carls first sign of life

I finally got around to finishing the eye mechanism so here is the dude looking around for the first time!

It’s currently controlled manually by 2 potentiometers driving an Arduino Diecimila and 2 standard servos. Maybe one day it will be procedurally controlled or something.

Eyebrows are shit and probably needs redesign before I get more into that, but I’m still proud of him!

Useless in function

Yet rather entertaining if you consider it a challenge.

My latest creation is inspired by ‘The Most Useless Machine, Ever!’ as seen on youtube.

Having had this kind of machine on my todo list for a while and being invited to a wedding where I knew the newlyweds would appreciate such device I decided to go for it.

It’s a silly device and utterly useless but it was most certainly fun to build and I learned quite a few things from it, despite it’s simplicity.
First and foremost I got to feel a bit more confident in constructing something out of wood/metal to hold different electronic components. That’s one thing I’ve been a bit anxious about as it has been ages since I made anything from scratch. Secondly I had to open up a Servo motor and resolder a few wires to enable a different type of control and as a result of that, I now know how I can hack it further to get actual position feedback directly from a standard servo. This is something I only thought possible (or at least with my skills) through using servos with such a feature already built in, like the Robotis Dynamixel servos that I’ve been using before, but being able to get position feedback from normal (And cheap) servos definitely opens up for some goodies 🙂

A how-to on creating one of these can be found everyone on the web so I wont explain the specifics.
Only thing different from theirs to mine is that I used this wooden hand carved box from ebay and the brass rim covering the cut through the lid was only put there to cover up for my lacking wood-cutting skills. Wasn’t planned for initially 🙂

Here are a few stills:

I had quite a good time shaping the finger as well but I forgot to document it by stills before I handed over the present, so you’ll have to check it out in the video instead, which is here: