Sunday, June 9, 2019

Door opener

Doors are difficult to operate with the Firefly on the wheelchair, because the attachment makes the wheelchair long.  After fighting with our home's entrance door one time too many, it was time to build an electric door opener.  This door has the peculiarities that:

  1. Gravity pulls it shut.
  2. The door sticks at the frame and does not fall all the way closed after cracking it open.
The opener is activated by Bluetooth remote control buttons.  It uses a motor attached to the wall to pull the door open by winding a string onto a pulley (after unlocking and cracking the door open by hand). Gravity makes the door fall shut when the motor releases the string. 

Main ingredients (total cost under $200) are:
  • Stepper motor (Sparkfun ROB-13656)
    • Pulls the door open
    • Strong enough to open the door, but weak enough to not crush people or things.
  • Motor driver (Sparkfun BOB-13752)
    • Energizes the motor
  • Raspberry Pi Zero W (MicroCenter)
    • Receives Bluetooth signals and generates motion commands
    • Talks to the motor driver via SPI.
  • NEMA23 bracket (Amazon)
    • Attaches the motor to the mounting board
  • Mounting board (Amazon)
    • A spare 10" x 10" wooden pizza peel that was in the drawer
    • Holds circuit boards and motor
  • Pulley / drum (McMaster 6245K214)
    • Let the motor wind string like a winch.
  • String (McMaster 2057T75)
  • D-ring (McMaster 3076T35)
    • Attach string to door
  • Power supply (12 V, 3 A) from unused equipment
  • Jumper wires (MicroCenter)
  • Bluetooth LE buttons
    • Initially "Scosche Tapstick"
    • Later cheap "iTAG" buttons from eBay / China
  • 5 Volt regulator (7805)
    • Power the Raspberry Pi from 12 V supply.
  • Miscellaneous: fasteners, pin headers
Some custom software on the Pi is needed to send appropriate commands to the motor driver, and dispatch these commands after receiving Bluetooth events.  So far, this system has cycled the door 476 times with only the occasional software tweak.