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

CSP Unit 3 Lesson 6.2

Piano
Linkbot Image Mindstorm Image Cursor Image
0x36302418126y36302418126
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: (18 in, 18 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.2
/* Code generated by RoboBlockly v2.5 */
/* Problem Statement: 
    Now's your chance to put into practice some of the things
    you have been learning about coding and functions. Create a
    program that directs the robot to trace out the blue figure
    shown. Think about what parts are repetitive and how each
    might be coded as a function. After the initial setSpeed
    and traceColor commands (pre-placed), your program should
    call a function that then calls other functions, as
    appropriate, to draw the figure. Those functions, in turn,
    may call other functions as needed. Use descriptive names
    for the functions. (To turn left or right, or turn around,
    you may use the built-in "turn" function with the
    appropriate direction and angle.)
    */
#include <robot.h>
CLinkbotI robot;
double radius = 1.75;
double trackwidth = 3.69;

// Describe this function...
void drawFourCrosses() {
  drawCross();
  robot.turnLeft(90, radius, trackwidth);
  drawCross();
  robot.turnLeft(90, radius, trackwidth);
  drawCross();
  robot.turnLeft(90, radius, trackwidth);
  drawCross();
}

// Describe this function...
void drawCross() {
  robot.traceOn();
  robot.driveDistance(12, radius);
  robot.turnLeft(180, radius, trackwidth);
  robot.driveDistance(4, radius);
  robot.turnLeft(90, radius, trackwidth);
  robot.driveDistance(4, radius);
  robot.turnLeft(180, radius, trackwidth);
  robot.driveDistance(8, radius);
  robot.turnLeft(180, radius, trackwidth);
  robot.driveDistance(4, radius);
  robot.turnRight(90, radius, trackwidth);
  robot.driveDistance(8, radius);
  robot.turnLeft(180, radius, trackwidth);
  robot.traceOff();
}

robot.setSpeed(6, radius);
robot.traceColor("red", 4);
drawFourCrosses();
robot.turnLeft(90, radius, trackwidth);
Load Blocks
Hardware
LArduino
Workspace Show Ch Save File
Problem Statement:

Now's your chance to put into practice some of the things you have been learning about coding and functions. Create a program that directs the robot to trace out the blue figure shown. Think about what parts are repetitive and how each might be coded as a function. After the initial setSpeed and traceColor commands (pre-placed), your program should call a function that then calls other functions, as appropriate, to draw the figure. Use descriptive names for the functions. (To turn left or right, or turn around, you may use the built-in "turn" function with the appropriate direction and angle.)


		
Rubbish bin
Time