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

CSP Unit 3 Lesson 9.4

Piano
Linkbot Image Mindstorm Image Cursor Image
0x126-6-12y126-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: (4 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: (8 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: (12 in, 0 in)
Current Angle: 90 deg
Wheel Radius:
Track Width:
in
CSP Unit 3 Lesson 9.4
/* Code generated by RoboBlockly v2.5 */
/* Problem Statement: 
    A definition for a drawSquare function has been provided.
    (It draws a square of side length 8.) Add a repeat loop
    (from the Loops tab) to the pre-placed code and insert a
    call to the drawSquare function inside it. After the call
    to drawSquare, also insert a turnLeft command for a turn of
    10 degrees. After you get it running, experiment with
    different values for the number of iterations, the speed,
    the distance, and the angle. Try to create a diagram of
    repeating squares that goes 360 degrees around.
    */
#include <robot.h>
CLinkbotI robot;
double radius = 1.75;
double trackwidth = 3.69;

int count;

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

// Calling a function from within a loop
robot.setSpeed(100, radius);
robot.traceColor("red", 2);
robot.traceOn();
robot.turnRight(90, radius, trackwidth);
count = 0;
while(count < 36) {
  drawSquare();
  robot.turnLeft(10, radius, trackwidth);
  count = count + 1;
}
Load Blocks
Hardware
LArduino
Workspace Show Ch Save File
Problem Statement:

A definition for a drawSquare function has been provided. (It draws a square of side length 8.) Add a repeat loop (from the Loops tab) to the pre-placed code and insert a call to the drawSquare function inside it. After the call to drawSquare, also insert a turnLeft command for a turn of 10 degrees. After you get it running, experiment with different values for the number of iterations, the speed, the distance, and the angle. Try to create a diagram of repeating squares that goes 360 degrees around.


		
Rubbish bin
Time