During the Ceremony of Rainbows, part of the final project for exhibition night was to transform the reading nook of the school into a cave. Lucas and Tiana wanted to have a bonfire inside the cave and knowing that a real bonfire couldn't be possible they thought about using LEDs. They used LightLogo, a micro world that can be loaded on Arduino and has the ability to program a neopixel ring through the Logo language. They paired to program LighLogo and create the bonfire with pieces from acrylic. During this project Lucas needed to program in textual code rather than with visual blocks. He practiced syntax, uploading code, the process of connecting the Arduino to the neopixel, and he coded variable and functions. The bonfire was inside the cave for exhibition night.
Lucas's Bonfire Documentation
We wanted to build a cave. The problem was that we had no light. We chose to have a light ring to give off light. The lights were from light emitting diodes (LEDs). We used the light ring for the bonfire so we could see. We also used the light ring so it would look more like a cave. We made the light ring glow by programing that makes the light go yellow, orange, red and white. In the program,we used functions. Our function name is “addfour”. You can use any name for your function. We assigned the functions to colors. We used the functions so we do not have to write the same code many times. It also makes your code easier to read. For our program we used variables in the function because we had to pass different values to it.
// you start with “to startup”
Loop //“loop” means you loop the thing in the brackets
setbrightness 20.99 //“setbrightness” means you set how bright the LED’s are. The range is 0-23.99
addfour white //The “addfour” is the name of the function that i chose.
End // you end the code with end.
to addfour :c //The “:c” is so you can choose any color and so you can modify the function...
repeat 4 // You say repeat 4 because that is how many 5’s fit in the light ring. there were 24 LEDs...
[setc :c // the setc :c is so you can set the variable...
fd 5 //the fd 5 is so the turtle moves and it colors the light ring while it is moving. The turtle is moving 5 LEDs...
wait 20] //the wait 20 means that you wait 20 milliseconds
End //you put end at the end.
Artificial Intelligence For Cuyo House
During the last unit of the school Lucas and Everett became interested in learning about AI (Artificial Intelligence) and decided to learn about it. They learned about neural networks and machine learning and they discuss about the future expectations of this new discipline. As a personal project Lucas and Everett wanted to train a neural network to identify each of the new pet guinea pigs (cuyos) separately. They began their prototype by training a neural network to identify each other faces (Lucas and Everett) and a wall. Their prototype was presented as the Exhibition Night of Pet Power. Lucas plans to continue developing this prototype.
Lucas's documentation on AI for cuyo house
Our problem was that we wanted to see the cuyos when we were away and we also wanted to see what floor they were on and if they were sick. And also we wanted to see how the cuyos use the space and if we should make it better.
We figured out that we could use AI to watch over the cuyos. For example every time the cuyo changes floors take a picture and email it to you so we can see if the cuyos like the space and fighting with each other.
How we created the solution?
We found a program called mathematica and also URL downlowd called inception. Inception is a neural network which understands 3D objects like human faces and walls. Now I am going to show you how I coded the AI.
You Have to download a URL named inception which is a Neural network which understands 3D shapes. Without it it would be much harder to make mathematica to understand 3D objects because you have to train the computer for much more stuff.
We also have to take 300 pics of me and everett and the wall for the computer to understand us because you need to take a lot of pics for the computer to understand us because the computer needs a lot of info.
You also have to chop the neural network so you don't have that many outputs. You have 2048 without any cuts but with cuts you only have 3 outputs.
You also have to cut the images so the neural network can define the percentage for each output in each section of the cut image.
At the end 1=lucas 2=everett 3=wall when it says 100 then 1 there are 100 pics identified as lucas when it says 2 then 2 it identified 2 everetts wrong same for all of the other numbers.