ebook img

Arduino IV: DIY Robots: 3D Printing, Instrumentation, and Control PDF

243 Pages·2022·8.377 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Arduino IV: DIY Robots: 3D Printing, Instrumentation, and Control

Synthesis Lectures on Digital Circuits & Systems Tyler Kerr · Steven Barrett Arduino IV: DIY Robots 3D Printing, Instrumentation, and Control Synthesis Lectures on Digital Circuits & Systems SeriesEditor MitchellA.Thornton,SouthernMethodistUniversity,Dallas,USA This series includes titles of interest to students, professionals, and researchers in the areaofdesignandanalysisofdigitalcircuitsandsystems.EachLectureisself-contained andfocusesonthebackgroundinformationrequiredtounderstandthesubjectmatterand practical case studies that illustrate applications. The format of a Lecture is structured such that each will be devoted to a specific topic in digital circuits and systems rather thanalargeroverviewofseveraltopicssuchasthatfoundinacomprehensivehandbook. The Lectures cover both well-established areas as well as newly developed or emerging material in digital circuits and systems design and analysis. Tyler Kerr · Steven Barrett Arduino IV: DIY Robots 3D Printing, Instrumentation, and Control TylerKerr StevenBarrett InnovationWyrkshop ElectricalandComputerEngineering UniversityofWyoming UniversityofWyoming Laramie,WY,USA Laramie,WY,USA ISSN1932-3166 ISSN1932-3174 (electronic) SynthesisLecturesonDigitalCircuits&Systems ISBN978-3-031-11208-9 ISBN978-3-031-11209-6 (eBook) https://doi.org/10.1007/978-3-031-11209-6 ©TheEditor(s)(ifapplicable)andTheAuthor(s),underexclusivelicensetoSpringerNatureSwitzerlandAG 2022 Thisworkissubjecttocopyright.AllrightsaresolelyandexclusivelylicensedbythePublisher,whetherthewhole orpartofthematerialisconcerned,specificallytherightsoftranslation,reprinting,reuseofillustrations,recitation, broadcasting,reproductiononmicrofilmsorinanyotherphysicalway,andtransmissionorinformationstorage andretrieval,electronicadaptation,computersoftware,orbysimilarordissimilarmethodologynowknownor hereafterdeveloped. Theuseofgeneraldescriptivenames,registerednames,trademarks,servicemarks,etc.inthispublicationdoes notimply,evenintheabsenceofaspecificstatement,thatsuchnamesareexemptfromtherelevantprotective lawsandregulationsandthereforefreeforgeneraluse. Thepublisher,theauthors,andtheeditorsaresafetoassumethattheadviceandinformationinthisbookare believedtobetrueandaccurateatthedateofpublication.Neitherthepublishernortheauthorsortheeditorsgive awarranty,expressedorimplied,withrespecttothematerialcontainedhereinorforanyerrorsoromissionsthat mayhavebeenmade.Thepublisherremainsneutralwithregardtojurisdictionalclaimsinpublishedmapsand institutionalaffiliations. ThisSpringerimprintispublishedbytheregisteredcompanySpringerNatureSwitzerlandAG Theregisteredcompanyaddressis:Gewerbestrasse11,6330Cham,Switzerland Preface This book is about the Arduino microcontroller and the Arduino concept. The visionary Arduino team of Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino, and DavidMellislaunchedanewinnovationinmicrocontrollerhardwarein2005,theconcept of open-source hardware. Their approach was to openly share details of microcontroller- basedhardwaredesignplatformstostimulatethesharingofideasandpromoteinnovation. This concept has been popular in the software world for many years. This book, Arduino IV: DIY Robotics—3D Printing, Instrumentation, and Control, is about designing and building your own robots. As with other volumes in the series, we begin with a quick overview of the Arduino Integrated Development Environment (IDE) used to write sketches, and the hardware systems aboard the Arduino UNO R3 and the Mega 2560 Rev 3. We then examine concepts common to all robots. Along the way, we explore off-the-shelf robots: wheeled robots, tracked robots, and also a robotic arm. After the Arduino IDE and hardware introduction, we launch into “do it yourself” or DIYconcepts.Westartwithanintroductiontolow-cost3Dprinting.Theseconceptswill allow you to design and print your own custom robot parts and chassis. We then explore concepts to sense a robot’s environment, move the robot about, and provide a portable power source. We conclude with several DIY robot projects. Approach of The Book This book is part of a multi-volume introduction to the Arduino line of processors. The book series also serves as the “fourth edition” of “Arduino Microcontroller Processing for Everyone!” When discussing plans for a fourth edition, Joel Claypool and I (sfb) decided to break the large volume up into a series of smaller volumes to better serve the needs and interests of our readers. I have tried to strike a balance between each volume beingindependentofoneanotherwhileholdingtoaminimumofinformationcontainedin othervolumes.Forcompletenessandindependence,thisvolumecontainstutorialinforma- tion on getting started, microcontroller interface information, and motor control partially contained in some of the other volumes and related works completed for Morgan and v vi Preface Claypool. I have identified via chapter footnotes the source of this information contained elsewhere in the series. This book is divided into a series of chapters to prepare you to design and build your own robots. The concepts provided may be used for small or large robots. As with other volumes in the series, Chap. 1 begins with a quick overview of the Arduino Integrated Development Environment (IDE) used to write sketches. We also explore hardware systems aboard the Arduino UNO R3 and the Mega 2560 Rev 3. The chapter concludes by exploring two off-the-shelf robots: the Dagu Rover 5 robot and the Tinkerkit Braccio Arduino robotic arm. We equip robots with additional features throughout the book. Central to our discussion of robots is the ability to design and fabricate custom robot partsandchassis.Chapter2providesinstructiononlow-cost3Dprintingtoallowcustom fabrication of robot components. In the next three chapters, we learn how to equip robots with sensors, a drive train, and a power source. Chapter 3 explores concepts to allow a robot to sense its location, avoid obstacles, and sense robot status and the surrounding environment. Chapter 4 explores different types of motors and actuators used aboard and to drive robots. We explore in detail how to interface and control high-power motors from a low- power microcontroller. Chapter 5 explores portable power sources for different robots. We explore different battery types and how to size a battery system for a specific application. In Chap. 6, we apply the book concepts to the design of a 4WD robot. Acknowledgments A number of people have made this book possible. I (sfb) would like to thank Massimo Banzi of the Arduino design team for his support and encouragement in writing the first edition of this book: “Arduino Microcontroller: Processing for Everyone!” We would also like to acknowledge Joel Claypool of Morgan and Claypool Publishers. Joel has provided his publishing expertise and support to a number of writing projects. He has providedmanynovicewriterstheopportunitytobecomepublishedauthors.Hisvisionand expertise in the publishing world made this book possible. We would also like to thank Dharaneeswaran Sundaramurthy of Total Service Books Production for his expertise in converting our final draft into a finished product. WealsothankAdafruit,DFRobot,Microchip,Mikroe,SparkFun,andTraxxasandfor their permission to use images of their products and copyrighted material throughout the text series. Several Microchip acknowledgments are in order: Preface vii (cid:129) This book contains copyrighted material of Microchip Technology Incorporated repli- cated with permission. All rights reserved. No further replications may be made without Microchip Technology Inc’s prior written consent. (cid:129) Arduino IV: DIY Robots—3D Printing, Instrumentation, and Control is an indepen- dent publication and is not affiliated with, nor has it been authorized, sponsored, or otherwise approved by Microchip. Laramie, WY, USA Tyler Kerr 2022 Steven Barrett Contents 1 GettingStarted ...................................................... 1 1.1 Overview ...................................................... 1 1.2 The Big Picture ................................................. 2 1.3 Arduino Quickstart .............................................. 4 1.3.1 Quick Start Guide ....................................... 4 1.3.2 Arduino Development Environment Overview ............... 5 1.3.3 Sketchbook Concept ..................................... 5 1.3.4 Arduino Software, Libraries, and Language References ....... 6 1.3.5 Writing an Arduino Sketch ............................... 7 1.4 Application: Robot IR Sensor ..................................... 14 1.5 Application: External Interrupts ................................... 16 1.6 Arduino UNO R3 Processing Board ............................... 19 1.7 Advanced: Arduino UNO R3 Host Processor–The ATmega328 ....... 20 1.7.1 Arduino UNO R3/ATmega328 Hardware Features ........... 20 1.7.2 ATmega328 Memory ..................................... 21 1.7.3 ATmega328 Port System ................................. 23 1.7.4 ATmega328 Internal Systems ............................. 23 1.8 Arduino UNO R3 Open Source Schematic ......................... 27 1.9 Arduino Mega 2560 R3 Processing Board .......................... 27 1.10 Advanced: Arduino Mega 2560 Host Processor–The ATmega2560 .... 29 1.10.1 Arduino Mega 2560 /ATmega2560 Hardware Features ....... 29 1.10.2 ATmega2560 Memory .................................... 31 1.10.3 ATmega2560 Port System ................................ 33 1.10.4 ATmega2560 Internal Systems ............................ 34 1.11 Arduino Mega 2560 Open Source Schematic ....................... 37 1.12 Extending the Hardware Features of the Arduino Platform ........... 37 1.13 Application: Dagu Rover 5 Robot ................................. 38 1.13.1 Requirements ........................................... 39 1.13.2 Circuit Diagram–Arduino UNO ........................... 41 1.13.3 Structure Chart .......................................... 42 ix x Contents 1.13.4 UML Activity Diagrams .................................. 42 1.13.5 Microcontroller Code–Arduino UNO ....................... 42 1.14 Application: Tinkerkit Braccio .................................... 46 1.15 Summary ...................................................... 49 1.16 Problems ....................................................... 49 References ........................................................... 50 2 IntroductiontoLow-Cost3DPrinting .................................. 51 2.1 3D Printing 101 ................................................. 52 2.1.1 Overview ............................................... 52 2.1.2 What Is 3D Printing? .................................... 52 2.1.3 Common Categories of 3D Printing ........................ 53 2.1.4 Best Uses of 3D Printing ................................. 58 2.2 FDM 3D Printing ............................................... 61 2.2.1 How FDM 3D Print Works ............................... 61 2.2.2 Variations in FDM 3D Printer Designs ..................... 62 2.2.3 Common Cartesian Printer Anatomy ....................... 67 2.3 Affordable Desktop 3D Printers ................................... 69 2.3.1 Popular Brands .......................................... 69 2.3.2 Getting Started with Prusa ................................ 70 2.4 Materials ....................................................... 75 2.4.1 PLA (Polylactic Acid) .................................... 75 2.4.2 ABS (Acetonitrile Butadiene Styrene) ...................... 75 2.4.3 PETG (Glycol Modified Polyethylene Terephthalate) ......... 76 2.4.4 TPU (Thermoplastic Polyurethane) ......................... 76 2.4.5 Exotics/Specialty Filaments and Their Applications .......... 76 2.5 Slicers ......................................................... 77 2.5.1 What Are Slicers? ....................................... 77 2.5.2 Where to Find 3D Models ................................ 78 2.5.3 CAD Models ............................................ 78 2.5.4 Popular Slicers and How to Get Started .................... 79 2.5.5 Common Slicer Settings .................................. 82 2.6 Preparing to Print ............................................... 88 2.6.1 General Overview ....................................... 88 2.6.2 Best Practices ........................................... 93 2.7 Application: 3D Printed Arduino Robot ............................ 94 2.7.1 3D Printing the Otto robot.stl Files ........................ 94 2.7.2 Assembling and Coding Otto .............................. 96 2.8 Summary ...................................................... 98 2.9 Problems ....................................................... 99 Additional Resources .................................................. 99

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.