Logistics
- Roll
- Reminder: We are starting a time period where there is little or no outside class activity. You may wish to gain more programming skill/understanding by doing the extra-credit project (program or reflection paper).
- Questions? Comments? Wonderings?
Today's Activities
The plan for today is to: 1) respond to any questions you have on the the NetLogo initials activity; and 2) start working/playing/learning with robots.
Do you have any questions on the initials activity? [ Address questions. ]
Robotics
Our next activity examines our final environment for programming--physical robots. Hopefully you will be able to see what the programming basics look like in this context. One difference between the two is that the movement of sprites and turtles is close to exact whereas the movement of physical robots depends on turning wheels and the wheels interact differently with different surfaces. Additionally, power and speed to wheels is inexact causing more room for variation.
Typically, each robot will have its own programming language. Thus, you have to learn a new language. There are, however, some similarities. For example, the Dash robot uses a version of the Blockly language that you saw in the Code.org activity and which is similar to Scratch. (For that reason, I am not providing much explicit information about programming it.) The Lego EV3 robot's language is quite different from what we've seen before but is somewhat similar to some science-related programming languages (e.g., LabView). (Therefore, I do provide more suggestions/information for doing that programming environment.)
Keep in mind that my goal is to provide as little formal information as I can and still have you effectively experience and learn to program. As you work on the programming activity:
- explore
Do empirical research—might be called guess and check if done informally, but if you plan what you are doing, carefully observe what happens, and analyze the results in preparation of a next "experiment" it is more than guess and check. It is relatively easy to explore in Blockly for Dash but you can also do it in LegoMindstorms for the EV3.
- think about past experience
Remember that all programming languages include all the basics, though they will not all look the same. Try to discover the possible actions that are available to you. If you could do something in one language it is likely you can do it in another.
- talk to your partner(s) and classmates
- examine any provided informational resources
- and, of course, ask questions of your instructor
Questions? Comments? Wonderings?
Dash
Our first robot is Dash. It is for younger kids. Three- and four-year olds love to play with Dash. I believe first graders, perhaps even kindergarteners can program it. They will have many ideas for what they would like to make Dash do. They will rely on you to help them. So, after exploring a bit, think about things you'd like to make Dash do, and try to do some of those. The dash programming activity description suggests some things I think will help you develop the understanding that will allow you to make suggestions for your eventual students to try as they attempt to make dash do what they want it to do.
Let's look at the dash programming activity description. Do you have any questions/comments/wonderings? [ Have students get a robot and (if needed) ipad. ] Then:
- Spread out (one groupe per table)—the robots much connect wirelessly to a phone/tablet
- Turn Dash on
- Start the Blockly app (on phone/tablet)
The ipad password is csed
. Blockly should be readily findable
- Connect your device and your robot
- Explore
- When you feel you have explored enough, do your own thing.
Either start working on the activities suggested in the Dash programming info document or some action you are interested in making Dask carry out
Next Time
- Continue working with dash
Questions? Comments? Wonderings? See you Thursday.
Logistics
- Roll
- Extra Credit Reminder
- Questions? Comments? Wonderings?
Work with Dash
[ Students retrieve robots from cart and begin building/exploring ] You may wish to do further exploration for part of the time today but by about mid-period you should start working on creating your own programs. Suggested possibilities are included below. It is important that you incorporate the use of variables in your programming.
- move forward specified distances (1 foot, 2 feet, ...)
Specify the distance in a variable and move that number of feet. (You will, I think, have to convert the feet to centimeters to do this correctly.)
- move as if to draw a square
Specify the distance in a variable and move that number of feet. (You will, I think, have to convert the feet to centimeters to do this correctly.)
See if you can create a function that moves a certain number of feet. Then use that function when moving in your square. (Hint, use two variables.)
- turn in a circle
- Spin around the center of the robot, this is the smallest possible circle.
- Explore other ways of moving in a circle.
- See if you can move in a circle with a specified diameter (larger than twice the width of the robot), e.g., "about" 15 inches
- wander around avoiding obstacles
- something neat with making sounds, responding to sounds, lights, head motion, etc.
Next Time
- Continue Dash programming
Questions? Comments? Wonderings? See you Tuesday. Note: I will be out of town next Thursday. I will find a way to make the robots available for you to work with; but I will not be present for class. My substitute may or may not be able to provide detailed help with programming the robots.
Logistics
Roll
Extra Credit Reminder
I will not be present for Thursday's class, but someone (Dr. Schafer, hopefully) will bring the robots for you to work on.
Questions? Comments? Wonderings?
Work with Dash
[ Students retrieve robots from cart and continue building/exploring ] You should be working on creating your own programs. Suggested possibilities are included below. It is important that you incorporate the use of variables in your programming.
- move forward specified distances (1 foot, 2 feet, ...)
Specify the distance in a variable and move that number of feet. (You will, I think, have to convert the feet to centimeters to do this correctly.)
- move as if to draw a square
Specify the distance in a variable and move that number of feet. (You will, I think, have to convert the feet to centimeters to do this correctly.)
See if you can create a function that moves a certain number of feet. Then use that function when moving in your square. (Hint, use two variables.)
- turn in a circle
- Spin around the center of the robot, this is the smallest possible circle.
- Explore other ways of moving in a circle.
- See if you can move in a circle with a specified diameter (larger than twice the width of the robot), e.g., "about" 15 inches
- wander around avoiding obstacles
- something neat with making sounds, responding to sounds, lights, head motion, etc.
Next Time
- Continue Dash programming, I won't be here
Questions? Comments? Wonderings? See you Thursday.
Logistics
Roll
Extra Credit Reminder
Questions? Comments? Wonderings?
Work with Dash
[ Students retrieve robots from cart and begin building/exploring ] You should be working on creating your own programs. Suggested possibilities are included below. It is important that you incorporate the use of variables in your programming.
- move forward specified distances (1 foot, 2 feet, ...)
Specify the distance in a variable and move that number of feet. (You will, I think, have to convert the feet to centimeters to do this correctly.)
- move as if to draw a square
Specify the distance in a variable and move that number of feet. (You will, I think, have to convert the feet to centimeters to do this correctly.)
See if you can create a function that moves a certain number of feet. Then use that function when moving in your square. (Hint, use two variables.)
- turn in a circle
- Spin around the center of the robot, this is the smallest possible circle.
- Explore other ways of moving in a circle.
- See if you can move in a circle with a specified diameter (larger than twice the width of the robot), e.g., "about" 15 inches
- wander around avoiding obstacles
- something neat with making sounds, responding to sounds, lights, head motion, etc.
Next Time
- Start with the EV3 robots
Questions? Comments? Wonderings? See you Tuesday.
Logistics
Roll
Questions? Comments? Wonderings?
Any last comments/wonderings about Dash?
Work with EV3
Much of today's time will be spent putting together your EV3 robot. The process is:
- Get a robot kit from the cart. Note the color code of the tape on it.
- Open the box carefully.
- Lift out the tray of part.
- Find the diagram showing the tray organizer. (Either an 8.5 X 11 inch paper or on the back of the cardboard top.)
- Find the instruction booklet in the bottom of the box.
- Build your robot
- Start on page 7 (second step 1) of the instruction booklet. (We won't need the piece built in the first six pages.)
- On page 24 (step 27), the ball should already be in its holder
- On page 29 (step 32), the brick and batteries are already put together
- On page 32 (step 34) and page 35 (step 37), the wheels and tires are already put together
Once you have your robot working you can begin exploring and programming it. If you have not put the software on your own device, you will want to use one of our laptop computers from the cart. You'll need to find the LegoMindstroms software and run it.
Hopefully you have reviewed the brief information provided about using the Lego EV3 robot.
Next Time
- Continue Dash programming, I won't be here
Questions? Comments? Wonderings? See you Thursday.
Logistics
Roll
Questions? Comments? Wonderings?
Work with EV3
[ Students retrieve robots from cart and continue exploring/programming ] You should be working on creating your own programs. Suggested possibilities are included below. It is important that you incorporate the use of variables in your programming.
Next Time
- Continue with the EV3 robots
Questions? Comments? Wonderings? See you Tuesday.
Logistics
Roll
Questions? Comments? Wonderings?
Work with EV3
[ Students retrieve robots from cart and continue exploring/programming ] You should be working on creating your own programs. Suggested possibilities are included below. It is important that you incorporate the use of variables in your programming.
- Use of a variable (
distance
or feet
e.g., declare a variable and initialize it to a distance value; include a calculation to convert the distance value to something that will control the robot
- Make a block
Several are described in the EV3 document, e.g., turn right (either spinning or rotating on right wheel), turn left (spinning or rotating), right or left oblique (45° turn). Another possibility is to make a block for moving in a square of desired size (that could be specified as a parameter). You could use the move distance code above (directly or as a block) and turn blocks to accomplish this.
Next Time
- Continue with the EV3 robots
Questions? Comments? Wonderings? See you Thursday.