Thursday, December 18, 2008

Introduction to Robotics experience

This robotics class was really interesting. I even enjoyed doing homework. From the experience I have been in this class, constructing robot is very significant. This is because it's linked to every aspect of both science and math. For instance, if the robot has bigger wheels in circumference, it can move further than the one has smaller wheels with a same number of rotations. Programming the NXT is important too. Although the robot is well constructed for a certain situation, if programming is wrong, the robot won't work effectively. For example, we need to be very careful of making the program related to a sound sesnor. We should make two wait blocks to avoid two actions to simultaneously happen. Finally, utilizing every sensor is also pivotal. Without using sensors, we can't apply the robot to many situations. For example, without any sensors, what the robot can do is just moving as soon as it starts to run. Nevertheless, with a light sensor for instance, we can track a line with a specific color.

This class teached me a lot of scientific and mathmatic asepcts as I read the robotics book. With basic knowledges I gained by reading the book, I could effectively not only program NXT but also construct the robot. Then I could check if my applying was right by running the robot. Furthermore, this class required me to communicate and collaborate with people. Because this class was lacking the robots and books in number, it was very important to discuss with people and come up with a good plan. Also while doing some challenges, I needed to share the ideas well.

Tuesday, December 9, 2008

Tractor Pull - Test of Strength

This challenge is to construct a robot that will push or pull the most weight 50 cm in the fastest time. Since we are considering both of the strength and the time, it's very important to find out the gear ratio which torque and angular velocity are well balanced. If the torque is too high, then the robot won't be able to push the weight quickly. In contrast, if the angular velocity is too high, then the robot won't be able to push the weight effectively. It may not even push the weight. I really wonder which group will find the best gear ratio. In my opinion, this time, small gears won't work.

Today, the combination of the smallet gear and the biggest one, which made the gear ratio 5 was the most effective to pull or push the most weight.

Drag Race - Test of Speed

This challenge is to construct a robot that will be the fastest in a 3 meter race. Technically this challenge is a matter of designing a good set of gears. In fact, I saw many groups use the biggest gear on the motor and the smallest one on the wheel. However, very competitive, our group tried to use the combination of 4 gears (2 of the biggest ones and 2 of the smallest ones) Impressively, in the air the wheels rotated crazily. It was like a fan to cool people down. Unfortunately, however, when the robot was on the surface, it didn't even go. Therefore, we modified. This time, we used 2 of the medium size gears and 2 of the smallest ones. However, again, the robot didn't go. Thus, we just used the biggest gear and the smallest one only. I hope it will make a good start. A good start is the only way to be the first, because most robots' speed is the same as mine.

Am I depending on the luck too much ? :)

Thursday, December 4, 2008

Gears and Speed (investigation)

To check which Hypothesis is more effective, you measure teeth on a driving gear, teeth on a driven gear and gear ratio. You set the robot to go for only 3 seconds. Then you measure how far the robot goes for 3 times and average the distances. Averaging is important, because it reduces the error created during the experiment. With the average, you get the speed by diving it by time, which is 3 seconds. Having got every data for all conditions and using both of the Hypotheses A and B, you predict speed. After that, you compare the predicted values to the actual value. The Hypothesis which gives you a similar value to the actual one is consequently B. This is simply because the actual value and the predicted one are close. Accodring to my data, for the setting that gave me 49.3cm/s in reality, Hypothesis A gave me 18.1cm/s whereas Hypothesis B 50.3cm/s.

Another aspect we need closely look at is that speed and the gear ratio has a inversely proportional relationship. In other words, if one decreases, the other increases. Also if one increases, the other decreases. According to my data, gear ratio 1 gave me the speed 30.2cm/s. However, gear ratio 3/5 gave me the speed 49.3cm/s

Monday, November 24, 2008

Chapter 2 Gears

Gears are very important elements in a robot. They don't work by itself; in fact we need at least 2 of them. What they basically do is to transform one force into another effectively like a pulley or a chain. Beyond that, however the chapter discusses some properties of gears, relating to important aspects of physics. First of all, every gear has a certain number of teeth. This number of teeth simply tells us a lot of things. It determines the size of a gear. The more teeth a gear has, the bigger it is. Furthermore, when two or more gears are combined together, the number of teeth on each gear affects the speed of a robot. For instance, suppose a robot has two gears on its motor. One is a driving gear, which has 12 teeth and the other, a driven gear, which has 36 teeth. The time for the driving gear to rotate once is equal to the one for the driven gear to rotate 3 times. Therefore, the robot can speed up 3 times than an ordinary robot with the same number of teeth of a driving gear and a driven gear. This acceleration is called angular velcocity. However, we can't simply speed up the robot without losing anything. In fact, angular velocity decreases torque. The torque is strength of gears, which is used in such a way to go up tilt. The larger gears are, the more torque they have, because larger gears have a further distance from the centre. In order to make an extremely big torque, sacrificing the angular velocity, we can use geartrains. Here, we use more than 2 gears connected. However, it's important to set up carefully, because if torque is too big, than LEGO parts may get damaged.
There are other types of gear too. First, we have a work gear block. It looks like a stick and can connect it to types of gears mentioned eariler. It can't be turned by other gears thus create friction a lot. This friction isn't always bad as it allows very compact assembly solutions. The other gear is clutch gear. It helps to limit the strength we can get from a geared system and preserve our motors and parts. It usually accompanys geartrain.

Get in Gear (Investigation)

Mr. Inskeep gave us two questions to work on.

1. What would happen if you made your driving gear bigger and your driven gear smaller ?

If my driving gear is bigger than my driven gear, what would happen is that when the driving gear rotates a certain number of time, the driven gear rotates more, proportional to the number of time. This can speed up the robot. For instance, suppose the driving gear has 36 teeth and the driven gear 12. Then time taken for the driving gear to rotate once is equal to the one for the driven gear to rotate 3 times. The robot with this setting is 3 times faster than the robot with the same number of teeth of a driving gear and a driven gear. However, if the driving gear is bigger than the driven gear, torque decreases. This small torque causes the robot to struggle when it climbs up inclined surface.

2. What would happen if you made your driven gear bigger and your driving gear smaller ?

If my driven gear is bigger than my driving gear, what would happen is that when the driving gear rotates a certain number of time, the driven gear rotates less, proportional to the number of time. This can slow down the robot. For example, suppose the driving gear has 12 teeth and the driven gear 36. Then time taken for the driving gear to rotate 3 times is euql to the one for the driven gear to rotate once. The robot with this setting is 3 times slower than the robot with the same number of teeth of a driving gear and a driven gear. However, if the driving gear is smaller than the driven gear, torque increases. This big torque causes the robot not to struggle when it climbs up inclined surface.


Just for your information, the left gear is the driving gear and the right the driven gear.

Thursday, November 20, 2008

Chapter 14 Classic Projects

Just like Chapter 6, the purpose of this chapter is to pay a special attention to examples given in Chapter 14 and apply them to other various situations. The first example is how to design a program to explore our room. Mainly, we are using a touch sensor for this case. Letting the robot go straight for the most of time, we make lots of swing turns when the robot collides with obstacles. However, it's important to use a gear ratio 1:9 to slow the robot down for the first trial. This is because if it moves very fast, it might hurt when it collides with hard obstacles such as wall. Once the program is well designed, we can speed up by using a gear ratio 1:3. In case our room has a flight of staris going down, we can use an ultrasonic sensor facing the floor to sense the edge so that we can avoid a bad fall. The second example is to follow a line. In this case, we use a light sensor as a main sensor. First of all, it's very important to lower the attach point for the light sensor so that the sensor is much closer to the ground. In other words, the distance between the light sensor and the ground should be in the range of 5mm to 10mm. The reason why we do is that otherwise light reflected from the ground won't be effective enough for the light sensor to see. For the programming, we can make robot turn right when the light sensor sees the line and to turn left when it sees the surface out of the line. As the robot tracks the line, we may notice that robot is moving too slow. The main cause is the robot's gear. If the robot is moving too slow, we can find a bigger gear that is able to make robot move the fastest by trying out many times.

Obstacle Course Detection (Official trial)

We had two official trials. For the first tiral, we couldn't get a good score on the last part of the challenge. Since our robot didn't have a free port to include a missile shooting nor did we have a billiant idea to improve the last part, actually we deserved the bad score. However, Woosik and I dared to make another trial. The second trial was just fine before the last part. However, as the robot got closer to the finish line, it seemed to collide with the cans again. In fact, it eventually touch the cans slightly !! Therefore, I never expected a full score on this again. Nevertheless, when Mr. Inskeep asked the class if he should give us 9 or 10 for this, you guys kindly shouted '10' at the same time !! Thank you guys. I really appreciate your shouting(?) As a person who has finished the challenge though, please come up with a brilliant idea to avoid the cans. Depending on the luck like us is too risky...

Tuesday, November 18, 2008

Obstacle Course Detection (Process 3)

Today, we finally had an attempt to test our robot !! We had expected very good result, but our first attempt turned out to be really bad. The primiary cause of this bad result was that the robot was curving a lot instead of going straight, which massed up the entirle program. Therefore, we made robot go, curving in opposite direction to the curve that had been created in the first attempt. Eventually, our second attempt appeared to be really good. The robot, instead of curving, went straight. Furthermore, the program we had designed was effective too. In other words, now Woosik and I are ready for the actual trial !!

Obstacle Course Detection (Process 2)

As I said, I will show you our robot !!

It looks very simple but the wires are really COMPLICATED.

Today, Woosik and I worked on the programming.

The reason why the robot didn't stop in the box in the previous class was that we had a problem with setting the threshold of the light sensor. It was too LOW (approximately 16) Thus, we set a high value. If I am not mistaken, the value was about 50. Then, we made the robot stop in the box for 5 seconds by using the time sensor.

After prgramming for the box obstacle, we designed the program for the 2 walls. We made a swing turn (turning right) right after the touch sensor hit the first wall. Then, we made the robot go straight, sensing the second wall with the ultrasonic sensor. As we made the robot get close to the second wall, we made another swing turn (turning right again) After that, fianlly, we set to go straight until the light sensor sensed the white line at the end of the race. To be honest, we just hoped the robot would aviod the cans.

Wednesday, November 12, 2008

Chapter 6 Building Strategies

The main purpose of this chapter is to completely perceive basic techniques with the studless beam and design our own robots. To begin, the first technique is to make a best assembly of the beams. This technique is connecting two or more beams. Depending on the situations, we can use more rigid assembly instead of simply connecting two straight beams. However, we need to consider tension and compression to make more rigid assembly. These are forces that can act upon objects. Tension is a force that attempts to stretch or lengthen an object while compression to shorten or compact an object. These two forces are significant elements, because we can make a stronger robot by perfectly understanding them. There is another important element, which is weight. Weight determines the magnitude of inertia, which is the tendency that objects have to resist changes when in a state of motion or rest. For instance, when the bus suddenly starts to move, passengers may fall down, because they tend to be stationary but the bus makes them move forward. This inertia is important because as the magnitude of the inertia increases (in other words, as the weight increases) it’s very hard for robot to change its motion from the previous. Obviously we don’t want to design a robot that has a single motion. The second technique is modularity. While building our robot, we will likely have to dismantle and rebuild it, or parts of it. Therefore, it’s best to make our model by maximizing modularity. In other words, we should make it as easy to take apart as possible. The last technique is hybrid. It isn’t always necessary to make an assembly with the beams only. We can utilize the LEGO TECHNIC pieces too in order to make innovative and interesting creations. In my opinion, understanding this hybrid is very important, because this is the one that encourages us to design our own robot, which is the purpose of this chapter.

Monday, November 10, 2008

Obstacle Course Detection (Process 1)

Today, Woosik and I finishned constructing a robot to be used in the challenge. We didn't modify a lot from the original structure. Instead, we just kept it, because we thought it was stable enough to do the challenge. Therefore, what we basically did was installing sensors. I will post the picture of it later on. (So look forward to seeing how complicated it is !!) Furthermore, we had some time to create a program. When we tried out our program at the very end of the class, we succeeded going forward by clapping but failed to stop in the box. Therefore, in the next class, we will probably work on how to stop in the box and sucessive steps too.

Thursday, November 6, 2008

Obstacle Course Challenge

First of all, we need every sensor we have learnt so far : Sound sensor, Light sensor, Touch sensor and Ultrasonic Sensor. The robot starts by hearing a clap. It goes straight and meets the first obstacle which is stopping inside a box drawn on the ground. At this point, we can clap again to turn off the sound sensor and turn on the light sensor. As the light sensor sees the blue color, the robot stops and by using wait sensor (time) we can stop the robot for 5 seconds. Then the robot goes straight again. When it collides with the first wall, it turns right. As soon as it turns right, the ultrasonic sensor senses the second wall and the robot approaches it. Then the robot stops in front of walls and make a right turn and ultrasonic sensor senses the cans. Some of you might worry that the robot might hit the cans. However, the robot can avoid them by setting the robot to go straight. Lastly, by using light sensor, we can make the robot stops when it sees the white tape.

Wednesday, November 5, 2008

Chapter 1 Understanding LEGO® Geometry

In order to enjoy every aspect of LEGO robotics, it's very important to understand basic geometric properties of the LEGO bricks and beams. Measurement of LEGO bricks are based on the metric system. However, although they are based this system, it's important to keep in mind that a brick's height and length don't have equal values but a constant ratio. One of the most important bricks in LEGO is a TECHNIC brick, or a beam. This brick has some holes inside a beam which enable other beams to be connected to each other via pegs. Therefore, it's very significant to utilize it well, because we can construct a light and strong robot. To fit a diagonal beam, we need to use Pythagorean theorem. This theorem is that in a right triangle, square of hypotenuse have to be equal to sum of length squared and base squared. When we apply the theorem into our fitting a diagonal beam, number of holes inside a beam represents square root of any sides. For instance, if a beam of base has 3 holes and a beam of height has 4 holes, we can use a beam that has 5 holes as a diagonal beam, because 3 square (9) + 4 square (16) is equal to 5 square (25)

Additional information about Liftarms
Liftarms are beams that come in many shapes and sizes to connect parts at dffering angles. These are helpful when we need to construct the robot's grabbers, fingers, ball casters and etc.

Tuesday, November 4, 2008

Johnny's Field of View Experiment

For what do we do this experiment ?


The purpose of this experiment is to figure out how widely can the ultrasonic sensor sense.


Procedure

1. In front of the robot, stick a piece of long tape on the ground.

2. Randomly place the can ON the tape to figure out the longest distance that the robot can sense. It's very important to eliminate every obstacle between the can and the robot.

3. Once you have found the distance, draw a circle on the tape to mark it with a maker

4. Using the marker, draw a line on the tape every 10cm wide. Make sure lines not to exceed the circle.

5. Place the can out of the tape (in other words, on the white board) You must check if the robot shows distance in cm instead of ??????? If you find difficulty to put the can at the right place, try putting the can closer to the tape.

6. Draw a circle where the center of the can was at.

7. Repeat 5-6 until you get 15 points. It's good to get a circle at a different distance from before.

8. Deem of the place where the robot is the origin (0,0) of x and y axes. Find x and y coordinates of every circle.

9. On the recording paper, draw every circle according to its coordinates you've obtained. Keep in mind that the ratio of the actual distance and paper is 5 to 1. In other words, 1 cm on the recording paper is equal to 5 cm in reality)

This copying to the paper enables us to manage the data very easily !!!