Robot Communication

This activity is extra and will not be graded. Although, it is pretty fun to program.

You will need two robots for this activity. One of your robots will be tasked with staying inside a circle made out of a black line.

The second robot will mimic the movements of the first robot without being inside the circle.

How To

First, program your first robot to stay within a black line. Follow the pseudo-code below:

  1. Turn on line tracker
  2. If line tracker is on black then transmit data, move backwards, and then turn a bit to the right or left.
  3. Else, go forward
  4. Loop steps 2 and 3

Next, program your second robot to move forward unless it receives data from the first robot. Follow the pseudo-code below:

  1. Receive data
  2. If data says there is a black line then, move backwards, and then turn a bit to the right or left. Make sure it is the same movement the first robot does.
  3. Else, go forward. Make sure it is the same speed as the first robot.
  4. Loop steps 1-3

Going Through a Maze

Use your knowledge from the "Hit a Wall" and "X Marks the Spot" assignments to program your Edison to go through a maze. You will also need to be able to detect a black X that ends the maze.

Be careful how you program your robot. The maze will not always be the same for each robot that goes through it. Your robot should be able to detect walls to help itself navigate through any maze. It should also be able to detect a black X on the ground of the maze. You will need to learn to use the line tracker.

When your robot has found the black X, have your robot stop and then do a victory dance. Add sound to your victory dance for extra credit.

X Marks the Spot

Write a program for your Edison Robot that drives it forward until it find a black X on the ground. X marks the spot! Have your Edison Robot stop on the X.

When your robot has found the X, have it do a little dance.

Use the course Mr. Ramstad has set up in the back of the classroom.

Hit a Wall

Assignment

Have your Edison robot drive straight into a wall. When your Edison hits the wall, have it back up, turn and go around the obstacle.

How To

Activate your Edison's obstacle detection using this line of code:

  • Ed.ObstacleDetectionBeam(Ed.ON)

Read of obstacle detection beam using this line of code:

  • Ed.ReadObstacleDetection()

Reading the obstacle detection beam can give you these results:

  1.     Ed.OBSTACLE_AHEAD
  2.     Ed.OBSTACLE_LEFT
  3.     Ed.OBSTACLE_RIGHT
  4.     Ed.OBSTACLE_NONE

You will need a loop that continually uses an if statement to check for the obstacle.

Edison Basics

Make sure you have created an account on Edpyapp.com

Complete these tasks and show them to Mr. Ramstad to have him check off your work. It is a good idea to save each program in case you need to come back to it later.

  1. Make the Edison drive forward 5 inches.
  2. Make the Edison drive forward 5 inches, turn around 180 degrees, and drive back to where it started.
  3. Make the lights blink back and forth 3 times.
  4. Complete the mini maze and blink the lights when the Edison crosses the finish line.

Functions to use:

  • Ed.Drive(direction, speed, distance)
  • DIRECTION
    • Ed.FORWARD
    • Ed.BACKWARD
    • Ed.SPIN_LEFT
    • Ed.SPIN_RIGHT
  • SPEED
    • Type an integer from 1 to 10
  • Distance
    • Type an integer from 1 to 32767 (1 to 360 for spinning)
      • Ed.DistanceUnits = Ed.TIME
        • (sets distance units in milliseconds)
      • Ed.DistanceUnits = Ed.CM
        • (sets distance units to centimeters)
      • Ed.DistanceUnits = Ed.INCH
        • (sets distance units to inches)
  • Ed.LeftLed()
    • Ed.LeftLed(Ed.ON)
    • Ed.LeftLed(Ed.OFF)
  • Ed.RightLed()
    • Ed.RightLed(Ed.ON)
    • Ed.RightLed(Ed.OFF)

Meet your Edison v2 Robot

Time to program robots! The Edison v2 robot can be programed using the EdWare software or EdPy software. In our class, we will be programming our Edison robots using the Python programming language.

Initial Setup

Go to Edpyapp.com.  Make sure the "Test_Program" works on your Edison Robot before moving on:

  • Go to edpyapp.com
  • Click "Test_Program"
  • Click "Program Edison"
  • Connect your Edison robot
  • Press the record (circle) button on the Edison
  • Program the Edison

If it does not, please see Mr. Ramstad for assistance.

    Repl.it - If/Else Conditionals

    Make sure you already have joined Mr. Ramstad's class on repl.it.

    These exercises help develop your ability to create conditional statements in Python.

    Note: It may be helpful to know that if you want to find the remainder of a division problem, use the % operator. For example, "print(4%3)" would give an output of "1". "print(5%3)" would give an output of "2".

    Repl.it - Using input, print, and numbers in Python

    Please sign up for repl.it using your LAUSD Google login by clicking the link below:

    https://repl.it/classroom/invite/Fkwzpxn

    When you sign in, you will see over 100 assignments!!! DON'T WORRY. We will not be doing all of them. Just the important ones.

    The first lessons I would like you to complete are about user input, print, and numbers. The lessons are linked below. Make sure you are signed in with your LAUSD Google account.

    • Complete lessons 1.1 through 1.4

    Please STOP when you have finished Lesson 1.4!