Build and create interactive, sensor-based robots using your LEGO MINDSTORMS EV3 kit About This BookOptimize the use of multiple sensors to build a robot that navigates and interacts with its environmentWork with both the Home Edition and the Educational Edition of the LEGO EV3 Mindstorms kitA practical guide with step-by-step building instructions to help you create your very own robotWho This Book Is ForThis book is for the hobbyists, builders, and programmers who want to build and control their very own robots beyond the capabilities provided with the LEGO EV3 kit. You will need the LEGO MINDSTORMS EV3 kit for this book. The book is compatible with both the Home Edition and the Educational Edition of the kit. You should already have a rudimentary knowledge of general programming concepts and will need to have gone through the basic introductory material provided by the official LEGO EV3 tutorials. What You Will LearnDesign a robot for optimum navigation and place sensors for optimal calibrationControl multiple robots through a master robotDecipher the advanced programs developed by LEGOAccount for weight and balance issues in your designCalibrate the sensors using buttons on the robotUtilize core programming concepts such as loops, case structures, calculations, variables, and arraysEnhance your programs with proportional and PID controlIn DetailThe LEGO EV3 is a programmable LEGO brick that can control different motors and take input from buttons and numerous sensors, allowing you to build sophisticated robots from a simple children's system of modular bricks. You can build your very own robot using your EV3 kit, but there is a lack of good documentation in regards to the details of robot building! This book is a practical guide that will show you how to advance beyond the basic lessons included in your EV3 kit, combine core programming commands, and implement tested design principles when building your own robot. You will become familiar with resources beyond your EV3 kit and enhance your robot designs. Cover Copyright Credits About the Author About the Reviewers www.PacktPub.com Preface Chapter 1: Engineering Notebook The engineering design process Content Editor features New pages and page actions Computer-aided Design and building instructions LEGO Digital Designer LDraw Commenting on your code Summary Chapter 2: Mechanical Design Mechanical advantage Motors Large motors and gears Writing a program Bevel gears at right angles Worm gear Using wires and parallel threads Summary Chapter 3: Drive Train and Chassis Chassis Skid-bot with the Retail kit Caster-bot with the Educational kit Tread-bot with the Retail kit Tread-bot with the Educational kit Programming the robot to move forward Summary Chapter 4: Sensors and Control Using sensors Programming blocks LEGO EV3 sensors Touch Sensors Color Sensors Motor Rotation sensors Gyro Sensors Ultrasonic motion sensors Infrared Sensors Third-party sensors Dexter Industries Mindsensors HiTechnic sensors MATRIX motor controllers and metal parts Vernier sensors Summary Chapter 5: Interacting with EV3 Push buttons IR remote buttons Bluetooth control Smart device control Wi-Fi control Summary Chapter 6: Output from EV3 Display Image Editor Display data Brick lights Legacy NXT/RCX lights Sound Music Summary Chapter 7: Advanced Programming Loop and the Motor Rotation sensors Loop and the Gyro Sensor Troubleshooting with the Gyro Sensor Switch or two-level controller Three-level controller Subroutines or My Blocks Arrays Summary Chapter 8: Advanced Programming and Control Distance controller Infrared versus Ultrasonic Proportional algorithm Line following using the Color Sensor Setpoint for line tracking Two-level or bang-bang controller Proportional line follower Entering gain and speed PID controller Gyro Sensor IR sensor navigation and beacon tracking Tracking a circle Triangulation Summary Chapter 9: Experiment Software and Data Logging Data logging software Improving dead reckoning Analyzing gain constants Graphical programming Other bang-bang controllers Summary Chapter 10: Other Programming Languages LabVIEW Front Panel and Block Diagram Programming blocks Loops Line following VI Robot tools Data Front Panel and clean Block Diagrams SubVIs RobotC Simple code Commands Variables Remote control Graphical programming Summary Chapter 11: Communication between Robots Enabling communication Messaging Follow the leader Maintain a distance Search and rescue Completing the search Summary Chapter 12: Advanced Robot – Gyro Boy Concept of a balancing robot The Gyro Boy model Sensor feedback Programming bugbears The main program The control program The RST My Block The gOS My Block The GT My Block The GG My Block The GM My Block The EQ My Block The Cntrl My Block The CHK My Block Summary Index