ROSA'S MEDICATION BOTTLE ASSISTANT
OVERVIEW
This entry-level Engineering Projects lesson introduces 11-12 grade students to the Smart Servo platform through a human-centered design challenge. Students will design and build an assistive device to help Rosa, an elderly woman with arthritis, open her medication bottles. Through this project, students will develop foundational skills in physical computing, mechanical design, and empathetic problem solving while creating a meaningful solution for a real-world challenge.
Client Profile
Name | About Me | My Challenge |
---|---|---|
Rosa, 78 | I've been living with arthritis for over 20 years. I was a high school mathematics teacher before retirement and now enjoy gardening and spending time with my five grandchildren. I live independently in my own home but find certain daily tasks increasingly difficult as my condition progresses. | Opening medication bottles has become extremely painful and difficult. I take five different medications daily and struggle with the childproof caps that require significant grip strength and twisting motion. Sometimes I have to wait for my daughter to visit to help me open new bottles, which affects my medication schedule. |
Learning Objectives
- Design and program a functional assistive device using the Smart Servo platform to address a specific user need
- Apply the human-centered design process to develop an empathetic understanding of client needs and constraints
- Create physical components that effectively interface with the Smart Servo and medication bottles
- Develop and modify basic CircuitPython code to control servo movement and LED feedback
- Evaluate design effectiveness through testing and iteration
MATERIALS NEEDED
- Smart Servo units (1 per 2-3 students)
- Programmer's Kits with USB C Programming Cables
- Designer's Kits
- Assistive input devices (AT Test Buttons, Jelly Bean Buttons)
- LocLine flexible connectors
- 10mm framing pieces
- Bearings (605ZZ)
- M5 screws and fasteners
- M5 bits, taps, and handles
- Allen wrenches and screwdrivers
- LocLine pliers
- 3D printer (Bambu Lab A1 Mini recommended)
- PLA filament
- OnShape CAD (classroom license)
- Assortment of empty medication bottles with various cap styles
- Adhesive mounting materials
1. ENGAGE
How do everyday tasks become significant challenges for people with physical limitations?
Activity: "Opening Experience"
- Challenge Simulation:
- Provide students with medication bottles (empty, cleaned)
- Have students wear arthritis simulation gloves (gardening gloves with popsicle sticks taped to finger joints) or wrap thick tape around knuckles
- Ask students to attempt opening the medication bottles while maintaining the simulation
- Reflection Discussion:
- How did the simulation change your experience with a seemingly simple task?
- What specific movements were most difficult?
- What physical forces (torque, grip, etc.) are required to open medication bottles?
- How might this challenge impact someone's daily life and independence?
- Client Introduction:
- Introduce Rosa's profile and specific challenges
- View short videos of people with arthritis demonstrating similar challenges
- Discuss how assistive technology can help maintain independence
Technical Checkpoints:
- Students can identify the physical requirements for opening medication bottles (grip strength, twisting motion, downward pressure)
- Students understand the mechanical forces involved (torque, friction, compression)
Understanding Checkpoints:
- Students demonstrate empathy for Rosa's situation through discussion
- Students can articulate how this challenge impacts quality of life and independence
Connections
Connections to Standards | Connections to CAD Skills | Connections to HCD Skills |
---|---|---|
STEL 4P: Evaluate technology impacts on individuals, society, and environment | CAD 2.1: Freehand Sketching - Quick visualization of ideas | HCD Skill #1: Problem Framing - Analyzing situations from multiple perspectives |
STEL 7Z: Apply principles of human-centered design | CAD 1.2: Design Process - Following structured design processes | HCD Skill #6: Stakeholder Dialogue - Gathering requirements and incorporating diverse feedback |
2. EXPLORE
How can we leverage the Smart Servo platform to solve physical manipulation challenges?
Activity: "Smart Servo Fundamentals"
- Setup:
- Distribute Smart Servo units and USB cables to each team
- Connect Smart Servos to computers and open the CircuitPython editor
- Demonstrate accessing pre-loaded example code
- Guided Exploration:
- Explore basic LED control using "Blinking Red LED" example
Blinking Red LED Example
import time import board from digitalio import DigitalInOut, Direction, Pull led = DigitalInOut(board.LED) led.direction = Direction.OUTPUT while True: led.value = 1 time.sleep(1) led.value = 0 time.sleep(.5)
- Explore basic servo control using "Servo Range" example
Servo Range Example
import time import board import pwmio import servo pwm = pwmio.PWMOut(board.A2, duty_cycle=2 ** 15, frequency=50) servo = servo.Servo(pwm) while True: servo.angle = 0 time.sleep(1) servo.angle = 90 time.sleep(1) servo.angle = 180 time.sleep(1)
- Experimentation:
- Modify servo angles and timing to observe different movements
- Test servo torque capabilities by attaching small weights or resistance
- Modify the LED patterns to indicate different servo states
- Combine servo movement with button input using the "Toggle Button" example
Toggle Button Example
import time import board from digitalio import DigitalInOut, Direction, Pull button = DigitalInOut(board.D2) button.direction = Direction.INPUT button.pull = Pull.UP import pwmio import servo pwm = pwmio.PWMOut(board.A2, duty_cycle=2 ** 15, frequency=50) servo = servo.Servo(pwm) toggle = 0 while True: if button.value == 0 and toggle == 0: servo.angle = 0 time.sleep(1) toggle = 1 elif button.value == 0 and toggle == 1: servo.angle = 180 time.sleep(1) toggle = 0
Technical Checkpoints:
- Students can successfully modify and upload code to the Smart Servo
- Students can control servo position using different angle values
- Students can implement button input to control servo movement
- Students can modify LED indicators to provide visual feedback
Understanding Checkpoints:
- Students can explain the relationship between code parameters and physical servo movement
- Students understand the torque limitations and movement range of the servo motor
- Students can identify potential approaches for gripping and turning bottle caps
Connections
Connections to Standards | Connections to CAD Skills | Connections to HCD Skills |
---|---|---|
STEL 2W: Select resources balancing availability, cost, desirability, and waste | CAD 3.1: CAD Fundamentals - Interface navigation and basic modeling | HCD Skill #3: Innovation Process - Using divergent thinking for idea generation |
STEL 8I: Use tools, materials, and machines to safely diagnose, adjust, and repair systems | CAD 4.1: Manufacturing Awareness - Understanding processes and limitations | HCD Skill #5: Knowledge Development - Identifying and acquiring necessary expertise |
3. EXPLAIN
What mechanical and programming principles must we understand to create an effective assistive device?
Key Concepts
Mechanical Principles
- Torque and Grip: The Smart Servo can generate up to 13 Kg-cm of torque, which must be effectively transferred to the bottle cap
- Stability: The device must securely hold both the bottle and cap during operation
- Interface Design: Creating connections between the servo, bottle, and activation mechanism
- Adaptability: Designing for various bottle and cap sizes
Programming Concepts
- Input Processing: Reading button states or switch positions
- Servo Control: Setting precise positions and movement patterns
- State Management: Tracking the current state of the system (idle, gripping, turning)
- User Feedback: Using LED colors to indicate system status
Human-Centered Design Principles
- Usability: Designing for Rosa's specific physical limitations
- Safety: Ensuring medication integrity and preventing spillage
- Independence: Creating a solution that Rosa can operate independently
- Aesthetics: Developing a solution that looks appropriate in a home setting
Activity: "Design Parameter Definition"
- Medication Bottle Analysis:
- Measure and document specifications of different medication bottles
- Test and measure torque required to open different cap styles
- Create a requirements specification document
- Client Requirements Workshop:
- Create a detailed list of Rosa's needs and constraints
- Translate needs into technical requirements
- Establish evaluation criteria for successful solutions
- Concept Sketching:
- Generate initial design concepts through quick sketching
- Share and discuss sketches in small groups
- Evaluate concepts against requirements
Understanding Checkpoints:
- Students can explain the mechanical principles necessary for their device
- Students can articulate how programming logic will control their device
- Students have created comprehensive technical requirements
- Students have generated multiple design concepts
Connections to Standards | Connections to CAD Skills | Connections to HCD Skills |
---|---|---|
STEL 1Q: Conduct research for intentional inventions addressing specific needs | CAD 1.3: Documentation - Creating and maintaining technical documentation | HCD Tool 2.1: Criteria & Constraints - Breaking down problems into prioritized components |
STEL 2T: Demonstrate conceptual, graphical, and physical modeling to identify conflicts | CAD 2.2: Technical Drawing - Creating and interpreting orthographic and isometric views | HCD Tool 1.2: Problem Statement - Creating clear, concise descriptions of specific problems |
4. ELABORATE
How can we integrate mechanical design, programming, and human factors to create an effective solution?
Extension Activity: "Design Development and Prototyping"
- CAD Modeling:
- Use OnShape to create 3D models of mechanical components
- Design attachments for the Smart Servo that can grip and turn bottle caps
- Design a stable base that can hold various bottle sizes
- Prepare files for 3D printing
- Programming Development:
- Modify existing code examples to create a custom program
- Implement features like:
- Button control for activating gripping and turning sequences
- LED indicators for system status (ready, gripping, turning, complete)
- Safety features to prevent overtightening or excessive force
Medication Bottle Assistant Code
import time import board from digitalio import DigitalInOut, Direction, Pull import pwmio import servo import neopixel # Setup LED pixel = neopixel.NeoPixel(board.NEOPIXEL, 1) pixel.brightness = 0.3 # Setup button button = DigitalInOut(board.D2) button.direction = Direction.INPUT button.pull = Pull.UP # Setup servo pwm = pwmio.PWMOut(board.A2, duty_cycle=2 ** 15, frequency=50) servo = servo.Servo(pwm) # Initial state state = "ready" servo.angle = 90 # Neutral position while True: # Ready state - waiting for button press if state == "ready": pixel[0] = (0, 0, 255) # Blue for ready if button.value == 0: # Button pressed state = "gripping" time.sleep(0.5) # Debounce # Gripping state - closing grip on bottle cap elif state == "gripping": pixel[0] = (255, 165, 0) # Orange for gripping servo.angle = 45 # Close grip position time.sleep(2) # Time to grip state = "turning" # Turning state - turning the bottle cap elif state == "turning": pixel[0] = (255, 0, 0) # Red for turning # Rotate to open cap for angle in range(45, 180, 5): servo.angle = angle time.sleep(0.1) time.sleep(1) state = "complete" # Complete state - operation finished elif state == "complete": pixel[0] = (0, 255, 0) # Green for complete time.sleep(3) servo.angle = 90 # Return to neutral state = "ready"
- Integration and Assembly:
- 3D print designed components
- Assemble mechanical components with the Smart Servo
- Implement final programming
- Create mounting solution for the entire device
Application Checkpoints:
- Students have created functional CAD models suitable for 3D printing
- Students have developed and tested custom code for their device
- Students have assembled a working prototype
- Students have documented their design process and decisions
Connections to Standards | Connections to CAD Skills | Connections to HCD Skills |
---|---|---|
STEL 7W: Determine best approach by evaluating design purpose | CAD 3.2: Parametric Modeling - Creating feature-based models with relationships | HCD Tool 3.1: Sketching - Collaboratively generating and visualizing diverse solutions |
STEL 7DD: Apply broad making skills to the design process | CAD 4.2: 3D Printing - Preparing models for additive manufacturing | HCD Tool 4.2: Technical Drawings - Creating precise CAD representations |
5. EVALUATE
How well does our solution address Rosa's needs, and what improvements could be made?
Assessment Criteria
Students will evaluate their solutions based on:
- Functionality: Does the device successfully open medication bottles?
- Usability: Can Rosa operate it easily with her arthritis limitations?
- Adaptability: Does it work with different bottle types and sizes?
- Safety: Does it maintain medication integrity and prevent spillage?
- Technical Implementation: Quality of programming, mechanical design, and fabrication
- Documentation: Quality of project documentation and presentation
Activity: "User Testing and Refinement"
- Testing Protocol:
- Develop a testing protocol that simulates Rosa's usage
- Test the device with various bottle types
- Document performance metrics (success rate, time to open, ease of use)
- Peer Evaluation:
- Teams exchange devices and evaluate according to assessment criteria
- Provide constructive feedback on strengths and potential improvements
- Reflection and Refinement:
- Identify areas for improvement based on testing and feedback
- Develop refinement plans for the next iteration
- Create a final presentation documenting the entire process
Assessment Rubric
Criteria | Level 1 | Level 2 | Level 3 | Level 4 |
---|---|---|---|---|
Functionality | Device attempts but fails to open bottles consistently | Device opens some bottles with occasional failures | Device reliably opens most standard medication bottles | Device successfully opens all tested bottle types with high reliability |
Usability | Requires significant dexterity and strength to operate | Can be operated with moderate difficulty by someone with arthritis | Easily operated by someone with moderate arthritis | Thoughtfully designed for minimal effort and maximum accessibility |
Technical Implementation | Basic implementation with minimal custom modifications | Functional implementation with some customization | Well-engineered solution with significant customization | Sophisticated implementation with optimized code and precision mechanical design |
Human-Centered Design | Minimal consideration of Rosa's specific needs | Basic consideration of Rosa's needs but lacks refinement | Clear evidence of designing specifically for Rosa's situation | Exemplary attention to Rosa's specific needs with thoughtful details |
Documentation | Basic documentation of process and outcomes | Complete documentation with adequate detail | Comprehensive documentation with clear presentation of process and decisions | Exceptional documentation that clearly communicates all aspects of the project with professional quality |
Connections
Connections to Standards | Connections to CAD Skills | Connections to HCD Skills |
---|---|---|
STEL 7BB: Implement the best possible design solution | CAD 1.4: Professional Communication - Presenting designs and participating in reviews | HCD Tool 5.1: Experiment - Designing and conducting controlled tests |
STEL 7Y: Optimize designs addressing qualities within criteria and constraints | CAD 4.4: Design for Manufacturing - Optimizing designs for specific processes | HCD Tool 5.2: Results Analysis - Analyzing outcomes and gathering stakeholder feedback |