What's LINK?
At Animas High School, juniors are given the opportunity to embark on a three-week internship of their choice. This is the perfect way to explore in depth an area of study that you are really passionate about. During the three weeks, we devote 100% of our time to the internship, allowing us to get the most out of it. I chose to do my internship at Colorado School of Mines, a well-known STEM college in Golden Colorado specializing in engineering. My mentor, Dr. Andrew Petruska, is a mechanical engineering professor specializing in robotics.
|
LINK Reflection:
I am so grateful for the opportunity that I have had over the past few weeks to participate in an awesome internship at Colorado School of Mines. Going into it, I had no idea what to expect. I expected to learn a little about what it would be like to go to college for mechanical engineering, and maybe assist in the construction of some basic robots. What I did not anticipate was the fact that well I did get to look at what it is like to be a student of mechanical engineering, it was from the perspective of a Masters or Ph.D. student. Also, well I did help to physically put together a massive drone, I also got to learn a lot about the programming side of robotics engineering, which is more and more a part of everything we do and build.
Dr. Andrew Petruska -> |
I was lucky to get a mentor that was willing to take time out of his day to explain what he was doing and how in order to get me to understand it a little bit better, as well as welcoming lab-mates that were willing to show me the ropes and involve me in their projects. I also had a great time getting to know Golden and the School of Mines campus. I had fun staying with my cousins who live in the area and agreed to allow Grady James and me to stay with them well we were both conducting out internships at Mines. This allowed me to get a taste for a more independent lifestyle well still staying in contact with people I know and trust.
<- Grady James |
Over the course of the three weeks, I helped to put together a drone, only to see it explode, I learned how to deal with three new coding languages and a new operating system, I developed a code that was implemented in drone software to help it fly underground, I walked around in a circle 30 times with several thousand dollars of equipment on my shoulder, I figured out how to write a code to process nearly a terabyte of data, and I experienced the frustration of debugging other peoples’ code. In short, I got to engage with the cutting edge of technology on fronts I barely knew existed, and watch both the triumphs and pitfalls of engineering and science.
The Stubbornly Disobedient Drone -> |
My Weekly Blog:
Week 3
Sorry for the late post... I got swept up in school as soon as I returned to Durango, and have barely had time to think lately. The last week of my internship was both the most and the least eventful. On the first day, I got the opportunity to sit in on a PHD defense of a mechanical engineering student. He was coming up with a way for machines to quantitatively assess the quality of a weld-pool and vary the amount of current, wire and shielding gas going to the weld to keep it uniformly strong. It took about two minutes of the presentation for me to realize how under-prepared I was to even comprehend what he was saying. Even so, I am glad that I went, if only because it showed me how people are tackling real-world problems today.
Midway through the week, I had the opportunity to learn a little more about the context of some of the other work going on in the lab. Dr Petruska told me about how one of the PHD students, Rich, was working on a project that allows you to use electromagnets to control the path of a thin and flexible needle. This has endless potential applications in the medical field, as it would allow doctors to do precise brain surgeries without the need to remove part of the skull, as well as potentially make it possible to safely perform surgeries on a baby well still in fetus form. These are possible because the needle is remote-controlled, and so very accurate and not prone to error, as well as the fact that the needle is nearly as soft and malleable as the fetus or brain tissue, making it less likely to rip and tear the vital organs.
I spent most of my work time this week trying to finish my processing code, as it kept running into errors two or three hours into the run-time. This was a huge problem, but once fixed, it made the code much more robust and able to deal with a variety of potential errors with the bag files. At one point, the code kept putting out ZERO as the answer, when that was clearly faulty. After hours of searching through and debugging the four or five different scripts that could have resulted in this error, we eventually found that there was an extra and sign at the end of one of the lines. This was one of the hardest parts of the internship, looking back through all of your code and code written by other people and searching for that one missing letter or semicolon. Well I do enjoy computer programming, I do not think that I could do a job purely consisting of IT, as I would surely go insane after the first few months.
The other thing I was able to do this week was help to fly the drone. For the past few months, the drone would do this crazy thing where when asked to fly, it would start to wobble, and then take off in a random direction. On Thursday, we went out to the field to test one more time, and the wobble was gone! Unfortunately, the wobble had actually just moved from one axis to another, making it attempt to dive-bomb the ground when we asked it to spin in a circle.
Midway through the week, I had the opportunity to learn a little more about the context of some of the other work going on in the lab. Dr Petruska told me about how one of the PHD students, Rich, was working on a project that allows you to use electromagnets to control the path of a thin and flexible needle. This has endless potential applications in the medical field, as it would allow doctors to do precise brain surgeries without the need to remove part of the skull, as well as potentially make it possible to safely perform surgeries on a baby well still in fetus form. These are possible because the needle is remote-controlled, and so very accurate and not prone to error, as well as the fact that the needle is nearly as soft and malleable as the fetus or brain tissue, making it less likely to rip and tear the vital organs.
I spent most of my work time this week trying to finish my processing code, as it kept running into errors two or three hours into the run-time. This was a huge problem, but once fixed, it made the code much more robust and able to deal with a variety of potential errors with the bag files. At one point, the code kept putting out ZERO as the answer, when that was clearly faulty. After hours of searching through and debugging the four or five different scripts that could have resulted in this error, we eventually found that there was an extra and sign at the end of one of the lines. This was one of the hardest parts of the internship, looking back through all of your code and code written by other people and searching for that one missing letter or semicolon. Well I do enjoy computer programming, I do not think that I could do a job purely consisting of IT, as I would surely go insane after the first few months.
The other thing I was able to do this week was help to fly the drone. For the past few months, the drone would do this crazy thing where when asked to fly, it would start to wobble, and then take off in a random direction. On Thursday, we went out to the field to test one more time, and the wobble was gone! Unfortunately, the wobble had actually just moved from one axis to another, making it attempt to dive-bomb the ground when we asked it to spin in a circle.
Week 2
Week two went by in a blur. I started off with a lot of time spent working on the crawling/flying robot. On Tuesday, the project sponsor was on campus and wanted a demonstration of the progress of the project. All of a sudden, we were all-hands-on-deck trying to get the whole thing fully assembled. We hadn't even tested the drive or fly function yet, and when we set it on the ground to test the driving capability in the lab, the 3D-printed weg (wheel-leg) hub got stripped out by the motor shaft, making the robot sit still while the motor spun. We immediately went back to the drawing board for how to create the interface between the shaft and the wegs. We decided to find washers about the same size as the motor shaft and then cut a notch out of them for the shaft key. Once those were fabricated and bolted down to the wegs, we tested the walking function again, this time with promising results. Given that we were already late for the meeting with the sponsor, we strapped the battery on with some duct tape and ran down to the meeting. When we got down there, we quickly set up and prepared to demonstrate the robot functionality. With everyone circled around the drone in the cold, we started to walk it forward. Unfortunately, the cold made the 3D-printed parts more brittle, so after two or three steps, one of the wegs snapped at the hub and fell off of the robot. At this point, the DJI took over and tried to take off into the air. It turns out that when putting together the drone, the person who was attaching the props didn't tighten down one of the props. This meant that the drone couldn't get power from that corner and it promptly flipped over and crashed into the pavement. When it hit the ground, the duct tape holding the battery onto the drone broke and the battery fell into the nearest prop, causing it to burst into flames. At this point, a couple of quick-thinking people ran forward and dragged the expensive tech that was the brain of the drone from the fire.
After that disaster, the week went much more smoothly. On Wednesday, I went to campus around 3:00 to do data collection. The MFLO project is the study and application of LIDAR technology to allow a drone to fly and map autonomously underground without the use of GPS. Mark and I mounted the two LIDAR's (the Velodyne and the Ouster) on a shoulder mount, put his computer and a car battery in a backpack and marked a course through an alley way to test the data collection and processing capabilities. Over the course of a few hours, we walked the course 30 times, then 30 more on an indoor course. This collected over 300 GB of data. Over the next two days, I wrote a program that could look at each of those files and calculate how good the mapping software was on that course. I then put the data through this program which took hours as the computer had to process and work with hundreds of GB of data.
After that disaster, the week went much more smoothly. On Wednesday, I went to campus around 3:00 to do data collection. The MFLO project is the study and application of LIDAR technology to allow a drone to fly and map autonomously underground without the use of GPS. Mark and I mounted the two LIDAR's (the Velodyne and the Ouster) on a shoulder mount, put his computer and a car battery in a backpack and marked a course through an alley way to test the data collection and processing capabilities. Over the course of a few hours, we walked the course 30 times, then 30 more on an indoor course. This collected over 300 GB of data. Over the next two days, I wrote a program that could look at each of those files and calculate how good the mapping software was on that course. I then put the data through this program which took hours as the computer had to process and work with hundreds of GB of data.
Week 1
I just finished the first week of my internship at the School of Mines. On the first day, I was a little intimidated by the lab. The first thing you see when you walk in the door is a line of robotic arms and space-age-looking tech. There are computers scattered around the room with graduate and PHD students diligently coding away. My mentor, Dr Andrew Petruska, had me dive right into one of the ongoing projects as soon as I walked through the door. For the past two years, Dr Petruska has been working with Mark, a robotics grad student to create an autonomously flying drone that functions without the use of GPS underground. The idea is to use a LIDAR sensor to map the surroundings and then remember what it looks like and see how each point moves to extrapolate how the drone itself has moved. On the first day, I was instructed to do some ground-level research on the mechanics of C++, a programming language that I have never used before. The second day, I got to apply that coding knowledge to create a median filter for the point project. Once that was done, I got to apply myself to a series of other challenges, including troubleshooting body flaws in a carbon fiber walking/flying drone and programming a Husky robot. Through these endeavors, I not only got to find a new knowledge of not one but two new coding languages, but also got experience how it feels to be in a college-level class, finding solutions to real-world problems that have not been tackled before.
Anticipation and Expectations
LINK is just around the corner, and I am super excited to explore the possibilities of mechanical engineering and robotic design. I have confirmed my internship at Mines. The process of finding my internship was (blessedly) easier than anticipated. As soon as I heard about LINK, I started to brainstorm possible places where I could intern and learn as much as possible about engineering. After talking with Janae (our internship coordinator at AHS) I found out about Dr Andrew Petruska, a Mechanical Engineering professor at Colorado school of Mines. This was the perfect opportunity for me, as my cousins live about 15 minutes from the CSM campus. I called him up and he said that I would be welcome to work with him for the three weeks and that was that.
I am thrilled to explore a new city for three weeks while also getting a feel for School of Mines and what it is like to go to college for engineering. I am a little nervous about having to code in C++, as I only have experience in JavaScript. This may not sound like a big difference, but the constructs are completely different. JavaScript is a prototype script language, while C++ is an object driven compiler language. This means that they are as different from each other as English and French: there is some overlap, but the fundamental sentence structure is changed. I am also looking forward to getting to know how high-dollar engineering projects are conducted in college.
I am thrilled to explore a new city for three weeks while also getting a feel for School of Mines and what it is like to go to college for engineering. I am a little nervous about having to code in C++, as I only have experience in JavaScript. This may not sound like a big difference, but the constructs are completely different. JavaScript is a prototype script language, while C++ is an object driven compiler language. This means that they are as different from each other as English and French: there is some overlap, but the fundamental sentence structure is changed. I am also looking forward to getting to know how high-dollar engineering projects are conducted in college.