Grade 5 · Laser & Vinyl · Lesson 10

Accessible Crosswalk Prototype

Engineer a model crossing signal that combines visual and sound information for different users.

Time3 × 60 minutes + adult fabricationTeamsTeams of 3–4EquipmentArduino + laser cutter

Project inspiration · 3 images

See, build, and test

Use these images to understand the kind of making, details, and testing involved. They are inspiration—not designs students must copy.

Student directions · Grade 5

What will you make and do?

You will build a tabletop crossing model with a request button, a Walk signal and a Warning signal. Words, light patterns and teacher-approved sound will communicate more than color alone.

Teacher overview: Students will plan the specific object described below, make and test a first version, then use their results to improve it. Read one step together, demonstrate the unfamiliar action, and let students complete that step before moving on.

  1. 1Plan your project

    Draw the model road and crossing. Write what a visitor should see and hear while waiting, walking and receiving the warning.

  2. 2Make the first parts

    Use the coding guide to make the teacher-checked Uno circuit on the table. Test the button and complete signal cycle before building scenery.

  3. 3Put it together

    Build the model base, place the button where a visitor can reach it, and add WAIT, WALK and WARNING labels. An adult makes any laser-cut parts.

  4. 4Test it fairly

    Time three full cycles with a single button press. Then hold the button through a cycle and check that it does not immediately start another.

  5. 5Improve one part

    Revise one confusing cue, label or approved timing value. Ask a partner to describe each state and repeat the timing tests.

  6. 6Show and turn in

    Show the model and state diagram. Turn in timings and user feedback; clearly label it as an educational model, not traffic equipment.

How will you know it works?

  • Sequence has clear wait, walk, and warning states
  • Uses more than color alone
  • Completes repeated cycles consistently

Before you move on

Explain which measurement, input or design choice you are testing. Predict the result and record what stays the same so your comparison is fair.

Machine cutting, printer setup and electrical power-on require adult approval. A basic-materials model is a valid way to demonstrate the design when equipment is unavailable.

Keep your plan, test notes and before-and-after evidence with the printable design brief below. Use the detailed teacher plan and any coding guide for tool instructions. These steps continue across the lesson’s meetings, not all in one sitting.

Jump to step-by-step coding guide ↓

Arduino · Grade 5 · Guided practice

How to code this project

What you will make: A button starts a four-second Walk state and a three-second flashing Warning, then returns to Wait.

Teacher-supported Grade 5 reference build for Arduino Uno R3 only. A classroom model, never real traffic equipment. The loop keeps checking time instead of pausing with delay().

Before you start

  • Parts: Uno R3, USB data cable, breadboard, push button, red LED, green LED, TWO 330 Ω series resistors, passive piezo and insulated jumpers. Keep sound low and provide a silent visual alternative.
  • Power off: D8 → 330 Ω → red LED anode; red cathode → GND. D9 → separate 330 Ω → green LED anode; green cathode → GND. Adult checks polarity and resistors.
  • Button connects D2 to GND when pressed (INPUT_PULLUP means pressed reads LOW). Use the button’s datasheet to identify its connected legs. Passive piezo + to D10 and − to GND. No mains or external loads.
  • Add printed WAIT, WALK and WARNING labels to the model; flashing and sound are cues in addition to color. Adult checks the complete circuit before power-on.

Opening and saving: In the teacher-installed Arduino IDE, open a new sketch, replace its entire contents with the starter, and save it with a project name. Select Arduino Uno and the connected port, click Verify (check mark), then Upload (arrow). Disconnect power before wiring. If uploading fails, check the board, USB data cable and port with the teacher. These starters still require an adult bench test on your actual hardware.

Build it one step at a time

  1. First upload the built-in Blink example with external parts disconnected; confirm the built-in light blinks.
  2. Disconnect power, build the listed circuit and obtain an adult inspection.
  3. Replace the entire sketch with the starter below. Verify, choose the Uno R3 and its port, then upload.
  4. Find the three states. Trace which line changes WAIT to WALK when the button reads LOW.
  5. Find 4000 and 3000: these are milliseconds (1000 = one second). Trace how millis() measures elapsed time.
  6. Run the tests below before adding the model intersection. Holding the button must not start a second cycle; release after returning to WAIT to arm it again.

Complete starter sketch

enum State { WAIT, WALK, WARNING };
State state = WAIT;
unsigned long started = 0;
bool armed = false;
const int button = 2, red = 8, green = 9, piezo = 10;

void setup() {
  pinMode(button, INPUT_PULLUP);
  pinMode(red, OUTPUT);
  pinMode(green, OUTPUT);
  pinMode(piezo, OUTPUT);
}
void loop() {
  unsigned long now = millis();
  if (state == WAIT) {
    if (digitalRead(button) == HIGH) armed = true;
    if (digitalRead(button) == LOW && armed) {
      state = WALK;
      started = now;
      armed = false;
    }
  } else if (state == WALK && now - started >= 4000) {
    state = WARNING;
    started = now;
  } else if (state == WARNING && now - started >= 3000) {
    state = WAIT;
  }
  bool flash = ((now - started) / 250) % 2 == 0;
  digitalWrite(red, state == WAIT ? HIGH : LOW);
  digitalWrite(green,
    (state == WALK || (state == WARNING && flash)) ? HIGH : LOW);
  bool beep = (state == WALK && (now - started) % 1000 < 100)
    || (state == WARNING && flash);
  if (beep) tone(piezo, 900);
  else noTone(piezo);
}

Predict, test and record

Write your name and date on the printed page. Run every test, note the actual result, and retest after one change.

Try this inputExpected resultActual result / retest
Start without pressingRed Wait light; no sound________________
Press once and time the full cycleGreen Walk about 4 s, flashing Warning about 3 s, then red Wait________________
Hold the button through the cycleReturns to Wait without starting again; release then press for a new cycle________________

If it does not work

  • Starts without a press? Disconnect power; teacher checks button legs and D2-to-GND wiring.
  • LED stays dark? Power off; check polarity, pin and series resistor.
  • Piezo silent? Confirm passive piezo and D10; do not substitute a high-current speaker.

Make one change

Change Walk to 6000 ms, predict the new total cycle time, and measure three cycles.

We changed __________. We predicted __________. Our test showed __________.

Teacher pacing: Use a 45-minute coding session: 5 minutes to predict, 10 to model a first working response, 20 for paired building, 7 for tests and 3 to save and explain. Continue in another meeting if setup or debugging takes longer; do not rush hardware checks.

Grade 5 support: Start with the working reference version, then explain each condition or state. Keep an input/expected/actual test log and change only one variable at a time.

Teacher learning resources

Preview resources before class. Follow this page’s specified reference build; another tutorial may use different hardware.

Print support: The lesson’s Print button includes this guide, recipe and test table.

For teachers

Engineering standards

This shows how the lesson connects to the national NGSS engineering standards and what student work you can collect.

Assessed

3-5-ETS1-1

Teams define who needs the accessible crosswalk prototype and set measurable performance, safety, material, and time limits.

What students show: User-centered problem statement with criteria and constraints.
Practiced

3-5-ETS1-2

Teams compare at least two circuit, code, or enclosure ideas against the success criteria.

What students show: Labeled system diagrams and a recorded design choice.
Assessed

3-5-ETS1-3

Teams run a repeatable test—run identical request cycles and measure timing, clarity, and user interpretation—then change one variable and retest.

What students show: Test table, code or build revision, and evidence-based explanation.

Materials

  • Cardboard, paper, craft sticks, tape, reusable building pieces, and student-proposed materials
  • Project platform: Arduino + laser cutter
  • Breadboard, paper-circuit supplies, or low-voltage power when needed
  • request button input component or student-designed substitute
  • timed LEDs and buzzer output component or student-designed substitute
  • LEDs, resistors, jumper wires, copper tape, switches, and clips as needed
  • Laser Cutting materials for an optional case, sign, mount, or model
  • Computer with approved coding or simulation tools when needed
  • Planning sheet, ruler, and test-data table

Teacher preparation

  1. Build and test one possible reference solution without making it the required design.
  2. Prepare a basic-materials table plus optional electronics and fabrication stations.
  3. If coding is used, prepare a starter option for state sequence with nonblocking timing; students may propose another workable control method.
  4. Prepare optional fabrication templates and a file rule beginning G5_10.
  5. Mark adult approval points before power-on and machine fabrication.

Step by step

How to teach it

Day 1 · 0–20

Meet the user and define success

  1. Introduce the application: Help different pedestrians understand when a model crosswalk is ready, changing, or stopped.
  2. Identify the user, need, criteria, and constraints.
  3. Draw a system map with input → code → output.
Day 1 · 20–60

Build a first solution

  1. Choose basic, electronic, and fabricated materials based on the team's idea.
  2. Build with power disconnected whenever electronics are used.
  3. Complete an adult check, then troubleshoot one connection or physical feature at a time.
Day 2 · 0–30

Create the behavior

  1. Create the first working control using state sequence with nonblocking timing.
  2. Predict what one rule, connection, or code change will do before testing it.
  3. Make the system understandable with labels, diagrams, comments, or coding blocks.
Day 2 · 30–60

Test and improve

  1. Use the same procedure each time: run identical request cycles and measure timing, clarity, and user interpretation.
  2. Record at least three results.
  3. Change one code, circuit, or physical-design variable and retest.
Day 3

Fabricate and present

  1. Design a laser cutting part that protects, mounts, or explains the electronics.
  2. Adult reviews and operates fabrication equipment where required.
  3. Connect the finished system and demonstrate how the evidence improved it.

Assessment

  • Problem statement names a real user and measurable need.
  • Circuit matches the team diagram and uses components safely.
  • Program connects the intended input to the intended output.
  • Test conditions remain consistent and include recorded evidence.
  • Revision addresses a documented failure or user need.

Supports & extensions

  • Use color-coded wires and a photograph of each breadboard step.
  • Provide block coding or partially completed code with one change at a time.
  • Assign roles: circuit builder, coder, tester, and recorder.
  • Let students explain findings orally or with labeled diagrams.
  • Extension: add a second sensor, output, data display, or operating mode.

Safety & responsible use

  • Use only teacher-approved low-voltage classroom electronics; never connect projects to wall current.
  • Disconnect power before changing wires or components.
  • Use the correct resistor with every standard LED and stop immediately if a part becomes hot.
  • An adult handles soldering, laser cutting, printer setup, blades, and final power approval.
  • Keep liquids away from boards unless a sealed, teacher-approved sensor activity specifically requires them.

No-machine alternative

Build with cardboard, paper mechanisms, paper circuits, or a free on-screen simulator. Students may invent another safe way to model the same function, then compare ideas, test one variable, collect evidence, and revise.

Printable student design brief

The challenge

Create a working accessible crosswalk prototype for this need: Help different pedestrians understand when a model crosswalk is ready, changing, or stopped.

Success criteria

  • Sequence has clear wait, walk, and warning states
  • Uses more than color alone
  • Completes repeated cycles consistently

Constraints

  • Educational model—not traffic equipment
  • Sound stays at a teacher-approved level
  • Adult fabricates the intersection base

Engineer’s notes

Our user needs…
The input tells the system…
Our code decides…
The output responds by…
Our test data showed…
We improved… because…