by Rick Bush, Library & Instructional Technology Teacher, Stoller Middle School

Students use the Go Direct Force and Acceleration Sensor to provide input and control their sprite.

Introducing new technology into your classroom can be a significant undertaking. Creating new lessons and incorporating new platforms can require you to learn new technology, figure out how to incorporate it, test it, and then implement it with your students.

We know all of these steps are worth it, because your students are worth it. Computer science is now included as part of STEM education1, and by 2020 one of every two jobs in the STEM fields will be in computing2.

As a Library & Instructional Technology Teacher and former third grade teacher, I understand the challenges teachers face when introducing new technology to students, especially coding and physical computing.

What is physical computing and why is it important?

Physical computing refers to making or using devices that interact with the physical world. Those devices take input from their environment. Processors, such as computers, then take the input and use that data to create some type of output. A physical computer creates an input-process-output cycle.

Consider applications of physical computing as simple as a TV and remote control. The TV receives an input from the remote control as a certain button is pressed, and in return, changes volume or channel as requested.

How can physical computing help your students?

Much like other hands-on learning programs, physical computing is meant to motivate students to collaborate, promote computational thinking, and encourage creative problem solving. These are all skills your students can apply when attempting to solve problems no matter the subject area.

Students who study coding and physical computing learn by doing. They have the opportunity to interact with data from the world around them in a truly constructivist way. As they gather data from a device or sensor, they can use problem-solving skills and trial and error to make sense of the data as they use it to create an interactive project with their peers. This tangibility and interactivity of physical computing helps students make natural connections between the digital and physical worlds in a holistic way, engaging the whole student, mind and body.

How can you get started?

There are many physical computing and coding platforms that can help you get started, but Scratch is my go-to platform of choice. Scratch, a browser-based programming language, is collaborative and encourages students to share and build on each other’s ideas. Scratch is supported by an active and growing community of millions of users, including Vernier Software & Technology who now has a Scratch extension for their Force & Acceleration Sensor.

Follow these easy steps to learn how to use your device’s built-in camera as a sensor in a Scratch program. We will use Scratch’s video sensing block to get input and then process that information to move your sprite. The amount of motion on the stage determines the distance your sprite will travel.

1. Figure Out the Input

One of the best practices for using any new data-collection sensor with Scratch is to determine what type of input data is produced from the device; this goes for the video sensing blocks, too.

  • The blocks for video sensing can be added to any project by clicking on the extensions button in the bottom-left corner of the editor window.
  • You will use the video-sensing reporter block (the block with rounded ends) to read the motion data from your built-in camera.
  • Make a variable and name it “video motion”.
  • Move a “set variable to ()” block to your project.
  • Modify the “set variable to ()” block so that it sets the “video motion” variable to the value of the “video sensing reporter” block.
  • Place that block into a “forever” loop under a “when green flag clicked” block.
  • Click the green flag to show the data input that the video motion is feeding into Scratch.

2. Use the Input Data to Move a Sprite

  • Move a “go to x: () y: ()” block to your project into the forever loop.
  • Modify the “go to x: () y: ()” block so that the x and y value is set to the value of the “video sensing reporter” block.
  • Click the green flag to run your program and watch your sprite move!

3. Add Motion with Math Operations

Adjust the sprite’s motion with math operations like addition, subtraction, and multiplication to dial in your creation.

  • Make it start in the third quadrant by subtracting 100 from each reporter block. (Click here for an example screenshot.)
  • Once you have an understanding of the data-collection sensor, use the data to make a cool game!
  • Check out this example of a balloon pop game—you might even try opening it on your phone or tablet! I can’t wait to see what your students make.

What’s next?

Chances are, you’re not the only teacher in your school who is curious about introducing physical computing to your students. Working together in small groups with your fellow teachers can help to spur new ideas and projects.

I’d love to hear more about your projects. You can Tweet me at @bushr1. You can also learn more about the physical computing options from Vernier Software & Technology on their Engineering, Coding, & Robotics page.

1 STEM Education Act of 2015
2 Rebooting the Pathway to Success, Association for Computing Machinery, 2014