mindstorms software...software installed. these resources focus on students aged 10-16 with links to...

132
If you have any LEGO MINDSTORMS Education EV3 product then you need to download this software. Includes teacher resources, a documentation tool, data logging, building instructions and tutorials. From <https://education.lego.com/en-us/downloads/mindstorms-ev3/software> In order to use the curriculum materials you need to have the LEGO MINDSTORMS Education EV3 software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support, assessment tools, sample programs, and building instructions. From <https://education.lego.com/en-us/downloads/mindstorms-ev3/curriculum> Mindstorms Software Friday, 28 June 2019 8:17 AM Robotics 101 Page 1

Upload: others

Post on 27-Apr-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

If you have any LEGO MINDSTORMS Education EV3 product then you need to download this software. Includes teacher resources, a documentation tool, data logging, building instructions and tutorials.

From <https://education.lego.com/en-us/downloads/mindstorms-ev3/software>

In order to use the curriculum materials you need to have the LEGO MINDSTORMS Education EV3 software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support, assessment tools, sample programs, and building instructions.

From <https://education.lego.com/en-us/downloads/mindstorms-ev3/curriculum>

Mindstorms SoftwareFriday, 28 June 2019 8:17 AM

Robotics 101 Page 1

Page 2: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

1. Keep It Simple

BuildingInstructio...From: https://stemrobotics.cs.pdx.edu/node/5785

Download: https://www.lego.com/en-us/ldd/download

2. LEGO Mindstorms

Build OptionsTuesday, 18 June 2019 11:47 AM

Robotics 101 Page 2

Page 3: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

=> Instructions within LEGO Mindstorms software

OR Online: https://le-www-live-s.legocdn.com/sc/media/lessons/mindstorms-ev3/building-instructions/ev3-rem-driving-base-79bebfc16bd491186ea9c9069842155e.pdf

3. Riley Rover

Robotics 101 Page 3

Page 4: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

https://www.damienkee.com/rileyrover-ev3-classroom-robot-design/

Riley RoverBuild Guide

4. EasyBotEV3

https://www.fllcasts.com/materials/338-easybotev3-simplest?ref=1726#is-js-viewer

EasyBotEV3

5. FLLCasts Idat Bot

Robotics 101 Page 4

Page 5: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

http://www.fllcasts.com/materials/357-idat-bot-sturdy-motor-attachment-of-motors-for-lego-mindstorms-ev3-robot

Idat

6. FLLCasts EV3 robot base with a frame

https://www.fllcasts.com/materials/741-cole-lego-mindstorms-ev3-robot-base-with-a-frame?ref=5040

EV3 robotbase with...

7. Robocoaster

Robotics 101 Page 5

Page 6: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

http://docs.wixstatic.com/ugd/ecb80d_e6e53646ad2749d5b788113b0fc64497.pdf

ecb80d_e6e53646ad...

8. QUICK BUILD

http://www.damienkee.com/workshop-ev3-quick-build/

DamienKee_Quickbuild

Robotics 101 Page 6

Page 7: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

DamienKee_Quickbuild

9. Tommabot

https://robocupjunior.org.au/sites/default/files/Soccer/Tommabot%20Instructions.pdf

TommabotInstructions

10. YayaBot

From <http://www.drgraeme.org/Dr/EV3G10.html>

Robotics 101 Page 7

Page 8: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

11. FLLCast SumoBot

https://www.fllcasts.com/materials/345-sumo-competition-robot-from-lego-mindstorms-ev3

fllcast_sumobot_build

Others

FLLCasts Simple Tank Bot

Robotics 101 Page 8

Page 9: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

http://www.fllcasts.com/materials/344-simple-tank-robot-with-lego-mindstorms-ev3

SimpleTank Bot

FLLCasts Guard Tank

http://www.fllcasts.com/materials/369-guard-tank-simple-lego-mindstorms-robot-with-treads

Guard Tank

Robotics 101 Page 9

Page 10: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

BasicsTuesday, 18 June 2019 12:03 PM

Robotics 101 Page 10

Page 11: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 11

Page 12: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 12

Page 13: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 13

Page 14: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 14

Page 15: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 15

Page 16: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 16

Page 17: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 17

Page 18: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 18

Page 19: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

- Investigate different ways of controlling a Driving Base, moving in a straight line

- Explain what each block does and how it works- Drive forward

Move Steering BlockThe Move Steering block can make your robot drive forward, backward, turn, or stop. You can adjust the steering to make your robot go straight, drive in arcs, or make tight turns.

Use the Move Steering block for robot vehicles that have two Large Motors, with one motor driving the left side of the vehicle and the other the right side. The Move Steering block will control both motors at the same time, to drive your vehicle in the direction that you choose.

Straight MoveTuesday, 18 June 2019 12:03 PM

Robotics 101 Page 19

Page 20: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

InstructionsPlay the Straight Move tutorial within LEGO Mindstorms

3/5 Interactive Animation:

Predict and explain what these blocks do and how it works [Add this to your Report]

Homework[Add this to your Report]

3. EXPLORE

[Explain how these blocks work]Help: https://www.literacyideas.com/explanation-texts

3.1 Move Steering

References:https://ev3-help-online.api.education.lego.com/Education/en-gb/index.html

https://ev3-help-online.api.education.lego.com/Education/en-gb/page.html?Path=blocks%2FLEGO%2FMove.html

The Move Steering Block: https://www.youtube.com/watch?v=_FDvn_3syYo&feature=youtu.be>

Introduction: http://www.stemcentric.com/ev3-intro

http://curriculum.cs2n.org/ev3/lesson/1-1MovingStraight3.htmlhttp://curriculum.cs2n.org/ev3/lesson/2-1Turning3.html

1 Rotation = ? Cm

To travel x cm

Rotations = x/?

Robotics 101 Page 20

Page 21: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Watch How to steer a tank: https://www.youtube.com/watch?v=c2a8PcWxOWY

Move Tank Block[Add this to your Report]The Move Tank block can make a robot drive forward, backward, turn, or stop. Use the Move Tank block for robot vehicles that have two Large Motors, with one motor driving the left side of the vehicle and the other the right side. You can make the two motors go at different speeds or in different directions to make your robot turn.

Homework[Add this to your Report]

3. EXPLORE

[Explain how these blocks work]Help: https://www.literacyideas.com/explanation-texts

Robotics 101 Page 21

Page 22: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Help: https://www.literacyideas.com/explanation-texts

3.2 Move Tank

Reference:https://ev3-help-online.api.education.lego.com/Education/en-gb/page.html?Path=blocks%2fLEGO%2fMoveTank.html

Instructions

=> Develop your algorithm for the challenge below, using the tank move block

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

More Skills

Menus <https://youtu.be/4uzuzFPN8HQ>

Port View <https://youtu.be/eQ7KKEGEvzo>

Programs saved on your computer; Programs saved on your EV3 <https://www.youtube.com/watch?v=8qEaFTNuYlw&feature=youtu.be>

Robotics 101 Page 22

Page 23: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

- Use the Move Steering and Move Tank block to steer the Driving Base in a curve.- Explain how to steer a curve

- Steer a curve

References:http://curriculum.cs2n.org/ev3/lesson/2-1Turning3.htmlhttp://curriculum.cs2n.org/ev3/lesson/2-1Turning4.html

https://ev3-help-online.api.education.lego.com/Education/en-gb/page.html?Path=blocks%2fLEGO%2fMove.html

Curved Move with Move Steering block

InstructionsPlay the Curved Move tutorial within LEGO Mindstorms

3/5 Interactive Animation:

Predict and explain what these blocks do and how it works

4/5 Recreate the program shown, then download and run to test.

Challenge 1

Add three more Move Steering blocks to your program so that it makes the

Curved MoveTuesday, 18 June 2019 12:40 PM

Robotics 101 Page 23

Page 24: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Add three more Move Steering blocks to your program so that it makes the Driving Base return to its starting position.

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Curved Move with Move Tank block

InstructionsPlay the Tank Move tutorial within LEGO Mindstorms

3/5 Interactive Animation:

Predict and explain what these blocks do and how it works

Robotics 101 Page 24

Page 25: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

4/5 Recreate the program shown, then download and run to test.

Challenge 2

Add three more Tank Move blocks to your algorithm so that it makes the Driving Base return to its starting position.

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Extension Challenge

=> Develop your algorithm for the challenge below

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

More Skills

Menus <https://youtu.be/4uzuzFPN8HQ>

Port View <https://youtu.be/eQ7KKEGEvzo>

Programs saved on your computer; Programs saved on your EV3 <https://www.youtube.com/watch?v=8qEaFTNuYlw&feature=youtu.be>

Robotics 101 Page 25

Page 26: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Move Steering InputsTuesday, 18 June 2019 1:18 PM

Robotics 101 Page 26

Page 27: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

From http://ev3lessons.com/

Robotics 101 Page 27

Page 28: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 28

Page 29: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 29

Page 30: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 30

Page 31: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 31

Page 32: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 32

Page 33: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 33

Page 34: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 34

Page 35: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

- Use the Colour Sensor to stop the Driving Base when a line is detected.

- Explain how to use the colour sensor- Stop when a line is detected

References:https://ev3-help-online.api.education.lego.com/Education/en-gb/page.html?Path=blocks%2FLEGO%2FColorSensor.html

How to Program the EV3 Color Sensor: https://www.youtube.com/watch?v=aJToMY-3Mq4

Light Sensor: http://www.stemcentric.com/light-sensors

http://curriculum.cs2n.org/ev3/lesson/6-1Color3.htmlhttp://curriculum.cs2n.org/ev3/lesson/6-1Color4.html

Calibrate the Colour Sensor

Colour Sensor: Stop at LineTuesday, 18 June 2019 1:07 PM

Robotics 101 Page 35

Page 36: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 36

Page 37: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 37

Page 38: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Instructions

Robotics 101 Page 38

Page 39: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Play the Stop at Line tutorial within LEGO Mindstorms

3/5 Interactive Animation:

Predict and explain what these blocks do and how it works [Add this to your Report] Homework[Add this to your Report]

3. EXPLORE

[Explain how these blocks work]Help: https://www.literacyideas.com/explanation-texts

3.3 Colour sensor compare

ExplanationThe colour sensor compare block is just a modified wait block. Instead of a Time Indicator, we change it to a Colour Sensor that compares either the reflected light or the ambient light.

Robotics 101 Page 39

Page 40: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

In the tutorial example, we are comparing the Reflected light. When the Colour Sensor is in Reflected Light Intensity mode, a red LED light on the front of the sensor will turn on. If the sensor is close to an object or surface, this red light will reflect off of the object and then enter the sensor to be detected. You can use this to measure shades of colour on a surface or object, because darker shades of colour will reflect less of the red light back to the sensor.

You can use this mode to, for example, make your robot follow a black line on a white surface. As the sensor passes over the black line, the light measurement will gradually decrease as the sensor gets closer to the black line. This can be used to tell how close the robot is to the line.

In Reflected Light Intensity mode, the Colour Sensor detects the intensity of light that enters the sensor. The intensity of the light is measured as a percentage from 0 to 100, with 0 being very dark, and 100 being very bright.

We then compare using standard mathematical operators:

4/5 Recreate the program shown, then download and run to test. Set the sensor threshold for best results.

Robotics 101 Page 40

Page 41: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Challenge 1

Try it with the Compare colour setting

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Challenge 2

Robotics 101 Page 41

Page 42: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

- Use the Ultrasonic Sensor’s Wait for Change mode to detect proximity to an object

- Explain how to use the ultrasonic sensor- Stop when an object is detected

References:https://ev3-help-online.api.education.lego.com/Education/en-gb/page.html?Path=blocks%2FLEGO%2FUltrasonicSensor.html

How to Program the EV3 Ultrasonic Sensor <https://www.youtube.com/watch?v=B49J93rSsTg> ULTRASONIC SENSOR (Part 1: Introduction) <https://youtu.be/OIlsCQCYeNk>ULTRASONIC SENSOR (Part 2: Understanding How the Sensor Works) <https://youtu.be/s9mWZgx2XcI>ULTRASONIC SENSOR (Part 3: Using the Sensor) <https://youtu.be/RydItQi08pI>

http://curriculum.cs2n.org/ev3/lesson/4-1Ultrasonic3.htmlhttp://curriculum.cs2n.org/ev3/lesson/4-1Ultrasonic4.html

InstructionsPlay the Stop at Object tutorial within LEGO Mindstorms

3/5 Interactive Animation:

Predict and explain what these blocks do and how it works [Add this to your Report] Homework[Add this to your Report]

3. EXPLORE

[Explain how these blocks work]Help: https://www.literacyideas.com/explanation-texts

3.4 Ultrasonic sensor compare

Explanation

The Ultrasonic Sensor can measure the distance to an object in front of it. It does this by sending out sound waves and measuring how long it takes the sound to reflect back to the sensor. The sound frequency is too high for you to hear (“ultrasonic”).

You can measure the distance to an object in either inches or centimetres. You could use this, for example, to make your robot stop a certain distance from a wall.

Ultrasonic Sensor: Stop at ObjectTuesday, 18 June 2019 1:48 PM

Robotics 101 Page 42

Page 43: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

You can measure the distance to an object in either inches or centimetres. You could use this, for example, to make your robot stop a certain distance from a wall.

The ultrasonic sensor compare block is just a modified wait block. Instead of a Time Indicator, we change it to an Ultrasonic Sensor that compares the distance in cm.

We then compare using standard mathematical operators:

Robotics 101 Page 43

Page 44: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

The Ultrasonic Sensor can give the following data:

Data Type Range Notes

Distance in Centimetres Numeric 0 to 255 Distance to object in centimetres.

Distance in Inches Numeric 0 to 100 Distance to object in inches.

Ultrasound Detected Logic True/False True if another ultrasonic sensor is detected.

Start the program1.

Turn both motors on at speed 50.2.

Wait for the Ultrasonic sensor the detect and obstacle at a distance of less than 10 cm.3.

Turn both motors off.4.

4/5 Recreate the program shown, then download and run to test. Set the sensor threshold for best results.

Challenge 1

Move the Cuboid farther away before running the program again. What happens?

Robotics 101 Page 44

Page 45: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Challenge 2

Cause your robot to do the following for 10 seconds:Whenever there is an object that is less than 20 cm from the robot’s ultrasonic sensor, the robot

should move backwards, away from the object.Otherwise, the robot should move forwards

After 10 seconds have elapsed, your robot should stop moving.

You can view a video of a working example of this program at http://youtu.be/TQycE0lbSIw

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

More Skills

Writing Long Programs <https://www.youtube.com/watch?v=ey9NeT9Vc8I&feature=youtu.be>

Robotics 101 Page 45

Page 46: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

- Use the Gyro Sensor to navigate the Driving Base through a 45-degree turn.

- Explain how to use the Gyro sensor- Make a 45-degree turn.

Reference: https://ev3-help-online.api.education.lego.com/Education/en-gb/page.html?Path=blocks%2FLEGO%2FGyro.htmlhttps://www.youtube.com/watch?v=mky8sVmpKzg

http://curriculum.cs2n.org/ev3/lesson/5-1Gyro3.htmlhttp://curriculum.cs2n.org/ev3/lesson/5-1Gyro4.html

InstructionsPlay the Stop at Angle tutorial within LEGO Mindstorms

3/5 Interactive Animation:

Predict and explain what these blocks do and how it works [Add this to your Report] Homework[Add this to your Report]

3. EXPLORE

[Explain how these blocks work]Help: https://www.literacyideas.com/explanation-texts

3.5 Gyro Sensor detect

ExplanationThe first block is the Tank Move block and this will make one wheel rotate at 40 power; and the robot will start to spin in one direction.

The second block is a modified wait block that is set to sense a change in angle.

Gyro Sensor: Stop at AngleTuesday, 18 June 2019 1:48 PM

Robotics 101 Page 46

Page 47: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

The Gyro Sensor detects rotational motion. If you rotate the Gyro Sensor in the direction of the arrows on the case of the sensor, the sensor can detect the rate of rotation in degrees per second. You can use the rotation rate to detect, for example, when a part of your robot is turning, or when your robot is falling over.

In addition, the Gyro Sensor keeps track of the total rotation angle in degrees. You can use this rotation angle to detect, for example, how far your robot has turned.

The Gyro Sensor can give the following data:

Data Type Notes

Angle Numeric Rotation angle in degrees.Measured from the last reset. Reset with the Reset mode of the Gyro Sensor block.Rate Numeric Rotation rate in degrees per second.

So, the wait block says, wait or keep the move block spinning until the robot has spun 45 degrees.

4/5 Recreate the program shown, then download and run to test. Set the sensor threshold for best results.

Robotics 101 Page 47

Page 48: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Challenge 1

Make the Driving Base turn 90 degrees.

Tips:

Program Accurate 90 Degree Turns with the EV3 Gyro Sensor

From <https://www.youtube.com/watch?v=8B1LwzkLKXs>

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Extension Challenge

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Robotics 101 Page 48

Page 49: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Beyond the BasicsWednesday, 19 June 2019 9:02 AM

Robotics 101 Page 49

Page 50: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

- Use multitasking to move the Driving Base and play a sound at the same time.

- Explain how the multitasking block works- Perform a series of actions at the same time

References: https://ev3-help-online.api.education.lego.com/Education/en-gb/page.html?Path=editor%2FCreatingPrograms.html

Multitasking: http://www.stemcentric.com/ev3-multithreading

InstructionsPlay the multitasking tutorial within LEGO Mindstorms

3/5 Interactive Animation:

Predict and explain what these blocks do and how it works [Add this to your Report] Homework[Add this to your Report]

3. EXPLORE

[Explain how these blocks work]Help: https://www.literacyideas.com/explanation-texts

3.6 Parallel sequence

Explanation

You can run more than one set of tasks simultaneously. For example, you might have one sequence of Programming Blocks controlling the robot’s forward motion, and a second sequence of Programming Blocks controlling the robotic arm on top of the robot.

You can create a parallel sequence by dragging a new Sequence Wire from the Sequence Plug Exit of the Programming Block before the parallel sequence

Recreate the program shown below, then download and run to test. Set the sensor threshold for best results.

Multitasking & Parallel SequencesWednesday, 19 June 2019 9:36 AM

Robotics 101 Page 50

Page 51: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Challenge 1

Add blocks to the program that will make the Driving Base move backwards while playing the [Backing alert] sound.

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Challenge 2

Make your robot dance to music

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Robotics 101 Page 51

Page 52: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 52

Page 53: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

- Use the Loop block to repeat a series of actions.

- Explain how the loop block works- Repeat a series of actions.

References:https://ev3-help-online.api.education.lego.com/Education/en-gb/page.html?Path=blocks%2FLEGO%2FLoopCondition.html

Loops: http://www.stemcentric.com/ev3-loopsLOOP BLOCKS (Part 1: Introduction) <https://youtu.be/LF23iZx9la8>LOOP BLOCKS (Part 2: Loop Count) <https://youtu.be/j2aJJziCXTI>LOOP BLOCKS (Part 3: Loop Unlimited) <https://youtu.be/Rtmz4qyreEo>LOOP BLOCKS (Part 4: Loop Time) <https://youtu.be/SdkaBMfoJbE>

http://curriculum.cs2n.org/ev3/lesson/7-1Loops3.html

https://elearning.legoeducation.com/lessons/loop-block

https://elearning.legoeducation.com/lessons/interrupt-block

InstructionsPlay the Loop tutorial within LEGO Mindstorms

LoopsWednesday, 19 June 2019 9:02 AM

Robotics 101 Page 53

Page 54: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Play the Loop tutorial within LEGO Mindstorms

3/5 Interactive Animation:

Predict and explain what these blocks do and how it works [Add this to your Report] Homework[Add this to your Report]

3. EXPLORE

[Explain how these blocks work]Help: https://www.literacyideas.com/explanation-texts

3.7 Loop

Explanation

The Brick Status Light block turn the light on the top of the brick off or on with a choice of three colours

Status light is red

We then want the light to stay on for 2 seconds, so we can use a loop that will repeat for 2 seconds.

Recreate the program shown below, then download and run to test. Set the sensor threshold for best results.

Robotics 101 Page 54

Page 55: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Challenge 1

Flash all three colours of the status light, twice

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Hint

Challenge 2

Play a sound for 3 seconds, using a loop

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Extension Challenge

Robotics 101 Page 55

Page 56: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Hints

1. Using Move Steering

2. Use the Gyro sensor to turn 90 degrees

Robotics 101 Page 56

Page 57: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

- Use the Switch block to make dynamic sensor-based decisions.

- Explain how the switch block works- Act on sensor-based decisions

References:https://ev3-help-online.api.education.lego.com/Education/en-gb/page.html?Path=blocks%2FLEGO%2FCaseSelector.html

Switch Basics: http://www.stemcentric.com/ev3-switch-basicsSwitches Advanced: http://www.stemcentric.com/ev3-switches-advanced

SWITCH BLOCKS (Part 1: Introduction) <https://youtu.be/bM18XqC7CJE>SWITCH BLOCKS (Part 2: Switch Inside a Loop) <https://youtu.be/hBO2v6oHJWc>SWITCH BLOCKS (Part 3: Switch Blocks With More Than Two Cases) <https://youtu.be/o7LopJCpHuA>ROBOT EDUCATOR (Part 2: Follow the Line) <https://youtu.be/jw2aa33IWxI>

http://curriculum.cs2n.org/ev3/lesson/8-1Switches3.htmlhttps://elearning.legoeducation.com/lessons/switch-block

Line Follower: http://curriculum.cs2n.org/ev3/lesson/10-1LineFollower2.html

SwitchWednesday, 19 June 2019 9:36 AM

Robotics 101 Page 57

Page 58: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

InstructionsPlay the Switch tutorial within LEGO Mindstorms

3/5 Interactive Animation:

Predict and explain what these blocks do and how it works [Add this to your Report] Homework[Add this to your Report]

3. EXPLORE

[Explain how these blocks work]Help: https://www.literacyideas.com/explanation-texts

3.8 Switch

Explanation

The Switch block is a container that can contain two or more sequences of programming blocks. Each sequence is called a Case. A test at the beginning of the Switch determines which Case will run. Only one Case will run each time the Switch is executed.

The Switch test shown here can decide which Case to run based on a sensor data value or a value from a Data Wire. After one Case is selected and run, the program continues with any blocks after the Switch.

Robotics 101 Page 58

Page 59: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

For our program, the switch block tests to see if the reflected light intensity on the ground is less than 50 (from the light sensor). Ie. Is it black or dark coloured. If it is, the robot turns to the right (towards the white).

Motor C off, B on

Or right motor on

If it is not and the intensity is greater than 50 (lighter), then it turns to the left , towards the black line.

Motor B off, C on

Or left motor on

This then loops forever

Robotics 101 Page 59

Page 60: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

This then loops forever

NOTE: The simplest of line-following programs will be a dual-state program, where the colour sensor either sees black or white and adjusts accordingly. The robot is not actually trying to follow the line but is trying to find the edge of it.

Recreate the program shown below, then download and run to test. Set the sensor threshold for best results.

Hint

Robotics 101 Page 60

Page 61: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Alternatively, use compare colour black

Challenge 1

Test if your Driving Base works when following a lighter-coloured or Green line! If not, try setting the threshold again.

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Extension Challenge 1

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Hints

Robotics 101 Page 61

Page 62: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Extension Challenge 2

Robotics 101 Page 62

Page 63: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 63

Page 64: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Extension Challenge 3

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Robotics 101 Page 64

Page 65: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

- Program the Driving Base to move and turn when it detects different colours.

- Explain how the switch block works with more than one decision- Act on sensor-based decisions

Reference: https://ev3-help-online.api.education.lego.com/Education/en-gb/page.html?Path=blocks%2FLEGO%2FCaseSelector.html

Switch and Loops:http://curriculum.cs2n.org/ev3/lesson/9-1SwitchLoops3.html

InstructionsPlay the Loop tutorial within LEGO Mindstorms

3/5 Interactive Animation:

Predict and explain what these blocks do and how it works [Add this to your Report]

Explanation

The Switch block is a container that can contain two or more sequences of programming blocks. Each sequence is called a Case. A test at the beginning of the Switch determines which Case will run. Only one Case will run each time the Switch is executed.

This program has 3 test cases, rather than the standard two.

When no colour is detected, it drives forward

Multiple SwitchWednesday, 19 June 2019 10:36 AM

Robotics 101 Page 65

Page 66: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

When blue is detected, it turns to the right

When yellow is detected, it turns to the left

Recreate the program shown below, then download and run to test. Set the sensor threshold for best results.

Challenge 1

Robotics 101 Page 66

Page 67: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Challenge 1

Add a fourth case to make the motors stop when red is detected.

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Robotics 101 Page 67

Page 68: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

- Use the medium motor to raise and lower the robot arm

- Explain how the medium motor works- Move the Cuboid

Reference: https://ev3-help-online.api.education.lego.com/Education/en-gb/page.html?Path=blocks%2FLEGO%2FMediumMotor.html

http://curriculum.cs2n.org/ev3/lesson/1-1MovingStraight4.htmlhttp://curriculum.cs2n.org/ev3/lesson/2-1Turning4.html

[Add this to your Report]So far, we have used the large motors for driving the robot wheels. We can also use Medium motor to perform other actions, such as lifting and turning things.

Homework[Add this to your Report]

3. EXPLORE

[Explain how these blocks work]Help: https://www.literacyideas.com/explanation-texts

Medium Motor MovementWednesday, 19 June 2019 11:01 AM

Robotics 101 Page 68

Page 69: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

3.9 Medium motor

Instructions

Build this base

Predict and explain what these blocks do and how it works

ExplanationThe medium motor lowers the arm; the robot moves forward; and then the arm raises

Robotics 101 Page 69

Page 70: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Recreate the program shown below, then download and run to test. Set the sensor threshold for best results.

Challenge 1

Try reversing and turning 90 degrees

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Extension Challenge 1

Robotics 101 Page 70

Page 71: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Extension Challenge 1

Robotics 101 Page 71

Page 72: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

HINT: Attach a medium motor to Port A or a large motor to Port D as needed

Construct an attachment that can pick up or grab a hoop (object)

Test your code. If it doesn’t work as expected, alter the parameters and try again until it does.

Robotics 101 Page 72

Page 73: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Watch this for an idea: https://youtu.be/-RY4DI9PUto

1. Form Teams

- Form a team of 4 people

- Conference together to come up with a team name and assign the following roles:

- Make a tab in the collaboration space with your team name

- Make a Team Social Contract and post in your Team space

Team SocialContract

Team Social Contract Examples

Sumobot ChallengeWednesday, 19 June 2019 1:10 PM

Robotics 101 Page 73

Page 74: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Team Social Contract ExamplesTimelinessShow up on time to all calls/meetings•Be present•Short meetings with specific purpose•Meeting etiquetteBe concise (time box)•Listen•Hear ideas out•Stick to our time box commitment 100% of the time

Don’t talk over other people•No side conversations•Say your name during calls (when speaking)•Helping and pulling workStep in and pull work if you don’t have enough

Swarming work from prioritized backlog•Offer to help when you see others challenged

Access to work walls•Listen & wisdom of the crowdBuild on each other’s ideas•Team all the way•Include ideas from all•

ResponsivenessStand up participation•Availability•Bring your best game•Open about disagreements •Provide input for improvement•Accountable and committedIf you say you will do it, do it as promised•Be reliable•In matters of style go with the flow; in matters of principles stand your ground

Follow Agile principlesSense of urgency•Shared commitment and agreed to prioritization•Be self-directed•Use team techniques to involve everyone in big decisions•Measure our business value•

FunBe outgoing and social•Have fun•Have a sense of humor•Focus on improvement; how do we get betterDo retrospectives regularly•Benchmark against the best•Focus on performance improvement•Trust & respectTrust each other to get the work done•Honest and open communication•Personal integrity on commitments•Mutual respect•Communicate freely and often•Openness and transparencyRespect for differences of opinion•Open-minded•Be curious/inquisitive•Everyone has a voice•Be direct with each other•Transparency, inspection, adaptation•Supportive•Collaborative•Call out bad behavior•

2. Explore Design Ideas

- from the Build Options page, assign a different design to each team member

- analyse design by filling in the table below in your collaboration space

Name Image Gearing Topple Attachments Colour Sensor Gyro touch ultrasonic positive negative Conclusions

- as a team, vote on which build you will base your design on.

- identify which Sumo Bot Strategy you will use and copy the page into your collaboration space.

- copy the Report Template page into your collaboration space.

3. Agile Project Management

We will be using a cut down version of modern team collaboration processes for managing a project. All the tasks that need to be completed, to prepare for the Sumo Bot Tournament, are listed in the Product Backlog.

Product Backlog

Jobs Responsible Team Member(s)

1. Report cover page made

2. Table of contents made

3.1 Move Steering explained

3.2 Move Tank explained

3.3 Colour sensor compare explained

3.4 Ultrasonic sensor compare explained

3.5 Gyro Sensor detect explained

3.6 Parallel sequence explained

3.7 Loop explained

Robotics 101 Page 74

Page 75: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

3.8 Switch explained

3.9 Medium motor explained

4.1 Define Data and Functional Requirements

4.1 Robot design considerations and methodologies used

4.2 Algorithm designs using flowcharts or pseudocode

Generate: Program Robot and test

5.1 Documented final robot program code

5.2 Work Logs

5.3 Weekly Reflections

6.1 Evidence of testing

6. EVALUATE AND REFINE

Planning Poker

You now need to dole out the jobs, taking great care to make sure this is done fairly and equitably. Copy the Product Backlog to your collaboration space and fill in the Responsible Team Member column. NOTE: more than one team member can be added.

Kanban

Nominate one team member to be in charge of the Kanban (Facilitator). Copy the Kanban Template to your team collaboration space. Each time you meet as a team, and before you start work on your job, your team needs to have a "Daily Scrum". This is where you examine the Kanban to see how the team is progressing and making sure that everyone knows what they will be working on. As soon as you have completed a task, make sure that the Facilitator moves the job from Doing to Done.

FYI

Arena Design

need a circle 1200mm in diameter, 20mm thickness, with some feet so that it is raised 100mm from the ground. The Arena is painted black in the middle and 50mm white around the outside. The starting lines will need to be brown and placed as indicate below.

Robotics 101 Page 75

Page 76: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Diameter Arena Thickness Height Border Width Starting Line Length Starting Line Width Starting Line separation distance

1200mm 20mm 100mm 50mm 200mm 20mm 200mm

Ruleshttps://robocupjunior.org.au/sites/default/files/RoboCup%20Junior%20South%20Australia%20sumo%20rules%202018.pdf

Robotics 101 Page 76

Page 77: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Single Light Sensor, no Ultrasonic Sensor

4.1 Define Data and Functional Requirements

For your Robot (digital computer system) to work and function, to solve your problem, you need to think about what data goes into the system and then how the system uses it to provide and output or action that functions to solve your problem.

4.1.1 Input, process, output (IPO) table

This strategy has a robot with a single Light Sensor. Define how data will be used in your robot system by filling in the table below.

NOTE: You may also have a Gyro Sensor to help you turn, so include this as well

Input (event/data) Processing (coding) Output (action)

Eg:

Input (event/data) Processing (coding) Output (action)

Ultrasonic sensor receives signal

Calculate distance to opponent object and decide action to take

Move towards opponent

4.1.1 Robot design considerations and methodologies used

Define how you will construct your robot and why you have chosen to configure it this way. Include photos of your completed build.

Ideas:

Use a Combination of these two builds.

gear-bot-bi-e1011649...

https://le-www-live-s.legocdn.com/sc/media/lessons/mindstorms-ev3/ev3-dep/building%20instructions/gear-bot-bi-e1011649d42f190b289bebb8c1398010.pdf

Sumo Bot

Sumo Bot Strategy 1Wednesday, 19 June 2019 11:16 AM

Robotics 101 Page 77

Page 78: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

COR3

From: http://ev3lessons.com/en/RobotDesigns.html

Need the gear down advantage for 4 times the torque.

What is our Gear Ratio for the build below?

Want to know more?

Gears

Gearing

Gear_Example_Buildi...

Robotics 101 Page 78

Page 79: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Gear_Example_Buildi...

4.2 Solution Design AlgorithmIn simplest terms, an algorithm is the series of steps that you can take to solve a problem. Here is one that represents the solution with a flowchart. You may like to do something similar.

An easier way to write an algorithm is to use pseudocode or English-like statements. For example:

Algorithm for edge detection

EG

Stop motorsReverse motors at -50 for 1 rotationSpin around (motor B -100, motor C 100)

If sense colour that is greater than 50 (white), then:

Else it is black, so drive forward (motor B 100, motor C 100)

Loop forever

Design your solution by developing an algorithm that incorporates decision making (switch) and repetition (loops)

Ideas

Move forward

StopReverseTurn full right for ?

If see white

Loop Forever

OR

If we see black, then (we must be in the middle) attack by moving forward

Drive backwards for 1 rotationTurn right 46 for 1 rotation

Else (we must be detecting white and be at the edge)

Loop Forever

OR

Move forward with a curve towards the line

Steer in opposite directionIf see white

Loop Forever

Robotics 101 Page 79

Page 80: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

5.1 Documented final robot program code

EG

Robotics 101 Page 80

Page 81: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

5.2 Work Logs

Work log

A work log is a short, bullet point list of what you worked on, and how long it took. Stick to just the facts. It shouldn’t take more than thirty seconds or so to write up a work log.

Sample work log:Backpack Project #1: Cave Exploration System

3/31: Worked on getting Builder to navigate uneven hallways (45 min.)4/1: Added Say blocks at each point so we could stop it from getting lost all the time (30 min.)4/3: Completed exploring simple caverns, now working on more complex systems (45 min.)4/4: Coded for multi-level caves, spawner detection system (30 min.)

5.3 Weekly Reflections

Robotics 101 Page 81

Page 82: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

5.3 Weekly Reflections

A Reflection is like a journal entry that tells the story of your learning throughout the past week. Go through your work logs for the week and look at what you did, where you got stuck, and how you figured it out. Then write a 150- to 300-word Record of Thinking essay each week of the final project addressing the following:

Describe something that surprised you this week as you worked on your project.

Describe a moment where you go stuck. How did you get unstuck?

Did anyone help you this week? Who and how?

Choose an adjective that describes how you are feeling about your project this week. Explain why you chose this word.

What are you working on next week?

If you had more time to work on this project, what would you add? (for the final week)

Reflection Excerpt:

Week of April 6:

I finally figured out why my code wasn’t working. I had the wrong for loop nested inside the other one, and so it was executing way more times than it was supposed to, and that was why the Agent kept going off track. Once I created another variable to keep track of the number of times the Agent came back to the Home row, and checked this variable each time during the loop, everything worked the way it should. I only was able to figure this out because I took each function apart separately and ran it without that function in order to track down where the problem was. That was useful. I have to remember to try this first next time.

6.1 Evidence of testing

As you go back an forward, prototyping, from your computer to the competition field, make sure that you fill in this table as evidence.

Test Number

Test Expected Results(What you think will happen?)

Actual Result(What actually happened?)

1. start app first screen will appear

2. press answer1 button

Taken to correct response screen

3. press answer 2 button

Taken to correct response screen

4. press answer 3 button

Taken to correct response screen

5. selfie selfie uploaded

6.2 Evaluation

Needs and opportunitiesWhat needs or opportunities does the solution address? How well does it address these?

InnovativeHow is the digital solution innovative? What potential impact does it have?

SustainabilityWhat is the lifespan of your solution? How long before better technology arrives and it is obsolete?

RecommendationsRecommend at least one improvement that you would like to see made to the digital solution. Why?

Robotics 101 Page 82

Page 83: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 83

Page 84: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 84

Page 85: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 85

Page 86: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

One Colour Sensor and One Ultrasonic Sensor

4.1 Define Data and Functional Requirements

For your Robot (digital computer system) to work and function, to solve your problem, you need to think about what data goes into the system and then how the system uses it to provide and output or action that functions to solve your problem.

4.1.1 Input, process, output (IPO) table

This strategy has a robot with a one Light and one Ultrasonic Sensor. Define how data will be used in your robot system by filling in the table below.

NOTE: You may also have a Gyro Sensor to help you turn, so include this as well

Input (event/data) Processing (coding) Output (action)

Eg:

Input (event/data) Processing (coding) Output (action)

Ultrasonic sensor receives signal

Calculate distance to opponent object and decide action to take

Move towards opponent

4.1.1 Robot design considerations and methodologies used

Define how you will construct your robot and why you have chosen to configure it this way. Include photos of your completed build.

Ideas:

Build Options

1

SumoBot Strategy 2Wednesday, 19 June 2019 1:13 PM

Robotics 101 Page 86

Page 87: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

1 ultrasonic, 1 colour

4WheelDriveSumoBot

4.2 Solution Design AlgorithmIn simplest terms, an algorithm is the series of steps that you can take to solve a problem. Here is one that represents the solution with a flowchart. You may like to do something similar.

An easier way to write an algorithm is to use pseudocode or English-like statements. For example:

Algorithm for edge detection

Wait 5 sec

Stop motorsIf sense colour that is less than 50 (white), then: [or >20]

Robotics 101 Page 87

Page 88: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Stop motorsReverse motors at -50 for 1 rotationSpin around (motor B -100, motor C 100)

Else it is black, so drive forward (motor B 100, motor C 100)

Design your solution by developing an algorithm that incorporates decision making (switch) and repetition (loops)

Game Playing – Basic Strategy

There are two major tasks that your SumoBot will need to be able to do in order to be competitive.

Firstly it needs to be able to find the edge of the ring and then turn around. At a basic level if your Bot can continually drive forward to the edge of the ring and turn around you can enter the SumoBot competition

1.

Secondly it needs to search for the opponent and charge when the opponent is located, while still staying in the ring.

2.

1. Finding the edge of the ring

Algorithm for edge detection

EG

Stop motorsReverse motors at -50 for 1 rotationSpin around (motor B -100, motor C 100)

If sense colour that is greater than 50 (white), then:

Else it is black, so drive forward (motor B 100, motor C 100)

Loop forever

OR

Move forward

StopReverseTurn full right for ?

If see white

Loop Forever

OR

If we see black, then (we must be in the middle) attack by moving forward

Drive backwards for 1 rotationTurn right 46 for 1 rotation

Else (we must be detecting white and be at the edge)

Loop Forever

OR

Move forward with a curve towards the line

Steer in opposite directionIf see white

Loop Forever

2. Algorithm for edge and opponent detection

Stop motorsReverse motors at -50 for 1 rotationSpin around (motor B -100, motor C 100)

If sense colour that is less than 50 (white), then:

drive forward at opponent (motor B 100, motor C 100)If ultrasonic sensor detects object (distance < 20) then:

Else spin around slowly (motor B -25, motor C 25)

Else

Loop foreverEG

Robotics 101 Page 88

Page 89: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

5.1 Documented final robot program code

Edge Detection Edge and Opponent Detection

Reference: https://www.youtube.com/watch?v=O5qfz6HPB_0&feature=youtu.be

Reference: https://youtu.be/GoOcdngDeYw

Reference: https://www.youtube.com/watch?v=ZC2WVCtvtM8&feature=youtu.be

Robotics 101 Page 89

Page 90: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

5.2 Work Logs

Work log

A work log is a short, bullet point list of what you worked on, and how long it took. Stick to just the facts. It shouldn’t take more than thirty seconds or so to write up a work log.

Sample work log:Backpack Project #1: Cave Exploration System

3/31: Worked on getting Builder to navigate uneven hallways (45 min.)4/1: Added Say blocks at each point so we could stop it from getting lost all the time (30 min.)4/3: Completed exploring simple caverns, now working on more complex systems (45 min.)4/4: Coded for multi-level caves, spawner detection system (30 min.)

5.3 Weekly Reflections

A Reflection is like a journal entry that tells the story of your learning throughout the past week. Go through your work logs for the week and look at what you did, where you got stuck, and how you figured it out. Then write a 150- to 300-word Record of Thinking essay each week of the final project addressing the following:

Describe something that surprised you this week as you worked on your project.

Describe a moment where you go stuck. How did you get unstuck?

Did anyone help you this week? Who and how?

Choose an adjective that describes how you are feeling about your project this week. Explain why you chose this word.

What are you working on next week?

If you had more time to work on this project, what would you add? (for the final week)

Reflection Excerpt:

Week of April 6:

I finally figured out why my code wasn’t working. I had the wrong for loop nested inside the other one, and so it was executing way more times than it was supposed to, and that was why the Agent kept going off track. Once I created another variable to keep track of the number of times the Agent came back to the Home row, and checked this variable each time during the loop, everything worked the way it should. I only was able to figure this out because I took each function apart separately and ran it without that function in order to track down where the problem was. That was useful. I have to remember to try this first next time.

6.1 Evidence of testing

As you go back an forward, prototyping, from your computer to the competition field, make sure that you fill in this table as evidence.

Test Number

Test Expected Results(What you think will happen?)

Actual Result(What actually happened?)1. start app first screen will appear

2. press answer1 button

Taken to correct response screen3. press answer 2

buttonTaken to correct response

screen4. press answer 3 button

Taken to correct response screen5. selfie selfie uploaded

Robotics 101 Page 90

Page 91: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

6.2 Evaluation

Needs and opportunitiesWhat needs or opportunities does the solution address? How well does it address these?

InnovativeHow is the digital solution innovative? What potential impact does it have?

SustainabilityWhat is the lifespan of your solution? How long before better technology arrives and it is obsolete?

RecommendationsRecommend at least one improvement that you would like to see made to the digital solution. Why?

Robotics 101 Page 91

Page 92: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robot with Spinning Arm (with ultrasonic and light sensors)

4.1 Define Data and Functional Requirements

For your Robot (digital computer system) to work and function, to solve your problem, you need to think about what data goes into the system and then how the system uses it to provide and output or action that functions to solve your problem.

4.1.1 Input, process, output (IPO) table

This strategy has a robot with one Light and one Ultrasonic Sensor. Define how data will be used in your robot system by fill ing in the table below.

NOTE: You may also have a Gyro Sensor to help you turn, so include this as well

Input (event/data) Processing (coding) Output (action)

Eg:

Input (event/data) Processing (coding) Output (action)

Ultrasonic sensor receives signal Calculate distance to opponent object and decide action to take Move towards opponent

4.1.1 Robot design considerations and methodologies used

Define how you will construct your robot and why you have chosen to configure it this way. Include photos of your completed build.

Ideas:

Build: Robocoaster, but with spinning attachment

Robocoaster

SumoBot Strategy 3Wednesday, 19 June 2019 1:15 PM

Robotics 101 Page 92

Page 93: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

https://docs.wixstatic.com/ugd/ecb80d_778397542a974d57b2fe94cc3ebdad9d.pdf

ecb80d_778397542a...

1 colour, 1 ultrasonic

Flipper

4.2 Solution Design AlgorithmIn simplest terms, an algorithm is the series of steps that you can take to solve a problem. An easy way to write an algorithm is to use pseudocode or English-like statements. For example:

Algorithm for edge detection

Wait 5 sec

Stop motorsReverse motors at -50 for 1 rotationSpin around (motor B -100, motor C 100)

If sense colour that is less than 50 (white), then: [or >20]

Else it is black, so drive forward (motor B 100, motor C 100)

Game Playing – Basic Strategy

There are two major tasks that your SumoBot will need to be able to do in order to be competitive.

1. Firstly it needs to be able to find the edge of the ring and then turn around. At a basic level if your Bot can continually drive forward to the edge of the ring and turn around you can enter the SumoBot competition2. Secondly it needs to search for the opponent and charge when the opponent is located, while still staying in the ring.3. Continuously spin claw

1. Finding the edge of the ring

Robotics 101 Page 93

Page 94: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Algorithm for edge detection

Stop motorsReverse motors at -50 for 1 rotationSpin around (motor B -100, motor C 100)

If sense colour that is greater than 50 (white), then:

Else it is black, so drive forward (motor B 100, motor C 100)

Loop forever

OR

Move forward

StopReverseTurn full right for ?

If see white

Loop Forever

OR

If we see black, then (we must be in the middle) attack by moving forward

Drive backwards for 1 rotationTurn right 46 for 1 rotation

Else (we must be detecting white and be at the edge)

Loop Forever

OR

Move forward with a curve towards the line

Steer in opposite directionIf see white

Loop Forever

2. Algorithm for edge and opponent detection

Stop motorsReverse motors at -50 for 1 rotationSpin around (motor B -100, motor C 100)

If sense colour that is less than 50 (white), then:

drive forward at opponent (motor B 100, motor C 100)If ultrasonic sensor detects object (distance < 20) then:

Else spin around slowly (motor B -25, motor C 25)

Else

Loop forever

3. Continuously Spin Claw

EG

Wait 5 sec

Spin medium motorLoop Forever

drive forward at opponent (motor B 100, motor C 100)If ultrasonic sensor detects object (distance < 20) then:

Stop motorsReverse motors at -50 for 1 rotationSpin around (motor B -100, motor C 100)

If sense colour that is less than 50 (white), then:

Loop forever

OR

Spin medium motor

Loop forever

Stop motorsReverse motors at -50 for 1 rotationSpin around (motor B -100, motor C 100)

If sense colour that is less than 50 (white), then:

If ultrasonic sensor detects object (distance < 20) then:Else

Loop forever

Robotics 101 Page 94

Page 95: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

drive forward at opponent (motor B 100, motor C 100)If ultrasonic sensor detects object (distance < 20) then:

Else spin around slowly (motor B -25, motor C 25)

Design your solution by developing an algorithm that incorporates decision making (switch) and repetition (loops)

5.1 Documented final robot program code

5.2 Work Logs

Work log

A work log is a short, bullet point list of what you worked on, and how long it took. Stick to just the facts. It shouldn’t take more than thirty seconds or so to write up a work log.

Sample work log:Backpack Project #1: Cave Exploration System

3/31: Worked on getting Builder to navigate uneven hallways (45 min.)4/1: Added Say blocks at each point so we could stop it from getting lost all the time (30 min.)4/3: Completed exploring simple caverns, now working on more complex systems (45 min.)4/4: Coded for multi-level caves, spawner detection system (30 min.)

5.3 Weekly Reflections

A Reflection is like a journal entry that tells the story of your learning throughout the past week. Go through your work logs for the week and look at what you did, where you got stuck, and how you figured it out. Then write a 150- to 300-word Record of Thinking essay each week of the final project addressing the following:

Describe something that surprised you this week as you worked on your project.

Describe a moment where you go stuck. How did you get unstuck?

Did anyone help you this week? Who and how?

Choose an adjective that describes how you are feeling about your project this week. Explain why you chose this word.

What are you working on next week?

If you had more time to work on this project, what would you add? (for the final week)

Reflection Excerpt:

Week of April 6:

I finally figured out why my code wasn’t working. I had the wrong for loop nested inside the other one, and so it was executing way more times than it was supposed to, and that was why the Agent kept going off track. Once I created another variable to keep track of the number of times the Agent came back to the Home row, and checked this variable each time during the loop, everything worked the way it should. I only was able to figure this out because I took each function apart separately and ran it without that function in order to track down where the problem was. That was useful. I have to remember to try this first next time.

Robotics 101 Page 95

Page 96: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

6.1 Evidence of testing

As you go back an forward, prototyping, from your computer to the competition field, make sure that you fill in this table as evidence.

Test Number Test Expected Results(What you think will happen?)

Actual Result(What actually happened?)

1. start app first screen will appear

2. press answer1 button Taken to correct response screen

3. press answer 2 button Taken to correct response screen

4. press answer 3 button Taken to correct response screen

5. selfie selfie uploaded

6.2 Evaluation

Needs and opportunitiesWhat needs or opportunities does the solution address? How well does it address these?

InnovativeHow is the digital solution innovative? What potential impact does it have?

SustainabilityWhat is the lifespan of your solution? How long before better technology arrives and it is obsolete?

RecommendationsRecommend at least one improvement that you would like to see made to the digital solution. Why?

Robotics 101 Page 96

Page 97: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

4.1 Define Data and Functional Requirements

Input, process, output (IPO) table

This strategy has a robot with two Light Sensor and an Ultrasonic Sensor. Define how data will be used in your robot system by filling in the table below.

NOTE: You may also have a Gyro Sensor to help you turn, so include this as well

Input (event/data) Processing (coding) Output (action)

Eg:

Input (event/data) Processing (coding) Output (action)

Ultrasonic sensor receives signal Calculate distance to opponent object and decide action to take Move towards opponent

4.1.1 Robot design considerations and methodologies used

Define how you will construct your robot and why you have chosen to configure it this way. Include photos of your completed build.

Ideas:

From: http://ev3lessons.com/en/RobotDesigns.html

TripleTorqueBattlebot

Download: https://www.lego.com/en-us/ldd/download

droidbot2

SumoBot Strategy 4Wednesday, 19 June 2019 1:13 PM

Robotics 101 Page 97

Page 98: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

droidbot2

Download: https://www.lego.com/en-us/ldd/download

enterprise

Discovery

Robotics 101 Page 98

Page 99: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Discovery

Stay on the field. For this you will almost certainly need at least one light sensor to detect the ring's white edge. We highly recommend two such light sensors placed at the front corners of your robot. This will increase your chances of detecting the edge when coming at it from an angle. You can also adjust your retreat behavior so the robot will be less likely to exit the ring. A retreat behavior usually consists of backing up and turning back toward the center of the ring or scanning for your opponent. You can back up curving away from the sensor that detected the edge first. A third edge detector could be placed at the back of your robot - but this is almost never needed. It would be only useful if you have a behavior that could trigger backing up when the rear of your robot is close to the edge. Theoretically you could detect the edge when being pushed backward by your opponent and try to twist out of the way, but we've never witnessed anyone pulling off this advanced behavior.

Data Wires Reference:http://www.stemcentric.com/ev3-data-wires

Robotics 101 Page 99

Page 100: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

4.2 Solution Design AlgorithmIn simplest terms, an algorithm is the series of steps that you can take to solve a problem. An easy way to write an algorithm is to use pseudocode or English-like statements. For example:

Algorithm for edge detection

Wait 5 sec

Stop motorsReverse motors at -50 for 1 rotationSpin around (motor B -100, motor C 100)

If sense colour that is less than 50 (white), then: [or >20]

Else it is black, so drive forward (motor B 100, motor C 100)

Game Playing – Basic Strategy

There are two major tasks that your SumoBot will need to be able to do in order to be competitive.

1. Firstly it needs to be able to find the edge of the ring and then turn around. At a basic level if your Bot can continually drive forward to the edge of the ring and turn around you can enter the SumoBot competition2. Secondly it needs to search for the opponent and charge when the opponent is located, while still staying in the ring.

1. Finding the edge of the ring with 2 light sensors

Algorithm for edge detection

Stop motorsReverse motors at -50 for 1 rotationSpin around (motor B -100, motor C 100)

If LHS sense that is greater than 50 (white), then:

Stop motorsReverse motors at -50 for 1 rotationSpin around (motor B -100, motor C 100)

if RHS sense that is greater than 50 (white), then:

Else it is black, so drive forward (motor B 100, motor C 100)

Else

Loop forever

2. Algorithm for edge and opponent detection with light sensors

Stop motorsReverse motors at -50 for 1 rotationSpin around (motor B -100, motor C 100)

If LHS sense that is greater than 50 (white), then:

Stop motorsReverse motors at -50 for 1 rotationSpin around (motor B -100, motor C 100)

if RHS sense that is greater than 50 (white), then:

drive forward at opponent (motor B 100, motor C 100)If ultrasonic sensor detects object (distance < 20) then:

Else spin around slowly (motor B -25, motor C 25)

Else

Else

Loop forever

The objective here is to find the opponent using a sensor such as the ultrasonic sensor then charge at the opponent while ensuring that your SumoBot still stays within the ring.

Alternative with ORYou could just check both sensors at the same time and if one is white, then reverse.

Robotics 101 Page 100

Page 101: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

You could just check both sensors at the same time and if one is white, then reverse.

Stop motorsReverse motors at -50 for 1 rotationSpin around (motor B -100, motor C 100)

If (LHS sense that is greater than 50 [white] OR RHS sense that is greater than 50 [white] then:

drive forward at opponent (motor B 100, motor C 100)If ultrasonic sensor detects object (distance < 20) then:

Else spin around slowly (motor B -25, motor C 25)

Else

Loop forever

5.1 Documented final robot program code

Reference, Data Wires: http://localhost:58401/localizedMapping_B90BDB05-F70E-4B0B-8CEA-031DCF197215/en-GB/editor/page.html?Path=editor%2FDataWires.html

Robotics 101 Page 101

Page 102: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 102

Page 103: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Robotics 101 Page 103

Page 104: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Data Wires Reference:http://www.stemcentric.com/ev3-data-wires

5.2 Work Logs

Work log

A work log is a short, bullet point list of what you worked on, and how long it took. Stick to just the facts. It shouldn’t take more than thirty seconds or so to write up a work log.

Sample work log:Backpack Project #1: Cave Exploration System

3/31: Worked on getting Builder to navigate uneven hallways (45 min.)4/1: Added Say blocks at each point so we could stop it from getting lost all the time (30 min.)4/3: Completed exploring simple caverns, now working on more complex systems (45 min.)4/4: Coded for multi-level caves, spawner detection system (30 min.)

5.3 Weekly Reflections

A Reflection is like a journal entry that tells the story of your learning throughout the past week. Go through your work logs for the week and look at what you did, where you got stuck, and how you figured it out. Then write a 150- to 300-word Record of Thinking essay each week of the final project addressing the following:

Describe something that surprised you this week as you worked on your project.

Describe a moment where you go stuck. How did you get unstuck?

Did anyone help you this week? Who and how?

Choose an adjective that describes how you are feeling about your project this week. Explain why you chose this word.

What are you working on next week?

If you had more time to work on this project, what would you add? (for the final week)

Reflection Excerpt:

Week of April 6:

I finally figured out why my code wasn’t working. I had the wrong for loop nested inside the other one, and so it was executing way more times than it was supposed to, and that was why the Agent kept going off track. Once I created another variable to keep track of the number of times the Agent came back to the Home row, and checked this variable each time during the loop, everything worked the way it should. I only was able to figure this out because I took each function apart separately and ran it without that function in order to track down where the problem was. That was useful. I have to remember to try this first next time.

6.1 Evidence of testing

As you go back an forward, prototyping, from your computer to the competition field, make sure that you fill in this table asevidence.

Test Number Test Expected Results(What you think will happen?)

Actual Result(What actually happened?)

1. start app first screen will appear

2. press answer1 button Taken to correct response screen

3. press answer 2 button Taken to correct response screen

4. press answer 3 button Taken to correct response screen

5. selfie selfie uploaded

Robotics 101 Page 104

Page 105: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

6.2 Evaluation

Needs and opportunitiesWhat needs or opportunities does the solution address? How well does it address these?

InnovativeHow is the digital solution innovative? What potential impact does it have?

SustainabilityWhat is the lifespan of your solution? How long before better technology arrives and it is obsolete?

RecommendationsRecommend at least one improvement that you would like to see made to the digital solution. Why?

Robotics 101 Page 105

Page 106: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

http://www.sugobot.com/

https://www.lego.com/en-us/mindstorms/build-a-robot/track3r

Build: https://www.youtube.com/watch?v=WTfB839J_Ew

EV3SuGo

SumoBot Strategy 5Wednesday, 19 June 2019 1:16 PM

Robotics 101 Page 106

Page 107: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

SamBot - 2 ultrasonic and one touch

2 ultrasonic and one touch

SamBot

From: http://ev3lessons.com/en/RobotDesigns.html

Multiple Sensors

Friday, 28 June 2019 10:26 AM

Robotics 101 Page 107

Page 108: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Multiple Sensors

Endeavour

Robotics 101 Page 108

Page 109: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Copy this whole section to your OneNote Space & then fill it in

1. Report cover page2. Table of contents

3. EXPLORE

[Explain how these blocks work]

3.1 Move Steering3.2 Move Tank3.3 Colour sensor compare3.4 Ultrasonic sensor compare3.5 Gyro Sensor detect3.6 Parallel sequence3.7 Loop3.8 Switch3.9 Medium motor

4. DEVELOP

4.1 Define Data and Functional Requirements

4.1.1 Sumo Bot Strategy 14.1.2 Sumo Bot Strategy 24.1.3 Sumo Bot Strategy 3

4.1 Robot design considerations and methodologies used

4.2.1 Sumo Bot Strategy 14.2.2 Sumo Bot Strategy 24.2.3 Sumo Bot Strategy 3

4.2 Algorithm designs using flowcharts or pseudocode

5. GENERATE

5.1 Documented final robot program code

5.2 Work Logs

Work log

A work log is a short, bullet point list of what you worked on, and how long it took. Stick to just the facts. It shouldn’t t ake more than thirty seconds or so to write up a work log.

Sample work log:Backpack Project #1: Cave Exploration System

3/31: Worked on getting Builder to navigate uneven hallways (45 min.)4/1: Added Say blocks at each point so we could stop it from getting lost all the time (30 min.)4/3: Completed exploring simple caverns, now working on more complex systems (45 min.)4/4: Coded for multi-level caves, spawner detection system (30 min.)

5.3 Weekly Reflections

A Reflection is like a journal entry that tells the story of your learning throughout the past week. Go through your work logs for the week and look at what you did, where you got stuck, and how you figured it out. Then write a 150- to 300-word Record of Thinking essay each week of the final project addressing the following:

Report TemplateTuesday, 25 June 2019 1:02 PM

Robotics 101 Page 109

Page 110: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Describe something that surprised you this week as you worked on your project.

Describe a moment where you go stuck. How did you get unstuck?

Did anyone help you this week? Who and how?

Choose an adjective that describes how you are feeling about your project this week. Explain why you chose this word.

What are you working on next week?

If you had more time to work on this project, what would you add? (for the final week)

Reflection Excerpt:

Week of April 6:

I finally figured out why my code wasn’t working. I had the wrong for loop nested inside the other one, and so it was executing way more times than it was supposed to, and that was why the Agent kept going off track. Once I created another variable to keep track of the number of times the Agent came back to the Home row, and checked this variable each time during the loop, everything worked the way it should. I only was able to figure this out because I took each function apart separately and ran it without that function in order to track down where the problem was. That was useful. I have to remember to try this first next time.

6. EVALUATE AND REFINE

6.1 Evidence of testing

Test Number Test Expected Results(What you think will happen?)

Actual Result(What actually happened?)

1. start app first screen will appear

2. press answer1 button Taken to correct response screen

3. press answer 2 button Taken to correct response screen

4. press answer 3 button Taken to correct response screen

5. selfie selfie uploaded

Robotics 101 Page 110

Page 111: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Product Backlog Jobs

1. Report cover page made

2. Table of contents made

3.1 Move Steering explained

3.2 Move Tank explained

3.3 Colour sensor compare explained

3.4 Ultrasonic sensor compare explained

3.5 Gyro Sensor detect explained

3.6 Parallel sequence explained

3.7 Loop explained

3.8 Switch explained

3.9 Medium motor explained

4.1 Define Data and Functional Requirements

4.1 Robot design considerations and methodologies used

4.2 Algorithm designs using flowcharts or pseudocode

Generate: Program Robot and test

5.1 Documented final robot program code

5.2 Work Logs

5.3 Weekly Reflections

6.1 Evidence of testing

6. EVALUATE AND REFINE

In Progress Done

Kanban TemplateWednesday, 12 September 2018 12:43 PM

Robotics 101 Page 111

Page 112: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

ExtensionMonday, 5 August 2019 12:54 PM

Robotics 101 Page 112

Page 113: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Variables are a programming tool that allows the programmer to give a name to a certain value. That value can be used or changed over and over again in many different places. For instance, if you create a variable called Seconds and set it equal to the number "5", you can tell your robot to move forward for Seconds amount of time, or 5 seconds. You can tell your robot to move backwards for Seconds amount of time. If you want to change the amount of time the robot moves forward and backward to 6 seconds each, you only have to change it in the Seconds variable block instead of in both the forward and backward blocks.Goal: Use a variable to make the robot to move for a certain number of seconds.Skills Addressed:

Variables•Movement•InstructionsIn a new program, create a variable by dragging in a Variable block. Name the variable “Seconds” by clicking on the white bar at the top right of the block, then click on "Add Variable" and type in “Seconds” in the new field.

1.

Keep the Mode Selector Write - Numeric but change the parameter Value to "5" by clicking on the 0 and typing "5".

2.

Now you want to use the value. Add another Variable Block and change the Mode Selector to Read - Numeric.

3.

Add a Move Steering block and set the Mode Selector to "On for Seconds". 4.

Now drag the suitcase tab from the second Variable block into the Seconds parameter of the Move Steering block.

5.

VARIABLES: BEGINNERMonday, 5 August 2019 12:54 PM

Robotics 101 Page 113

Page 114: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

HINT: This is called a “Data Wire”. The value of the Seconds variable is “read” into the “seconds” value of the motor block.

Test the program6.

HINT: Observe the robot as you test it. Did the robot do what is was supposed to? If not, how can you figure out what went wrong? What can you do to fix it?

Alter the value of the variable and watch how the movement changes.7.Challenge Expansion: Now that you can use a variable, add onto the program. After the robot moves forward for Seconds amount of time, make it move backwards using the same variable.

8.

DiscussionAfter the team has completed the challenge, ask them the following questions to get them to think through the programming challenge.What was hard about this programming challenge?1.What was easy?2.Did the robot do what you intended it to do?3.How did you go about solving the problem?4.What could you do differently next time? 5.

LEARNING RESOURCESThe following Robot Educator tutorials may be helpful for completing this challenge:

Configuring Blocks•Data Wires•Variables•

From <https://app.schoology.com/page/1134439476>

Robotics 101 Page 114

Page 115: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Variables can be used for any type of data. In this challenge, you’ll expand on the Variables: Beginner Challenge to use variables to control the motor power as well as the time the motors run.Goal: Use variables to input values, making the robot to move for a certain number of seconds

Skills Addressed:

Variables•Movement•InstructionsStart with the program you created in the Variables: Beginner Activity.1.Add a variable and name it “Power”.2.

Set the value of Power to "50".3.

Read the value of the variable into the “Power” parameter of the motor block using a Data Wire.4.

Test the program.5.

HINT: Observe the robot as you test it. Did the robot do what is was supposed to? If not, how can you figure out what went wrong? What can you do to fix it?

Alter the value of the variables and watch how the movement changes.6.Challenge Expansion: Without changing the value of the Power variable, can you use it to make the robot move backwards?

7.

HINT: The “Math” block and multiplication may help.

DiscussionAfter the team has completed the challenge, ask them the following questions to get them to think through the programming challenge.What was hard about this programming challenge?1.What was easy?2.Did the robot do what you intended it to do?3.How did you go about solving the problem?4.What could you do differently next time? 5.

LEARNING RESOURCES

VARIABLES: INTERMEDIATEMonday, 5 August 2019 12:55 PM

Robotics 101 Page 115

Page 116: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

LEARNING RESOURCESThe following Robot Educator tutorials may be helpful for completing this challenge:

Configuring Blocks•Data Wires•Variables•

From <https://app.schoology.com/page/1134439530>

Robotics 101 Page 116

Page 117: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

In previous challenges, you have set the value of variables manually. Variables, however, can also be calculated at runtime (while the program is running). In this challenge, you will write a program to calculate the circumference of your robot’s wheels, store the value in a variable, and then use the variable to move a certain distance.Goal: Program the robot to drive a given distance by using the Math block to calculate the circumference of the robot’s wheels.Skills Addressed:

Variables•Math Block•Movement•InstructionsIn a new program, create 3 variables: "Power", "Diameter", and "Distance".1.

Set the Power variable value to "25".2.Now measure the diameter of your robot’s wheels. Set the Diameter variable to the value you measured. For this example, you’ll assume the wheel diameter is "2.5" inches. Set the Diameter variable value to "2.5".

3.

Set the Distance variable to the distance in inches you want your robot to travel. Set the Distance variable value to "64".

4.

Now you can calculate the circumference of the wheels. Add a Variable block and a Math block to the program. Alter the variable settings to "read" the value of Diameter.

5.

Use the Math block to multiple Diameter by Pi (3.14). Change the math function to “Multiply,” use a Data Wire to read Diameter into "A" input, and change "B" value to “3.14”.

6.

Next, create a new variable named "Circumference". Use a Data Wire to read the “=” value of the Math block into the variable. This will store whatever number the Math block calculates in the Circumference variable.

7.

VARIABLES: ADVANCEDMonday, 5 August 2019 12:56 PM

Robotics 101 Page 117

Page 118: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Now you can calculate the distance you want the robot to travel. By dividing the distance you want the robot to travel by the circumference of the wheel, youy get the number of wheel rotations needed to travel that distance. Use a Math block to perform this calculation.

8.

Add a Move Steering block and set Mode Selector to “On for Rotations.” Use the value you just calculated for the rotations parameter of the Move Steering block and use the Power variable for the power parameter.

9.

HINT: Moving by rotations instead of by seconds is a much more accurate way to move your robot. If the robot’s batteries are low, the robot will move more slowly and therefore cover less distance in a given number of seconds, but the number of rotations will always stay the same.

Run the program and measure to see if the robot moved the correct distance.10.

HINT: Observe the robot as you test it. Did the robot do what is was supposed to? If not, how can you figure out what went wrong? What can you do to fix it?

HINT: A good troubleshooting method is to explain every step of your program to another person. Often the problem will become clear simply by reading the steps out loud.

Test the program using various distance values.11.DiscussionAfter the team has completed the challenge, ask them the following questions to get them to think through the programming challenge.What was hard about this programming challenge?1.What was easy?2.Did the robot do what you intended it to do?3.How did you go about solving the problem?4.What could you do differently next time? 5.

LEARNING RESOURCESThe following Robot Educator tutorials may be helpful in completing this challenge:

Math - Basic•Data Wires•Variables•

Robotics 101 Page 118

Page 119: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Variables•

From <https://app.schoology.com/page/1134439888>

Robotics 101 Page 119

Page 120: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Did you know that you can create your own programming blocks? They are called "My Blocks." My Blocks allow you to define a set of programming instructions that can be used over and over again by only placing a single block into the program. Learn more by completing the Robot Educator - Tools -My Blocks tutorial.

From <https://app.schoology.com/page/1134440582>

As you saw in the Robot Educator My Blocks tutorial, My Blocks can be used to create repeatable code. Another thing My Blocks can do is receive values from other blocks. These are called parameters. The value of a parameter is unknown until the programmer sets it using another block. In this challenge, you will create a My Block to move for an unknown number of seconds. Just as you have to send a Seconds value to a Move Steering block, you will also have to send a Seconds value to this parameter.Goal: Create a My Block that moves at 50 percent power for an undetermined number of seconds.Skills Addressed:

My Blocks•Variables•Movement•InstructionsIn a new program, replicate the program from the Variables Beginner challenge.1.

Now you can create a My Block of this code. First, select the Motor block by clicking it.2.

Then select Tools > My Block Builder from the top menu.3.A menu will appear. Set up the MyBlock with the following steps:4.In the “Name” field, type “MoveForwardForSeconds.”5.

2.

HINT: 3.My Blocks can be named anything you want, but it is a good idea to be very specific with the name so you can remember what it does.

4.

In the “Description” field, type “This MyBlock moves forward at 50 power for a certain number of seconds.”

6.

6.

HINT: 7.Descriptions are important for giving more detailed information about what your My Block does.

8.

Select the Motor steering icon to be the My Block’s image.7.

MY BLOCKSMonday, 5 August 2019 12:56 PM

Robotics 101 Page 120

Page 121: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Click the “Parameter Setup” tab.8.Name the parameter “seconds” with a default value of ‘0.’9.

Robotics 101 Page 121

Page 122: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Click the Parameter Icons tab and select an image that represents time.10.

Then click “Finish.”11.The Move Steering block in your code should be replaced with your new My Block. Test your program to make sure it works.

12.

Robotics 101 Page 122

Page 123: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Now add a wait block and another MoveForwardForSeconds block to your code. Input the Seconds variable to the new MoveForwardForSeconds block.

13.

Test your program. Your robot should move forward for five seconds, wait, and then move forward for another five seconds.

14.

HINT: Observe the robot as you test it. Did the robot do what is was supposed to? If not, how can you figure out what went wrong? What can you do to fix it?

Try your program using different values for Seconds. Does the amount of time the robot moves change for both times the My Block is used?

15.

HINT: You can also edit the blocks of the My Block by double clicking on it in your code. A new tab will open where you can alter the My Block.

DiscussionAfter the team has completed the challenge, ask them the following questions to get them to think through the programming challenge.What was hard about this programming challenge?16.What was easy?17.Did the robot do what you intended it to do?18.How did you go about solving the problem?19.What could you do differently next time? 20.

LEARNING RESOURCESThe following Robot Educator tutorial may be helpful in completing this challenge.

My Block Builder•

From <https://app.schoology.com/page/1134440618>

My Blocks can have multiple parameters. In this challenge, you will expand on the Variables Intermediate challenge to use a My Block that uses parameters for both the power and the speed.Goal: Create a My Block that moves at an unknown power for an unknown amount of time.

Skills Addressed:

My Blocks•Variables•Movement•Instructions

In a new program, replicate the program from the Variables Intermediate challenge.21.

Robotics 101 Page 123

Page 124: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Now you can create a My Block of this code. First, select the Move Steering block by clicking it.22.

Then select Tools - My Block Builder from the top menu.23.In the menu, give the My Block a "name", "description", and "icon".24.Select the "Parameter Setup" tab.25.Name the first parameter “power” with a default value of "0".26.

Then select the "Parameter Icons" tab and choose an icon that represents power.27.Now click on the second "a" in the block at the top of the My Block Builder window. This will select the second parameter.

28.

Robotics 101 Page 124

Page 125: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Name the second parameter “seconds” with a default value of "0" and select an appropriate icon.29.Click “Finish.”30.The Move Steering block in your code should be replaced with your new My Block. Test your program to make sure it works.

31.

HINT: Observe the robot as you test it. Did the robot do what is was supposed to? If not, how can you figure out what went wrong? What can you do to fix it?

Try your program using different values for "Power" and "Seconds".32.Lastly, try using multiple My Blocks in your program.33.DiscussionAfter the team has completed the challenge, ask them the following questions to get them to think through the programming challenge.What was hard about this programming challenge?34.What was easy?35.Did the robot do what you intended it to do?36.How did you go about solving the problem?37.What could you do differently next time? 38.

LEARNING RESOURCESThe follow Robot Educator tutorial may be helpful for completing this challenge.

My Block Builder•

From <https://app.schoology.com/page/1134440696>

My Blocks can be as complicated as you want them to be. Turning a complicated set of code into a My Block can help make your program look much cleaner, as well as making it very easy to repeat lengthy processes with a single block. In this challenge, you will alter the Variables Advanced challenge to use a My Block to calculate the number of rotations the robot needs to move. The My Block will take in two parameters, diameter and distance, and then calculate the number of rotations the motors must turn in order to travel the required distance.Goal: Create a My Block that will calculate the number of rotations the motors need to move in order to travel a certain distance.Skills Addressed:

My Blocks•Variables•Math Blocks•Movement•InstructionsIn a new program, replicate the program from the Variables Advanced challenge.39.Now you can create a My Block to calculate the number of rotations the robot needs to move. First, select the set of code shown below..

40.

Robotics 101 Page 125

Page 126: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

First, select the set of code shown below..

Then select Tools - My Block Builder from the top menu.41.In the menu, give the My Block a "name", "description", and "icon".42.Select the "Parameter Setup" tab.43.Name the first parameter “diameter” with a default value of "0" and select an icon.44.

Now click on the second parameter. This is the value the My Block will calculate and output back to the rest of the code. Name it “rotations” and select an "icon".

45.

Robotics 101 Page 126

Page 127: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

In order to calculate the number of rotations, we need to know both the wheel diameter and the distance the robot needs to travel, but right now we only have an input parameter for diameter. Press the “+” button to add a new parameter.

46.

Set up the new parameter with the following attributes:47.Name: “distance”48.Parameter type: "Input"49.Data Type: "Number"50.Default Value: "0"51.Select an icon that represents distance.52.

Robotics 101 Page 127

Page 128: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Click “Finish”.53.A new tab will open showing your new My Block code.54.

HINT: Notice your two input parameters (diameter and distance) in the first block on the left and your output parameter (rotations) on the far right.

Since we created a “local” parameter to read in the distance from the outside code, we don’t need to read the Distance variable in the middle of the code. Delete this block.

55.

Now connect the distance parameter on the left to the ‘A’ input of the second calculation where the old Distance variable was connected.

56.

Robotics 101 Page 128

Page 129: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Return to the main code by selecting the original program in the tab bar. The section of code you selected earlier should be replaced with your new My Block.

57.

HINT: The blocks may be jumbled and unorganized. Feel free to rearrange them. If the Data Wires are in the way, simply click on one of the wire ends to disconnect it, and then reconnect it the way you want.HINT: Also notice that the rotations output parameter of the My Block connects to the rotations parameter of the Move Steering block.

Notice that the original Distance variable is not connected to the distance parameter in the CalculateRotations My Block. Read it into the My Block using a Variable block and a Data Wire.

58.

Test your program to make sure it works.59.

HINT: Observe the robot as you test it. Did the robot do what is was supposed to? If not, how can you figure out what went wrong? What can you do to fix it?

Try your program using different values for Distance.60.Think about other way you can use My Blocks. What tasks do you program over and over again? Would it be easier to put them into a My Block so you could reuse them?

61.

DiscussionAfter the team has completed the challenge, ask them the following questions to get them to think through the programming challenge.What was hard about this programming challenge?62.What was easy?63.Did the robot do what you intended it to do?64.How did you go about solving the problem?65.What could you do differently next time? 66.

LEARNING RESOURCESThe follow Robot Educator tutorial may be helpful for completing this challenge.

My Block Builder•

From <https://app.schoology.com/page/1134440900>

Robotics 101 Page 129

Page 130: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Resources

https://education.lego.com/en-us/support/mindstorms-ev3/python-for-ev3

How to install micropython

https://sites.google.com/site/ev3devpython/

Everything you need

https://www.udemy.com/course/ev3-python/

Course you can do

1. Set up the EV3https://education.lego.com/en-us/support/mindstorms-ev3/python-for-ev3https://sites.google.com/site/ev3devpython/setting-up-vs-code

2. The Components

a. Motors

You need all the code below to start with. This loads up all the libraries (equivalent to blocks in mindstorms)

#!/usr/bin/env python3from ev3dev2.motor import LargeMotorfrom ev3dev2.motor import SpeedDPS, SpeedRPM, SpeedRPS, SpeedDPMfrom time import sleeplm = LargeMotor()

Then the basic command is:

lm.on_for_seconds(50, 3) # speed 50 for 3 secondssleep(1) # wait for a second

There are many variations, see: https://sites.google.com/site/ev3devpython/learn_ev3_python/using-motors

MoveSteering Function

#!/usr/bin/env python3from ev3dev2.motor import LargeMotor, MoveSteering, OUTPUT_A, OUTPUT_Dfrom time import sleep

steer_pair = MoveSteering(OUTPUT_A, OUTPUT_D, motor_class=LargeMotor)steer_pair.on_for_seconds(steering=0, speed=50, seconds=2)

MoveTank Function

#!/usr/bin/env python3from ev3dev2.motor import LargeMotor, MoveTank, OUTPUT_A, OUTPUT_Dfrom time import sleep

tank_pair = MoveTank(OUTPUT_B, OUTPUT_C)

tank_pair.on_for_rotations(left_speed=50, right_speed=75, rotations=10)

# Or tank_pair.on_for_rotations(50, 75, 10)

Challenges:Straight MoveCurved Move

PythonTuesday, 3 September 2019 12:23 PM

Robotics 101 Page 130

Page 131: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Curved MoveTank Move

b. Sensors

Color sensor

Stop at line

#!/usr/bin/env python3from ev3dev2.motor import OUTPUT_C, LargeMotorfrom ev3dev2.sensor.lego import ColorSensorfrom time import sleep

# Connect an EV3 color sensor.

cl = ColorSensor()mC = LargeMotor(OUTPUT_C)

# Make the right motor (motor C) turn at 50% speed

mC.on(speed=50)

# Wait until the colour sensor detects that the brightness# has fallen beneath a threshold value of 40 (see note).# Loop while over white surface

while cl.reflected_light_intensity > 40:sleep(0.01)

mC.off()

Gyro

Stop at Angle

#!/usr/bin/env python3from ev3dev2.motor import OUTPUT_B, OUTPUT_C, MoveTankfrom ev3dev2.sensor.lego import GyroSensorfrom time import sleep

# Connect gyro sensor.

gyro = GyroSensor()tank_pair = MoveTank(OUTPUT_B, OUTPUT_C)

# Start the left motor with speed 40% to initiate a medium turn right.

tank_pair.on(left_speed=40, right_speed=0)

# Wait until the gyro sensor detects that the robot has turned# (at least) 45 deg in the positive direction (to the right)

gyro.wait_until_angle_changed_by(45)

# Robot moves straight ahead with speed 50% until the wheels# have turned through one rotation

tank_pair.on_for_rotations(left_speed=50, right_speed=50, rotations=1)

From <https://sites.google.com/site/ev3devpython/learn_ev3_python/robot-educator>

Robotics 101 Page 131

Page 132: Mindstorms Software...software installed. These resources focus on students aged 10-16 with links to national curriculum standards. Includes student-ready resources, full teacher support,

Ultrasonic

Stop at Object

#!/usr/bin/env python3from ev3dev2.motor import MoveSteering, OUTPUT_B, OUTPUT_Cfrom ev3dev2.sensor.lego import UltrasonicSensorfrom time import sleepsteer_pair = MoveSteering(OUTPUT_B, OUTPUT_C)us = UltrasonicSensor()

# Record the initial separation of the sensor and the object

startdistance = us.distance_centimeters

# Start robot moving forwards

steer_pair.on(steering=0, speed=50)

# Wait until robot has moved (at least) 11 cm closer# to the reflecting object in front of it

while us.distance_centimeters > startdistance-11:sleep(0.01)

steer_pair.off() # Stop moving forwardssleep(1)

# Reverse at 50% speed

steer_pair.on(steering=0, speed=-50)

# Wait until robot is less than 5 cm from its starting position

while us.distance_centimeters < startdistance-5:sleep(0.01)

steer_pair.off() # Stop moving backwards

From <https://sites.google.com/site/ev3devpython/learn_ev3_python/robot-educator>

Robotics 101 Page 132