Electric Nickel Board

From ESE205 Wiki
Revision as of 19:59, 28 March 2017 by Andrew O'Sullivan (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Overview

The objective of our project is to motorize a Nickel Board powered by a brushless DC motor. The way we will motorize this is by attaching the motor and timing belt to a 4.9" diameter skateboard wheel that will come off of the side of the board. The board will have a remote controller to allow the user to change the speed. This controller will have an RC sensor that will be connected to the Electronic Speed Controller. Power will be provided by a 2S lipo battery which will be rechargeable. The safety measurements will include a temperature sensor placed near the motor to automatically shut off the motor if the temperature rises above 46 degrees Celsius. The temperature corresponds to amount of weight applied which requires more energy from the motor to keep the board moving. The motorized wheel system will be attached to the board through 3D printed parts that we will bolt to a wooden board. This wooden board system will then be clamped onto the board with another, smaller, piece through drilled holes and nuts and bolts. The Arduino board will be mounted to the top of the board, while the lipo battery and ESC will be attached to the bottom of the board.

Team Members

Serra Erdamar, Andrew O'Sullivan (TA)

Objectives

A successful project will be durable and able to withstand the weight of a backpack (with textbooks and a laptop) and be able to accelerate the objects to a reasonable speed. The remote controller should allow the user to accelerate and decelerate from a distance. The battery should be able to sustain the board for a reasonable amount of time and the board should be able to power on and off so that it preserves battery when not in use. The temperature sensor should be able to turn off the board automatically when the maximum temperature is reached.

Challenges

One of the main challenges of this project is staying under the budget. The Electronic Speed Controller and motor set is above $80 alone. This project can be dangerous to test if all of the pieces don't fit together. Therefore, we may have to re-buy certain pieces if the sizes are not right. User safety is the most important component of a project, therefore implementing a proper off switch in case of emergency is a priority. A few of the pieces are going to be 3D printed for ease of attachment and budget, however, the 3D printed material must be strong enough to hold the motor and the wheel together as the system runs. It is also a possibility that the battery won't have sufficient run time for the demo.

Budget

Final Project Budget

  • Motor and Speed Controller Combo and Lipo Battery, at $85.86 at Hobby King (link) (link)
    • The motor and ESC will power the board.
  • Skate Wheel - at $4.99(Blue) on Sparkfun (link)
    • Skate wheels will allow board to move.
  • Skate Wheel Adapter - Shaft Connection, at $8.90 on Pololu (link)
    • This adapter will allow us to attach the wheel to the board.
  • Shaft - Solid, at $2.09 on Sparkfun (link)
    • Used to connect the wheel to the wooden board system.
  • BESTORQ Timing Belt, at $4.67 on Amazon (link)
    • Needed to drive the back pulley and the wheel.
  • Timing Pulley, at $8.95 on Sparkfun (link)
    • Allows the belt to move
  • Timing Pulley, at $14.99 on Amazon (link)
    • Allows motor to drive the belt
  • Bearing Mount x2, at $11.98 on SparkFun [1]
    • Allows for attachment of wheel to 3D printed piece.
  • TOTAL = $142.43

Total Budget

Some items purchased were not used in the final project, those items are included here along with the parts used in the final project.

  • Motor and Speed Controller Combo and Lipo Battery, at $85.86 at Hobby King (link) (link)
    • The motor and ESC will power the board.
  • Skate Wheel - at $4.99(Blue) on Sparkfun (link)
    • Skate wheels will allow board to move.
  • Skate Wheel Adapter - Shaft Connection, at $8.90 on Pololu (link)
    • This adapter will allow us to attach the wheel to the board.
  • Shaft - Solid, at $2.09 on Sparkfun (link)
    • Used to connect the wheel to the wooden board system.
  • BESTORQ Timing Belt, at $4.67 on Amazon (link)
    • Needed to drive the back pulley and the wheel.
  • Timing Pulley, at $8.95 on Sparkfun (link)
    • Allows the belt to move
  • Timing Pulley, at $14.99 on Amazon (link)
    • Allows motor to drive the belt
  • Bearing Mount x2, at $11.98 on SparkFun [2]
    • Allows for attachment of wheel to 3D printed piece.
  • Ball Bearing - Non-Flanged, at $6.61 on Karlsson Robotics (link)
    • The ball bearing will help and allow the front wheel to roll smoothly.
  • Flanged Standoff B, at $8.98 on ServoCity (link)
    • Used to attach front skate wheel.
  • Timing Pulley, at $11.59 on Amazon (link)
    • Allows motor to drive the belt
  • Sparkfun shipping, $6.78
    • Shipping price
  • Potentiometer, at $0.95 on Sparkfun (link)
    • Controlling speed
  • Steel Sheet Metal Screw, Phillips Drive, #6-20 Thread Size, 1" Length, at $2.53 on Amazon (link)
    • For fastening
  • Steel Sheet Metal Screw, Phillips Drive, #6-20 Thread Size, 1/4" Length (Pack of 100), at $2.83 on Amazon (link)
    • For fastening
  • Irwin Tools Hex Shank Drill Bit, 7/64-Inch, at $3.49 on Amazon (link)
    • For drilling holes
  • TOTAL = $191.18

Gantt Chart

Updated gantt chart.PNG

Design and Solutions

Nickelboardfinalmotordesign.png, Board 1.jpg, Board 2.jpg, Board 3.jpg

Communication

One of our main goals for this project was to successfully have an electronic speed controller (ESC) communicate with a motor. For this part we found the TrackStar ROAR approved 1/10th Stock Class Brushless ESC and Motor Combo (21.5T). This set came with five communication wires that we had to implement for proper signals. (can we include link to howto here? Sure, if you wrote a howto for it)

Another main goal for us was to implement safety measures. The first safety measure included a temperature sensor that is programmed to stop sending signals to the motor if it gets too hot. The heat corresponds to the amount of Watts exerted by the motor. Thus, when the temperature reaches above 46 degrees Celsius, the code uploaded to the Arduino will detect this and send the off signal. The second safety measure was an emergency "kill switch." We connected this switch to the battery and the ESC as the mediator in between.

Software (coding)

An important part of the communication between all of the physical pieces is the code written and executed through the Arduino. To begin with, we had to include the Servo library to set up the ESC. We connected the temperature sensor to analog pin A2 to receive the values, 5V for volts, and ground to complete the circuit. Once we read the raw values in, I used a filter and conversion equation to print out the direct Celsius temperature values. This was so we could detect the average temperatures and the maximum temperature.

Assembly

To assemble the project together, we had to 3D print a few pieces. These included the red holders measured out to the size of the motor and the wheel, respectively. These holders have holes implemented so we could bolt the motor and wheel onto the wooden board. Before bolting everything together, we first attached the timing pulleys to the motor's shaft and the wheel's shaft, respectively. Once this system has been assembled, we used another piece of wood as a clamp on the bottom of the board. To do this, we drilled four holes into each board and used nuts and bolts to hold it together.

To find the right timing belt and pulleys, click this link: Finding the Right Size for Timing Pulleys

3dprintedpart2.png

Results

  • Motor: One of our main goals was to get our motor working with changing speed. Therefore, being able to send varying signals to the motor through an ESC and motorizing a wheel was one of the fundamental components. By the demo, we were able to connect the RC sensor and successfully communicate those signals through the ESC and to the motor. Since we needed to attach the temperature sensor to the Arduino board to communicate with the ESC, the RC receiver was also connected to the Arduino board. Although the RC receiver and ESC can directly send signals, we needed to connect the sensor to the Arduino board so the written code could decide whether to send those signals or not. Therefore, we had to map the values inputted and outputted so the minimums and maximums matched. After the demo, we tested the board with an adult, however the motor did not have enough torque to get the system moving.
  • Safety Measurements: Using a temperature sensor as a safety measurement against excess weight on the board was another important component. I was successfully able to write and upload code to the Arduino that turned off the motor at a given temperature. We chose 29 degrees Celsius because it was slightly below body temperature and above room temperature, so a person could cup the temperature sensor in their hands and demonstrate the shut off. Although the concept was executed at the demo, realistically, we would have wanted the temperature sensor detecting the rise in heat either by the motor or by the ESC. This was a decision made due to the fact that the motor and ESC didn't heat up significantly enough with the weights we were putting on to the board. The "kill switch" was able to cut off any energy powering the motor from the battery, therefore it was a successful kill switch that worked in any emergency situation.