Robotics and Tech

BUILDING ROBOTS WITH “CUBELETS”

STUDENTS PEN NAME:  FazeWolf, Magneto

ASPIRE MENTORS: 
Matt Gilbert, Bill Woodworth, David Johnstone

OBSERVATIONS/BACKGROUND
We love everything to do with technology, so naturally Robotics is of interest to all of us.  We were introduced to the idea of Modular Robotics and given “Cubelets” to play with. We wanted to  be given a Design Challenge to work on.  Matt suggested  that we first get to know the robotics platform and that once we worked through some of the  Programming Tutorials, he would send us a Design Challenge.

Step One: Getting to known CUBELETS.
Our first challenge was to figure out the function of each cube and to understand the way the cubelets worked together as a system. While we were testing the cubelets we made many robots and created videos.

We also learned how to use the bluetooth cubelet to pair our robots to an iPad.   This allowed use the Cubelets App to control them remotely.
Below are the cubelets…our building blocks.

The information below was found at www.modrobotics.com/cubelets/

Battery and “SENSE BLOCKS”

BatteryBrightness CubeletDistance Cubelet
batterybrightnessdistance
The robots we make need a battery cubelet. With a power source our robot can "sense", "think" and "act"The Brightness Cubelet is a sensor that reads the amount of available light.The Distance Cubelet detects how far it is from an object.

“ACTION BLOCKS”

Flashlight CubeletDrive CubeletRotate Cubelet
2. flashlight5. drive3. rotate
The Flashlight Cubelet throws a focused beam of light from a white LED.The Drive Cubelet contains a motor and roller wheels for moving on a horizontal surface and only moves in one direction.The Rotate Cubelet has face that spins at a rate corresponding to the block's input values.
Speaker CubeletBar Graph Cubelet
4. speaker1. bargraph
The Speaker Cubelet chirps (a really cool sound) according to the block's data value. The Bar Graph Cubelet displays the block's value as a light-up bar graph.

“THINKING BLOCKS”

Cubelets Brick AdapterBluetooth® CubeletPassive Cubelet
brickadaptersbluetoothpassive
Little yellow adapters are used to connect CUBELETS and LEGO® bricks!A Bluetooth® Cubelet is wireless link to control, monitor interact or even reprogram with a Cubelet.The Passive Cubelet is a basic building block. It carries power and data from its neighbors, but doesn't move, sense, or change the data in any way.
Inverse CubeletBlocker Cubelet
inverseblocker
The Inverse Cubelet calculates a value that is the opposite of the values it receives.The Blocker Cubelet "blocks" data from its neighbors. It still passes power, but it stops communication from the sensor.

if you want to see some of our ROBOTS click on the links below;

LightHouse Robots

Aggressive / Afraid / Confused Robots

Step Two: Getting to know BLOCKLY to personalize our cubelets
Cubelets Blockly is a drag-and-drop coding environment for Cubelets® robot blocks.  We worked through the  Cubelets Blockly Tutorials to learn the basics of programming our Cubelets. The following  concepts were concepts were introduced:

  • Variables
  • Timing
  • Logic
  • Conditionals
  • Loops and more!

We also asked mentor, Bill Woodworth, a past “SCRATCH” Programming mentor, to give us a hand.  Mr. David Johnstone, the District Technology Coordinator also collaborated with this group to try to “trouble shoot” some of the Bluetooth problems they had been experiencing.

Step Three:  Our Design Challenge…
When we thought we were ready we asked Matthew to send our Design Challenge:

Construct an all-terrain (move on carpet and hard flooring) robot that can find the brightest point in a room on its own.

He added:  I suggest this be approached in components (a series of smaller challenges) and it will require a non-traditional use of the blocks.
Good luck!
Matt Gilbert, MSc, PhD student
Farrell Lab, Department of Zoology
University of British Columbia

Step Four:  Our Design Challenge… SUCCESS

Before Matthew's VisitSample Program
We attacked this design challenge in two stages first of all we wanted to solve how to get the robot moving on the carpet and the hard floor (All-terrain).BackandForth
To do this we changed the direction of the rotator. This still left us puzzled with how to find the brightest spot in the room.this program shows how you can get a robot to move back and fourth if it was in a forever loop it would go until the battery runs out.

Below is the code we developed with Matthew to make our Cubelets meet the Design Challenge

Our groups solutionOur mentor' solution
Austin's SolutionMentor Matt Solution
In this code we were programming the sensor to find a bright spot in the room. "If the sensor senses light greater than value 200 it will go in the direction of the light. Once it gets to the light the robot will stop (Value 0)In this code we used two sensors and had the robot drive in which ever direction was brightest. If ID 100 sensor was greater than ID 101 sensor it will move at full speed (value 255) towards the brightest spot in the room otherwise the robot will go backwards to the brightest spot in the room.

Step Five:  Our Design Challenge… REFLECTION

Through this process we learned that there are many ways to solve a problem or challenge.  Finding the simplest solution is the best way to do it.  We also learned that even when you aren’t successful you can still learn a lot.  In a way failure  is the only way to success.

IMG_1577SolvingIMG_1574
Problem sovlingFinished productChallenge complete