Barobo
PortalSign In
HomeShopTutorialsFree CurriculumHour of Code
RoboBlockly for Learning Math and Coding

CSP Unit 3 Lesson 6.3

Piano
Linkbot Image Mindstorm Image Cursor Image
0x2418126-6-12y2418126-6-12
Grid:
Tics Lines:
Width px
Hash Lines:
Width px
Labels:
Font px
Trace Lines:
Robot 1:
Width px
Robot 2:
Width px
Robot 3:
Width px
Robot 4:
Width px
Labels: x-axis y-axis Show Grid
Grid: 12x12 inches 24x24 inches 36x36 inches
72x72 inches 96x96 inches 192x192 inches
Quad: 4 Quadrants 1 Quadrant 1&4 Quadrants
Units: US Customary Metric
Background: Background Image

Robot 1

Linkbot
Mindstorm
Initial Position:
( in, in)
Initial Angle:
deg
Current Position: (0 in, 0 in)
Current Angle: 90 deg
Wheel Radius:
Track Width:
in

Robot 2

Linkbot
Mindstorm
Initial Position:
( in, in)
Initial Angle:
deg
Current Position: (6 in, 0 in)
Current Angle: 90 deg
Wheel Radius:
Track Width:
in

Robot 3

Linkbot
Mindstorm
Initial Position:
( in, in)
Initial Angle:
deg
Current Position: (12 in, 0 in)
Current Angle: 90 deg
Wheel Radius:
Track Width:
in

Robot 4

Linkbot
Mindstorm
Initial Position:
( in, in)
Initial Angle:
deg
Current Position: (18 in, 0 in)
Current Angle: 90 deg
Wheel Radius:
Track Width:
in
CSP Unit 3 Lesson 6.3
/* Code generated by RoboBlockly v2.5 */
/* Problem Statement: 
    Now that we have had some good practice with functions,
    let's revisit the earlier activity of drawing a 3x3 grid of
    squares. Think about how you would create the code to draw
    the grid by defining functions to draw various component
    parts, and then calling those functions in an appropriate
    order. The component parts could be component sub-shapes of
    the 3x3 grid, or they could be various robot moves that get
    repeated in drawing the 3x3 grid. It's your choice in how
    to approach it. Then do it!
    */
#include <robot.h>
CLinkbotI robot;
double radius = 1.75;
double trackwidth = 3.69;

// Describe this function...
void move18Right() {
  robot.turnRight(90, radius, trackwidth);
  robot.driveDistance(18, radius);
}

// Describe this function...
void move6Left() {
  robot.turnLeft(90, radius, trackwidth);
  robot.driveDistance(6, radius);
}

// Describe this function...
void move12Left() {
  robot.turnLeft(90, radius, trackwidth);
  robot.driveDistance(12, radius);
}

// Describe this function...
void move18Left() {
  robot.turnLeft(90, radius, trackwidth);
  robot.driveDistance(18, radius);
}

robot.setSpeed(6, radius);
robot.traceColor("red", 4);
robot.traceOn();
move18Right();
move12Left();
move18Left();
move6Left();
move18Left();
move12Left();
move12Left();
move18Left();
move6Left();
move18Left();
move12Left();
move18Left();
robot.turnLeft(180, radius, trackwidth);
robot.traceOff();
/* Code generated by RoboBlockly v2.5 */
/* Problem Statement: 
    Now that we have had some good practice with functions,
    let's revisit the earlier activity of drawing a 3x3 grid of
    squares. Think about how you would create the code to draw
    the grid by defining functions to draw various component
    parts, and then calling those functions in an appropriate
    order. The component parts could be component sub-shapes of
    the 3x3 grid, or they could be various robot moves that get
    repeated in drawing the 3x3 grid. It's your choice in how
    to approach it. Then do it!
    */
#include <robot.h>
CLinkbotI robot;
double radius = 1.75;
double trackwidth = 3.69;

// Describe this function...
void move18Right() {
  robot.turnRight(90, radius, trackwidth);
  robot.driveDistance(18, radius);
}

// Describe this function...
void move6Left() {
  robot.turnLeft(90, radius, trackwidth);
  robot.driveDistance(6, radius);
}

// Describe this function...
void move12Left() {
  robot.turnLeft(90, radius, trackwidth);
  robot.driveDistance(12, radius);
}

// Describe this function...
void move18Left() {
  robot.turnLeft(90, radius, trackwidth);
  robot.driveDistance(18, radius);
}

// Describe this function...
void move6L18L() {
  move6Left();
  move18Left();
}

// Describe this function...
void move12L18L() {
  move12Left();
  move18Left();
}

robot.setSpeed(6, radius);
robot.traceColor("red", 4);
robot.traceOn();
move18Right();
move12L18L();
move6L18L();
move12Left();
move12L18L();
move6L18L();
move12L18L();
robot.turnLeft(180, radius, trackwidth);
robot.traceOff();
Load Blocks
Hardware
LArduino
Workspace Show Ch Save File
Problem Statement:

Now that we have had some good practice with functions, let's revisit the earlier activity of drawing a 3x3 grid of squares. Think about how you would create the code to draw the grid by defining functions to draw various component parts, and then calling those functions in an appropriate order. The component parts could be component sub-shapes of the 3x3 grid, or they could be various robot moves that get repeated in drawing the 3x3 grid. It's your choice in how to approach it. Then do it!


		
Rubbish bin
Time