59
Project #15 April 4 th , 2011 Submitted To: Dr. Michael McGuire Group Members: Paul Green Phil Laird Kenyon Campbell Thayer Fox e lektroshok A Dynamically Adjustable Bicycle Suspension

A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

Project #15

April 4th, 2011

Submitted To:

Dr. Michael McGuire

Group Members:

Paul Green

Phil Laird

Kenyon Campbell

Thayer Fox

elektroshok

A Dynamically Adjustable Bicycle Suspension

Page 2: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

2

Table of Contents________________________________________________ List of Figures ........................................................................................................................ 4 Project Summary ................................................................................................................... 5

1. Introduction.................................................................................................................... 6 1.1. Project Motivation .................................................................................................................... 6 1.2. Project Description ................................................................................................................... 6 1.3. Scope of Report ........................................................................................................................ 7

2. Design ......................................................................................................................... 7 2.1. System Design .......................................................................................................................... 7 2.2. Electrical Design ....................................................................................................................... 7 2.3. Mechanical Design .................................................................................................................... 8

3. Development .............................................................................................................. 9 3.1. Component Selection ............................................................................................................... 9

3.1.1. Micro-controller .................................................................................................................. 9 3.1.2. Graphical Display ............................................................................................................... 10 3.1.3. Suspension Fork ................................................................................................................. 10 3.1.4. Impact Accelerometer ....................................................................................................... 10 3.1.5. Inclinometer ...................................................................................................................... 11 3.1.6. Linear Position Sensor ........................................................................................................ 11 3.1.7. Actuators ........................................................................................................................... 12 3.1.8. Motor Drivers .................................................................................................................... 12 3.1.9. Power Supply ..................................................................................................................... 13 3.1.10. User Interface Navigation .................................................................................................. 13

3.2. Circuit Design Process ............................................................................................................. 13 3.2.1. Breadboard Prototype ....................................................................................................... 13 3.2.2. Final Design ....................................................................................................................... 14

3.3. Firmware ................................................................................................................................ 15 3.3.1. Analog to Digital Converters .............................................................................................. 15 3.3.2. Output Capture Module ..................................................................................................... 16 3.3.3. Parallel Master Port (PMP) ................................................................................................. 16 3.3.4. General Purpose Input Output (GPIO) ................................................................................ 16

3.4. Graphical User Interface (GUI) ................................................................................................ 17 3.5. Terrain Adaptions Algorithms ................................................................................................. 18

3.5.1. Incline Conversion ............................................................................................................. 18 3.5.2. Incline Detection................................................................................................................ 18 3.5.3. Impact Detection ............................................................................................................... 19 3.5.4. Repetitive Impact Detection .............................................................................................. 19

3.6. Mechanical Systems ............................................................................................................... 20 3.6.1. Upper Motor Mount .......................................................................................................... 20 3.6.2. Upper Motor Shaft............................................................................................................. 20 3.6.3. Lower Motor Mount .......................................................................................................... 20 3.6.4. Impact Sensor Mounting .................................................................................................... 21 3.6.5. Linear Position Sensor Mount ............................................................................................ 21 3.6.6. Control Module Mount ...................................................................................................... 21 3.6.7. Inclinometer Mounting ...................................................................................................... 22

3.7. Power Supply.......................................................................................................................... 22

Page 3: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

3

4. Challenges and Resolutions ....................................................................................... 23 4.1. PIC Input Voltages .................................................................................................................. 23 4.2. Inclinometer ........................................................................................................................... 23 4.3. Broken Linear Position Sensor................................................................................................. 23 4.4. Rebound Motor Axel Alignment .............................................................................................. 24

5. Future Development ................................................................................................. 25 5.1. Alternative Damping Methods ................................................................................................ 25 5.2. Power Supply Improvements .................................................................................................. 25 5.3. Data Logging Feature .............................................................................................................. 25 5.4. Position Sensor Alternatives ................................................................................................... 26

6. Marketing and Costs ................................................................................................. 26

7. Conclusion ................................................................................................................ 27

References .......................................................................................................................... 28 Appendices ......................................................................................................................... 29 Appendix A - Full Schematic ................................................................................................................... i Appendix B - Midterm Report #1 ........................................................................................................... ii Appendix C - Midterm Report #2 .......................................................................................................... iii

Page 4: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

4

List of Figures

Figure 1: Complete Electrical System ....................................................................................................... 8

Figure 2: Mechanical Design .................................................................................................................... 9

Figure 3: Top View of Completed Board ................................................................................................. 14

Figure 4: Bottom View of Completed Board ........................................................................................... 15

Figure 5: User Interface Home Screen.................................................................................................... 17

Figure 6: Impact Capture of Impact Accelerometer ................................................................................ 19

Figure 7: Upper Motor Mount ............................................................................................................... 20

Figure 8: Upper Motor, Mount and Shaft ............................................................................................... 20

Figure 9: Lower Motor Mount ............................................................................................................... 20

Figure 10: Impact Accelerometer ........................................................................................................... 21

Figure 11: Linear Position Sensor Housing.............................................................................................. 21

Figure 12: Control Module Mount ......................................................................................................... 21

Figure 13: Inclinometer Mounting ......................................................................................................... 22

Figure 14: Rebound Motor Shaft Revision .............................................................................................. 24

Page 5: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

5

Project Summary

This project consists of the design and construction of a prototype bicycle suspension fork with

dynamic, electronically controlled, compression and rebound damping. It is intended to meet the

requirements of the University of Victoria's CENG/ELEC 499 Design Project.

The elektroshok system uses acceleration, inclination, and position data to make adjustments to

the shock dampers. Impact and Incline data is gathered by two analog MEMS inertial sensors

while position is taken from magneto-potentiometer mounted to the shock piston. An on-board

microprocessor quantizes the data and adjusts the shock characteristics based upon the control

algorithms. Two high-speed stepper motors allow interaction with the shocks rebound and

compression damper valves. Additionally, the user can select different riding scenarios for

shock performance on a user friendly interface. This is done via a handlebar mounted display

and joystick.

Page 6: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

6

1. Introduction

1.1. Project Motivation

Mountain bikers are constantly demanding more and more control over all aspects of their

riding experience. The ability to tune the damping properties of a mountain bike suspension

fork has long been a desirable feature. Currently there are many suspension forks on the

market that have manually adjustable rebound and compression damping controls. These

manual controls require that the user set up the forks beforehand and have limited to no

ability for on-the-go adjustments. This system often puts the rider at a disadvantage when

they encounter an unexpected change in terrain. A single static setting for rebound and

compression damping is simply not enough to ensure the optimum performance of the fork

for the duration of a ride. The elektroshok improves the performance of a traditional

suspension system by changing the damping properties based on sensor input and user

defined settings.

1.2. Project Description

The elektroshok uses real time data collected from two MEMS multi-axis accelerometers

along with position a sensor placed on the fork. This data is processed by a microprocessor

and adjustments are made to the shocks by two separately controlled stepper motors. This

system allows the bicycle's suspension to adapt to changes in the terrain and provide the

rider with the optimal shock properties at any given time.

There are three main features of the system. The first is the ability to select from 5 different

pre-set riding scenarios. These riding scenarios can be customized by the user and are

representative of the most common riding styles encountered when mountain biking. The

second feature is an automatic lock-out of the suspension travel when a sustained incline is

encountered. The suspension will remain locked out until a large impact is detected, at this

time the suspension will return to the chosen riding scenario. The final feature is a stiffening

of the shock when repetitive impacts are detected.

The system employs a five-way joystick for user input and an OLED screen to display menu

options. A user setup feature helps further optimize shock performance by determining the

best air pressure for the fork based on rider weight and desired riding style.

Page 7: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

7

1.3. Scope of Report

This report chronicles the development and execution of the electroshock dynamic bicycle

suspension system, from the conceptual stage through to construction of the functional

prototype. The motivation behind this project is discussed followed by the engineering

decision and justifications made. The overall system design description is followed by a

detailed description of the development that when into each design aspect. Some key

challenges encountered during the project evolution, as well as the solutions implemented

are explained. An overview of the completed prototype and the results we obtained are

discussed. Finally we make recommendations on aspects of the design that require further

development as well as improvements that we think are necessary to produce a truly

marketable product.

2. Design

2.1. System Design

In order to best characterize the terrain encountered on a bike three separate sensor

elements needed to be implemented. These include the detection of any sudden impact felt

by the fork, the position of the fork within its stroke, and the inclination of the bike. By

analyzing these three aspects of the riding experience, changes can be made to the shock

properties to ensure an optimum setting for the current terrain. Rider input and customizable

settings are also taken into account to ensure that every rider can receive the best shock

performance for how they want to ride.

2.2. Electrical Design

The electronics of the elektroshok suspension fork are comprised of three distinct systems:

control module, sensors and valve actuation. The control module mounted to the bicycle

handlebar stem contains the microprocessor, the OLED graphical display, a navigation

joystick, and power supply. Valve actuation is accomplished by two stepper motors mounted

externally on the rebound and compression dampers. The sensors used are; a linear position

sensor fixed to the back of the right fork tube, an impact sensing accelerometer attached at

the front hub, and a 2 axis accelerometer acting as an inclinometer mounted inside the

control module housing.

Page 8: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

8

Figure 1: Complete Electrical System

2.3. Mechanical Design

The dynamic environment encountered while mountain biking was cause for a significant

amount of mechanical design and construction in this project. The elektroshok system must

be protected from impacts as well as be small enough to not impede the rider in any way.

The adjustments to the fork are made by utilizing external adjustment knobs already in place

on most suspension fork designs. By attaching stepper motors to these external adjustment

knobs, we are able to change the damper port dimensions inside both the compression and

rebound dampers. Motor mounts were designed to couple the motors to the fork on both the

top and bottom of the right fork stanchion. Additionally sensor and control unit mounts were

required in order to securely mount the accelerometer, position sensor and control module.

Page 9: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

9

Figure 2: Mechanical Design

3. Development

3.1. Component Selection

Component selection is arguably the most important step in the production of a working

system. In the early phases of the elektroshok project conception, the group set a goal of

having a fully realised prototype of the system, well beyond a proof of concept. In order to

achieve this goal, it was imperative to start hardware development as early as possible.

Component specifications and major part selections were decided months in advance. The

following section highlights the reasoning and tests performed behind the selection of the

major components found in the elektroshok system.

3.1.1. Micro-controller

For the processor unit we selected the Microchip PIC24HJ128GP504. This 16bit

controller was chosen for its large array of digital and analog I/O, its support of PMP

(Parallel Master Port) protocol, low power usage, and large memory. The processor is

the heart of the system and is responsible for reading the analog sensors input,

processing the data, and controlling the position of the stepper motors.

Page 10: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

10

3.1.2. Graphical Display

The goals of the user interface were ease of navigation and a modern attractive feel. We

wanted to avoid typical monochrome character displays even though they would have

significantly simplified the development of the GUI. A backlight colour LCD was also

considered but proved to have unacceptably high power consumption. The display that

was ultimately chosen was a 128x128 colour OLED. The OLED screen was chosen for

its ease if viewing in sunlight and its low power usage as compared to a back-light LCD.

The OLED is a fairly new technology and there were few suppliers of this product. We

were able to locate a suitable display module from wide.kh in China. The display module

came with an integrated display controller that supported PMP and had built in power

supply components.

3.1.3. Suspension Fork

A suitable suspension fork was an important part of the overall system design. A fork

with external adjustments of both compression and rebound damping was needed.

There are many suitable forks currently available however we chose the Rock Shox

Recon 351. The Recon 351 has 130mm of travel and is considered to be a good all-

around performance mountain bike shock. Our sponsor, Rider’s Cycles, had this shock

in stock and was willing to give it to us for much less then retail value.

3.1.4. Impact Accelerometer

Before selecting an accelerometer suitable for the impact sensor, research was

performed to determine typical loads experienced by a mountain bike. Basic kinematic

calculations and timeframe analysis of riders on an extreme course were used to obtain

some estimates on typical forces. We were able to calculate momentary impact

acceleration values in the 10s of g’s given a nominal value of deflection by the tire and

wheel. We concluded that a device capable of measuring up to 30G’s would be sufficient

for the purposes of this system.

This large range in acceleration readings ruled out the use of prefabricated digital

modules sold by companies like Spark Fun and Robot Shop. After reading over many

data sheets; the Analogue Devices ADXL278 dual axis model was selected because of

its suitable range of +/-35G’s.

Page 11: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

11

3.1.5. Inclinometer

As will be discussed in section 4.2, this device was not in the original iteration of our

system. We determined that adding an accelerometer dedicated to measuring the

inclination would ensure better reliability and a more accurate reading. Since we had

already made the decision to use an analogue sensor for the impact accelerometer, it

was a straight forward choice to purchase a similar sensor with a more sensitive

accelerometer from the same family. The ADXL203CE was selected because it shared

the same device package and footprint as the ADXL278, and was available with a

measurement range of +/-1.7G’s. This provided the system with excellent resolution for

measuring static acceleration of 1G. This device also included a user tuneable low pass

filter that could be used to suppress the higher frequencies not useful when determining

inclination.

3.1.6. Linear Position Sensor

An equally important sensor for the acquisition of data is the position sensor. We needed

to be able to determine the position of the shock travel at all times. This sensor could not

interfere with the stroke of the shock or add any friction to the suspension. We explored

the possibility of measuring the change in air pressure within the fork chamber and

deriving position from this information. This looked to be a promising solution until we

were unable to locate a suitable transducer. The complexity of the mechanical design

and inaccuracies caused by the adiabatic process resulted in the need for an expensive

custom transducer. Infrared encoders, laser proximity detectors and string

potentiometers were also considered but eventually abandoned because of their

vulnerability.

In the end, an elegant solution was realized with the discovery of the MP1 from Spectra

Symbol. The MP1 is a weather sealed, magnetically controlled, linear potentiometer that

does not require any direct contact with the wiper arm. It uses built-in magnetics coupled

to an external magnet. The magnet is passed over the outer surface at distance above

the surface and a voltage is given to indicate the position of the magnet along the length

of the sensor.(remove this sentence) The MP1-L-0150-103-5%-RH was chosen because

of the 150mm range, 10kΩ resistance, and desired connector. [1]

Page 12: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

12

3.1.7. Actuators

We knew that our project would present a challenging and somewhat contradictory

requirement for its actuation system. We needed relatively fast rotation, significant

torque output, and accurate position control all in an easy to mount and lightweight

package. Four possible actuator technologies were considered. Servo motors were

initially considered but did not provide adequate torque at the desired speed. A DC

motor would give the speed we needed but would also need to be coupled with a

reduction gear box in order to achieve adequate torque. Also, an integrated encoder

would be needed in order to keep track of the motors position. A hybrid system was also

considered which utilized a solenoid for the compression damper and a rotational

actuator for the rebound damper. In the end, stepper motors were found to provide the

best balance of speed, torque, controllability, and ease of mounting.

We determined the torque required to smoothly rotate the two dampers before

purchasing appropriate motors. After taking several measurements we determined that

an average of 75 mN-m was needed in order to rotate the adjustment knobs. As a

margin of safety we chose motors with at least 1.5 times the measured torque. The Soyo

12V 0.4A 36oz-in unipolar stepper motor provided ample torque in a small form factor. A

unipolar motor was chosen because the torque is held constant over a wider speed

range then a bipolar motor.

3.1.8. Motor Drivers

Since stepper motors were chosen as the desired actuators the task turned to specifying

an appropriate control device. Initially, a basic H-Bridge device was considered with the

microcontroller supplying the output waveform. In an effort to relieve some of the

processing overhead and reduce the number of pins required for motor control, we

looked to devices with a built in stepper translator and integrated output drivers. The

Allegro Microsystems A3967 micro-stepping motor driver satisfied these requirements.

The A3967 is able to provide on-demand bidirectional speed control of a stepper motor

while only using 3 logic inputs per device. Another feature that we found very useful was

the ability to tune the reference voltage via a potentiometer. This allowed us some

control over the motors torque.

Page 13: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

13

3.1.9. Power Supply

The design of our system required 3 separate voltage levels. Most of the integrated

circuits used were 3.3 volt devices while the display and the impact accelerometer

operated at 5 volts. The motors would be run off of the unregulated 12 volts of a battery

pack housed in a water bottle on the bike. In an effort to maximise the time spent on the

key areas of our project it was not reasonable to design and implement a switching

power supply of our own design. Instead we sourced two separate monolithic switching

regulators that offered efficiencies up to 97%. These devices required no other external

components, save for a couple of filter capacitors. They also advertise robust current

protection and no required heat sink.

3.1.10. User Interface Navigation

For user input and navigation we decided to use a 5-way navigation joystick. We found

this to be a very intuitive method for menu navigation and mimics the interface found on

many cell phones. An audible beeper was added to alert the user that a button had been

depressed.

3.2. Circuit Design Process

3.2.1. Breadboard Prototype

After carefully reviewing all of the device data sheets, we were able to make our first

draft of the complete system schematic. There were few circuit design considerations

beyond those contained in the device application notes. There were a few parts that

required calculations for passive components. The inclinometer required some filtering, a

Zener regulated voltage supply was needed for the impact accelerometer and the

stepper motor drivers required several passive components.

We approached the first breadboard prototype in stages. First we ensured that we had

basic functionary of the microcontroller before attempting to implement the display

module and the motor drivers. This development stage gave us the ability to test all of

our systems components on an individual basis before committing the design to our

proto-board and soldered iteration.

Page 14: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

14

3.2.2. Final Design

For the final version of the prototype control module, we chose to build a wire-wrapped

and point to point wired board. The popularity of this technique has dropped in recent

years with the advent of low cost online mail order PCB manufactures. For us, using this

method would not only allow design changes as the system developed, but also provide

a platform for future upgrades. We were also able to transfer components, which were

initially part of the breadboard prototype, directly to the final version. This resulted in less

wasted components and a certainty in the functionality of each component. The final

layout can be seen in Figures 3 and 4.

Figure 3: Top View of Completed Board

Page 15: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

15

Figure 4: Bottom View of Completed Board

3.3. Firmware

The purpose of the firmware in our design is to integrate all the hardware together and use

that information to control the fork. The main goal when writing the firmware was to ensure a

good response time from sensor input to actuation. In order to ensure this constraint was

met, it was important to use the peripherals supplied by the PIC effectively. We wanted to

avoid having tasks consuming excessive CPU cycles. The desire is that the CPU spends

most of its time determining the correct position of the motors based on sensor data and not

on acquiring data and controlling actuation. The firmware functionality is split into three

parts: the enabling and controlling of peripherals, the supply of a user interface, and the

analysis associated with determining the appropriate actuation based on sensor input.

3.3.1. Analog to Digital Converters

The system takes data in from four analogue sensors as discussed in previous

sections. The PIC uses the built-in 10-bit analogue to digital converters to sample the

signals delivered from the sensors. One of the benefits of the selected PIC is that it

supports sampling of each channel simultaneously, as opposed to sequentially. This

ensures that all the data gathered from the sensors is in sync. This way, when any

calculations performed on data from multiple sensors is done; there is no possibility of a

delay in the ADC module causing bad results. The ADC is sampled once every 2

milliseconds, which is small enough to give us the resolution needed to detect impacts

felt by the accelerometer. Each sample is buffered into the PIC’s DMA memory. Upon

receiving 32 samples an interrupt is fired notifying the system that new data is ready and

waiting in the DMA buffer.

Page 16: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

16

3.3.2. Output Capture Module

The output capture module allows the PIC to generate PWM signals on its own. This is

useful because it allows the PIC to send the correct number of pulses to the motor

drivers without having them bit bang the pins themselves. Each motor is associated with

a structure that contains two parameters: the motors current position and its desired

position. A desired position of zero is associated with the motor being turned all the way

closed (clockwise). The constants MAX_REBOUND_STEPS and

MAX_COMPRESSION_STEPS are the maximum steps permitted counter clockwise for

each motor. The system can either increase or decrease the values of the desired

position or set it directly.

When there is a change in the desired position of a motor, the system checks to see if

the current position is above or below the desired position. It then sets the direction pin

to the appropriate value for a clockwise or counter clockwise step. The PIC then

proceeds to enable the particular motors output capture pin. The output capture creates

a rising edge every time a timer, in this case timer2, expires. timer2 is set to expire every

1.4ms (step rate of 700 Hz). This figure was chosen due to the limitations of how fast

the motors can spin. The output capture module creates an interrupt when the timer

expires and the current position is changed towards the desired position. When the

current position is equal to the desired position the output capture module is disabled.

3.3.3. Parallel Master Port (PMP)

The parallel master port offers the PIC the ability to generate the necessary signals for

the 8080-series parallel interface and the 6800-series parallel interface. Since the OLED

supports 8080, we chose to use this interface to communicate with the display. This

simplifies communication to the OLED because no bit banging is required. The PMP is

also useful because it utilizes the PIC’s DMA feature, allowing it to offload even more

processing from the CPU onto other modules.

3.3.4. General Purpose Input Output (GPIO)

GPIO is used to control the buzzer and the 5-button joystick. The buzzer is pulsed for

10ms every time a button is pushed on the joystick. The 5-button joystick is debounced

and always waits for a release. It would be advantageous to allow holding to generate

active input at a specific rate; however we were not able to implement this in the given

time.

Page 17: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

17

3.4. Graphical User Interface (GUI)

The decision to use a full colour graphical display meant that we were presented with

limitless creative possibilities for designing our own user interface. After developing some

familiarity controlling the OLED the first task was to create a text library. Unlike a character

display, the OLED did not come with any sort of built-in functions. Therefore, all of the

graphics used were made through discrete pixel manipulations. This was not a technically

challenging task but proved to be a time consuming process.

Ultimately our goal for this interface was to give the user the ability to customize the riding

experience to their personal taste. To this end we would need an intuitive menu system with

easy to interpret iconic graphics. Equally important the GUI had to be visually appealing.

All of the text, graphics and icons were drawn pixel by pixel in Microsoft Paint. We then

converted the 24 bit colour pallet to a 16bit value and converted the image into HEX

values. The contrasting colour pallet of light blue black text and yellow highlighting was easy

to read in most lighting conditions. We added a 3D effect by shading the buttons which

greatly improved the aesthetics.

The home screen is divided into two sections. Three buttons across the top allow the user to

access the rider setup mode, the system status mode and the power off button. The five

lower buttons give the user the ability to select the default riding mode.

Figure 5: User Interface Home Screen

Page 18: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

18

3.5. Terrain Adaptions Algorithms

Once data is taken into the PIC from the sensors, some analysis needs to be done in order

to determine the correct action to take. Samples of the sensor inputs are stored in the DMA

buffer and an interrupt is raised approximately every 64 ms. When this interrupt is raised,

the information is transferred to new buffers and examined for useful information.

3.5.1. Incline Conversion

The dual axis accelerometer responsible for incline detection returns two voltages that

indicate the X and Y axis acceleration components. By taking the difference between

these values, the angle of the accelerometer can be determined. This conversion was

done using a lookup table technique. Tests were performed ahead of time and the

voltage readings corresponding to +90 degrees, 0 degrees, and -90 degrees were

measured. The values in between these ranges were interpolated and verified with

further testing. Once the angle values and corresponding voltage difference was known,

a lookup table was generated.

The positive or negative slope of the terrain can be obtained by examining which axis

component has a larger value. In our case, when X was larger than the Y component we

were on a positive slope and when Y was greater than X we were on a negative slope.

The signs of each sample are stored in a separate buffer that is used for analysis in later

algorithms.

3.5.2. Incline Detection

In our system, the detection of a steady incline grade results in the suspension fork

going into a lockout mode. This is accomplished by examining the average incline of the

bike over a windowed time. If the angle is above a threshold angle for more than 1

second the system triggers is sent into a lockout mode. For demonstration purposes the

threshold was set to 15 degrees. When sent into lockout mode, the current position of

the compression motor is set to %100.

Page 19: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

19

3.5.3. Impact Detection

In order for the system to be taken out of lockout mode and return to normal operation is

for a large impact to take place. An impact detection algorithm is scanning in the main

function that examines the incoming impact accelerometer data. If the system is in

lockout and the algorithm detects an impact that is greater than a threshold value of

approximately 5G’s, the system returns to normal operation. This ensures that the

system will exit lockout mode whenever a large impact is felt.

Figure 6: Impact Capture of Impact Accelerometer

3.5.4. Repetitive Impact Detection

The other algorithm that is running on the system is a scan for repetitive impacts. This is

accomplished in much the same way as the inclination algorithm. The incoming data

from the linear position sensor is analyzed approximately every 125 ms. If within this

time a value for the position sensor is read at a level greater than a threshold value, a

positive value is written into a 32 value circular buffer. This buffer has one value for the

last 32 windows. This corresponds to the last 3 seconds of incoming data.

Once a value is written into this circular buffer, the buffer is scanned for the number of

peaks detected in the last 3 seconds. If 4 or more peaks were detected in that time

period, the compression damping is increased and the rebound compression is

decreased. The increased compression damping helps absorb the repetitive impacts and

the decreased rebound damping lets the fork return to full extension in order to be ready

for the next impact.

Page 20: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

20

3.6. Mechanical Systems

3.6.1. Upper Motor Mount

Compression damping of the shock is altered by a

needle valve in the upper right stanchion tube. Control

for this valve is brought externally to a ½” hex fitting on

the top of the stanchion. The upper motor mount is

comprised of a section of 1” outer diameter mild steel

tubing that attaches to the fork via three set screws.

This was welded to an adapter plate constructed from

1/8” steel plate.

3.6.2. Upper Motor Shaft

The motor shaft needed to be interfaced to the

compression adjuster via an adapter. A one inch length

of ¾” diameter solid aluminum rod was drilled axially to

the diameter of the motor shaft. The hole was then

bored over to ½”, allowing insertion of the shock’s

compression adjuster. Set screws were cross bored

through the rod to securely fix it to the motor shaft and

compression adjuster. The screws are accessible

through the access port previously drilled in the mount

tube, as can be clearly seen in Figure 7.

Figure 8: Upper Motor, Mount and Shaft

3.6.3. Lower Motor Mount

Rebound adjustments are made via a 3mm hex socket on

the bottom of the fork tube. Similar to the compression

adjustment, a stepper motor was mounted on a custom

bracket, shown in Figure 8. This design uses the quick

release of the front wheel as a mounting point. Due to

issues with alignment, slotted holes were used in the

motor screw holes, allowing for fine adjustments.

Figure 7: Upper Motor Mount

Figure 9: Lower Motor Mount

Page 21: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

21

3.6.4. Impact Sensor Mounting

Significant care and planning was taken to ensure effective

and reliable operation of all the sensors in the elektroshok.

The impact accelerometer was securely mounted down low

on the un-sprung body of the fork. Its mount utilizes the

strong mounting ears for the front brake calliper. This

provides a stiff mount, which when coupled with the solid

aluminum mount body, transfers nearly all impacts directly to

the sensor. It was vital not to absorb impact energy into the

mount system itself.

3.6.5. Linear Position Sensor Mount

The linear position sensor was housed inside a clear half tube and mounted to the lower

right fork leg. A wiper containing a rare earth magnet was constructed out of nylon and

attached to a long stainless steel rod. This rod was then attached to the upper part of the

suspension. The rod was held in line by a nylon guide at the top of the housing. This

allowed the wiper to move freely over the potentiometer without binding, as well as

ensuring a constant distance from potentiometer to magnet. Without this distance, a

bump could jar the magnet and cause it the potentiometer to lose position.

Figure 11: Linear Position Sensor Housing

3.6.6. Control Module Mount

The control board, display and associated

hardware were housed inside clear polycarbonate

housing mounted on the stem of the bike. The

connections to the control box, as with all

connections in this project incorporated strain

relief and proper physical shielding.

Figure 10: Impact Accelerometer

Figure 12: Control Module Mount

Page 22: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

22

3.6.7. Inclinometer Mounting

After some research on inclination detection using a dual axis accelerometer we learned

that the accelerometer operates the best when both of its axes are point at a 45 degree

angle to the horizontal. This results in better accuracy and more sensitivity to changes in

pitch. By mounting in this manner we avoid two potential pitfalls: errors resulting from

forward acceleration of the bicycle and variations in the X and Y readings caused by

sudden impacts. Since both X and Y axes have a horizontal and vertical acceleration

component, any major variations will be seen on both readings. The relative different

between the axes will remain the same. This relative difference is what is used to

determine the inclination of the bike. Figure 12 shows the mounting design for the

Inclinometer.

Figure 13: Inclinometer Mounting

3.7. Power Supply

Although not an integral component to our system it was still necessary to assemble a

compact battery pack and enclosure to operate the prototype. We used 8 AA batteries in

series to give a nominal 12 volts. These were housed inside of a water bottle and mounted

on the down tube of the bicycle. In testing, with the display operating at full brightness and

typical actuation frequency, we achieved approximately 25 minutes run time before a

significant reduction in motor torque was noticed. Future development of the power supply

is discussed in section 5.2

Page 23: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

23

4. Challenges and Resolutions

4.1. PIC Input Voltages

One of the first issues we encountered was that we incorrectly assumed that the micro-

controller could handle higher voltages on its analog input for the A/D converter by using an

external reference. Because of this assumption, we were confident that a 5V rated

accelerometer would be compatible with the A/D converter. The converter could only accept

signals up to 3.3V. In order to solve this issue we regulated the 5V supply with a 3.6V Zener

diode and ran the accelerometer at a lower voltage. With this modification we were able to

maintain functionality with only a slight trade in resolution of impact force.

4.2. Inclinometer

During the initial component selection, a single dual axis accelerometer was chosen as an

input device. We incorrectly assumed that we could extract both inclination and impact data

from the same device. During testing, we determined that although we could detect impact

reliably over the expected range, the static values of acceleration were so small that it was

drowned out by the noise threshold. Filtering the signal was considered, however, the better

solution was to include a separate more sensitive accelerometer dedicated to inclination

detection.

4.3. Broken Linear Position Sensor

During the sometimes rigorous testing of the system the wiring leads connected to the linear

position sensor were unfortunately forcefully snagged. This occurred before the wiring

harness had any strain relief. As a result the ground connection on the flexible lead was

severed. A speedy but ultimately successful solution was devised. A 10k ohm resistor was

connected between the potentiometers wiper and ground. The pot was now a voltage divider

biased at ½ the supply voltage. Even though this resulted in a halving of our dynamic range

we were still able to achieve sub millimeter resolution, well within our requirements.

Page 24: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

24

4.4. Rebound Motor Axel Alignment

Major issues with this lower mount were primarily focused in the axial alignment of the motor

to the rebound adjuster. The rebound adjuster has a range of four complete turns, unlike the

¼ turn of the compression damper. With this increase in range, the shaft rotates several

times and therefore needs to be perfectly aligned at every part of a rotation. Also, because

the rebound adjustment is performed by turning a screw in and out via a hex key, the screw

has to be able to slip in and out on the key. Any binding of this slip joint causes the motor to

torque itself out of alignment.

Initially the lower adapter from the stepper motor to the hex key was constructed out of

aluminum. However, it was found that drilling a true hole through the adapter was nearly

impossible with the tools at hand. We could not obtain enough precision with the small 7/64”

drill bit required to create the hole for the hex key. This method was eventually abandoned

and alternatives were examined.

After several other attempts, the final revision of the adapter was constructed out of Delrin, a

material known for its high stiffness and machinability. We were able to successfully drill a

precise hole through the material. The adapter was tested and mounted to the stepper motor

via set screws.

While alignment issues in the adapter were solved, a

small bend in the hex key being used was still causing

a binding action during rotation. This was

compensated for by introducing a small amount of flex

into the motor at the adapter mounting. Closed cell

foam was applied to the motor mount allowing the

motor to flex a small amount. This flex was just enough

to ensure free rotation of the rebound adjustment

assembly. Figure 14 shows this assembly mounted to

the shock, along with the Delrin adapter.

Figure 14: Rebound Motor Shaft Revision

Page 25: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

25

5. Future Development

5.1. Alternative Damping Methods

In order to truly extract the maximum potential of a dynamic suspension system the time it

takes to change the size of the dampers oil orifice must be minimized. We understood early

on that using externally mounted electromechanical actuators would present a bottle neck to

our systems high speed performance. To this end a wholly different approach to valve

actuation needs to be conceived. One technology that merits further research would be using

a ferromagnetic fluid. These remarkable fluids are composed of tiny iron particle suspended

in a synthetic solvent. By passing a pulse controlled current through the fluid its viscosity can

be varied. This would eliminate the need to operate a valve and provide nearly instantaneous

change to the damping characteristics. This technology has already become available in the

automotive industry and could be adapted for off-road bicycles.

A somewhat simpler and potentially less power hungry option would be a custom

bidirectional PWM fluid control valve. These valve are able to proportionally change the

average size of their gate by pulse width modulation. This would make it possible to

internalize the valve actuation and eliminate on of the valves completely as changes could be

made during any point in the compression and rebound cycle. By eliminating external

actuators power savings and weight reduction will be realized.

5.2. Power Supply Improvements

An important system that cannot be overlooked in the development of a consumer electronic

product is the battery system. This aspect was not part of the scope of this first prototype. A

sealed and properly protected lithium polymer battery pack should be constructed. An ideal

location to house the pack would be in the head tube of the suspension fork eliminating the

need for long cables. Further we would recommend exploring the possibility of recovering

energy from the cyclical fork motion or from an off the shelf dyno-hub.

5.3. Data Logging Feature

Additional features were also a heavily discussed topic. With the limited time span of this

project, more complex features were not realistic. One of these features that would be

extremely beneficial is a data logging feature. Being able to record data for an entire ride is

appealing not only as development tool but also as a final feature. Many cyclists record all

kinds of ride information and the data gathered by the elektroshok could be used for many

Page 26: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

26

things. By having the ability to record the inclination of the terrain you ride on you can

determine total vertical gain as well as maximum inclines ridden on. These are both

marketable features for a high end cycling product.

5.4. Position Sensor Alternatives

Although the method we devised for measuring the position of the forks compression was

very reliable and effective; It is too bulky and heavy and would benefit from internalization. A

more effective solution would be using a photo diode proximity detector mounted in the

spring chamber of the fork. This would be far lighter and less prone to failure then an

externally mounted system

6. Marketing and Costs

From the start of the project, we were cognoscente of the potentially high cost required to

produce an electronically controllable suspension fork. This product is aimed at the high end

mountain bike market. In this market, customers are willing to pay for any potential

advantage that a new product can offer. Having the latest and greatest equipment is often

important to the customer and they are willing to pay for the newest technology.

Purely mechanical forks in this market often cost in excess of $1000 already. Adding the

components required in our system would increase that by at least $300 dollars. With the

development of a more integrated valve system, an increase in the cost of the product would

be expected. We estimate that a second prototype with an integrated valve assembly and full

elektroshok system would have a market value of around $1500 to $2000.

Page 27: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

27

7. Conclusion

At the conclusion of the project, the elektroshok was successfully able to accomplish the goals

set by the team. A fully functioning and portable prototype was realized with all of the design

features working. Sustained inclines and repetitive impacts can be detected and the correct

damping adjustments made to the fork. The user interface is easy to use and allows the user to

customize the ride experience to their personal tastes.

The team was very satisfied with the outcome of the project. The project offered each group

member unique challenges and opportunities to learn. We are currently exploring further

development and the feasibility of a second prototype with integrated valve control.

Page 28: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

28

References

[1] MP1 Series Magneto Pot Datasheet, Spectra Symbol.

[2] 128 RGB x 128 Dot Matrix OLED/PLED Segment/Common Driver with Controller Datasheet,

SSD1351, Solomon Systech, 2008.

[3] PIC24HJ32GP302/304, PIC24HJ64GPX02/X04 and PIC24HJ128GPX02/X04 Data Sheet,

Microchip, 2009.

[4] A3967 Microstepping Driver with Translator Datasheet, Allegro Microsystems, 2008.

[5] Fu-Kuang Yeh; Jian-Ji Huang; Chia-Wei Huang; , "Adaptive-sliding mode semi-active bicycle

suspension fork," SICE Annual Conference 2010, Proceedings of , vol., no., pp.3312-3317,

18-21 Aug. 2010

[6] Weichao Sun; Huijun Gao; Kaynak, O.; , "Finite Frequency Control for Vehicle Active

Suspension Systems," Control Systems Technology, IEEE Transactions on , vol.19, no.2,

pp.416-422, March 2011

[7] Maleki, N.; Sedigh, A.K.; Labibi, B.; , "Robust Model Reference Adaptive Control of Active

Suspension System," Control and Automation, 2006. MED '06. 14th Mediterranean

Conference on , vol., no., pp.1-6, 28-30 June 2006

[6] ‘Inclination Sensing Of Moving Vehicle’, Application Note #AN-00MX-01. MEMSIC, 2003.

Page 29: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

29

Appendices

Page 30: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

i

Appendix A Final Circuit Schematic

Page 31: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

1

1

2

2

3

3

4

4

D D

C C

B B

A A

Title

Number RevisionSize

A4

Date: 03/04/2011 Sheet ofFile: C:\Documents and Settings\..\Driver.SchDocDrawn By:

REF1

RC22

/SLEEP3

OUT2B4

LOAD SUPPY25

GND6

GND7

SENSE28

OUT2A9

STEP10

DIR11

MS112 MS2 13LOGIC SUPPLY 14

/ENABLE 15OUT1A 16SENSE1 17

GNG 18GND 19

LOAD SUPPLY1 20OUT1B 21/RESET 22RC1 23PFD 24U3

A3967

GND

GND

3.3V

12V12V

0.75RSENSE1Res1

OUT1BCOMP

OUT2BCOMP

OUT1ACOMPOUT2ACOMPSTEPCOMPDIRCOMP

/SLEEPCOMP

/ENABLECOMP

10K

R5RPot

5.1K

R9Res1

3.3V

10K

R2Res1

3.3V

20K

R7Res1680pF

C5Cap

20K

R8Res1 680pF

C6Cap

0.75RSENSE2Res1

10K

R16

Res1

3.3V

10KR18

Res1

10K

R3Res1

10K

R4Res1

10K

R17Res1

GND

3.3V

REF1

RC22

/SLEEP3

OUT2B4

LOAD SUPPY25

GND6

GND7

SENSE28

OUT2A9

STEP10

DIR11

MS112 MS2 13LOGIC SUPPLY 14

/ENABLE 15OUT1A 16SENSE1 17

GNG 18GND 19

LOAD SUPPLY1 20OUT1B 21/RESET 22RC1 23PFD 24U4

A3967

GND

GND

3.3V

12V12V

0.75RSENSE3Res1

OUT1BREB

OUT2BREB

OUT1AREBOUT2AREBSTEPREBDIRREB

/SLEEPREB

/ENABLEREB

10K

R12RPot

5.1K

R15Res1

3.3V

10K

R6Res1

3.3V

20K

R13Res1680pF

C7Cap

20K

R14Res1 680pF

C8Cap

0.75RSENSE4

Res1

10K

R19

Res1

3.3V

10KR21

Res1

10K

R10Res1

10K

R11Res1

10K

R20Res1

GND

3.3V

BLKGRNREDBLU

P3

Compression

OUT1ACOMPOUT1BCOMPOUT2ACOMPOUT2BCOMP

BLKGRNREDBLU

P4

Rebound

OUT1AREBOUT1BREBOUT2AREBOUT2BREB

PIC501

PIC502COC5

PIC601

PIC602 COC6

PIC701

PIC702COC7

PIC801

PIC802 COC8

PIP301

PIP302

PIP303

PIP304

COP3

PIP401

PIP402

PIP403

PIP404

COP4

PIR201

PIR202COR2

PIR301

PIR302

COR3PIR401

PIR402

COR4

PIR501

PIR502PIR503

COR5

PIR601

PIR602COR6

PIR701

PIR702COR7

PIR801

PIR802COR8

PIR901

PIR902COR9PIR1001

PIR1002

COR10PIR1101

PIR1102

COR11

PIR1201

PIR1202PIR1203

COR12

PIR1301

PIR1302COR13

PIR1401

PIR1402COR14

PIR1501

PIR1502COR15

PIR1601PIR1602COR16

PIR1701

PIR1702

COR17

PIR1801PIR1802

COR18

PIR1901PIR1902COR19

PIR2001

PIR2002

COR20

PIR2101PIR2102

COR21

PIRSENSE101PIRSENSE102

CORSENSE1PIRSENSE201PIRSENSE202

CORSENSE2

PIRSENSE301PIRSENSE302

CORSENSE3

PIRSENSE401PIRSENSE402

CORSENSE4

PIU301

PIU302

PIU303

PIU304

PIU305

PIU306

PIU307

PIU308

PIU309

PIU3010

PIU3011

PIU3012 PIU3013

PIU3014

PIU3015

PIU3016

PIU3017

PIU3018

PIU3019

PIU3020

PIU3021

PIU3022

PIU3023

PIU3024

COU3

PIU401

PIU402

PIU403

PIU404

PIU405

PIU406

PIU407

PIU408

PIU409

PIU4010

PIU4011

PIU4012 PIU4013

PIU4014

PIU4015

PIU4016

PIU4017

PIU4018

PIU4019

PIU4020

PIU4021

PIU4022

PIU4023

PIU4024

COU4

PIR202

PIR301 PIR401PIR502

PIR602

PIR1001 PIR1101

PIR1202

PIR1602 PIR1801

PIR1902 PIR2101

PIU3014

PIU4014

PIU305

PIU3020

PIU405

PIU4020

PIC501 PIC601

PIC701 PIC801

PIR701 PIR801

PIR901

PIR1301 PIR1401

PIR1501

PIR1702

PIR2002

PIRSENSE102 PIRSENSE201

PIRSENSE302 PIRSENSE401

PIU306

PIU307 PIU3018

PIU3019

PIU406

PIU407 PIU4018

PIU4019

PIC502 PIR702 PIU302 PIC602PIR802PIU3023

PIC702 PIR1302 PIU402 PIC802PIR1402PIU4023

PIP301

PIU3016

POOUT1ACOMPPIP302

PIU3021

POOUT1BCOMPPIP303

PIU309

POOUT2ACOMPPIP304

PIU304

POOUT2BCOMP

PIR201

PIU303

PO0SLEEPCOMP

PIR302PIU3024

PIR402

PIU3022PIR501

PIR902

PIR503 PIU301 PIR601

PIU403

PO0SLEEPREB

PIR1002PIU4024 PIR1102

PIU4022PIR1201

PIR1502

PIR1203 PIU401

PIR1601PIU3012

PIR1701

PIU3015

PO0ENABLECOMPPIR1802PIU3013

PIR1901PIU4012

PIR2001

PIU4015

PO0ENABLEREBPIR2102PIU4013

PIRSENSE101 PIU308 PIRSENSE202PIU3017

PIRSENSE301 PIU408 PIRSENSE402PIU4017

PIU3010POSTEPCOMPPIU3011PODIRCOMP

PIP404

PIU404

POOUT2BREB

PIP403

PIU409POOUT2AREBPIU4010POSTEPREBPIU4011PODIRREB

PIP401

PIU4016POOUT1AREB

PIP402

PIU4021POOUT1BREB

PO0ENABLECOMP

PO0ENABLEREB

PO0SLEEPCOMP

PO0SLEEPREB

PODIRCOMP

PODIRREB

POOUT1ACOMP

POOUT1AREB

POOUT1BCOMP

POOUT1BREB

POOUT2ACOMP

POOUT2AREB

POOUT2BCOMP

POOUT2BREB

POSTEPCOMP

POSTEPREB

Page 32: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

1

1

2

2

3

3

4

4

D D

C C

B B

A A

Title

Number RevisionSize

A4

Date: 03/04/2011 Sheet ofFile: C:\Documents and Settings\..\Elektroshok_01.SchDocDrawn By:

AN0/VREF+/CN2/RA0 19

AN1/VREF-/CN3/RA1 20

AN10/RTCC/RP14/CN12/PMWR/RB14 14AN11/RP13/CN13/PMRD/RB13 11AN12/RP12/CN14/PMD0/RB12 10

AN4/C1IN-/RP2/CN6/RB2 23

AN5/C1IN+/RP3/CN7/RB3 24

AN6/RP16/CN8/RC025

AN7/RP17/CN9/RC126

AN8/CVREF/RP18/PMA2/CN10/RC227

AN9/RP15/CN11/PMCS1/RB15 15

AVDD17

AVSS16

INT0/RP7/CN23/PMD5/RB7 43

MCLR18

OSC1/CLKI/CN30/RA2 30

OSC2/CLKO/CN29/RA3 31

PGEC1/AN3/C2IN+/RP1/CN5/RB1 22

PGEC2/RP11/CN15/PMD1/RB11 9

PGEC3/ASCL1/RP6/CN24/PMD6/RB6 42

PGED1/AN2/C2IN-/RP0/CN4/RB0 21

PGED2/EMCD2/RP10/CN16/PMD2/RB10 8

PGED3/ASDA1/RP5/CN27/PMD7/RB5 41

RP19/CN28/PMBE/RC336

RP20/CN25/PMA4/RC437

RP21/CN26/PMA3/RC538

RP22/CN18/PMA1/RC62

RP23/CN17/PMA0/RC73

RP24/CN20/PMA5/RC84

RP25/CN19/PMA6/RC95

SCL1/RP8/CN22/PMD4/RB8 44

SDA1/RP9/CN21/PMD3/RB9 1

SOSCI/RP4/CN1/RB4 33

SOSCO/T1CK/CN0/RA4 34

TCK/PMA7/RA7 13

TDI/PMA9/RA9 35TDO/PMA8/RA8 32

TMS/PMA10/RA10 12

VCAP/VDDCORE7

VDD28

VDD40

VSS6

VSS29

VSS39

U5

PIC24HJ128GP504-I/PT

123

P9

Position Sensor

123

456

P7

Nav Switch

10uF tant

C10Cap

0.1uF

C11Cap

470

R25Res1

10K

R22

Res1S1

SW-PB

GND

3.3V

GND

3.3V

PMPD3PMPD4

PMPD2PMPD1PMPD0PMPRDPMPWRPMCS1

PMPD5PMPD6PMPD7

PMPA0

RESET OLED

Yin

Impact

SELECTLEFT

UPRIGHTDOWN

LEFTSELECTUP

RIGHT

DOWN

Wipper

VCC

GND

10k

R27Res1

10k

R26Res1

10k

R28Res1

10k

R29Res1

10k

R30Res1

MCLR1

VDD2

GND3

PGD4

PGC5

P6

ICD2

3.3V

GND0.1uF

C12Cap

STEPREB

DIRREB

ENABLECOMP

ENABLEREB

3.3V

GND

0.1uF

C9

CapW2

Jumper

10K

R23Res1

W1Jumper

3.3V

Wipper

STEPCOMP

DIRCOMP

SDI

SDOSCK

GND

Vin VoutGND

VR1

R-783.3-0.5

Vin VoutGND

VR2

R-785.0-0.5

Vin VoutGND

VR3

REG12V

3.3V 5V 12V

10uF

C15Cap

10uFC13

Cap10uFC14

Cap

1Battery

Xin

S2Power_Down

10K

R24Res1

3.3V

LS1

Beep!

GND

12345

P10

Accelerometer_Slope

Xin

Yin

ST

3.3V

GND

W3Jumper

PI101

PI102CO1

PIC901 PIC902

COC9

PIC1001

PIC1002COC10

PIC1101

PIC1102COC11

PIC1201

PIC1202COC12

PIC1301

PIC1302

COC13 PIC1401

PIC1402

COC14

PIC1501

PIC1502COC15

PILS101 PILS102

COLS1

PIP601

PIP602

PIP603

PIP604

PIP605

COP6

PIP701

PIP702

PIP703

PIP704

PIP705

PIP706

COP7

PIP901

PIP902

PIP903

COP9

PIP1001

PIP1002

PIP1003

PIP1004

PIP1005

COP10

PIR2201

PIR2202COR22

PIR2301

PIR2302COR23

PIR2401

PIR2402COR24

PIR2501

PIR2502

COR25

PIR2601

PIR2602COR26

PIR2701

PIR2702COR27

PIR2801

PIR2802COR28

PIR2901

PIR2902COR29

PIR3001

PIR3002COR30

PIS101 PIS102

COS1

PIS201

PIS202

COS2

PIU501

PIU502

PIU503

PIU504

PIU505

PIU506

PIU507

PIU508

PIU509

PIU5010

PIU5011

PIU5012

PIU5013

PIU5014

PIU5015

PIU5016

PIU5017

PIU5018 PIU5019

PIU5020

PIU5021

PIU5022

PIU5023

PIU5024

PIU5025

PIU5026

PIU5027

PIU5028

PIU5029

PIU5030

PIU5031

PIU5032

PIU5033

PIU5034

PIU5035

PIU5036

PIU5037

PIU5038

PIU5039

PIU5040

PIU5041

PIU5042

PIU5043

PIU5044

COU5

PIVR101

PIVR102

PIVR103

COVR1

PIVR201

PIVR202

PIVR203

COVR2

PIVR301

PIVR302

PIVR303

COVR3

PIW101

PIW102

COW1

PIW201 PIW202

COW2

PIW301

PIW302

COW3

PIC1102 PIC1201

PIP602

PIP1002

PIR2202 PIR2302PIR2402

PIR2601 PIR2701 PIR2801 PIR2901 PIR3001

PIU5017

PIU5028

PIU5040

PIVR103 PIVR203 PIVR303

PI102

PIC901

PIC1001 PIC1101 PIC1202

PIC1302 PIC1402PIC1501

PILS102

PIP603

PIP701

PIP903

PIP1003

PIS101

PIU506

PIU5016

PIU5029

PIU5039

PIVR102 PIVR202 PIVR302

PI101PIC1301 PIC1401PIC1502 PIVR101 PIVR201 PIVR301

PIC902

PIR2201

PIR2501

PIS102

PIC1002

PIU507 PILS101PIU5020

PIP601

PIR2301PIW101

PIP604PIU5021

PIP605PIU5022 PIW301

PIP702

PIR2702

PIU5037

POSELECTPIP703

PIR2602

PIU5036

POLEFT

PIP704

PIR2802

PIU5038

POUPPIP705

PIR2902

PIU5035

PORIGHTPIP706

PIR3002

PIU5034

PODOWN

PIP901

PIU5024

POWipper

PIP1001

PIU5023

POYin

PIP1004

PIU5025

POXinPIP1005POST

PIR2401PIS201

PIR2502PIW201PIS202

PIU5019

PIU501POPMPD3

PIU502POSDIPIU503POPMPA0PIU504POSDOPIU505POSCK

PIU508POPMPD2PIU509POPMPD1PIU5010POPMPD0PIU5011POPMPRD

PIU5012PORESET OLED

PIU5013

PIU5014POPMPWRPIU5015POPMCS1

PIU5018PIW102

PIU5026POSTEPREBPIU5027POSTEPCOMP

PIU5030PODIRCOMPPIU5031POENABLECOMP

PIU5032POENABLEREB

PIU5033PODIRREBPIU5041POPMPD7PIU5042POPMPD6PIU5043POPMPD5PIU5044POPMPD4

PIW202

PIW302

POImpact

PIP902

PODIRCOMP

PODIRREB

PODOWNPOENABLECOMP

POENABLEREB

POIMPACTPOLEFT

POPMCS1

POPMPA0POPMPD0POPMPD1POPMPD2POPMPD3POPMPD4POPMPD5POPMPD6POPMPD7

POPMPRDPOPMPWR

PORESET OLEDPORIGHT

POSCK

POSDI

POSDO

POSELECT

POST

POSTEPCOMPPOSTEPREB

POUP

POWIPPER

POXIN

POYIN

Page 33: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

1

1

2

2

3

3

4

4

D D

C C

B B

A A

Title

Number RevisionSize

A4

Date: 03/04/2011 Sheet ofFile: C:\Documents and Settings\..\OLED Display.SchDocDrawn By:

RES1

CS2

DC3

RD4

RW5

VSL6

D7

7

D6

8

D5

9

D4

10

D3

11

D2

12

D1

13

D0

14

+5V 15

GND 16

Cannot open file C:\Users\Fox\Desktop\tubez.bmp

*1

OLED

RESET OLED

PMCS1

PMPD

7

PMPD

6

PMPD

5

PMPD

4

PMPD

3

PMPD

2

PMPD

1

PMPD

0

GND

5V

PMPRD

PMPWR

PMPA0

VDD31

Yout 2

COM 3

ST4 NC 5

Xout6

VDD7

VDD2 8U1

ADXL278

0.1F

C1Cap 1K

R1

Res1

D1

D Zener

1234

P1

Header 4

123456789101112

P11

Header 12HGND

ACTIVITY1LED110K

R32Res1

10K

R33Res1

10K

R34Res1

10K

R35Res1

10K

R36Res1

180

R31

Res1

3.3V

0.1uF

C16Cap Pol1

GND/CSSDO

SCK

SDI

CDWD

ST1

DNC 2

COM 3

DNC4 DNC 5

Yout6

Xout7

Vs 8U2

ADXL203

12345

P2

Header 50.5uFC3Cap

0.1uF

C2Cap

0.5uF

C4Cap

GND

PI0101

PI0102

PI0103

PI0104

PI0105

PI0106

PI0107 PI0108 PI0109 PI01010 PI01011 PI01012 PI01013 PI01014

PI01015

PI01016

CO01

PIACTIVITY101PIACTIVITY102

COACTIVITY1

PIC101

PIC102COC1

PIC201

PIC202COC2

PIC301

PIC302COC3

PIC401

PIC402COC4

PIC1601

PIC1602

COC16

PID101 PID102

COD1PIP101

PIP102

PIP103

PIP104

COP1

PIP201

PIP202

PIP203

PIP204

PIP205

COP2

PIP1101

PIP1102

PIP1103

PIP1104

PIP1105

PIP1106

PIP1107

PIP1108

PIP1109

PIP11010

PIP11011

PIP11012

COP11

PIR101 PIR102COR1

PIR3101PIR3102COR31

PIR3201

PIR3202COR32

PIR3301

PIR3302COR33

PIR3401

PIR3402COR34

PIR3501

PIR3502COR35

PIR3601

PIR3602COR36

PIU101

PIU102

PIU103

PIU104 PIU105

PIU106

PIU107

PIU108

COU1

PIU201

PIU202

PIU203

PIU204 PIU205

PIU206

PIU207

PIU208

COU2

PIC1601

PIP1104

PIR3102

PIR3202 PIR3302 PIR3402 PIR3502 PIR3602

PI01015

PI01016

PIC301 PIC401

PIC1602

PIP1103

PIP1106

PIP11012

PI0101PORESET OLED

PI0102POPMCS1

PI0103POPMPA0

PI0104POPMPRD

PI0105POPMPWR

PI0106

PI0107

POPMPD7PI0108

POPMPD6PI0109

POPMPD5PI01010

POPMPD4PI01011

POPMPD3PI01012

POPMPD2PI01013

POPMPD1PI01014

POPMPD0

PIACTIVITY101PIR3101

PIACTIVITY102PIP1101PO0CS

PIC101PID101

PIP103PIU103

PIC102 PID102 PIR101

PIU101

PIU107

PIU108

PIC201 PIP203

PIU203

PIC202PIP202

PIU208

PIC302

PIP201

PIU206

PIC402PIP204PIU207

PIP101

PIU106

PIP102PIR102

PIP104

PIU104

PIP205

PIU201

PIP1102POSDO

PIP1105POSCK

PIP1107

PIR3201

POSDIPIP1108

PIR3601

PIP1109

PIR3501

PIP11010POCDPIP11011

PIR3301 PIR3401

POWD

PIU102

PIU105

PIU202

PIU204 PIU205

PO0CS

POCD

POPMCS1

POPMPA0

POPMPD0POPMPD1POPMPD2POPMPD3POPMPD4POPMPD5POPMPD6POPMPD7

POPMPRD

POPMPWR

PORESET OLED

POSCK

POSDI

POSDO

POWD

Page 34: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

ii

Appendix B Progress Report #2

Page 35: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

UNIVERSITY OF VICTORIA

Department of Electrical and Computer Engineering

ELEC499/CENG499

Progress Report 1

Project -#15:

DABS

(Dynamically Adjustable Bicycle Suspension)

January 21, 2011

Prepared for: Dr. Micheal McGuire

Team Members: Kenyon Campbell [email protected] Thayer Fox [email protected] Paul Green* [email protected] Phil Laird [email protected]

*Primary Contact Member

Page 36: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

Project Summary

Our project will entail the design and construction of a prototype bicycle suspension fork with dynamic electronically controlled compression and rebound damping. The system will feed acceleration data from an analog MEMS inertial sensor along with position data of the shock piston to an on-board microprocessor. This data will be quantized and interpreted by the control algorithm. The system will then execute the needed

adjustments using high speed actuators. Engineering Challenge In mountain biking, customers are constantly demanding more and more control over all aspects of the riding experience. The ability to tune the damping properties of a mountain bike suspension fork has long been a

desirable market feature. Currently there are many suspension forks on the market that have manually adjustable rebound and compression damping controls. These manual controls require that the user set up the forks beforehand and have limited to no ability for on-the-go adjustments. This system often puts the rider at a disadvantage when they encounter an unexpected change in terrain. A single static setting for rebound and compression damping is simply not enough to ensure the optimum performance of the fork for the duration of a ride. The DABS system will improve the performance of a traditional suspension system by changing the damping properties based on sensor input and user defined settings.

Proposed solution The DABS system will use real time data collected from a MEMS multi-axis accelerometer along with position sensors placed on the fork. This data will be processed by a microprocessor and adjustments will be made to the

shocks by two separately controlled stepper motors. This system will allow the bicycle's suspension to remain supple for maximum control on rough terrain while still ensuring the piston travel is tuned properly for large drops. We will begin by implementing three key features for this system:

1. Monitoring the terrain data and adjusting the rebound and compression damping appropriately 2. Detection of a sustained incline will trigger lock-out of the suspension travel

3. Preset modes for expected riding style and terrain The system will employ a five-way joystick for user input and an OLED screen to display menu options. Users will supply rider weight and desired riding style during setup that will further optimize the shock performance. As an option, time permitting, we will also implement a data-logging feature which would provide terrain contour data and other statistical information for the rider.

Scope Our team will focus on building a functional prototype that can be subjected to real world testing and demanding off road riding. We will be modifying a commercially available suspension fork with the necessary sensor and actuators. This will allow us to focus our energy on the electronics and firmware design of the system. Taking

advantage of the iterative design process, we will start developing our systems software on a dedicated development board. We will then build an initial prototype our system that we will use for testing and optimization. A fully functional prototype will be constructed and used for presentation and demos.

Page 37: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

Assigned Tasks

A large part of our project will involve collective effort for many tasks, we have however assigned each member

some key responsibilities. Kenyon will take the lead on the initial physics and be responsible for much of the mechanical design. Phil is responsible for the development of the systems firmware. Thayer will handle parts acquisition, website design, user interface design and mechanical and electrical assembly. Paul will take on the role of project management, electrical design. Project Milestone Timeline

January 21st Progress Report #1 - All major system components specked and ordered - Microprocessor development board up and running

January 28th - Initial circuit design

February 4th - Initial firmware completed (support for all peripherals) - Initial hardware layout and circuit bread-boarding

February 16th Midterm Review Meeting

February 18th

Progress Report #2 - Coding of control algorithms - Mechanical mounting - PCB layouts

February 25th - Completed control algorithm - Ready for testing

March 18th - Working prototype - Completed poster

March 25th Poster Presentation - Completed final report

- Completed website

March 31st Final Report submitted

Project URL submitted

Progress to Date

At the time of this report we have:

• Spec'd and ordered all of our components

• Secured sponsorship and obtained special pricing on a suspension fork

• Initial specification of use cases and input and output of sensors and actuators

• Firmware to initialize peripherals • Started assembly of components for prototyping

Page 38: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

elektroshok 2011

iii

Appendix C Progress Report #3

Page 39: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

UNIVERSITYOFVICTORIA

DepartmentofElectricalandComputerEngineering

ELEC499/CENG499

ProgressReport2

Project#15:

DABS

(DynamicallyAdjustableBicycleSuspension)

February 18, 2011

Prepared for:

Dr. Michael McGuire

Team Members:

Kenyon Campbell [email protected]

Thayer Fox [email protected]

Paul Green* [email protected]

Phil Laird [email protected]

*Primary Contact Member

Page 40: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

2

Summary

This report outlines the progress we have made since our initial progress report. It provides a more

detailed explanation of various sub systems, as well as our design decisions regarding parts choice and

system function. As of now, our team has made good progress, adhering to our anticipated deadlines

and goals. We have received all of our major components and work has begun assembling our first

prototype. Additionally, several tests have been conducted to ensure that critical components, such as

the stepper motor, associated driver chips and the accelerometer will perform as expected in our

finished project. To date, some major hurdles in our project have already been overcome; OLED

initialization and control is operational and mounts for most of the sensors have been devised. This

document will also provide a more detailed task assignment to ensure we continue to meet deadlines.

Page 41: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

3

CircuitDesignandImplementation

The electronics of the DABS system can be broken into four distinct categories: user interface and

processing unit, sensors, actuation system and power supply.

The microprocessor selected for this project is the Microchip PIC24HJ128GP504. This 16‐bit controller

was chosen for its large array of digital and analog I/O, its support of the PMP (Parallel Master Port)

protocol for communication with our display, its low power consumption and its large memory. The

processor is responsible for interpretation of the analog sensors values, evaluation of the data and

control of the variable position actuators.

User interface for DABS consists of a colour organic light emitting diode (OLED) display and a 5‐way

navigation joystick. The OLED screen was chosen for its ease of viewing in sunlight and its low power

usage. Unlike a traditional LCD, no backlight is required for the OLED, resulting in significant power

savings. To allow user control of the system, a five‐way tactile joystick was selected. This joystick is

similar to the style commonly used in many cellphones and other consumer electronics. It has proved to

be a very efficient input device to navigate multi‐layer vertical and horizontal menus.

The DABS system is heavily reliant upon external sensors. One such sensor is the accelerometer. This

device provides the most vital information. Extraction of both vertical and for‐aft acceleration

information was vital, while ignoring the lateral acceleration. This requirement was satisfied by

incorporating a two‐axis accelerometer mounted on the plane of the bike. The ADXL278 dual axis

accelerometer has an operating voltage of 3.6‐5V and detects acceleration of +/‐ 35G on both axis.

The other critical sensor needed for the DABS system was a position sensor. This was needed to

determine the position of the shock at any time. A main design requirement was that there could be no

contact between the upper and lower shock sections. The MP1 Magneto‐Pot from Spectra Symbol is a

contactless linear sensor that satisfies our design requirements. The sensor used in the system has a

150mm operating range, easily accommodating the full range of the shock. The mounting and operation

of the sensor is discussed in the mechanical design section of this report.

Page 42: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

There we

considera

our micro

provide th

second sig

Figure 1: P

As of writ

the device

connectio

motor dri

(Figure 1)

and the st

re few device

ations involve

ocontroller. In

he logic outpu

gnal for moto

Prototyped syst

ing, we have

e datasheets

ons were corr

ver chips. Af

. This prototy

tepper driver

es on the mar

d using a sim

nstead, we de

ut to drive th

or direction. T

tem including a

completed th

and applicati

rect. Schemat

fter reviewing

ype impleme

rs.

rket that were

ple H‐Bridge

ecided on the

e motors coil

This drastical

accelerometer

he first revisio

on notes was

tic symbols w

g our design, w

nted the circ

e suitable cho

driver chip, b

e Allegro Micr

s, while only

ly reduced th

OLED screen, m

on of our syst

s done, to ens

were created f

we construct

uitry for the m

oices for our s

but this would

rosystems A3

needing a ste

he number of

microcontrolle

tem circuit sc

sure the nece

for the OLED

ted our first b

micro‐contro

stepper drive

d have used t

3967SLBTR‐T,

ep input for m

f microcontro

er and stepper d

chematic. Ca

essary suppor

module and

breadboarded

ller, accelero

er control. Ini

too many pin

which would

motor speed

oller pins requ

driver.

refully readin

rt circuitry an

the stepper

d prototype

ometer, the O

4

itial

s on

d

and a

uired.

ng of

nd

OLED

Page 43: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

5

MechanicalDesign

The physical mounting and mechanical design of the DABS system was a problem that the team

encountered early on. The sensor and motors needed to be mounted to the fork cleanly, as well as be

protected from the rough conditions encountered while mountain biking. Secure housings and

mounting brackets were crucial.

The position sensor is housed inside of a protective ⅛” acrylic tube attached to the lower fork leg. A

nylon bushing is located at the top of this tube and guides the magnetic marker along the track of the

position sensor. The magnetic marker is attached to a long stainless steel rod, fixed to the upper fork

crown by a clamp. The accelerometer housing is designed to provide a secure and rigid contact with the

fork. In order to achieve this, the accelerometer is mounted directly on an aluminum plate, bolted to

the disc brake tabs found on the lower left fork leg. The accelerometer and associated wiring will be

placed inside of a plastic housing filled with potting compound.

Selection of the stepper motors were based on measurements taken to determine the torque needed to

rotate the compression and damping knobs on the fork. Several measurements were taken, to

determine approximately 75 mNm are needed to rotate the adjustment knobs axially. Motors were

chosen that would provide at least 1.5 times the needed torque. The Soyo Unipolar Stepper Motors

provide 250 mNm of torque. Unipolar motors were chosen because the torque is held constant over a

wider speed range versus that of a bipolar motor. The compression damping motor shaft will attach to

the adjustment knob via a 12mm hex socket while the rebound damping will adjust via a 3mm hex key.

The motors are held static to the fork via custom brackets mounted to the fork.

Page 44: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

Testing

Testing ha

accelerom

Our meth

measured

values fro

observe t

Figure 2: A

Figure 3: A

gandEva

as played a la

meter output

od of testing

d the correspo

om the device

he accelerom

Accelerometer i

Accelerometer o

aluation

rge part in th

for both posi

is as follows.

onding voltag

e’s datasheet

meter’s transie

in a static posi

output during

he developme

ition and imp

. We position

ges on the X a

of ½ the supp

ent output (F

tion with X and

a sharp impac

ent of DABS.

act measurem

ned the accel

and Y outputs

ply voltage. S

Figure 3).

d Y horizontal.

t.

Currently, we

ments and ar

erometer in t

s (Figure 2). T

Several hard i

e have tested

re satisfied wi

the default or

These matche

impacts were

d the

ith the results

rientation an

ed the given

e simulated, t

6

s.

d

to

Page 45: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

7

Stepper drivers were tested in conjunction with the motors. A function generator was used to simulate

the drive signal that would be provided by the microcontroller. We noted as expected, that the torque

of the motor was inversely proportional to its speed. We were able to adjust the smoothness of the

motor by carefully tuning the voltage on the driver’s REF pin. An optimal balance between torque and

step coarseness can be obtained. We have begun the assembly of an apparatus to support the dampers

and motors for testing. This will make it easier to test the effectiveness of our drive before the final

mounting system has been constructed.

The ADC and the OLED were tested together. Data was read in from the accelerometer, and depending

on the orientation of the accelerometer, the OLED would change its display colour.

Page 46: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

8

ControlAlgorithm

The functionality of the system has been designed to detect and adapt to the most common riding

scenarios. Table 1 classifies each riding scenario by the output from the position and accelerometer

data. Additionally, the table outlines the adjustments to the compression and rebound damping. The

data from each sensor will be monitored and when a specific riding scenario is detected, the system will

enter that mode of operation. This table forms the basis for the functionality of our system and allows

for future expansion as more use cases are defined.

Riding

Scenario

Position

Output

Accelerometer Output Compression

Adjustment

Rebound

Adjustment

Notes

General

Riding

Normal

(sag point)

‐ Any incline

‐ Mostly vertical component

Defined in

Setup

Defined in

Setup

Drop Off Full Extension ‐ Nose down

‐ Close to weightless

Increase w/

time to a limit

Increase w/

time to a limit

Uphill Above Sag

Point

(Close to Full)

‐ Nose up >3%

‐ Increased horizontal

component

Fully Closed

(Locked Out)

N/A

Only want to activate when

a sustained grade is

encountered

Downhill Below Sag

Point

‐ Nose down < ‐3%

‐ Increased horizontal

component

Decrease Increase

Smooth Road Normal

(Very little

variation)

‐ Any incline

‐ Very little variation

Fully Closed

(Locked Out)

N/A

Only want to activate when

a smooth road encountered

for a sustained amount of

time

Bump/Rut Quick Change ‐ Any incline

‐ Large Spikes

Decrease Increase

Washboard Repetitive

Quick Changes

‐ Any incline

‐ Large Spikes

Decrease Decrease Want to detect very rough,

sustained terrain

Table 1: Riding Scenarios

Page 47: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

9

The default mode will be the general riding scenario. Settings for this mode will be defined during

setup. Several predefined settings will be available to allow the user to select the style of ride that they

are expecting. Table 2 outlines the predefined general riding settings that will be available to the user.

There will also be a full manual mode, which will allow the user to precisely define the compression and

rebound damping settings that they want to use for general riding. Specific values will be assigned once

development has completed and testing can be done on the system to determine appropriate values.

Riding Style Compression Damping Rebound Damping

Cross Country High Low

Downhill Low Mid

All Mountain Mid Mid

Road Ride Full (Lockout) Low

Race High Low

Custom User Defined User Defined

Table 2: Default Riding Settings

Page 48: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

System

The firmw

motors an

1. In

p

2. In

m

3. A

sh

4. Lo

5. U

6. H

7. G

Currently

tested. T

function t

mFirmwar

ware is respon

nd updating t

nitialize all the

ort, the SPI b

nitialize the b

motor chips, th

nalyze data in

hock’s compr

og data to the

pdate the GU

andle user in

o back to ste

the accelero

he focus of p

to writing the

re

nsible for coll

he OLED scre

e chip periph

us, and gener

oard, includin

he OLED scre

ncoming from

ression and re

e Micro SD ca

UI.

put via the 5‐

p 3

meter, linear

rogramming t

e control algo

ecting all the

een when nec

erals includin

ral purpose in

ng the accele

en and the SD

m position sen

ebound.

ard.

‐button joyst

r magneto pot

the firmware

rithms and de

Figure 3:

data from th

cessary. The b

ng, the analog

nput/output.

rometer, the

D card.

nsor and both

ick.

t and the OLE

e has now shif

eveloping a u

System Over

he external se

basic flow of

gue to digital

magneto‐pot

h axes of the

ED screen are

fted from get

user interface

rview

ensors, actuat

the program

converter, th

tentiometer,

acceleromete

e functional a

tting the perip

e.

ting the stepp

is as follows:

he parallel ma

the stepper

er and adjust

nd have been

pherals to

10

per

:

aster

the

n

Page 49: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

11

WebsiteWe have completed the backbone of our website and will continue to add more information as progress

on our project is made. The current website can be found at: http://www.engr.uvic.ca/~tfox/.

Our project management and task tracking can be viewed on our team’s code tracking website:

http://code.google.com/p/elektroshok/.

Page 50: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

12

ChallengesandResolutions

Progress has been steady with only a few unexpected challenges arising. The following is a summary of

these and their resolutions:

1. We had incorrectly assumed that the micro‐controller could handle higher voltages on its analog

input for the A/D converter by using an external reference. On this assumption we were

confident that a 5V rated accelerometer would be compatible. In‐order solve this issue we

determined that we could operate the accelerometer at a lower voltage. This would be supplied

by the 5V supply and regulated with a 3.6V Zener diode. This modification in conjunction with

the micro‐controller’s maximum tolerance for the input, as well as knowing that at full

deflection the accelerometer would output Vcc‐.25V, is acceptable as it will be within the micro‐

controller’s range.

2. A small issue which plagued us during the first attempt at programming the micro‐controller

was communication between the microcontroller and the ICD (In Circuit Debugger). We were

unable to connect to the device and were receiving a voltage level error in the debugging

window. The chip also heated up dramatically. Unfortunately, the silkscreen printed on the off‐

brand ICD was not correct. After following the traces on the board, we changed the wiring and

the chip programed successfully.

3. While selecting the stepper motors the feasibility of using gears to achieve the needed torque

was explored. It was determined that we were limited by the space available and that

implementing gears would introduce more problems, as well as create vulnerabilities within the

system. With this knowledge, we decided to go with a slightly larger stepper motor instead of a

geared system. This way the durability of the system is not affected and we are guaranteed to

achieve the torque needed to rotate the adjusters.

4. There were issues in bringing up the OLED. After reading the timing diagrams for writing to the

OLED and configuring the writing algorithms accordingly, data was not being successfully written

to the OLED. Large delays were required for writes to be successful. This issue is currently

under investigation as the large delays are unacceptable in the final system.

Page 51: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

13

TaskAssignment

An updated task chart is attached at the end of this report.

Page 52: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

14

UpdatedProjectMilestoneTimelineJanuary 21st Progress Report #1

‐ All major system components spec’d and ordered

Completed

‐ Microprocessor development board up and running

Completed

January 28th ‐ Initial circuit design Completed Ongoing

February 4th ‐ Initial firmware completed (support for all peripherals)

Completed Ongoing

‐ Initial hardware layout and circuit bread‐boarding

Completed

February 16th Midterm Review Meeting

February 18th Progress Report #2

‐ Coding of control algorithms In Progress

‐ Mechanical mounting Not Yet Competed

‐ PCB layouts In Progress

February 23th Mechanical mounting

February 25th ‐ Completed control algorithm On track

‐ Ready for testing On track

‐ Mechanical mounting of actuators and sensors On track

March 18th ‐ Working prototype

‐ Completed poster

March 25th Poster Presentation

‐ Completed final report

‐ Completed website

March 31st Final Report submitted

Project URL submitted

Page 53: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

ID Task Mode

Resource Names

Task Name Start Finish % Complete

1 Kenyon Riding Scenarios Sat 1/1/11 Thu 3/24/11 62%

2 Kenyon Fork Selection Sat 1/1/11 Wed 1/19/11 100%

3 Kenyon Mechanical Design Mon 2/21/1 Mon 2/21/11 0%

4 Kenyon Accelerometer Fri 1/14/11 Wed 2/2/11 90%

5 Kenyon Position Sensor Fri 1/14/11 Wed 2/2/11 90%

6 Kenyon Compression Motor Fri 1/21/11 Wed 2/9/11 80%

7 Kenyon Rebound Motor Fri 1/21/11 Wed 2/9/11 80%

8 Kenyon Head Unit Housing Sat 2/5/11 Wed 2/23/11 50%

9 Kenyon Acceleration Math Analysis Thu 2/10/11Tue 3/1/11 15%

10 Kenyon Position Math Analysis Thu 2/10/11Tue 3/1/11 75%

11 Collaborative Component Selection Tue 12/14/1 Tue 12/14/10 100%

12 Collaborative Control Algorithm Tue 2/15/11 Tue 3/1/11 40%

13 Thayer Website Construction Fri 1/7/11 Mon 1/10/11 100%

14 Thayer Initial acquisition and function test of ICD2

Mon 1/3/11 Mon 1/3/11 100%

15 Thayer Expense Tracking Sun 1/9/11 Thu 3/24/11 50%

16 Thayer PIC Breakout Board Sun 1/9/11 Mon 1/17/11 100%

17 Thayer Initial SMT Mounting Tue 2/1/11 Mon 2/28/11 100%

18 Thayer Mounting Bracket for Steppers Fri 2/25/11 Fri 2/25/11 0%

19 Thayer Website Content Mon 2/7/11 Tue 3/15/11 25%

20 Thayer User Interface Thu 2/24/11Tue 3/15/11 0%

21 Thayer Spec and Source OLED Mon 1/10/1 Mon 1/24/11 100%

22 Thayer Spec Better Switch Tue 2/1/11 Fri 2/11/11 100%

23 Thayer DigiKey Order #1 Mon 1/17/1 Mon 1/24/11 100%

24 Thayer DigiKey Order #2 Mon 2/21/1 Mon 2/28/11 0%

25 Phil Get NM101 to work Sun 1/2/11 Fri 1/7/11 17%

26 Phil Micro‐Controller Selection Mon 1/10/1 Mon 1/17/11 100%

27 Phil Motor Code Tue 1/11/11 Tue 3/15/11 50%

28 Phil Accelerometer Code Tue 1/11/11 Tue 3/15/11 40%

29 Phil OLED Code Tue 1/11/11 Tue 3/15/11 20%

30 Phil Code to Support Lock Out Mon 2/14/1 Tue 3/15/11 0%

31 Phil Code to Support Large Drop Mon 2/14/1 Tue 3/15/11 0%

32 Phil SD Card Code Fri 12/24/10Fri 2/25/11 0%

33 Phil ADC Code Tue 1/11/11 Tue 3/15/11 0%

34 Phil PMP code Tue 1/11/11 Tue 3/15/11 0%

35 Phil SPI Code Tue 1/11/11 Tue 3/15/11 0%

36 Phil Integrate Microchip Fat 16 library Fri 12/24/10

Fri 2/25/11 0%

37 Phil Code to support 5B joystick Fri 12/24/10Fri 2/25/11 0%

Kenyon

Kenyon

Kenyon

Kenyon

Kenyon

Kenyon

Kenyon

Kenyon

Kenyon

Kenyon

12/14

Collaborative

Thayer

Thayer

Thayer

Thayer

Thayer

Thayer

Thayer

Thayer

Thayer

Thayer

Thayer

Thayer

Phil

Phil

Phil

Phil

Phil

Phil

Phil

Phil

Phil

Phil

Phil

Phil

Phil

T F S S M T W T F S S M T W T F28, '10 Dec 19, '10 Jan 9, '11 Jan 30, '11 Feb 20, '11 Mar 13, '11 Apr 3, '

Task

Split

Milestone

Summary

Project Summary

External Tasks

External Milestone

Inactive Task

Inactive Milestone

Inactive Summary

Manual Task

Duration‐only

Manual Summary Rollup

Manual Summary

Start‐only

Finish‐only

Deadline

Progress

Page 1

Project: ganttDate: Mon 2/21/11

Page 54: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

ID Task Mode

Resource Names

Task Name Start Finish % Complete

38 Phil Code to log accelerometer data onto SD

Tue 1/11/11 Tue 3/15/11 0%

39 Phil Code to log linear pot data onto SD Tue 1/11/11 Tue 3/15/11 0%

40 Phil Code to write a single image to the OLED

Fri 12/24/10

Fri 2/25/11 0%

41 Phil Figure out how to use DAM to go from SD to OLED while using minimum CPU cycles

Tue 1/11/11 Tue 3/15/11 0%

42 Phil Chip support code to generate correct timer values based on clock speed

Tue 1/11/11 Tue 3/15/11 0%

43 Paul Component Selection Mon 1/10/1 Mon 1/17/11 100%

44 Paul Add tasks from Google Docs Mon 1/10/1 Mon 1/17/11 100%

45 Paul Circuit Schematic Wed 1/19/1 Fri 2/18/11 90%

46 Paul PCB Layout Tue 2/1/11 Mon 2/28/11 0%

47 Paul Power Supply Thu 1/13/11Wed 3/2/11 50%

48 Paul Breadboard Circuit Tue 2/1/11 Tue 2/15/11 75%

49 Paul stepper zeroing Tue 2/1/11 Thu 2/3/11 20%

50 Paul Wiring and connectors for position sensor.

Thu 2/3/11 Fri 3/4/11 0%

51 Paul Wiring and connectors for acceleromWed 2/2/11 Fri 2/4/11 0%

52 Paul Breadboard the accelerometer Fri 1/21/11 Wed 2/2/11 100%

53 Paul slider bushing Mon 2/21/1 Thu 2/24/11 0%

54 Paul battery Pack Mon 2/28/1 Tue 3/8/11 0%

55 Paul Test Apparatus for Damper actuatio Mon 2/21/1 Fri 2/25/11 50%

56 Paul SD reader breadboard Mon 2/21/1 Fri 2/25/11 0%

57 Paul Increase Stepper Speed Fri 2/11/11 Mon 2/28/11 50%

58 Paul Proto‐Board Version of System Mon 2/28/1 Wed 3/9/11 0%

Phil

Phil

Phil

Phil

Phil

Paul

Paul

Paul

Paul

Paul

Paul

Paul

Paul

Paul

Paul

Paul

Paul

Paul

Paul

Paul

Paul

T F S S M T W T F S S M T W T F28, '10 Dec 19, '10 Jan 9, '11 Jan 30, '11 Feb 20, '11 Mar 13, '11 Apr 3, '

Task

Split

Milestone

Summary

Project Summary

External Tasks

External Milestone

Inactive Task

Inactive Milestone

Inactive Summary

Manual Task

Duration‐only

Manual Summary Rollup

Manual Summary

Start‐only

Finish‐only

Deadline

Progress

Page 2

Project: ganttDate: Mon 2/21/11

Page 55: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

1

1

2

2

3

3

4

4

D D

C C

B B

A A

Title

Number RevisionSize

A4

Date: 21/02/2011 Sheet ofFile: C:\Documents and Settings\..\Accelerometer_Module.SchDocDrawn By:

VDD31

Yout 2

COM 3

ST4 NC 5

Xout6

VDD7

VDD2 8U1

ADXL278

0.1F

C1Cap

12345

P1

Header 5

1K

R1

Res1

D1

D ZenerPIC101

PIC102COC1 PID101 PID102

COD1PIP101

PIP102

PIP103

PIP104

PIP105

COP1

PIR101 PIR102COR1PIU101

PIU102

PIU103

PIU104 PIU105

PIU106

PIU107

PIU108

COU1

PIC101PID101

PIP103PIU103

PIC102PID102 PIR101

PIU101

PIU107

PIU108 PIP101

PIU106

PIP102PIR102

PIP104

PIU102 PIP105

PIU104 PIU105

Page 56: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

1

1

2

2

3

3

4

4

D D

C C

B B

A A

Title

Number RevisionSize

A4

Date: 21/02/2011 Sheet ofFile: C:\Documents and Settings\..\Driver.SchDocDrawn By:

REF1

RC22

/SLEEP3

OUT2B4

LOAD SUPPY25

GND6

GND7

SENSE28

OUT2A9

STEP10

DIR11

MS112 MS2 13LOGIC SUPPLY 14

/ENABLE 15OUT1A 16SENSE1 17

GNG 18GND 19

LOAD SUPPLY1 20OUT1B 21/RESET 22RC1 23PFD 24U2

A3967

GND

GND

3.3V

12V12V

0.75RSENSE1Res1

OUT1BCOMP

OUT2BCOMP

OUT1ACOMPOUT2ACOMPSTEPCOMPDIRCOMP

/SLEEPCOMP

/ENABLECOMP

10K

R5RPot

5.1K

R9Res1

3.3V

10K

R2Res1

3.3V

20K

R7Res1680pF

C2Cap

20K

R8Res1 680pF

C3Cap

0.75RSENSE2Res1

10K

R16

Res1

3.3V

10KR18

Res1

10K

R3Res1

10K

R4Res1

10K

R17Res1

GND

3.3V

REF1

RC22

/SLEEP3

OUT2B4

LOAD SUPPY25

GND6

GND7

SENSE28

OUT2A9

STEP10

DIR11

MS112 MS2 13LOGIC SUPPLY 14

/ENABLE 15OUT1A 16SENSE1 17

GNG 18GND 19

LOAD SUPPLY1 20OUT1B 21/RESET 22RC1 23PFD 24U3

A3967

GND

GND

3.3V

12V12V

0.75RSENSE3Res1

OUT1BREB

OUT2BREB

OUT1AREBOUT2AREBSTEPREBDIRREB

/SLEEPREB

/ENABLEREB

10K

R12RPot

5.1K

R15Res1

3.3V

10K

R6Res1

3.3V

20K

R13Res1680pF

C4Cap

20K

R14Res1 680pF

C5Cap

0.75RSENSE4

Res1

10K

R19

Res1

3.3V

10KR21

Res1

10K

R10Res1

10K

R11Res1

10K

R20Res1

GND

3.3V

BLKGRNREDBLU

P2

Compression

OUT1ACOMPOUT1BCOMPOUT2ACOMPOUT2BCOMP

BLKGRNREDBLU

P3

Rebound

OUT1AREBOUT1BREBOUT2AREBOUT2BREB

PIC201

PIC202COC2

PIC301

PIC302 COC3

PIC401

PIC402COC4

PIC501

PIC502 COC5

PIP201

PIP202

PIP203

PIP204

COP2

PIP301

PIP302

PIP303

PIP304

COP3

PIR201

PIR202COR2

PIR301

PIR302

COR3PIR401

PIR402

COR4

PIR501

PIR502PIR503

COR5

PIR601

PIR602COR6

PIR701

PIR702COR7

PIR801

PIR802COR8

PIR901

PIR902COR9PIR1001

PIR1002

COR10PIR1101

PIR1102

COR11

PIR1201

PIR1202PIR1203

COR12

PIR1301

PIR1302COR13

PIR1401

PIR1402COR14

PIR1501

PIR1502COR15

PIR1601PIR1602COR16

PIR1701

PIR1702

COR17

PIR1801PIR1802

COR18

PIR1901PIR1902COR19

PIR2001

PIR2002

COR20

PIR2101PIR2102

COR21

PIRSENSE101PIRSENSE102

CORSENSE1PIRSENSE201PIRSENSE202

CORSENSE2

PIRSENSE301PIRSENSE302

CORSENSE3

PIRSENSE401PIRSENSE402

CORSENSE4

PIU201

PIU202

PIU203

PIU204

PIU205

PIU206

PIU207

PIU208

PIU209

PIU2010

PIU2011

PIU2012 PIU2013

PIU2014

PIU2015

PIU2016

PIU2017

PIU2018

PIU2019

PIU2020

PIU2021

PIU2022

PIU2023

PIU2024

COU2

PIU301

PIU302

PIU303

PIU304

PIU305

PIU306

PIU307

PIU308

PIU309

PIU3010

PIU3011

PIU3012 PIU3013

PIU3014

PIU3015

PIU3016

PIU3017

PIU3018

PIU3019

PIU3020

PIU3021

PIU3022

PIU3023

PIU3024

COU3

PIR202

PIR301 PIR401PIR502

PIR602

PIR1001 PIR1101

PIR1202

PIR1602 PIR1801

PIR1902 PIR2101

PIU2014

PIU3014

PIU205

PIU2020

PIU305

PIU3020

PIC201 PIC301

PIC401 PIC501

PIR701 PIR801

PIR901

PIR1301 PIR1401

PIR1501

PIR1702

PIR2002

PIRSENSE102 PIRSENSE201

PIRSENSE302 PIRSENSE401

PIU206

PIU207 PIU2018

PIU2019

PIU306

PIU307 PIU3018

PIU3019

PIC202 PIR702 PIU202 PIC302PIR802PIU2023

PIC402 PIR1302 PIU302 PIC502PIR1402PIU3023

PIP201

PIU2016

POOUT1ACOMPPIP202

PIU2021

POOUT1BCOMPPIP203

PIU209

POOUT2ACOMPPIP204

PIU204

POOUT2BCOMP

PIR201

PIU203

PO0SLEEPCOMP

PIR302PIU2024

PIR402

PIU2022PIR501

PIR902

PIR503 PIU201 PIR601

PIU303

PO0SLEEPREB

PIR1002PIU3024 PIR1102

PIU3022PIR1201

PIR1502

PIR1203 PIU301

PIR1601PIU2012

PIR1701

PIU2015

PO0ENABLECOMPPIR1802PIU2013

PIR1901PIU3012

PIR2001

PIU3015

PO0ENABLEREBPIR2102PIU3013

PIRSENSE101 PIU208 PIRSENSE202PIU2017

PIRSENSE301 PIU308 PIRSENSE402PIU3017

PIU2010POSTEPCOMPPIU2011PODIRCOMP

PIP304

PIU304

POOUT2BREB

PIP303

PIU309POOUT2AREBPIU3010POSTEPREBPIU3011PODIRREB

PIP301

PIU3016POOUT1AREB

PIP302

PIU3021POOUT1BREB

PO0ENABLECOMP

PO0ENABLEREB

PO0SLEEPCOMP

PO0SLEEPREB

PODIRCOMP

PODIRREB

POOUT1ACOMP

POOUT1AREB

POOUT1BCOMP

POOUT1BREB

POOUT2ACOMP

POOUT2AREB

POOUT2BCOMP

POOUT2BREB

POSTEPCOMP

POSTEPREB

Page 57: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

1

1

2

2

3

3

4

4

D D

C C

B B

A A

Title

Number RevisionSize

A4

Date: 21/02/2011 Sheet ofFile: C:\Documents and Settings\..\Elektroshok_01.SchDocDrawn By:

AN0/VREF+/CN2/RA0 19

AN1/VREF-/CN3/RA1 20

AN10/RTCC/RP14/CN12/PMWR/RB14 14AN11/RP13/CN13/PMRD/RB13 11AN12/RP12/CN14/PMD0/RB12 10

AN4/C1IN-/RP2/CN6/RB2 23

AN5/C1IN+/RP3/CN7/RB3 24

AN6/RP16/CN8/RC025

AN7/RP17/CN9/RC126

AN8/CVREF/RP18/PMA2/CN10/RC227

AN9/RP15/CN11/PMCS1/RB15 15

AVDD17

AVSS16

INT0/RP7/CN23/PMD5/RB7 43

MCLR18

OSC1/CLKI/CN30/RA2 30

OSC2/CLKO/CN29/RA3 31

PGEC1/AN3/C2IN+/RP1/CN5/RB1 22

PGEC2/RP11/CN15/PMD1/RB11 9

PGEC3/ASCL1/RP6/CN24/PMD6/RB6 42

PGED1/AN2/C2IN-/RP0/CN4/RB0 21

PGED2/EMCD2/RP10/CN16/PMD2/RB10 8

PGED3/ASDA1/RP5/CN27/PMD7/RB5 41

RP19/CN28/PMBE/RC336

RP20/CN25/PMA4/RC437

RP21/CN26/PMA3/RC538

RP22/CN18/PMA1/RC62

RP23/CN17/PMA0/RC73

RP24/CN20/PMA5/RC84

RP25/CN19/PMA6/RC95

SCL1/RP8/CN22/PMD4/RB8 44

SDA1/RP9/CN21/PMD3/RB9 1

SOSCI/RP4/CN1/RB4 33

SOSCO/T1CK/CN0/RA4 34

TCK/PMA7/RA7 13

TDI/PMA9/RA9 35TDO/PMA8/RA8 32

TMS/PMA10/RA10 12

VCAP/VDDCORE7

VDD28

VDD40

VSS6

VSS29

VSS39

U4

PIC24HJ128GP504-I/PT

123

P7

Position Sensor

123

456

P6

Nav Switch

10uF tant

C7Cap

0.1uF

C8Cap

470

R24Res1

10K

R22

Res1S1

SW-PB

GND

3.3V

GND

3.3V

PMPD3PMPD4

PMPD2PMPD1PMPD0PMPRDPMPWRPMCS1

PMPD5PMPD6PMPD7

PMPA0

RESET OLED

Yin

Xin

SELECTLEFT

UPRIGHTDOWN

LEFTSELECTUP

RIGHT

DOWN

Wipper

VCC

GND

10k

R26Res1

10k

R25Res1

10k

R27Res1

10k

R28Res1

10k

R29Res1

MCLR1

VDD2

GND3

PGD4

PGC5

P5

ICD2

RESET OLEDPMCS1

PMPD7PMPD6PMPD5PMPD4PMPD3PMPD2PMPD1PMPD0

GND

5V

PMPRDPMPWR

PMPA0

3.3V

GND0.1uF

C9Cap

12345

P8

Accelerometer

GND

5V

STYin

Xin

STEPREB

DIRREB

/SLEEPCOMP

/SLEEPREB

3.3V

GND

12345678910111213141516

P4

Header 16

0.1uF

C6

CapW2

Jumper

10K

R23Res1

W1Jumper

3.3V

Wipper

STEPCOMP

DIRCOMP

BATSTAT

SDI

SDOSCK

GND

Vin VoutGND

VR1

R-783.3-0.5

Vin VoutGND

VR2

R-785.0-0.5

Vin VoutGND

VR3

REG12V

3.3V 5V 12V

10uF

C12Cap

10uFC10

Cap10uFC11

Cap

1Battery

PI101

PI102CO1

PIC601 PIC602

COC6

PIC701

PIC702COC7

PIC801

PIC802COC8

PIC901

PIC902COC9

PIC1001

PIC1002

COC10 PIC1101

PIC1102

COC11

PIC1201

PIC1202COC12

PIP401

PIP402

PIP403

PIP404

PIP405

PIP406

PIP407

PIP408

PIP409

PIP4010

PIP4011

PIP4012

PIP4013

PIP4014

PIP4015

PIP4016

COP4

PIP501

PIP502

PIP503

PIP504

PIP505

COP5

PIP601

PIP602

PIP603

PIP604

PIP605

PIP606

COP6

PIP701

PIP702

PIP703

COP7

PIP801

PIP802

PIP803

PIP804

PIP805

COP8

PIR2201

PIR2202COR22

PIR2301

PIR2302COR23

PIR2401

PIR2402

COR24

PIR2501

PIR2502COR25

PIR2601

PIR2602COR26

PIR2701

PIR2702COR27

PIR2801

PIR2802COR28

PIR2901

PIR2902COR29

PIS101 PIS102

COS1

PIU401

PIU402

PIU403

PIU404

PIU405

PIU406

PIU407

PIU408

PIU409

PIU4010

PIU4011

PIU4012

PIU4013

PIU4014

PIU4015

PIU4016

PIU4017

PIU4018 PIU4019

PIU4020

PIU4021

PIU4022

PIU4023

PIU4024

PIU4025

PIU4026

PIU4027

PIU4028

PIU4029

PIU4030

PIU4031

PIU4032

PIU4033

PIU4034

PIU4035

PIU4036

PIU4037

PIU4038

PIU4039

PIU4040

PIU4041

PIU4042

PIU4043

PIU4044

COU4

PIVR101

PIVR102

PIVR103

COVR1

PIVR201

PIVR202

PIVR203

COVR2

PIVR301

PIVR302

PIVR303

COVR3

PIW101

PIW102

COW1

PIW201 PIW202

COW2

PIC802 PIC901

PIP502

PIR2202 PIR2302

PIR2501 PIR2601 PIR2701 PIR2801 PIR2901

PIU4017

PIU4028

PIU4040

PIVR103

PIP4015

PIP802

PIVR203 PIVR303

PI102

PIC601

PIC701 PIC801 PIC902

PIC1002 PIC1102PIC1201

PIP4016

PIP503

PIP601

PIP703

PIP803

PIS101

PIU406

PIU4016

PIU4029

PIU4039

PIVR102 PIVR202 PIVR302

PI101PIC1001 PIC1101PIC1202 PIVR101 PIVR201 PIVR301

PIC602

PIR2201

PIR2401

PIS102

PIC702

PIU407

PIP401

PIU4012

PORESET OLEDPIP402

PIU4015

POPMCS1PIP403

PIU403

POPMPA0PIP404

PIU4011

POPMPRDPIP405

PIU4014

POPMPWRPIP406

PIP407

PIU4041

POPMPD7PIP408

PIU4042

POPMPD6PIP409

PIU4043

POPMPD5PIP4010

PIU4044

POPMPD4PIP4011

PIU401

POPMPD3PIP4012

PIU408

POPMPD2PIP4013

PIU409

POPMPD1PIP4014

PIU4010

POPMPD0PIP501

PIR2301PIW101

PIP504PIU4021

PIP602

PIR2602

PIU4037

POSELECTPIP603

PIR2502

PIU4036

POLEFT

PIP604

PIR2702

PIU4038

POUPPIP605

PIR2802

PIU4035

PORIGHTPIP606

PIR2902

PIU4034

PODOWN

PIP701

PIU4024

POWipper

PIP505

PIP801

PIU4022

POXin

PIP804

PIU4023

POYinPIP805POST

PIR2402PIW201

PIU402POSDI

PIU404POSDOPIU405POSCK

PIU4013

PIU4018PIW102 PIU4019

PIU4020

PIU4025POBATSTATPIU4026PO0SLEEPCOMPPIU4027POSTEPCOMP

PIU4030PODIRCOMPPIU4031PO0SLEEPREB

PIU4032POSTEPREB

PIU4033PODIRREB

PIW202

PIP702

PO0SLEEPCOMP

PO0SLEEPREB

POBATSTAT

PODIRCOMP

PODIRREB

PODOWN

POLEFT

POPMCS1

POPMPA0POPMPD0POPMPD1POPMPD2POPMPD3POPMPD4POPMPD5POPMPD6POPMPD7

POPMPRDPOPMPWR

PORESET OLEDPORIGHT

POSCK

POSDI

POSDO

POSELECT

POST

POSTEPCOMP

POSTEPREB

POUP

POWIPPER

POXIN

POYIN

Page 58: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

1

1

2

2

3

3

4

4

D D

C C

B B

A A

Title

Number RevisionSize

A4

Date: 21/02/2011 Sheet ofFile: C:\Documents and Settings\..\OLED Display.SchDocDrawn By:

RES1

CS2

DC3

RD4

RW5

VSL6

D7

7

D6

8

D5

9

D4

10

D3

11

D2

12

D1

13

D0

14

+5V 15

GND 16

Cannot open file C:\Users\Fox\Desktop\tubez.bmp

*1

OLED

RESET OLED

PMCS1

PMPD

7

PMPD

6

PMPD

5

PMPD

4

PMPD

3

PMPD

2

PMPD

1

PMPD

0

GND

5V

PMPRD

PMPWR

PMPA0

PI0101

PI0102

PI0103

PI0104

PI0105

PI0106

PI0107 PI0108 PI0109 PI01010 PI01011 PI01012 PI01013 PI01014

PI01015

PI01016

CO01

PI01015

PI01016

PI0101PORESET OLED

PI0102POPMCS1

PI0103POPMPA0

PI0104POPMPRD

PI0105POPMPWR

PI0106

PI0107

POPMPD7PI0108

POPMPD6PI0109

POPMPD5PI01010

POPMPD4PI01011

POPMPD3PI01012

POPMPD2PI01013

POPMPD1PI01014

POPMPD0

POPMCS1

POPMPA0

POPMPD0POPMPD1POPMPD2POPMPD3POPMPD4POPMPD5POPMPD6POPMPD7

POPMPRD

POPMPWR

PORESET OLED

Page 59: A Dynamically Adjustable Bicycle Suspensionelec499/2011-spring/group15/docs/Final... · 2011. 4. 6. · Mountain bikers are constantly demanding more and more control over all aspects

1

1

2

2

3

3

4

4

D D

C C

B B

A A

Title

Number RevisionSize

A4

Date: 21/02/2011 Sheet ofFile: C:\Documents and Settings\..\SD Card.SchDocDrawn By:

123456789101112

P9

Header 12HGND

ACTIVITY1LED110K

R31Res1

10K

R32Res1

10K

R33Res1

10K

R34Res1

10K

R35Res1

180

R30

Res1

3.3V

0.1uF

C13Cap Pol1

GND/CSSDO

SCK

SDI

CDWD

PIACTIVITY101PIACTIVITY102

COACTIVITY1

PIC1301PIC1302

COC13

PIP901

PIP902

PIP903

PIP904

PIP905

PIP906

PIP907

PIP908

PIP909

PIP9010

PIP9011

PIP9012

COP9

PIR3001PIR3002COR30

PIR3101

PIR3102COR31

PIR3201

PIR3202COR32

PIR3301

PIR3302COR33

PIR3401

PIR3402COR34

PIR3501

PIR3502COR35

PIC1301

PIP904

PIR3002

PIR3102 PIR3202 PIR3302 PIR3402 PIR3502PIC1302

PIP903

PIP906

PIP9012

PIACTIVITY101PIR3001

PIACTIVITY102PIP901PO0CSPIP902POSDO

PIP905POSCK

PIP907

PIR3101

POSDIPIP908

PIR3501

PIP909

PIR3401

PIP9010POCDPIP9011

PIR3201 PIR3301

POWD

PO0CS

POCD

POSCK

POSDI

POSDO

POWD