This is our version of transforming reality into a story. What we meant was that we are a group of four classmates and we decided to join the Adopt A Bot challenge.
At first, we recieved the robot and we analyzed its abilities.
We got in touch with our mentor, Charlie, and he helped us by advising us what is important to do and what we should do to make the best of our project. Step by step, we created our scenario and all the work began.
- 1 Our team
- 2 The Scenario
- 3 William's Adventure
- 4 Our work
- 5 Having fun while working
- 6 Our workplace
- 7 Our platform
- 8 The characters
- 9 The code
- 10 How we prepared for the presentation
- 11 Last week before the presentation day
- 12 Problems we met
- 13 What we learned from the Adopt a Bot Challenge
- 14 "Nicolae Balcescu" High School
We are a team of four students of "Nicolae Balcescu" high school in Cluj Napoca, Romania. We're all classmates, in the 10th grade and we are all studying Mathematics-Informatics.
Ioana Sabau is the artist. She got distinguished talents in arts and she can always solve any difficult situation.
Diana Tibre is the creative one. She has a huge passion for design. Diana will always notice the little details and she always want the things to be the best.
Tudor Tise, the ambitious one, is very smart and he always gets involved in projects. He is passionate in modern high-tech.
Andrei Muntean is the Technology specialist. He is very clever and he learns things very fast.
We spent a lot of time thinking about how our scenario will be. We came with so many ideas but none of them turned out to be chosen by us. We put our heads togheter and we found the best idea.
We inspired ourselves by a Romanian folk story, called "The story of Harap-Alb". Let me tell you how the story goes. It is about a king who had three sons and his brother had three daughters. The succesor of the throne must always be a strong man, able to fight against the bad creatures. Therefore, the king's brother asked him if he could send the strongest of his sons to the other part of the world, in order to become the king of his realm. To discover which of the three sons was the best to accomplish the uncle's requirement, the king put his sons to the test. The first two sons failed, and the only one that passed the test was the youngest son, Harap-Alb. Even if his father didn't believed in him, Harap-Alb left his father castle and travelled the world to his uncle's realm. He was put to many attempts and he had to fight demons and resolve dares, but, in the end, he succeeded and he became the king of his father's brother's realm.
We took some elements from this traditional story and we processed them in our way, creating our scenario for the Adopt-a-Bot Challenge.
Once upon a time there was a king and he had a son named William. His father, old and ill, decided to cede him the throne. In order to become the king of the realm, William must prove that he is worthy. He must go on a dangerous path, full of obstacles.
Somewhere, hidden in a cave guarded by monsters, is a treasure. William has to find it, for showing his dad his abilities. He gets ready and he leaves to find the treasure and his crown.
Along the way, he meets the good fairy. She helps him in his journey by providing essential tips and she promised him that she will follow him the whole journey, lighting his way. Later, he runs into a dragon. William must beware of the dragon’s flames. He manages to pass the challenge. But wait, there is a monster waiting for him. The monster wants to kill him, but William fights fearless and defeats him.
Tired because of the numerous obstacles, he finds a cave where he rests. William realizes that the treasure is hidden there. He returns to his father with the crown, ready to become the king.
His father is very proud of his son and without any hesistation, he gives William the throne and he designates him the king of the realm.
How we started?
At first we started documenting about the contest. We researched about what Adoptabot challenge means by taking in consideration what the competitors did the previous year and we asked for some advice our schoolmates from the 11th grade, which participated last year. We understood that the scenario and the implementation are very important.
How we decided on the story?
So we started thinking about the story. We took in consideration what Finch was able to do with the sensors. It took us a while to figure out what would work better for the robot because we wanted to include all of his qualities. We end up with remodeling a tale from Romania about a prince going through trials to win the crown and become the king of the realm.
How we dealt with the stories that were not good enough?
Before this idea we had many others, but none of them was so personal, as we represent Romania and this is a story from our culture.
How we divided the work, who is doing what?
As soon as we have decided the scenario we started thinking about the other challenges that we must face. They were: producing design documents, implementation, update wiki and final presentation. We divided tasks so everyone could use their skills working together.
How we build our platform?
We started thinking about how the platform must be. We chose to design a black and white board. We painted the wooden platform black. To build the walls, we used styrofoam. We covered them with a brick pattern to make it more realistic. This would be the space where our prince will travel to find his crown. The platform is getting shape and the castle is white. At first, we had another castle, but the story worked better with the platform when we build a new one, more grandious :). We arranged the characters on the platform, accordingly to the order in the story. Now all that was missing was the cave, the main atraction, where the crown is hidden. The dark cave was made ingeniously to make William feel the dark and react.
During our work
The steps of our work
|Step 1||entering the challenge|
|Step 2||finding a name for our team|
|Step 3||documentation about the challenge|
|Step 4||finding a scenario|
|Step 5||writing it concrete|
|Step 6||creating the materials (example: logo)|
|Step 7||thinking about the platform|
|Step 8||building the platform|
|Step 9||writing the code and testing it|
|Step 10||finishing all the things|
Having fun while working
Thanks to our school, we recieved a classroom that we used as our workplace. We could work here quietly, with no one to disturb us and no sounds and noise to interrupt us from working. We brought there anything we needed to complete our project.
Before we started building our platform, we created a graphic sketch of it.
Finch will leave the castle and then he will meet the fairy . She is a kind character and she will light his way.
Later, finch will be in front of a dragon , which will try to burn him with his flames, but our hero will succeed in escaping.
The last character that appears in front of Finch is the monster . Finch will have a fight with him but he will win.
The robot will enter a cave, and in the dark he will find the treasure he is searching for. He will take the crown and then he will return to his father's castle, ready to retrieve it.
Working on the platform
Building the characters
It was the moment to populate the platform with characters and we started thinking what material would be suited for each one. The main character, our prince, needed no more than his crown. But dealing with the rest was tricky.The fairy was the first to take care of. We designed a pair of wings and we attached them to a Barbie doll. We made the wings large enough to use them as a guidance for the robot, so he will go on the right road. After that we had to take care of the dragon. This obstacle will try to kill William with his burning flames, coming from a hair dryer. We used a shoe box, painted in black. We attached to the box the image of the dragon. The monster guarding the cave, which William has to fight was made in the same way.So we made a beautiful fairy and two scarry monsters. All that was left was Finch interacting with them.It was the moment to populate the platform with characters and we started thinking what material would be suited for each one. The main character, our prince, needed no more than his crown. But dealing with the rest was tricky. The fairy was the first to take care of. We designed a pair of wings and we attached them to a Barbie doll. We made the wings large enough to use them as a guidance for the robot, so he will go on the right road. After that we had to take care of the dragon. This obstacle will try to kill William with his burning flames, coming from a hair dryer. We used a shoe box, painted in black. We attached to the box the image of the dragon. The monster guarding the cave, which William has to fight was made in the same way. So we made a beautiful fairy and two scarry monsters. All that was left was Finch interacting with them.
from finch import Finch from time import sleep f = Finch() zAccel = f.acceleration() i_temp = f.temperature(); i_l_light, i_r_light = f.light(); alpha_light = 0.20 alpha2_light = 0.10 alpha_temp = 0.65 while zAccel > -0.7: left_obstacle, right_obstacle = f.obstacle() l_light, r_light = f.light() temp = f.temperature() print(temp) if temp > i_temp + alpha_temp : k = 1 while k < 11: f.led(141,21,165) f.wheels(-1,-1) sleep(0.2) f.led(255,255,255) f.wheels(1,1) sleep(0.2) f.wheels(1,1) k = k + 1 i_temp = f.temperature() if i_l_light + alpha_light <= l_light or i_r_light + alpha_light <= r_light: f.led(0,0,255) f.wheels(-1,-0.3) sleep(0.2) f.wheels(0.3,1) sleep(0.2) f.led(0,0,255) if i_l_light - alpha2_light > l_light or i_r_light - alpha2_light > r_light: f.led(0,0,0) f.wheels(0.4,0.4) sleep(7) f.wheels(0,0) f.led(0,0,0) if left_obstacle: f.led(255,0,0) f.wheels(-0.3,-1.0) sleep(1.0) elif right_obstacle: f.led(255,255,0) f.wheels(-1.0, -0.3) sleep(1.0) else: f.wheels(1.0, 1.0) f.led(0,255,0) zAccel = f.acceleration() f.close()
About the code
- Obstacle (infrared) sensing
- This sensing is used in our scenario during the whole time. When the sensors detect an obstacle, the robot will go backwards and the led will turn red and green (depending on which side is the obstacle)
- Light sensors
- When the sensors cath a light, the robot will make a move from side to side and he will show a blue light
- When there is darker, the finch will go slower and he won't show any c o l o u r
- Temperature sensors
- When the temperature goes higher (in our story, the dragon will blow some burning flames on William, trying to kill him), the robot will make some moves back and front and his led will turn purple , alternating with white.
- The accelerometer
- We used this sensor to stop the robot in the case that he turnes over. Because we used a raspberry pi and a powerbank and they are quite heavy, there are some chances that Finch loses his balance. We hope that we won't need this sensor :)
How we prepared for the presentation
One week before the presentation day, everything must be ready. But it wasn't. The code needed some changes and we worked fastly, in order to complete the code as soon as posible. The platform was ready and we began to prepare for the presentation. We decided to film our presentation with a DSLR camera and we brought it to school for testing it, but there turned out a problem and we couldn't use it.
Last week before the presentation day
On Tuesday, a week before the presentation, we worked five hours continuously. We tested the webcam we were going to use for our presentation via skype and we discussed with our teachers. We made the final adjustments for our platform, such as glueing the parts together. We tried parts of our code, using the robot and the platform to observe what was going on well and what wasn't. We decided to film our presentation with a DSLR camera and we brought it to school for testing it, but it didn't worked as we wanted.
On the following day, on Wednesday, we updated the Wikipage and we verified it for not having grammatical and syntax mistakes.
On Thursday, we worked for four hours continuously. We wrote and tested some parts of the code and we also updated our wikipage, as we did daily.
Friday was a stressful day. We tried to solve any problems we had with the platform and we continued testing the code and improving it.
Then, we had the weekend. We weren't into school to work on the platform, but, from home, we continuously updated our wikipage. Also, as the final competition was approachig, we felt that we needed to be prepared to talk with the jury.So we wrote some lines, in order to be prepared.
On Monday, Diana got very sick and she stayed home. From home she updated the page, and Andrei and Ioana worked on in the school. They moved the platform in another classroom, in which we were going to make the presentation, and they tested the code several times to be sure that everything worked out as it should. We were a bit nervous because the robot was getting some misleading parameters from the environment. Because he started from a point were it was dark, the light sensor was not as sensible to changes of the luminosity that occured later. So we had a problem because William did not slow down in the dark of the cave, where he is supposed to find his crown. We solved that problem by moving the platform right under the light sources, so that there were no useless shadows.
TUESDAYYYYYY the final day. We could feel the chills. We did all the
Problems we met
What we learned from the Adopt a Bot Challenge
We learned how to work in a team and how to organize ourselves. We became better friends, working together for such a long period of time. We developed out creative skills, building the platform and the most important, our programming skills. This was a great opportunity for us to see how code can give life to objects . We learned how to devide our work and our time, in order to be on time with the whole project.
Our school is one of the most prestigious schools in Cluj Napoca, Romania. We are proud to be students of this high school. Also, we are thankful for having so many opportunities and teachers supporting us and helping us.