An Update : Internship at Yost Labs

So it has been quite a while since I’ve posted an update on this site. I’m going to try start being more active since I have some new topics to provide discourse on.

 

yl_logo

The first thing I am going to talk about is my internship at Yost Labs. So back in May, I applied for and received my first real job as a programmer. At first, I worked as a researcher. My focus was mostly on a dreaded topic known as magnetometer calibration. Before I talk about that though, I should say what Yost Labs does.

Primarily, as far as I can tell, we make accurate orientation sensors. This sensor knows how you are holding it. Normally I would just say, “Just use a gyroscope, why buy a more expensive sensor?”. The reason is that a gyroscope will drift. The readings have noise and so if you code your orientation based solely on that, the sensor will become more inaccurate over time. Eventually it will be really wrong and have no way of knowing. Yost Labs, and others, solve this problem by using a technique called Sensor Fusion. You take three components and use their readings together to calculate your orientation. You need a gyroscope, accelerometer, and a magnetometer. The gyroscope does most of the work, but the other sensors are used to reassert correct position and prevent drift. For those who don’t know what these components are, I will explain quickly. A gyroscope measures angular velocity, which how fast you are rotating. The accelerometer measures general acceleration, which measures how fast you are moving. The magnetometer measures the Earth’s magnetic field and can tell where North is. Using this data and a complex piece of code called a filter, you can provide accurate orientation over long periods of time. The sensor technology is called 3-Space.

OK, so now that that is out of the way, we can move on. So my first real tasks were to do with 3-Space magnetometer calibration. The components need to be calibrated for them to work correctly.  The magnetometer especially needs calibration. The gyroscope, and the accelerometer do not need to be calibrated as often as the magnetometer. It needs calibrated each time you change location, usually only on a large scale, like miles. To calibrate, you need to take samples, and then calculate an offset and a matrix. It is really complicated so I’m not going any farther on that topic. My next major assignment was the PrioVR Utility App. PrioVR is a bunch of special sensors that you wear on your body and they can be used to find out the user’s body orientation, and position. Yost Labs had a Kickstarter about two years ago for PrioVR. After it was funded development started and was great at first. Then some stuff went down and we were massively delayed. I came in right as PrioVR was getting close to release. At the time, we still didn’t have a app for users to setup their suit with, so I built it. It had a lot of new challenges for me and I will detail the App as well as my new assignment in my next post.

It is pretty cool working here, and I can’t wait to provide more detail.

Leave a Reply

%d bloggers like this: