11
DIY ROBOTICS DIY ROBOTICS Design | Programming | Implementation Design | Programming | Implementation Eric Cauble - University of South Carolina Eric Cauble - University of South Carolina Upstate - SCSC W314 Upstate - SCSC W314 View slide notes for more info!!!!!

DIY ROBOTICS Design | Programming | Implementation Eric Cauble - University of South Carolina Upstate - SCSC W314 View slide notes for more info!!!!!

Embed Size (px)

Citation preview

Page 1: DIY ROBOTICS Design | Programming | Implementation Eric Cauble - University of South Carolina Upstate - SCSC W314 View slide notes for more info!!!!!

DIY ROBOTICSDIY ROBOTICSDesign | Programming | ImplementationDesign | Programming | Implementation

Eric Cauble - University of South Carolina Upstate - Eric Cauble - University of South Carolina Upstate - SCSC W314SCSC W314

View slide notes for more info!!!!!View slide notes for more info!!!!!

Page 2: DIY ROBOTICS Design | Programming | Implementation Eric Cauble - University of South Carolina Upstate - SCSC W314 View slide notes for more info!!!!!

WHY DIY ROBOTICS?WHY DIY ROBOTICS?Learn concepts outside of CSLearn concepts outside of CS

electrical engineeringelectrical engineering

computer engineeringcomputer engineering

Arduino schematicArduino schematic

PCB tracePCB trace

DIY ArduinoDIY Arduino

Page 3: DIY ROBOTICS Design | Programming | Implementation Eric Cauble - University of South Carolina Upstate - SCSC W314 View slide notes for more info!!!!!

WHY DIY ROBOTICS?WHY DIY ROBOTICS?Good for small-scale prototypingGood for small-scale prototyping

Wealth of information resources:Wealth of information resources:

online communitiesonline communities

open source code/ development open source code/ development environmentsenvironments

open source hardwareopen source hardware

Page 4: DIY ROBOTICS Design | Programming | Implementation Eric Cauble - University of South Carolina Upstate - SCSC W314 View slide notes for more info!!!!!

WHY DIY ROBOTICS?WHY DIY ROBOTICS?Cheap, readily available partsCheap, readily available parts

Page 5: DIY ROBOTICS Design | Programming | Implementation Eric Cauble - University of South Carolina Upstate - SCSC W314 View slide notes for more info!!!!!

Single-board Single-board microcontrollersmicrocontrollers

Arduino (C++) $20- $70Arduino (C++) $20- $70

IOIOIOIO (Android) $50 (Android) $50

FEZ Panda (.NET/C#) $40 FEZ Panda (.NET/C#) $40

Raspberry Pi (Python) $25Raspberry Pi (Python) $25

Page 6: DIY ROBOTICS Design | Programming | Implementation Eric Cauble - University of South Carolina Upstate - SCSC W314 View slide notes for more info!!!!!

HARDWARE - MOTORSHARDWARE - MOTORSServo $15-$25Servo $15-$25

DC Motor $2-$10DC Motor $2-$10

Linear actuator $80-$150 Linear actuator $80-$150

Stepper $15-$25Stepper $15-$25

Page 7: DIY ROBOTICS Design | Programming | Implementation Eric Cauble - University of South Carolina Upstate - SCSC W314 View slide notes for more info!!!!!

HARDWARE - HARDWARE - COMPONENTSCOMPONENTS

GPS Module $75GPS Module $75

Gripper $10Gripper $10

Arm link $30Arm link $30

Gyro module $30Gyro module $30

Accelerometer $30Accelerometer $30

Page 8: DIY ROBOTICS Design | Programming | Implementation Eric Cauble - University of South Carolina Upstate - SCSC W314 View slide notes for more info!!!!!

GET STARTEDGET STARTED

1.1. Create a goal, or task you want your robot to Create a goal, or task you want your robot to completecomplete

2.2. Design your robot/buy parts based on your Design your robot/buy parts based on your goalsgoals

3.3. Assemble it from your parts listAssemble it from your parts list

4.4. Program one step at a timeProgram one step at a time

5.5.Test and improveTest and improve

Page 9: DIY ROBOTICS Design | Programming | Implementation Eric Cauble - University of South Carolina Upstate - SCSC W314 View slide notes for more info!!!!!

Video ExampleVideo Example

http://www.youtube.com/watch?v=nz_tgDD8FNwhttp://www.youtube.com/watch?v=nz_tgDD8FNw

video removed to save file sizevideo removed to save file size

Page 10: DIY ROBOTICS Design | Programming | Implementation Eric Cauble - University of South Carolina Upstate - SCSC W314 View slide notes for more info!!!!!

QuestionsQuestions• Q: Why would a brushed DC motor be a poor choice for an arm joint Q: Why would a brushed DC motor be a poor choice for an arm joint

motor? motor?

•A: Hard to measure rotations, speed controlled by applying A: Hard to measure rotations, speed controlled by applying resistance, need to physically swap positive and negative resistance, need to physically swap positive and negative leads to reverse rotation. leads to reverse rotation. http://electronics.howstuffworks.com/motor2.htmhttp://electronics.howstuffworks.com/motor2.htm

• Q: What are the main differences between a servo motor and a Q: What are the main differences between a servo motor and a stepper motor?stepper motor?

•A: A: ServosServos use use encodersencoders to provide position, speed and to provide position, speed and feedback. Standard servos can only turn between feedback. Standard servos can only turn between 0 to 180 0 to 180 degreesdegrees. .

•A: A: SteppersSteppers divide a full rotation into a number of equal divide a full rotation into a number of equal steps. Use electromagnets around iron gear to turn motor. steps. Use electromagnets around iron gear to turn motor. Steppers can make Steppers can make full rotationsfull rotations..

• Q: Name one Single-board microcontroller.Q: Name one Single-board microcontroller.

•A: Arduino, IOIO, FEZ Panda, Raspberry PI, Make Controller, A: Arduino, IOIO, FEZ Panda, Raspberry PI, Make Controller, PIC Programmer, DWENGO, AVRPIC Programmer, DWENGO, AVR

Page 11: DIY ROBOTICS Design | Programming | Implementation Eric Cauble - University of South Carolina Upstate - SCSC W314 View slide notes for more info!!!!!

Literature ReviewLiterature Review

•http://www.sparkfun.com/categories/31http://http://www.sparkfun.com/categories/31http://torchmate.com/resource_center/torchmate.com/resource_center/stepper_motors_vs._servo_motors_vs._intelligent_mostepper_motors_vs._servo_motors_vs._intelligent_motors_-_the_facts/http://en.wikipedia.org/wiki/tors_-_the_facts/http://en.wikipedia.org/wiki/Stepper_motorhttp://arduino.cc/en/Reference/Stepper_motorhttp://arduino.cc/en/Reference/Servohttp://www.societyofrobots.com/Servohttp://www.societyofrobots.com/step_by_step_robot.shtmlhttp://step_by_step_robot.shtmlhttp://www.societyofrobots.com/www.societyofrobots.com/actuators_servos.shtml#digitalanalogservosactuators_servos.shtml#digitalanalogservoshttp://www.dimensionengineering.com/info/http://www.dimensionengineering.com/info/accelerometersaccelerometers