Presentation is loading. Please wait.

Presentation is loading. Please wait.

Science and Engineering Festival Some Robotic STEM Ideas

Similar presentations


Presentation on theme: "Science and Engineering Festival Some Robotic STEM Ideas"— Presentation transcript:

1 Science and Engineering Festival Some Robotic STEM Ideas
Craig Shelden

2 Robot Connections with STEM
Combines disciplines Engineering Math Technology Scientific Method Makes abstract ideas real.

3 Thoughts on Programming
Clear Problem Statement Pseudocode Draw out what’s being attempted Words First. Program – Test – Program – Test ---> Repeat Value of default settings… ? Make things easier to program… Make students think through every block they program Approaches vary with goals and Team choices

4 WeDo Programming

5 Sailor Max Basic boat movement Basic boat movement with sound effects
basic_boat.wedo boat_sounds.wedo

6 WeDo – Complex Capability with Sailor Max
Motion and sound with tilt sensor Motion and sound with tilt triggered by proximity sensor storm.wedo

7 WeDo – NXT-G Connection
Similar: Syntax Coloring Left – to – right program flow

8 NXT-G Simple Area Measurement
Given a circle… How to measure its area using a robot? Circumference = 2πr Area = π r2 r Pause Here…

9 NXT-G Simple Area Measurement
Given a circle… How to measure its area using a robot? Circumference = 2πr Area = π r2 One approach might be to: measure all the way around the circle calculate the radius calculate the area Area = C2/(4 π) r

10 One Circle Measuring Solution

11 NXT-G Simple Area Measurement
Given a circle… How to measure its area using a robot? Other ways…. Circumference = 2πr Area = π r2 r Are there other ways?

12 NXT-G Simple Area Measurement
Given a circle… How to measure its area using a robot? Other ways…. Circumference = 2πr Area = π r2 Cross on a diameter and determine measurement…. r

13 NXT-G Complex Robotic Behavior - Sumo

14 Consider This Program Architecture
Define Variables Monitor Sensor # 1  Variable # 1 Monitor Sensor # 2  Variable # 2 Act Act (Values) Act Record desired data See one of the sumo programs

15 Subsumptive Programming Architecture
See one of the sumo programs Source: Brooks: A Robust Layered Control System for a Mobile Robot

16 NXT-G – Data Collection and Analysis Area Measurement

17 NXT-G – Data Collection and Analysis Area Measurement
How to measure the perimeter and area of an arbitrary closed shape? Pause Here…

18 NXT-G – Data Collection and Analysis Area Measurement
How to measure the perimeter and area of an arbitrary closed shape? Consider Descartes’ method: INSTRUCTIONS Beginning with any vertex, list the coordinates of the vertices in order, moving counter-clockwise around the polygon. List the first pair again at the end. Find the diagonal products from left to right. Find the diagonal products from right to left. Sum each column of products. Find their difference and divide by 2. This is the polygon’s area. Could we do this by driving a robot around the shape? From Area the Easy Way

19 NXT-G – Data Collection and Analysis Area Measurement
X new = X old + ΔX Y new = Y old + ΔY Need to generate (x, y) pairs as the robot follows the line around… But unlike the plotted curve, the robot does not know what the next pair will be. Need to find a way to remember the last point and calculate the next one. Just a little trigonometry… and a compass. (X old, Y old) North Distance (X new, Y new) Heading ΔX ΔY ΔX = Dist *Sine (Hdg) ΔY = Dist *Cosine (Hdg) Inspired by Area the Easy Way

20 NXT-G – Data Collection and Analysis Area Measurement
X new = X old + ΔX Y new = Y old + ΔY Need to generate (x, y) pairs as the robot follows the line around… But unlike the plotted curve, the robot does not know what the next pair will be. Need to find a way to remember the last point and calculate the next one. Just a little trigonometry… and a compass. Distance (X old, Y old) North Heading ΔX ΔY (X new, Y new) ΔX = Dist *Sine (Hdg) ΔY = Dist *Cosine (Hdg) Sine and cosine provide positive and negative factors that scale the sides of the right triangle. Inspired by Area the Easy Way

21 NXT-G – Data Collection and Analysis Area Measurement
Show development of the path as the robot follows along the orange curve. X new = X old + ΔX Y new = Y old + ΔY ΔX = Dist *Sine (Hdg) ΔY = Dist *Cosine (Hdg) Sine and cosine provide positive and negative factors that scale the sides of the right triangle. Inspired by Area the Easy Way

22 NXT-G – Data Collection and Analysis Area Measurement
Show development of the path as the robot follows along the orange curve. X new = X old + ΔX Y new = Y old + ΔY ΔX = Dist *Sine (Hdg) ΔY = Dist *Cosine (Hdg) ΔY ΔX Sine and cosine provide positive and negative factors that scale the sides of the right triangle. Inspired by Area the Easy Way

23 NXT-G – Data Collection and Analysis Area Measurement
Example path showing generated (x, y) pairs as the robot follows the line around. X new = X old + ΔX Y new = Y old + ΔY North ΔX = Dist *Sine (Hdg) ΔY = Dist *Cosine (Hdg) (X2, Y2) (X1, Y1) ΔY (X0, Y0) ΔX Sine and cosine provide positive and negative factors that scale the sides of the right triangle. Inspired by Area the Easy Way

24 NXT-G – Data Collection and Analysis Area Measurement
Example path showing generated (x, y) pairs as the robot follows the line around. X new = X old + ΔX Y new = Y old + ΔY North ΔX = Dist *Sine (Hdg) ΔY = Dist *Cosine (Hdg) (X2, Y2) (X5, Y5) (X1, Y1) ΔY (X3, Y3) (X4, Y4) (X0, Y0) ΔX Sine and cosine provide positive and negative factors that scale the sides of the right triangle. Inspired by Area the Easy Way

25 NXT-G – Data Collection and Analysis Area Measurement – two plots
(X old, Y old) North Distance (X new, Y new) Heading ΔX ΔY X new = X old + ΔX Y new = Y old + ΔY ΔX = Dist *Sine (Hdg) ΔY = Dist *Cosine (Hdg) Rectangle with Distance = 1 inch Circle with Distance = 1 inch Inspired by Area the Easy Way

26 NXT-G – Data Collection and Analysis Area Measurement – two plots
Rectangle with Distance = 1 inch Circle with Distance = 1 inch Red arrows indicate error accumulated through each run. Inspired by Area the Easy Way

27 Mapping with More Sensors

28 Mapping with More Sensors

29 NXT-G – Data Collection and Analysis Pendulum Motion

30 Data Logging See Pendulum Program pendulum.rbtx

31 Application Measuring period of a pendulum common exercise for students Period = 2π √(L/g) Exercise taken from Physics with Robotics by William Church, Tony Ford, and Natasha Perova. Section 4.6 Swinging with Gravity 12 ½ inches 84 ½ inches

32 Pendulum Data 84 ½ inches Ultrasonic sensor
Exercise taken from Physics with Robotics by William Church, Tony Ford, and Natasha Perova. Section 4.6 Swinging with Gravity

33 Pendulum Data 84 ½ inches Ultrasonic sensor
Exercise taken from Physics with Robotics by William Church, Tony Ford, and Natasha Perova. Section 4.6 Swinging with Gravity

34 Pendulum Data 84 ½ inches Light sensor
Exercise taken from Physics with Robotics by William Church, Tony Ford, and Natasha Perova. Section 4.6 Swinging with Gravity

35 Pendulum Data 84 ½ inches Light sensor
Exercise taken from Physics with Robotics by William Church, Tony Ford, and Natasha Perova. Section 4.6 Swinging with Gravity Light sensor

36 Pendulum Data 84 ½ inches Acceleration sensor
Exercise taken from Physics with Robotics by William Church, Tony Ford, and Natasha Perova. Section 4.6 Swinging with Gravity The Acceleration sensor block measures the three axes of acceleration, x, y and z. It returns the readings as signed values ranging from -400 to +400 thus the scale factor is approximately 200 counts per g, so the sensor can measure +/- 2g. Using data wires, it can send out the x, y and z values and a logic signal (true/false) based on whether the x value is above or below a trigger value.

37 Pendulum Data 84 ½ inches Acceleration sensor
Exercise taken from Physics with Robotics by William Church, Tony Ford, and Natasha Perova. Section 4.6 Swinging with Gravity The Acceleration sensor block measures the three axes of acceleration, x, y and z. It returns the readings as signed values ranging from -400 to +400 thus the scale factor is approximately 200 counts per g, so the sensor can measure +/- 2g. Using data wires, it can send out the x, y and z values and a logic signal (true/false) based on whether the x value is above or below a trigger value.

38 Pendulum Relationships
Exercise taken from Physics with Robotics by William Church, Tony Ford, and Natasha Perova. Section 4.6 Swinging with Gravity The Acceleration sensor block measures the three axes of acceleration, x, y and z. It returns the readings as signed values ranging from -400 to +400 thus the scale factor is approximately 200 counts per g, so the sensor can measure +/- 2g. Using data wires, it can send out the x, y and z values and a logic signal (true/false) based on whether the x value is above or below a trigger value.

39 Pendulum Relationships
Maximum Light Maximum Negative Acceleration Minimum Ultrasonic Range Exercise taken from Physics with Robotics by William Church, Tony Ford, and Natasha Perova. Section 4.6 Swinging with Gravity The Acceleration sensor block measures the three axes of acceleration, x, y and z. It returns the readings as signed values ranging from -400 to +400 thus the scale factor is approximately 200 counts per g, so the sensor can measure +/- 2g. Using data wires, it can send out the x, y and z values and a logic signal (true/false) based on whether the x value is above or below a trigger value.

40 Math Excursion See Pendulum Program pendulum.rbtx Lower the sample
Frequency to Something near the Pendulum period. See Pendulum Program pendulum.rbtx

41 Simple Data Logging See Pendulum Program pendulum.rbtx

42 Not So Automatic Data Logging
Limitations on data logging… No way to automatically log variable values Not all sensor vendors supply data logging capabilities Log only four sensors Use Variables See Heading Log Program heading_log.rbtx See Data Collecting MyBlocks data_logging_myblocks.rbtx

43 Variables Much of the programming power comes from the ability to
read values store values, change values, and act based on values. Three types: Number – How much? Text – Say What? Logical – True or False?

44 Consider This Program Architecture
Define Variables Monitor Sensor # 1  Variable # 1 Monitor Sensor # 2  Variable # 2 Act Act (Values) Act Record desired data

45 Two myBlocks for Data Logging
Technique to log data described in Terry Griffin’s book The Art of LEGO MINDSTORMS NXT-G Programming

46 Data File Header

47 Data Consolidation

48 Sample Data Logging Program
Bang_Bang_multilogger_display.rbtx See: \data\line_data folder

49 Not So Automatic Data Logging
Technique to log data described in Terry Griffin’s book The Art of LEGO MINDSTORMS NXT-G Programming

50 Thoughts on Programming
Clear Problem Statement Pseudocode Draw out what’s being attempted Words First. Program – Test – Program – Test ---> Repeat Value of default settings… ? Make things easier to program… Make students think through every block they program Approaches vary with goals and Team choices

51 Robot Connections with STEM
Combines disciplines Engineering Math Technology Scientific Method Makes abstract ideas real.

52 Some Robotic STEM Ideas
Science and Engineering Festival Some Robotic STEM Ideas Craig Shelden


Download ppt "Science and Engineering Festival Some Robotic STEM Ideas"

Similar presentations


Ads by Google