Title: Smart and Safe Wheelchair
1Smart and Safe Wheelchair
- Heidi Deyro
- Katerina Royzen
- Brian Sarrazin
- ECE 345 Senior Design Project
- TA Mark Wiegert
- 01 August 2003
2Project Overview
- Goal
- To provide extra safety features that prevent
common wheelchair accidents - Motivation
- To integrate many different aspects of the
Electrical Engineering field such as remote
sensing, signal processing, wireless
communication, controls, machinery and software
programming
3Objectives
- Use sensors to avoid
- -collisions with walls and other fixed
obstacles - -sudden changes in elevation, including holes
and stairs - Construct wireless remote control that allows
safe halt of wheelchair - Use a microprocessor to interpret multiple sensor
inputs, and then output signal to a driving
amplifier that powers the DC motors - Build independent DC motors to control both rear
wheels on the wheelchair, allowing for excellent
maneuverability
4Block Diagram
5System Components
- Wireless Communication
- LINX RF modules
- Microcontroller
- BasicX Processor
- Vehicle, Motor Drivers, Motors
- Remote Sensing
- Ultrasonic
- Optical
- Pressure
- Signal Processing
- Non-inverting amplifier
- Rectifier/Filter
6Original Design
- Construct new vehicle
- Use H-Bridge to drive DC motors
- Voltage regulator to manage all circuit
components - 8 sets of sensors mounted on all corner sides
and underneath
7Hardware Challenges
- Creating input pulse for sensors
- Converting sensor output
- Creating input pulse for Linx transmitter
- Converting Linx output
- Proper orientation of the motors
8Prototype Vehicle
- Vehicle designed and created by John Colwell
(05/22/1997) - Pulse width Modulator (PWM) uses a 4-bit input
allowing 16 different motor speeds - Direction input
- Side-mount dual 10 Volt batteries
- Built in 5 Volt regulator, as well as access to
full 20 volts
9Remote Sensing
- Wave Generator
- 555 Timer IC
- Functionality
- -can be used as a simple clock pulse generator
(up to 1 or 2 MHz) - Ultrasonic Sensors
- Jameco Sensor 136653
- Functionality
- -supply transmitter with 5Vpp 40kHz ( 1kHz)
waveform - -receiver outputs a signal in the range of
30mVpp 300mVpp depending on distance - Advantages
- -Measures and detects distances to moving
objects - -Impervious to target materials, surface and
color
10Sensor Testing
11Signal Processing
- Non-inverting amplifier
- Quad Operational Amplifier(LM3900N)
- Functionality
- - amplifies AC waveform from sensors into
voltage levels that can be easily rectified - Advantages
- -operates w/ single polarity power supply
- -has wider bandwidth
- Rectifier and Filter
- Functionality
- -Converts AC waveform into DC level
12Signal Processing Schematics
R2
D1N4004
V
R1
R1
Vout
Vout
LM3900N
C1
Vin
C1
-
R3
º
Vin
V
Rectifier and Filter
Non-inverting amplifier
13Wireless Communication
- LINX RF modules
- TXM-900-HP-II
- RXM-900-HP-II
- Functionality
- -can transmit data to a distance of 1000 ft.
- -receiver outputs 5V (DC) when there is no data
transmitted and a pulse that can be converted to
lower level DC voltage when a low amplitude, high
frequency pulse is transmitted - Motivation
- -remote override is a practical aspect for
real-life applications - -cost-effective and high performance
implementation with LINX modules
14Transmitter/Receiver Testing
Initial Testing (left) -input is a 1kHz square
wave from function generator
R
RXM-900-HP-II Output (pin 18)
Receiver ckt. Output/input to BasicX(pin 17)
C
Input (from Timer chip) vs. Output (of Receiver
Circuit)
15BASIC Programmable Microcontroller
BasicX-24
Features Package
24-pin DIP module EEPROM
32KBytes RAM
400 Bytes Total I/O lines
16
Analog Inputs
8 ADCs Multitasking OS
Yes Floating Point Math
Yes PC Programming Interface
Serial Serial I/O
Yes On-Chip LEDs
2 Max. Program Length
8000 instructions Program Execution
65,000 Instructions/sec
Speed On-Chip Regulator
Yes and low voltage reset
- Basicx-24 Chip
- BasicX-24 Development board
- Serial Download Cable
16Block Diagram for Microcontroller
Four Inputs from Manual Control inPWML inDIRL inPW
MR inDIRR Eight Inputs form Sensors Front
sensors SFL SFR (side left/right) UFL UFR
(under left/right) Rear sensors SRL SRR
(side left/right) URL URR (under
left/right) One Input from Linux
Chip LinxChip Four Outputs to the
Motors outPWML outDIRL outPWMR outDIRR
BasicX 24 Processor
Inputs from Manual control
4
4
8
Inputs from Sensors
Outputs to the Motors
Input Linux Chip
1
17Explanation of the Code
- Declare all variables
- Main ()
- Intialization input pins using PutPin
- Starts loop
- Get analog inputs from sensors using GetAllADC
- Get digital inputs from manual controller using
GetAllDI - Process manual controller inputs to determine
direction - Process under and side sensors to determine a
critical situation - Determine the outputs of the processor
- Output digital outputs to the output pins, using
PutPin, which are connected to motors - End Loop
- GetAllDI()
- Get and encode digital inputs from controller,
uses GetPin - GetAllADC()
- Get and encode ADC values from sensors and linux
chip, uses GetADC -
18Determining Direction
INPUTS RESULT inPWML inDIRL inPWMR inDIRR L
eft Motor Right Motor Direction 0 0 0 0 off
off stop 0 0 0 1 off off stop 0 1 0 0 off
off stop 0 1 0 1 off off stop 0 0 1
1 off on, forward turning to the left
(forward) 0 1 1 1 off on, forward turning to
the left (forward) 1 1 0 0 on,
forward off turning to the right
(forward) 1 1 0 1 on, forward off turning to
the right (forward) 0 0 1 0 off on,
backward turning to the right (backward) 0 1 1 0
off on, backward turning to the right
(backward) 1 0 0 0 on,
backward off turning to the left
(backward) 1 0 0 1 on, backward off turning to
the left (backward) 1 1 1 0 on,
forward on, backward spinning to the
right 1 0 1 1 on, backward on, forward spinning
to the left 1 1 1 1 on, forward on,
forward forward 1 0 1 0 on, backward on,
backward back
19Critical Situations
For each direction, specific sensors determine
critical situation.
If Forward SFL and/or SFR true UFL and/or
UFR false If Back SRL and/or SRR true URL and/or
URR false If Right forward SFR and/or
SRL true UFR and/or URL false If Left
forward SFL and/or SRR true UFL and/or URR false
If Right backward SRL and/or SFR true URL and/or
UFR false If Left backward SRR and/or
SFL true URR and/or UFL false If Spin to the
Right SFR and/or SRL true UFR and/or
URL false If Spin to the Left SFL and/or
SRR true UFL and/or URR false
front
SFR
SFL
UFR
UFL
left
right
URL
URR
SRL
SRR
20Testing BasicX-24
- 1. If all side sensors are low and all under
sensors high - Outputs to the Motors lt Inputs from Manual
Control - outPWML inPWML
- outDIRL inDIRL
- outPWMR inPWMR
- outDIRR inDIRR
- The outputs are zeros when critical situation is
detected for each direction. - outPWML outDIRL outPWMR outDIRR0
- 3. For each direction, specific sensors
determine critical situation. Check that
changing other sensors does not change the
outputs. (example when the front sensors see an
obstacle, we can not go forward. We should be
able to go backwards! ).
21Final Results
- Fully Functional vehicle
- Multiple analog circuits added to translate
signals - Better understanding of functionality of all key
components
22General Costs
- Numerous resistors, capacitors, chip packages,
wires, boards, additional hardware - Jameco Sensors
- Basic-X Processor
- Linx wireless transmitter/receiver set
- Vehicle
- Total Cost of Parts
-----100
-----56 for 8 transmitter/receiver sets
-----50
-----60
-----free
-----266
23Questions?