Start programming robots NOW!
Learn hands-on, through easy examples, visuals, and code
This is a unique introduction to programming robots to execute tasks autonomously. Drawing on years of experience in artificial intelligence and robot programming, Cameron and Tracey Hughes introduce the reader to basic concepts of programming robots to execute tasks without the use of remote controls.
Robot Programming: A Guide to Controlling Autonomous Robots takes the reader on an adventure through the eyes of Midamba, a lad who has been stranded on a desert island and must find a way to program robots to help him escape. In this guide, you are presented with practical approaches and techniques to program robot sensors, motors, and translate your ideas into tasks a robot can execute autonomously. These techniques can be used on today’s leading robot microcontrollers (ARM9 and ARM7) and robot platforms (including the wildly popular low-cost Arduino platforms, LEGO® Mindstorms EV3, NXT, and Wowee RS Media Robot) for your hardware/Maker/DIY projects. Along the way the reader will learn how to:
Program robot sensors and motors
Program a robot arm to perform a task
Describe the robot’s tasks and environments in a way that a robot can process using robot S.T.O.R.I.E.S.
Develop a R.S.V.P. (Robot Scenario Visual Planning) used for designing the robot’s tasks in an environment
Program a robot to deal with the “unexpected” using robot S.P.A.C.E.S.
Program robots safely using S.A.R.A.A. (Safe Autonomous Robot Application Architecture) Approach
Program robots using Arduino C/C++ and Java languages
Use robot programming techniques with LEGO® Mindstorms EV3, Arduino, and other ARM7 and ARM9-based robots.
Table of contents
- About This E-Book
- Title Page
- Copyright Page
- Contents at a Glance
- About the Authors
- We Want to Hear from You!
- Reader Services
Introduction: Robot Boot Camp
- Robot Programming Boot Camp
- Ready, Set, Go! No Wires or Strings Attached
- Boot Camp Fundamentals
- Core Robot Programming Skills Introduced in This Book
- Assumptions About the Reader’s Robot(s)
- How Midamba Learned to Program a Robot
1. What Is a Robot Anyway?
The Seven Criteria of Defining a Robot
- Criterion #1: Sensing the Environment
- Criterion #2: Programmable Actions and Behavior
- Criterion #3: Change, Interact with, or Operate on Environment
- Criterion #4: Power Source Required
- Criterion #5: A Language Suitable for Representing Instructions and Data
- Criterion #6: Autonomy Without External Intervention
- Criterion #7: A Nonliving Machine
- Robot Categories
- What Is a Sensor?
- What Is an Actuator?
- What Is an End-Effector?
- What Is a Controller?
- What Scenario Is the Robot In?
- Giving the Robot Instructions
- The Seven Criteria of Defining a Robot
- Code Snippets
- 2. Robot Vocabularies
- 3. RSVP: Robot Scenario Visual Planning
- 4. Checking the Actual Capabilities of Your Robot
5. A Close Look at Sensors
What Do Sensors Sense?
- Analog and Digital Sensors
- Reading Analog and Digital Signals
- The Output of a Sensor
- Where Readings Are Stored
- Active and Passive Sensors
- Sensor Interfacing with Microcontrollers
- Attributes of Sensors
- Range and Resolution
- Precision and Accuracy
- Sensor Calibration
- Problems with Sensors
- End User Calibration Process
- Calibration Methods
- What’s Ahead?
- What Do Sensors Sense?
6. Programming the Robot’s Sensors
- Using the Color Sensor
- Digital Cameras Used to Detect and Track Color Objects
- Tracking Colored Objects with RS Media
- Tracking Colored Objects with the Pixy Vision Sensor
- Ultrasonic Sensor
- Compass Sensor Calculates Robot’s Heading
7. Programming Motors and Servos
- Actuators Are Output Transducers
- Different Types of DC Motors
- Motor Configurations: Direct and Indirect Drivetrains
- Terrain Challenge for Indoor and Outdoor Robots
- Programming the Robot to Move
- Robotic Arms and End-Effectors
- 8. Getting Started with Autonomy: Building Your Robot’s Softbot Counterpart
9. Robot SPACES
- A Robot Needs Its SPACES
- A Closer Look at Robot Initialization Postconditions
- SPACES Checks and RSVP State Diagrams
- 10. An Autonomous Robot Needs STORIES
11. Putting It All Together: How Midamba Programmed His First Autonomous Robot
Midamba’s Initial Scenario
- Midamba Becomes a Robot Programmer Overnight!
- Step 1. Robots in the Warehouse Scenario
- Step 2. The Robot’s Vocabulary and ROLL Model for Facility Scenario #1
- Step 3. RSVP for Facility Scenario #1
- Visual Layouts of a Robot POV Diagram
- Midamba’s Facility Scenario #1 (Refined)
- Graphical Flowchart Component of the RSVP
- State Diagram Component of the RSVP
- Midamba’s STORIES for Robot Unit1 and Unit2
- Midamba’s Initial Scenario
- 12. Open Source SARAA Robots for All!
- A. BURT’s Gotchas
- Title: Robot Programming: A Guide to Controlling Autonomous Robots
- Release date: May 2016
- Publisher(s): Que
- ISBN: 9780134176666
You might also like
Exploring Arduino, 2nd Edition
The bestselling beginner Arduino guide, updated with new projects! Exploring Arduino makes electrical engineering and embedded …
Artificial Intelligence for Robotics
Bring a new degree of interconnectivity to your world by building your own intelligent robots Key …
Effective Python: 90 Specific Ways to Write Better Python, 2nd Edition
Updated and Expanded for Python 3 It’s easy to start developing programs with Python, which is …
Programming Robots with ROS
Want to develop novel robot applications, but don’t know how to write a mapping or object …